06 Apr, 2013
1 commit
-
The current use-case for fixdep is: a source file is run through a single
processing step, which creates a single dependency file as a side-effect,
which fixdep transforms into the file used by the kernel build process.In order to transparently run the C pre-processor on device-tree files,
we wish to run both gcc -E and dtc on a source file in a single rule.
This generates two dependency files, which must be transformed together
into the file used by the kernel build process. This change modifies
fixdep so it can process the concatenation of multiple separate input
dependency files, and produce a correct unified output.The code changes have the slight benefit of transforming the loop in
parse_dep_file() into more of a lexer/tokenizer, with the loop body being
more of a parser. Previously, some of this logic was mixed together
before the loop. I also added some comments, which I hope are useful.Benchmarking shows that on a cross-compiled ARM tegra_defconfig build,
there is less than 0.5 seconds speed decrease with this change, on top
of a build time of ~2m24s. This is probably within the noise.Signed-off-by: Stephen Warren
Acked-by: Rob Herring
09 Jan, 2013
1 commit
-
Correct spelling typo in printk within various drivers.
Signed-off-by: Masanari Iida
Signed-off-by: Jiri Kosina
09 Sep, 2011
1 commit
-
The introduction of include/linux/kconfig.h created 3 extraneous
dependencies:
include/config/.h
include/config/h.h
include/config/foo.hFix this by excluding kconfig.h from fixdep calculations.
Signed-off-by: Peter Foley
Signed-off-by: Michal Marek
14 Mar, 2011
1 commit
-
Recent change to fixdep:
commit b7bd182176960fdd139486cadb9962b39f8a2b50
Author: Michal Marek
Date: Thu Feb 17 15:13:54 2011 +0100fixdep: Do not record dependency on the source file itself
changed the format of the *.cmd files without realizing that it is also
used by modpost. Put the path to the source file to the file back, in a
special variable, so that modpost sees all source files when calculating
srcversion for modules.Reported-and-tested-by: Henrik Rydberg
Signed-off-by: Michal Marek
Signed-off-by: Linus Torvalds
21 Feb, 2011
1 commit
-
The dependency is already expressed by the Makefiles, storing it in the
.cmd file breaks build if a .c file is replaced by .S or vice versa,
because the .cmd file containsfoo/bar.o: foo/bar.c ...
foo/bar.c ... :
so the foo/bar.c -> foo/bar.o rule triggers even if there is no
foo/bar.c anymore.Acked-by: Stephen Rothwell
Signed-off-by: Michal Marek
23 Dec, 2010
1 commit
-
Also add missing error handling to fstat call
Signed-off-by: Ben Gamari
Signed-off-by: Michal Marek
12 Nov, 2010
1 commit
-
I noticed fixdep uses ~2% of cpu time in kernel build, in function
use_config()fixdep spends a lot of cpu cycles in linear searches in its internal
string array. With about 400 stored strings per dep file, this begins to
be noticeable.Convert fixdep to use a hash table.
kbuild results on my x86_64 allmodconfig
Before patch :
real 10m30.414s
user 61m51.456s
sys 8m28.200sreal 10m12.334s
user 61m50.236s
sys 8m30.448sreal 10m42.947s
user 61m50.028s
sys 8m32.380sAfter:
real 10m8.180s
user 61m22.506s
sys 8m32.384sreal 10m35.039s
user 61m21.654s
sys 8m32.212sreal 10m14.487s
user 61m23.498s
sys 8m32.312sSigned-off-by: Eric Dumazet
Signed-off-by: Michal Marek
12 Dec, 2009
1 commit
-
Signed-off-by: Sam Ravnborg
Signed-off-by: Michal Marek
24 Sep, 2009
1 commit
-
* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-next: (30 commits)
Use macros for .data.page_aligned section.
Use macros for .bss.page_aligned section.
Use new __init_task_data macro in arch init_task.c files.
kbuild: Don't define ALIGN and ENTRY when preprocessing linker scripts.
arm, cris, mips, sparc, powerpc, um, xtensa: fix build with bash 4.0
kbuild: add static to prototypes
kbuild: fail build if recordmcount.pl fails
kbuild: set -fconserve-stack option for gcc 4.5
kbuild: echo the record_mcount command
gconfig: disable "typeahead find" search in treeviews
kbuild: fix cc1 options check to ensure we do not use -fPIC when compiling
checkincludes.pl: add option to remove duplicates in place
markup_oops: use modinfo to avoid confusion with underscored module names
checkincludes.pl: provide usage helper
checkincludes.pl: close file as soon as we're done with it
ctags: usability fix
kernel hacking: move STRIP_ASM_SYMS from General
gitignore usr/initramfs_data.cpio.bz2 and usr/initramfs_data.cpio.lzma
kbuild: Check if linker supports the -X option
kbuild: introduce ld-option
...Fix trivial conflict in scripts/basic/fixdep.c
21 Sep, 2009
2 commits
-
Signed-off-by: Trevor Keith
Signed-off-by: Jiri Kosina -
Ignore drivers/staging/ since it is very likely that new drivers
introduce it again.Signed-off-by: Markus Heidelberg
Signed-off-by: Jiri Kosina
20 Sep, 2009
1 commit
-
Warnings found via gcc -Wmissing-prototypes.
Signed-off-by: Trevor Keith
Acked-by: WANG Cong
Signed-off-by: Andrew Morton
Signed-off-by: Sam Ravnborg
15 Jun, 2009
1 commit
-
gcc-4.4.1:
HOSTCC scripts/basic/fixdep
scripts/basic/fixdep.c: In function 'traps':
scripts/basic/fixdep.c:377: warning: dereferencing type-punned pointer will break strict-aliasing rules
scripts/basic/fixdep.c:379: warning: dereferencing type-punned pointer will break strict-aliasing rules(Apparently -fno-strict-aliasing will fix this too)
Signed-off-by: WANG Cong
Signed-off-by: Andrew Morton
Signed-off-by: Sam Ravnborg
03 May, 2007
1 commit
-
build scripts: fixdep blows segfault on string CONFIG_MODULE seen
The string "CONFIG_MODULE" appearing anywhere in a source file causes
fixdep to segfault. This string appeared in the wild in the current
mISDN sources (I think they meant CONFIG_MODULES). But it shouldn't
segfault (esp as CONFIG_MODULE appeared in a quoted string).Signed-off-by: Andy Green
Signed-off-by: Sam Ravnborg
02 Apr, 2007
1 commit
-
Commit 2e3646e51b2d6415549b310655df63e7e0d7a080 changed the way the
split config tree is built, but failed to also adjust fixdep accordingly
- if changing a config option from or to m, files referencing the
respective CONFIG_..._MODULE (but not the corresponding CONFIG_...)
didn't get rebuilt.The problem is that trisate symbol are represent with three different
symbols:
SYMBOL=n => no symbol defined
SYMBOL=y => CONFIG_SYMBOL defined to '1'
SYMBOL=m => CONFIG_SYMBOL_MODULE defined to '1'But conf_split_config do not distingush between the =y and =m case, so
only the =y case is honoured.This is fixed in fixdep so when a CONFIG symbol with _MODULE is found we
skip that part and only look for the CONFIG_SYMBOL version.Signed-off-by: Jan Beulich
Signed-off-by: Sam Ravnborg
Signed-off-by: Linus Torvalds
19 Feb, 2006
1 commit
-
While the recent change to also escape # symbols when storing C-file
compilation command lines was helpful, it should be in effect for all
command lines, as much as the dollar escaping should be in effect for
C-source compilation commands. Additionally, for better readability and
maintenance, consolidating all the escaping (single quotes, dollars,
and now sharps) was also desirable.Signed-Off-By: Jan Beulich
Signed-off-by: Sam Ravnborg
26 Dec, 2005
1 commit
-
Commandlines are contained in the ..cmd files and in case they
contain a '#' char make see this as start of comment.
Teach fixdep to escape the '#' char so make will assing the full commandline.Signed-off-by: Sam Ravnborg
26 Jun, 2005
1 commit
-
scripts/ is full of mismatches between char* params an signed char* arguments,
and viceversa. gcc4 now complaints loud about this. Patch below deletes all
those 'signed'.Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
17 Apr, 2005
1 commit
-
Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.Let it rip!