299 lines
8.9 KiB
Diff
299 lines
8.9 KiB
Diff
From 7bb9f72d9fa34cd0c9fd2101d8170693d46c66dd Mon Sep 17 00:00:00 2001
|
|
From: Colin Walters <walters@verbum.org>
|
|
Date: Fri, 6 Jan 2012 18:41:56 -0500
|
|
Subject: [PATCH] build: Ensure autogen.sh is run if building from git
|
|
|
|
The GNOME Build API prefers 'configure' over 'autogen.sh' if it
|
|
exists, but in this build system 'configure' isn't usable until
|
|
'autogen.sh' is run. Work around this by making the stub
|
|
configure be 'configure.stub', and rename it once autogen.sh
|
|
is complete.
|
|
---
|
|
autogen.sh | 1 +
|
|
configure | 125 --------------------------------------------------------
|
|
configure.stub | 125 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
3 files changed, 126 insertions(+), 125 deletions(-)
|
|
mode change 100644 => 100755 autogen.sh
|
|
delete mode 100755 configure
|
|
create mode 100755 configure.stub
|
|
|
|
diff --git a/autogen.sh b/autogen.sh
|
|
old mode 100644
|
|
new mode 100755
|
|
index 9f2fb6a..57c9586
|
|
--- a/autogen.sh
|
|
+++ b/autogen.sh
|
|
@@ -161,6 +161,7 @@ chmod +x install-sh
|
|
|
|
cd ../..
|
|
|
|
+mv configure.stub configure
|
|
chmod +x ./configure
|
|
|
|
# EOF
|
|
diff --git a/configure b/configure
|
|
deleted file mode 100755
|
|
index b397556..0000000
|
|
--- a/configure
|
|
+++ /dev/null
|
|
@@ -1,125 +0,0 @@
|
|
-#!/bin/sh
|
|
-#
|
|
-# Copyright 2002, 2003, 2004, 2005, 2006, 2008, 2009, 2010 by
|
|
-# David Turner, Robert Wilhelm, and Werner Lemberg.
|
|
-#
|
|
-# This file is part of the FreeType project, and may only be used, modified,
|
|
-# and distributed under the terms of the FreeType project license,
|
|
-# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
|
-# indicate that you have read the license and understand and accept it
|
|
-# fully.
|
|
-#
|
|
-#
|
|
-# Call the `configure' script located in `builds/unix'.
|
|
-#
|
|
-
|
|
-rm -f config.mk builds/unix/unix-def.mk builds/unix/unix-cc.mk
|
|
-
|
|
-if test "x$GNUMAKE" = x; then
|
|
- GNUMAKE=make
|
|
-fi
|
|
-
|
|
-if test -z "`$GNUMAKE -v 2>/dev/null | grep GNU`"; then
|
|
- if test -z "`$GNUMAKE -v 2>/dev/null | grep makepp`"; then
|
|
- echo "GNU make (>= 3.80) or makepp (>= 1.19) is required to build FreeType2." >&2
|
|
- echo "Please try" >&2
|
|
- echo " \`GNUMAKE=<GNU make command name> $0'." >&2
|
|
- echo "or >&2"
|
|
- echo " \`GNUMAKE=\"makepp --norc-substitution\" $0'." >&2
|
|
- exit 1
|
|
- fi
|
|
-fi
|
|
-
|
|
-# Get `dirname' functionality. This is taken and adapted from autoconf's
|
|
-# m4sh.m4 (_AS_EXPR_PREPARE, AS_DIRNAME_EXPR, and AS_DIRNAME_SED).
|
|
-
|
|
-if expr a : '\(a\)' >/dev/null 2>&1; then
|
|
- ft_expr=expr
|
|
-else
|
|
- ft_expr=false
|
|
-fi
|
|
-
|
|
-ft2_dir=`(dirname "$0") 2>/dev/null ||
|
|
- $ft_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
|
|
- X"$0" : 'X\(//\)[^/]' \| \
|
|
- X"$0" : 'X\(//\)$' \| \
|
|
- X"$0" : 'X\(/\)' \| \
|
|
- . : '\(.\)' 2>/dev/null ||
|
|
- echo X"$0" |
|
|
- sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
|
|
- s//\1/
|
|
- q
|
|
- }
|
|
- /^X\(\/\/\)[^/].*/{
|
|
- s//\1/
|
|
- q
|
|
- }
|
|
- /^X\(\/\/\)$/{
|
|
- s//\1/
|
|
- q
|
|
- }
|
|
- /^X\(\/\).*/{
|
|
- s//\1/
|
|
- q
|
|
- }
|
|
- s/.*/./; q'`
|
|
-
|
|
-abs_curr_dir=`pwd`
|
|
-abs_ft2_dir=`cd "$ft2_dir" && pwd`
|
|
-
|
|
-# `--srcdir=' option can override abs_ft2_dir
|
|
-
|
|
-if test $# -gt 0; then
|
|
- for x in "$@"; do
|
|
- case x"$x" in
|
|
- x--srcdir=*)
|
|
- abs_ft2_dir=`echo $x | sed 's/^--srcdir=//'` ;;
|
|
- esac
|
|
- done
|
|
-fi
|
|
-
|
|
-# build a dummy Makefile if we are not building in the source tree;
|
|
-# we use inodes to avoid issues with symbolic links
|
|
-inode_src=`ls -id $abs_ft2_dir | awk '{print $1}'`
|
|
-inode_dst=`ls -id $abs_curr_dir | awk '{print $1}'`
|
|
-
|
|
-if test $inode_src -ne $inode_dst; then
|
|
- if test ! -d reference; then
|
|
- mkdir reference
|
|
- fi
|
|
- if test ! -r $abs_curr_dir/modules.cfg; then
|
|
- echo "Copying \`modules.cfg'"
|
|
- cp $abs_ft2_dir/modules.cfg $abs_curr_dir
|
|
- fi
|
|
- echo "Generating \`Makefile'"
|
|
- echo "TOP_DIR := $abs_ft2_dir" > Makefile
|
|
- echo "OBJ_DIR := $abs_curr_dir" >> Makefile
|
|
- echo "OBJ_BUILD := \$(OBJ_DIR)" >> Makefile
|
|
- echo "DOC_DIR := \$(OBJ_DIR)/reference" >> Makefile
|
|
- echo "FT_LIBTOOL_DIR := \$(OBJ_DIR)" >> Makefile
|
|
- echo "ifndef FT2DEMOS" >> Makefile
|
|
- echo " include \$(TOP_DIR)/Makefile" >> Makefile
|
|
- echo "else" >> Makefile
|
|
- echo " TOP_DIR_2 := \$(TOP_DIR)/../ft2demos" >> Makefile
|
|
- echo " PROJECT := freetype" >> Makefile
|
|
- echo " CONFIG_MK := \$(OBJ_DIR)/config.mk" >> Makefile
|
|
- echo " include \$(TOP_DIR_2)/Makefile" >> Makefile
|
|
- echo "endif" >> Makefile
|
|
-fi
|
|
-
|
|
-# call make
|
|
-
|
|
-CFG=
|
|
-# work around zsh bug which doesn't like `${1+"$@"}'
|
|
-case $# in
|
|
-0) ;;
|
|
-*) for x in "$@"; do
|
|
- case x"$x" in
|
|
- x--srcdir=* ) CFG="$CFG '$x'/builds/unix" ;;
|
|
- *) CFG="$CFG '$x'" ;;
|
|
- esac
|
|
- done ;;
|
|
-esac
|
|
-CFG=$CFG $GNUMAKE setup unix
|
|
-
|
|
-# eof
|
|
diff --git a/configure.stub b/configure.stub
|
|
new file mode 100755
|
|
index 0000000..b397556
|
|
--- /dev/null
|
|
+++ b/configure.stub
|
|
@@ -0,0 +1,125 @@
|
|
+#!/bin/sh
|
|
+#
|
|
+# Copyright 2002, 2003, 2004, 2005, 2006, 2008, 2009, 2010 by
|
|
+# David Turner, Robert Wilhelm, and Werner Lemberg.
|
|
+#
|
|
+# This file is part of the FreeType project, and may only be used, modified,
|
|
+# and distributed under the terms of the FreeType project license,
|
|
+# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
|
+# indicate that you have read the license and understand and accept it
|
|
+# fully.
|
|
+#
|
|
+#
|
|
+# Call the `configure' script located in `builds/unix'.
|
|
+#
|
|
+
|
|
+rm -f config.mk builds/unix/unix-def.mk builds/unix/unix-cc.mk
|
|
+
|
|
+if test "x$GNUMAKE" = x; then
|
|
+ GNUMAKE=make
|
|
+fi
|
|
+
|
|
+if test -z "`$GNUMAKE -v 2>/dev/null | grep GNU`"; then
|
|
+ if test -z "`$GNUMAKE -v 2>/dev/null | grep makepp`"; then
|
|
+ echo "GNU make (>= 3.80) or makepp (>= 1.19) is required to build FreeType2." >&2
|
|
+ echo "Please try" >&2
|
|
+ echo " \`GNUMAKE=<GNU make command name> $0'." >&2
|
|
+ echo "or >&2"
|
|
+ echo " \`GNUMAKE=\"makepp --norc-substitution\" $0'." >&2
|
|
+ exit 1
|
|
+ fi
|
|
+fi
|
|
+
|
|
+# Get `dirname' functionality. This is taken and adapted from autoconf's
|
|
+# m4sh.m4 (_AS_EXPR_PREPARE, AS_DIRNAME_EXPR, and AS_DIRNAME_SED).
|
|
+
|
|
+if expr a : '\(a\)' >/dev/null 2>&1; then
|
|
+ ft_expr=expr
|
|
+else
|
|
+ ft_expr=false
|
|
+fi
|
|
+
|
|
+ft2_dir=`(dirname "$0") 2>/dev/null ||
|
|
+ $ft_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
|
|
+ X"$0" : 'X\(//\)[^/]' \| \
|
|
+ X"$0" : 'X\(//\)$' \| \
|
|
+ X"$0" : 'X\(/\)' \| \
|
|
+ . : '\(.\)' 2>/dev/null ||
|
|
+ echo X"$0" |
|
|
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
|
|
+ s//\1/
|
|
+ q
|
|
+ }
|
|
+ /^X\(\/\/\)[^/].*/{
|
|
+ s//\1/
|
|
+ q
|
|
+ }
|
|
+ /^X\(\/\/\)$/{
|
|
+ s//\1/
|
|
+ q
|
|
+ }
|
|
+ /^X\(\/\).*/{
|
|
+ s//\1/
|
|
+ q
|
|
+ }
|
|
+ s/.*/./; q'`
|
|
+
|
|
+abs_curr_dir=`pwd`
|
|
+abs_ft2_dir=`cd "$ft2_dir" && pwd`
|
|
+
|
|
+# `--srcdir=' option can override abs_ft2_dir
|
|
+
|
|
+if test $# -gt 0; then
|
|
+ for x in "$@"; do
|
|
+ case x"$x" in
|
|
+ x--srcdir=*)
|
|
+ abs_ft2_dir=`echo $x | sed 's/^--srcdir=//'` ;;
|
|
+ esac
|
|
+ done
|
|
+fi
|
|
+
|
|
+# build a dummy Makefile if we are not building in the source tree;
|
|
+# we use inodes to avoid issues with symbolic links
|
|
+inode_src=`ls -id $abs_ft2_dir | awk '{print $1}'`
|
|
+inode_dst=`ls -id $abs_curr_dir | awk '{print $1}'`
|
|
+
|
|
+if test $inode_src -ne $inode_dst; then
|
|
+ if test ! -d reference; then
|
|
+ mkdir reference
|
|
+ fi
|
|
+ if test ! -r $abs_curr_dir/modules.cfg; then
|
|
+ echo "Copying \`modules.cfg'"
|
|
+ cp $abs_ft2_dir/modules.cfg $abs_curr_dir
|
|
+ fi
|
|
+ echo "Generating \`Makefile'"
|
|
+ echo "TOP_DIR := $abs_ft2_dir" > Makefile
|
|
+ echo "OBJ_DIR := $abs_curr_dir" >> Makefile
|
|
+ echo "OBJ_BUILD := \$(OBJ_DIR)" >> Makefile
|
|
+ echo "DOC_DIR := \$(OBJ_DIR)/reference" >> Makefile
|
|
+ echo "FT_LIBTOOL_DIR := \$(OBJ_DIR)" >> Makefile
|
|
+ echo "ifndef FT2DEMOS" >> Makefile
|
|
+ echo " include \$(TOP_DIR)/Makefile" >> Makefile
|
|
+ echo "else" >> Makefile
|
|
+ echo " TOP_DIR_2 := \$(TOP_DIR)/../ft2demos" >> Makefile
|
|
+ echo " PROJECT := freetype" >> Makefile
|
|
+ echo " CONFIG_MK := \$(OBJ_DIR)/config.mk" >> Makefile
|
|
+ echo " include \$(TOP_DIR_2)/Makefile" >> Makefile
|
|
+ echo "endif" >> Makefile
|
|
+fi
|
|
+
|
|
+# call make
|
|
+
|
|
+CFG=
|
|
+# work around zsh bug which doesn't like `${1+"$@"}'
|
|
+case $# in
|
|
+0) ;;
|
|
+*) for x in "$@"; do
|
|
+ case x"$x" in
|
|
+ x--srcdir=* ) CFG="$CFG '$x'/builds/unix" ;;
|
|
+ *) CFG="$CFG '$x'" ;;
|
|
+ esac
|
|
+ done ;;
|
|
+esac
|
|
+CFG=$CFG $GNUMAKE setup unix
|
|
+
|
|
+# eof
|
|
--
|
|
1.7.6.4
|
|
|