2 # Copyright (C) 2006-2014 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
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
21 PKG_LICENSE_FILES
:=LICENCE
24 PKG_BUILD_DIR
:=$(BUILD_DIR
)/$(PKG_NAME
)-$(BUILD_VARIANT
)/$(PKG_NAME
)-$(PKG_VERSION
)
26 PKG_BUILD_DEPENDS
:=libopenssl
28 include $(INCLUDE_DIR
)/package.mk
30 define Package
/openssh
/Default
33 DEPENDS
:=+libopenssl
+zlib
35 MAINTAINER
:=Peter Wagner
<tripolar@gmx.at
>
36 URL
:=http
://www.openssh.com
/
41 define Package
/openssh-moduli
42 $(call Package
/openssh
/Default
)
43 DEPENDS
+= +openssh-keygen
47 define Package
/openssh-moduli
/description
48 OpenSSH server moduli file.
51 define Package
/openssh-client
52 $(call Package
/openssh
/Default
)
56 define Package
/openssh-client
/description
60 define Package
/openssh-client
/conffiles
64 define Package
/openssh-client-utils
65 $(call Package
/openssh
/Default
)
66 DEPENDS
+= +openssh-client
+openssh-keygen
67 TITLE
+= client utilities
70 define Package
/openssh-client-utils
/description
71 OpenSSH client utilities.
74 define Package
/openssh-keygen
75 $(call Package
/openssh
/Default
)
79 define Package
/openssh-keygen
/description
83 define Package
/openssh-server
84 $(call Package
/openssh
/Default
)
85 DEPENDS
+= +openssh-keygen
87 USERID
:=sshd
=22:sshd
=22
90 define Package
/openssh-server
/description
94 define Package
/openssh-server
/conffiles
96 /etc
/ssh
/ssh_host_
*_key
97 /etc
/ssh
/ssh_host_
*_key.pub
100 define Package
/openssh-server-pam
101 $(call Package
/openssh
/Default
)
102 DEPENDS
+= +libpthread
+openssh-keygen
+libpam
103 TITLE
+= server
(with PAM support
)
105 USERID
:=sshd
=22:sshd
=22
108 define Package
/openssh-server-pam
/description
109 OpenSSH server
(with PAM support
).
112 define Package
/openssh-server-pam
/conffiles
114 /etc
/security
/access-sshd-local.conf
118 define Package
/openssh-sftp-client
119 $(call Package
/openssh
/Default
)
123 define Package
/openssh-sftp-client
/description
127 define Package
/openssh-sftp-server
128 $(call Package
/openssh
/Default
)
130 # Strip dependencies to avoid pulling in OpenSSL etc.
134 define Package
/openssh-sftp-server
/description
138 define Package
/openssh-sftp-avahi-service
139 $(call Package
/openssh
/Default
)
140 TITLE
+= (SFTP Avahi service
)
141 DEPENDS
:=+openssh-sftp-server
+avahi-daemon
144 define Package
/openssh-sftp-avahi-service
/description
145 This package contains the service definition for announcing
146 SFTP support via mDNS
/DNS-SD.
149 define Package
/openssh-sftp-avahi-service
/conffiles
150 /etc
/avahi
/services
/sftp-ssh.service
155 --sysconfdir
=/etc
/ssh \
156 --with-privsep-user
=sshd \
157 --with-privsep-path
=/var
/empty \
162 --disable-etc-default-login \
169 --without-kerberos5 \
172 ifeq ($(BUILD_VARIANT
),with-pam
)
180 ifeq ($(CONFIG_OPENSSL_ENGINE_CRYPTO
),y
)
185 ifneq ($(CONFIG_SSP_SUPPORT
),y
)
187 --without-stackprotect
190 CONFIGURE_VARS
+= LD
="$(TARGET_CC)"
192 ifeq ($(BUILD_VARIANT
),with-pam
)
193 TARGET_LDFLAGS
+= -lpthread
197 $(MAKE
) -C
$(PKG_BUILD_DIR
) \
198 DESTDIR
="$(PKG_INSTALL_DIR)" \
201 $(MAKE
) -C
$(PKG_BUILD_DIR
) \
202 DESTDIR
="$(PKG_INSTALL_DIR)" \
207 define Package
/openssh-client
/preinst
209 if
[ -L
$${IPKG_INSTROOT}/usr
/bin
/ssh
] && [ -L
$${IPKG_INSTROOT}/usr
/bin
/scp
]; then
210 rm -f
$${IPKG_INSTROOT}/usr
/bin
/ssh
$${IPKG_INSTROOT}/usr
/bin
/scp
;
215 define Package
/openssh-client
/postrm
217 rm -f
$${IPKG_INSTROOT}/usr
/bin
/ssh
$${IPKG_INSTROOT}/usr
/bin
/scp
;
218 if
[ -x
$${IPKG_INSTROOT}/usr
/sbin
/dropbear
] ; then
219 ln
-s
/usr
/sbin
/dropbear
$${IPKG_INSTROOT}/usr
/bin
/ssh
;
220 ln
-s
/usr
/sbin
/dropbear
$${IPKG_INSTROOT}/usr
/bin
/scp
;
225 define Package
/openssh-moduli
/install
226 $(INSTALL_DIR
) $(1)/etc
/ssh
227 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/etc
/ssh
/moduli
$(1)/etc
/ssh
/
230 define Package
/openssh-client
/install
231 $(INSTALL_DIR
) $(1)/etc
/ssh
232 chmod
0700 $(1)/etc
/ssh
233 $(CP
) $(PKG_INSTALL_DIR
)/etc
/ssh
/ssh_config
$(1)/etc
/ssh
/
234 $(INSTALL_DIR
) $(1)/usr
/bin
235 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/ssh
$(1)/usr
/bin
/
236 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/scp
$(1)/usr
/bin
/
239 define Package
/openssh-client-utils
/install
240 $(INSTALL_DIR
) $(1)/usr
/bin
241 $(INSTALL_BIN
) $(foreach bin
,add agent keyscan keysign
,$(PKG_BUILD_DIR
)/ssh-
$(bin
)) $(1)/usr
/bin
/
244 define Package
/openssh-keygen
/install
245 $(INSTALL_DIR
) $(1)/usr
/bin
246 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/ssh-keygen
$(1)/usr
/bin
/
249 define Package
/openssh-server
/install
250 $(INSTALL_DIR
) $(1)/etc
/ssh
251 chmod
0700 $(1)/etc
/ssh
252 $(INSTALL_DATA
) $(PKG_INSTALL_DIR
)/etc
/ssh
/sshd_config
$(1)/etc
/ssh
/
253 sed
-r
-i
's,^#(HostKey /etc/ssh/ssh_host_(rsa|ecdsa|ed25519)_key)$$$$,\1,' $(1)/etc
/ssh
/sshd_config
254 $(INSTALL_DIR
) $(1)/etc
/init.d
255 $(INSTALL_BIN
) .
/files
/sshd.init
$(1)/etc
/init.d
/sshd
256 $(INSTALL_DIR
) $(1)/usr
/sbin
257 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/sbin
/sshd
$(1)/usr
/sbin
/
260 define Package
/openssh-server-pam
/install
261 $(call Package
/openssh-server
/install,$(1))
262 sed
-i
's,#PasswordAuthentication yes,PasswordAuthentication no,g' $(1)/etc
/ssh
/sshd_config
263 sed
-i
's,#UsePAM no,UsePAM yes,g' $(1)/etc
/ssh
/sshd_config
264 $(INSTALL_DIR
) $(1)/etc
/pam.d
265 $(INSTALL_DATA
) .
/files
/sshd.pam
$(1)/etc
/pam.d
/sshd
266 $(INSTALL_DIR
) $(1)/etc
/security
267 $(INSTALL_DATA
) .
/files
/sshd.pam-access
$(1)/etc
/security
/access-sshd-local.conf
270 define Package
/openssh-sftp-client
/install
271 $(INSTALL_DIR
) $(1)/usr
/bin
272 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/sftp
$(1)/usr
/bin
/
275 define Package
/openssh-sftp-server
/install
276 $(INSTALL_DIR
) $(1)/usr
/lib
277 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/sftp-server
$(1)/usr
/lib
/
278 $(INSTALL_DIR
) $(1)/usr
/libexec
279 ln
-sf ..
/lib
/sftp-server
$(1)/usr
/libexec
/sftp-server
282 define Package
/openssh-sftp-avahi-service
/install
283 $(INSTALL_DIR
) $(1)/etc
/avahi
/services
284 $(INSTALL_DATA
) .
/files
/sftp-ssh.service
$(1)/etc
/avahi
/services
/
287 $(eval
$(call BuildPackage
,openssh-client
))
288 $(eval
$(call BuildPackage
,openssh-moduli
))
289 $(eval
$(call BuildPackage
,openssh-client-utils
))
290 $(eval
$(call BuildPackage
,openssh-keygen
))
291 $(eval
$(call BuildPackage
,openssh-server
))
292 $(eval
$(call BuildPackage
,openssh-server-pam
))
293 $(eval
$(call BuildPackage
,openssh-sftp-client
))
294 $(eval
$(call BuildPackage
,openssh-sftp-server
))
295 $(eval
$(call BuildPackage
,openssh-sftp-avahi-service
))