History

Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6

* 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6: kbuild: make KBUILD_NOCMDDEP=1 handle empty built-in.o scripts/kallsyms.c: fix potential segfault scripts/gen_initramfs_list.sh: Convert to a /bin/sh script kbuild: Fix GNU make v3.80 compatibility kbuild: Fix passing -Wno-* options to gcc 4.4+ kbuild: move scripts/basic/docproc.c to scripts/docproc.c kbuild: Fix Makefile.asm-generic for um kbuild: Allow to combine multiple W= levels kbuild: Disable -Wunused-but-set-variable for gcc 4.6.0 Fix handling of backlash character in LINUX_COMPILE_BY name kbuild: asm-generic support kbuild: implement several W= levels kbuild: Fix build with binutils <= 2.19 initramfs: Use KBUILD_BUILD_TIMESTAMP for generated entries kbuild: Allow to override LINUX_COMPILE_BY and LINUX_COMPILE_HOST macros kbuild: Drop unused LINUX_COMPILE_TIME and LINUX_COMPILE_DOMAIN macros kbuild: Use the deterministic mode of ar kbuild: Call gzip with -n kbuild: move KALLSYMS_EXTRA_PASS from Kconfig to Makefile Kconfig: improve KALLSYMS_ALL documentation Fix up trivial conflict in Makefile

Linus Torvalds committed 15 years ago

Commit 2bb732c2 parents f50d1d9 c4d5ee120 files · +287 −108Browse files

Showing the changes to scripts (13 of 20 files). Show all

Unified · Split

13 files
  1. scripts/.gitignore +1 −0
  2. scripts/Kbuild.include +12 −0
  3. scripts/Makefile +5 −2
  4. scripts/Makefile.asm-generic +23 −0
  5. scripts/Makefile.build +45 −29
  6. scripts/Makefile.headersinst +9 −1
  7. scripts/Makefile.lib +1 −1
  8. scripts/basic/.gitignore +0 −2
  9. scripts/basic/Makefile +1 −2
  10. scripts/docproc.c +0 −0
  11. scripts/gen_initramfs_list.sh +17 −10
  12. scripts/kallsyms.c +2 −0
  13. scripts/mkcompile_h +14 −16
