r11056: 28 Aug 2006 Kevin Rosenberg <kevin@rosenberg.net>
[clsql/s11.git] / uffi / make.sh
blob746a86268e7d62cbaf32343cc590243a90a6042e
1 #!/bin/sh
3 case "`uname`" in
4 Linux) os_linux=1 ;;
5 GNU) os_linux=1 ;;
6 FreeBSD) os_freebsd=1 ;;
7 NetBSD) os_netbsd=1 ;;
8 GNU/kFreeBSD) os_gnukfreebsd=1;;
9 Darwin) os_darwin=1 ;;
10 SunOS) os_sunos=1 ;;
11 AIX) os_aix=1 ;;
12 *) echo "Unable to identify uname " `uname`
13 exit 1 ;;
14 esac
16 if [ "$os_linux" -o "$os_freebsd" -o "$os_gnukfreebsd" -o "$os_netbsd" ]; then
17 gcc -fPIC -DPIC -c $SOURCE -o $OBJECT
18 ld -shared -soname=$BASE $LDFLAGS $OBJECT -o $SHARED_LIB
19 elif [ "$os_darwin" ]; then
20 cc -dynamic -c $SOURCE -o $OBJECT
21 ld -bundle /usr/lib/bundle1.o -flat_namespace -undefined suppress -o $BASE.dylib $OBJECT
22 ld -bundle /usr/lib/bundle1.o -flat_namespace -undefined suppress /usr/lib/libz.dylib -o z.dylib
24 elif [ "$os_sunos" ]; then
25 cc -KPIC -c $SOURCE -o $OBJECT
26 cc -G $OBJECT -o $SHARED_LIB
28 elif [ "$os_aix" ]; then
29 gcc -c -D_BSD -D_NO_PROTO -D_NONSTD_TYPES -D_MBI=void $SOURCE
30 make_shared -o $SHARED_LIB $OBJECT
33 exit 0