Makefile 2.3 KB

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