| URL: http://rt.openssl.org/Ticket/Display.html?id=2558 |
| Subject: make windres controllable via build env var settings |
| |
| atm, the windres code in openssl is only usable via the cross-compile prefix |
| option unlike all the other build tools. so add support for the standard $RC |
| / $WINDRES env vars as well. |
| |
| Index: Configure |
| =================================================================== |
| RCS file: /usr/local/src/openssl/CVSROOT/openssl/Configure,v |
| retrieving revision 1.621.2.40 |
| diff -u -p -r1.621.2.40 Configure |
| --- Configure 30 Nov 2010 22:19:26 -0000 1.621.2.40 |
| +++ Configure 4 Jul 2011 23:12:32 -0000 |
| @@ -1094,6 +1094,7 @@ my $shared_extension = $fields[$idx_shar |
| my $ranlib = $ENV{'RANLIB'} || $fields[$idx_ranlib]; |
| my $ar = $ENV{'AR'} || "ar"; |
| my $arflags = $fields[$idx_arflags]; |
| +my $windres = $ENV{'RC'} || $ENV{'WINDRES'} || "windres"; |
| my $multilib = $fields[$idx_multilib]; |
| |
| # if $prefix/lib$multilib is not an existing directory, then |
| @@ -1511,12 +1512,14 @@ while (<IN>) |
| s/^AR=\s*/AR= \$\(CROSS_COMPILE\)/; |
| s/^NM=\s*/NM= \$\(CROSS_COMPILE\)/; |
| s/^RANLIB=\s*/RANLIB= \$\(CROSS_COMPILE\)/; |
| + s/^WINDRES=\s*/WINDRES= \$\(CROSS_COMPILE\)/; |
| s/^MAKEDEPPROG=.*$/MAKEDEPPROG= \$\(CROSS_COMPILE\)$cc/ if $cc eq "gcc"; |
| } |
| else { |
| s/^CC=.*$/CC= $cc/; |
| s/^AR=\s*ar/AR= $ar/; |
| s/^RANLIB=.*/RANLIB= $ranlib/; |
| + s/^WINDRES=.*/WINDRES= $windres/; |
| s/^MAKEDEPPROG=.*$/MAKEDEPPROG= $cc/ if $cc eq "gcc"; |
| } |
| s/^CFLAG=.*$/CFLAG= $cflags/; |
| Index: Makefile.org |
| =================================================================== |
| RCS file: /usr/local/src/openssl/CVSROOT/openssl/Makefile.org,v |
| retrieving revision 1.295.2.10 |
| diff -u -p -r1.295.2.10 Makefile.org |
| --- Makefile.org 27 Jan 2010 16:06:58 -0000 1.295.2.10 |
| +++ Makefile.org 4 Jul 2011 23:13:08 -0000 |
| @@ -66,6 +66,7 @@ EXE_EXT= |
| ARFLAGS= |
| AR=ar $(ARFLAGS) r |
| RANLIB= ranlib |
| +WINDRES= windres |
| NM= nm |
| PERL= perl |
| TAR= tar |
| @@ -180,6 +181,7 @@ BUILDENV= PLATFORM='$(PLATFORM)' PROCESS |
| CC='$(CC)' CFLAG='$(CFLAG)' \ |
| AS='$(CC)' ASFLAG='$(CFLAG) -c' \ |
| AR='$(AR)' NM='$(NM)' RANLIB='$(RANLIB)' \ |
| + WINDRES='$(WINDRES)' \ |
| CROSS_COMPILE='$(CROSS_COMPILE)' \ |
| PERL='$(PERL)' ENGDIRS='$(ENGDIRS)' \ |
| SDIRS='$(SDIRS)' LIBRPATH='$(INSTALLTOP)/$(LIBDIR)' \ |
| Index: Makefile.shared |
| =================================================================== |
| RCS file: /usr/local/src/openssl/CVSROOT/openssl/Makefile.shared,v |
| retrieving revision 1.72.2.4 |
| diff -u -p -r1.72.2.4 Makefile.shared |
| --- Makefile.shared 21 Aug 2010 11:36:49 -0000 1.72.2.4 |
| +++ Makefile.shared 4 Jul 2011 23:13:52 -0000 |
| @@ -293,7 +293,7 @@ link_a.cygwin: |
| fi; \ |
| dll_name=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX; \ |
| $(PERL) util/mkrc.pl $$dll_name | \ |
| - $(CROSS_COMPILE)windres -o rc.o; \ |
| + $(WINDRES) -o rc.o; \ |
| extras="$$extras rc.o"; \ |
| ALLSYMSFLAGS='-Wl,--whole-archive'; \ |
| NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \ |