Tweak package build
[10.03/openwrt.git] / package / openldap / Makefile
1 # $Id$
2
3 include $(TOPDIR)/rules.mk
4
5 PKG_NAME:=openldap
6 PKG_VERSION:=2.2.26
7 PKG_RELEASE:=1
8 PKG_MD5SUM:=afc8700b5738da863b30208e1d3e9de8
9
10 PKG_SOURCE_URL:=ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/
11 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tgz
12 PKG_CAT:=zcat
13
14 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
15 PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
16
17 PKG_CONFIGURE_OPTIONS = \
18         --enable-shared \
19         --enable-static \
20         --disable-debug \
21         --enable-dynamic \
22         --enable-syslog \
23         --disable-local \
24         --disable-slapd \
25         --disable-slurpd \
26         --with-cyrus-sasl \
27         --without-fetch \
28         --with-threads \
29         --with-tls \
30         --with-yielding_select="yes" \
31
32 include $(TOPDIR)/package/rules.mk
33
34 $(eval $(call PKG_template,LIBOPENLDAP,libopenldap,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
35 $(eval $(call PKG_template,OPENLDAP_UTILS,openldap-utils,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
36
37 $(PKG_BUILD_DIR)/.configured:
38         touch $@
39
40 $(PKG_BUILD_DIR)/.built:
41         rm -rf $(PKG_INSTALL_DIR)
42         mkdir -p $(PKG_INSTALL_DIR)
43         (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
44                 ./configure \
45                   --target=$(GNU_HOST_NAME) \
46                   --host=$(GNU_HOST_NAME) \
47                   --build=$(GNU_HOST_NAME) \
48                   --program-prefix="" \
49                   --program-suffix="" \
50                   --prefix=/usr \
51                   --exec-prefix=/usr \
52                   --bindir=/usr/bin \
53                   --datadir=/usr/share \
54                   --includedir=/usr/include \
55                   --libdir=/usr/lib \
56                   --libexecdir=/usr/lib \
57                   --localstatedir=/var \
58                   --mandir=/usr/share/man \
59                   --sbindir=/usr/sbin \
60                   --sysconfdir=/etc \
61                   $(DISABLE_LARGEFILE) \
62                   $(DISABLE_NLS) \
63                   $(PKG_CONFIGURE_OPTIONS) \
64         )
65         $(MAKE) -C $(PKG_BUILD_DIR) depend 
66         $(MAKE) -C $(PKG_BUILD_DIR)/libraries/liblutil
67         $(MAKE) -C $(PKG_BUILD_DIR)/libraries/liblber
68         $(MAKE) -C $(PKG_BUILD_DIR)/libraries/liblunicode
69         $(MAKE) -C $(PKG_BUILD_DIR)/libraries/liblber clean
70         $(MAKE) -C $(PKG_BUILD_DIR)/libraries/liblutil clean
71         (cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
72                 $(TARGET_CONFIGURE_OPTS) \
73                 CFLAGS="$(TARGET_CFLAGS)" \
74                 CPPFLAGS="-I$(STAGING_DIR)/usr/include" \
75                 LDFLAGS="-L$(STAGING_DIR)/usr/lib" \
76                 ac_cv_func_memcmp_clean="yes" \
77                 ./configure \
78                   --target=$(GNU_TARGET_NAME) \
79                   --host=$(GNU_TARGET_NAME) \
80                   --build=$(GNU_HOST_NAME) \
81                   --program-prefix="" \
82                   --program-suffix="" \
83                   --prefix=/usr \
84                   --exec-prefix=/usr \
85                   --bindir=/usr/bin \
86                   --datadir=/usr/share \
87                   --includedir=/usr/include \
88                   --libdir=/usr/lib \
89                   --libexecdir=/usr/lib \
90                   --localstatedir=/var \
91                   --mandir=/usr/share/man \
92                   --sbindir=/usr/sbin \
93                   --sysconfdir=/etc \
94                   $(DISABLE_LARGEFILE) \
95                   $(DISABLE_NLS) \
96                   $(PKG_CONFIGURE_OPTIONS) \
97         )
98         $(MAKE) -C $(PKG_BUILD_DIR) \
99                 DESTDIR="$(PKG_INSTALL_DIR)" \
100                 all install
101         touch $@
102         
103
104 $(IPKG_LIBOPENLDAP):
105         mkdir -p $(IDIR_LIBOPENLDAP)/etc/openldap
106         cp -fpR $(PKG_INSTALL_DIR)/etc/openldap/ldap.conf $(IDIR_LIBOPENLDAP)/etc/openldap/
107         mkdir -p $(IDIR_LIBOPENLDAP)/usr/lib/
108         cp -fpR $(PKG_INSTALL_DIR)/usr/lib/lib{lber,ldap}*.so.* $(IDIR_LIBOPENLDAP)/usr/lib/
109         mkdir -p $(IDIR_LIBOPENLDAP)/usr/share/openldap
110         cp -fpR $(PKG_INSTALL_DIR)/usr/share/openldap/* $(IDIR_LIBOPENLDAP)/usr/share/openldap/
111         $(RSTRIP) $(IDIR_LIBOPENLDAP)
112         $(IPKG_BUILD) $(IDIR_LIBOPENLDAP) $(PACKAGE_DIR)
113         
114 $(IPKG_OPENLDAP_UTILS):
115         mkdir -p $(IDIR_OPENLDAP_UTILS)/usr/bin
116         cp -fpR $(PKG_INSTALL_DIR)/usr/bin/ldap* $(IDIR_OPENLDAP_UTILS)/usr/bin/
117         $(RSTRIP) $(IDIR_OPENLDAP_UTILS)
118         $(IPKG_BUILD) $(IDIR_OPENLDAP_UTILS) $(PACKAGE_DIR)
119
120 $(STAGING_DIR)/usr/lib/libldap.so: $(PKG_BUILD_DIR)/.built
121         mkdir -p $(STAGING_DIR)/usr/include
122         cp -fpR $(PKG_INSTALL_DIR)/usr/include/{lber,ldap}*.h $(STAGING_DIR)/usr/include/
123         mkdir -p $(STAGING_DIR)/usr/lib/
124         cp -fpR $(PKG_INSTALL_DIR)/usr/lib/lib{lber,ldap}*.{a,so*} $(STAGING_DIR)/usr/lib/
125         touch $(STAGING_DIR)/usr/lib/libldap.so
126         
127 install-dev: $(STAGING_DIR)/usr/lib/libldap.so
128
129 uninstall-dev:
130         rm -rf $(STAGING_DIR)/usr/include/{lber,ldap}*.h
131         rm -rf $(STAGING_DIR)/usr/lib/lib{lber,ldap}*.{a,so*}
132
133 compile: install-dev
134 clean: uninstall-dev