X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/33748edbf2d3a18dd49f74032faf0f8e5f06d7fd..5be70dfb578c8793084aa8b4526fad08d68a6155:/package/dropbear/Makefile diff --git a/package/dropbear/Makefile b/package/dropbear/Makefile index ef25b3ade..1f4e47d4e 100644 --- a/package/dropbear/Makefile +++ b/package/dropbear/Makefile @@ -1,82 +1,121 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# # $Id$ include $(TOPDIR)/rules.mk -DROPBEAR_VERSION:=0.45 -DROPBEAR_MD5SUM:=2bcc46e4c239aec982bf36a723dd0b0e +PKG_NAME:=dropbear +PKG_VERSION:=0.48.1 +PKG_RELEASE:=1 -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_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://matt.ucc.asn.au/dropbear/releases/ +PKG_MD5SUM:=ca8e53a766faec831882831364568421 +PKG_CAT:=zcat -$(DL_DIR)/$(DROPBEAR_SOURCE): - $(SCRIPT_DIR)/download.pl $(DL_DIR) $(DROPBEAR_SOURCE) $(DROPBEAR_MD5SUM) $(DROPBEAR_SITE) +PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) -$(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 +include $(INCLUDE_DIR)/package.mk -$(DROPBEAR_DIR)/.configured: $(DROPBEAR_DIR)/.patched - (cd $(DROPBEAR_DIR); rm -rf config.cache; \ - autoconf; \ +define Package/dropbear/Default + URL:=http://matt.ucc.asn.au/dropbear/ +endef + +define Package/dropbear + $(call Package/dropbear/Default) + SECTION:=net + CATEGORY:=Base system + TITLE:=Small SSH2 client/server + DESCRIPTION:=\ + A small SSH2 server/client designed for small memory environments. +endef + +define Package/dropbearconvert + $(call Package/dropbear/Default) + SECTION:=utils + CATEGORY:=Utilities + TITLE:=Utility for converting SSH keys +endef + +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) +endef -$(PACKAGE_DIR)/$(DROPBEAR_IPK): $(DROPBEAR_DIR)/$(DROPBEAR_BINARY) - $(SCRIPT_DIR)/make-ipkg-dir.sh $(DROPBEAR_IPK_DIR) dropbear.control $(DROPBEAR_VERSION)-1 $(ARCH) - 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/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) - -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) \ + $(TARGET_CONFIGURE_OPTS) \ + LD="$(TARGET_CC)" \ + PROGRAMS="dropbear dbclient dropbearkey scp" \ + MULTI=1 SCPPROGRESS=1 + $(MAKE) -C $(PKG_BUILD_DIR) \ + $(TARGET_CONFIGURE_OPTS) \ + 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/config + install -m0755 ./files/dropbear.config $(1)/etc/config/dropbear + install -d -m0755 $(1)/etc/init.d + install -m0755 ./files/dropbear.init $(1)/etc/init.d/dropbear +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))