From 115bcd64d781cd51e98c17aaf0a75327d6bad018 Mon Sep 17 00:00:00 2001 From: Bernhard Reutner-Fischer Date: Fri, 31 Oct 2008 11:08:43 +0100 Subject: [PATCH] fix configuration of zlib NB: this is not an autoconf'ed package --- package/zlib/zlib.mk | 48 +++++++++++++++++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 13 deletions(-) diff --git a/package/zlib/zlib.mk b/package/zlib/zlib.mk index 9b93930..1e9ae84 100644 --- a/package/zlib/zlib.mk +++ b/package/zlib/zlib.mk @@ -8,7 +8,14 @@ ZLIB_SOURCE:=zlib-$(ZLIB_VERSION).tar.bz2 ZLIB_CAT:=$(BZCAT) ZLIB_SITE:=http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/libpng ZLIB_DIR:=$(BUILD_DIR)/zlib-$(ZLIB_VERSION) -ZLIB_CFLAGS:=-fPIC + +ZLIB_CFLAGS=$(TARGET_CFLAGS) -UDEBUG -DNDEBUG +#ifeq ($(BR2_USE_MMU),y) +#ZLIB_CFLAGS+= -DUSE_MMAP +#endif +ifeq ($(BR2_ENABLE_SHARED),y) +ZLIB_CFLAGS+=-fPIC -DPIC +endif ifeq ($(BR2_LARGEFILE),y) ZLIB_CFLAGS+=-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 endif @@ -19,16 +26,17 @@ $(DL_DIR)/$(ZLIB_SOURCE): $(ZLIB_DIR)/.patched: $(DL_DIR)/$(ZLIB_SOURCE) $(ZLIB_CAT) $(DL_DIR)/$(ZLIB_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - toolchain/patch-kernel.sh $(ZLIB_DIR) package/zlib/ zlib\*.patch - $(CONFIG_UPDATE) $(@D) + # not an autoconf package: $(CONFIG_UPDATE) $(@D) touch $@ $(ZLIB_DIR)/.configured: $(ZLIB_DIR)/.patched + # not an autoconf package: (cd $(ZLIB_DIR); rm -rf config.cache; \ $(TARGET_CONFIGURE_ARGS) \ $(TARGET_CONFIGURE_OPTS) \ - CFLAGS="$(ZLIB_CFLAGS)" \ + $(TARGET_CONFIGURE_ENV) \ ./configure \ - --shared \ + $(if $(BR2_ENABLE_SHARED),--shared) \ --prefix=/usr \ --exec-prefix=$(STAGING_DIR)/usr/bin \ --libdir=$(STAGING_DIR)/usr/lib \ @@ -36,8 +44,22 @@ $(ZLIB_DIR)/.configured: $(ZLIB_DIR)/.patched ) touch $@ +ifeq ($(BR2_x86_i586),y) +ZLIB_ASM_FILE=cp -dpf $(ZLIB_DIR)/contrib/asm586/match.S $(ZLIB_DIR)/ +endif +# pentium pro capabable: +ifeq ($(BR2_i386),y) +ifneq ($(findstring y,$(BR2_x86_i386)$(BR2_x86_i486)$(BR2_x86_i586)$(BR2_x86_geode)$(BR2_x86_c3)$(BR2_x86_winchip_c6)$(BR2_x86_winchip2)),y) +ZLIB_ASM_FILE=cp -dpf $(ZLIB_DIR)/contrib/asm686/match.S $(ZLIB_DIR)/ +endif +endif +ifneq ($(ZLIB_ASM_FILE),) +ZLIB_CFLAGS+=-DASMV +ZLIB_OBJA:=match.o +endif + $(ZLIB_DIR)/libz.so.$(ZLIB_VERSION): $(ZLIB_DIR)/.configured - $(MAKE) -C $(ZLIB_DIR) all libz.a + $(MAKE) CFLAGS="$(ZLIB_CFLAGS)" -C $(ZLIB_DIR) $(ZLIB_OBJA) all libz.a touch -c $(ZLIB_DIR)/libz.so.$(ZLIB_VERSION) $(STAGING_DIR)/usr/lib/libz.so.$(ZLIB_VERSION): $(ZLIB_DIR)/libz.so.$(ZLIB_VERSION) @@ -50,17 +72,17 @@ $(STAGING_DIR)/usr/lib/libz.so.$(ZLIB_VERSION): $(ZLIB_DIR)/libz.so.$(ZLIB_VERSI touch -c $@ $(TARGET_DIR)/usr/lib/libz.so.$(ZLIB_VERSION): $(STAGING_DIR)/usr/lib/libz.so.$(ZLIB_VERSION) - mkdir -p $(TARGET_DIR)/usr/lib + $(INSTALL) -d $(TARGET_DIR)/usr/lib cp -dpf $(STAGING_DIR)/usr/lib/libz.so* $(TARGET_DIR)/usr/lib -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libz.so* touch -c $@ $(TARGET_DIR)/usr/lib/libz.a: $(STAGING_DIR)/usr/lib/libz.so.$(ZLIB_VERSION) - mkdir -p $(TARGET_DIR)/usr/include $(TARGET_DIR)/usr/lib - cp -dpf $(STAGING_DIR)/usr/include/zlib.h $(TARGET_DIR)/usr/include/ - cp -dpf $(STAGING_DIR)/usr/include/zconf.h $(TARGET_DIR)/usr/include/ - cp -dpf $(STAGING_DIR)/usr/lib/libz.a $(TARGET_DIR)/usr/lib/ - rm -f $(TARGET_DIR)/lib/libz.so $(TARGET_DIR)/usr/lib/libz.so + $(INSTALL) -d $(TARGET_DIR)/usr/include $(TARGET_DIR)/usr/lib + $(INSTALL) $(STAGING_DIR)/usr/include/zlib.h \ + $(STAGING_DIR)/usr/include/zconf.h $(TARGET_DIR)/usr/include/ + $(INSTALL) $(STAGING_DIR)/usr/lib/libz.a $(TARGET_DIR)/usr/lib/ + rm -f $(TARGET_DIR)/lib/libz.so* $(TARGET_DIR)/usr/lib/libz.so ln -sf libz.so.$(ZLIB_VERSION) $(TARGET_DIR)/usr/lib/libz.so touch -c $@ @@ -71,7 +93,7 @@ zlib: uclibc $(TARGET_DIR)/usr/lib/libz.so.$(ZLIB_VERSION) zlib-source: $(DL_DIR)/$(ZLIB_SOURCE) zlib-clean: - rm -f $(TARGET_DIR)/usr/lib/libz.so* \ + rm -f $(TARGET_DIR)/usr/lib/libz.* \ $(TARGET_DIR)/usr/include/zlib.h \ $(TARGET_DIR)/usr/include/zconf.h \ $(STAGING_DIR)/usr/include/zlib.h \ @@ -90,6 +112,6 @@ zlib-dirclean: ifeq ($(BR2_PACKAGE_ZLIB),y) TARGETS+=zlib endif -ifeq ($(BR2_PACKAGE_ZLIB_TARGET_HEADERS),y) +ifeq ($(findstring y,$(BR2_PACKAGE_ZLIB_TARGET_HEADERS)$(BR2_HAVE_INCLUDES)),y) TARGETS+=zlib-headers endif -- 2.11.4.GIT