46b1dd7ad055563558ed01e070850dd41deb7cf1
[openwrt/svn-archive/archive.git] / openwrt / package / dropbear / Makefile
1 # $Id$
2
3 include $(TOPDIR)/rules.mk
4
5 DROPBEAR_VERSION:=0.45
6 DROPBEAR_RELEASE:=2
7 DROPBEAR_MD5SUM:=2bcc46e4c239aec982bf36a723dd0b0e
8
9 DROPBEAR_SOURCE:=dropbear-$(DROPBEAR_VERSION).tar.bz2
10 DROPBEAR_SITE:=http://matt.ucc.asn.au/dropbear/releases/
11 DROPBEAR_DIR:=$(BUILD_DIR)/dropbear-$(DROPBEAR_VERSION)
12 DROPBEAR_CAT:=bzcat
13 DROPBEAR_BINARY:=dropbearmulti
14 DROPBEAR_TARGET_BINARY:=usr/sbin/dropbear
15 DROPBEAR_IPK:=dropbear_$(DROPBEAR_VERSION)-$(DROPBEAR_RELEASE)_$(ARCH).ipk
16 DROPBEAR_IPK_DIR:=$(DROPBEAR_DIR)/ipkg
17
18 $(DL_DIR)/$(DROPBEAR_SOURCE):
19 $(SCRIPT_DIR)/download.pl $(DL_DIR) $(DROPBEAR_SOURCE) $(DROPBEAR_MD5SUM) $(DROPBEAR_SITE)
20
21 $(DROPBEAR_DIR)/.patched: $(DL_DIR)/$(DROPBEAR_SOURCE)
22 $(DROPBEAR_CAT) $(DL_DIR)/$(DROPBEAR_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
23 $(PATCH) $(DROPBEAR_DIR) ./patches \*.patch
24 $(SED) 's,^/\* #define DROPBEAR_MULTI.*,#define DROPBEAR_MULTI,g' $(DROPBEAR_DIR)/options.h
25 touch $(DROPBEAR_DIR)/.patched
26
27 $(DROPBEAR_DIR)/.configured: $(DROPBEAR_DIR)/.patched
28 (cd $(DROPBEAR_DIR); rm -rf config.cache; \
29 autoconf; \
30 $(TARGET_CONFIGURE_OPTS) \
31 CFLAGS="$(TARGET_CFLAGS)" \
32 ./configure \
33 --target=$(GNU_TARGET_NAME) \
34 --host=$(GNU_TARGET_NAME) \
35 --build=$(GNU_HOST_NAME) \
36 --prefix=/usr \
37 --exec-prefix=/usr \
38 --bindir=/usr/bin \
39 --sbindir=/usr/sbin \
40 --libexecdir=/usr/lib \
41 --sysconfdir=/etc \
42 --datadir=/usr/share \
43 --localstatedir=/var \
44 --mandir=/usr/man \
45 --infodir=/usr/info \
46 $(DISABLE_NLS) \
47 --with-shared \
48 --disable-pam \
49 --enable-openpty \
50 --enable-syslog \
51 --disable-shadow \
52 --disable-lastlog \
53 --disable-utmp \
54 --disable-utmpx \
55 --disable-wtmp \
56 --disable-wtmpx \
57 --disable-loginfunc \
58 --disable-pututline \
59 --disable-pututxline \
60 );
61 touch $(DROPBEAR_DIR)/.configured
62
63 $(DROPBEAR_DIR)/$(DROPBEAR_BINARY): $(DROPBEAR_DIR)/.configured
64 $(MAKE) $(TARGET_CONFIGURE_OPTS) LD=$(TARGET_CC) \
65 PROGRAMS="dropbear dbclient dropbearkey dropbearconvert scp" \
66 MULTI=1 SCPPROGRESS=1 -C $(DROPBEAR_DIR)
67
68 $(PACKAGE_DIR)/$(DROPBEAR_IPK): $(DROPBEAR_DIR)/$(DROPBEAR_BINARY)
69 $(SCRIPT_DIR)/make-ipkg-dir.sh $(DROPBEAR_IPK_DIR) dropbear.control $(DROPBEAR_VERSION)-$(DROPBEAR_RELEASE) $(ARCH)
70 mkdir -p $(DROPBEAR_IPK_DIR)/usr/bin
71 mkdir -p $(DROPBEAR_IPK_DIR)/usr/sbin
72 install -m 755 $(DROPBEAR_DIR)/$(DROPBEAR_BINARY) \
73 $(DROPBEAR_IPK_DIR)/$(DROPBEAR_TARGET_BINARY)
74 $(STRIP) $(DROPBEAR_IPK_DIR)/usr/sbin/dropbear
75 ln -sf ../sbin/dropbear $(DROPBEAR_IPK_DIR)/usr/bin/scp
76 ln -sf ../sbin/dropbear $(DROPBEAR_IPK_DIR)/usr/bin/ssh
77 ln -sf ../sbin/dropbear $(DROPBEAR_IPK_DIR)/usr/bin/dbclient
78 ln -sf ../sbin/dropbear $(DROPBEAR_IPK_DIR)/usr/bin/dropbearkey
79 ln -sf ../sbin/dropbear $(DROPBEAR_IPK_DIR)/usr/bin/dropbearconvert
80 mkdir -p $(DROPBEAR_IPK_DIR)/etc/init.d
81 install -m 755 ./files/S50dropbear $(DROPBEAR_IPK_DIR)/etc/init.d/
82 $(IPKG_BUILD) $(DROPBEAR_IPK_DIR) $(PACKAGE_DIR)
83
84 $(IPKG_STATE_DIR)/info/dropbear.list: $(PACKAGE_DIR)/$(DROPBEAR_IPK)
85 $(IPKG) install $(PACKAGE_DIR)/$(DROPBEAR_IPK)
86
87 source: $(DL_DIR)/$(DROPBEAR_SOURCE)
88 prepare: $(DROPBEAR_DIR)/.patched
89 compile: $(PACKAGE_DIR)/$(DROPBEAR_IPK)
90 install: $(IPKG_STATE_DIR)/info/dropbear.list
91
92 clean:
93 rm -rf $(DROPBEAR_DIR)
94 rm -f $(PACKAGE_DIR)/$(DROPBEAR_IPK)
95