Commit Graph

441 Commits

Author SHA1 Message Date
Mike Frysinger
77e2bde6a5 trylink: include LDFLAGS when checking linkage
The user might be including options in their LDFLAGS (like -fuse-ld=gold)
that change the behavior of the linker and thus change the results of the
flag tests.  Make sure we include the user's LDFLAGS when running these
tests so we filter out flags that will fail when used later on.

URL: https://bugs.gentoo.org/499712
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2015-12-01 11:25:10 -05:00
Denys Vlasenko
edcd5dcc9b typo fix
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-10-20 18:15:01 +02:00
Denys Vlasenko
58d0e20ad0 scripts/trylink: remove $CPPFLAGS
We don't use it in final link, should not use it in check_FOO then.
This uncovered a logic bug in glibc check...

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-10-20 16:40:43 +02:00
Denys Vlasenko
5134010d88 scripts/trylink: fix bit-rotted linker option verification
To that end, *make it complain* when check_cc fails on options
we usually want to succeed.

   text	   data	    bss	    dec	    hex	filename
 929697	    932	  17692	 948321	  e7861	busybox-1.23.2/busybox
 915361	    911	  17484	 933756	  e3f7c	busybox-1.23.2.fixed/busybox

 927725	    932	  17448	 946105	  e6fb9	busybox-1.24.0/busybox
 913630	    911	  17240	 931781	  e37c5	busybox-1.24.0.fixed/busybox

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-10-20 16:16:16 +02:00
Denys Vlasenko
69c8c699aa randconfig fixes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-10-11 16:27:55 +02:00
Maninder Singh
0fabedf085 fix if(p)/free(p) construct
No need of explicit NULL check before free.

Signed-off-by: Maninder Singh <maninder1.s@samsung.com>
Signed-off-by: Akhilesh Kumar <akhilesh.k@samsung.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-06-07 18:19:43 +02:00
Maninder Singh
97c6491b4e typo fixes
Signed-off-by: Maninder Singh <maninder1.s@samsung.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2015-05-25 13:46:36 +02:00
Mike Frysinger
6798564b9e trylink: respect compiler settings when probing features
The CPPFLAGS/CFLAGS settings might have features that matter, so make
sure we utilize them when testing the compiler.

URL: https://bugs.gentoo.org/471118
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2015-03-16 17:47:01 -04:00
Mike Frysinger
4a08e82d44 trylink: use mktemp instead of hardcoding paths
This way we respect standard tempdir env vars and are guaranteed to
be unique.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2015-03-16 17:46:17 -04:00
Denys Vlasenko
e3366d696c trylink: emit names of linked executables
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-05-03 16:35:15 +02:00
Denys Vlasenko
5fd3ddfb24 modprobe-small: fix help messages for aliased module-related applets
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-04-19 15:04:39 +02:00
Drew Moseley
7537406edd build system: specify '-nostldlib' when linking to .o files
For certain cross build scenarios the LD variable is overridden
to use the gcc executive to ensure all the target tuning parameters
are used.  In these cases, the executive errors out as shown below
but since this step is only linking to a .o file the standard libs
are not needed.

    $ make LD=gcc applets/built-in.o
      LD      applets/built-in.o
    /usr/bin/ld: cannot find -lgcc_s
    /usr/bin/ld: cannot find -lgcc_s
    collect2: ld returned 1 exit status
    make[1]: *** [applets/built-in.o] Error 1
    make: *** [applets_dir] Error 2

Signed-off-by: Drew Moseley <drew_moseley@mentor.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-04-02 12:12:46 +02:00
Denys Vlasenko
29f3526048 build system: for "find", use POSIX not operator (!) instead of -not
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-03-16 12:05:58 +01:00
Matthias Andree
9b76f895bc build system: fix non-portable sed constructs.
This includes proper line breaks for labels and closing braces,
and removing non-portable \n and \t in s/// functions.

