#
-# Copyright (C) 2007 OpenWrt.org
+# Copyright (C) 2007-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
-# $ Id: $
include $(TOPDIR)/rules.mk
PKG_NAME:=apr
-PKG_VERSION:=0.9.13
+PKG_VERSION:=1.4.2
PKG_RELEASE:=1
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://apache.d-s-s-p.de/apr/
-PKG_MD5SUM:=233894af598d8347fd68cf836e7dee91
-PKG_CAT:=zcat
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=http://www.ibiblio.org/pub/mirrors/apache/apr
+PKG_MD5SUM:=4b00e8f70c067893d075577962656b35
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
-PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+PKG_FIXUP:=libtool
+
+PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
-define Package/apr
+define Package/libapr
SECTION:=libs
CATEGORY:=Libraries
DEPENDS:=+libpthread
TITLE:=Apache Portable Runtime Library
- DESCRIPTION:=\
- Apache Portable Runtime Library
URL:=http://apr.apache.org/
endef
-define Build/Configure
- $(call Build/Configure/Default, \
- --with-devrandom=/dev/urandom \
- --disable-dso \
- --disable-ipv6 \
- , \
- ac_cv_file__dev_zero=yes \
- ac_cv_sizeof_ssize_t=4 \
- ac_cv_define_PTHREAD_PROCESS_SHARED=no \
- apr_cv_mutex_robust_shared=no \
- LDFLAGS="-lpthread -L$(STAGING_DIR)/lib" \
- CFLAGS="-I$(STAGING_DIR)/include" \
- )
-endef
+TARGET_CFLAGS += $(FPIC)
+CONFIGURE_ARGS += \
+ --with-devrandom=/dev/urandom \
+ --disable-dso \
+ --enable-ipv6
-define Build/Compile
- $(MAKE) -C $(PKG_BUILD_DIR) \
- DESTDIR="$(PKG_INSTALL_DIR)" \
- all install
-endef
+# XXX: ac_cv_sizeof_struct_iovec=1 is just to trick configure
+CONFIGURE_VARS += \
+ ac_cv_sizeof_struct_iovec=1 \
+ apr_cv_process_shared_works=no \
+ apr_cv_mutex_robust_shared=no \
+ apr_cv_tcp_nodelay_with_cork=yes \
+ LDFLAGS="$$$$LDFLAGS -lpthread" \
define Build/InstallDev
- mkdir -p $(STAGING_DIR)/usr/bin
- $(CP) $(PKG_INSTALL_DIR)/usr/bin/apr-config \
- $(STAGING_DIR)/usr/bin
- mkdir -p $(STAGING_DIR)/usr/include
- $(CP) $(PKG_INSTALL_DIR)/usr/include/apr-0/ \
- $(STAGING_DIR)/usr/include/
- mkdir -p $(STAGING_DIR)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/*apr* \
- $(STAGING_DIR)/usr/lib/
- mkdir -p $(STAGING_DIR)/usr/share/
- $(CP) $(PKG_INSTALL_DIR)/usr/share/build/ \
- $(STAGING_DIR)/usr/share/
- $(SED) "s,/usr/share/build,$(STAGING_DIR)/usr/share/build," $(STAGING_DIR)/usr/share/build/apr_rules.mk
- $(SED) "s,\"/usr\",$(STAGING_DIR)/usr," $(STAGING_DIR)/usr/bin/apr-config
- $(SED) "s,"libdir\=\'/usr/lib\'",libdir='$(STAGING_DIR)/usr/lib\'," $(STAGING_DIR)/usr/lib/libapr-0.la
-endef
-
-define Build/UninstallDev
- rm $(STAGING_DIR)/usr/bin/apr-config \
- $(STAGING_DIR)/usr/include/apr-0/{apr_allocator.h,apr_atomic.h,apr_compat.h,apr_dso.h,apr_env.h,apr_errno.h,apr_file_info.h,apr_file_io.h,apr_fnmatch.h,apr_general.h,apr_getopt.h,apr_global_mutex.h,apr.h,apr_hash.h,apr_inherit.h,apr_lib.h,apr_mmap.h,apr_network_io.h,apr_poll.h,apr_pools.h,apr_portable.h,\apr_proc_mutex.h,\apr_ring.h,apr_shm.h,apr_signal.h,apr_strings.h,apr_support.h,apr_tables.h,apr_thread_cond.h,apr_thread_mutex.h,apr_thread_proc.h,apr_thread_rwlock.h,apr_time.h,apr_user.h,apr_version.h,apr_want.h} \
- $(STAGING_DIR)/usr/lib/libapr-0* \
- $(STAGING_DIR)/usr/share/build/{apr_rules.mk,libtool,make_exports.awk,make_var_export.awk,mkdir.sh}
+ $(INSTALL_DIR) $(1)/usr/bin $(1)/usr/include/apr-1 $(1)/usr/lib $(1)/usr/lib/pkgconfig $(1)/usr/share/build-1
+ $(CP) $(PKG_INSTALL_DIR)/usr/bin/apr-1-config \
+ $(1)/usr/bin/
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/apr-1/* \
+ $(1)/usr/include/apr-1/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libapr-1.{la,a,so*} \
+ $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/apr-1.pc \
+ $(1)/usr/lib/pkgconfig/
+ $(CP) $(PKG_INSTALL_DIR)/usr/share/build-1/* \
+ $(1)/usr/share/build-1/
+ $(SED) 's,^datadir=\"/usr/share\",datadir=\"$(STAGING_DIR)/usr/share\",g' $(1)/usr/bin/apr-1-config
+ $(SED) 's,^installbuilddir=\"/usr/share/build-1\",installbuilddir=\"$(STAGING_DIR)/usr/share/build-1\",g' $(1)/usr/bin/apr-1-config
+ $(SED) 's,^libdir=\"$$$${exec_prefix}/lib,libdir=\"$(STAGING_DIR)/usr/lib,g' $(1)/usr/bin/apr-1-config
+ $(SED) 's,^includedir=\"$$$${prefix}/include/,includedir=\"$(STAGING_DIR)/usr/include/,g' $(1)/usr/bin/apr-1-config
+ $(SED) 's,-L$$$$libdir,,g' $(1)/usr/bin/apr-1-config
+ $(SED) 's,-R$$$$libdir,,g' $(1)/usr/bin/apr-1-config
+ $(SED) 's,/usr/share/build-1,$(STAGING_DIR)/usr/share/build-1,g' $(1)/usr/share/build-1/apr_rules.mk
endef
-define Package/apr/install
- $(INSTALL_DIR) $(1)/usr/bin
- $(CP) $(PKG_INSTALL_DIR)/usr/bin/apr-config $(1)/usr/bin/
+define Package/libapr/install
$(INSTALL_DIR) $(1)/usr/lib
- $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libapr-1.so.* $(1)/usr/lib/
endef
-$(eval $(call BuildPackage,apr))
+$(eval $(call BuildPackage,libapr))