OSDN Git Service

BuildSystem: new files required for r2242.
[handbrake-jp/handbrake-jp-git.git] / make / test / build.matrix.darwin
diff --git a/make/test/build.matrix.darwin b/make/test/build.matrix.darwin
new file mode 100755 (executable)
index 0000000..1969cd6
--- /dev/null
@@ -0,0 +1,57 @@
+#!/bin/bash
+#
+
+## This is a script used to launch a wide variaet of builds for darwin.
+## It is unsupported and is meant for use only with build-system testing.
+
+if [ -z "$1" ]; then
+    echo "usage: $0 BUILDPREFIX"
+    exit 1
+fi
+
+set -e
+buildprefix=$1
+
+term_make() {
+    eval $1="make"
+    eval $2="'--disable-xcode'"
+}
+
+term_xcode() {
+    eval $1="make"
+    eval $2=""
+}
+
+launch_make() {
+    eval $1="launch"
+    eval $2="'--launch --launch-jobs=0 --launch-quiet --disable-xcode'"
+}
+
+launch_xcode() {
+    eval $1="launch"
+    eval $2="'--launch --launch-jobs=0 --launch-quiet'"
+}
+
+for arch in i386 ppc ppc64 x86_64; do
+    for method in launch_make launch_xcode term_make term_xcode; do
+        dir=$buildprefix.$arch.$method
+        if [ -d $dir ]; then
+            echo "skipping $dir"
+            continue
+        fi
+
+        $method mode args
+
+        cmd="./configure --arch=$arch --build=$dir $args"
+        echo $cmd | awk '{ \
+            trail = ""; \
+            for( i = 4; i <= NF; i++ ) \
+                trail = trail " " $i; \
+            printf("%-11s %-13s %-30s%s\n", $1, $2, $3, trail) }'
+
+        $cmd
+        if [ "$mode" = "make" ]; then
+            (set -x; cd $dir && make -j8 >& log.txt)
+        fi
+    done
+done