lilypond-0.0.44
[lilypond.git] / configure.in
blob309488cae9181f8de5d1345e9a61a99de1552d27
1 dnl Process this file with autoconf to produce a configure script. -*-shell-script-*-
3 dnl should cache result.
4 dnl should  look in $prefix first.
6 AC_DEFUN(AC_TEX_SUBDIR, [
8     # do something sensible if root hasn't specced dir yet attempts install
10     AC_MSG_CHECKING(TeX installation directory)
12     ac_tmp_prefix=$prefix
13     test "x$ac_tmp_prefix" = xNONE && ac_tmp_prefix=$ac_default_prefix
15     for texdir in $ac_tmp_prefix $ac_tmp_prefix/lib; do
16         if test -d $texdir/texmf; then
17             TEXTOP=$texdir/texmf
18             break
19         else    
20         if test -d $texdir/tex; then 
21             TEXTOP=$texdir/tex
22             break
23         fi
24         fi
25     done
26     $1=$ac_tmp_prefix/lib/texmf/tex
27     if test x = "x$TEXTOP"; then
28         AC_MSG_WARN(Cannot determine a tex-directory. Please use --enable-texprefix)
29     else
30         $1=`$FIND $TEXTOP -type d -a -name tex -print |sort|head -1`
31     fi
32     fi
34     AC_MSG_RESULT($$1)
37 AC_INIT(flower/choleski.cc)
40 AC_LANG_CPLUSPLUS
42 AC_ARG_ENABLE(printing,
43         [  enable-printing        set debug printing],
44         [],
45         [DEFINES="$DEFINES -DNPRINT=1"])
46 AC_ARG_ENABLE(checking,
47         [  disable-checking       set runtime checks],
48         [DEFINES="$DEFINES -DNDEBUG=1"],
49         [])
50 AC_ARG_ENABLE(debug,
51         [  disable-debug          set debug info],
52         [],
53         [DEFINES="$DEFINES -g"])
54 AC_ARG_ENABLE(optimise,
55         [  enable-optimise       use maximal speed optimisations],
56         [DEFINES="$DEFINES -O2 -DSTRING_UTILS_INLINED"])
57 AC_ARG_ENABLE(profiling,
58         [  enable-profiling      compile with gprof support],
59         [DEFINES="$DEFINES -pg"])
60 AC_ARG_ENABLE(texprefix,
61         [  texprefix=DIR  set the tex-directory to put the lilypond subdir in.],
62         [TEXPREFIX=$enableval],
63         [TEXPREFIX=auto] )
65 dnl COMPILEINFO="$HOST $host $TARGET $target"
66 AUTOHEADER="This file was automatically generated by configure"
67 CXXFLAGS=${CXXFLAGS:-""}        # we don't want -g -O junk
68 AC_PROG_CXX
69 AC_PROG_RANLIB
70 AC_PROG_INSTALL
71 AC_CHECK_PROGS(FIND, find, error)
73 dnl should check out -print
74 if test FIND = error; then
75    AC_MSG_WARN(Couldn't find \`find'.  Please use --enable-texprefix)
76 else 
77     
78 AC_SUBST(DEFINES)
79 AC_SUBST(COMPILEINFO)
80 AC_SUBST(AUTOHEADER)
81 AC_SUBST(BISON)
82 AC_SUBST(FLEX)
83 AC_SUBST(TEXPREFIX)
86 AC_CHECK_PROGS(BISON, bison, error)
87 AC_CHECK_PROGS(FLEX, flex, error)
88 AC_CHECK_PROGS(MAKE, make, error)
89 AC_CHECK_PROGS(PODMAN, pod2man, error)
91 if test $TEXPREFIX = auto ; then
92     AC_TEX_SUBDIR(TEXPREFIX)
95 if test $MAKE = "error" 
96 then
97         AC_MSG_ERROR(Please install GNU make)
98 else
99         $MAKE -v| grep -q GNU
100         if test "$?" = 1
101         then
102                 AC_MSG_WARN(Please install *GNU* make)
103         fi
107 if test $BISON = "error" 
108 then
109         AC_MSG_WARN(can't find bison. Please install Bison (1.24 or better))
112 if test $PODMAN = "error" 
113 then
114         AC_MSG_WARN(can't find pod. You should install Perl (version 5 or better))
117 if test $FLEX = "error" 
118 then
119         AC_MSG_WARN(can't find flex. Please install Flex (2.5 or better))
122 if $CXX --version | grep -q '2\.7'
123 then
124         true
125 else
126         AC_MSG_WARN(can't find g++ 2.7)
129 AC_CHECK_HEADER(FlexLexer.h, true,
130         AC_MSG_ERROR(can't find flex header. Please install Flex headers correctly))
131 AC_CONFIG_SUBDIRS(flower)
132 AC_OUTPUT(make/out/Configure_variables.make:make/Configure_variables.make.in)
136 dnl URG!!!!!!
137 eval "DIR_DATADIR=$datadir"
138 DIR_DATADIR="$DIR_DATADIR/lilypond"
139 AC_MSG_CHECKING
141 cat << EOF > lib/out/config.hh
143 /* automatically generated by configure */
144 /* include this file only once! */
146 #define  DIR_DATADIR "$DIR_DATADIR"
150 CXX="$ac_cv_prog_CXX" bin/make_version >> lib/out/config.hh
152 touch make/out/Site.make
154 # ugr
155 (cd mi2mu; CXX="$ac_cv_prog_CXX" ../bin/make_version > out/version.hh
156 dnl    echo 0 > out/.build
158 # rgu
159 sed 's/TOPLEVEL_//g' <  .version >  lily/.version
160 (cd lily; CXX="$ac_cv_prog_CXX" ../bin/make_version > out/version.hh
161 dnl    echo 0 > out/.build
163  (cd flower;
164 dnl    echo 0 > out/.build
166 cat << END
168 Finished configuring. For making everything, do:
170         make all
172 If you only want help on the make targets, do a
174         make help