<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/scripts/Makefile.headersinst, branch v3.0.45</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.0.45</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.0.45'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2011-04-28T16:01:41Z</updated>
<entry>
<title>kbuild: asm-generic support</title>
<updated>2011-04-28T16:01:41Z</updated>
<author>
<name>Sam Ravnborg</name>
<email>sam@ravnborg.org</email>
</author>
<published>2011-04-27T20:29:49Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=d8ecc5cd8e227bc318513b5306ae88a474b8886d'/>
<id>urn:sha1:d8ecc5cd8e227bc318513b5306ae88a474b8886d</id>
<content type='text'>
There is an increasing amount of header files
shared between individual architectures in asm-generic.
To avoid a lot of dummy wrapper files that just
include the corresponding file in asm-generic provide
some basic support in kbuild for this.

With the following patch an architecture can maintain
a list of files in the file arch/$(ARCH)/include/asm/Kbuild

To use a generic file just add:

        generic-y += &lt;name-of-header-file.h&gt;

For each file listed kbuild will generate the necessary
wrapper in arch/$(ARCH)/include/generated/asm.

When installing userspace headers a wrapper is likewise created.

The original inspiration for this came from the unicore32
patchset - although a different method is used.

The patch includes several improvements from Arnd Bergmann.
Michael Marek contributed Makefile.asm-generic.

Remis Baima did an intial implementation along to achive
the same - see https://patchwork.kernel.org/patch/13352/

Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Acked-by: Guan Xuetao &lt;guanxuetao@mprc.pku.edu.cn&gt;
Tested-by: Guan Xuetao &lt;guanxuetao@mprc.pku.edu.cn&gt;
Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Cc: Remis Lima Baima &lt;remis.developer@googlemail.com&gt;
Signed-off-by: Michal Marek &lt;mmarek@suse.cz&gt;
</content>
</entry>
<entry>
<title>kbuild: drop unifdef-y support</title>
<updated>2010-08-14T20:26:52Z</updated>
<author>
<name>Sam Ravnborg</name>
<email>sam@ravnborg.org</email>
</author>
<published>2010-08-14T08:22:58Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=7cfddeef357aac78179ea804b11cffb5fbba8288'/>
<id>urn:sha1:7cfddeef357aac78179ea804b11cffb5fbba8288</id>
<content type='text'>
unifdef-y is not used anymore - drop remaining references

Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
</content>
</entry>
<entry>
<title>kbuild: fix "Argument list too long" error for "make headers_check",</title>
<updated>2009-06-09T20:37:56Z</updated>
<author>
<name>Sergei Poselenov</name>
<email>sposelenov@emcraft.com</email>
</author>
<published>2009-06-05T12:11:09Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=7211b8b9028854eee0d03ee6231440b7fb492521'/>
<id>urn:sha1:7211b8b9028854eee0d03ee6231440b7fb492521</id>
<content type='text'>
I'm trying to install kernel headers to build a cross-toolchain, but got
the following:

make ARCH=arm
INSTALL_HDR_PATH=/work/psl/eldk-builds/arm-2009-04-21/work/var/tmp/crosstool-0.43-3-root/usr/crosstool/gcc-4.2.2-glibc-20070515T2025-eldk/
+arm-linux-gnueabi/arm-linux-gnueabi/
headers_check
...
  CHECK   include/linux/raid (2 files)
  CHECK   include/linux/spi (1 files)
  CHECK   include/linux/sunrpc (1 files)
  CHECK   include/linux/tc_act (6 files)
  CHECK   include/linux/tc_ematch (4 files)
  CHECK   include/linux/usb (8 files)
