Makefile 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  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:= dropbear
  5. PKG_VERSION:= 2022.83
  6. PKG_RELEASE:= 1
  7. PKG_HASH:= bc5a121ffbc94b5171ad5ebe01be42746d50aa797c9549a4639894a16749443b
  8. PKG_DESCR:= ssh server/client designed for embedded systems
  9. PKG_SECTION:= net/security
  10. PKG_URL:= http://matt.ucc.asn.au/dropbear/
  11. PKG_SITES:= http://matt.ucc.asn.au/dropbear/releases/
  12. DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.bz2
  13. PKG_SUBPKGS:= DROPBEAR DBCONVERT
  14. PKGSD_DBCONVERT:= utility for converting ssh private keys
  15. PKG_FLAVOURS_DROPBEAR:= WITH_UTMP
  16. PKGFD_WITH_UTMP:= support writing /var/run/utmp
  17. include $(ADK_TOPDIR)/mk/package.mk
  18. $(eval $(call PKG_template,DROPBEAR,dropbear,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
  19. $(eval $(call PKG_template,DBCONVERT,dropbearconvert,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_DBCONVERT},${PKG_SECTION}))
  20. TARGET_CFLAGS+= -fPIC
  21. BUILD_STYLE:= manual
  22. INSTALL_STYLE:= manual
  23. CONFIGURE_ARGS+= --disable-pam \
  24. --enable-openpty \
  25. --enable-syslog \
  26. --enable-shadow \
  27. --disable-lastlog \
  28. --disable-utmpx \
  29. --disable-wtmp \
  30. --disable-wtmpx \
  31. --disable-loginfunc \
  32. --disable-pututxline \
  33. --disable-harden \
  34. --disable-zlib
  35. ifeq (${ADK_PACKAGE_DROPBEAR_WITH_UTMP},)
  36. CONFIGURE_ARGS+= --disable-utmp --disable-pututline
  37. else
  38. CONFIGURE_ENV+= conf_utmp_location=/var/run/utmp
  39. endif
  40. pre-configure:
  41. echo "#define DO_HOST_LOOKUP 0" >>$(WRKBUILD)/localoptions.h
  42. echo "#define DROPBEAR_X11FWD 1" >>$(WRKBUILD)/localoptions.h
  43. do-build:
  44. cd ${WRKBUILD} && env ${MAKE_ENV} ${MAKE} \
  45. PROGRAMS="dropbear dbclient dropbearkey scp" MULTI=1 SCPPROGRESS=1
  46. cd ${WRKBUILD} && env ${MAKE_ENV} ${MAKE} \
  47. PROGRAMS=dropbearconvert
  48. do-install:
  49. # main package
  50. $(INSTALL_DIR) $(IDIR_DROPBEAR)/etc/dropbear
  51. $(INSTALL_DIR) $(IDIR_DROPBEAR)/bin
  52. $(INSTALL_DIR) $(IDIR_DROPBEAR)/usr/bin
  53. $(INSTALL_DIR) $(IDIR_DROPBEAR)/usr/sbin
  54. $(INSTALL_BIN) $(WRKBUILD)/dropbearmulti \
  55. $(IDIR_DROPBEAR)/usr/sbin/dropbear
  56. ln -sf ../usr/sbin/dropbear $(IDIR_DROPBEAR)/bin/scp
  57. ln -sf ../usr/sbin/dropbear $(IDIR_DROPBEAR)/bin/ssh
  58. ln -sf ../sbin/dropbear $(IDIR_DROPBEAR)/usr/bin/dbclient
  59. ln -sf ../sbin/dropbear $(IDIR_DROPBEAR)/usr/bin/dropbearkey
  60. # subpackage dropbearconvert
  61. $(INSTALL_DIR) $(IDIR_DBCONVERT)/usr/bin
  62. $(INSTALL_BIN) $(WRKBUILD)/dropbearconvert \
  63. $(IDIR_DBCONVERT)/usr/bin/dropbearconvert
  64. # ssh pubkey
  65. test -z $(ADK_RUNTIME_SSH_PUBKEY) || ( \
  66. $(INSTALL_DIR) $(IDIR_DROPBEAR)/root; \
  67. echo $(ADK_RUNTIME_SSH_PUBKEY) \
  68. >$(IDIR_DROPBEAR)/root/.authorized_keys; \
  69. )
  70. include ${ADK_TOPDIR}/mk/pkg-bottom.mk