]> git.sesse.net Git - vlc/blobdiff - extras/contrib/bootstrap
contribs: update to fribidi2 beta (0.19.1) to hopefully solve problems with arabic...
[vlc] / extras / contrib / bootstrap
index 85653c2edb489be8f999b22802d08aa46b199941..36c1ba80ea925893dc46b592fd0707452ea01580 100755 (executable)
@@ -67,6 +67,7 @@ if test "$HOST" != "$BUILD"; then
     LD="${HOST}-ld"
     RANLIB="${HOST}-ranlib"
     AR="${HOST}-ar"
+    STRIP="${HOST}-strip"
 fi
 
 # Check the HAVE_{OS}
@@ -97,17 +98,18 @@ case $HOST in
         exit 1
     ;;
     powerpc-apple-darwin8)
-# Mac OS X 10.4
+# Mac OS X 10.4 or 10.5 with Xcode 2.5
 # Makefile cross compiling is only supported with gcc-4.0
 # ENVP defines the oldest environment on which the program will be able to run
-# SDK 10.2.8 requires gcc-3.3 (so we cannot use that SDK)
         SDK_TARGET=10.4
         echo "SDK_TARGET = ${SDK_TARGET}" >> config.mak
         echo "ENVP = MACOSX_DEPLOYMENT_TARGET=${SDK_TARGET}" >> config.mak
         echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk" >> config.mak
         CFLAGS_TUNING=" -arch ppc -mtune=G4"
-        EXTRA_CFLAGS=" -D\${ENVP} -isysroot \${MACOSX_SDK} -mmacosx-version-min=\${SDK_TARGET}"
-        EXTRA_LDFLAGS=" -isysroot \${MACOSX_SDK} -Wl,-syslibroot,\${MACOSX_SDK}"
+        EXTRA_CFLAGS=" -D\${ENVP} -mmacosx-version-min=\${SDK_TARGET}"
+        CC="gcc -isysroot \${MACOSX_SDK}"
+        CXX="g++ -isysroot \${MACOSX_SDK}"
+        LD="ld -arch ppc -syslibroot \${MACOSX_SDK}"
         echo "PATH = /bin:/usr/bin:/usr/local/bin" >> config.mak
         cat src/Distributions/darwin.mak >> distro.mak
         ;;
@@ -124,27 +126,48 @@ case $HOST in
         cat src/Distributions/darwin.mak >> distro.mak
         ;;
     powerpc-apple-darwin9)
+# Mac OS X 10.5 with Xcode 3, specific rules apply
         SDK_TARGET=10.4
         echo "SDK_TARGET = ${SDK_TARGET}" >> config.mak
-#        echo "ENVP = MACOSX_DEPLOYMENT_TARGET=${SDK_TARGET}" >> config.mak
-#        echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk" >> config.mak
+        echo "ENVP = MACOSX_DEPLOYMENT_TARGET=${SDK_TARGET}" >> config.mak
+        echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk" >> config.mak
+        echo "HAVE_DARWIN_9 = 1" >> config.mak
         CFLAGS_TUNING=" -arch ppc -mtune=G4"
-#        EXTRA_CFLAGS=" -D\${ENVP} -isysroot \${MACOSX_SDK} -mmacosx-version-min=\${SDK_TARGET}"
-#        EXTRA_LDFLAGS=" -isysroot \${MACOSX_SDK} -Wl,-syslibroot,\${MACOSX_SDK}"
-        echo "PATH = /bin:/usr/bin:/usr/local/bin" >> config.mak
+        EXTRA_CFLAGS=" -D\${ENVP} -mmacosx-version-min=\${SDK_TARGET}"
+        CC="gcc -isysroot \${MACOSX_SDK}"
+        CXX="g++ -isysroot \${MACOSX_SDK}"
+        LD="ld -arch ppc -syslibroot \${MACOSX_SDK}"
+        echo "PATH = /bin:/usr/bin:/usr/local/bin:" >> config.mak
         cat src/Distributions/darwin.mak >> distro.mak
+        if test -e /Developer/SDKs; then
+            echo "SDKs found. Everything is fine." >&2
+        else
+            echo "ERROR:\nYour Developer Tools' SDKs were not found.\nYou need to add extra symbolic links to /Developer to achieve correctly\nbuilt contribs.\nHave a look at the OSX-Compile-HOWTO for details." >&2
+            exit 1
+        fi
         ;;
     i686-apple-darwin9)
         SDK_TARGET=10.4
