summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStef Walter <stefw@gnome.org>2013-04-03 10:30:25 +0200
committerStef Walter <stefw@gnome.org>2013-04-03 10:30:25 +0200
commit2e8f586cd5a0c4cf2471c085e9e0e4fdcc04d996 (patch)
tree61522e5855e0e14e54f73e45fd2fc8c651a16099
parentb7ccd06e1f969a6b86285360234582fe01d3aeaf (diff)
downloadp11-kit-2e8f586cd5a0c4cf2471c085e9e0e4fdcc04d996.tar.gz
Add new script for setting up p11-kit for a maintainer
Add win32 cross build, and build out of tree
-rw-r--r--.gitignore6
-rwxr-xr-xautomaint.sh50
2 files changed, 56 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index ea159a2..2fe4e8b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -50,14 +50,20 @@ stamp-h1
temp.txt
test-driver
+local
+x86_64-w64-mingw32
+
/*/tests/test-*
!/*/tests/test-*.[ch]
/*/tests/frob-*
!/*/tests/frob-*.[ch]
+/x86_64_w64-mingw32/
+
/build/m4/*.m4
/build/coverage
/build/coverage.info
+/local
/common/tests/hash-test
diff --git a/automaint.sh b/automaint.sh
new file mode 100755
index 0000000..975556d
--- /dev/null
+++ b/automaint.sh
@@ -0,0 +1,50 @@
+#!/bin/sh
+
+NOCONFIGURE=1 ./autogen.sh
+
+ARGS="--enable-strict --enable-debug"
+CROSS="x86_64-w64-mingw32"
+
+configure()
+(
+ build=$1
+ shift
+
+ pwd=$(pwd)
+ mkdir -p $build
+ cd $build
+ echo "Configuring for: $build" >&2
+ echo $pwd/configure "$@" >&2
+ $pwd/configure "$@"
+)
+
+# Configure the local build. To control which arguments are used create a
+# CONFIG_SITE script as directed in the autoconf documentation:
+# http://www.gnu.org/software/autoconf/manual/autoconf.html#Site-Defaults
+configure ./local --prefix=/usr --enable-doc --enable-coverage $ARGS "$@"
+
+# Configure the cross builds
+for cross in $CROSS; do
+ configure ./$cross --prefix=/opt/$cross --host=$cross $ARGS "$@"
+done
+
+# B
+
+(
+ echo "CROSS = $CROSS"
+
+ for target in all check clean distclean; do
+ echo "$target:"
+ echo ' $(MAKE) -C ./local' $target
+ echo ' @for dir in $(CROSS); do \'
+ echo ' $(MAKE) -C ./$$dir' $target '; \'
+ echo ' done'
+ done
+
+ for target in distcheck memcheck leakcheck install upload-coverage \
+ coverage upload-doc upload-release transifex; do
+ echo "$target:"
+ echo ' $(MAKE) -C ./local' $target
+ done
+
+) > ./makefile