OpenWrt – Blame information for rev 3
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | # |
2 | # Copyright (C) 2006-2016 OpenWrt.org |
||
3 | # |
||
4 | # This is free software, licensed under the GNU General Public License v2. |
||
5 | # See /LICENSE for more information. |
||
6 | # |
||
7 | |||
8 | include $(TOPDIR)/rules.mk |
||
9 | |||
10 | PKG_NAME:=dropbear |
||
11 | PKG_VERSION:=2017.75 |
||
3 | office | 12 | PKG_RELEASE:=5 |
1 | office | 13 | |
14 | PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 |
||
15 | PKG_SOURCE_URL:= \ |
||
16 | http://matt.ucc.asn.au/dropbear/releases/ \ |
||
17 | https://dropbear.nl/mirror/releases/ |
||
18 | PKG_HASH:=6cbc1dcb1c9709d226dff669e5604172a18cf5dbf9a201474d5618ae4465098c |
||
19 | |||
20 | PKG_LICENSE:=MIT |
||
21 | PKG_LICENSE_FILES:=LICENSE libtomcrypt/LICENSE libtommath/LICENSE |
||
22 | PKG_CPE_ID:=cpe:/a:matt_johnston:dropbear_ssh_server |
||
23 | |||
24 | PKG_BUILD_PARALLEL:=1 |
||
25 | PKG_USE_MIPS16:=0 |
||
26 | |||
27 | PKG_CONFIG_DEPENDS:= \ |
||
28 | CONFIG_TARGET_INIT_PATH CONFIG_DROPBEAR_ECC \ |
||
29 | CONFIG_DROPBEAR_CURVE25519 CONFIG_DROPBEAR_ZLIB \ |
||
30 | CONFIG_DROPBEAR_UTMP CONFIG_DROPBEAR_PUTUTLINE |
||
31 | |||
32 | include $(INCLUDE_DIR)/package.mk |
||
33 | |||
34 | ifneq ($(DUMP),1) |
||
35 | STAMP_CONFIGURED:=$(strip $(STAMP_CONFIGURED))_$(shell echo $(CONFIG_TARGET_INIT_PATH) | mkhash md5) |
||
36 | endif |
||
37 | |||
38 | define Package/dropbear/Default |
||
39 | URL:=http://matt.ucc.asn.au/dropbear/ |
||
40 | endef |
||
41 | |||
42 | define Package/dropbear/config |
||
43 | source "$(SOURCE)/Config.in" |
||
44 | endef |
||
45 | |||
46 | define Package/dropbear |
||
47 | $(call Package/dropbear/Default) |
||
48 | SECTION:=net |
||
49 | CATEGORY:=Base system |
||
50 | TITLE:=Small SSH2 client/server |
||
51 | DEPENDS:= +DROPBEAR_ZLIB:zlib |
||
52 | endef |
||
53 | |||
54 | define Package/dropbear/description |
||
55 | A small SSH2 server/client designed for small memory environments. |
||
56 | endef |
||
57 | |||
58 | define Package/dropbear/conffiles |
||
59 | /etc/dropbear/dropbear_rsa_host_key |
||
3 | office | 60 | /etc/config/dropbear |
1 | office | 61 | endef |
62 | |||
63 | define Package/dropbearconvert |
||
64 | $(call Package/dropbear/Default) |
||
65 | SECTION:=utils |
||
66 | CATEGORY:=Utilities |
||
67 | TITLE:=Utility for converting SSH keys |
||
68 | endef |
||
69 | |||
70 | CONFIGURE_ARGS += \ |
||
71 | --disable-pam \ |
||
72 | --enable-openpty \ |
||
73 | --enable-syslog \ |
||
74 | --disable-lastlog \ |
||
75 | --disable-utmpx \ |
||
76 | $(if $(CONFIG_DROPBEAR_UTMP),,--disable-utmp) \ |
||
77 | --disable-wtmp \ |
||
78 | --disable-wtmpx \ |
||
79 | --disable-loginfunc \ |
||
80 | $(if $(CONFIG_DROPBEAR_PUTUTLINE),,--disable-pututline) \ |
||
81 | --disable-pututxline \ |
||
82 | $(if $(CONFIG_DROPBEAR_ZLIB),,--disable-zlib) \ |
||
83 | --enable-bundled-libtom |
||
84 | |||
3 | office | 85 | TARGET_CFLAGS += -DARGTYPE=3 -ffunction-sections -fdata-sections |
86 | TARGET_LDFLAGS += -Wl,--gc-sections |
||
1 | office | 87 | |
88 | define Build/Configure |
||
89 | $(Build/Configure/Default) |
||
90 | |||
91 | $(SED) 's,^#define DEFAULT_PATH .*$$$$,#define DEFAULT_PATH "$(TARGET_INIT_PATH)",g' \ |
||
92 | $(PKG_BUILD_DIR)/options.h |
||
93 | |||
94 | awk 'BEGIN { rc = 1 } \ |
||
95 | /'DROPBEAR_CURVE25519'/ { $$$$0 = "$(if $(CONFIG_DROPBEAR_CURVE25519),,// )#define 'DROPBEAR_CURVE25519'"; rc = 0 } \ |
||
96 | { print } \ |
||
97 | END { exit(rc) }' $(PKG_BUILD_DIR)/options.h \ |
||
98 | >$(PKG_BUILD_DIR)/options.h.new && \ |
||
99 | mv $(PKG_BUILD_DIR)/options.h.new $(PKG_BUILD_DIR)/options.h |
||
100 | |||
101 | # Enforce that all replacements are made, otherwise options.h has changed |
||
102 | # format and this logic is broken. |
||
103 | for OPTION in DROPBEAR_ECDSA DROPBEAR_ECDH; do \ |
||
104 | awk 'BEGIN { rc = 1 } \ |
||
105 | /'$$$$OPTION'/ { $$$$0 = "$(if $(CONFIG_DROPBEAR_ECC),,// )#define '$$$$OPTION'"; rc = 0 } \ |
||
106 | { print } \ |
||
107 | END { exit(rc) }' $(PKG_BUILD_DIR)/options.h \ |
||
108 | >$(PKG_BUILD_DIR)/options.h.new && \ |
||
109 | mv $(PKG_BUILD_DIR)/options.h.new $(PKG_BUILD_DIR)/options.h || exit 1; \ |
||
110 | done |
||
111 | |||
112 | # remove protocol idented software version number |
||
113 | $(SED) 's,^#define LOCAL_IDENT .*$$$$,#define LOCAL_IDENT "SSH-2.0-dropbear",g' \ |
||
114 | $(PKG_BUILD_DIR)/sysoptions.h |
||
115 | |||
116 | # Enforce rebuild of svr-chansession.c |
||
117 | rm -f $(PKG_BUILD_DIR)/svr-chansession.o |
||
118 | endef |
||
119 | |||
120 | define Build/Compile |
||
121 | +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ |
||
122 | $(TARGET_CONFIGURE_OPTS) \ |
||
123 | PROGRAMS="dropbear dbclient dropbearkey scp" \ |
||
124 | MULTI=1 SCPPROGRESS=1 |
||
125 | +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ |
||
126 | $(TARGET_CONFIGURE_OPTS) \ |
||
127 | PROGRAMS="dropbearconvert" |
||
128 | endef |
||
129 | |||
130 | define Package/dropbear/install |
||
131 | $(INSTALL_DIR) $(1)/usr/sbin |
||
132 | $(INSTALL_BIN) $(PKG_BUILD_DIR)/dropbearmulti $(1)/usr/sbin/dropbear |
||
133 | $(INSTALL_DIR) $(1)/usr/bin |
||
3 | office | 134 | $(LN) ../sbin/dropbear $(1)/usr/bin/scp |
135 | $(LN) ../sbin/dropbear $(1)/usr/bin/ssh |
||
1 | office | 136 | $(LN) ../sbin/dropbear $(1)/usr/bin/dbclient |
137 | $(LN) ../sbin/dropbear $(1)/usr/bin/dropbearkey |
||
138 | $(INSTALL_DIR) $(1)/etc/config |
||
3 | office | 139 | $(INSTALL_DATA) ./files/dropbear.config $(1)/etc/config/dropbear |
1 | office | 140 | $(INSTALL_DIR) $(1)/etc/init.d |
141 | $(INSTALL_BIN) ./files/dropbear.init $(1)/etc/init.d/dropbear |
||
142 | $(INSTALL_DIR) $(1)/usr/lib/opkg/info |
||
143 | $(INSTALL_DIR) $(1)/etc/dropbear |
||
144 | touch $(1)/etc/dropbear/dropbear_rsa_host_key |
||
145 | endef |
||
146 | |||
147 | define Package/dropbearconvert/install |
||
148 | $(INSTALL_DIR) $(1)/usr/bin |
||
149 | $(INSTALL_BIN) $(PKG_BUILD_DIR)/dropbearconvert $(1)/usr/bin/dropbearconvert |
||
150 | endef |
||
151 | |||
152 | $(eval $(call BuildPackage,dropbear)) |
||
153 | $(eval $(call BuildPackage,dropbearconvert)) |