fix svn patch breakage in glib
[openwrt.git] / obsolete-buildroot / make / zlib.mk
1 #############################################################
2 #
3 # zlib
4 #
5 #############################################################
6 ZLIB_SOURCE=zlib-1.1.4.tar.bz2
7 ZLIB_SITE=http://aleron.dl.sourceforge.net/sourceforge/libpng
8 ZLIB_DIR=$(BUILD_DIR)/zlib-1.1.4
9 ZLIB_CFLAGS= $(TARGET_CFLAGS) -fPIC
10 ifeq ($(strip $(BUILD_WITH_LARGEFILE)),true)
11 ZLIB_CFLAGS+= -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
12 endif
13
14 ZLIB_IPK_DIR=$(BUILD_DIR)/zlib-1.1.4-ipk
15 ZLIB_IPK=$(BUILD_DIR)/zlib_1.1.4-1_mipsel.ipk
16
17 $(DL_DIR)/$(ZLIB_SOURCE):
18         $(WGET) -P $(DL_DIR) $(ZLIB_SITE)/$(ZLIB_SOURCE)
19
20 $(ZLIB_DIR)/.source: $(DL_DIR)/$(ZLIB_SOURCE)
21         bzcat $(DL_DIR)/$(ZLIB_SOURCE) | tar -C $(BUILD_DIR) -xvf -
22         touch $(ZLIB_DIR)/.source
23
24 $(ZLIB_DIR)/.configured: $(ZLIB_DIR)/.source
25         (cd $(ZLIB_DIR); \
26                 ./configure \
27                 --shared \
28                 --prefix=/usr \
29                 --exec-prefix=$(STAGING_DIR)/usr/bin \
30                 --libdir=$(STAGING_DIR)/lib \
31                 --includedir=$(STAGING_DIR)/include \
32         );
33         touch $(ZLIB_DIR)/.configured;
34
35 $(ZLIB_DIR)/libz.so.1.1.4: $(ZLIB_DIR)/.configured
36         $(MAKE) LDSHARED="$(TARGET_CROSS)ld -shared -soname,libz.so.1" \
37                 CFLAGS="$(ZLIB_CFLAGS)" CC=$(TARGET_CC) -C $(ZLIB_DIR) all libz.a;
38         touch -c $(ZLIB_DIR)/libz.so.1.1.4
39
40 $(STAGING_DIR)/lib/libz.so.1.1.4: $(ZLIB_DIR)/libz.so.1.1.4
41         cp -dpf $(ZLIB_DIR)/libz.a $(STAGING_DIR)/lib;
42         cp -dpf $(ZLIB_DIR)/zlib.h $(STAGING_DIR)/include;
43         cp -dpf $(ZLIB_DIR)/zconf.h $(STAGING_DIR)/include;
44         cp -dpf $(ZLIB_DIR)/libz.so* $(STAGING_DIR)/lib;
45         (cd $(STAGING_DIR)/lib; ln -fs libz.so.1.1.4 libz.so.1);
46         chmod a-x $(STAGING_DIR)/lib/libz.so.1.1.4
47         touch -c $(STAGING_DIR)/lib/libz.so.1.1.4
48
49 $(TARGET_DIR)/lib/libz.so.1.1.4: $(STAGING_DIR)/lib/libz.so.1.1.4
50         cp -dpf $(STAGING_DIR)/lib/libz.so* $(TARGET_DIR)/lib;
51         -$(STRIP)  $(TARGET_DIR)/lib/libz.so*
52         touch -c $(TARGET_DIR)/lib/libz.so.1.1.4
53
54 $(TARGET_DIR)/usr/lib/libz.a: $(STAGING_DIR)/lib/libz.so.1.1.4
55         mkdir -p $(TARGET_DIR)/usr/include
56         cp -dpf $(STAGING_DIR)/include/zlib.h $(TARGET_DIR)/usr/include/
57         cp -dpf $(STAGING_DIR)/include/zconf.h $(TARGET_DIR)/usr/include/
58         cp -dpf $(STAGING_DIR)/lib/libz.a $(TARGET_DIR)/usr/lib/
59         rm -f $(TARGET_DIR)/lib/libz.so
60         (cd $(TARGET_DIR)/usr/lib; ln -fs /lib/libz.so.1.1.4 libz.so)
61         touch -c $(TARGET_DIR)/usr/lib/libz.a
62
63 zlib-headers: $(TARGET_DIR)/usr/lib/libz.a
64
65 zlib: uclibc $(TARGET_DIR)/lib/libz.so.1.1.4
66
67 $(ZLIB_IPK): uclibc $(STAGING_DIR)/lib/libz.so.1.1.4
68         mkdir -p $(ZLIB_IPK_DIR)/CONTROL
69         cp $(SOURCE_DIR)/openwrt/ipkg/zlib/control $(ZLIB_IPK_DIR)/CONTROL/control
70         mkdir -p $(ZLIB_IPK_DIR)/lib
71         cp -dpf $(STAGING_DIR)/lib/libz.so* $(ZLIB_IPK_DIR)/lib;
72         -$(STRIP)  $(ZLIB_IPK_DIR)/lib/libz.so*
73         touch -c $(ZLIB_IPK_DIR)/lib/libz.so.1.1.4
74         cd $(BUILD_DIR); $(IPKG_BUILD) $(ZLIB_IPK_DIR)
75
76 zlib-ipk: $(ZLIB_IPK)
77
78 zlib-source: $(DL_DIR)/$(ZLIB_SOURCE)
79
80 zlib-clean:
81         rm -f $(TARGET_DIR)/lib/libz.so*
82         -$(MAKE) -C $(ZLIB_DIR) clean
83
84 zlib-dirclean:
85         rm -rf $(ZLIB_DIR)
86