[packages] libpcre: enable unicode property support (required by php) (#9360)
[openwrt/svn-archive/archive.git] / libs / pcre / Makefile
index 7ae7216cf0d272c5bdc05c872622f2dd26e1be68..ae567b76eb0a43f3a1d93fd2dacc650ddb76bf31 100644 (file)
@@ -1,96 +1,86 @@
-# 
-# Copyright (C) 2006 OpenWrt.org
+#
+# Copyright (C) 2006-2011 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:=pcre
-PKG_VERSION:=5.0
-PKG_RELEASE:=3
+PKG_VERSION:=8.11
+PKG_RELEASE:=2
 
-PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=@SF/pcre
-PKG_MD5SUM:=813850808894d99fb5b1c41ec6335d4f
-PKG_CAT:=bzcat
+PKG_MD5SUM:=ef907b8792ec7f90f0dcd773848f0b3b
+
+PKG_FIXUP:=autoreconf
+
+PKG_INSTALL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
-define Package/libpcre
+define Package/libpcre/default
   SECTION:=libs
   CATEGORY:=Libraries
-  TITLE:=A Perl Compatible Regular Expression library
-  DESCRIPTION:=A Perl Compatible Regular Expression library.
   URL:=http://www.pcre.org/
 endef
 
-define Build/Configure
-       (cd $(PKG_BUILD_DIR); rm -f config.cache; \
-               $(TARGET_CONFIGURE_OPTS) \
-               CFLAGS="$(TARGET_CFLAGS)" \
-               CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \
-               LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
-               ./configure \
-                       --target=$(GNU_TARGET_NAME) \
-                       --host=$(GNU_TARGET_NAME) \
-                       --build=$(GNU_HOST_NAME) \
-                       --program-prefix="" \
-                       --program-suffix="" \
-                       --prefix=/usr \
-                       --exec-prefix=/usr \
-                       --bindir=/usr/bin \
-                       --datadir=/usr/share \
-                       --includedir=/usr/include \
-                       --infodir=/usr/share/info \
-                       --libdir=$(STAGING_DIR)/usr/lib \
-                       --libexecdir=/usr/lib \
-                       --localstatedir=/var \
-                       --mandir=/usr/share/man \
-                       --sbindir=/usr/sbin \
-                       --sysconfdir=/etc \
-                       $(DISABLE_LARGEFILE) \
-                       $(DISABLE_NLS) \
-                       --enable-shared \
-                       --enable-static \
-                       --enable-utf8 \
-       );
+define Package/libpcre
+  $(call Package/libpcre/default)
+  TITLE:=A Perl Compatible Regular Expression library
 endef
 
-define Build/Compile
-       $(MAKE) -C "$(PKG_BUILD_DIR)" \
-               CC_FOR_BUILD="$(HOSTCC)" \
-               LINK_FOR_BUILD="$(HOSTCC)" \
-               CFLAGS_FOR_BUILD="" \
-               dftables
-       $(MAKE) -C "$(PKG_BUILD_DIR)" \
-               $(TARGET_CONFIGURE_OPTS) \
-               CFLAGS="$(TARGET_CFLAGS)" \
-               all
+define Package/libpcrecpp
+  $(call Package/libpcre/default)
+  TITLE:=C++ wrapper for Perl Compatible Regular Expression library
+  DEPENDS:=+libpcre
 endef
 
-define Package/libpcre/install
-       install -d -m0755 $(1)/usr/lib
-       $(CP) $(PKG_BUILD_DIR)/.libs/libpcre{,posix}.so.* $(1)/usr/lib/
-endef
+
+TARGET_CFLAGS += $(FPIC)
+
+CONFIGURE_ARGS += \
+       --enable-utf8 \
+       --enable-unicode-properties \
+
+ifneq ($(CONFIG_PACKAGE_libpcrecpp),)
+  CONFIGURE_ARGS+= --enable-cpp
+else
+  CONFIGURE_ARGS+= --disable-cpp
+endif
+
+MAKE_FLAGS += \
+       CFLAGS="$(TARGET_CFLAGS)"
 
 define Build/InstallDev
-       mkdir -p $(STAGING_DIR)/usr/bin
-       $(CP) $(PKG_BUILD_DIR)/pcre-config $(STAGING_DIR)/usr/bin/
-       mkdir -p $(STAGING_DIR)/usr/include
-       $(CP) $(PKG_BUILD_DIR)/pcre{,posix}.h $(STAGING_DIR)/usr/include/
-       mkdir -p $(STAGING_DIR)/usr/lib
-       $(CP) $(PKG_BUILD_DIR)/.libs/libpcre{,posix}.so.* $(STAGING_DIR)/usr/lib/
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/pcre-config $(1)/usr/bin/
+
+       $(INSTALL_DIR) $(2)/bin
+       $(LN) $(STAGING_DIR)/usr/bin/pcre-config $(2)/bin
+
+       $(INSTALL_DIR) $(1)/usr/include
+       $(CP) $(PKG_INSTALL_DIR)/usr/include/pcre*.h $(1)/usr/include/
+
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre*.{a,so*} $(1)/usr/lib//
+
+       $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libpcre*.pc $(1)/usr/lib/pkgconfig/
+
+endef
+
+define Package/libpcre/install
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre{,posix}.so.* $(1)/usr/lib/
 endef
 
-define Build/UninstallDev
-       rm -rf \
-               $(STAGING_DIR)/usr/bin/pcre-config \
-               $(STAGING_DIR)/usr/include/pcre{,posix}.h \
-               $(STAGING_DIR)/usr/lib/libpcre{,posix}.{a,so*}
+define Package/libpcrecpp/install
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcrecpp.so.* $(1)/usr/lib/
 endef
 
 $(eval $(call BuildPackage,libpcre))
+$(eval $(call BuildPackage,libpcrecpp))