shared_target => "",
shared_cflag => "",
shared_ldflag => "",
+ shared_rcflag => "",
shared_extension => "",
build_scheme => "unixmake",
build_file => "Makefile",
shared_target => "cygwin-shared",
shared_cflag => "-D_WINDLL -DOPENSSL_USE_APPLINK",
shared_ldflag => "-static-libgcc",
+ shared_rcflag => "--target=pe-i386",
shared_extension => ".dll",
},
"mingw64" => {
shared_target => "cygwin-shared",
shared_cflag => "-D_WINDLL",
shared_ldflag => "-static-libgcc",
+ shared_rcflag => "--target=pe-x86-64",
shared_extension => ".dll",
},
"shared_target",
"shared_cflag",
"shared_ldflag",
+ "shared_rcflag",
"shared_extension",
"obj_extension",
"exe_extension",
# $prefix is not /usr.
. ($config{target} =~ m|^BSD-| && $prefix !~ m|^/usr/.*$|
? " -Wl,-rpath,\$\$(LIBRPATH)" : "") -}
+SHARED_RCFLAG={- $target{shared_rcflag} -}
GENERAL= Makefile
BASENAME= openssl
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)' \
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"
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'; \