make[2]: execvp: /bin/sh: Argument list too long
make[2]: ***
[/work/psl/eldk-builds/arm-2009-04-21/work/var/tmp/crosstool-0.43-3-root/usr/crosstool/gcc-4.2.2-glibc-20070515T2025-eldk/arm-linux-gnueab
+i/arm-linux-gnueabi//include/linux/.check]
Error 127
make[1]: *** [linux] Error 2
make: *** [headers_check] Error 2
-&gt;

Introduce use of xargs to fix this.

Signed-off-by: Sergei Poselenov &lt;sposelenov@emcraft.com&gt;
Cc: Wolfgang Denk &lt;wd@denx.de&gt;
Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
</content>
</entry>
<entry>
<title>kbuild: introduce destination-y for exported headers</title>
<updated>2009-04-11T06:18:08Z</updated>
<author>
<name>Sam Ravnborg</name>
<email>sam@ravnborg.org</email>
</author>
<published>2009-04-10T06:52:43Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=c7bb349e7c25df1ae1bbb72675b9bb02e1d9c464'/>
<id>urn:sha1:c7bb349e7c25df1ae1bbb72675b9bb02e1d9c464</id>
<content type='text'>
xtensa and arm have asked for a possibility to export headers
and locate them in a specific directory when exported.
Introduce destiantion-y to support this.

This patch in additiona adds some limited
documentation for the variables used for exported headers.

Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: Oskar Schirmer &lt;os@emlix.com&gt;
Cc: Mikael Starvik &lt;mikael.starvik@axis.com&gt;
</content>
</entry>
<entry>
<title>kbuild: install all headers when arch is changed</title>
<updated>2008-07-25T20:12:18Z</updated>
<author>
<name>Sam Ravnborg</name>
<email>sam@ravnborg.org</email>
</author>
<published>2008-06-16T19:29:38Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=db1bec4f5271d7799d481cd4d95fdc268bdd7614'/>
<id>urn:sha1:db1bec4f5271d7799d481cd4d95fdc268bdd7614</id>
<content type='text'>
We see some header files that are selected dependent on
the actual architecture so force a reinstallation
of all header files when the arch changes.
This slows down "make headers_check_all" but then
we better reflect reality.

Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
</content>
</entry>
<entry>
<title>kbuild: optimize headers_* targets</title>
<updated>2008-07-25T20:12:16Z</updated>
<author>
<name>Sam Ravnborg</name>
<email>sam@ravnborg.org</email>
</author>
<published>2008-06-15T19:41:09Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=7712401ae9006fc9d9b9a3e7861dc73781429a89'/>
<id>urn:sha1:7712401ae9006fc9d9b9a3e7861dc73781429a89</id>
<content type='text'>
Move the core functionality of headers_install
and headers_check to two small perl scripts.
The makefile is adapted to use the perl scrip and
changed to operate on all files in a directory.
So if one file is changed then all files in the
directory is processed.

perl were chosen for the helper scripts because this
is pure text processing which perl is good at and
especially the headers_check.pl script are expected to
see changes / new checks implmented.

The speed is ~300% faster on this box.
And the output generated to the screen is now down to
two lines per directory (one for install, one for check)
so it is easier to scroll back after a kernel build.

The perl scripts has been brought to sanity by patient
feedback from: Vegard Nossum &lt;vegard.nossum@gmail.com&gt;

Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
</content>
</entry>
<entry>
<title>kbuild: only one call for include/ in make headers_*</title>
<updated>2008-07-25T20:11:44Z</updated>
<author>
<name>Sam Ravnborg</name>
<email>sam@ravnborg.org</email>
</author>
<published>2008-06-09T19:24:28Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=88181ec30f58a28cd78b26aaac38bef4062b23dc'/>
<id>urn:sha1:88181ec30f58a28cd78b26aaac38bef4062b23dc</id>
<content type='text'>
Move it to the top-level file to decide if we install/check
the generic headers or the arch specific headers.

This revealed a long standing bug where "make headers_check_all"
relied on the files in asm/ for the current architecture.
So make headers_check_all is now broken by this commit.

In addition:

o add a simpler way to detect if an arch support
  exporting header files.

o add 'set -e;' so we error out early if
  make headers_check_all fails.

o add sparc64 and cris to arch we do not process
  in make headers_*_all because:

    sparc64 - use sparc to export headers
    cris    - is know seriously broken

Includes suggestions from: David Woodhouse
&lt;dwmw2@infradead.org&gt;.

Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
</content>
</entry>
<entry>
<title>kbuild: code refactoring in Makefile.headerinst</title>
<updated>2008-07-25T20:08:40Z</updated>
<author>
<name>Sam Ravnborg</name>
<email>sam@ravnborg.org</email>
</author>
<published>2008-06-07T11:18:26Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=62284a37dcd6725921410fb75446d270cc726b4f'/>
<id>urn:sha1:62284a37dcd6725921410fb75446d270cc726b4f</id>
<content type='text'>
No functional changes just improved readability

Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
</content>
</entry>
<entry>
<title>kbuild: drop support of ALTARCH for headers_*</title>
<updated>2008-07-25T20:08:39Z</updated>
<author>
<name>Sam Ravnborg</name>
<email>sam@ravnborg.org</email>
</author>
<published>2008-06-05T17:19:47Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=283039fb7ded6b863eacc9cfd67232297622e52d'/>
<id>urn:sha1:283039fb7ded6b863eacc9cfd67232297622e52d</id>
<content type='text'>
ALTARCH is no longer used by any arch(*) so drop
support for this from Makefile.headerinst

Dropping ALTARCH support simplifies Makefile.headerinst

(*) sparc64 uses it but work is ongoing to drop it
and no furter usage is planned.

Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: David Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>kbuild: always unifdef files in headers_install*</title>
<updated>2008-07-25T20:08:38Z</updated>
<author>
<name>Sam Ravnborg</name>
<email>sam@ravnborg.org</email>
</author>
<published>2008-06-05T14:52:15Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=4e420aa94c9e6974533797efd1dd93e779d490c3'/>
<id>urn:sha1:4e420aa94c9e6974533797efd1dd93e779d490c3</id>
<content type='text'>
unifdef utility is fast enough to warrant that we always
run the scripts through unifdef.

This patch runs all headers listed with header-y and unifdef-y
through unifdef.
Next step is to drop unifdef-y in all Kbuild files and
that can now be done in smaller steps.

Signed-off-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;
Cc: David Woodhouse &lt;dwmw2@infradead.org&gt;
Cc: Adrian Bunk &lt;bunk@kernel.org&gt;
</content>
</entry>
</feed>
