Makefile 2.2 KB

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