]> code.ossystems Code Review - openembedded-core.git/commitdiff
dropbear: fix CRYPTLIB patch
authorSaul Wold <sgw@linux.intel.com>
Tue, 27 Dec 2011 21:54:23 +0000 (13:54 -0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Tue, 3 Jan 2012 12:10:46 +0000 (12:10 +0000)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
meta/recipes-core/dropbear/dropbear/dropbear-0.53.1-static_build_fix.patch
meta/recipes-core/dropbear/dropbear_2011.54.bb

index 14a87705d0ee6d7113ca8eb5b6ce1cb4dec7d2b8..d1256161c43032bc6882cab51ce0c86cb32c4c9a 100644 (file)
@@ -1,29 +1,58 @@
-Upstream-Status: Inappropriate [Pending]
-Get this patch from  buildroot maillist.
+Upstream-Status: Submitted
 
-dropbear: fix static build
 
-The latest release 0.53.1 change: lcrypt needs to be before object files for static linking
+dropbear: fix static build
 
-the -lcrypt is missing during the link
+A more appropriate fix is to remove @CRYPTLIB@ from the objs
+line, since it will cause problems with target checking,
+this change also meets the goals of the orignal change which
+was to not link libcrypt to all binaries.
 
 svr-authpasswd.o: In function `svr_auth_password':
 svr-authpasswd.c:(.text+0xfc): undefined reference to `crypt'
 collect2: ld returned 1 exit status
 
-Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj at jcrosoft.com>
-Signed-off-by: Mei Lei <lei.mei@intel.com>
+Signed-off-by: Saul Wold <sgw@linux.intel.com>
 
-diff --git a/Makefile.in b/Makefile.in
-index 8d81647..0b9b769 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -77,7 +77,7 @@ STRIP=@STRIP@
- INSTALL=@INSTALL@
- CPPFLAGS=@CPPFLAGS@
- CFLAGS+=-I. -I$(srcdir) $(CPPFLAGS) @CFLAGS@
--LIBS+=@LIBS@
-+LIBS+=@CRYPTLIB@ @LIBS@
- LDFLAGS=@LDFLAGS@
+Index: dropbear-2011.54/Makefile.in
+===================================================================
+--- dropbear-2011.54.orig/Makefile.in  2011-11-08 04:48:15.000000000 -0800
++++ dropbear-2011.54/Makefile.in       2011-12-27 13:44:41.644354442 -0800
+@@ -56,7 +56,7 @@
+               loginrec.h atomicio.h x11fwd.h agentfwd.h tcpfwd.h compat.h \
+               listener.h fake-rfc2553.h
+-dropbearobjs=$(COMMONOBJS) $(CLISVROBJS) $(SVROBJS) @CRYPTLIB@ 
++dropbearobjs=$(COMMONOBJS) $(CLISVROBJS) $(SVROBJS)
+ dbclientobjs=$(COMMONOBJS) $(CLISVROBJS) $(CLIOBJS)
+ dropbearkeyobjs=$(COMMONOBJS) $(KEYOBJS)
+ dropbearconvertobjs=$(COMMONOBJS) $(CONVERTOBJS)
+@@ -158,7 +158,10 @@
+ dropbearkey: $(dropbearkeyobjs)
+ dropbearconvert: $(dropbearconvertobjs)
+-dropbear dbclient dropbearkey dropbearconvert: $(HEADERS) $(LIBTOM_DEPS) Makefile
++dropbear: $(HEADERS) $(LIBTOM_DEPS) Makefile
++      $(CC) $(LDFLAGS) -o $@$(EXEEXT) $($@objs) $(LIBS) @CRYPTLIB@
++
++dbclient dropbearkey dropbearconvert: $(HEADERS) $(LIBTOM_DEPS) Makefile
+       $(CC) $(LDFLAGS) -o $@$(EXEEXT) $($@objs) $(LIBS)
+ # scp doesn't use the libs so is special.
+@@ -169,14 +172,14 @@
+ # multi-binary compilation.
+ MULTIOBJS=
+ ifeq ($(MULTI),1)
+-      MULTIOBJS=dbmulti.o $(sort $(foreach prog, $(PROGRAMS), $($(prog)objs))) @CRYPTLIB@ 
++      MULTIOBJS=dbmulti.o $(sort $(foreach prog, $(PROGRAMS), $($(prog)objs)))
+       CFLAGS+=$(addprefix -DDBMULTI_, $(PROGRAMS)) -DDROPBEAR_MULTI
+ endif
+ dropbearmulti: multilink 
+ multibinary: $(HEADERS) $(MULTIOBJS) $(LIBTOM_DEPS) Makefile
+-      $(CC) $(LDFLAGS) -o dropbearmulti$(EXEEXT) $(MULTIOBJS) $(LIBS)
++      $(CC) $(LDFLAGS) -o dropbearmulti$(EXEEXT) $(MULTIOBJS) $(LIBS) @CRYPTLIB@
+ multilink: multibinary $(addprefix link, $(PROGRAMS))
  
- EXEEXT=@EXEEXT@
index b7b4b83e897bf17291c00fb3ab03ee4a16ea196a..1bd8bda358302748c9c42f9ff21a4090f7878a6c 100644 (file)
@@ -3,4 +3,4 @@ require dropbear.inc
 SRC_URI[md5sum] = "ce1e236c4a8df0cb95253defee6716b5"
 SRC_URI[sha256sum] = "a5fe60fa9c11e7b0f6a21ef6e86a53ce3d55236548901905070ff1c1716fbf47"
 
-PR = "r0"
+PR = "r1"