Makefile 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  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. ifeq ($(CONFIG_LIBNETTLE_MINI),y)
  39. CONFIGURE_ARGS += --enable-mini-gmp
  40. endif
  41. ifeq ($(CONFIG_CPU_SUBTYPE),neon)
  42. CONFIGURE_ARGS += \
  43. --enable-arm-neon
  44. endif
  45. ifeq ($(ARCH),armeb)
  46. CONFIGURE_ARGS += \
  47. --disable-assembler
  48. endif
  49. define Build/Compile
  50. $(call Build/Compile/Default, \
  51. DESTDIR="$(PKG_INSTALL_DIR)" \
  52. CC="$(TARGET_CC)" \
  53. libnettle.so libhogweed.so
  54. +$(MAKE) -i $(PKG_JOBS) -C $(PKG_BUILD_DIR) \
  55. DESTDIR="$(PKG_INSTALL_DIR)" \
  56. install)
  57. endef
  58. define Build/InstallDev
  59. $(INSTALL_DIR) $(1)/usr/include/nettle
  60. $(CP) $(PKG_INSTALL_DIR)/usr/include/nettle/*.h $(1)/usr/include/nettle/
  61. $(INSTALL_DIR) $(1)/usr/lib
  62. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnettle.{a,so*} $(1)/usr/lib/
  63. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libhogweed.{a,so*} $(1)/usr/lib/
  64. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  65. $(CP) \
  66. $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/nettle.pc \
  67. $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/hogweed.pc \
  68. $(1)/usr/lib/pkgconfig/
  69. endef
  70. define Package/libnettle/install
  71. $(INSTALL_DIR) $(1)/usr/lib
  72. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libnettle.so.* $(1)/usr/lib/
  73. $(CP) $(PKG_INSTALL_DIR)/usr/lib/libhogweed.so.* $(1)/usr/lib/
  74. endef
  75. $(eval $(call BuildPackage,libnettle))