summaryrefslogtreecommitdiff
path: root/buildconf
blob: 1fad4f7fea014b3d2af2ca6010e88b2714228f4f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
#!/bin/sh

# do some version checking for the tools we use
if test "$1" = "--force"; then
    shift
elif test -r buildconf.stamp ; then 
    :
else
    echo "buildconf: checking installation..."

    # autoconf 2.13 or newer
    ac_version=`autoconf --version 2>/dev/null|head -1|sed -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'`
    if test "$ac_version" = ""; then
	echo "buildconf: autoconf not found."
	echo "           You need autoconf version 2.13 or newer installed"
	echo "           to build PHP from CVS."
	exit 1
    fi
    IFS=.; set $ac_version; IFS=' '
    if test "$1" = "2" -a "$2" -lt "13" || test "$1" -lt "2"; then
	echo "buildconf: autoconf version $ac_version found."
	echo "           You need autoconf version 2.13 or newer installed"
	echo "           to build PHP from CVS."
	exit 1
    else
	echo "buildconf: autoconf version $ac_version (ok)"
    fi

    # automake 1.4 or newer
    am_version=`automake --version 2>/dev/null|head -1|sed -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'`
    if test "$am_version" = ""; then
	echo "buildconf: automake not found."
	echo "           You need automake version 1.4 or newer installed"
	echo "           to build PHP from CVS."
	exit 1
    fi
    IFS=.; set $am_version; IFS=' '
    if test "$1" = "1" -a "$2" -lt "4" || test "$1" -lt "1"; then
	echo "buildconf: automake version $am_version found."
	echo "           You need automake version 1.4 or newer installed"
	echo "           to build PHP from CVS."
	exit 1
    else
	echo "buildconf: automake version $am_version (ok)"
    fi

    # libtool 1.2f or newer
    lt_pversion=`libtool --version 2>/dev/null|sed -e 's/^[^0-9]*//' -e 's/ .*//'`
    if test "$lt_pversion" = ""; then
	echo "buildconf: libtool not found."
	echo "           You need libtool version 1.3 or newer installed"
	echo "           to build PHP from CVS."
	exit 1
    fi
    lt_version=`echo $lt_pversion|sed -e 's/\([a-z]*\)$/.\1/'`
    IFS=.; set $lt_version; IFS=' '
    if test "$1" -gt "1" || test "$2" -ge "3" || test "$2" = "2" -a "$3" = "f"
    then
	echo "buildconf: libtool version $lt_pversion (ok)"
    else
	echo "buildconf: libtool version $lt_pversion found."
	echo "           You need libtool version 1.2f or newer installed"
	echo "           to build PHP from CVS."
	exit 1
    fi
    
    touch buildconf.stamp
fi

if test "$1" = "--copy"; then
    automake_flags=--copy
fi

if test ! -d libzend; then
    if test -d ../libzend; then
	echo "buildconf: linking ../libzend to ./libzend"
        ln -s ../libzend .
    else
        echo "buildconf: can not find libzend"
        echo "           libzend should be installed in . or .."
	exit 1
    fi
fi
if test ! -d TSRM; then
    if test -d ../TSRM; then
	echo "buildconf: linking ../TSRM to ./TSRM"
        ln -s ../TSRM .
    else
        echo "buildconf: can not find TSRM"
        echo "           TSRM should be installed in . or .."
	exit 1
    fi
fi

./scripts/preconfig

libtoolize --automake $automake_flags --force

mv aclocal.m4 aclocal.m4.old 2>/dev/null
aclocal
if cmp aclocal.m4.old aclocal.m4 > /dev/null 2>&1; then
    echo "buildconf: keeping aclocal.m4"
    mv aclocal.m4.old aclocal.m4
else
    echo "buildconf: created or modified aclocal.m4"
fi

autoheader

automake --add-missing --include-deps $automake_flags

mv configure configure.old 2>/dev/null
autoconf
if cmp configure.old configure > /dev/null 2>&1; then
    echo "buildconf: keeping configure"
    mv configure.old configure
else
    echo "buildconf: created or modified configure"
fi

(cd libzend; ./buildconf libzend/)
(cd TSRM; ./buildconf TSRM/)