OSDN Git Service

CLI: Add support for naming audio tracks to the HandBrakeCLI, thanks to LePetomane...
[handbrake-jp/handbrake-jp-git.git] / configure
index d0c2928..224b2b2 100755 (executable)
--- a/configure
+++ b/configure
@@ -4,6 +4,8 @@ CC="gcc"
 CXX="g++"
 CCFLAGS="$CCFLAGS -Wall -g"
 OPTIM="$OPTIM -O3 -funroll-loops"
+LINKLIBS="-lz -lbz2"
+MAKE=make
 
 # System-specific flags
 SYSTEM=`uname -s`
@@ -31,29 +33,39 @@ case $SYSTEM in
     ;;
 
   Darwin)
-    DEFINES="$DEFINES SYS_DARWIN"
+    DEFINES="$DEFINES SYS_DARWIN USE_PTHREAD"
     LINKLIBS="$LINKLIBS -lpthread"
     ;;
 
   FreeBSD)
-    DEFINES="$DEFINES SYS_FREEBSD"
+    DEFINES="$DEFINES SYS_FREEBSD USE_PTHREAD"
     LINKLIBS="$LINKLIBS -pthread"
     ;;
 
   NetBSD)
-    DEFINES="$DEFINES SYS_NETBSD"
+    DEFINES="$DEFINES SYS_NETBSD USE_PTHREAD"
     LINKLIBS="$LINKLIBS -lpthread"
     ;;
 
   Linux)
-    DEFINES="$DEFINES SYS_LINUX"
+    DEFINES="$DEFINES SYS_LINUX USE_PTHREAD _LARGEFILE_SOURCE _FILE_OFFSET_BITS=64"
+    LINKLIBS="$LINKLIBS -lpthread -ldl"
+    ;;
+
+  CYGWIN*)
+    DEFINES="$DEFINES SYS_CYGWIN USE_PTHREAD"
     LINKLIBS="$LINKLIBS -lpthread"
     ;;
+  SunOS)
+    DEFINES="$DEFINES SYS_SunOS USE_PTHREAD _LARGEFILE_SOURCE _FILE_OFFSET_BITS=64"
+    LINKLIBS="$LINKLIBS -lpthread -lsocket -lnsl"
+    ;;
 
   *)
     echo "Unsupported operating system"
     exit 1 ;;
 esac
+echo
 echo "System: $SYSTEM"
 
 # Check for endianness (we need to define WORDS_BIGENDIAN for libdvdread)
@@ -64,7 +76,7 @@ int main()
     return *( (char *) &i );
 }
 EOF
-if ( cc -o testconf testconf.c && ./testconf ) > /dev/null 2>&1
+if ( $CC -o testconf testconf.c && ./testconf ) > /dev/null 2>&1
 then
   echo "Endian: big"
   DEFINES="$DEFINES WORDS_BIGENDIAN"
@@ -73,6 +85,39 @@ else
 fi
 rm -f testconf.c testconf
 
+#
+# Use Gnu make when available over the built in make
+#
+if ( make --version | grep GNU ) > /dev/null 2>&1
+then
+MAKE=make
+elif ( gmake --version | grep GNU ) > /dev/null 2>&1
+then
+MAKE=gmake
+else
+MAKE=make
+fi
+
+# Unless the user wants a release build, configure for SVN snapshots
+if test "$1" = "--release" || test "$2" = "--release"; then
+    SNAPSHOT=0
+else
+    SNAPSHOT=1
+fi
+
+# We fought the law and the law won
+if test "$1" = "--libdvdcss" || test "$2" = "--libdvdcss"; then
+    CSS=1
+else
+    CSS=0
+fi
+
+# Generating the HB_BUILD and HB_VERSION for snapshots requires
+# the build date, working path, and current SVN revision. 
+BUILD_DATE=`date +%Y%m%d`
+FULL_PATH=`pwd`
+SVN_REV=`svnversion`
+
 # Generate config.jam
 rm -f config.jam
 cat << EOF > config.jam
@@ -84,7 +129,23 @@ C++FLAGS = $CCFLAGS ;
 OPTIM    = $OPTIM ;
 DEFINES  = $DEFINES ;
 LINKLIBS = $LINKLIBS ;
+MAKE     = $MAKE ;
+SNAPSHOT = $SNAPSHOT ;
+BUILD_DATE = $BUILD_DATE ;
+FULL_PATH = $FULL_PATH ;
+SVN_REV = $SVN_REV ;
+CSS      = $CSS ;
 EOF
 
 echo
-echo "To build HandBrake, run 'jam'."
+echo "Don't run configure by hand, make runs it automatically."
+echo
+echo "No, really. That's it. Just type 'make' and hit return."
+echo
+echo "You're supposed to be building with make, not jam."
+echo "If you were going to use jam--which you shouldn't--you'd run:"
+echo " './jam' on a Mac, or"
+echo " 'jam' on Linux or Windows"
+echo
+echo "To make jam, boil fruit with sugar and an acid until pectins are released."
+echo