| OLD | NEW |
| (Empty) | |
| 1 #!/bin/sh |
| 2 # |
| 3 # Copyright 2002-2015 by |
| 4 # David Turner, Robert Wilhelm, and Werner Lemberg. |
| 5 # |
| 6 # This file is part of the FreeType project, and may only be used, modified, |
| 7 # and distributed under the terms of the FreeType project license, |
| 8 # LICENSE.TXT. By continuing to use, modify, or distribute this file you |
| 9 # indicate that you have read the license and understand and accept it |
| 10 # fully. |
| 11 # |
| 12 # |
| 13 # Call the `configure' script located in `builds/unix'. |
| 14 # |
| 15 |
| 16 rm -f config.mk builds/unix/unix-def.mk builds/unix/unix-cc.mk |
| 17 |
| 18 # respect GNUMAKE environment variable for backwards compatibility |
| 19 if test "x$GNUMAKE" = x; then |
| 20 if test "x$MAKE" = x; then |
| 21 if test "x`make -v 2>/dev/null | egrep 'GNU|makepp'`" = x; then |
| 22 MAKE=gmake |
| 23 else |
| 24 MAKE=make |
| 25 fi |
| 26 fi |
| 27 else |
| 28 MAKE=$GNUMAKE |
| 29 fi |
| 30 |
| 31 if test "x`$MAKE -v 2>/dev/null | egrep 'GNU|makepp'`" = x; then |
| 32 echo "GNU make (>= 3.80) or makepp (>= 1.19) is required to build FreeType2."
>&2 |
| 33 echo "Please try" >&2 |
| 34 echo >&2 |
| 35 echo " MAKE=<GNU make command name> $0" >&2 |
| 36 echo >&2 |
| 37 echo "or" >&2 |
| 38 echo >&2 |
| 39 echo " MAKE=\"makepp --norc-substitution\" $0" >&2 |
| 40 exit 1 |
| 41 fi |
| 42 |
| 43 # Get `dirname' functionality. This is taken and adapted from autoconf's |
| 44 # m4sh.m4 (_AS_EXPR_PREPARE, AS_DIRNAME_EXPR, and AS_DIRNAME_SED). |
| 45 |
| 46 if expr a : '\(a\)' >/dev/null 2>&1; then |
| 47 ft_expr=expr |
| 48 else |
| 49 ft_expr=false |
| 50 fi |
| 51 |
| 52 ft2_dir=`(dirname "$0") 2>/dev/null || |
| 53 $ft_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ |
| 54 X"$0" : 'X\(//\)[^/]' \| \ |
| 55 X"$0" : 'X\(//\)$' \| \ |
| 56 X"$0" : 'X\(/\)' \| \ |
| 57 . : '\(.\)' 2>/dev/null || |
| 58 echo X"$0" | |
| 59 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ |
| 60 s//\1/ |
| 61 q |
| 62 } |
| 63 /^X\(\/\/\)[^/].*/{ |
| 64 s//\1/ |
| 65 q |
| 66 } |
| 67 /^X\(\/\/\)$/{ |
| 68 s//\1/ |
| 69 q |
| 70 } |
| 71 /^X\(\/\).*/{ |
| 72 s//\1/ |
| 73 q |
| 74 } |
| 75 s/.*/./; q'` |
| 76 |
| 77 abs_curr_dir=`pwd` |
| 78 abs_ft2_dir=`cd "$ft2_dir" && pwd` |
| 79 |
| 80 # `--srcdir=' option can override abs_ft2_dir |
| 81 |
| 82 if test $# -gt 0; then |
| 83 for x in "$@"; do |
| 84 case x"$x" in |
| 85 x--srcdir=*) |
| 86 abs_ft2_dir=`echo $x | sed 's/^--srcdir=//'` ;; |
| 87 esac |
| 88 done |
| 89 fi |
| 90 |
| 91 # build a dummy Makefile if we are not building in the source tree; |
| 92 # we use inodes to avoid issues with symbolic links |
| 93 inode_src=`ls -id $abs_ft2_dir | awk '{print $1}'` |
| 94 inode_dst=`ls -id $abs_curr_dir | awk '{print $1}'` |
| 95 |
| 96 if test $inode_src -ne $inode_dst; then |
| 97 if test ! -d reference; then |
| 98 mkdir reference |
| 99 fi |
| 100 if test ! -r $abs_curr_dir/modules.cfg; then |
| 101 echo "Copying \`modules.cfg'" |
| 102 cp $abs_ft2_dir/modules.cfg $abs_curr_dir |
| 103 fi |
| 104 echo "Generating \`Makefile'" |
| 105 echo "TOP_DIR := $abs_ft2_dir" > Makefile |
| 106 echo "OBJ_DIR := $abs_curr_dir" >> Makefile |
| 107 echo "OBJ_BUILD := \$(OBJ_DIR)" >> Makefile |
| 108 echo "DOC_DIR := \$(OBJ_DIR)/reference" >> Makefile |
| 109 echo "FT_LIBTOOL_DIR := \$(OBJ_DIR)" >> Makefile |
| 110 echo "ifndef FT2DEMOS" >> Makefile |
| 111 echo " include \$(TOP_DIR)/Makefile" >> Makefile |
| 112 echo "else" >> Makefile |
| 113 echo " TOP_DIR_2 := \$(TOP_DIR)/../ft2demos" >> Makefile |
| 114 echo " PROJECT := freetype" >> Makefile |
| 115 echo " CONFIG_MK := \$(OBJ_DIR)/config.mk" >> Makefile |
| 116 echo " include \$(TOP_DIR_2)/Makefile" >> Makefile |
| 117 echo "endif" >> Makefile |
| 118 fi |
| 119 |
| 120 # call make |
| 121 |
| 122 CFG= |
| 123 # work around zsh bug which doesn't like `${1+"$@"}' |
| 124 case $# in |
| 125 0) ;; |
| 126 *) for x in "$@"; do |
| 127 case x"$x" in |
| 128 x--srcdir=* ) CFG="$CFG '$x'/builds/unix" ;; |
| 129 *) CFG="$CFG '$x'" ;; |
| 130 esac |
| 131 done ;; |
| 132 esac |
| 133 CFG=$CFG $MAKE setup unix |
| 134 |
| 135 # eof |
| OLD | NEW |