Signed-off-by: Matthias Andree <matthias.andree@gmx.de>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-01-10 11:54:37 +01:00
Denys Vlasenko
f2743a5b00 build system: stop including alloca.h, stdlib.h provides it
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2014-01-09 11:02:46 +01:00
Denys Vlasenko
198b02f7dd fix failures found by randomconfig builds
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-12-31 23:22:36 +01:00
Daniel Borca
c9d87bed8e build system: fix make gconfig
Was getting "undefined reference to symbol 'dlsym@@GLIBC_2.2.5'".

Signed-off-by: Daniel Borca <dborca@yahoo.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-12-19 04:43:24 +01:00
Denys Vlasenko
195c436f84 build system: use od -b instead of od -t x1
od -t is not available in non-CONFIG_DESKTOPed busybox od

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-11-26 14:56:29 +01:00
Bartosz Golaszewski
28a209466f bloat-o-meter: add usage info
Signed-off-by: Bartosz Golaszewski <bartekgola@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2013-10-16 19:18:05 +02:00
Mike Frysinger
3eab2b7675 trylink: only prefix libs with -l
If our pkg-config queries pass back a flag like -pthread, the trylink
script will expand that to -l-pthread.  So change trylink to only add
the -l prefix to a value that doesn't have a - prefix already.

Reported-by: thaehaid@incognitomail.org
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-09-28 18:40:07 -04:00
Bernhard Reutner-Fischer
9078633fee buildsys: Add helper to list suid applets
Add a helper script that lists all applets that
- do or may require SUID provileges (busybox.cfg.suid)
- do not require SUID provileges (busybox.cfg.nosuid)

Some setups prefer to build two busybox binaries, one that is suid which
contains all applets that do or may require suid privileges, and a
second one for all the rest (which drops suid). To ease splitting these
two binaries, generate a list of CONFIG_ items for the suid binary.

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2013-07-26 13:39:46 +02:00
Denys Vlasenko
225cc1327a scripts/kconfig/mconf: work on systems w/o SIGWINCH
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-09-27 15:26:40 +02:00
Bernhard Walle
9b78e14dfb build system: fix build of kconfig on Darwin
Of course busybox cannot be used on Darwin (Mac OS X), but it can be
cross-compiled for Linux there. Cross-compilation still requires kconfig
to be built as native host tool.

Signed-off-by: Bernhard Walle <bernhard@bwalle.de>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-06-18 01:51:26 +02:00
Denys Vlasenko
8cab66730a fix build breakage found by randconfig
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-04-20 14:48:00 +02:00
Bernhard Reutner-Fischer
25dbb0743e bloat-o-meter: Remove unused code
The regex matching is way slower, so remove it since it was disabled
anyway.

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-03-30 19:50:39 +02:00
Bernhard Reutner-Fischer
b1b70969e0 bloat-o-meter: handle huge (hex) sizes.
dynamic symbols with size >99999 are printed in hex.
see print_vma(psym->st_size, DEC_5)

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-03-30 19:26:40 +02:00
Paulius Zaleckas
1c7724bf2a gen_build_files.sh: exclude hidden directories
I am using quilt to manage patches internally. Quilt creates dir .pc
and stores unmodified files there. Since I made change in one of
Config.src quilt made a copy in .pc/xxx.patch/xxx/Config.src. When
I run make it calls gen_build_files.sh and it generates
.pc/xxx.patch/xxx/Config.in. Now when I want to pop patch quilt
thinks I have made changes to original xxx/Config.in.

