elfutils: disable for static builds
authorVicente Olivert Riera <Vincent.Riera@imgtec.com>
Wed, 5 Nov 2014 10:42:46 +0000 (10:42 +0000)
committerPeter Korsgaard <peter@korsgaard.com>
Fri, 7 Nov 2014 07:55:34 +0000 (08:55 +0100)
Even when doing static builds, a shared library is built. This causes a
build failure under some circumstances, for instance when building for
MIPS + uClibc + static.

After asking upstream if it would be possible to add a configure option
to not build the shared library, the answer was that doing a static
build is not a good idea. Here is a small snippet of the conversation:

"Note that fully static builds are problematic.  elfutils uses dlopen to
open the EBL backends (the CPU-specific support snippets), so even if
you link statically, the final binaries are still considerably dynamic."

Related:
  https://lists.fedorahosted.org/pipermail/elfutils-devel/2014-November/004223.html

Fixes:
  http://autobuild.buildroot.net/results/691/6913f5af6519463fbed39ef37b6a40ecf6a67b54/

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
package/avrdude/Config.in
package/elfutils/Config.in
package/kexec-lite/Config.in
package/ltrace/Config.in

index 7d9f5eb7436764032b119bc65901553fc39fa845..84bd091dd991aaf5cf64fc278fa16a405329ad7a 100644 (file)
@@ -7,6 +7,7 @@ config BR2_PACKAGE_AVRDUDE
        depends on BR2_TOOLCHAIN_HAS_THREADS
        depends on BR2_LARGEFILE # elfutils
        depends on BR2_USE_WCHAR # elfutils
+       depends on !BR2_PREFER_STATIC_LIB # elfutils
        depends on !BR2_avr32 # elfutils
        depends on !BR2_bfin # elfutils
        help
@@ -15,7 +16,7 @@ config BR2_PACKAGE_AVRDUDE
 
          https://github.com/kcuzner/avrdude
 
-comment "avrdude needs a toolchain w/ threads, largefile, wchar"
-       depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_LARGEFILE || !BR2_USE_WCHAR
+comment "avrdude needs a toolchain w/ threads, largefile, wchar, dynamic library"
+       depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_LARGEFILE || !BR2_USE_WCHAR || BR2_PREFER_STATIC_LIB
        depends on !BR2_avr32
        depends on !BR2_bfin
index 20a1aaa07c160dea718905470ace100ce314dd00..5d6e659d8954dec680ce02f74e5aec40f2c7997f 100644 (file)
@@ -1,7 +1,7 @@
-comment "elfutils needs a toolchain w/ largefile, wchar"
+comment "elfutils needs a toolchain w/ largefile, wchar, dynamic library"
        depends on !BR2_avr32
        depends on !BR2_bfin
-       depends on !BR2_LARGEFILE || !BR2_USE_WCHAR
+       depends on !BR2_LARGEFILE || !BR2_USE_WCHAR || BR2_PREFER_STATIC_LIB
 
 config BR2_PACKAGE_ELFUTILS
        bool "elfutils"
@@ -9,6 +9,7 @@ config BR2_PACKAGE_ELFUTILS
        select BR2_PACKAGE_GETTEXT if BR2_NEEDS_GETTEXT
        depends on BR2_LARGEFILE
        depends on BR2_USE_WCHAR
+       depends on !BR2_PREFER_STATIC_LIB
        # canonicalize_file_name() not available on uClibc 0.9.31, used
        # only for AVR32
        depends on !BR2_avr32
index e98ad3ab9642a46e635ced3120bad6947300f05e..8db605876e2a492d6a8cc9221a1f6d5c44dae46a 100644 (file)
@@ -1,7 +1,7 @@
 config BR2_PACKAGE_KEXEC_LITE
        bool "kexec-lite"
        depends on BR2_powerpc || BR2_powerpc64
-       depends on !BR2_PREFER_STATIC_LIB # dtc
+       depends on !BR2_PREFER_STATIC_LIB # dtc, elfutils
        depends on BR2_LARGEFILE # elfutils
        depends on BR2_USE_WCHAR # elfutils
        select BR2_PACKAGE_ELFUTILS
index dc759d84c67300100c2e292745577ee82747ccd3..08edd4584289c63994d96e600b5ed1f124705665 100644 (file)
@@ -9,6 +9,7 @@ config BR2_PACKAGE_LTRACE
        select BR2_PACKAGE_ELFUTILS
        depends on BR2_LARGEFILE # elfutils
        depends on BR2_USE_WCHAR # elfutils
+       depends on !BR2_PREFER_STATIC_LIB # elfutils
        help
          Debugging program which runs a specified command until it exits.
          While the command is executing, ltrace intercepts and records
@@ -17,5 +18,5 @@ config BR2_PACKAGE_LTRACE
 
          http://ltrace.org
 
-comment "ltrace needs toolchain w/ largefile, wchar"
-       depends on !BR2_LARGEFILE || !BR2_USE_WCHAR
+comment "ltrace needs toolchain w/ largefile, wchar, dynamic library"
+       depends on !BR2_LARGEFILE || !BR2_USE_WCHAR || BR2_PREFER_STATIC_LIB