lede-packages-rs

git clone git://archive.git.mtrnord.blog/MTRNord/lede-packages-rs.git
Log | Files | Refs | README | LICENSE

Makefile (5806B)


      1 #
      2 # Copyright (C) 2012-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 
      8 include $(TOPDIR)/rules.mk
      9 
     10 PKG_NAME:=fastd
     11 PKG_VERSION:=18
     12 PKG_RELEASE:=2
     13 
     14 PKG_MAINTAINER:=Matthias Schiffer <mschiffer@universe-factory.net>
     15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
     16 PKG_SOURCE_URL:=https://projects.universe-factory.net/attachments/download/86
     17 PKG_MD5SUM:=e53236d3049f64f7955ad9556da099eb
     18 
     19 PKG_LICENSE:=BSD-2-Clause
     20 PKG_LICENSE_FILES:=COPYRIGHT
     21 
     22 PKG_CONFIG_DEPENDS:=\
     23 	CONFIG_FASTD_ENABLE_METHOD_CIPHER_TEST \
     24 	CONFIG_FASTD_ENABLE_METHOD_COMPOSED_GMAC \
     25 	CONFIG_FASTD_ENABLE_METHOD_COMPOSED_UMAC \
     26 	CONFIG_FASTD_ENABLE_METHOD_GENERIC_GMAC \
     27 	CONFIG_FASTD_ENABLE_METHOD_GENERIC_POLY1305 \
     28 	CONFIG_FASTD_ENABLE_METHOD_GENERIC_UMAC \
     29 	CONFIG_FASTD_ENABLE_METHOD_NULL \
     30 	CONFIG_FASTD_ENABLE_METHOD_XSALSA20_POLY1305 \
     31 	CONFIG_FASTD_ENABLE_CIPHER_AES128_CTR \
     32 	CONFIG_FASTD_ENABLE_CIPHER_NULL \
     33 	CONFIG_FASTD_ENABLE_CIPHER_SALSA20 \
     34 	CONFIG_FASTD_ENABLE_CIPHER_SALSA2012 \
     35 	CONFIG_FASTD_ENABLE_MAC_GHASH \
     36 	CONFIG_FASTD_ENABLE_MAC_UHASH \
     37 	CONFIG_FASTD_WITH_CAPABILITIES \
     38 	CONFIG_FASTD_WITH_CMDLINE_USER \
     39 	CONFIG_FASTD_WITH_CMDLINE_LOGGING \
     40 	CONFIG_FASTD_WITH_CMDLINE_OPERATION \
     41 	CONFIG_FASTD_WITH_CMDLINE_COMMANDS \
     42 	CONFIG_FASTD_WITH_DYNAMIC_PEERS \
     43 	CONFIG_FASTD_WITH_STATUS_SOCKET
     44 
     45 
     46 PKG_BUILD_DEPENDS:=nacl
     47 
     48 include $(INCLUDE_DIR)/package.mk
     49 include $(INCLUDE_DIR)/cmake.mk
     50 
     51 define Package/fastd
     52   SECTION:=net
     53   CATEGORY:=Network
     54   DEPENDS:=+kmod-tun +librt +libpthread +libuecc +FASTD_WITH_STATUS_SOCKET:libjson-c +FASTD_WITH_CAPABILITIES:libcap
     55   TITLE:=Fast and Secure Tunneling Daemon
     56   URL:=https://projects.universe-factory.net/projects/fastd
     57   SUBMENU:=VPN
     58 endef
     59 
     60 define Package/fastd/config
     61   source "$(SOURCE)/Config.in"
     62 endef
     63 
     64 TARGET_CFLAGS += -ffunction-sections -fdata-sections
     65 TARGET_LDFLAGS += -Wl,--gc-sections
     66 
     67 CMAKE_OPTIONS += \
     68 	-DCMAKE_BUILD_TYPE:STRING=MINSIZEREL \
     69 	-DWITH_METHOD_CIPHER_TEST:BOOL=FALSE \
     70 	-DWITH_METHOD_COMPOSED_GMAC:BOOL=FALSE \
     71 	-DWITH_METHOD_COMPOSED_UMAC:BOOL=FALSE \
     72 	-DWITH_METHOD_GENERIC_GMAC:BOOL=FALSE \
     73 	-DWITH_METHOD_GENERIC_POLY1305:BOOL=FALSE \
     74 	-DWITH_METHOD_GENERIC_UMAC:BOOL=FALSE \
     75 	-DWITH_METHOD_NULL:BOOL=FALSE \
     76 	-DWITH_METHOD_XSALSA20_POLY1305:BOOL=FALSE \
     77 	-DWITH_CIPHER_AES128_CTR:BOOL=FALSE \
     78 	-DWITH_CIPHER_NULL:BOOL=FALSE \
     79 	-DWITH_CIPHER_SALSA20:BOOL=FALSE \
     80 	-DWITH_CIPHER_SALSA2012:BOOL=FALSE \
     81 	-DWITH_MAC_GHASH:BOOL=FALSE \
     82 	-DWITH_MAC_UHASH:BOOL=FALSE \
     83 	-DWITH_CAPABILITIES:BOOL=FALSE \
     84 	-DWITH_CMDLINE_USER:BOOL=FALSE \
     85 	-DWITH_CMDLINE_LOGGING:BOOL=FALSE \
     86 	-DWITH_CMDLINE_OPERATION:BOOL=FALSE \
     87 	-DWITH_CMDLINE_COMMANDS:BOOL=FALSE \
     88 	-DWITH_DYNAMIC_PEERS:BOOL=FALSE \
     89 	-DWITH_STATUS_SOCKET:BOOL=FALSE \
     90 	-DENABLE_SYSTEMD:BOOL=FALSE \
     91 	-DENABLE_LIBSODIUM:BOOL=FALSE \
     92 	-DENABLE_LTO:BOOL=TRUE
     93 
     94 
     95 ifeq ($(CONFIG_FASTD_ENABLE_METHOD_CIPHER_TEST),y)
     96 CMAKE_OPTIONS += -DWITH_METHOD_CIPHER_TEST:BOOL=TRUE
     97 endif
     98 
     99 ifeq ($(CONFIG_FASTD_ENABLE_METHOD_COMPOSED_GMAC),y)
    100 CMAKE_OPTIONS += -DWITH_METHOD_COMPOSED_GMAC:BOOL=TRUE
    101 endif
    102 
    103 ifeq ($(CONFIG_FASTD_ENABLE_METHOD_COMPOSED_UMAC),y)
    104 CMAKE_OPTIONS += -DWITH_METHOD_COMPOSED_UMAC:BOOL=TRUE
    105 endif
    106 
    107 ifeq ($(CONFIG_FASTD_ENABLE_METHOD_GENERIC_GMAC),y)
    108 CMAKE_OPTIONS += -DWITH_METHOD_GENERIC_GMAC:BOOL=TRUE
    109 endif
    110 
    111 ifeq ($(CONFIG_FASTD_ENABLE_METHOD_GENERIC_POLY1305),y)
    112 CMAKE_OPTIONS += -DWITH_METHOD_GENERIC_POLY1305:BOOL=TRUE
    113 endif
    114 
    115 ifeq ($(CONFIG_FASTD_ENABLE_METHOD_GENERIC_UMAC),y)
    116 CMAKE_OPTIONS += -DWITH_METHOD_GENERIC_UMAC:BOOL=TRUE
    117 endif
    118 
    119 ifeq ($(CONFIG_FASTD_ENABLE_METHOD_NULL),y)
    120 CMAKE_OPTIONS += -DWITH_METHOD_NULL:BOOL=TRUE
    121 endif
    122 
    123 ifeq ($(CONFIG_FASTD_ENABLE_METHOD_XSALSA20_POLY1305),y)
    124 CMAKE_OPTIONS += -DWITH_METHOD_XSALSA20_POLY1305:BOOL=TRUE
    125 endif
    126 
    127 
    128 ifeq ($(CONFIG_FASTD_ENABLE_CIPHER_AES128_CTR),y)
    129 CMAKE_OPTIONS += -DWITH_CIPHER_AES128_CTR:BOOL=TRUE
    130 endif
    131 
    132 ifeq ($(CONFIG_FASTD_ENABLE_CIPHER_NULL),y)
    133 CMAKE_OPTIONS += -DWITH_CIPHER_NULL:BOOL=TRUE
    134 endif
    135 
    136 ifeq ($(CONFIG_FASTD_ENABLE_CIPHER_SALSA20),y)
    137 CMAKE_OPTIONS += -DWITH_CIPHER_SALSA20:BOOL=TRUE
    138 endif
    139 
    140 ifeq ($(CONFIG_FASTD_ENABLE_CIPHER_SALSA2012),y)
    141 CMAKE_OPTIONS += -DWITH_CIPHER_SALSA2012:BOOL=TRUE
    142 endif
    143 
    144 
    145 ifeq ($(CONFIG_FASTD_ENABLE_MAC_GHASH),y)
    146 CMAKE_OPTIONS += -DWITH_MAC_GHASH:BOOL=TRUE
    147 endif
    148 
    149 ifeq ($(CONFIG_FASTD_ENABLE_MAC_UHASH),y)
    150 CMAKE_OPTIONS += -DWITH_MAC_UHASH:BOOL=TRUE
    151 endif
    152 
    153 
    154 ifeq ($(CONFIG_FASTD_WITH_CAPABILITIES),y)
    155 CMAKE_OPTIONS += -DWITH_CAPABILITIES:BOOL=TRUE
    156 endif
    157 
    158 
    159 ifeq ($(CONFIG_FASTD_WITH_CMDLINE_USER),y)
    160 CMAKE_OPTIONS += -DWITH_CMDLINE_USER:BOOL=TRUE
    161 endif
    162 
    163 ifeq ($(CONFIG_FASTD_WITH_CMDLINE_LOGGING),y)
    164 CMAKE_OPTIONS += -DWITH_CMDLINE_LOGGING:BOOL=TRUE
    165 endif
    166 
    167 ifeq ($(CONFIG_FASTD_WITH_CMDLINE_OPERATION),y)
    168 CMAKE_OPTIONS += -DWITH_CMDLINE_OPERATION:BOOL=TRUE
    169 endif
    170 
    171 ifeq ($(CONFIG_FASTD_WITH_CMDLINE_COMMANDS),y)
    172 CMAKE_OPTIONS += -DWITH_CMDLINE_COMMANDS:BOOL=TRUE
    173 endif
    174 
    175 ifeq ($(CONFIG_FASTD_WITH_DYNAMIC_PEERS),y)
    176 CMAKE_OPTIONS += -DWITH_DYNAMIC_PEERS:BOOL=TRUE
    177 endif
    178 
    179 ifeq ($(CONFIG_FASTD_WITH_STATUS_SOCKET),y)
    180 CMAKE_OPTIONS += -DWITH_STATUS_SOCKET:BOOL=TRUE
    181 endif
    182 
    183 
    184 define Package/fastd/description
    185  Fast and secure tunneling daemon, which is optimized on small code size and few dependencies
    186 endef
    187 
    188 define Package/fastd/conffiles
    189 /etc/config/fastd
    190 endef
    191 
    192 define Package/fastd/install
    193 	$(INSTALL_DIR) $(1)/usr/bin
    194 	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/fastd $(1)/usr/bin/
    195 
    196 	$(INSTALL_DIR) $(1)/etc/init.d/
    197 	$(INSTALL_BIN) $(PKG_BUILD_DIR)/doc/examples/openwrt/fastd.init $(1)/etc/init.d/fastd
    198 	$(INSTALL_DIR) $(1)/etc/config
    199 	$(INSTALL_CONF) $(PKG_BUILD_DIR)/doc/examples/openwrt/fastd.config $(1)/etc/config/fastd
    200 	$(INSTALL_DIR) $(1)/etc/fastd
    201 	$(INSTALL_DIR) $(1)/lib/upgrade/keep.d
    202 	$(INSTALL_DATA) files/fastd.upgrade $(1)/lib/upgrade/keep.d/fastd
    203 endef
    204 
    205 $(eval $(call BuildPackage,fastd))