Issue 104856

Summary: libxmlsec: bump internal libxmlsec to a recent version
Product: Build Tools Reporter: caolanm
Component: external prerequisitesAssignee: joachim.lingner
Status: CLOSED FIXED QA Contact: issues@external <issues>
Severity: Trivial    
Priority: P3 CC: caolanm, h.ilter, issues, t_ono
Version: 4.0.0-dev   
Target Milestone: ---   
Hardware: All   
OS: Linux, all   
Issue Type: TASK Latest Confirmation in: ---
Developer Difficulty: ---
Issue Depends on:    
Issue Blocks: 99999    
Attachments:
Description Flags
patch to a patch to demo matching input configure.in changes to the output configure :-) none

Description caolanm 2009-09-07 10:46:59 UTC
bump hacked up libxmlsec to a more recent release
Comment 1 rene 2009-09-18 12:12:29 UTC
*** Issue 105175 has been marked as a duplicate of this issue. ***
Comment 2 caolanm 2009-09-18 12:28:52 UTC
Done in xmlsec_1_2_12. 
Comment 3 caolanm 2009-09-18 12:32:20 UTC
Preliminary reports are that that the efforts in xmlsec_1_2_12 are at least
plausible. I'll hand this task over to you now for sanity testing
Comment 4 h.ilter 2009-09-18 14:21:51 UTC
cc
Comment 5 joachim.lingner 2009-09-23 09:39:10 UTC
I have moved the scp2 and libxmlsec changes to CWS jl135_nss which also contains
the updated nss. 
Comment 6 joachim.lingner 2009-09-23 09:41:46 UTC
@cmc: I am going to delete the cws xmlsec1_2_12 if you do not mind. Thanks for
the patches.
Comment 7 joachim.lingner 2009-09-23 09:55:16 UTC
Target 3.2
Comment 8 joachim.lingner 2009-09-23 16:20:06 UTC
@tono & cmc: configure failed on Mac (buildbot termite and internal machines):

checking for nspr libraries >= 4.0... ./configure: line 26177: test: too many
arguments
no
checking for nss libraries >= 3.2... ./configure: line 26263: test: too many
arguments
no
checking for gnutls libraries >= 0.8.1... no
checking for mscrypto libraries... none
checking for crypto library... configure: error: At least one crypto library
should exist for xmlsec1
dmake:  Error code 1, while making
'./unxmacxi.pro/misc/build/so_configured_so_xmlsec1'

I fixed it by using the line which I found in the configure of the old libxmlsec:

@@ -26062,7 +26174,7 @@
 	done
 
 	for dir in $ac_nss_lib_dir ; do
-    	    if test -f $dir/libnspr4$shrext ; then
+            if test -f $dir/libnspr4.so -o -f $dir/libnspr4.dylib ; then
 		        	if test "z$dir" = "z/usr/lib" ; then
             	    NSPR_LIBS="$NSPR_LIBS_LIST"
     		else
@@ -26148,7 +26260,8 @@
         done
 
         for dir in $ac_nss_lib_dir ; do
-    	    if test -f $dir/libnss3$shrext ; then
+            if test -f $dir/libnss3.so -o -f $dir/libnss3.dylib ; then
+
         	    		if test "z$dir" = "z/usr/lib" ; then
         	    NSS_LIBS="$NSS_LIBS_LIST"
                 else

This change is in libxmlsec/xmlsec1-configure.patch  of cws jl135_nss, r 276405.
$shrext expands to 
$(test .$module = .yes && echo .so || echo .dylib)
and $module is yes. 
This seams to be strange as the extension of the nss libraries is .dylib an not .so.

I am not quite comfortable with all this configure stuff and would be happy if
you could have a quick look. The builds on mac,windows,linux are ok with this
change.

By the way, I adapted the mingw patch, because this change caused the patch to
fail when it was applied.
Comment 9 caolanm 2009-09-23 17:13:55 UTC
The trick with a "configure" is that its generated from the matching
configure.in with "autoconf". Typically a configure is unreadable goo, and
changes dramatically depending on the version of autoconf used to generate it,
so getting the exact old version of autoconf used to make it keeps the diffs
down to readable levels is the best approach. Manual editing of the configure to
get a small diff is alright by me personally as long as the configure.in has the
"real" change in it.

I'll attach here a little example update for the toplevel configure patch to
merge in the mac changes made in configure. The mingw32 bit probably needs a
little love to get its configure.in back in sync with the configure change. 

Maybe the better thing to do is to put the first patch and the mingw32 patch
back the way it before the mac specific changes. And add another maxosx.patch at
the end that applies after the generic configuration patch and after the mingw32
one.
Comment 10 caolanm 2009-09-23 17:16:20 UTC
Created attachment 64923 [details]
patch to a patch to demo matching input configure.in changes to the output configure :-)
Comment 11 joachim.lingner 2009-09-24 12:34:13 UTC
Thanks. I have changed the configure.in as suggested and updated 
xmlsec1-configure.patch, xmlsec1-mingw32.patch.
Comment 12 joachim.lingner 2009-10-02 14:21:16 UTC
@hi: Please verify.
Comment 13 h.ilter 2009-10-08 09:08:59 UTC
This is more an developer issue. 
I can only say that I've not found any regression so far.
Comment 14 joachim.lingner 2009-10-08 09:27:21 UTC
.
Comment 15 joachim.lingner 2009-10-20 15:41:30 UTC
.