Makefile 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. # This file is part of the OpenADK project. OpenADK is copyrighted
  2. # material, please see the LICENCE file in the top-level directory.
  3. include ${ADK_TOPDIR}/rules.mk
  4. PKG_NAME:= openssh
  5. PKG_VERSION:= 9.9p1
  6. PKG_RELEASE:= 1
  7. PKG_HASH:= b343fbcdbff87f15b1986e6e15d6d4fc9a7d36066be6b7fb507087ba8f966c02
  8. PKG_DESCR:= secure shell implementation
  9. PKG_SECTION:= net/security
  10. PKG_BUILDDEP:= zlib
  11. PKG_BUILDDEP_GLIBC:= libxcrypt
  12. PKG_DEPENDS:= zlib
  13. PKG_NEEDS:= threads
  14. PKG_URL:= http://www.openssh.com/
  15. PKG_SITES:= http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/
  16. DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.gz
  17. PKG_SUBPKGS:= OPENSSH OPENSSH_SERVER OPENSSH_CLIENT OPENSSH_CLIENT_UTILS
  18. PKG_SUBPKGS+= OPENSSH_SFTP_CLIENT OPENSSH_SFTP_SERVER
  19. PKGSD_OPENSSH_SERVER:= secure shell server
  20. PKGSN_OPENSSH_SERVER:= openssh
  21. PKGSD_OPENSSH_CLIENT:= secure shell client
  22. PKGSN_OPENSSH_CLIENT:= openssh
  23. PKGSD_OPENSSH_CLIENT_UTILS:= client utilities
  24. PKGSN_OPENSSH_CLIENT_UTILS:= openssh
  25. PKGSD_OPENSSH_SFTP_CLIENT:= sftp client
  26. PKGSN_OPENSSH_SFTP_CLIENT:= openssh
  27. PKGSD_OPENSSH_SFTP_SERVER:= sftp server
  28. PKGSN_OPENSSH_SFTP_SERVER:= openssh
  29. PKG_FLAVOURS_OPENSSH:= WITH_KRB5
  30. PKGFD_WITH_KRB5:= enable kerberos 5 support
  31. PKGFS_WITH_KRB5:= libkrb5 libcom-err
  32. PKGFB_WITH_KRB5:= krb5
  33. PKG_CHOICES_OPENSSH:= WITH_OPENSSL WITH_LIBRESSL
  34. PKGCD_WITH_OPENSSL:= with openssl
  35. PKGCS_WITH_OPENSSL:= libopenssl
  36. PKGCB_WITH_OPENSSL:= openssl
  37. PKGCD_WITH_LIBRESSL:= with libressl
  38. PKGCS_WITH_LIBRESSL:= libressl
  39. PKGCB_WITH_LIBRESSL:= libressl
  40. include ${ADK_TOPDIR}/mk/package.mk
  41. $(eval $(call PKG_template,OPENSSH,openssh,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
  42. $(eval $(call PKG_template,OPENSSH_SERVER,openssh-server,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_SERVER},${PKGSD_OPENSSH_SERVER},${PKG_SECTION}))
  43. $(eval $(call PKG_template,OPENSSH_CLIENT,openssh-client,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_CLIENT},${PKGSD_OPENSSH_CLIENT},${PKG_SECTION}))
  44. $(eval $(call PKG_template,OPENSSH_CLIENT_UTILS,openssh-client-utils,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_CLIENT_UTILS},${PKGSD_OPENSSH_CLIENT_UTILS},${PKG_SECTION}))
  45. $(eval $(call PKG_template,OPENSSH_SFTP_CLIENT,openssh-sftp-client,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_SFTP_CLIENT},${PKGSD_OPENSSH_SFTP_CLIENT},${PKG_SECTION}))
  46. $(eval $(call PKG_template,OPENSSH_SFTP_SERVER,openssh-sftp-server,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_SFTP_SERVER},${PKGSD_OPENSSH_SFTP_SERVER},${PKG_SECTION}))
  47. ifeq ($(ADK_PACKAGE_OPENSSH_WITH_KRB5),y)
  48. CONFIGURE_ARGS+= --with-kerberos5="${STAGING_TARGET_DIR}/usr"
  49. endif
  50. ifeq ($(ADK_TARGET_USE_SSP),y)
  51. CONFIGURE_ARGS+= --with-stackprotect
  52. else
  53. CONFIGURE_ARGS+= --without-stackprotect
  54. endif
  55. ifeq ($(ADK_TARGET_USE_PIE),y)
  56. CONFIGURE_ARGS+= --with-pie
  57. else
  58. CONFIGURE_ARGS+= --without-pie
  59. endif
  60. CONFIGURE_ENV+= LD='${TARGET_CC}' \
  61. LDFLAGS='$(TARGET_LDFLAGS) -latomic' \
  62. ac_cv_func_setlogin=no \
  63. ac_cv_have_decl_PR_SET_NO_NEW_PRIVS=no \
  64. ac_cv_lib_nsl_yp_match=no
  65. CONFIGURE_ARGS+= --disable-strip \
  66. --disable-etc-default-login \
  67. --disable-lastlog \
  68. --without-hardening \
  69. --with-sandbox=no \
  70. --disable-utmp \
  71. --disable-utmpx \
  72. --disable-wtmp \
  73. --disable-wtmpx \
  74. --without-bsd-auth \
  75. --without-rpath \
  76. --without-pam \
  77. --without-zlib-version-check \
  78. --sysconfdir=/etc/ssh \
  79. --with-privsep-user=sshd \
  80. --with-privsep-path=/var/run/sshd \
  81. --with-ssl-dir="${STAGING_TARGET_DIR}/usr"
  82. openssh-install:
  83. ${INSTALL_DIR} ${IDIR_OPENSSH}/etc/ssh
  84. chmod 0700 ${IDIR_OPENSSH}/etc/ssh
  85. openssh-server-install:
  86. ${INSTALL_DIR} ${IDIR_OPENSSH_SERVER}/etc/ssh
  87. ${INSTALL_DIR} ${IDIR_OPENSSH_SERVER}/usr/bin
  88. ${INSTALL_DIR} ${IDIR_OPENSSH_SERVER}/usr/sbin
  89. ${INSTALL_DIR} ${IDIR_OPENSSH_SERVER}/usr/libexec
  90. ${CP} ./files/sshd_config ${IDIR_OPENSSH_SERVER}/etc/ssh
  91. ${INSTALL_BIN} ${WRKINST}/usr/bin/ssh-keygen \
  92. ${IDIR_OPENSSH_SERVER}/usr/bin
  93. ${INSTALL_BIN} ${WRKINST}/usr/sbin/sshd \
  94. ${IDIR_OPENSSH_SERVER}/usr/sbin
  95. ${INSTALL_BIN} ${WRKINST}/usr/libexec/sshd-session \
  96. ${IDIR_OPENSSH_SERVER}/usr/libexec
  97. # ssh pubkey
  98. test -z $(ADK_RUNTIME_SSH_PUBKEY) || ( \
  99. mkdir -p $(IDIR_OPENSSH_SERVER)/etc/ssh; \
  100. echo $(ADK_RUNTIME_SSH_PUBKEY) \
  101. >$(IDIR_OPENSSH_SERVER)/etc/ssh/authorized_keys; \
  102. )
  103. openssh-client-install:
  104. ${INSTALL_DIR} ${IDIR_OPENSSH_CLIENT}/etc/ssh
  105. ${INSTALL_DIR} ${IDIR_OPENSSH_CLIENT}/usr/bin
  106. ${INSTALL_DATA} ${WRKINST}/etc/ssh/ssh_config \
  107. ${IDIR_OPENSSH_CLIENT}/etc/ssh
  108. ${INSTALL_BIN} ${WRKINST}/usr/bin/{ssh,scp} \
  109. ${IDIR_OPENSSH_CLIENT}/usr/bin
  110. openssh-client-utils-install:
  111. ${INSTALL_DIR} ${IDIR_OPENSSH_CLIENT_UTILS}/usr/bin
  112. ${INSTALL_BIN} ${WRKINST}/usr/bin/ssh-{add,agent,keyscan} \
  113. ${IDIR_OPENSSH_CLIENT_UTILS}/usr/bin
  114. openssh-sftp-client-install:
  115. ${INSTALL_DIR} ${IDIR_OPENSSH_SFTP_CLIENT}/usr/bin
  116. ${INSTALL_BIN} ${WRKINST}/usr/bin/sftp \
  117. ${IDIR_OPENSSH_SFTP_CLIENT}/usr/bin
  118. openssh-sftp-server-install:
  119. ${INSTALL_DIR} ${IDIR_OPENSSH_SFTP_SERVER}/usr/libexec
  120. ${INSTALL_BIN} ${WRKINST}/usr/libexec/sftp-server \
  121. ${IDIR_OPENSSH_SFTP_SERVER}/usr/libexec
  122. include ${ADK_TOPDIR}/mk/pkg-bottom.mk