Makefile 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  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 ${TOPDIR}/rules.mk
  4. PKG_NAME:= openssh
  5. PKG_VERSION:= 6.5p1
  6. PKG_RELEASE:= 1
  7. PKG_MD5SUM:= a084e7272b8cbd25afe0f5dce4802fef
  8. PKG_DESCR:= OpenSSH
  9. PKG_SECTION:= net/security
  10. PKG_BUILDDEP:= zlib openssl
  11. PKG_DEPENDS:= zlib libopenssl libpthread libgcc
  12. PKG_URL:= http://www.openssh.com/
  13. PKG_SITES:= ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/
  14. PKG_MULTI:= 1
  15. PKG_SUBPKGS:= OPENSSH OPENSSH_SERVER OPENSSH_CLIENT OPENSSH_CLIENT_UTILS
  16. PKG_SUBPKGS+= OPENSSH_SFTP_CLIENT OPENSSH_SFTP_SERVER
  17. PKGSD_OPENSSH_SERVER:= OpenSSH server
  18. PKGSD_OPENSSH_CLIENT:= OpenSSH client
  19. PKGSD_OPENSSH_CLIENT_UTILS:= OpenSSH client utilities
  20. PKGSD_OPENSSH_SFTP_CLIENT:= OpenSSH sftp client
  21. PKGSD_OPENSSH_SFTP_SERVER:= OpenSSH sftp server
  22. PKG_CHOICES_OPENSSH:= NOKRB WITH_KRB5 WITH_HEIMDAL
  23. PKGCD_NOKRB:= no Kerberos support
  24. PKGCD_WITH_KRB5:= with MIT Kerberos
  25. PKGCS_WITH_KRB5:= libkrb5 libcom-err
  26. PKGCB_WITH_KRB5:= krb5
  27. PKGCD_WITH_HEIMDAL:= with Heimdal Kerberos
  28. PKGCS_WITH_HEIMDAL:= libheimdal libcom-err
  29. PKGCB_WITH_HEIMDAL:= heimdal
  30. include ${TOPDIR}/mk/package.mk
  31. $(eval $(call PKG_template,OPENSSH,openssh,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
  32. $(eval $(call PKG_template,OPENSSH_SERVER,openssh-server,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_SERVER},${PKGSD_OPENSSH_SERVER},${PKG_SECTION}))
  33. $(eval $(call PKG_template,OPENSSH_CLIENT,openssh-client,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_CLIENT},${PKGSD_OPENSSH_CLIENT},${PKG_SECTION}))
  34. $(eval $(call PKG_template,OPENSSH_CLIENT_UTILS,openssh-client-utils,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_CLIENT_UTILS},${PKGSD_OPENSSH_CLIENT_UTILS},${PKG_SECTION}))
  35. $(eval $(call PKG_template,OPENSSH_SFTP_CLIENT,openssh-sftp-client,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_SFTP_CLIENT},${PKGSD_OPENSSH_SFTP_CLIENT},${PKG_SECTION}))
  36. $(eval $(call PKG_template,OPENSSH_SFTP_SERVER,openssh-sftp-server,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_OPENSSH_SFTP_SERVER},${PKGSD_OPENSSH_SFTP_SERVER},${PKG_SECTION}))
  37. ifeq ($(ADK_PACKAGE_OPENSSH_WITH_KRB5),y)
  38. CONFIGURE_ARGS+= --with-kerberos5="${STAGING_TARGET_DIR}/usr"
  39. endif
  40. ifeq ($(ADK_PACKAGE_OPENSSH_WITH_HEIMDAL),y)
  41. CONFIGURE_ARGS+= --with-kerberos5="${STAGING_TARGET_DIR}/usr"
  42. TARGET_LDFLAGS+= -L$(STAGING_TARGET_DIR)/usr/lib/heimdal -Wl,-rpath -Wl,/usr/lib/heimdal
  43. endif
  44. ifeq ($(ADK_TOOLCHAIN_GCC_USE_SSP),y)
  45. CONFIGURE_ARGS+= --with-stackprotect
  46. else
  47. CONFIGURE_ARGS+= --without-stackprotect
  48. endif
  49. CONFIGURE_ENV+= LD='${TARGET_CC}' \
  50. ac_cv_func_setlogin=no \
  51. ac_cv_have_decl_PR_SET_NO_NEW_PRIVS=no \
  52. ac_cv_lib_nsl_yp_match=no
  53. CONFIGURE_ARGS+= --disable-strip \
  54. --disable-etc-default-login \
  55. --disable-lastlog \
  56. --with-sandbox=no \
  57. --disable-utmp \
  58. --disable-utmpx \
  59. --disable-wtmp \
  60. --disable-wtmpx \
  61. --without-bsd-auth \
  62. --without-rpath \
  63. --without-pam \
  64. --without-x \
  65. --without-zlib-version-check \
  66. --sysconfdir=/etc/ssh \
  67. --with-privsep-user=sshd \
  68. --with-privsep-path=/var/run/sshd \
  69. --with-ssl-dir="${STAGING_TARGET_DIR}/usr"
  70. ifeq ($(ADK_STATIC),y)
  71. TARGET_CFLAGS+= -static
  72. TARGET_LDFLAGS+= -static
  73. endif
  74. openssh-install:
  75. ${INSTALL_DIR} ${IDIR_OPENSSH}/etc/ssh
  76. chmod 0700 ${IDIR_OPENSSH}/etc/ssh
  77. openssh-server-install:
  78. ${INSTALL_DIR} ${IDIR_OPENSSH_SERVER}/etc/ssh
  79. ${INSTALL_DIR} ${IDIR_OPENSSH_SERVER}/usr/bin
  80. ${INSTALL_DIR} ${IDIR_OPENSSH_SERVER}/usr/sbin
  81. ${CP} ./files/sshd_config ${IDIR_OPENSSH_SERVER}/etc/ssh
  82. ${INSTALL_BIN} ${WRKINST}/usr/bin/ssh-keygen \
  83. ${IDIR_OPENSSH_SERVER}/usr/bin
  84. ${INSTALL_BIN} ${WRKINST}/usr/sbin/sshd \
  85. ${IDIR_OPENSSH_SERVER}/usr/sbin
  86. # ssh pubkey
  87. test -z $(ADK_RUNTIME_SSH_PUBKEY) || ( \
  88. mkdir -p $(IDIR_OPENSSH_SERVER)/etc/ssh; \
  89. echo $(ADK_RUNTIME_SSH_PUBKEY) \
  90. >$(IDIR_OPENSSH_SERVER)/etc/ssh/authorized_keys; \
  91. )
  92. openssh-client-install:
  93. ${INSTALL_DIR} ${IDIR_OPENSSH_CLIENT}/etc/ssh
  94. ${INSTALL_DIR} ${IDIR_OPENSSH_CLIENT}/usr/bin
  95. ${INSTALL_DATA} ${WRKINST}/etc/ssh/ssh_config \
  96. ${IDIR_OPENSSH_CLIENT}/etc/ssh
  97. ${INSTALL_BIN} ${WRKINST}/usr/bin/{ssh,scp} \
  98. ${IDIR_OPENSSH_CLIENT}/usr/bin
  99. openssh-client-utils-install:
  100. ${INSTALL_DIR} ${IDIR_OPENSSH_CLIENT_UTILS}/usr/bin
  101. ${INSTALL_BIN} ${WRKINST}/usr/bin/ssh-{add,agent,keyscan} \
  102. ${IDIR_OPENSSH_CLIENT_UTILS}/usr/bin
  103. openssh-sftp-client-install:
  104. ${INSTALL_DIR} ${IDIR_OPENSSH_SFTP_CLIENT}/usr/bin
  105. ${INSTALL_BIN} ${WRKINST}/usr/bin/sftp \
  106. ${IDIR_OPENSSH_SFTP_CLIENT}/usr/bin
  107. openssh-sftp-server-install:
  108. ${INSTALL_DIR} ${IDIR_OPENSSH_SFTP_SERVER}/usr/libexec
  109. ${INSTALL_BIN} ${WRKINST}/usr/libexec/sftp-server \
  110. ${IDIR_OPENSSH_SFTP_SERVER}/usr/libexec
  111. include ${TOPDIR}/mk/pkg-bottom.mk