X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/0840839c159a57ba5de8760ac56d1fd47b982e77..2cb5343fc18be5153b476147c0f3fd142cb36cba:/package/dropbear/Makefile diff --git a/package/dropbear/Makefile b/package/dropbear/Makefile index 50031300b..b76d3dacf 100644 --- a/package/dropbear/Makefile +++ b/package/dropbear/Makefile @@ -1,85 +1,106 @@ -############################################################# -# -# dropbear -# -############################################################# +# $Id$ + include $(TOPDIR)/rules.mk -DROPBEAR_VERSION:=0.45 -DROPBEAR_SOURCE:=dropbear-$(DROPBEAR_VERSION).tar.bz2 -DROPBEAR_SITE:=http://matt.ucc.asn.au/dropbear/releases/ -DROPBEAR_DIR:=$(BUILD_DIR)/dropbear-$(DROPBEAR_VERSION) -DROPBEAR_CAT:=bzcat -DROPBEAR_BINARY:=dropbearmulti -DROPBEAR_TARGET_BINARY:=usr/sbin/dropbear -DROPBEAR_IPK:=dropbear_$(DROPBEAR_VERSION)-1_$(ARCH).ipk -DROPBEAR_IPK_DIR:=$(DROPBEAR_DIR)/ipkg +PKG_NAME:=dropbear +PKG_VERSION:=0.48.1 +PKG_RELEASE:=1 + +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://matt.ucc.asn.au/dropbear/releases/ +PKG_MD5SUM:=ca8e53a766faec831882831364568421 +PKG_CAT:=zcat + +include $(INCLUDE_DIR)/package.mk -$(DL_DIR)/$(DROPBEAR_SOURCE): - $(WGET) -P $(DL_DIR) $(DROPBEAR_SITE)/$(DROPBEAR_SOURCE) +define Package/dropbear +SECTION:=base +CATEGORY:=Base system +DEFAULT:=y +TITLE:=Small SSH 2 client/server +DESCRIPTION:=A small SSH 2 server/client designed for small memory environments. +URL:=http://matt.ucc.asn.au/dropbear/ +endef -$(DROPBEAR_DIR)/.patched: $(DL_DIR)/$(DROPBEAR_SOURCE) - $(DROPBEAR_CAT) $(DL_DIR)/$(DROPBEAR_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - - $(PATCH) $(DROPBEAR_DIR) ./patches \*.patch - $(SED) 's,^/\* #define DROPBEAR_MULTI.*,#define DROPBEAR_MULTI,g' $(DROPBEAR_DIR)/options.h - touch $(DROPBEAR_DIR)/.patched +define Package/dropbearconvert +$(call Package/dropbear) +TITLE:=Utility for converting SSH keys +DEFAULT:=m if ALL +DESCRIPTION:=Utility for converting SSH keys +endef -$(DROPBEAR_DIR)/.configured: $(DROPBEAR_DIR)/.patched - (cd $(DROPBEAR_DIR); rm -rf config.cache; \ - autoconf; \ +define Build/Configure + $(SED) 's,^/\* #define PKG_MULTI.*,#define PKG_MULTI,g' $(PKG_BUILD_DIR)/options.h + $(SED) 's,^#define DO_HOST_LOOKUP,/* & */,g' $(PKG_BUILD_DIR)/options.h + (cd $(PKG_BUILD_DIR); rm -rf config.cache; \ $(TARGET_CONFIGURE_OPTS) \ CFLAGS="$(TARGET_CFLAGS)" \ ./configure \ - --target=$(GNU_TARGET_NAME) \ - --host=$(GNU_TARGET_NAME) \ - --build=$(GNU_HOST_NAME) \ - --prefix=/usr \ - --exec-prefix=/usr \ - --bindir=/usr/bin \ - --sbindir=/usr/sbin \ - --libexecdir=/usr/lib \ - --sysconfdir=/etc \ - --datadir=/usr/share \ - --localstatedir=/var \ - --mandir=/usr/man \ - --infodir=/usr/info \ - $(DISABLE_NLS) \ - --with-shared \ + --target=$(GNU_TARGET_NAME) \ + --host=$(GNU_TARGET_NAME) \ + --build=$(GNU_HOST_NAME) \ + --program-prefix="" \ + --program-suffix="" \ + --prefix=/usr \ + --exec-prefix=/usr \ + --bindir=/usr/bin \ + --datadir=/usr/share \ + --includedir=/usr/include \ + --infodir=/usr/share/info \ + --libdir=/usr/lib \ + --libexecdir=/usr/lib \ + --localstatedir=/var \ + --mandir=/usr/share/man \ + --sbindir=/usr/sbin \ + --sysconfdir=/etc \ + $(DISABLE_LARGEFILE) \ + $(DISABLE_NLS) \ + --with-shared \ + --disable-pam \ + --enable-openpty \ + --enable-syslog \ + --disable-shadow \ + --disable-lastlog \ + --disable-utmp \ + --disable-utmpx \ + --disable-wtmp \ + --disable-wtmpx \ + --disable-loginfunc \ + --disable-pututline \ + --disable-pututxline \ + --disable-zlib \ ); - touch $(DROPBEAR_DIR)/.configured - -$(DROPBEAR_DIR)/$(DROPBEAR_BINARY): $(DROPBEAR_DIR)/.configured - $(MAKE) $(TARGET_CONFIGURE_OPTS) LD=$(TARGET_CC) \ - PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp" \ - MULTI=1 SCPPROGRESS=1 -C $(DROPBEAR_DIR) - -$(PACKAGE_DIR)/$(DROPBEAR_IPK): $(DROPBEAR_DIR)/$(DROPBEAR_BINARY) - $(SCRIPT_DIR)/make-ipkg-dir.sh $(DROPBEAR_IPK_DIR) dropbear.control $(DROPBEAR_VERSION)-1 $(ARCH) - cp dropbear.conffiles $(DROPBEAR_IPK_DIR)/CONTROL/conffiles - mkdir -p $(DROPBEAR_IPK_DIR)/usr/bin - mkdir -p $(DROPBEAR_IPK_DIR)/usr/sbin - install -m 755 $(DROPBEAR_DIR)/$(DROPBEAR_BINARY) \ - $(DROPBEAR_IPK_DIR)/$(DROPBEAR_TARGET_BINARY) - $(STRIP) $(DROPBEAR_IPK_DIR)/usr/sbin/dropbear - ln -sf ../sbin/dropbear $(DROPBEAR_IPK_DIR)/usr/bin/scp - ln -sf ../sbin/dropbear $(DROPBEAR_IPK_DIR)/usr/bin/ssh - ln -sf ../sbin/dropbear $(DROPBEAR_IPK_DIR)/usr/bin/dropbearkey - ln -sf ../sbin/dropbear $(DROPBEAR_IPK_DIR)/usr/bin/dropbearconvert - mkdir -p $(DROPBEAR_IPK_DIR)/etc/init.d - cp ./files/passwd $(DROPBEAR_IPK_DIR)/etc - cp ./files/S50dropbear $(DROPBEAR_IPK_DIR)/etc/init.d/ - chmod a+x $(DROPBEAR_IPK_DIR)/etc/init.d/S50dropbear - $(IPKG_BUILD) $(DROPBEAR_IPK_DIR) $(PACKAGE_DIR) - -$(IPKG_STATE_DIR)/info/dropbear.list: $(PACKAGE_DIR)/$(DROPBEAR_IPK) - $(IPKG) install $(PACKAGE_DIR)/$(DROPBEAR_IPK) +endef -source: $(DL_DIR)/$(DROPBEAR_SOURCE) -prepare: $(DROPBEAR_DIR)/.patched -compile: $(PACKAGE_DIR)/$(DROPBEAR_IPK) -install: $(IPKG_STATE_DIR)/info/dropbear.list +define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) \ + LD=$(TARGET_CC) \ + PROGRAMS="dropbear dbclient dropbearkey scp" \ + MULTI=1 SCPPROGRESS=1 + $(MAKE) -C $(PKG_BUILD_DIR) \ + LD=$(TARGET_CC) \ + PROGRAMS="dropbearconvert" +endef + +define Package/dropbear/install + install -d -m0755 $(1)/usr/sbin + install -m0755 $(PKG_BUILD_DIR)/dropbearmulti \ + $(1)/usr/sbin/dropbear + install -d -m0755 $(1)/usr/bin + ln -sf ../sbin/dropbear $(1)/usr/bin/scp + ln -sf ../sbin/dropbear $(1)/usr/bin/ssh + ln -sf ../sbin/dropbear $(1)/usr/bin/dbclient + ln -sf ../sbin/dropbear $(1)/usr/bin/dropbearkey + install -d -m0755 $(1)/etc/init.d + install -m0755 ./files/dropbear.init $(1)/etc/init.d/S50dropbear +endef -clean: - rm -rf $(DROPBEAR_DIR) - rm -f $(PACKAGE_DIR)/$(DROPBEAR_IPK) +define Package/dropbearconvert/install + install -d -m0755 $(1)/usr/bin + install -m0755 $(PKG_BUILD_DIR)/dropbearconvert \ + $(1)/usr/bin/dropbearconvert +endef +$(eval $(call BuildPackage,dropbear)) +$(eval $(call BuildPackage,dropbearconvert))