diff options
author | Karl Schultz <[email protected]> | 2004-10-01 13:33:26 +0000 |
---|---|---|
committer | Karl Schultz <[email protected]> | 2004-10-01 13:33:26 +0000 |
commit | a16bdb5fb7032aa64d1f4bcb249164211a221560 (patch) | |
tree | c9a42c717a268736c8a6188fa3d888b676e38396 /bin | |
parent | 75672d2e94e351cb8a65069e20cbcc941e046a1a (diff) |
Enable builds on AIX 64-bit
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/mklib | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/bin/mklib b/bin/mklib index e48ca582d06..59dd0096f4c 100755 --- a/bin/mklib +++ b/bin/mklib @@ -372,7 +372,30 @@ case $ARCH in ar -X64 -ruv ${LIBNAME} ${OBJECTS} FINAL_LIBS=${LIBNAME} else - echo "mklib: PROBLEM: AIX64 shared libs not supported!!!" + EXPFILE="lib${LIBNAME}.exp" + OFILE=shr.o #Want to be consistent with the IBM libGL.a + LIBNAME="lib${LIBNAME}.a" # shared objects are still stored in the .a libraries + OPTS="-bE:${EXPFILE} -bM:SRE -bnoentry -q64" + rm -f ${EXPFILE} ${OFILE} + NM="/bin/nm -eC -X64" + echo "#! /usr/lib/${LIBNAME}" > ${EXPFILE} + ${NM} ${OBJECTS} | awk '{ + if ((($2 == "T") || ($2 == "D") || ($2 == "B")) \ + && ( substr($1,1,1) != ".")) { + if (substr ($1, 1, 7) != "__sinit" && + substr ($1, 1, 7) != "__sterm") { + if (substr ($1, 1, 5) == "__tf1") + print (substr ($1, 7)) + else if (substr ($1, 1, 5) == "__tf9") + print (substr ($1, 15)) + else + print $1 + } + } + }' | sort -u >> ${EXPFILE} + cc ${OPTS} -o ${OFILE} ${OBJECTS} ${DEPS} + ar -X64 -r ${LIBNAME} ${OFILE} + FINAL_LIBS="${LIBNAME}" fi ;; |