summaryrefslogtreecommitdiffstats
path: root/Makefile.shared
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2006-10-23 07:30:19 +0000
committerAndy Polyakov <appro@openssl.org>2006-10-23 07:30:19 +0000
commit08a638237d61382efe507dc27c34289d9605a964 (patch)
tree183dbd5254936c809d074d8c2acce7e67dfd3efe /Makefile.shared
parentd8cdd1567f36105f365714673166000f798c9709 (diff)
Allow for mingw cross-compile configuration.
Diffstat (limited to 'Makefile.shared')
-rw-r--r--Makefile.shared12
1 files changed, 8 insertions, 4 deletions
diff --git a/Makefile.shared b/Makefile.shared
index 92d50e01aa..66b620f971 100644
--- a/Makefile.shared
+++ b/Makefile.shared
@@ -249,7 +249,7 @@ link_o.cygwin:
@ $(CALC_VERSIONS); \
INHIBIT_SYMLINKS=yes; \
SHLIB=cyg$(LIBNAME); \
- expr $(PLATFORM) : 'mingw' > /dev/null && SHLIB=$(LIBNAME)eay32; \
+ expr $(PLATFORM) : 'mingw' > /dev/null && SHLIB=$(LIBNAME); \
SHLIB_SUFFIX=.dll; \
LIBVERSION="$(LIBVERSION)"; \
SHLIB_SOVER=${LIBVERSION:+"-$(LIBVERSION)"}; \
@@ -260,14 +260,18 @@ link_o.cygwin:
link_a.cygwin:
@ $(CALC_VERSIONS); \
INHIBIT_SYMLINKS=yes; \
- SHLIB=cyg$(LIBNAME); \
- expr $(PLATFORM) : 'mingw' > /dev/null && SHLIB=$(LIBNAME)eay32; \
+ SHLIB=cyg$(LIBNAME); def=; \
+ if expr $(PLATFORM) : 'mingw' > /dev/null; then \
+ SHLIB=$(LIBNAME); \
+ def="$(LIBNAME).def"; \
+ $(PERL) util/mkdef.pl 32 $(LIBNAME) > $$def; \
+ fi; \
SHLIB_SUFFIX=.dll; \
SHLIB_SOVER=-$(LIBVERSION); \
ALLSYMSFLAGS='-Wl,--whole-archive'; \
NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \
base=; [ $(LIBNAME) = "crypto" ] && base=-Wl,--image-base,0x63000000; \
- SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared $$base -Wl,-Bsymbolic -Wl,--out-implib,lib$(LIBNAME).dll.a"; \
+ SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared $$base -Wl,-Bsymbolic -Wl,--out-implib,lib$(LIBNAME).dll.a $$def"; \
[ -f apps/$$SHLIB$$SHLIB_SUFFIX ] && rm apps/$$SHLIB$$SHLIB_SUFFIX; \
[ -f test/$$SHLIB$$SHLIB_SUFFIX ] && rm test/$$SHLIB$$SHLIB_SUFFIX; \
$(LINK_SO_A) || exit 1; \