5 CCFLAGS="$CCFLAGS -Wall -g"
6 OPTIM="$OPTIM -O3 -funroll-loops"
10 # System-specific flags
14 CCFLAGS="$CCFLAGS -Wno-multichar"
15 DEFINES="$DEFINES SYS_BEOS"
16 LINKLIBS="$LINKLIBS -lbe -ltracker"
20 6.0|5.0.4) # Zeta or R5 / BONE beta 7
21 SYSTEM="$SYSTEM / BONE"
22 LINKLIBS="$LINKLIBS -lbind -lsocket"
24 5.0*) # R5 / net_server
25 SYSTEM="$SYSTEM / net_server"
26 DEFINES="$DEFINES BEOS_NETSERVER"
27 LINKLIBS="$LINKLIBS -lnet"
30 echo "Unsupported BeOS version"
36 DEFINES="$DEFINES SYS_DARWIN USE_PTHREAD"
37 LINKLIBS="$LINKLIBS -lpthread"
41 DEFINES="$DEFINES SYS_FREEBSD USE_PTHREAD"
42 LINKLIBS="$LINKLIBS -pthread"
46 DEFINES="$DEFINES SYS_NETBSD USE_PTHREAD"
47 LINKLIBS="$LINKLIBS -lpthread"
51 DEFINES="$DEFINES SYS_LINUX USE_PTHREAD _LARGEFILE_SOURCE _FILE_OFFSET_BITS=64"
52 LINKLIBS="$LINKLIBS -lpthread -ldl"
56 DEFINES="$DEFINES SYS_CYGWIN USE_PTHREAD"
57 LINKLIBS="$LINKLIBS -lpthread"
60 DEFINES="$DEFINES SYS_SunOS USE_PTHREAD _LARGEFILE_SOURCE _FILE_OFFSET_BITS=64"
61 LINKLIBS="$LINKLIBS -lpthread -lsocket -lnsl"
65 echo "Unsupported operating system"
69 echo "System: $SYSTEM"
71 # Check for endianness (we need to define WORDS_BIGENDIAN for libdvdread)
72 cat > testconf.c << EOF
76 return *( (char *) &i );
79 if ( $CC -o testconf testconf.c && ./testconf ) > /dev/null 2>&1
82 DEFINES="$DEFINES WORDS_BIGENDIAN"
86 rm -f testconf.c testconf
89 # Use Gnu make when available over the built in make
91 if ( make --version | grep GNU ) > /dev/null 2>&1
94 elif ( gmake --version | grep GNU ) > /dev/null 2>&1
101 # Unless the user wants a release build, configure for SVN snapshots
102 if test "$1" = "--release" || test "$2" = "--release"; then
108 # We fought the law and the law won
109 if test "$1" = "--libdvdcss" || test "$2" = "--libdvdcss"; then
115 # Generating the HB_BUILD and HB_VERSION for snapshots requires
116 # the build date, working path, and current SVN revision.
117 BUILD_DATE=`date +%Y%m%d`
121 # Generate config.jam
123 cat << EOF > config.jam
128 C++FLAGS = $CCFLAGS ;
131 LINKLIBS = $LINKLIBS ;
133 SNAPSHOT = $SNAPSHOT ;
134 BUILD_DATE = $BUILD_DATE ;
135 FULL_PATH = $FULL_PATH ;
141 echo "* Mac and Linux:"
143 echo " Don't run configure by hand, make runs it automatically."
145 echo " No, really. That's it. Just type 'make' and hit return."
147 echo " You're supposed to be building with make, not jam."
148 echo " If you were going to use jam--which you shouldn't--you'd run:"
149 echo " './jam' on a Mac, or"
150 echo " 'jam' on Linux"
154 echo " Be sure to always run configure (this script) before building."
158 echo "To make jam, boil fruit with sugar and an acid until pectins are released."