Script for cross-compiling jq binaries for other platforms.

This commit is contained in:
Stephen Dolan committed 2013-05-09 01:50:20 +01:00
1 parent 63b689bf54
commit 282667bbd4
3 files changed
+40 -2

No files matched your search

+5 -1
View File
@@ -22,7 +22,7 @@ AM_CFLAGS = -Wextra -Wall -Wno-missing-field-initializers \
# header file creation so we'll use good old make
BUILT_SOURCES = lexer.h lexer.c parser.h parser.c
lexer.c: lexer.l
flex -o lexer.c --header-file=lexer.h lexer.l
flex -o lexer.c --header-file=lexer.h $<
lexer.h: lexer.c
# Tell YACC (bison) autoconf macros that you want a header file created.
@@ -54,6 +54,10 @@ docs/site.yml: configure.ac
sed 's/^jq_version: .*/jq_version: $(VERSION)/' $@ > $@.new
mv $@.new $@
install-binaries: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-exec
# setup is only used by distribution developers, not package developers.
# Still, as a matter of allowing patching, its not a bad idea to distribute
# the developer setup script in the tarball.
+4 -1
View File
@@ -1090,7 +1090,7 @@ uninstall-man: uninstall-man1
uninstall-man1
lexer.c: lexer.l
flex -o lexer.c --header-file=lexer.h lexer.l
flex -o lexer.c --header-file=lexer.h $<
lexer.h: lexer.c
### Building the jq binary
@@ -1103,6 +1103,9 @@ docs/site.yml: configure.ac
sed 's/^jq_version: .*/jq_version: $(VERSION)/' $@ > $@.new
mv $@.new $@
install-binaries: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-exec
jq.1 :
cd ${abs_srcdir}/docs; rake manpage > ${abs_builddir}/$@
Executable
+31
View File
@@ -0,0 +1,31 @@
#!/bin/sh
# This script is used to cross-compile binaries for
# platforms other than the current one
# Usage: $0 <platformname> <configure options>
# <platformname> is arbitrary, it is the name
# of the directory which will be created to contain
# the output binaries.
# e.g. $0 win32 --host=i686-w64-mingw32
set -e
cd `dirname "$0"`
plat="$1"
[ -z "$plat" ] && exit 1
shift
[ -d "$plat" ] || mkdir "$plat"
rm -rf "$plat/tmp"
mkdir "$plat/tmp"
cd "$plat/tmp"
mkdir install_other
../../../configure \
--prefix="`pwd`/install_other" \
--bindir="`pwd`/.." \
"$@"
make install-binaries
cd ..
rm -rf tmp