Initialize Tizen 2.3
[framework/graphics/freetype.git] / autogen.sh
1 #!/bin/sh
2
3 # Copyright 2005, 2006, 2007, 2008, 2009, 2010 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 run ()
13 {
14   echo "running \`$*'"
15   eval $*
16
17   if test $? != 0 ; then
18     echo "error while running \`$*'"
19     exit 1
20   fi
21 }
22
23 get_major_version ()
24 {
25   echo $1 | sed -e 's/\([0-9][0-9]*\)\..*/\1/g'
26 }
27
28 get_minor_version ()
29 {
30   echo $1 | sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/g'
31 }
32
33 get_patch_version ()
34 {
35   # tricky: some version numbers don't include a patch
36   # separated with a point, but something like 1.4-p6
37   patch=`echo $1 | sed -e 's/[0-9][0-9]*\.[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/g'`
38   if test "$patch" = "$1"; then
39     patch=`echo $1 | sed -e 's/[0-9][0-9]*\.[0-9][0-9]*\-p\([0-9][0-9]*\).*/\1/g'`
40     # if there isn't any patch number, default to 0
41     if test "$patch" = "$1"; then
42       patch=0
43     fi
44   fi
45   echo $patch
46 }
47
48 # $1: version to check
49 # $2: minimum version
50
51 compare_to_minimum_version ()
52 {
53   MAJOR1=`get_major_version $1`
54   MAJOR2=`get_major_version $2`
55   if test $MAJOR1 -lt $MAJOR2; then
56     echo 0
57     return
58   else 
59     if test $MAJOR1 -gt $MAJOR2; then
60       echo 1
61       return
62     fi
63   fi
64
65   MINOR1=`get_minor_version $1`
66   MINOR2=`get_minor_version $2`
67   if test $MINOR1 -lt $MINOR2; then
68     echo 0
69     return
70   else 
71     if test $MINOR1 -gt $MINOR2; then
72       echo 1
73       return
74     fi
75   fi
76
77   PATCH1=`get_patch_version $1`
78   PATCH2=`get_patch_version $2`
79   if test $PATCH1 -lt $PATCH2; then
80     echo 0
81   else
82     echo 1
83   fi
84 }
85
86 # check the version of a given tool against a minimum version number
87 #
88 # $1: tool path
89 # $2: tool usual name (e.g. `aclocal')
90 # $3: tool variable  (e.g. `ACLOCAL')
91 # $4: minimum version to check against
92 # $5: option field index used to extract the tool version from the
93 #     output of --version
94
95 check_tool_version ()
96 {
97   field=$5
98   # assume the output of "[TOOL] --version" is "toolname (GNU toolname foo bar) version"
99   if test "$field"x = x; then
100     field=3  # default to 3 for all GNU autotools, after filtering enclosed string
101   fi
102   version=`$1 --version | head -1 | sed 's/([^)]*)/()/g' | cut -d ' ' -f $field`
103   version_check=`compare_to_minimum_version $version $4`
104   if test "$version_check"x = 0x; then
105     echo "ERROR: Your version of the \`$2' tool is too old."
106     echo "       Minimum version $4 is required (yours is version $version)."
107     echo "       Please upgrade or use the $3 variable to point to a more recent one."
108     echo ""
109     exit 1
110   fi
111 }
112
113 if test ! -f ./builds/unix/configure.raw; then
114   echo "You must be in the same directory as \`autogen.sh'."
115   echo "Bootstrapping doesn't work if srcdir != builddir."
116   exit 1
117 fi
118
119 # On MacOS X, the GNU libtool is named `glibtool'.
120 HOSTOS=`uname`
121 if test "$LIBTOOLIZE"x != x; then
122   :
123 elif test "$HOSTOS"x = Darwinx; then
124   LIBTOOLIZE=glibtoolize
125 else
126   LIBTOOLIZE=libtoolize
127 fi
128
129 if test "$ACLOCAL"x = x; then
130   ACLOCAL=aclocal
131 fi
132
133 if test "$AUTOCONF"x = x; then
134   AUTOCONF=autoconf
135 fi
136
137 check_tool_version $ACLOCAL    aclocal    ACLOCAL    1.10.1
138 check_tool_version $LIBTOOLIZE libtoolize LIBTOOLIZE 2.2.4
139 check_tool_version $AUTOCONF   autoconf   AUTOCONF   2.62
140
141 # This sets freetype_major, freetype_minor, and freetype_patch.
142 eval `sed -nf version.sed include/freetype/freetype.h`
143
144 # We set freetype-patch to an empty value if it is zero.
145 if test "$freetype_patch" = ".0"; then
146   freetype_patch=
147 fi
148
149 cd builds/unix
150
151 echo "generating \`configure.ac'"
152 sed -e "s;@VERSION@;$freetype_major$freetype_minor$freetype_patch;" \
153   < configure.raw > configure.ac
154
155 run aclocal -I . --force
156 run $LIBTOOLIZE --force --copy --install
157 run autoconf --force
158
159 chmod +x mkinstalldirs
160 chmod +x install-sh
161
162 cd ../..
163
164 chmod +x ./configure
165
166 # EOF