Proper support for shared build under MacOS X.
This commit is contained in:
parent
9d35d08ab6
commit
d6c764573c
10
Configure
10
Configure
@ -510,8 +510,8 @@ my %table=(
|
|||||||
|
|
||||||
##### MacOS X (a.k.a. Rhapsody or Darwin) setup
|
##### MacOS X (a.k.a. Rhapsody or Darwin) setup
|
||||||
"rhapsody-ppc-cc","cc:-O3 -DB_ENDIAN::(unknown):MACOSX_RHAPSODY::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}::",
|
"rhapsody-ppc-cc","cc:-O3 -DB_ENDIAN::(unknown):MACOSX_RHAPSODY::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}::",
|
||||||
"darwin-ppc-cc","cc:-O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:ppccpuid_osx32.o:osx_ppc32.o osx_ppc32-mont.o:::::sha1-ppc_osx32.o sha256-ppc_osx32.o::::::dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
"darwin-ppc-cc","cc:-O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:ppccpuid_osx32.o:osx_ppc32.o osx_ppc32-mont.o:::::sha1-ppc_osx32.o sha256-ppc_osx32.o::::::dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||||
"darwin64-ppc-cc","cc:-m64 -O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:ppccpuid_osx64.o:osx_ppc64.o osx_ppc64-mont.o:::::sha1-ppc_osx64.o sha256-ppc_osx64.o sha512-ppc_osx64.o::::::dlfcn:darwin-shared:-fPIC -fno-common:-m64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
"darwin64-ppc-cc","cc:-m64 -O3 -DB_ENDIAN::-D_REENTRANT:MACOSX:-Wl,-search_paths_first%:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:ppccpuid_osx64.o:osx_ppc64.o osx_ppc64-mont.o:::::sha1-ppc_osx64.o sha256-ppc_osx64.o sha512-ppc_osx64.o::::::dlfcn:darwin-shared:-fPIC -fno-common:-m64 -dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||||
"darwin-i386-cc","cc:-O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
"darwin-i386-cc","cc:-O3 -fomit-frame-pointer -DL_ENDIAN::-D_REENTRANT:MACOSX::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${no_asm}:dlfcn:darwin-shared:-fPIC -fno-common:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||||
"debug-darwin-ppc-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG -DB_ENDIAN -g -Wall -O::-D_REENTRANT:MACOSX::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::osx_ppc32.o osx_ppc32-mont.o:::::sha1-ppc_osx32.o::::::dlfcn:darwin-shared:-fPIC:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
"debug-darwin-ppc-cc","cc:-DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG -DB_ENDIAN -g -Wall -O::-D_REENTRANT:MACOSX::BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::osx_ppc32.o osx_ppc32-mont.o:::::sha1-ppc_osx32.o::::::dlfcn:darwin-shared:-fPIC:-dynamiclib:.\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib",
|
||||||
|
|
||||||
@ -987,6 +987,11 @@ my $shared_extension = $fields[$idx_shared_extension];
|
|||||||
my $ranlib = $fields[$idx_ranlib];
|
my $ranlib = $fields[$idx_ranlib];
|
||||||
my $arflags = $fields[$idx_arflags];
|
my $arflags = $fields[$idx_arflags];
|
||||||
|
|
||||||
|
# '%' in $lflags is used to split flags to "pre-" and post-flags
|
||||||
|
my ($prelflags,$postlflags)=split('%',$lflags);
|
||||||
|
if (defined($postlflags)) { $lflags=$postlflags; }
|
||||||
|
else { $lflags=$prelflags; undef $prelflags; }
|
||||||
|
|
||||||
my $no_shared_warn=0;
|
my $no_shared_warn=0;
|
||||||
my $no_user_cflags=0;
|
my $no_user_cflags=0;
|
||||||
|
|
||||||
@ -1334,6 +1339,7 @@ while (<IN>)
|
|||||||
s/^MAKEDEPPROG=.*$/MAKEDEPPROG= $cc/ if $cc eq "gcc";
|
s/^MAKEDEPPROG=.*$/MAKEDEPPROG= $cc/ if $cc eq "gcc";
|
||||||
s/^CFLAG=.*$/CFLAG= $cflags/;
|
s/^CFLAG=.*$/CFLAG= $cflags/;
|
||||||
s/^DEPFLAG=.*$/DEPFLAG= $depflags/;
|
s/^DEPFLAG=.*$/DEPFLAG= $depflags/;
|
||||||
|
s/^PEX_LIBS=.*$/PEX_LIBS= $prelflags/;
|
||||||
s/^EX_LIBS=.*$/EX_LIBS= $lflags/;
|
s/^EX_LIBS=.*$/EX_LIBS= $lflags/;
|
||||||
s/^EXE_EXT=.*$/EXE_EXT= $exe_ext/;
|
s/^EXE_EXT=.*$/EXE_EXT= $exe_ext/;
|
||||||
s/^CPUID_OBJ=.*$/CPUID_OBJ= $cpuid_obj/;
|
s/^CPUID_OBJ=.*$/CPUID_OBJ= $cpuid_obj/;
|
||||||
|
@ -103,15 +103,13 @@ LINK_SO= \
|
|||||||
LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
|
LIBDEPS="$${LIBDEPS:-$(LIBDEPS)}"; \
|
||||||
SHAREDCMD="$${SHAREDCMD:-$(CC)}"; \
|
SHAREDCMD="$${SHAREDCMD:-$(CC)}"; \
|
||||||
SHAREDFLAGS="$${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
|
SHAREDFLAGS="$${SHAREDFLAGS:-$(CFLAGS) $(SHARED_LDFLAGS)}"; \
|
||||||
$(NM) -Pg $$SHOBJECTS | grep ' [BDT] ' | cut -f1 -d' ' > lib$(LIBNAME).exp; \
|
|
||||||
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`; \
|
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`; \
|
||||||
LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
|
LIBPATH=`echo $$LIBPATH | sed -e 's/ /:/g'`; \
|
||||||
LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
|
LD_LIBRARY_PATH=$$LIBPATH:$$LD_LIBRARY_PATH \
|
||||||
$${SHAREDCMD} $${SHAREDFLAGS} \
|
$${SHAREDCMD} $${SHAREDFLAGS} \
|
||||||
-o $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX \
|
-o $$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX \
|
||||||
$$ALLSYMSFLAGS $$SHOBJECTS $$NOALLSYMSFLAGS $$LIBDEPS \
|
$$ALLSYMSFLAGS $$SHOBJECTS $$NOALLSYMSFLAGS $$LIBDEPS \
|
||||||
) && $(SYMLINK_SO); \
|
) && $(SYMLINK_SO)
|
||||||
( $(SET_X); rm -f lib$(LIBNAME).exp )
|
|
||||||
|
|
||||||
SYMLINK_SO= \
|
SYMLINK_SO= \
|
||||||
if [ -n "$$INHIBIT_SYMLINKS" ]; then :; else \
|
if [ -n "$$INHIBIT_SYMLINKS" ]; then :; else \
|
||||||
|
32
TABLE
32
TABLE
@ -1070,7 +1070,7 @@ $cflags = -O3 -DB_ENDIAN
|
|||||||
$unistd =
|
$unistd =
|
||||||
$thread_cflag = -D_REENTRANT
|
$thread_cflag = -D_REENTRANT
|
||||||
$sys_id = MACOSX
|
$sys_id = MACOSX
|
||||||
$lflags = -Wl,-search_paths_first
|
$lflags = -Wl,-search_paths_first%
|
||||||
$bn_ops = BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR
|
$bn_ops = BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR
|
||||||
$cpuid_obj = ppccpuid_osx32.o
|
$cpuid_obj = ppccpuid_osx32.o
|
||||||
$bn_obj = osx_ppc32.o osx_ppc32-mont.o
|
$bn_obj = osx_ppc32.o osx_ppc32-mont.o
|
||||||
@ -1098,7 +1098,7 @@ $cflags = -m64 -O3 -DB_ENDIAN
|
|||||||
$unistd =
|
$unistd =
|
||||||
$thread_cflag = -D_REENTRANT
|
$thread_cflag = -D_REENTRANT
|
||||||
$sys_id = MACOSX
|
$sys_id = MACOSX
|
||||||
$lflags = -Wl,-search_paths_first
|
$lflags = -Wl,-search_paths_first%
|
||||||
$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR
|
$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR
|
||||||
$cpuid_obj = ppccpuid_osx64.o
|
$cpuid_obj = ppccpuid_osx64.o
|
||||||
$bn_obj = osx_ppc64.o osx_ppc64-mont.o
|
$bn_obj = osx_ppc64.o osx_ppc64-mont.o
|
||||||
@ -1822,24 +1822,24 @@ $arflags =
|
|||||||
|
|
||||||
*** debug-steve
|
*** debug-steve
|
||||||
$cc = gcc
|
$cc = gcc
|
||||||
$cflags = -DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -march=i486 -pedantic -Wno-long-long -Wall -Werror -Wshadow -pipe
|
$cflags = -DL_ENDIAN -DREF_CHECK -DCONF_DEBUG -DDEBUG_SAFESTACK -DCRYPTO_MDEBUG_ALL -DPEDANTIC -g -pedantic -Wno-long-long -Wall -Werror -Wshadow -pipe
|
||||||
$unistd =
|
$unistd =
|
||||||
$thread_cflag = -D_REENTRANT
|
$thread_cflag = -D_REENTRANT
|
||||||
$sys_id =
|
$sys_id =
|
||||||
$lflags = -rdynamic -ldl
|
$lflags = -rdynamic -ldl
|
||||||
$bn_ops = BN_LLONG DES_PTR DES_RISC1 DES_UNROLL RC4_INDEX MD2_INT
|
$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL
|
||||||
$cpuid_obj = x86cpuid-elf.o
|
$cpuid_obj = x86_64cpuid.o
|
||||||
$bn_obj = bn86-elf.o co86-elf.o mo86-elf.o
|
$bn_obj = x86_64-gcc.o x86_64-mont.o
|
||||||
$des_obj = dx86-elf.o yx86-elf.o
|
$des_obj =
|
||||||
$aes_obj = ax86-elf.o
|
$aes_obj = aes-x86_64.o
|
||||||
$bf_obj = bx86-elf.o
|
$bf_obj =
|
||||||
$md5_obj = mx86-elf.o
|
$md5_obj = md5-x86_64.o
|
||||||
$sha1_obj = sx86-elf.o s512sse2-elf.o
|
$sha1_obj = sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o
|
||||||
$cast_obj = cx86-elf.o
|
$cast_obj =
|
||||||
$rc4_obj = rx86-elf.o
|
$rc4_obj = rc4-x86_64.o
|
||||||
$rmd160_obj = rm86-elf.o
|
$rmd160_obj =
|
||||||
$rc5_obj = r586-elf.o
|
$rc5_obj =
|
||||||
$wp_obj = wp_block.o w86mmx-elf.o
|
$wp_obj = wp-x86_64.o
|
||||||
$dso_scheme = dlfcn
|
$dso_scheme = dlfcn
|
||||||
$shared_target= linux-shared
|
$shared_target= linux-shared
|
||||||
$shared_cflag =
|
$shared_cflag =
|
||||||
|
@ -154,11 +154,7 @@ $(EXE): progs.h $(E_OBJ) $(PROGRAM).o $(DLIBCRYPTO) $(DLIBSSL)
|
|||||||
shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
|
shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
|
||||||
shlib_target="$(SHLIB_TARGET)"; \
|
shlib_target="$(SHLIB_TARGET)"; \
|
||||||
fi; \
|
fi; \
|
||||||
if [ "$${shlib_target}" = "darwin-shared" ] ; then \
|
|
||||||
LIBRARIES="$(DLIBSSL) $(LIBKRB5) $(DLIBCRYPTO)" ; \
|
|
||||||
else \
|
|
||||||
LIBRARIES="$(LIBSSL) $(LIBKRB5) $(LIBCRYPTO)" ; \
|
LIBRARIES="$(LIBSSL) $(LIBKRB5) $(LIBCRYPTO)" ; \
|
||||||
fi; \
|
|
||||||
$(MAKE) -f $(TOP)/Makefile.shared -e \
|
$(MAKE) -f $(TOP)/Makefile.shared -e \
|
||||||
APPNAME=$(EXE) OBJECTS="$(PROGRAM).o $(E_OBJ)" \
|
APPNAME=$(EXE) OBJECTS="$(PROGRAM).o $(E_OBJ)" \
|
||||||
LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
|
LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
|
||||||
|
12
config
12
config
@ -525,7 +525,17 @@ case "$GUESSOS" in
|
|||||||
OUT="irix-mips3-$CC"
|
OUT="irix-mips3-$CC"
|
||||||
;;
|
;;
|
||||||
ppc-apple-rhapsody) OUT="rhapsody-ppc-cc" ;;
|
ppc-apple-rhapsody) OUT="rhapsody-ppc-cc" ;;
|
||||||
ppc-apple-darwin*) OUT="darwin-ppc-cc" ;;
|
ppc-apple-darwin*)
|
||||||
|
ISA64=`(sysctl -n hw.optional.64bitops) 2>/dev/null`
|
||||||
|
if [ "$ISA64" = "1" ]; then
|
||||||
|
echo "WARNING! If you wish to build 64-bit library, then you have to"
|
||||||
|
echo " invoke './Configure darwin64-ppc-cc' *manually*."
|
||||||
|
if [ "$TEST" = "false" -a -t 1 ]; then
|
||||||
|
echo " You have about 5 seconds to press Ctrl-C to abort."
|
||||||
|
(trap "stty `stty -g`" 2 0; stty -icanon min 0 time 50; read waste) <&1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
OUT="darwin-ppc-cc" ;;
|
||||||
i386-apple-darwin*) OUT="darwin-i386-cc" ;;
|
i386-apple-darwin*) OUT="darwin-i386-cc" ;;
|
||||||
alpha-*-linux2)
|
alpha-*-linux2)
|
||||||
ISA=`awk '/cpu model/{print$4;exit(0);}' /proc/cpuinfo`
|
ISA=`awk '/cpu model/{print$4;exit(0);}' /proc/cpuinfo`
|
||||||
|
@ -326,11 +326,7 @@ $(DLIBCRYPTO):
|
|||||||
BUILD_CMD=shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
|
BUILD_CMD=shlib_target=; if [ -n "$(SHARED_LIBS)" ]; then \
|
||||||
shlib_target="$(SHLIB_TARGET)"; \
|
shlib_target="$(SHLIB_TARGET)"; \
|
||||||
fi; \
|
fi; \
|
||||||
if [ "$${shlib_target}" = "hpux-shared" -o "$${shlib_target}" = "darwin-shared" ] ; then \
|
|
||||||
LIBRARIES="$(DLIBSSL) $(DLIBCRYPTO) $(LIBKRB5)"; \
|
|
||||||
else \
|
|
||||||
LIBRARIES="$(LIBSSL) $(LIBCRYPTO) $(LIBKRB5)"; \
|
LIBRARIES="$(LIBSSL) $(LIBCRYPTO) $(LIBKRB5)"; \
|
||||||
fi; \
|
|
||||||
$(MAKE) -f $(TOP)/Makefile.shared -e \
|
$(MAKE) -f $(TOP)/Makefile.shared -e \
|
||||||
APPNAME=$$target$(EXE_EXT) OBJECTS="$$target.o" \
|
APPNAME=$$target$(EXE_EXT) OBJECTS="$$target.o" \
|
||||||
LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
|
LIBDEPS="$(PEX_LIBS) $$LIBRARIES $(EX_LIBS)" \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user