diff options
author | Stefan Fröberg <stefan.froberg@petroprogram.com> | 2017-11-29 23:17:13 +0200 |
---|---|---|
committer | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2018-01-03 22:42:04 +0100 |
commit | eb1a657880992a9eafb639a666a8b3ec0928f14c (patch) | |
tree | 7dd8a4c673037b486698025dcd47cf8267a3b512 /package/zlib | |
parent | 287775d241b90993de3d0da3af11e72b5c406084 (diff) | |
download | buildroot-eb1a657880992a9eafb639a666a8b3ec0928f14c.tar.gz buildroot-eb1a657880992a9eafb639a666a8b3ec0928f14c.zip |
zlib: switch to a virtual package
The existing zlib package is renamed to libzlib, and zlib is turned
into a virtual package. This is done in preparation to the
introduction of zlib-ng as an alternative implementation.
Signed-off-by: Stefan Fröberg <stefan.froberg@petroprogram.com>
[Thomas: define BR2_PACKAGE_PROVIDES_HOST_ZLIB as suggested by Yann
E. Morin.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'package/zlib')
-rw-r--r-- | package/zlib/Config.in | 30 | ||||
-rw-r--r-- | package/zlib/zlib.hash | 4 | ||||
-rw-r--r-- | package/zlib/zlib.mk | 73 |
3 files changed, 32 insertions, 75 deletions
diff --git a/package/zlib/Config.in b/package/zlib/Config.in index 6201aba142..bdc1da6056 100644 --- a/package/zlib/Config.in +++ b/package/zlib/Config.in @@ -1,7 +1,37 @@ config BR2_PACKAGE_ZLIB + bool "zlib support" + help + Select the desired Zlib library provider. + +if BR2_PACKAGE_ZLIB + +choice + prompt "zlib variant" + default BR2_PACKAGE_LIBZLIB + help + Select the desired Zlib library provider. + +config BR2_PACKAGE_LIBZLIB bool "zlib" + select BR2_PACKAGE_HAS_ZLIB help Standard (de)compression library. Used by things like gzip and libpng. http://www.zlib.net + +endchoice + +config BR2_PACKAGE_HAS_ZLIB + bool + +config BR2_PACKAGE_PROVIDES_ZLIB + string + default "libzlib" if BR2_PACKAGE_LIBZLIB + +endif + +# ensure libzlib is used for the host variant +config BR2_PACKAGE_PROVIDES_HOST_ZLIB + string + default "host-libzlib" diff --git a/package/zlib/zlib.hash b/package/zlib/zlib.hash deleted file mode 100644 index e3736b1011..0000000000 --- a/package/zlib/zlib.hash +++ /dev/null @@ -1,4 +0,0 @@ -# From http://www.zlib.net/ -sha256 4ff941449631ace0d4d203e3483be9dbc9da454084111f97ea0a2114e19bf066 zlib-1.2.11.tar.xz -# License files, locally calculated -sha256 7960b6b1cc63e619abb77acaea5427159605afee8c8b362664f4effc7d7f7d15 README diff --git a/package/zlib/zlib.mk b/package/zlib/zlib.mk index 9b5f52e807..78f48ff059 100644 --- a/package/zlib/zlib.mk +++ b/package/zlib/zlib.mk @@ -4,74 +4,5 @@ # ################################################################################ -ZLIB_VERSION = 1.2.11 -ZLIB_SOURCE = zlib-$(ZLIB_VERSION).tar.xz -ZLIB_SITE = http://www.zlib.net -ZLIB_LICENSE = Zlib -ZLIB_LICENSE_FILES = README -ZLIB_INSTALL_STAGING = YES - -# It is not possible to build only a shared version of zlib, so we build both -# shared and static, unless we only want the static libs, and we eventually -# selectively remove what we do not want -ifeq ($(BR2_STATIC_LIBS),y) -ZLIB_PIC = -ZLIB_SHARED = --static -else -ZLIB_PIC = -fPIC -ZLIB_SHARED = --shared -endif - -define ZLIB_CONFIGURE_CMDS - (cd $(@D); rm -rf config.cache; \ - $(TARGET_CONFIGURE_ARGS) \ - $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="$(TARGET_CFLAGS) $(ZLIB_PIC)" \ - ./configure \ - $(ZLIB_SHARED) \ - --prefix=/usr \ - ) -endef - -define HOST_ZLIB_CONFIGURE_CMDS - (cd $(@D); rm -rf config.cache; \ - $(HOST_CONFIGURE_ARGS) \ - $(HOST_CONFIGURE_OPTS) \ - ./configure \ - --prefix="$(HOST_DIR)" \ - --sysconfdir="$(HOST_DIR)/etc" \ - ) -endef - -define ZLIB_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) -endef - -define HOST_ZLIB_BUILD_CMDS - $(HOST_MAKE_ENV) $(MAKE1) -C $(@D) -endef - -define ZLIB_INSTALL_STAGING_CMDS - $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(STAGING_DIR) LDCONFIG=true install -endef - -define ZLIB_INSTALL_TARGET_CMDS - $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(TARGET_DIR) LDCONFIG=true install -endef - -# We don't care removing the .a from target, since it not used at link -# time to build other packages, and it is anyway removed later before -# assembling the filesystem images anyway. -ifeq ($(BR2_SHARED_LIBS),y) -define ZLIB_RM_STATIC_STAGING - rm -f $(STAGING_DIR)/usr/lib/libz.a -endef -ZLIB_POST_INSTALL_STAGING_HOOKS += ZLIB_RM_STATIC_STAGING -endif - -define HOST_ZLIB_INSTALL_CMDS - $(HOST_MAKE_ENV) $(MAKE1) -C $(@D) LDCONFIG=true install -endef - -$(eval $(generic-package)) -$(eval $(host-generic-package)) +$(eval $(virtual-package)) +$(eval $(host-virtual-package)) |