diff options
author | Richard Levitte <levitte@openssl.org> | 2016-02-05 15:17:33 +0100 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2016-02-11 16:50:01 +0100 |
commit | 64c443e3f0057946ddd8f37a36821a7f9c0e0493 (patch) | |
tree | 1b27d25b016d1625d67e99c144f9d61405ee6a60 | |
parent | 68ab559a50e1819fa441183b81e4523ed1d949e7 (diff) |
Add support for shared_rcflag, useful for windres (Cygwin and Mingw)
Reviewed-by: Rich Salz <rsalz@openssl.org>
-rw-r--r-- | Configurations/00-base-templates.conf | 1 | ||||
-rw-r--r-- | Configurations/10-main.conf | 2 | ||||
-rwxr-xr-x | Configure | 1 | ||||
-rw-r--r-- | Makefile.in | 2 | ||||
-rw-r--r-- | Makefile.shared | 6 |
5 files changed, 11 insertions, 1 deletions
diff --git a/Configurations/00-base-templates.conf b/Configurations/00-base-templates.conf index 1771e3d386..9d405efdae 100644 --- a/Configurations/00-base-templates.conf +++ b/Configurations/00-base-templates.conf @@ -35,6 +35,7 @@ shared_target => "", shared_cflag => "", shared_ldflag => "", + shared_rcflag => "", shared_extension => "", build_scheme => "unixmake", build_file => "Makefile", diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf index c408763f66..07e1d6a208 100644 --- a/Configurations/10-main.conf +++ b/Configurations/10-main.conf @@ -1174,6 +1174,7 @@ shared_target => "cygwin-shared", shared_cflag => "-D_WINDLL -DOPENSSL_USE_APPLINK", shared_ldflag => "-static-libgcc", + shared_rcflag => "--target=pe-i386", shared_extension => ".dll", }, "mingw64" => { @@ -1199,6 +1200,7 @@ shared_target => "cygwin-shared", shared_cflag => "-D_WINDLL", shared_ldflag => "-static-libgcc", + shared_rcflag => "--target=pe-x86-64", shared_extension => ".dll", }, @@ -2180,6 +2180,7 @@ sub print_table_entry "shared_target", "shared_cflag", "shared_ldflag", + "shared_rcflag", "shared_extension", "obj_extension", "exe_extension", diff --git a/Makefile.in b/Makefile.in index a1c3252bc0..b788042663 100644 --- a/Makefile.in +++ b/Makefile.in @@ -205,6 +205,7 @@ SHARED_LDFLAG={- $target{shared_ldflag} # $prefix is not /usr. . ($config{target} =~ m|^BSD-| && $prefix !~ m|^/usr/.*$| ? " -Wl,-rpath,\$\$(LIBRPATH)" : "") -} +SHARED_RCFLAG={- $target{shared_rcflag} -} GENERAL= Makefile BASENAME= openssl @@ -255,6 +256,7 @@ BUILDENV= LC_ALL=C PLATFORM='$(PLATFORM)' PROCESSOR='$(PROCESSOR)'\ LIBDIR='$(LIBDIR)' \ DEPFLAG='$(DEPFLAG)' \ SHARED_LDFLAG='$(SHARED_LDFLAG)' \ + SHARED_RCFLAG='$(SHARED_RCFLAG)' \ ZLIB_INCLUDE='$(ZLIB_INCLUDE)' LIBZLIB='$(LIBZLIB)' \ EXE_EXT='$(EXE_EXT)' SHARED_LIBS='$(SHARED_LIBS)' \ SHLIB_EXT='$(SHLIB_EXT)' SHLIB_TARGET='$(SHLIB_TARGET)' \ diff --git a/Makefile.shared b/Makefile.shared index a474f16916..29e180845a 100644 --- a/Makefile.shared +++ b/Makefile.shared @@ -14,6 +14,10 @@ CFLAGS=$(CFLAG) LDFLAGS=$(LDFLAG) SHARED_LDFLAGS=$(SHARED_LDFLAG) +# SHARED_RCFLAGS are flags used with windres, i.e. when build for Cygwin +# or Mingw. +SHARED_RCFLAGS=$(SHARED_RCFLAG) + NM=nm # LIBNAME contains just the name of the library, without prefix ("lib" @@ -305,7 +309,7 @@ link_a.cygwin: fi; \ dll_name=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX; \ $(PERL) util/mkrc.pl $$dll_name | \ - $(CROSS_COMPILE)windres -o rc.o; \ + $(CROSS_COMPILE)windres $(SHARED_RCFLAGS) -o rc.o; \ extras="$$extras rc.o"; \ ALLSYMSFLAGS='-Wl,--whole-archive'; \ NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \ |