| Age | Commit message (Collapse) | Author |
|
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Michal Marek <mmarek@suse.cz>
|
|
UTS_TRUNCATTE is simpler this way, and now editors idetify this as a
shell script.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Acked-by: WANG Cong <xiyou.wangcong@gmail.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
|
|
Otherwise we get:
"dnsdomainname: Unknown host"
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Acked-by: WANG Cong <xiyou.wangcong@gmail.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
|
|
The mkcompile_h script does `echo` regardless of silent mode the make is
running at, so have it respect $quiet from kbuild and only echo when not in
silent mode.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
|
|
Introduce KBUILD_BUILD_VERSION to make it
possible to override kernel build version
during build time.
Introduce KBUILD_BUILD_TIMESTAMP to make it
possible to override kernel build timestamp
during build time.
But variables are useful mainly by distros
that want to pass info from an SCM when
building the kernel. Timestamp could be last
checkin date for a file etc.
The idea came from Olaf Hering <olaf@aepfle.de>
Cc: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
|
|
Fix a minor bug in mkcompile_h. As one can see, the current locale is used
while getting the version of gcc. This produces problems when a locale
other than C or en_US is used. As an example, my /proc/version contains
Turkish characters in iso-8859-9 encoding.
This patch fixes this issue by making sure that the C locale is used to get
gcc's version.
Cc: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
From: Matt Mackall <mpm@selenic.com>
Add PREEMPT to UTS_VERSION where enabled as is done for SMP to make
preempt kernels easily identifiable.
Added SMP PREEMPT as comment in compile.h to force it to be
updated when they change (sam).
Signed-off-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
|
|
From: Andrey Borzenkov <arvidjaar@mail.ru>
LANG is not always enough to force date to english.
|
|
|
|
Added a new rule filechk used to check when a generated file
actually is changed. If there is no actual changes the file
is left without updating the timestamp.
When building a kernel from scratch two printouts occurs:
CHK file-to-generate
UPD file-to-generate
The first line tell that kbuild checks the file, second line tell that
the file is being updated (or created).
On successive runs only the first line is printed.
Output is the same in verbose and non-verbose mode.
This replaces the former update-if-changed which has been deleted.
generate-asm-offsets.h has been renamed as well.
All users are updated in next patch.
Output when generating compile.h follow above style
|
|
After reverting my nice but totally broken idea about accelerating
the linking steps, make the three-stage .tmp_kallsyms.o generation
/ addition work again.
Yeah, that means that we now link vmlinux three times when
CONFIG_KALLSYMS is set, and that's annoying.
|
|
For some inexplicable reason, I broke the dependency on a new build number
some time ago - it worked fine before, and now it does again.
(Whenever vmlinux is relinked, the build number is incremented, and now it
ends in the version string again, as it should)
Noted by Anton Blanchard.
|
|
Use the same rule as in Rules.make for preprocessing
vmlinux.lds.S, that also gives automatic dependency tracking.
This means we should also use the standard AFLAGS_... instead
of CPPFLAGS_... to provide specific additional flags.
|
|
Contributed by Arkadiusz Miskiewicz
|
|
"make bzImage && sudo make install" had the problem that during
the "sudo make install" the build system would notice that the information
in include/linux/compile.h is not accurate (it says "compiled by <user>",
but we are root), thus causing compile.h to be updated and leading to
some recompiles.
We now only update "compile.h" if the current user is the owner of
include/linux/autoconf.h, i.e. the user who did the "make *config". So the
above sequence will correctly state "compiled by <user>".
|
|
Patch by Keith Owens, ported to 2.5.
If the length of $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)
exceeds 64 characters it silently corrupts the utsname data, resulting
in garbage for uname -r and problems running the kernel and modules.
Abort if KERNELRELEASE is too long. Truncation is not good enough, it
results in ambiguous /lib/modules/`uname -r` contents.
Ensure that the date/time in uname are always in LANG=C. Users with
other languages report that 8 bit values cause the boot messages to go
haywire.
|
|
We source some scripts, but still pass parameters to them, e.g.
. mk_version_h $@ $(KERNELRELEASE) $(VERSION) ...
This does not work for all kinds of /bin/sh (it does for bash, that's
why I did not notice).
The fix is easy: Just mark the scripts executable and call instead of
source them.
Unfortunately, patch(1) doesn't understand about propagating chmod.
bk does, so changing the tree isn't hard, and we introduce an explicit
chmod a+x executed during the build for propagating this change into
those trees which get "traditionally" patched up.
|
|
Suppress echoing of commands when using "make -s", so that make -s
does indeed have the effect one would expect.
Add a quiet mode, which will print not the entire command but only
one line per rule. To turn it on, use
make KBUILD_VERBOSE=0 vmlinux/whatever
or set KBUILD_VERBOSE=0 in your environment.
For now, the verbose mode is default, which gives you the old behavior
of printing all commands.
The output in quiet mode is based on what Keith Owens' kbuild-2.5 does,
I like, I did not want to invent yet another output format.
|
|
|
|
There's no good reason to build the objects in init/ explicitly from
the top-level Makefile. Instead, handle init/ like every other
subdir, which also provides the automatic checks for a changed
command line etc.
|
|
init/version.o includes include/linux/compile.h. As compile.h was
regenerated each time make was run, init/version.o was recompiled each
time.
To avoid this, use the following solution: Generate a temporary new
compile.h, and only replace the old one if the new one is different.
We consider the files different if more than just date/time changed, since
otherwise we would have to rebuild every time anyway.
Still, the two files turned out to be different all the time, as we put
a generation number into them which is incremented at each invocation of
"make". The generation number update is now only done when the kernel
config changes, which makes more sense, anyway.
So, the UTS_VERSION and generation number now relate to the time the
kernel was configured, not the time the actual "make vmlinux" was run,
which should be fine.
|
|
Also, put the #define UTS_MACHINE ... from the command line into
the header as well.
|