scripts/.gitignore+1−0
@@ -8,3 +8,4 @@ bin2c · 7 unmodified lines
8unifdef8unifdef
9ihex2fw9ihex2fw
10recordmcount10recordmcount
11docproc
scripts/Kbuild.include+12−0
@@ -118,6 +118,11 @@ cc-option-yn = $(call try-run,\ · 117 unmodified lines
118cc-option-align = $(subst -functions=0,,\118cc-option-align = $(subst -functions=0,,\
119 $(call cc-option,-falign-functions=0,-malign-functions=0))119 $(call cc-option,-falign-functions=0,-malign-functions=0))
120 120
121# cc-disable-warning
122# Usage: cflags-y += $(call cc-disable-warning,unused-but-set-variable)
123cc-disable-warning = $(call try-run,\
124 $(CC) $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS) -W$(strip $(1)) -c -xc /dev/null -o "$$TMP",-Wno-$(strip $(1)))
125
121# cc-version126# cc-version
122# Usage gcc-ver := $(call cc-version)127# Usage gcc-ver := $(call cc-version)
123cc-version = $(shell $(CONFIG_SHELL) $(srctree)/scripts/gcc-version.sh $(CC))128cc-version = $(shell $(CONFIG_SHELL) $(srctree)/scripts/gcc-version.sh $(CC))
@@ -141,6 +146,11 @@ cc-ldoption = $(call try-run,\ · 17 unmodified lines
141ld-option = $(call try-run,\146ld-option = $(call try-run,\
142 $(CC) /dev/null -c -o "$$TMPO" ; $(LD) $(1) "$$TMPO" -o "$$TMP",$(1),$(2))147 $(CC) /dev/null -c -o "$$TMPO" ; $(LD) $(1) "$$TMPO" -o "$$TMP",$(1),$(2))
143 148
149# ar-option
150# Usage: KBUILD_ARFLAGS := $(call ar-option,D)
151# Important: no spaces around options
152ar-option = $(call try-run, $(AR) rc$(1) "$$TMP",$(1),$(2))
153
144######154######
145 155
146###156###
@@ -187,6 +197,8 @@ ifneq ($(KBUILD_NOCMDDEP),1) · 40 unmodified lines
187# User may override this check using make KBUILD_NOCMDDEP=1197# User may override this check using make KBUILD_NOCMDDEP=1
188arg-check = $(strip $(filter-out $(cmd_$(1)), $(cmd_$@)) \198arg-check = $(strip $(filter-out $(cmd_$(1)), $(cmd_$@)) \
189 $(filter-out $(cmd_$@), $(cmd_$(1))) )199 $(filter-out $(cmd_$@), $(cmd_$(1))) )
200else
201arg-check = $(if $(strip $(cmd_$@)),,1)
190endif202endif
191 203
192# >'< substitution is for echo to work,204# >'< substitution is for echo to work,
scripts/Makefile+5−2
@@ -6,6 +6,7 @@ · 5 unmodified lines
6# pnmttologo: Convert pnm files to logo files6# pnmttologo: Convert pnm files to logo files
7# conmakehash: Create chartable7# conmakehash: Create chartable
8# conmakehash: Create arrays for initializing the kernel console tables8# conmakehash: Create arrays for initializing the kernel console tables
9# docproc: Used in Documentation/DocBook
9 10
10hostprogs-$(CONFIG_KALLSYMS) += kallsyms11hostprogs-$(CONFIG_KALLSYMS) += kallsyms
11hostprogs-$(CONFIG_LOGO) += pnmtologo12hostprogs-$(CONFIG_LOGO) += pnmtologo
@@ -16,12 +17,14 @@ hostprogs-$(BUILD_C_RECORDMCOUNT) += recordmcount · 4 unmodified lines
16always := $(hostprogs-y) $(hostprogs-m)17always := $(hostprogs-y) $(hostprogs-m)
17 18
18# The following hostprogs-y programs are only build on demand19# The following hostprogs-y programs are only build on demand
19hostprogs-y += unifdef20hostprogs-y += unifdef docproc
20 21
21# This target is used internally to avoid "is up to date" messages22# These targets are used internally to avoid "is up to date" messages
22PHONY += build_unifdef23PHONY += build_unifdef
23build_unifdef: scripts/unifdef FORCE24build_unifdef: scripts/unifdef FORCE
24 @:25 @:
26build_docproc: scripts/docproc FORCE
27 @:
25 28
26subdir-$(CONFIG_MODVERSIONS) += genksyms29subdir-$(CONFIG_MODVERSIONS) += genksyms
27subdir-y += mod30subdir-y += mod
scripts/Makefile.asm-generic+23−0
@@ -0,0 +1,23 @@
1# include/asm-generic contains a lot of files that are used
2# verbatim by several architectures.
3#
4# This Makefile reads the file arch/$(SRCARCH)/include/asm/Kbuild
5# and for each file listed in this file with generic-y creates
6# a small wrapper file in $(obj) (arch/$(SRCARCH)/include/generated/asm)
7
8kbuild-file := $(srctree)/arch/$(SRCARCH)/include/asm/Kbuild
9-include $(kbuild-file)
10
11include scripts/Kbuild.include
12
13# Create output directory if not already present
14_dummy := $(shell [ -d $(obj) ] || mkdir -p $(obj))
15
16quiet_cmd_wrap = WRAP $@
17cmd_wrap = echo "\#include <asm-generic/$*.h>" >$@
18
19all: $(patsubst %, $(obj)/%, $(generic-y))
20
21$(obj)/%.h:
22 $(call cmd,wrap)
23
scripts/Makefile.build+45−29
@@ -51,36 +51,52 @@ ifeq ($(KBUILD_NOPEDANTIC),) · 50 unmodified lines
51endif51endif
52 52
53#53#
54# make W=1 settings54# make W=... settings
55#55#
56# $(call cc-option... ) handles gcc -W.. options which56# W=1 - warnings that may be relevant and does not occur too often
57# W=2 - warnings that occur quite often but may still be relevant
58# W=3 - the more obscure warnings, can most likely be ignored
59#
60# $(call cc-option, -W...) handles gcc -W.. options which
57# are not supported by all versions of the compiler61# are not supported by all versions of the compiler
58ifdef KBUILD_ENABLE_EXTRA_GCC_CHECKS62ifdef KBUILD_ENABLE_EXTRA_GCC_CHECKS
59KBUILD_EXTRA_WARNINGS := -Wextra63warning- := $(empty)
60KBUILD_EXTRA_WARNINGS += -Wunused -Wno-unused-parameter64
61KBUILD_EXTRA_WARNINGS += -Waggregate-return65warning-1 := -Wextra -Wunused -Wno-unused-parameter
62KBUILD_EXTRA_WARNINGS += -Wbad-function-cast66warning-1 += -Wmissing-declarations
63KBUILD_EXTRA_WARNINGS += -Wcast-qual67warning-1 += -Wmissing-format-attribute
64KBUILD_EXTRA_WARNINGS += -Wcast-align68warning-1 += -Wmissing-prototypes
65KBUILD_EXTRA_WARNINGS += -Wconversion69warning-1 += -Wold-style-definition
66KBUILD_EXTRA_WARNINGS += -Wdisabled-optimization70warning-1 += $(call cc-option, -Wmissing-include-dirs)
67KBUILD_EXTRA_WARNINGS += -Wlogical-op71warning-1 += $(call cc-option, -Wunused-but-set-variable)
68KBUILD_EXTRA_WARNINGS += -Wmissing-declarations72
69KBUILD_EXTRA_WARNINGS += -Wmissing-format-attribute73warning-2 := -Waggregate-return
70KBUILD_EXTRA_WARNINGS += $(call cc-option, -Wmissing-include-dirs,)74warning-2 += -Wcast-align
71KBUILD_EXTRA_WARNINGS += -Wmissing-prototypes75warning-2 += -Wdisabled-optimization
72KBUILD_EXTRA_WARNINGS += -Wnested-externs76warning-2 += -Wnested-externs
73KBUILD_EXTRA_WARNINGS += -Wold-style-definition77warning-2 += -Wshadow
74KBUILD_EXTRA_WARNINGS += $(call cc-option, -Woverlength-strings,)78warning-2 += $(call cc-option, -Wlogical-op)
75KBUILD_EXTRA_WARNINGS += -Wpacked79
76KBUILD_EXTRA_WARNINGS += -Wpacked-bitfield-compat80warning-3 := -Wbad-function-cast
77KBUILD_EXTRA_WARNINGS += -Wpadded81warning-3 += -Wcast-qual
78KBUILD_EXTRA_WARNINGS += -Wpointer-arith82warning-3 += -Wconversion
79KBUILD_EXTRA_WARNINGS += -Wredundant-decls83warning-3 += -Wpacked
80KBUILD_EXTRA_WARNINGS += -Wshadow84warning-3 += -Wpadded
81KBUILD_EXTRA_WARNINGS += -Wswitch-default85warning-3 += -Wpointer-arith
82KBUILD_EXTRA_WARNINGS += $(call cc-option, -Wvla,)86warning-3 += -Wredundant-decls
83KBUILD_CFLAGS += $(KBUILD_EXTRA_WARNINGS)87warning-3 += -Wswitch-default
88warning-3 += $(call cc-option, -Wpacked-bitfield-compat)
89warning-3 += $(call cc-option, -Wvla)
90
91warning := $(warning-$(findstring 1, $(KBUILD_ENABLE_EXTRA_GCC_CHECKS)))
92warning += $(warning-$(findstring 2, $(KBUILD_ENABLE_EXTRA_GCC_CHECKS)))
93warning += $(warning-$(findstring 3, $(KBUILD_ENABLE_EXTRA_GCC_CHECKS)))
94
95ifeq ("$(strip $(warning))","")
96 $(error W=$(KBUILD_ENABLE_EXTRA_GCC_CHECKS) is unknown)
97endif
98
99KBUILD_CFLAGS += $(warning)
84endif100endif
85 101
86include scripts/Makefile.lib102include scripts/Makefile.lib
@@ -351,7 +367,7 @@ quiet_cmd_link_o_target = LD $@ · 264 unmodified lines
351cmd_link_o_target = $(if $(strip $(obj-y)),\367cmd_link_o_target = $(if $(strip $(obj-y)),\
352 $(LD) $(ld_flags) -r -o $@ $(filter $(obj-y), $^) \368 $(LD) $(ld_flags) -r -o $@ $(filter $(obj-y), $^) \
353 $(cmd_secanalysis),\369 $(cmd_secanalysis),\
354 rm -f $@; $(AR) rcs $@)370 rm -f $@; $(AR) rcs$(KBUILD_ARFLAGS) $@)
355 371
356$(builtin-target): $(obj-y) FORCE372$(builtin-target): $(obj-y) FORCE
357 $(call if_changed,link_o_target)373 $(call if_changed,link_o_target)
@@ -377,7 +393,7 @@ $(modorder-target): $(subdir-ym) FORCE · 19 unmodified lines
377#393#
378ifdef lib-target394ifdef lib-target
379quiet_cmd_link_l_target = AR $@395quiet_cmd_link_l_target = AR $@
380cmd_link_l_target = rm -f $@; $(AR) rcs $@ $(lib-y)396cmd_link_l_target = rm -f $@; $(AR) rcs$(KBUILD_ARFLAGS) $@ $(lib-y)
381 397
382$(lib-target): $(lib-y) FORCE398$(lib-target): $(lib-y) FORCE
383 $(call if_changed,link_l_target)399 $(call if_changed,link_l_target)
scripts/Makefile.headersinst+9−1
@@ -27,8 +27,13 @@ header-y := $(filter-out %/, $(header-y)) · 26 unmodified lines
27install-file := $(install)/.install27install-file := $(install)/.install
28check-file := $(install)/.check28check-file := $(install)/.check
29 29
30# generic-y list all files an architecture uses from asm-generic
31# Use this to build a list of headers which require a wrapper
32wrapper-files := $(filter $(header-y), $(generic-y))
33
30# all headers files for this dir34# all headers files for this dir
31all-files := $(header-y) $(objhdr-y)35header-y := $(filter-out $(generic-y), $(header-y))
36all-files := $(header-y) $(objhdr-y) $(wrapper-files)
32input-files := $(addprefix $(srctree)/$(obj)/,$(header-y)) \37input-files := $(addprefix $(srctree)/$(obj)/,$(header-y)) \
33 $(addprefix $(objtree)/$(obj)/,$(objhdr-y))38 $(addprefix $(objtree)/$(obj)/,$(objhdr-y))
34output-files := $(addprefix $(install)/, $(all-files))39output-files := $(addprefix $(install)/, $(all-files))
@@ -47,6 +52,9 @@ quiet_cmd_install = INSTALL $(printdir) ($(words $(all-files))\ · 12 unmodified lines
47 cmd_install = \52 cmd_install = \
48 $(PERL) $< $(srctree)/$(obj) $(install) $(SRCARCH) $(header-y); \53 $(PERL) $< $(srctree)/$(obj) $(install) $(SRCARCH) $(header-y); \
49 $(PERL) $< $(objtree)/$(obj) $(install) $(SRCARCH) $(objhdr-y); \54 $(PERL) $< $(objtree)/$(obj) $(install) $(SRCARCH) $(objhdr-y); \
55 for F in $(wrapper-files); do \
56 echo "\#include <asm-generic/$$F>" > $(install)/$$F; \
57 done; \
50 touch $@58 touch $@
51 59
52quiet_cmd_remove = REMOVE $(unwanted)60quiet_cmd_remove = REMOVE $(unwanted)
scripts/Makefile.lib+1−1
@@ -197,7 +197,7 @@ cmd_objcopy = $(OBJCOPY) $(OBJCOPYFLAGS) $(OBJCOPYFLAGS_$(@F)) $< $@ · 196 unmodified lines
197# ---------------------------------------------------------------------------197# ---------------------------------------------------------------------------
198 198
199quiet_cmd_gzip = GZIP $@199quiet_cmd_gzip = GZIP $@
200cmd_gzip = (cat $(filter-out FORCE,$^) | gzip -f -9 > $@) || \200cmd_gzip = (cat $(filter-out FORCE,$^) | gzip -n -f -9 > $@) || \
201 (rm -f $@ ; false)201 (rm -f $@ ; false)
202 202
203# DTC203# DTC
scripts/basic/.gitignore+0−2
@@ -1,3 +1 @@
1hash
2fixdep1fixdep
3docproc
scripts/basic/Makefile+1−2
@@ -7,9 +7,8 @@ · 6 unmodified lines
7# .config is included by main Makefile.7# .config is included by main Makefile.
8# ---------------------------------------------------------------------------8# ---------------------------------------------------------------------------
9# fixdep: Used to generate dependency information during build process9# fixdep: Used to generate dependency information during build process
10# docproc: Used in Documentation/DocBook
11 10
12hostprogs-y := fixdep docproc11hostprogs-y := fixdep
13always := $(hostprogs-y)12always := $(hostprogs-y)
14 13
15# fixdep is needed to compile other host programs14# fixdep is needed to compile other host programs
scripts/docproc.crenamed from scripts/basic/docproc.c+0−0

File renamed without changes.

scripts/gen_initramfs_list.sh+17−10
@@ -1,4 +1,4 @@
1#!/bin/bash1#!/bin/sh
2# Copyright (C) Martin Schlemmer <azarah@nosferatu.za.org>2# Copyright (C) Martin Schlemmer <azarah@nosferatu.za.org>
3# Copyright (C) 2006 Sam Ravnborg <sam@ravnborg.org>3# Copyright (C) 2006 Sam Ravnborg <sam@ravnborg.org>
4#4#
@@ -105,9 +105,9 @@ list_parse() { · 100 unmodified lines
105# for links, devices etc the format differs. See gen_init_cpio for details105# for links, devices etc the format differs. See gen_init_cpio for details
106parse() {106parse() {
107 local location="$1"107 local location="$1"
108 local name="${location/${srcdir}//}"108 local name="/${location#${srcdir}}"
109 # change '//' into '/'109 # change '//' into '/'
110 name="${name//\/\///}"110 name=$(echo "$name" | sed -e 's://*:/:g')
111 local mode="$2"111 local mode="$2"
112 local uid="$3"112 local uid="$3"
113 local gid="$4"113 local gid="$4"
@@ -117,8 +117,8 @@ parse() { · 3 unmodified lines
117 [ "$root_gid" = "squash" ] && gid=0 || [ "$gid" -eq "$root_gid" ] && gid=0117 [ "$root_gid" = "squash" ] && gid=0 || [ "$gid" -eq "$root_gid" ] && gid=0
118 local str="${mode} ${uid} ${gid}"118 local str="${mode} ${uid} ${gid}"
119 119
120 [ "${ftype}" == "invalid" ] && return 0120 [ "${ftype}" = "invalid" ] && return 0
121 [ "${location}" == "${srcdir}" ] && return 0121 [ "${location}" = "${srcdir}" ] && return 0
122 122
123 case "${ftype}" in123 case "${ftype}" in
124 "file")124 "file")
@@ -192,7 +192,7 @@ input_file() { · 67 unmodified lines
192 if [ -f "$1" ]; then192 if [ -f "$1" ]; then
193 ${dep_list}header "$1"193 ${dep_list}header "$1"
194 is_cpio="$(echo "$1" | sed 's/^.*\.cpio\(\..*\)\?/cpio/')"194 is_cpio="$(echo "$1" | sed 's/^.*\.cpio\(\..*\)\?/cpio/')"
195 if [ $2 -eq 0 -a ${is_cpio} == "cpio" ]; then195 if [ $2 -eq 0 -a ${is_cpio} = "cpio" ]; then
196 cpio_file=$1196 cpio_file=$1
197 echo "$1" | grep -q '^.*\.cpio\..*' && is_cpio_compressed="compressed"197 echo "$1" | grep -q '^.*\.cpio\..*' && is_cpio_compressed="compressed"
198 [ ! -z ${dep_list} ] && echo "$1"198 [ ! -z ${dep_list} ] && echo "$1"
@@ -204,7 +204,7 @@ input_file() { · 5 unmodified lines
204 else204 else
205 echo "$1 \\"205 echo "$1 \\"
206 cat "$1" | while read type dir file perm ; do206 cat "$1" | while read type dir file perm ; do
207 if [ "$type" == "file" ]; then207 if [ "$type" = "file" ]; then
208 echo "$file \\";208 echo "$file \\";
209 fi209 fi
210 done210 done
@@ -226,7 +226,7 @@ cpio_list= · 15 unmodified lines
226output="/dev/stdout"226output="/dev/stdout"
227output_file=""227output_file=""
228is_cpio_compressed=228is_cpio_compressed=
229compr="gzip -9 -f"229compr="gzip -n -9 -f"
230 230
231arg="$1"231arg="$1"
232case "$arg" in232case "$arg" in
@@ -240,7 +240,7 @@ case "$arg" in · 7 unmodified lines
240 output_file="$1"240 output_file="$1"
241 cpio_list="$(mktemp ${TMPDIR:-/tmp}/cpiolist.XXXXXX)"241 cpio_list="$(mktemp ${TMPDIR:-/tmp}/cpiolist.XXXXXX)"
242 output=${cpio_list}242 output=${cpio_list}
243 echo "$output_file" | grep -q "\.gz$" && compr="gzip -9 -f"243 echo "$output_file" | grep -q "\.gz$" && compr="gzip -n -9 -f"
244 echo "$output_file" | grep -q "\.bz2$" && compr="bzip2 -9 -f"244 echo "$output_file" | grep -q "\.bz2$" && compr="bzip2 -9 -f"
245 echo "$output_file" | grep -q "\.lzma$" && compr="lzma -9 -f"245 echo "$output_file" | grep -q "\.lzma$" && compr="lzma -9 -f"
246 echo "$output_file" | grep -q "\.xz$" && \246 echo "$output_file" | grep -q "\.xz$" && \
@@ -287,8 +287,15 @@ done · 40 unmodified lines
287# we are careful to delete tmp files287# we are careful to delete tmp files
288if [ ! -z ${output_file} ]; then288if [ ! -z ${output_file} ]; then
289 if [ -z ${cpio_file} ]; then289 if [ -z ${cpio_file} ]; then
290 timestamp=
291 if test -n "$KBUILD_BUILD_TIMESTAMP"; then
292 timestamp="$(date -d"$KBUILD_BUILD_TIMESTAMP" +%s || :)"
293 if test -n "$timestamp"; then
294 timestamp="-t $timestamp"
295 fi
296 fi
290 cpio_tfile="$(mktemp ${TMPDIR:-/tmp}/cpiofile.XXXXXX)"297 cpio_tfile="$(mktemp ${TMPDIR:-/tmp}/cpiofile.XXXXXX)"
291 usr/gen_init_cpio ${cpio_list} > ${cpio_tfile}298 usr/gen_init_cpio $timestamp ${cpio_list} > ${cpio_tfile}
292 else299 else
293 cpio_tfile=${cpio_file}300 cpio_tfile=${cpio_file}
294 fi301 fi
scripts/kallsyms.c+2−0
@@ -500,6 +500,8 @@ static void optimize_result(void) · 499 unmodified lines
500 500
501 /* find the token with the breates profit value */501 /* find the token with the breates profit value */
502 best = find_best_token();502 best = find_best_token();
503 if (token_profit[best] == 0)
504 break;
503 505
504 /* place it in the "best" table */506 /* place it in the "best" table */
505 best_table_len[i] = 2;507 best_table_len[i] = 2;
scripts/mkcompile_h+14−16
@@ -42,6 +42,16 @@ if [ -z "$KBUILD_BUILD_TIMESTAMP" ]; then · 41 unmodified lines
42else42else
43 TIMESTAMP=$KBUILD_BUILD_TIMESTAMP43 TIMESTAMP=$KBUILD_BUILD_TIMESTAMP
44fi44fi
45if test -z "$KBUILD_BUILD_USER"; then
46 LINUX_COMPILE_BY=$(whoami | sed 's/\\/\\\\/')
47else
48 LINUX_COMPILE_BY=$KBUILD_BUILD_USER
49fi
50if test -z "$KBUILD_BUILD_HOST"; then
51 LINUX_COMPILE_HOST=`hostname`
52else
53 LINUX_COMPILE_HOST=$KBUILD_BUILD_HOST
54fi
45 55
46UTS_VERSION="#$VERSION"56UTS_VERSION="#$VERSION"
47CONFIG_FLAGS=""57CONFIG_FLAGS=""
@@ -63,20 +73,8 @@ UTS_TRUNCATE="cut -b -$UTS_LEN" · 15 unmodified lines
63 73
64 echo \#define UTS_VERSION \"`echo $UTS_VERSION | $UTS_TRUNCATE`\"74 echo \#define UTS_VERSION \"`echo $UTS_VERSION | $UTS_TRUNCATE`\"
65 75
66 echo \#define LINUX_COMPILE_TIME \"`date +%T`\"76 echo \#define LINUX_COMPILE_BY \"`echo $LINUX_COMPILE_BY | $UTS_TRUNCATE`\"
67 echo \#define LINUX_COMPILE_BY \"`whoami`\"77 echo \#define LINUX_COMPILE_HOST \"`echo $LINUX_COMPILE_HOST | $UTS_TRUNCATE`\"
68 echo \#define LINUX_COMPILE_HOST \"`hostname | $UTS_TRUNCATE`\"
69
70 domain=`dnsdomainname 2> /dev/null`
71 if [ -z "$domain" ]; then
72 domain=`domainname 2> /dev/null`
73 fi
74
75 if [ -n "$domain" ]; then
76 echo \#define LINUX_COMPILE_DOMAIN \"`echo $domain | $UTS_TRUNCATE`\"
77 else
78 echo \#define LINUX_COMPILE_DOMAIN
79 fi
80 78
81 echo \#define LINUX_COMPILER \"`$CC -v 2>&1 | tail -n 1`\"79 echo \#define LINUX_COMPILER \"`$CC -v 2>&1 | tail -n 1`\"
82) > .tmpcompile80) > .tmpcompile
@@ -91,8 +89,8 @@ UTS_TRUNCATE="cut -b -$UTS_LEN" · 8 unmodified lines
91# first line.89# first line.
92 90
93if [ -r $TARGET ] && \91if [ -r $TARGET ] && \
94 grep -v 'UTS_VERSION\|LINUX_COMPILE_TIME' $TARGET > .tmpver.1 && \92 grep -v 'UTS_VERSION' $TARGET > .tmpver.1 && \
95 grep -v 'UTS_VERSION\|LINUX_COMPILE_TIME' .tmpcompile > .tmpver.2 && \93 grep -v 'UTS_VERSION' .tmpcompile > .tmpver.2 && \
96 cmp -s .tmpver.1 .tmpver.2; then94 cmp -s .tmpver.1 .tmpver.2; then
97 rm -f .tmpcompile95 rm -f .tmpcompile
98else96else