Makefile 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  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.45
  10. PKG_RELEASE:=$(AUTORELEASE)
  11. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
  12. PKG_SOURCE_URL:=@SF/$(PKG_NAME)
  13. PKG_HASH:=4dae6fdcd2bb0bb6c37b5f97c33c2be954da743985369cddac3546e3218bffb8
  14. PKG_MAINTAINER:=Thomas Heil <[email protected]>
  15. PKG_LICENSE:=BSD-3-Clause
  16. PKG_LICENSE_FILES:=LICENCE
  17. PKG_CPE_ID:=cpe:/a:pcre:pcre
  18. PKG_INSTALL:=1
  19. PKG_BUILD_PARALLEL:=1
  20. PKG_CONFIG_DEPENDS:=\
  21. CONFIG_PACKAGE_libpcrecpp \
  22. CONFIG_PCRE_JIT_ENABLED
  23. include $(INCLUDE_DIR)/package.mk
  24. include $(INCLUDE_DIR)/host-build.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/libpcre32
  42. $(call Package/libpcre/default)
  43. TITLE:=A Perl Compatible Regular Expression library (32bit support)
  44. endef
  45. define Package/libpcrecpp
  46. $(call Package/libpcre/default)
  47. TITLE:=C++ wrapper for Perl Compatible Regular Expression library
  48. DEPENDS:=+libpcre +libstdcpp
  49. endef
  50. HOST_CONFIGURE_ARGS += \
  51. --enable-utf8 \
  52. --enable-unicode-properties \
  53. --enable-pcre16 \
  54. --with-match-limit-recursion=16000 \
  55. --enable-cpp
  56. TARGET_CFLAGS += $(FPIC)
  57. CONFIGURE_ARGS += \
  58. --enable-utf8 \
  59. --enable-unicode-properties \
  60. --enable-pcre16 \
  61. --enable-pcre32 \
  62. $(if $(CONFIG_PCRE_JIT_ENABLED),--enable-jit,--disable-jit) \
  63. --with-match-limit-recursion=16000 \
  64. --$(if $(CONFIG_PACKAGE_libpcrecpp),en,dis)able-cpp
  65. MAKE_FLAGS += \
  66. CFLAGS="$(TARGET_CFLAGS)"
  67. define Build/InstallDev
  68. $(INSTALL_DIR) $(1)/usr/bin
  69. $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/pcre-config $(1)/usr/bin/
  70. $(SED) 's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' $(1)/usr/bin/pcre-config
  71. $(INSTALL_DIR) $(2)/bin
  72. $(LN) $(STAGING_DIR)/usr/bin/pcre-config $(2)/bin
  73. $(INSTALL_DIR) $(1)/usr/include
  74. $(CP) $(PKG_INSTALL_DIR)/usr/include/pcre*.h $(1)/usr/include/
  75. $(INSTALL_DIR) $(1)/usr/lib
  76. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre*.{a,so*} $(1)/usr/lib/
  77. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  78. $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libpcre*.pc $(1)/usr/lib/pkgconfig/
  79. endef
  80. define Package/libpcre/install
  81. $(INSTALL_DIR) $(1)/usr/lib
  82. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre{,posix}.so.* $(1)/usr/lib/
  83. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre.so $(1)/usr/lib/
  84. endef
  85. define Package/libpcre16/install
  86. $(INSTALL_DIR) $(1)/usr/lib
  87. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre16.so* $(1)/usr/lib/
  88. endef
  89. define Package/libpcre32/install
  90. $(INSTALL_DIR) $(1)/usr/lib
  91. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcre32.so* $(1)/usr/lib/
  92. endef
  93. define Package/libpcrecpp/install
  94. $(INSTALL_DIR) $(1)/usr/lib
  95. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpcrecpp.so.* $(1)/usr/lib/
  96. endef
  97. $(eval $(call BuildPackage,libpcre))
  98. $(eval $(call BuildPackage,libpcre16))
  99. $(eval $(call BuildPackage,libpcre32))
  100. $(eval $(call BuildPackage,libpcrecpp))
  101. $(eval $(call HostBuild))