You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

108 lines
2.7 KiB

  1. #
  2. # Copyright (C) 2006-2015 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=pcre
  9. PKG_VERSION:=8.43
  10. PKG_RELEASE:=2
  11. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
  12. PKG_SOURCE_URL:=@SF/$(PKG_NAME)
  13. PKG_HASH:=91e762520003013834ac1adb4a938d53b22a216341c061b0cf05603b290faf6b
  14. PKG_MAINTAINER:=Thomas Heil <heil@terminal-consulting.de>
  15. PKG_LICENSE:=BSD-3-Clause
  16. PKG_LICENSE_FILES:=LICENCE
  17. PKG_CPE_ID:=cpe:/a:pcre:pcre
  18. PKG_FIXUP:=autoreconf
  19. PKG_INSTALL:=1
  20. PKG_CONFIG_DEPENDS:=\
  21. CONFIG_PACKAGE_libpcrecpp \
  22. CONFIG_PCRE_JIT_ENABLED
  23. include $(INCLUDE_DIR)/uclibc++.mk
  24. include $(INCLUDE_DIR)/package.mk
  25. define Package/libpcre/default
  26. SECTION:=libs
  27. CATEGORY:=Libraries
  28. URL:=https://www.pcre.org/
  29. endef
  30. define Package/libpcre/config
  31. source "$(SOURCE)/Config.in"
  32. endef
  33. define Package/libpcre
  34. $(call Package/libpcre/default)
  35. TITLE:=A Perl Compatible Regular Expression library
  36. endef
  37. define Package/libpcre16
  38. $(call Package/libpcre/default)
  39. TITLE:=A Perl Compatible Regular Expression library (16bit support)
  40. endef
  41. define Package/libpcrecpp
  42. $(call Package/libpcre/default)
  43. TITLE:=C++ wrapper for Perl Compatible Regular Expression library
  44. DEPENDS:=+libpcre $(CXX_DEPENDS)
  45. endef
  46. TARGET_CFLAGS += $(FPIC)
  47. CONFIGURE_ARGS += \
  48. --enable-utf8 \
  49. --enable-unicode-properties \
  50. --enable-pcre16 \
  51. $(if $(CONFIG_PCRE_JIT_ENABLED),--enable-jit,--disable-jit) \
  52. --with-match-limit-recursion=16000 \
  53. $(if $(CONFIG_PACKAGE_libpcrecpp),--enable,--disable)-cpp
  54. MAKE_FLAGS += \
  55. CFLAGS="$(TARGET_CFLAGS)"
  56. define Build/InstallDev
  57. $(INSTALL_DIR) $(1)/usr/bin
  58. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/pcre-config $(1)/usr/bin/
  59. $(INSTALL_DIR) $(2)/bin
  60. $(LN) $(STAGING_DIR)/usr/bin/pcre-config $(2)/bin
  61. $(INSTALL_DIR) $(1)/usr/include
  62. $(CP) $(PKG_INSTALL_DIR)/usr/include/pcre*.h $(1)/usr/include/
  63. $(INSTALL_DIR) $(1)/usr/lib
  64. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre*.{a,so*} $(1)/usr/lib/
  65. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  66. $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libpcre*.pc $(1)/usr/lib/pkgconfig/
  67. endef
  68. define Package/libpcre/install
  69. $(INSTALL_DIR) $(1)/usr/lib
  70. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre{,posix}.so.* $(1)/usr/lib/
  71. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre.so $(1)/usr/lib/
  72. endef
  73. define Package/libpcre16/install
  74. $(INSTALL_DIR) $(1)/usr/lib
  75. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre16.so* $(1)/usr/lib/
  76. endef
  77. define Package/libpcrecpp/install
  78. $(INSTALL_DIR) $(1)/usr/lib
  79. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcrecpp.so.* $(1)/usr/lib/
  80. endef
  81. $(eval $(call BuildPackage,libpcre))
  82. $(eval $(call BuildPackage,libpcre16))
  83. $(eval $(call BuildPackage,libpcrecpp))