# # Copyright (C) 2006-2015 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # include $(TOPDIR)/rules.mk PKG_NAME:=pcre PKG_VERSION:=8.44 PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=@SF/$(PKG_NAME) PKG_HASH:=19108658b23b3ec5058edc9f66ac545ea19f9537234be1ec62b714c84399366d PKG_MAINTAINER:=Thomas Heil PKG_LICENSE:=BSD-3-Clause PKG_LICENSE_FILES:=LICENCE PKG_CPE_ID:=cpe:/a:pcre:pcre PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 PKG_CONFIG_DEPENDS:=\ CONFIG_PACKAGE_libpcrecpp \ CONFIG_PCRE_JIT_ENABLED include $(INCLUDE_DIR)/uclibc++.mk include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/host-build.mk define Package/libpcre/default SECTION:=libs CATEGORY:=Libraries URL:=https://www.pcre.org/ endef define Package/libpcre/config source "$(SOURCE)/Config.in" endef define Package/libpcre $(call Package/libpcre/default) TITLE:=A Perl Compatible Regular Expression library endef define Package/libpcre16 $(call Package/libpcre/default) TITLE:=A Perl Compatible Regular Expression library (16bit support) endef define Package/libpcre32 $(call Package/libpcre/default) TITLE:=A Perl Compatible Regular Expression library (32bit support) endef define Package/libpcrecpp $(call Package/libpcre/default) TITLE:=C++ wrapper for Perl Compatible Regular Expression library DEPENDS:=+libpcre $(CXX_DEPENDS) endef HOST_CONFIGURE_ARGS += \ --enable-utf8 \ --enable-unicode-properties \ --enable-pcre16 \ --with-match-limit-recursion=16000 \ --enable-cpp TARGET_CFLAGS += $(FPIC) CONFIGURE_ARGS += \ --enable-utf8 \ --enable-unicode-properties \ --enable-pcre16 \ --enable-pcre32 \ $(if $(CONFIG_PCRE_JIT_ENABLED),--enable-jit,--disable-jit) \ --with-match-limit-recursion=16000 \ $(if $(CONFIG_PACKAGE_libpcrecpp),--enable,--disable)-cpp MAKE_FLAGS += \ CFLAGS="$(TARGET_CFLAGS)" define Build/InstallDev $(INSTALL_DIR) $(1)/usr/bin $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/pcre-config $(1)/usr/bin/ $(SED) 's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' $(1)/usr/bin/pcre-config $(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/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre.so $(1)/usr/lib/ endef define Package/libpcre16/install $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre16.so* $(1)/usr/lib/ endef define Package/libpcre32/install $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre32.so* $(1)/usr/lib/ endef 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,libpcre16)) $(eval $(call BuildPackage,libpcre32)) $(eval $(call BuildPackage,libpcrecpp)) $(eval $(call HostBuild))