FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
linux/scripts/mkcompile_h at master · fabgithub/linux · GitHub
fabgithub
linux
Repository navigation
Code
Pull requests
Actions
Projects
Security and quality
Insights
Expand file tree
Breadcrumbs
linux
/
scripts
/
mkcompile_h
Copy path
More file actions
More file actions
Latest commit
History
History
History
executable file
·
100 lines (81 loc) · 2.46 KB
Breadcrumbs
linux
/
scripts
/
mkcompile_h
Copy path
File metadata and controls
executable file
·
100 lines (81 loc) · 2.46 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#!
/bin/sh
TARGET=
$1
ARCH=
$2
SMP=
$3
PREEMPT=
$4
CC=
$5
vecho
() { [
"
${quiet}
"
=
"
silent_
"
]
||
echo
"
$@
"
;
}
#
If compile.h exists already and we don't own autoconf.h
#
(i.e. we're not the same user who did make *config), don't
#
modify compile.h
#
So "sudo make install" won't change the "compiled by <user>"
#
do "compiled by root"
if
[
-r
$TARGET
-a
!
-O
include/generated/autoconf.h ]
;
then
vecho
"
SKIPPED
$TARGET
"
exit
0
fi
#
Do not expand names
set
-f
#
Fix the language to get consistent output
LC_ALL=C
export
LC_ALL
if
[
-z
"
$KBUILD_BUILD_VERSION
"
]
;
then
if
[
-r
.version ]
;
then
VERSION=
`
cat .version
`
else
VERSION=0
echo
0
>
.version
fi
else
VERSION=
$KBUILD_BUILD_VERSION
fi
if
[
-z
"
$KBUILD_BUILD_TIMESTAMP
"
]
;
then
TIMESTAMP=
`
date
`
else
TIMESTAMP=
$KBUILD_BUILD_TIMESTAMP
fi
if
test
-z
"
$KBUILD_BUILD_USER
"
;
then
LINUX_COMPILE_BY=
$(
whoami
|
sed
'
s/\\/\\\\/
'
)
else
LINUX_COMPILE_BY=
$KBUILD_BUILD_USER
fi
if
test
-z
"
$KBUILD_BUILD_HOST
"
;
then
LINUX_COMPILE_HOST=
`
hostname
`
else
LINUX_COMPILE_HOST=
$KBUILD_BUILD_HOST
fi
UTS_VERSION=
"
#
$VERSION
"
CONFIG_FLAGS=
"
"
if
[
-n
"
$SMP
"
]
;
then
CONFIG_FLAGS=
"
SMP
"
;
fi
if
[
-n
"
$PREEMPT
"
]
;
then
CONFIG_FLAGS=
"
$CONFIG_FLAGS
PREEMPT
"
;
fi
UTS_VERSION=
"
$UTS_VERSION
$CONFIG_FLAGS
$TIMESTAMP
"
#
Truncate to maximum length
UTS_LEN=64
UTS_TRUNCATE=
"
cut -b -
$UTS_LEN
"
#
Generate a temporary compile.h
(
echo
/
\*
This file is auto generated, version
$VERSION
\*
/
if
[
-n
"
$CONFIG_FLAGS
"
]
;
then
echo
"
/*
$CONFIG_FLAGS
*/
"
;
fi
echo
\#
define UTS_MACHINE
\"
$ARCH
\"
echo
\#
define UTS_VERSION
\"
`
echo
$UTS_VERSION
|
$UTS_TRUNCATE
`
\"
echo
\#
define LINUX_COMPILE_BY
\"
`
echo
$LINUX_COMPILE_BY
|
$UTS_TRUNCATE
`
\"
echo
\#
define LINUX_COMPILE_HOST
\"
`
echo
$LINUX_COMPILE_HOST
|
$UTS_TRUNCATE
`
\"
echo
\#
define LINUX_COMPILER
\"
`
$CC
-v
2>&1
|
tail -n 1
`
\"
)
>
.tmpcompile
#
Only replace the real compile.h if the new one is different,
#
in order to preserve the timestamp and avoid unnecessary
#
recompilations.
#
We don't consider the file changed if only the date/time changed.
#
A kernel config change will increase the generation number, thus
#
causing compile.h to be updated (including date/time) due to the
#
changed comment in the
#
first line.
if
[
-r
$TARGET
]
&&
\
grep -v
'
UTS_VERSION
'
$TARGET
>
.tmpver.1
&&
\
grep -v
'
UTS_VERSION
'
.tmpcompile
>
.tmpver.2
&&
\
cmp -s .tmpver.1 .tmpver.2
;
then
rm -f .tmpcompile
else
vecho
"
UPD
$TARGET
"
mv -f .tmpcompile
$TARGET
fi
rm -f .tmpver.1 .tmpver.2
Back
|
FazBrowse Home
|
New Git URL