IMO the best solution is just to ignore hidden directories in
gen_build_files.sh. This also results in shorter build time in case
busybox is under git/svn versioning, since it avoids searching
many directories for Config.src.

Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2012-01-30 02:34:56 +01:00
Denys Vlasenko
4ea37d62c2 gen_build_files.sh: simplify "print everything up to INSERT line" part
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-10-19 21:17:20 +02:00
Denys Vlasenko
efd08bfa0a gen_build_files: don't pass 200k+ strings as params. Closes 4321
Also removes one grep per generated file.

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-10-19 17:54:42 +02:00
Denys Vlasenko
dd1eb413f2 suppress "warning: implicit declaration of function 'alloca'"
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-09-15 10:37:04 +02:00
Lauri Kasanen
98f213ed79 bloat-o-meter: don't require that pythin is in /usr/bin.
Signed-off-by: Lauri Kasanen <curaga@operamail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-07-08 10:56:58 +02:00
Daniel Fandrich
126f2b2853 Support configuring Busybox from _defconfig files
The existing test .config files are moved to configs/ and renamed
to *_defconfig. 'make xyz_defconfig' will enable the
configuration in that specific file.

Signed-off-by: Daniel Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-07-08 07:59:16 +02:00
Steve Iribarne
ed607a87e0 pam link error with SHARED_BUSYBOX and LIBBUSYBOX enabled
Signed-off-by: Steve Iribarne <siribarne@grid-net.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-05-09 01:42:12 +02:00
Cristian Ionescu-Idbohrn
fcbc641fe3 get rid of several "variable 'x' set but not used" warnings
Signed-off-by: Cristian Ionescu-Idbohrn <cii@axis.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-05-01 14:43:53 +02:00
Denys Vlasenko
b83c970412 build fixes for scripts/kconfig
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-04-18 01:19:59 +02:00
Denys Vlasenko
08caf0900d fix another nonportable grep usage in scripts
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-04-16 19:45:33 +02:00
Denys Vlasenko
c3dadba699 gen_build_files.sh: do not use "sed --" for now
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-04-16 17:59:34 +02:00
Marek Polacek
b0b8884009 Fix double words in comments. No code changes
Signed-off-by: Marek Polacek <mpolacek@redhat.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-04-16 17:33:43 +02:00
Denys Vlasenko
bff5f3f2b4 fix bit rot in scripts/Makefile.IMA #2
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-03-06 23:48:24 +01:00
Denys Vlasenko
726ebbaa9f fix bit rot in scripts/Makefile.IMA
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-03-06 23:09:42 +01:00
Denys Vlasenko
e7212a4ce5 scripts/mkconfigs: don't use invalid basic regexp
\? are GNU extension and thus are non-standard

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-02-09 01:33:41 +01:00
Denys Vlasenko
5a746dcec5 scripts/kconfig/mconf.c: stop-gap fix for buffer overflow
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2011-02-07 02:19:02 +01:00
Macpaul Lin
b2fa0b6219 scripts: fix fixdep.c to let it workable in cygwin
Update retrun character detection in the fixdep.c
to let it work in cygwin.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
Signed-off-by: Greentime <green.hu@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-12-18 01:46:38 +01:00
Denys Vlasenko
e06884208a Revert "scripts: fix fixdep.c to let it workable in cygwin"
This reverts commit 10c36b8657.
2010-12-18 01:46:04 +01:00
Greentime
10c36b8657 scripts: fix fixdep.c to let it workable in cygwin
Update return character detection in the fixdep.c
to let it workable in cygwin.

Signed-off-by: Macpaul Lin <macpaul@andestech.com>
Signed-off-by: Greentime <green.hu@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-12-18 01:45:14 +01:00
Denys Vlasenko
7a3f8e2fe1 gen_build_files.sh: better comment
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-11-25 06:55:18 +01:00
Denys Vlasenko
749e305d36 build system: fix for dash
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-11-24 15:06:49 +01:00
Denys Vlasenko
26777aa1c6 fixes for bugs discovered by randomconfig builds and tests
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-11-22 23:49:10 +01:00
Denys Vlasenko
f9d091316d gen_build_files.sh: restore deleted comment
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-11-21 22:10:07 +01:00
Mike Frysinger
f718e3a0db gen_build_files.sh: rewrite with sed
The shell parsing of files is incredibly slow on many systems.  With
one report, the process was taking a minute or two which made people
thing the build was hung.  So rewrite the craziness with sed and proper
shell functions.  On an idle system, this cut the runtime by half.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2010-11-16 09:01:54 -05:00