]> git.sur5r.net Git - bacula/bacula/blob - bacula/src/win32/patches/openssl.patch
Restore win32 dir from Branch-5.2 and update it
[bacula/bacula] / bacula / src / win32 / patches / openssl.patch
1 Index: Configure
2 --- ../tmp/openssl-0.9.8b/Configure     2006-04-03 02:15:40.000000000 -0700
3 +++ ./Configure 2006-06-27 02:39:02.000000000 -0700
4 @@ -132,7 +132,7 @@
5  # seems to be sufficient?
6  my $BSDthreads="-pthread -D_THREAD_SAFE -D_REENTRANT";
7  
8 -#config-string $cc : $cflags : $unistd : $thread_cflag : $sys_id : $lflags : $bn_ops : $cpuid_obj : $bn_obj : $des_obj : $aes_obj : $bf_obj : $md5_obj : $sha1_obj : $cast_obj : $rc4_obj : $rmd160_obj : $rc5_obj : $dso_scheme : $shared_target : $shared_cflag : $shared_ldflag : $shared_extension : $ranlib : $arflags
9 +#config-string $cc : $cflags : $unistd : $thread_cflag : $sys_id : $lflags : $bn_ops : $cpuid_obj : $bn_obj : $des_obj : $aes_obj : $bf_obj : $md5_obj : $sha1_obj : $cast_obj : $rc4_obj : $rmd160_obj : $rc5_obj : $dso_scheme : $shared_target : $shared_cflag : $shared_ldflag : $shared_extension : $ranlib : $arflags : $ar : $nm
10  
11  my %table=(
12  # File 'TABLE' (created by 'make TABLE') contains the data from this list,
13 @@ -468,6 +468,9 @@
14  # Borland C++ 4.5
15  "BC-32","bcc32::::WIN32::BN_LLONG DES_PTR RC4_INDEX EXPORT_VAR_AS_FN:${no_asm}:win32",
16  
17 +# MinGW32
18 +"mingw32", "mingw32-gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall -D_WIN32_WINNT=0x333:::MINGW32:-lwsock32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin -shared:.dll.a:mingw32-ranlib::mingw32-ar:mingw32-nm",
19 +
20  # MinGW
21  "mingw", "gcc:-mno-cygwin -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall -D_WIN32_WINNT=0x333:::MINGW32:-lwsock32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts} EXPORT_VAR_AS_FN:${x86_coff_asm}:win32:cygwin-shared:-D_WINDLL -DOPENSSL_USE_APPLINK:-mno-cygwin -shared:.dll.a",
22  
23 @@ -558,6 +561,8 @@
24  my $idx_shared_extension = $idx++;
25  my $idx_ranlib = $idx++;
26  my $idx_arflags = $idx++;
27 +my $idx_ar= $idx++;
28 +my $idx_nm= $idx++;
29  
30  my $prefix="";
31  my $openssldir="";
32 @@ -920,7 +925,7 @@
33  
34  $IsMK1MF=1 if ($target eq "mingw" && $^O ne "cygwin");
35  
36 -$exe_ext=".exe" if ($target eq "Cygwin" || $target eq "DJGPP" || $target eq "mingw");
37 +$exe_ext=".exe" if ($target eq "Cygwin" || $target eq "DJGPP" || $target eq "mingw" || $target eq "mingw32");
38  $exe_ext=".pm"  if ($target =~ /vos/);
39  $openssldir="/usr/local/ssl" if ($openssldir eq "" and $prefix eq "");
40  $prefix=$openssldir if $prefix eq "";
41 @@ -964,6 +969,8 @@
42  my $shared_extension = $fields[$idx_shared_extension];
43  my $ranlib = $fields[$idx_ranlib];
44  my $arflags = $fields[$idx_arflags];
45 +my $ar = $fields[$idx_ar];
46 +my $nm = $fields[$idx_nm];
47  
48  my $no_shared_warn=0;
49  my $no_user_cflags=0;
50 @@ -1172,6 +1179,18 @@
51         {
52         $ranlib = $default_ranlib;
53         }
54 +if ($arflags eq "")
55 +       {
56 +       $arflags = "r";
57 +       }
58 +if ($ar eq "")
59 +       {
60 +       $ar = "ar";
61 +       }
62 +if ($nm eq "")
63 +       {
64 +       $nm = "nm";
65 +       }
66  
67  #my ($bn1)=split(/\s+/,$bn_obj);
68  #$bn1 = "" unless defined $bn1;
69 @@ -1307,6 +1326,8 @@
70         s/^PROCESSOR=.*/PROCESSOR= $processor/;
71         s/^RANLIB=.*/RANLIB= $ranlib/;
72         s/^ARFLAGS=.*/ARFLAGS= $arflags/;
73 +       s/^AR=.*/AR= $ar/;
74 +       s/^NM=.*/NM= $nm/;
75         s/^PERL=.*/PERL= $perl/;
76         s/^KRB5_INCLUDES=.*/KRB5_INCLUDES=$withargs{"krb5-include"}/;
77         s/^LIBKRB5=.*/LIBKRB5=$withargs{"krb5-lib"}/;
78 @@ -1358,6 +1379,8 @@
79  print "PROCESSOR     =$processor\n";
80  print "RANLIB        =$ranlib\n";
81  print "ARFLAGS       =$arflags\n";
82 +print "AR            =$ar\n";
83 +print "NM            =$nm\n";
84  print "PERL          =$perl\n";
85  print "KRB5_INCLUDES =",$withargs{"krb5-include"},"\n"
86         if $withargs{"krb5-include"} ne "";
87 @@ -1737,7 +1760,7 @@
88         my $bn_ops,my $cpuid_obj,my $bn_obj,my $des_obj,my $aes_obj, my $bf_obj,
89         my $md5_obj,my $sha1_obj,my $cast_obj,my $rc4_obj,my $rmd160_obj,
90         my $rc5_obj,my $dso_scheme,my $shared_target,my $shared_cflag,
91 -       my $shared_ldflag,my $shared_extension,my $ranlib,my $arflags)=
92 +       my $shared_ldflag,my $shared_extension,my $ranlib,my $arflags, my $ar, my $nm)=
93         split(/\s*:\s*/,$table{$target} . ":" x 30 , -1);
94                         
95         print <<EOF
96 @@ -1768,6 +1791,8 @@
97  \$shared_extension = $shared_extension
98  \$ranlib       = $ranlib
99  \$arflags      = $arflags
100 +\$ar           = $ar
101 +\$nm           = $nm
102  EOF
103         }
104  
105 Index: crypto/comp/Makefile
106 --- ../tmp/openssl-0.9.8b/crypto/comp/Makefile  2006-02-03 17:48:54.000000000 -0800
107 +++ ./crypto/comp/Makefile      2006-06-27 01:45:24.000000000 -0700
108 @@ -5,7 +5,7 @@
109  DIR=   comp
110  TOP=   ../..
111  CC=    cc
112 -INCLUDES= -I.. -I$(TOP) -I../../include
113 +INCLUDES= -I.. -I$(TOP) -I../../include $(ZLIB_INCLUDE)
114  CFLAG=-g
115  MAKEFILE=      Makefile
116  AR=            ar r
117 Index: crypto/Makefile
118 --- ../tmp/openssl-0.9.8b/crypto/Makefile       2006-02-03 17:48:41.000000000 -0800
119 +++ ./crypto/Makefile   2006-06-27 01:53:25.000000000 -0700
120 @@ -7,7 +7,7 @@
121  CC=            cc
122  INCLUDE=       -I. -I$(TOP) -I../include
123  # INCLUDES targets sudbirs!
124 -INCLUDES=      -I.. -I../.. -I../../include
125 +INCLUDES=      -I.. -I../.. -I../../include $(ZLIB_INCLUDE)
126  CFLAG=         -g
127  MAKEDEPPROG=   makedepend
128  MAKEDEPEND=    $(TOP)/util/domd $(TOP) -MD $(MAKEDEPPROG)
129 Index: engines/Makefile
130 --- ../tmp/openssl-0.9.8b/engines/Makefile      2006-02-03 17:49:34.000000000 -0800
131 +++ ./engines/Makefile  2006-06-27 01:21:53.000000000 -0700
132 @@ -91,19 +91,23 @@
133                 set -e; \
134                 for l in $(LIBNAMES); do \
135                         ( echo installing $$l; \
136 -                         if [ "$(PLATFORM)" != "Cygwin" ]; then \
137 -                               case "$(CFLAGS)" in \
138 -                               *DSO_DLFCN*)    sfx="so";;      \
139 -                               *DSO_DL*)       sfx="sl";;      \
140 -                               *)              sfx="bad";;     \
141 -                               esac; \
142 -                               cp lib$$l.$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
143 +                         if [ "$(PLATFORM)" = "mingw32" ]; then \
144 +                               cp $${l}eay32.dll $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/$${l}eay32.dll; \
145                           else \
146 -                               sfx="so"; \
147 -                               cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
148 -                         fi; \
149 -                         chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
150 -                         mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx ); \
151 +                               if [ "$(PLATFORM)" = "Cygwin" ]; then \
152 +                                       sfx="so"; \
153 +                                       cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
154 +                               else \
155 +                                       case "$(CFLAGS)" in \
156 +                                       *DSO_DLFCN*)    sfx="so";;      \
157 +                                       *DSO_DL*)       sfx="sl";;      \
158 +                                       *)              sfx="bad";;     \
159 +                                       esac; \
160 +                                       cp lib$$l.$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
161 +                               fi; \
162 +                               chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new; \
163 +                               mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/lib/engines/lib$$l.$$sfx; \
164 +                       fi ); \
165                 done; \
166         fi
167  
168 Index: Makefile.org
169 --- ../tmp/openssl-0.9.8b/Makefile.org  2006-02-10 00:52:56.000000000 -0800
170 +++ ./Makefile.org      2006-06-27 02:14:13.000000000 -0700
171 @@ -65,6 +65,7 @@
172  EXE_EXT= 
173  ARFLAGS=
174  AR=ar $(ARFLAGS) r
175 +NM=nm
176  RANLIB= ranlib
177  PERL= perl
178  TAR= tar
179 @@ -171,7 +172,9 @@
180  BUILDENV=      PLATFORM='${PLATFORM}' PROCESSOR='${PROCESSOR}' \
181                 CC='${CC}' CFLAG='${CFLAG}'                     \
182                 AS='${CC}' ASFLAG='${CFLAG} -c'                 \
183 -               AR='${AR}' PERL='${PERL}' RANLIB='${RANLIB}'    \
184 +               AR='${AR} ${ARFLAGS}' PERL='${PERL}'            \
185 +               NM='${NM}' RANLIB='${RANLIB}'                   \
186 +               ZLIB_INCLUDE='${ZLIB_INCLUDE}' LIBZLIB='${LIBZLIB}' \
187                 SDIRS='${SDIRS}' LIBRPATH='${INSTALLTOP}/lib'   \
188                 INSTALL_PREFIX='${INSTALL_PREFIX}'              \
189                 INSTALLTOP='${INSTALLTOP}' OPENSSLDIR='${OPENSSLDIR}'   \
190 @@ -290,6 +293,12 @@
191                 if [ "${SHLIBDIRS}" = "ssl" -a -n "$(LIBKRB5)" ]; then \
192                         libs="$(LIBKRB5) $$libs"; \
193                 fi; \
194 +               if [ "${SHLIBDIRS}" = "crypto" -a "$(SHLIB_TARGET)" = "cygwin-shared" ]; then \
195 +                       libs="ms/libeay32.def $$libs"; \
196 +               fi; \
197 +               if [ "${SHLIBDIRS}" = "ssl" -a "$(SHLIB_TARGET)" = "cygwin-shared" ]; then \
198 +                       libs="ms/ssleay32.def $$libs"; \
199 +               fi; \
200                 $(CLEARENV) && $(MAKE) -f Makefile.shared -e $(BUILDENV) \
201                         LIBNAME=$$i LIBVERSION=${SHLIB_MAJOR}.${SHLIB_MINOR} \
202                         LIBCOMPATVERSIONS=";${SHLIB_VERSION_HISTORY}" \
203 @@ -506,18 +515,27 @@
204                 do \
205                         if [ -f "$$i" -o -f "$$i.a" ]; then \
206                         (       echo installing $$i; \
207 -                               if [ "$(PLATFORM)" != "Cygwin" ]; then \
208 +                               if [ "$(PLATFORM)" = "Cygwin" ]; then \
209 +                                       c=`echo $$i | sed 's/^lib\(.*\)\.dll\.a/cyg\1-$(SHLIB_VERSION_NUMBER).dll/'`; \
210 +                                       cp $$c $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c.new; \
211 +                                       chmod 755 $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c.new; \
212 +                                       mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c.new $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c; \
213                                         cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.new; \
214 -                                       chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.new; \
215 +                                       chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.new; \
216                                         mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.new $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i; \
217 -                               else \
218 -                                       c=`echo $$i | sed 's/^lib\(.*\)\.dll\.a/cyg\1-$(SHLIB_VERSION_NUMBER).dll/'`; \
219 +                               elif [ "$(PLATFORM)" = "mingw32" ]; then \
220 +                                       c=`echo $$i | sed 's/^lib\(.*\)\.dll\.a/\1eay32.dll/'`; \
221 +                                       [ "$$i" = "libcrypto.dll.a" ] && c=libeay32.dll; \
222                                         cp $$c $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c.new; \
223                                         chmod 755 $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c.new; \
224                                         mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c.new $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c; \
225                                         cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.new; \
226                                         chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.new; \
227                                         mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.new $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i; \
228 +                               else \
229 +                                       cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.new; \
230 +                                       chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.new; \
231 +                                       mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.new $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i; \
232                                 fi ); \
233                         fi; \
234                 done; \
235 Index: Makefile.shared
236 --- ../tmp/openssl-0.9.8b/Makefile.shared       2005-12-16 12:52:38.000000000 -0800
237 +++ ./Makefile.shared   2006-06-27 01:56:39.000000000 -0700
238 @@ -8,6 +8,7 @@
239  # CC contains the current compiler.  This one MUST be defined
240  CC=cc
241  CFLAGS=$(CFLAG)
242 +NM=nm
243  # LDFLAGS contains flags to be used when temporary object files (when building
244  # shared libraries) are created, or when an application is linked.
245  # SHARED_LDFLAGS contains flags to be used when the shared library is created.
246 @@ -101,7 +102,7 @@
247      LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
248      SHAREDCMD="$${SHAREDCMD:-$(CC)}"; \
249      SHAREDFLAGS="$${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
250 -    nm -Pg $$SHOBJECTS | grep ' [BDT] ' | cut -f1 -d' ' > lib$(LIBNAME).exp; \
251 +    ${NM} -Pg $$SHOBJECTS | grep ' [BDT] ' | cut -f1 -d' ' > lib$(LIBNAME).exp; \
252      LIBPATH=`for x in $$LIBDEPS; do if echo $$x | grep '^ *-L' > /dev/null 2>&1; then echo $$x | sed -e 's/^ *-L//'; fi; done | uniq`; \
253      LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
254      LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
255 @@ -112,7 +113,20 @@
256    ( $(SET_X); rm -f lib$(LIBNAME).exp )
257  
258  SYMLINK_SO=    \
259 -       if [ -n "$$INHIBIT_SYMLINKS" ]; then :; else \
260 +       if [ -n "$$INHIBIT_SYMLINKS" ]; then \
261 +               prev=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX; \
262 +               if [ -n "$$SHLIB_COMPAT" ]; then \
263 +                       for x in $$SHLIB_COMPAT; do \
264 +                               ( $(SET_X); rm -f $$SHLIB$$x$$SHLIB_SUFFIX; \
265 +                                 ln -s $$prev $$SHLIB$$x$$SHLIB_SUFFIX ); \
266 +                               prev=$$SHLIB$$x$$SHLIB_SUFFIX; \
267 +                       done; \
268 +               fi; \
269 +               if [ -n "$$SHLIB_SOVER" ]; then \
270 +                       ( $(SET_X); rm -f $$SHLIB$$SHLIB_SUFFIX; \
271 +                         cp -p $$prev $$SHLIB$$SHLIB_SUFFIX ); \
272 +               fi; \
273 +       else \
274                 prev=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX; \
275                 if [ -n "$$SHLIB_COMPAT" ]; then \
276                         for x in $$SHLIB_COMPAT; do \
277 @@ -249,6 +263,9 @@
278         INHIBIT_SYMLINKS=yes; \
279         SHLIB=cyg$(LIBNAME); \
280         expr $(PLATFORM) : 'mingw' > /dev/null && SHLIB=$(LIBNAME)eay32; \
281 +       if [ "$(PLATFORM)" = "mingw32" -a "$(LIBNAME)" = "crypto" ]; then \
282 +               SHLIB=libeay32; \
283 +       fi; \
284         SHLIB_SUFFIX=.dll; \
285         SHLIB_SOVER=-$(LIBVERSION); \
286         ALLSYMSFLAGS='-Wl,--whole-archive'; \
287 @@ -258,8 +275,8 @@
288         [ -f apps/$$SHLIB$$SHLIB_SUFFIX ] && rm apps/$$SHLIB$$SHLIB_SUFFIX; \
289         [ -f test/$$SHLIB$$SHLIB_SUFFIX ] && rm test/$$SHLIB$$SHLIB_SUFFIX; \
290         $(LINK_SO_A) || exit 1; \
291 -       cp -p $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX apps/; \
292 -       cp -p $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX test/
293 +       cp -p $$SHLIB$$SHLIB_SUFFIX apps/; \
294 +       cp -p $$SHLIB$$SHLIB_SUFFIX test/
295  link_app.cygwin:
296         $(LINK_APP)
297  
298 Index: util/mkdef.pl
299 --- ../tmp/openssl-0.9.8b/util/mkdef.pl 2006-01-02 06:08:22.000000000 -0800
300 +++ ./util/mkdef.pl     2006-07-26 23:21:46.000000000 -0700
301 @@ -1204,7 +1204,7 @@
302  ; Definition file for the DLL version of the $name library from OpenSSL
303  ;
304  
305 -LIBRARY         $libname       $liboptions
306 +LIBRARY         $libname.DLL   $liboptions
307  
308  DESCRIPTION     '$description'
309