+        MIN_LD_VERSION_WITH_TEXT_RELOCATION=81
         echo "SDK_TARGET = ${SDK_TARGET}" >> config.mak
         echo "HAVE_DARWIN_OS_ON_INTEL = 1" >> config.mak
-#        echo "ENVP = MACOSX_DEPLOYMENT_TARGET=${SDK_TARGET}" >> config.mak
-#        echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk" >> config.mak
+        echo "HAVE_DARWIN_9 = 1" >> config.mak
+        if test `ld -v 2> /dev/stdout | sed -E 's/.*ld64-([0-9]+).*/\1/'` -lt ${MIN_LD_VERSION_WITH_TEXT_RELOCATION}; then
+            echo "NO_TEXT_RELOCATION = 1" >> config.mak
+        fi
+        echo "ENVP = MACOSX_DEPLOYMENT_TARGET=${SDK_TARGET}" >> config.mak
+        echo "MACOSX_SDK = /Developer/SDKs/MacOSX10.4u.sdk" >> config.mak
         CFLAGS_TUNING=" -march=pentium-m -mtune=prescott"
-#        EXTRA_CFLAGS=" -D\${ENVP} -isysroot \${MACOSX_SDK} -mmacosx-version-min=\${SDK_TARGET}"
-#        EXTRA_LDFLAGS=" -isysroot \${MACOSX_SDK} -Wl,-syslibroot,\${MACOSX_SDK}"
+        EXTRA_CFLAGS=" -D\${ENVP} -isysroot \${MACOSX_SDK} -mmacosx-version-min=\${SDK_TARGET}"
+        EXTRA_LDFLAGS=" -isysroot \${MACOSX_SDK} -Wl,-syslibroot,\${MACOSX_SDK}"
         echo "PATH = /bin:/usr/bin:/usr/local/bin" >> config.mak
         cat src/Distributions/darwin.mak >> distro.mak
+        if test -e /Developer/SDKs; then
+            echo "SDKs found. Everything is fine." >&2
+        else
+            echo "ERROR:\nYour Developer Tools' SDKs were not found.\nYou need to add extra symbolic links to /Developer to achieve correctly\nbuilt contribs.\nHave a look at the OSX-Compile-HOWTO for details." >&2
+            exit 1
+        fi
         ;;
     i586-pc-beos)
             if test -f /boot/beos/system/lib/libbind.so; then
@@ -195,6 +218,7 @@ case $HOST in
     armeb-linux-uclibc)
             echo "HAVE_UCLIBC = 1" >> config.mak
             echo "HAVE_BIGENDIAN = 1" >> config.mak
+            EXTRA_CFLAGS="-Os -march=armv5 -msoft-float"
             if test ! -z "${DISTRO}";  then
                 cat src/Distributions/${DISTRO}.mak >> distro.mak
             else
@@ -238,15 +262,16 @@ echo "CXX = ${CXX}" >> config.mak
 echo "LD = ${LD}" >> config.mak
 echo "RANLIB = ${RANLIB}" >> config.mak
 echo "AR = ${AR}" >> config.mak
+echo "STRIP = ${STRIP}" >> config.mak
 echo "EXTRA_CFLAGS = ${CFLAGS_TUNING} ${EXTRA_CFLAGS}" >> config.mak
 echo "EXTRA_CPPFLAGS = ${EXTRA_CPPFLAGS} -isystem \$(PREFIX)/include" >> config.mak
 echo "EXTRA_LDFLAGS = ${EXTRA_LDFLAGS}" >> config.mak
 echo "EXTRA_PATH = ${EXTRA_PATH}" >> config.mak
 
 if wget --version >/dev/null 2>&1; then
-    echo "WGET = wget -c" >> config.mak
+    echo "WGET = `which wget` -c" >> config.mak
 elif which curl >/dev/null; then
-    echo "WGET = curl -L -O" >> config.mak
+    echo "WGET = `which curl` -L -O" >> config.mak
 else
     echo "You need at least wget or curl to fetch the packages." >&2
     exit 1
@@ -261,7 +286,7 @@ elif test -f /usr/bin/svn; then
 elif test -f /opt/local/bin/svn; then
     echo "SVN = /opt/local/bin/svn" >> config.mak
 elif svn help >/dev/null 2>&1; then
-        echo "SVN = svn" >> config.mak
+        echo "SVN = `which svn`" >> config.mak
 else
         echo "You do not have a subversion client installed." >&2
 fi