lede-packages-rs

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

Makefile (7299B)


      1 #
      2 # Copyright (C) 2006-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 
      8 include $(TOPDIR)/rules.mk
      9 
     10 PKG_NAME:=openssh
     11 PKG_VERSION:=7.5p1
     12 PKG_RELEASE:=1
     13 
     14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
     15 PKG_SOURCE_URL:=https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/ \
     16 		https://ftp.spline.de/pub/OpenBSD/OpenSSH/portable/ \
     17 		https://anorien.csc.warwick.ac.uk/pub/OpenBSD/OpenSSH/portable/
     18 PKG_HASH:=9846e3c5fab9f0547400b4d2c017992f914222b3fd1f8eee6c7dc6bc5e59f9f0
     19 
     20 PKG_LICENSE:=BSD ISC
     21 PKG_LICENSE_FILES:=LICENCE
     22 
     23 
     24 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
     25 
     26 PKG_BUILD_DEPENDS:=libopenssl
     27 
     28 include $(INCLUDE_DIR)/package.mk
     29 
     30 define Package/openssh/Default
     31 	SECTION:=net
     32 	CATEGORY:=Network
     33 	DEPENDS:=+libopenssl +zlib
     34 	TITLE:=OpenSSH
     35 	MAINTAINER:=Peter Wagner <tripolar@gmx.at>
     36 	URL:=http://www.openssh.com/
     37 	SUBMENU:=SSH
     38 	VARIANT:=without-pam
     39 endef
     40 
     41 define Package/openssh-moduli
     42 	$(call Package/openssh/Default)
     43 	DEPENDS+= +openssh-keygen
     44 	TITLE+= moduli file
     45 endef
     46 
     47 define Package/openssh-moduli/description
     48 OpenSSH server moduli file.
     49 endef
     50 
     51 define Package/openssh-client
     52 	$(call Package/openssh/Default)
     53 	TITLE+= client
     54 endef
     55 
     56 define Package/openssh-client/description
     57 OpenSSH client.
     58 endef
     59 
     60 define Package/openssh-client/conffiles
     61 /etc/ssh/ssh_config
     62 endef
     63 
     64 define Package/openssh-client-utils
     65 	$(call Package/openssh/Default)
     66 	DEPENDS+= +openssh-client +openssh-keygen
     67 	TITLE+= client utilities
     68 endef
     69 
     70 define Package/openssh-client-utils/description
     71 OpenSSH client utilities.
     72 endef
     73 
     74 define Package/openssh-keygen
     75 	$(call Package/openssh/Default)
     76 	TITLE+= keygen
     77 endef
     78 
     79 define Package/openssh-keygen/description
     80 OpenSSH keygen.
     81 endef
     82 
     83 define Package/openssh-server
     84 	$(call Package/openssh/Default)
     85 	DEPENDS+= +openssh-keygen
     86 	TITLE+= server
     87 	USERID:=sshd=22:sshd=22
     88 endef
     89 
     90 define Package/openssh-server/description
     91 OpenSSH server.
     92 endef
     93 
     94 define Package/openssh-server/conffiles
     95 /etc/ssh/sshd_config
     96 endef
     97 
     98 define Package/openssh-server-pam
     99 	$(call Package/openssh/Default)
    100 	DEPENDS+= +libpthread +openssh-keygen +libpam
    101 	TITLE+= server (with PAM support)
    102 	VARIANT:=with-pam
    103 	USERID:=sshd=22:sshd=22
    104 endef
    105 
    106 define Package/openssh-server-pam/description
    107 OpenSSH server (with PAM support).
    108 endef
    109 
    110 define Package/openssh-server-pam/conffiles
    111 /etc/pam.d/sshd
    112 /etc/security/access-sshd-local.conf
    113 /etc/ssh/sshd_config
    114 endef
    115 
    116 define Package/openssh-sftp-client
    117 	$(call Package/openssh/Default)
    118 	TITLE+= SFTP client
    119 endef
    120 
    121 define Package/openssh-sftp-client/description
    122 OpenSSH SFTP client.
    123 endef
    124 
    125 define Package/openssh-sftp-server
    126 	$(call Package/openssh/Default)
    127 	TITLE+= SFTP server
    128 	# Strip dependencies to avoid pulling in OpenSSL etc.
    129 	DEPENDS:=
    130 endef
    131 
    132 define Package/openssh-sftp-server/description
    133 OpenSSH SFTP server.
    134 endef
    135 
    136 define Package/openssh-sftp-avahi-service
    137 	$(call Package/openssh/Default)
    138 	TITLE+= (SFTP Avahi service)
    139 	DEPENDS:=+openssh-sftp-server +avahi-daemon
    140 endef
    141 
    142 define Package/openssh-sftp-avahi-service/description
    143  This package contains the service definition for announcing
    144  SFTP support via mDNS/DNS-SD.
    145 endef
    146 
    147 define Package/openssh-sftp-avahi-service/conffiles
    148 /etc/avahi/services/sftp-ssh.service
    149 endef
    150 
    151 CONFIGURE_ARGS+= \
    152 	$(DISABLE_NLS) \
    153 	--sysconfdir=/etc/ssh \
    154 	--with-privsep-user=sshd \
    155 	--with-privsep-path=/var/empty \
    156 	--enable-shared \
    157 	--disable-static \
    158 	--disable-debug \
    159 	--disable-strip \
    160 	--disable-etc-default-login \
    161 	--disable-lastlog \
    162 	--disable-utmp \
    163 	--disable-utmpx \
    164 	--disable-wtmp \
    165 	--disable-wtmpx \
    166 	--without-bsd-auth \
    167 	--without-kerberos5 \
    168 	--without-x
    169 
    170 ifeq ($(BUILD_VARIANT),with-pam)
    171 CONFIGURE_ARGS += \
    172 	--with-pam
    173 else
    174 CONFIGURE_ARGS += \
    175 	--without-pam
    176 endif
    177 
    178 ifeq ($(CONFIG_OPENSSL_ENGINE_CRYPTO),y)
    179 CONFIGURE_ARGS+= \
    180 	--with-ssl-engine
    181 endif
    182 
    183 ifneq ($(CONFIG_SSP_SUPPORT),y)
    184 CONFIGURE_ARGS += \
    185 	--without-stackprotect
    186 endif
    187 
    188 CONFIGURE_VARS += LD="$(TARGET_CC)"
    189 
    190 ifeq ($(BUILD_VARIANT),with-pam)
    191 TARGET_LDFLAGS += -lpthread
    192 endif
    193 
    194 define Build/Compile
    195 	$(MAKE) -C $(PKG_BUILD_DIR) \
    196 		DESTDIR="$(PKG_INSTALL_DIR)" \
    197 		LIBS="" \
    198 		sftp-server
    199 	$(MAKE) -C $(PKG_BUILD_DIR) \
    200 		DESTDIR="$(PKG_INSTALL_DIR)" \
    201 		STRIP_OPT="" \
    202 		all install
    203 endef
    204 
    205 define Package/openssh-client/preinst
    206 #!/bin/sh
    207 if [ -L $${IPKG_INSTROOT}/usr/bin/ssh ] && [ -L $${IPKG_INSTROOT}/usr/bin/scp ]; then
    208 	rm -f $${IPKG_INSTROOT}/usr/bin/ssh $${IPKG_INSTROOT}/usr/bin/scp;
    209 fi
    210 exit 0
    211 endef
    212 
    213 define Package/openssh-client/postrm
    214 #!/bin/sh
    215 rm -f $${IPKG_INSTROOT}/usr/bin/ssh $${IPKG_INSTROOT}/usr/bin/scp;
    216 if [ -x $${IPKG_INSTROOT}/usr/sbin/dropbear ] ; then
    217 	ln -s /usr/sbin/dropbear $${IPKG_INSTROOT}/usr/bin/ssh;
    218 	ln -s /usr/sbin/dropbear $${IPKG_INSTROOT}/usr/bin/scp;
    219 fi
    220 exit 0
    221 endef
    222 
    223 define Package/openssh-moduli/install
    224 	$(INSTALL_DIR) $(1)/etc/ssh
    225 	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/etc/ssh/moduli $(1)/etc/ssh/
    226 endef
    227 
    228 define Package/openssh-client/install
    229 	$(INSTALL_DIR) $(1)/etc/ssh
    230 	chmod 0700 $(1)/etc/ssh
    231 	$(CP) $(PKG_INSTALL_DIR)/etc/ssh/ssh_config $(1)/etc/ssh/
    232 	$(INSTALL_DIR) $(1)/usr/bin
    233 	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ssh $(1)/usr/bin/
    234 	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/scp $(1)/usr/bin/
    235 endef
    236 
    237 define Package/openssh-client-utils/install
    238 	$(INSTALL_DIR) $(1)/usr/bin
    239 	$(INSTALL_BIN) $(foreach bin,add agent keyscan keysign,$(PKG_BUILD_DIR)/ssh-$(bin)) $(1)/usr/bin/
    240 endef
    241 
    242 define Package/openssh-keygen/install
    243 	$(INSTALL_DIR) $(1)/usr/bin
    244 	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ssh-keygen $(1)/usr/bin/
    245 endef
    246 
    247 define Package/openssh-server/install
    248 	$(INSTALL_DIR) $(1)/etc/ssh
    249 	chmod 0700 $(1)/etc/ssh
    250 	$(INSTALL_DATA) $(PKG_INSTALL_DIR)/etc/ssh/sshd_config $(1)/etc/ssh/
    251 	$(INSTALL_DIR) $(1)/etc/init.d
    252 	$(INSTALL_BIN) ./files/sshd.init $(1)/etc/init.d/sshd
    253 	$(INSTALL_DIR) $(1)/usr/sbin
    254 	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/sshd $(1)/usr/sbin/
    255 endef
    256 
    257 define Package/openssh-server-pam/install
    258 	$(call Package/openssh-server/install,$(1))
    259 	sed -i 's,#PasswordAuthentication yes,PasswordAuthentication no,g' $(1)/etc/ssh/sshd_config
    260 	sed -i 's,#UsePAM no,UsePAM yes,g' $(1)/etc/ssh/sshd_config
    261 	$(INSTALL_DIR) $(1)/etc/pam.d
    262 	$(INSTALL_DATA) ./files/sshd.pam $(1)/etc/pam.d/sshd
    263 	$(INSTALL_DIR) $(1)/etc/security
    264 	$(INSTALL_DATA) ./files/sshd.pam-access $(1)/etc/security/access-sshd-local.conf
    265 endef
    266 
    267 define Package/openssh-sftp-client/install
    268 	$(INSTALL_DIR) $(1)/usr/bin
    269 	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/sftp $(1)/usr/bin/
    270 endef
    271 
    272 define Package/openssh-sftp-server/install
    273 	$(INSTALL_DIR) $(1)/usr/lib
    274 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/sftp-server $(1)/usr/lib/
    275 	$(INSTALL_DIR) $(1)/usr/libexec
    276 	ln -sf ../lib/sftp-server $(1)/usr/libexec/sftp-server
    277 endef
    278 
    279 define Package/openssh-sftp-avahi-service/install
    280 	$(INSTALL_DIR) $(1)/etc/avahi/services
    281 	$(INSTALL_DATA) ./files/sftp-ssh.service $(1)/etc/avahi/services/
    282 endef
    283 
    284 $(eval $(call BuildPackage,openssh-client))
    285 $(eval $(call BuildPackage,openssh-moduli))
    286 $(eval $(call BuildPackage,openssh-client-utils))
    287 $(eval $(call BuildPackage,openssh-keygen))
    288 $(eval $(call BuildPackage,openssh-server))
    289 $(eval $(call BuildPackage,openssh-server-pam))
    290 $(eval $(call BuildPackage,openssh-sftp-client))
    291 $(eval $(call BuildPackage,openssh-sftp-server))
    292 $(eval $(call BuildPackage,openssh-sftp-avahi-service))