Makefile 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. #
  2. # Copyright (C) 2014 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:=nettle
  9. PKG_VERSION:=3.9.1
  10. PKG_RELEASE:=1
  11. PKG_BUILD_FLAGS:=no-mips16
  12. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
  13. PKG_SOURCE_URL:=@GNU/nettle
  14. PKG_HASH:=ccfeff981b0ca71bbd6fbcb054f407c60ffb644389a5be80d6716d5b550c6ce3
  15. PKG_LICENSE:=GPL-2.0-or-later
  16. PKG_LICENSE_FILES:=COPYING
  17. PKG_CPE_ID:=cpe:/a:nettle_project:nettle
  18. PKG_BUILD_PARALLEL:=1
  19. PKG_CONFIG_DEPENDS := CONFIG_LIBNETTLE_MINI
  20. include $(INCLUDE_DIR)/package.mk
  21. define Package/libnettle
  22. SECTION:=libs
  23. CATEGORY:=Libraries
  24. TITLE:=GNU crypto library
  25. URL:=http://www.lysator.liu.se/~nisse/nettle/
  26. DEPENDS+= +!LIBNETTLE_MINI:libgmp
  27. ABI_VERSION:=8
  28. endef
  29. define Package/libnettle/config
  30. source "$(SOURCE)/Config.in"
  31. endef
  32. TARGET_CFLAGS += $(FPIC)
  33. CONFIGURE_ARGS += \
  34. --enable-shared \
  35. --enable-fat \
  36. --disable-openssl \
  37. --disable-documentation \
  38. --enable-static \
  39. $(if $(CONFIG_powerpc64), $(if $(CONFIG_USE_MUSL),--disable-assembler))
  40. ifeq ($(CONFIG_LIBNETTLE_MINI),y)
  41. CONFIGURE_ARGS += --enable-mini-gmp
  42. endif
  43. ifeq ($(CONFIG_CPU_SUBTYPE),neon)
  44. CONFIGURE_ARGS += \
  45. --enable-arm-neon
  46. endif
  47. ifeq ($(ARCH),armeb)
  48. CONFIGURE_ARGS += \
  49. --disable-assembler
  50. endif
  51. define Build/Compile
  52. $(call Build/Compile/Default, \
  53. DESTDIR="$(PKG_INSTALL_DIR)" \
  54. CC="$(TARGET_CC)" \
  55. libnettle.so libhogweed.so
  56. +$(MAKE) -i $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
  57. DESTDIR="$(PKG_INSTALL_DIR)" \
  58. install)
  59. endef
  60. define Build/InstallDev
  61. $(INSTALL_DIR) $(1)/usr/include/nettle
  62. $(CP) $(PKG_INSTALL_DIR)/usr/include/nettle/*.h $(1)/usr/include/nettle/
  63. $(INSTALL_DIR) $(1)/usr/lib
  64. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnettle.{a,so*} $(1)/usr/lib/
  65. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libhogweed.{a,so*} $(1)/usr/lib/
  66. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  67. $(CP) \
  68. $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/nettle.pc \
  69. $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/hogweed.pc \
  70. $(1)/usr/lib/pkgconfig/
  71. endef
  72. define Package/libnettle/install
  73. $(INSTALL_DIR) $(1)/usr/lib
  74. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnettle.so.* $(1)/usr/lib/
  75. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libhogweed.so.* $(1)/usr/lib/
  76. endef
  77. $(eval $(call BuildPackage,libnettle))