Kaynağa Gözat

package/autotools: add --{enable,disable}-{shared,static} automatically

For target packages, depending on BR2_PREFER_STATIC_LIB, add the
correct combination of --{enable,disable}-{shared,static} flags to
./configure calls.

  * When BR2_PREFER_STATIC_LIB is enabled, we pass --enable-static
  --disable-shared.

  * When BR2_PREFER_STATIC_LIB is disabled, we pass --enable-static
  --enable-shared. We enable static libraries since they can still be
  useful to statically link applications against some libraries
  (sometimes it is useful for size reasons). Static libraries are
  anyway only installed in the STAGING_DIR, so it doesn't increase in
  any way the size of the TARGET_DIR.

For host packages, always pass --enable-shared and --disable-static.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Thomas Petazzoni 14 yıl önce
ebeveyn
işleme
009d8fceab
2 değiştirilmiş dosya ile 8 ekleme ve 0 silme
  1. 2 0
      package/Makefile.autotools.in
  2. 6 0
      package/Makefile.in

+ 2 - 0
package/Makefile.autotools.in

@@ -104,6 +104,7 @@ define $(2)_CONFIGURE_CMDS
 		$$(DISABLE_NLS) \
 		$$(DISABLE_LARGEFILE) \
 		$$(DISABLE_IPV6) \
+		$$(SHARED_STATIC_LIBS_OPTS) \
 		$$(QUIET) $$($$(PKG)_CONF_OPT) \
 	)
 endef
@@ -119,6 +120,7 @@ define $(2)_CONFIGURE_CMDS
 		./configure \
 		--prefix="$$(HOST_DIR)/usr" \
 		--sysconfdir="$$(HOST_DIR)/etc" \
+		--enable-shared --disable-static \
 		$$($$(PKG)_CONF_OPT) \
 	)
 endef

+ 6 - 0
package/Makefile.in

@@ -276,6 +276,12 @@ else
 ENABLE_DEBUG:=
 endif
 
+ifeq ($(BR2_PREFER_STATIC_LIB),y)
+SHARED_STATIC_LIBS_OPTS=--enable-static --disable-shared
+else
+SHARED_STATIC_LIBS_OPTS=--enable-static --enable-shared
+endif
+
 include package/Makefile.autotools.in
 include package/Makefile.cmake.in
 include package/Makefile.package.in