source: tags/release-1.0.2/configure.ac

Last change on this file was 121, checked in by Matthew Whiting, 18 years ago

Added CHANGES for version 1.0.2.
Updated configure.ac to include the new version number and created new
configure script.

File size: 6.9 KB
Line 
1#                                               -*- Autoconf -*-
2# Process this file with autoconf to produce a configure script.
3
4AC_PREREQ(2.57)
5AC_INIT([Duchamp], [1.0.2], [Matthew.Whiting@csiro.au])
6AC_CONFIG_SRCDIR([src/param.cc])
7AC_CONFIG_HEADER([src/config.h])
8
9# Checks for programs.
10AC_PROG_CXX
11AC_PROG_CC
12AC_PROG_CPP
13
14# Checks for libraries.
15AC_CHECK_LIB([g2c], [gerror_])
16AC_CHECK_LIB([m], [log])
17
18# Checks for header files.
19AC_HEADER_STDC
20AC_CHECK_HEADERS([stdlib.h string.h unistd.h time.h math.h])
21
22# Checks for typedefs, structures, and compiler characteristics.
23AC_HEADER_STDBOOL
24AC_C_CONST
25AC_C_INLINE
26
27# Checks for library functions.
28AC_FUNC_STRTOD
29AC_CHECK_FUNCS([floor pow sqrt strtol log atan fabs])
30
31# Look for a Fortran compiler.
32AC_PROG_F77
33if test "x$F77" = x; then
34  AC_MSG_WARN([Fortran compiler not found])
35else
36  if test "x$ac_cv_f77_compiler_gnu" = xyes ; then
37    FFLAGS="$FFLAGS -Wno-globals"
38  fi
39
40  AC_MSG_CHECKING(whether $F77 accepts -I)
41  AC_LANG_PUSH(Fortran 77)
42  FFLAGS_save=$FFLAGS
43  FFLAGS=-I.
44  AC_TRY_COMPILE([], [], [FFLAGS="$FFLAGS_save -I."; AC_MSG_RESULT(yes)],
45    [FFLAGS="$FFLAGS_save"; AC_MSG_RESULT(no)])
46  AC_LANG_POP(Fortran 77)
47fi
48
49# Extra places to look for third-party include files and libraries.
50INCDIRS="$INCDIRS           \
51         /usr/include       \
52         /usr/local/include \
53         /usr/local/pgplot  \
54         /usr/local/cfitsio \
55         /usr/local/wcslib  \
56         /local/pgplot      \
57         /local/cfitsio     \
58         /opt/local/include"
59
60LIBDIRS="$LIBDIRS           \
61         /usr/lib           \
62         /usr/local/lib     \
63         /usr/local/pgplot  \
64         /usr/local/cfitsio \
65         /usr/local/wcslib  \
66         /local/lib         \
67         /local/pgplot      \
68         /local/cfitsio     \
69         /opt/SUNWspro/lib  \
70         /opt/local/lib"
71
72AC_MSG_NOTICE(LIBDIRS)
73
74for LIBDIR in $LIBDIRS ; do
75  AC_CHECK_FILE([$LIBDIR], [LDFLAGS="$LDFLAGS -L$LIBDIR"], [continue])
76done
77
78##########################################################################
79# Search for PGPLOT
80
81for INCDIR in $INCDIRS ; do
82  AC_CHECK_FILE([$INCDIR/cpgplot.h], [PGPLOTINC=-I$INCDIR; break])
83  INCDIR=$INCDIR/pgplot
84  AC_CHECK_FILE([$INCDIR/cpgplot.h], [PGPLOTINC=-I$INCDIR; break])
85done
86
87# PGPLOT compiled with a SUN compiler but linked with something else.
88AC_CHECK_LIB([sunmath], [cosd],      [PGPLOTLIB="-lsunmath $PGPLOTLIB"],
89             [], [$PGPLOTLIB $LIBS])
90AC_CHECK_LIB([M77],     [iand_],     [PGPLOTLIB="-lM77 $PGPLOTLIB"],
91             [], [$PGPLOTLIB $LIBS])
92AC_CHECK_LIB([F77],     [f77_init],  [PGPLOTLIB="-lF77 $PGPLOTLIB"],
93             [], [$PGPLOTLIB $LIBS])
94# PGPLOT compiled with a GNU compiler but linked with something else.
95AC_CHECK_LIB([m],       [log],       [PGPLOTLIB="-lm $PGPLOTLIB"])
96AC_CHECK_LIB([g2c],     [gerror_],   [PGPLOTLIB="-lg2c $PGPLOTLIB"],
97             [], [$PGPLOTLIB $LIBS])
98
99# Search for X11 includes and libraries.
100AC_PATH_X
101if test "x$ac_x_libraries" != x; then
102  LDFLAGS="$LDFLAGS -L$ac_x_libraries"
103  PGPLOTLIB="-lX11 $PGPLOTLIB"
104fi
105
106# It is possible that other libraries may be required depending on what
107# graphics drivers were installed with PGPLOT.
108AC_CHECK_LIB([z],       [deflate],   [PGPLOTLIB="-lz $PGPLOTLIB"],
109             [], [$PGPLOTLIB $LIBS])
110AC_CHECK_LIB([png],     [png_error], [PGPLOTLIB="-lpng $PGPLOTLIB"],
111             [], [$PGPLOTLIB $LIBS])
112AC_CHECK_LIB([pgplot],  [pgbeg_],    [PGPLOTLIB="-lpgplot $PGPLOTLIB"],
113             [], [$PGPLOTLIB $LIBS])
114AC_CHECK_LIB([cpgplot], [cpgopen],   [PGPLOTLIB="-lcpgplot $PGPLOTLIB"],
115             [PGPLOTLIB=], [$PGPLOTLIB $LIBS])
116
117if test "x$PGPLOTLIB" = x; then
118  AC_MSG_ERROR([
119    -------------------------------------------------------
120    Could not find the PGPLOT library.
121
122    ERROR: Duchamp configuration failure.
123    -------------------------------------------------------], [1])
124else
125  AC_MSG_NOTICE([PGPLOT appears to be available.])
126  AC_DEFINE([HAVE_PGPLOT], [1], [Define to 1 if PGPLOT is available.])
127fi
128
129AC_SUBST([PGPLOTINC])
130AC_SUBST([PGPLOTLIB])
131##########################################################################
132
133##########################################################################
134# Search for CFITSIO.
135for INCDIR in $INCDIRS ; do
136  AC_CHECK_FILE([$INCDIR/fitsio.h], [CFITSIOINC=-I$INCDIR; break])
137  INCDIR=$INCDIR/cfitsio
138  AC_CHECK_FILE([$INCDIR/fitsio.h], [CFITSIOINC=-I$INCDIR; break])
139done
140
141AC_CHECK_LIB([socket],  [recv],   [CFITSIOLIB="-lsocket"], [], [$LIBS])
142AC_CHECK_LIB([cfitsio], [ffopen], [CFITSIOLIB="-lcfitsio $CFITSIOLIB"], [],
143             [$CFITSIOLIB $LIBS])
144
145if test "x$CFITSIOINC" = x -o "x$CFITSIOLIB" = x; then
146  AC_MSG_ERROR([
147    -------------------------------------------------------
148    Could not find the CFITSIO library.
149
150    ERROR: Duchamp configuration failure.
151    -------------------------------------------------------], [1])
152else
153  for LIBDIR in $LIBDIRS ; do
154    AC_CHECK_FILE([$LIBDIR/libcfitsio.a], [CFITSIOLIB="-L$LIBDIR $CFITSIOLIB"; break])
155    LIBDIR=$LIBDIR/cfitsio
156    AC_CHECK_FILE([$LIBDIR/libcfitsio.a], [CFITSIOLIB="-L$LIBDIR $CFITSIOLIB"; break])
157  done
158  AC_MSG_NOTICE([CFITSIO appears to be available.])
159  AC_DEFINE([HAVE_CFITSIO], [1], [Define to 1 if CFITSIO is available.])
160fi
161
162AC_SUBST([CFITSIOINC])
163AC_SUBST([CFITSIOLIB])
164##########################################################################
165
166##########################################################################
167# Search for WCSLIB.
168for INCDIR in $INCDIRS ; do
169  AC_CHECK_FILE([$INCDIR/wcs.h], [WCSINC="-I$INCDIR $WCSINC"; break])
170  INCDIR=$INCDIR/wcslib
171  AC_CHECK_FILE([$INCDIR/wcs.h], [WCSINC="-I$INCDIR $WCSINC"; break])
172done
173for INCDIR in $INCDIRS ; do
174  AC_CHECK_FILE([$INCDIR/cpgsbox.h], [WCSINC="-I$INCDIR $WCSINC"; break])
175  INCDIR=$INCDIR/wcslib
176  AC_CHECK_FILE([$INCDIR/cpgsbox.h], [WCSINC="-I$INCDIR $WCSINC"; break])
177done
178
179AC_CHECK_LIB([wcs], [wcss2p], [WCSLIB="-lwcs $WCSLIB"], [],
180             [$WCSLIB $LIBS $CFITSIOLIB $PGPLOTLIB])
181AC_CHECK_LIB([pgsbox], [cpgsbox], [WCSLIB="-lpgsbox $WCSLIB"], [],
182             [$WCSLIB $LIBS $CFITSIOLIB $PGPLOTLIB])
183
184if test "x$WCSINC" = x -o "x$WCSLIB" = x; then
185  AC_MSG_ERROR([
186    -------------------------------------------------------
187    Could not find the WCSLIB library.
188
189    ERROR: Duchamp configuration failure.
190    -------------------------------------------------------], [1])
191else
192  for LIBDIR in $LIBDIRS ; do
193    AC_CHECK_FILE([$LIBDIR/libwcs.a], [WCSLIB="-L$LIBDIR $WCSLIB"; break])
194    LIBDIR=$LIBDIR/wcs
195    AC_CHECK_FILE([$LIBDIR/libwcs.a], [WCSLIB="-L$LIBDIR $WCSLIB"; break])
196  done
197  for LIBDIR in $LIBDIRS ; do
198    AC_CHECK_FILE([$LIBDIR/libpgsbox.a], [WCSLIB="-L$LIBDIR $WCSLIB"; break])
199    LIBDIR=$LIBDIR/wcs
200    AC_CHECK_FILE([$LIBDIR/libpgsbox.a], [WCSLIB="-L$LIBDIR $WCSLIB"; break])
201  done
202  AC_MSG_NOTICE([WCSLIB appears to be available.])
203  AC_DEFINE([HAVE_WCSLIB], [1], [Define to 1 if WCSLIB is available.])
204fi
205
206AC_SUBST([WCSINC])
207AC_SUBST([WCSLIB])
208##########################################################################
209
210AC_SUBST([LDFLAGS])
211
212AC_CONFIG_FILES([Makefile])
213AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.