Whamcloud - gitweb
b=22976 fix bash syntax error
[fs/lustre-release.git] / lustre / liblustre / genlib.sh
index 67be276..2c644d5 100755 (executable)
@@ -13,7 +13,12 @@ set -e
 
 AR=/usr/bin/ar
 # see http://osdir.com/ml/gmane.comp.gnu.binutils.bugs/2006-01/msg00016.php
-LD=gcc
+ppc64_CPU=`uname -p`
+if [ "x${ppc64_CPU}" = "xppc64" ]; then
+  LD="gcc -m64"
+else
+  LD="gcc"
+fi
 RANLIB=/usr/bin/ranlib
 
 CWD=`pwd`
@@ -24,6 +29,7 @@ LND_LIBS=$3
 PTHREAD_LIBS=$4
 QUOTA_LIBS=$5
 CAP_LIBS=$6
+ZLIB=$7
 
 if [ ! -f $SYSIO/lib/libsysio.a ]; then
   echo "ERROR: $SYSIO/lib/libsysio.a dosen't exist"
@@ -63,7 +69,10 @@ build_obj_list . libllite.a
 build_obj_list ../lov liblov.a
 build_obj_list ../obdecho libobdecho.a
 build_obj_list ../osc libosc.a
+build_obj_list ../lmv liblmv.a
 build_obj_list ../mdc libmdc.a
+build_obj_list ../fid libfid.a
+build_obj_list ../fld libfld.a
 build_obj_list ../mgc libmgc.a
 build_obj_list ../ptlrpc libptlrpc.a
 build_obj_list ../obdclass liblustreclass.a
@@ -71,7 +80,8 @@ build_obj_list ../lvfs liblvfs.a
 
 # lnet components libs
 build_obj_list ../../lnet/utils libuptlctl.a
-build_obj_list ../../lnet/libcfs libcfs.a
+build_obj_list ../../libcfs/libcfs libcfs.a
+build_obj_list ../../libcfs/libcfs libcfsutil.a
 if $(echo "$LND_LIBS" | grep "socklnd" >/dev/null) ; then
        build_obj_list ../../lnet/ulnds/socklnd libsocklnd.a
 fi
@@ -103,10 +113,9 @@ $RANLIB $CWD/liblustre.a
 rm -f $CWD/liblustre.so
 OS=`uname`
 if test x$OS = xAIX; then
-gcc -shared -o $CWD/liblustre.so  $ALL_OBJS -lpthread -Xlinker -bnoipath ../../libsyscall.so
+$LD -shared -o $CWD/liblustre.so $ALL_OBJS -lpthread -Xlinker -bnoipath ../../libsyscall.so
 else
-$LD -shared -o $CWD/liblustre.so -init __liblustre_setup_ -fini __liblustre_cleanup_ \
-       $ALL_OBJS $CAP_LIBS $PTHREAD_LIBS
+$LD -shared -nostdlib -o $CWD/liblustre.so $ALL_OBJS $CAP_LIBS $PTHREAD_LIBS $ZLIB
 fi
 
 rm -rf $sysio_tmp