# FIXME: How to do this cleanly use makefile?
#
-AR=/usr/bin/ar
# see http://osdir.com/ml/gmane.comp.gnu.binutils.bugs/2006-01/msg00016.php
-LD=gcc
-RANLIB=/usr/bin/ranlib
+ppc64_CPU=`uname -p`
+if [ "x${ppc64_CPU}" = "xppc64" ]; then
+ LD="$CC -m64"
+else
+ LD=$CC
+fi
CWD=`pwd`
LIBS=$2
LND_LIBS=$3
PTHREAD_LIBS=$4
-QUOTA_LIBS=$5
-CAP_LIBS=$6
-ZLIB=$7
+CAP_LIBS=$5
+ZLIB=$6
if [ ! -f $SYSIO/lib/libsysio.a ]; then
echo "ERROR: $SYSIO/lib/libsysio.a dosen't exist"
build_obj_list ../mgc libmgc.a
build_obj_list ../ptlrpc libptlrpc.a
build_obj_list ../obdclass liblustreclass.a
-build_obj_list ../lvfs liblvfs.a
# lnet components libs
build_obj_list ../../lnet/utils libuptlctl.a
if $(echo "$LND_LIBS" | grep "socklnd" >/dev/null) ; then
build_obj_list ../../lnet/ulnds/socklnd libsocklnd.a
fi
-if $(echo "$LND_LIBS" | grep "ptllnd" >/dev/null) ; then
- build_obj_list ../../lnet/ulnds/ptllnd libptllnd.a
-fi
build_obj_list ../../lnet/lnet liblnet.a
-if [ "x$QUOTA_LIBS" != "x" ]; then
- build_obj_list ../quota libquota.a
-fi
-
# create static lib lsupport
rm -f $CWD/liblsupport.a
$AR -cru $CWD/liblsupport.a $ALL_OBJS
# if libsysio is already in our LIBS we don't need to link against it here
if $(echo "$LIBS" | grep -v -- "-lsysio" >/dev/null) ; then
- build_sysio_obj_list $SYSIO/lib/libsysio.a
+ build_sysio_obj_list $SYSIO/lib/libsysio.a
fi
# create static lib lustre
rm -f $CWD/liblustre.so
OS=`uname`
if test x$OS = xAIX; then
-$LD -shared -o $CWD/liblustre.so $ALL_OBJS -lpthread -Xlinker -bnoipath ../../libsyscall.so
+ $LD $LDFLAGS -shared -o $CWD/liblustre.so $ALL_OBJS -lpthread -Xlinker -bnoipath ../../libsyscall.so
else
-$LD -shared -nostdlib -o $CWD/liblustre.so $ALL_OBJS $CAP_LIBS $PTHREAD_LIBS $ZLIB
+# using -nostdlib on Ubuntu causes errors such as:
+#./llite_lib.o: In function `liblustre_process_log':
+#/home/brian/rpm/BUILD/lustre-1.8.2.50/lustre/liblustre/llite_lib.c:234: undefined reference to `__stack_chk_fail_local'
+# due to the use of SSP
+#$LD -shared -nostdlib -o $CWD/liblustre.so $ALL_OBJS $CAP_LIBS $PTHREAD_LIBS $ZLIB
+ $LD $LDFLAGS -shared -o $CWD/liblustre.so $ALL_OBJS $CAP_LIBS $PTHREAD_LIBS $ZLIB
fi
rm -rf $sysio_tmp