| [c746b4d] | 1 | dnl Process this file with autoconf to produce a configure script |
|---|
| [483ac4e] | 2 | |
|---|
| [a884696] | 3 | dnl Need autoconf 2.50 or later for AC_ARG_VAR. 2.59 has been around for |
|---|
| 4 | dnl long enough, that we might as well just require that. |
|---|
| 5 | AC_PREREQ(2.59) |
|---|
| [d034033] | 6 | AC_INIT([survex], [1.2.40], [https://trac.survex.com/]) |
|---|
| [6e0cdc2c] | 7 | AM_INIT_AUTOMAKE([1.5 gnu -Wall -Wportability -Werror]) |
|---|
| [191536f] | 8 | RELEASE=1 |
|---|
| [79b37a4c] | 9 | |
|---|
| [5636835] | 10 | AC_SUBST(RELEASE) |
|---|
| [e02a6a6] | 11 | AC_CONFIG_HEADERS([config.h]) |
|---|
| [5b7b184] | 12 | AC_CONFIG_SRCDIR([src/aven.cc]) |
|---|
| [96cc0ab] | 13 | |
|---|
| [66d93d5] | 14 | COPYRIGHT_MSG="Copyright (C) 1990-2018 Olly Betts" |
|---|
| [920b066] | 15 | AVEN_COPYRIGHT_MSG="Copyright (C) 1999-2003,2005,2006 Mark R. Shinwell" |
|---|
| [55302e3] | 16 | |
|---|
| [8c05f13] | 17 | AC_DEFINE_UNQUOTED(COPYRIGHT_MSG, ["$COPYRIGHT_MSG"], [Copyright Message]) |
|---|
| 18 | AC_DEFINE_UNQUOTED(AVEN_COPYRIGHT_MSG, ["$AVEN_COPYRIGHT_MSG"], |
|---|
| [99f252b] | 19 | [Copyright Message for Aven]) |
|---|
| 20 | |
|---|
| 21 | AC_SUBST(COPYRIGHT_MSG) |
|---|
| 22 | AC_SUBST(AVEN_COPYRIGHT_MSG) |
|---|
| [706b033] | 23 | |
|---|
| [5627cbb] | 24 | COPYRIGHT_MSG_UTF8=`echo "$COPYRIGHT_MSG"|sed 's/(C)/©/'` |
|---|
| 25 | AVEN_COPYRIGHT_MSG_UTF8=`echo "$AVEN_COPYRIGHT_MSG"|sed 's/(C)/©/'` |
|---|
| 26 | |
|---|
| 27 | AC_DEFINE_UNQUOTED(COPYRIGHT_MSG_UTF8, ["$COPYRIGHT_MSG_UTF8"], |
|---|
| 28 | [Copyright Message in UTF-8]) |
|---|
| 29 | AC_DEFINE_UNQUOTED(AVEN_COPYRIGHT_MSG_UTF8, ["$AVEN_COPYRIGHT_MSG_UTF8"], |
|---|
| 30 | [Copyright Message for Aven in UTF-8]) |
|---|
| 31 | |
|---|
| [1d43ee5] | 32 | dnl set PRETTYPACKAGE to PACKAGE with the first character capitalised |
|---|
| [21fbe7d] | 33 | PRETTYPACKAGE=`echo "$PACKAGE"|cut -b1|tr a-z A-Z``echo "$PACKAGE"|cut -b2-` |
|---|
| [82afbc4] | 34 | AC_DEFINE_UNQUOTED(PRETTYPACKAGE, "$PRETTYPACKAGE", |
|---|
| [99f252b] | 35 | [Name of package (capitalised)]) |
|---|
| [aa931b2] | 36 | AC_SUBST(PRETTYPACKAGE) |
|---|
| 37 | |
|---|
| [e2546c0] | 38 | dnl set COMMAVERSION to VERSION with the dots replaced by commas - |
|---|
| 39 | dnl e.g. "0,99" or "1,0,22" |
|---|
| [21fbe7d] | 40 | COMMAVERSION=`echo "$VERSION"|tr '.' ','` |
|---|
| [e2546c0] | 41 | AC_DEFINE_UNQUOTED(COMMAVERSION, $COMMAVERSION, |
|---|
| [1db3fa5] | 42 | [Version number of package (comma-separated)]) |
|---|
| [e2546c0] | 43 | AC_SUBST(COMMAVERSION) |
|---|
| 44 | |
|---|
| [d0a7bba] | 45 | PKGDOCDIR='${prefix}/share/doc/${PACKAGE}' |
|---|
| [4b4bd47] | 46 | AC_ARG_ENABLE(docdir, |
|---|
| 47 | [ --enable-docdir=DIR Set directory for installing documentation to DIR], |
|---|
| [21fbe7d] | 48 | [case $enableval in |
|---|
| [4b4bd47] | 49 | yes|no) |
|---|
| 50 | AC_MSG_ERROR([configure: Syntax: configure --enable-docdir=DIR]) ;; |
|---|
| 51 | esac |
|---|
| [ab27074] | 52 | PKGDOCDIR="$enableval" |
|---|
| [4b4bd47] | 53 | ] |
|---|
| 54 | ) |
|---|
| [21fbe7d] | 55 | PKGDOCDIR_EXPANDED=`( |
|---|
| 56 | test NONE = "$prefix" && prefix="$ac_default_prefix" |
|---|
| 57 | test NONE = "$exec_prefix" && exec_prefix="$prefix" |
|---|
| 58 | eval echo "$PKGDOCDIR" |
|---|
| 59 | )` |
|---|
| [4b4bd47] | 60 | AC_SUBST(PKGDOCDIR) |
|---|
| [9b579156] | 61 | AC_SUBST(PKGDOCDIR_EXPANDED) |
|---|
| [4b4bd47] | 62 | |
|---|
| [4d0204a] | 63 | AC_CANONICAL_HOST |
|---|
| [984f49e] | 64 | |
|---|
| [55302e3] | 65 | dnl Checks for programs. |
|---|
| 66 | AC_PROG_CC |
|---|
| [f78ad72] | 67 | AC_PROG_CPP |
|---|
| [5809313] | 68 | |
|---|
| [f665d6e] | 69 | AC_PROG_CXX |
|---|
| 70 | AC_PROG_CXXCPP |
|---|
| [039fb01] | 71 | |
|---|
| [4a7c2f0d] | 72 | dnl Probe for any options needed to enable C++11 support. |
|---|
| 73 | AX_CXX_COMPILE_STDCXX_11 |
|---|
| 74 | |
|---|
| [c13d1930] | 75 | AM_PROG_CC_C_O |
|---|
| 76 | |
|---|
| [0fd7598] | 77 | AC_LANG_C |
|---|
| [55302e3] | 78 | |
|---|
| [5dd874a] | 79 | AC_C_INLINE |
|---|
| 80 | |
|---|
| [96cc0ab] | 81 | AC_EXEEXT |
|---|
| 82 | AC_OBJEXT |
|---|
| 83 | |
|---|
| [2032841] | 84 | mswindows=no |
|---|
| 85 | macosx=no |
|---|
| [21fbe7d] | 86 | case $host_os in |
|---|
| [2032841] | 87 | darwin*) macosx=yes ;; |
|---|
| [4d0204a] | 88 | *mingw*|*cygwin*|windows*) mswindows=yes ;; |
|---|
| 89 | esac |
|---|
| 90 | |
|---|
| [21c226e] | 91 | AC_C_BIGENDIAN |
|---|
| [bd63572] | 92 | |
|---|
| [c746b4d] | 93 | AC_ARG_VAR(STRIP, [Command for discarding symbols from object files]) |
|---|
| [4a6f8f6] | 94 | AC_PATH_TOOL(STRIP, strip, [echo "not stripping "]) |
|---|
| [55302e3] | 95 | |
|---|
| [647407d] | 96 | AC_CHECK_LIB(m, sqrt) |
|---|
| 97 | |
|---|
| [665029b9] | 98 | AC_PATH_XTRA |
|---|
| 99 | |
|---|
| [7e2f708] | 100 | dnl The wxWidgets libraries we need: |
|---|
| 101 | wx_libs="core,gl,html" |
|---|
| 102 | |
|---|
| [a3f519b] | 103 | AC_ARG_VAR(WXCONFIG, [Old name for WX_CONFIG, accepted for compatibility]) |
|---|
| 104 | AC_ARG_VAR(WX_CONFIG, [wxWidgets configuration script to use to build Aven]) |
|---|
| 105 | : ${WX_CONFIG="$WXCONFIG"} |
|---|
| [bd9730c] | 106 | |
|---|
| [ab27074] | 107 | AM_CONDITIONAL(WIN32, [test yes = "$mswindows"]) |
|---|
| [4d0204a] | 108 | AM_CONDITIONAL(MACOSX, [test yes = "$macosx"]) |
|---|
| [b9bd864] | 109 | |
|---|
| [a3f519b] | 110 | if test -n "$WX_CONFIG" ; then |
|---|
| 111 | dnl WX_CONFIG specified - sanity check the value |
|---|
| [f665d6e] | 112 | dnl don't check for --ldflags - older wx-config didn't do that |
|---|
| [7e2f708] | 113 | if (exec >&5 2>&5;$WX_CONFIG --libs --cflags --cxxflags "$wx_libs";exit $?) then |
|---|
| [f665d6e] | 114 | : |
|---|
| [b9bd864] | 115 | else |
|---|
| [5297c43] | 116 | AC_MSG_ERROR(['$WX_CONFIG --libs --cflags --cxxflags "$wx_libs"' does not work, bailing out]) |
|---|
| [f665d6e] | 117 | fi |
|---|
| 118 | else |
|---|
| 119 | if test yes = "$macosx" ; then |
|---|
| 120 | wxdef=__WXMAC__ |
|---|
| 121 | elif test yes = "$mswindows" ; then |
|---|
| 122 | wxdef=__WXMSW__ |
|---|
| 123 | else |
|---|
| 124 | wxdef=__WXGTK__ |
|---|
| 125 | fi |
|---|
| [5297c43] | 126 | dnl See if wx-config exists and is for the correct version. |
|---|
| [034d9a57] | 127 | dnl Fedora install wx3's wx-config as wx-config-3.0, so look for that in |
|---|
| 128 | dnl preference. |
|---|
| 129 | AC_PATH_PROGS(WX_CONFIG, [wx-config-3.0 wx-config]) |
|---|
| [5297c43] | 130 | if test -n "$WX_CONFIG" ; then |
|---|
| 131 | if (exec >&5 2>&5;$WX_CONFIG --cflags "$wx_libs"|grep -e -D"$wxdef";exit $?) then |
|---|
| 132 | : |
|---|
| 133 | else |
|---|
| 134 | AC_MSG_ERROR([wxWidgets not for the right toolkit. Run ./configure WX_CONFIG=/path/to/wx-config]) |
|---|
| [b9bd864] | 135 | fi |
|---|
| [5297c43] | 136 | else |
|---|
| [a3f519b] | 137 | AC_MSG_ERROR([wxWidgets not found. Run ./configure WX_CONFIG=/path/to/wx-config]) |
|---|
| [b9bd864] | 138 | fi |
|---|
| [5809313] | 139 | fi |
|---|
| [0fd7598] | 140 | |
|---|
| [5627cbb] | 141 | dnl Unless the user has explicitly specified a --unicode setting, prefer |
|---|
| 142 | dnl --unicode=yes if we can get it. |
|---|
| 143 | case $WX_CONFIG in |
|---|
| 144 | *--unicode=*) ;; |
|---|
| 145 | *) |
|---|
| [7e2f708] | 146 | if (exec >&5 2>&5;$WX_CONFIG --unicode=yes --version "$wx_libs";exit $?) ; then |
|---|
| [5627cbb] | 147 | WX_CONFIG="$WX_CONFIG --unicode=yes" |
|---|
| [7e2f708] | 148 | elif (exec >&5 2>&5;$WX_CONFIG --unicode=no --version "$wx_libs";exit $?) ; then |
|---|
| [5627cbb] | 149 | WX_CONFIG="$WX_CONFIG --unicode=no" |
|---|
| 150 | fi ;; |
|---|
| 151 | esac |
|---|
| [7092fcb] | 152 | |
|---|
| [7e2f708] | 153 | WX_LIBS=`$WX_CONFIG --libs "$wx_libs"` |
|---|
| [f665d6e] | 154 | dnl Needed for nvidia drivers on linux (for some setups anyway). |
|---|
| 155 | AC_CHECK_LIB(Xxf86vm, XF86VidModeQueryVersion, [WX_LIBS="$WX_LIBS -lXxf86vm"], [], [$WX_LIBS]) |
|---|
| [5c9f6c2] | 156 | dnl We use functions from libGLU so always link -lGLU explicitly if it's |
|---|
| 157 | dnl present. |
|---|
| [9c0b089] | 158 | AC_CHECK_LIB([GLU], [gluProject], [WX_LIBS="$WX_LIBS -lGLU"], [], [$WX_LIBS]) |
|---|
| [5c9f6c2] | 159 | dnl We use functions from libGL so always link -lGL explicitly if it's |
|---|
| 160 | dnl present. |
|---|
| 161 | AC_CHECK_LIB([GL], [glPushMatrix], [WX_LIBS="$WX_LIBS -lGL"], [], [$WX_LIBS]) |
|---|
| [f665d6e] | 162 | AC_SUBST(WX_LIBS) |
|---|
| [ee63994] | 163 | dnl Mac OS X has OpenGL/gl.h. |
|---|
| 164 | AC_CHECK_HEADERS([GL/gl.h OpenGL/gl.h], [], [], [ ]) |
|---|
| [de4b099] | 165 | dnl The Debian mingw-w64 packages lack GL/glext.h; Mac OS X has OpenGL/glext.h. |
|---|
| [ee63994] | 166 | AC_CHECK_HEADERS([GL/glext.h OpenGL/glext.h], [], [], [#include <GL/gl.h>]) |
|---|
| [9c0b089] | 167 | |
|---|
| [7e2f708] | 168 | WX_CFLAGS=`$WX_CONFIG --cflags "$wx_libs"` |
|---|
| [f665d6e] | 169 | AC_SUBST(WX_CFLAGS) |
|---|
| [7e2f708] | 170 | WX_CXXFLAGS=`$WX_CONFIG --cxxflags "$wx_libs"` |
|---|
| [f665d6e] | 171 | AC_SUBST(WX_CXXFLAGS) |
|---|
| 172 | |
|---|
| [30b66b5] | 173 | AC_LANG_C |
|---|
| [a5d615f] | 174 | save_CFLAGS=$CFLAGS |
|---|
| 175 | CFLAGS="$CFLAGS $WX_CFLAGS" |
|---|
| 176 | AC_CHECK_SIZEOF([wxChar], [], [ |
|---|
| 177 | #include <wx/defs.h> |
|---|
| [631fa17] | 178 | #include <wx/chartype.h> |
|---|
| [a5d615f] | 179 | ]) |
|---|
| 180 | CFLAGS=$save_CFLAGS |
|---|
| [30b66b5] | 181 | |
|---|
| [f678705] | 182 | dnl Check for libav (FIXME: does our code still work with ffmpeg?) |
|---|
| 183 | PKG_CHECK_MODULES([LIBAV], [libavcodec libavformat libswscale libavutil], [ |
|---|
| 184 | AC_DEFINE([WITH_LIBAV], [1], [Use libav for movie export]) |
|---|
| 185 | save_CXXFLAGS=$CXXFLAGS |
|---|
| 186 | save_LIBS=$LIBS |
|---|
| 187 | CFLAGS="$CFLAGS $LIBAV_CFLAGS" |
|---|
| 188 | LIBS="$LIBS $LIBAV_LIBS" |
|---|
| 189 | AC_CHECK_FUNCS([av_guess_format avio_open avio_close avformat_write_header avcodec_encode_video2 avcodec_free_frame avcodec_open2 avformat_new_stream av_frame_alloc av_frame_free]) |
|---|
| 190 | AC_CHECK_DECLS([AVMEDIA_TYPE_VIDEO], [], [], [#include <libavcodec/avcodec.h>]) |
|---|
| 191 | AC_CHECK_DECLS([AV_CODEC_ID_NONE], [], [], [#include <libavcodec/avcodec.h>]) |
|---|
| [ad04c87] | 192 | AC_CHECK_DECLS([AV_PIX_FMT_RGB24], [], [], [#include <libavutil/pixfmt.h>]) |
|---|
| [f678705] | 193 | AC_CHECK_DECLS([AV_PIX_FMT_YUV420P], [], [], [#include <libavutil/pixfmt.h>]) |
|---|
| 194 | CXXFLAGS=$save_CXXFLAGS |
|---|
| 195 | LIBS=$save_LIBS |
|---|
| [4909e7e1] | 196 | ], [ |
|---|
| 197 | dnl Build without movie export feature. |
|---|
| [9e516d0d] | 198 | ]) |
|---|
| [f678705] | 199 | AC_SUBST([LIBAV_LIBS]) |
|---|
| 200 | AC_SUBST([LIBAV_CFLAGS]) |
|---|
| [c527c6e] | 201 | |
|---|
| [f678705] | 202 | dnl Check for PROJ4 |
|---|
| 203 | PKG_CHECK_MODULES([PROJ], [proj], [ |
|---|
| 204 | ], [ |
|---|
| [0b5f43d] | 205 | dnl pkg-config support in proj seems quite new, so probe directly if not |
|---|
| 206 | dnl found. |
|---|
| 207 | AC_CHECK_LIB([proj], [pj_init_plus], [ |
|---|
| 208 | PROJ_LIBS=-lproj |
|---|
| 209 | PROJ_CFLAGS= |
|---|
| 210 | ], [ |
|---|
| 211 | AC_MSG_ERROR([PROJ4 required for coordinate transformations]) |
|---|
| 212 | ]) |
|---|
| [f678705] | 213 | ]) |
|---|
| [8c87227] | 214 | AC_SUBST([PROJ_LIBS]) |
|---|
| [f678705] | 215 | AC_SUBST([PROJ_CFLAGS]) |
|---|
| [8719711] | 216 | dnl Check for new-style PROJ header. |
|---|
| 217 | AC_CHECK_HEADERS([proj.h]) |
|---|
| [63dc4eb] | 218 | |
|---|
| [b6f16ea] | 219 | dnl Checks for header files. |
|---|
| [55302e3] | 220 | AC_HEADER_STDC |
|---|
| [f78ad72] | 221 | dnl don't use AC_CHECK_FUNCS for setjmp - mingw #define-s it to _setjmp |
|---|
| [6bec10c] | 222 | AC_CHECK_HEADERS(limits.h string.h setjmp.h sys/select.h) |
|---|
| [55302e3] | 223 | |
|---|
| 224 | dnl Checks for typedefs, structures, and compiler characteristics. |
|---|
| 225 | AC_TYPE_SIZE_T |
|---|
| 226 | AC_STRUCT_TM |
|---|
| 227 | AC_TYPE_SIGNAL |
|---|
| 228 | |
|---|
| [4d0204a] | 229 | dnl check if CLOCKS_PER_SEC is defined by time.h (as ANSI says it should be) |
|---|
| 230 | dnl if it isn't, assume it is 1000000, as it is on SunOS 4 |
|---|
| 231 | AC_TRY_COMPILE([#include <time.h>],[ |
|---|
| 232 | #ifndef CLOCKS_PER_SEC |
|---|
| 233 | choke me |
|---|
| 234 | #endif |
|---|
| 235 | ], , AC_DEFINE(CLOCKS_PER_SEC, 1000000, [For old systems which don't define it themselves])) |
|---|
| 236 | |
|---|
| [8c45eea] | 237 | dnl Check for 16-bit and 32-bit integer types. |
|---|
| 238 | AC_TYPE_INT16_T |
|---|
| 239 | AC_TYPE_INT32_T |
|---|
| [647407d] | 240 | |
|---|
| [55302e3] | 241 | dnl Checks for library functions. |
|---|
| 242 | AC_FUNC_STRFTIME |
|---|
| [ab27074] | 243 | if test yes != "$ac_cv_func_strftime"; then |
|---|
| [ad4eaf3f] | 244 | AC_LIBOBJ(strftime) |
|---|
| [f017df0] | 245 | fi |
|---|
| [55302e3] | 246 | AC_FUNC_VPRINTF |
|---|
| [0a9b040] | 247 | dnl Check if there's a declaration of lround(). Below we also check for |
|---|
| 248 | dnl lround() with AC_CHECK_FUNCS, which just checks if it can be linked |
|---|
| 249 | dnl against. Some platforms are missing a prototype for lround(), so |
|---|
| [6b536b3] | 250 | dnl both checks are useful. |
|---|
| [0a9b040] | 251 | AC_CHECK_DECLS([lround], [], [], [[#include <math.h>]]) |
|---|
| [ad4eaf3f] | 252 | dnl check for strcasecmp here as well as below - this one is to get |
|---|
| 253 | dnl HAVE_STRCASECMP defined if appropriate (for img.c) |
|---|
| [c9a6e18] | 254 | AC_CHECK_FUNCS([popen getpwuid lround strcasecmp hypot mmap]) |
|---|
| [f66c708] | 255 | |
|---|
| [55302e3] | 256 | dnl difftime seems to be an ANSI invention |
|---|
| [96cc0ab] | 257 | AC_CHECK_FUNCS(difftime) |
|---|
| [55302e3] | 258 | |
|---|
| [e02a6a6] | 259 | dnl Much faster than using getc()/putc(), at least on Linux. |
|---|
| 260 | AC_CHECK_FUNCS([getc_unlocked putc_unlocked]) |
|---|
| [0a85859] | 261 | |
|---|
| [c891a7e] | 262 | AC_CHECK_FUNCS([setenv unsetenv]) |
|---|
| 263 | |
|---|
| [55302e3] | 264 | dnl try to find a case-insensitive compare |
|---|
| 265 | |
|---|
| 266 | strcasecmp=no |
|---|
| [b9bd864] | 267 | dnl The order of these tests is important. |
|---|
| [f665d6e] | 268 | AC_CHECK_FUNC(strcasecmp, [strcasecmp=strcasecmp]) |
|---|
| [ab27074] | 269 | if test no = "$strcasecmp"; then |
|---|
| [f665d6e] | 270 | AC_CHECK_FUNC(stricmp, [strcasecmp=stricmp]) |
|---|
| [55302e3] | 271 | fi |
|---|
| [ab27074] | 272 | if test no = "$strcasecmp"; then |
|---|
| [f665d6e] | 273 | AC_CHECK_FUNC(strcmpi, [strcasecmp=strcmpi]) |
|---|
| [55302e3] | 274 | fi |
|---|
| [18f4759] | 275 | |
|---|
| [f665d6e] | 276 | AC_MSG_CHECKING([how to compare strings ignoring case]) |
|---|
| [21fbe7d] | 277 | case $strcasecmp in |
|---|
| [18f4759] | 278 | no) |
|---|
| [ad4eaf3f] | 279 | AC_LIBOBJ(strcasecmp) |
|---|
| [f665d6e] | 280 | AC_MSG_RESULT([using own implementation of strcasecmp]) ;; |
|---|
| 281 | strcasecmp) |
|---|
| 282 | AC_MSG_RESULT([strcasecmp]) ;; |
|---|
| [18f4759] | 283 | *) |
|---|
| 284 | AC_DEFINE_UNQUOTED(strcasecmp, "$strcasecmp", |
|---|
| [f665d6e] | 285 | [strcasecmp define for systems which call it something else]) |
|---|
| 286 | AC_MSG_RESULT([$strcasecmp]) ;; |
|---|
| [18f4759] | 287 | esac |
|---|
| 288 | |
|---|
| [091efc6] | 289 | AC_MSG_CHECKING(for sgmltools v2 or v3) |
|---|
| [ec84716] | 290 | if test : != "$SGMLTOOLS" ; then |
|---|
| 291 | : ${SGMLTOOLS=sgmltools} |
|---|
| 292 | case `(exec 2>&5 ; $SGMLTOOLS --version)` in |
|---|
| [181bb65] | 293 | *" version 3"*) |
|---|
| 294 | AC_MSG_RESULT([$SGMLTOOLS]) ;; |
|---|
| 295 | *" version 2"*) |
|---|
| [84d66990] | 296 | AC_MSG_RESULT([$SGMLTOOLS]) ;; |
|---|
| [ec84716] | 297 | *) |
|---|
| 298 | SGMLTOOLS="$MISSING sgmltools" |
|---|
| [84d66990] | 299 | AC_MSG_RESULT(not found) ;; |
|---|
| [ec84716] | 300 | esac |
|---|
| [84d66990] | 301 | else |
|---|
| 302 | AC_MSG_RESULT([$SGMLTOOLS]) |
|---|
| [ec84716] | 303 | fi |
|---|
| 304 | AC_SUBST(SGMLTOOLS) |
|---|
| [84d66990] | 305 | AC_ARG_VAR(SGMLTOOLS, [sgmltools command]) |
|---|
| 306 | |
|---|
| [2a9c909] | 307 | AC_MSG_CHECKING(for docbook2man) |
|---|
| 308 | if test : != "$DOCBOOK2MAN" ; then |
|---|
| 309 | : ${DOCBOOK2MAN=docbook2man} |
|---|
| 310 | $DOCBOOK2MAN 2> /dev/null |
|---|
| [84d66990] | 311 | if test $? = 1 ; then |
|---|
| [2a9c909] | 312 | AC_MSG_RESULT([$DOCBOOK2MAN]) |
|---|
| [84d66990] | 313 | else |
|---|
| [2a9c909] | 314 | DOCBOOK2MAN="$MISSING docbook2man" |
|---|
| [84d66990] | 315 | AC_MSG_RESULT([not found]) |
|---|
| 316 | fi |
|---|
| 317 | else |
|---|
| [2a9c909] | 318 | AC_MSG_RESULT([$DOCBOOK2MAN]) |
|---|
| [84d66990] | 319 | fi |
|---|
| [2a9c909] | 320 | AC_SUBST(DOCBOOK2MAN) |
|---|
| 321 | AC_ARG_VAR(DOCBOOK2MAN, [docbook2man command]) |
|---|
| [788ed2e] | 322 | |
|---|
| [b4fe9fb] | 323 | dnl extra warning flags for building with GCC |
|---|
| [ab27074] | 324 | if test yes = "$GCC"; then |
|---|
| 325 | if test yes = "$cross_compiling"; then |
|---|
| [331b3aa] | 326 | dnl AM_CFLAGS="$AM_CFLAGS -Werror -Wall -Wunused -Wpointer-arith\ |
|---|
| 327 | dnl -Wwrite-strings -Wcast-align" |
|---|
| [75f9a82] | 328 | dnl -Wsign-compare causes a warning with the mingw FD_SET macro, so we have |
|---|
| 329 | dnl to disable it for mingw builds. |
|---|
| [331b3aa] | 330 | AM_CFLAGS="$AM_CFLAGS -Wall -Wunused -Wpointer-arith\ |
|---|
| [1809849] | 331 | -Wwrite-strings -Wcast-align" |
|---|
| [b960c63] | 332 | AM_CXXFLAGS="$AM_CXXFLAGS -Wall -Wunused -Wpointer-arith\ |
|---|
| [75f9a82] | 333 | -Wwrite-strings -Wcast-align -Wno-sign-compare" |
|---|
| [d5bd3a7] | 334 | else |
|---|
| [ab27074] | 335 | AM_CFLAGS="$AM_CFLAGS -Wall -W -Wunused -Wshadow -Wpointer-arith\ |
|---|
| 336 | -Wmissing-prototypes -Wwrite-strings -Wredundant-decls -Wnested-externs\ |
|---|
| [c70e8d2] | 337 | -Wcast-align" |
|---|
| [41cfc8c] | 338 | AM_CXXFLAGS="$AM_CXXFLAGS -Wall -W -Wunused -Wshadow -Wpointer-arith\ |
|---|
| [0580c6a] | 339 | -Wwrite-strings -Wcast-align" |
|---|
| [d5bd3a7] | 340 | fi |
|---|
| [b9bd864] | 341 | dnl too many complaints from headers, etc: -Wconversion |
|---|
| [96cc0ab] | 342 | fi |
|---|
| [b4fe9fb] | 343 | AC_SUBST(AM_CFLAGS) |
|---|
| 344 | AC_SUBST(AM_CXXFLAGS) |
|---|
| [55302e3] | 345 | |
|---|
| [8c0bfb4] | 346 | dnl See if large file support is available. Survex is unlikely to need to |
|---|
| 347 | dnl process files > 2GB in size, but LFS is also needed for stat() to work |
|---|
| 348 | dnl on filing systems which return 64 bit inode values, such as CIFS mounts. |
|---|
| 349 | AC_SYS_LARGEFILE |
|---|
| 350 | |
|---|
| [5341d94] | 351 | AC_ARG_ENABLE(profiling, |
|---|
| 352 | [ --enable-profiling Build binaries to generate profiling information], |
|---|
| [21fbe7d] | 353 | [case $enableval in |
|---|
| [984f49e] | 354 | yes) AM_CXXFLAGS="$AM_CXXFLAGS -pg" |
|---|
| [b4fe9fb] | 355 | AM_CFLAGS="$AM_CFLAGS -pg" |
|---|
| [5876fcb] | 356 | AC_MSG_RESULT(building binaries to generate profiling information);; |
|---|
| [5341d94] | 357 | no) ;; |
|---|
| [ab27074] | 358 | *) AC_MSG_ERROR(bad value $enableval for --enable-profiling) ;; |
|---|
| [5341d94] | 359 | esac]) |
|---|
| 360 | |
|---|
| [43ddd8b] | 361 | HTMLFILES="AUTHORS.htm HACKING.htm NEWS.htm OLDNEWS.htm TODO.htm index.htm 3dformat.htm 3dformat-old.htm" |
|---|
| [5636835] | 362 | AC_SUBST(HTMLFILES) |
|---|
| 363 | |
|---|
| 364 | EXTRA_TEXT="AUTHORS COPYING NEWS TODO ChangeLog" |
|---|
| 365 | AC_SUBST(EXTRA_TEXT) |
|---|
| 366 | |
|---|
| [96c5d34] | 367 | AC_SUBST_FILE(DESC) |
|---|
| 368 | DESC=desc.txt |
|---|
| 369 | AC_SUBST_FILE(AVENDESC) |
|---|
| 370 | AVENDESC=desc-aven.txt |
|---|
| 371 | |
|---|
| [f665d6e] | 372 | dnl Don't define DATADIR if building for MS Windows - it won't be used, and |
|---|
| 373 | dnl can conflict with the DATADIR typedef in objidl.h |
|---|
| [4d0204a] | 374 | if test no = "$mswindows"; then |
|---|
| 375 | AC_DEFINE_DIR(DATADIR, datadir, [Location of platform independent support files]) |
|---|
| 376 | fi |
|---|
| [18f4759] | 377 | |
|---|
| [e02a6a6] | 378 | AH_BOTTOM( |
|---|
| 379 | [/* Use getc_unlocked() and putc_unlocked() where available, since they are |
|---|
| 380 | * faster, and we don't multithread file accesses. |
|---|
| 381 | */ |
|---|
| 382 | |
|---|
| 383 | #ifdef HAVE_GETC_UNLOCKED |
|---|
| 384 | # define GETC(F) getc_unlocked(F) |
|---|
| 385 | #else |
|---|
| 386 | # define GETC(F) getc(F) |
|---|
| 387 | #endif |
|---|
| 388 | #ifdef HAVE_PUTC_UNLOCKED |
|---|
| 389 | # define PUTC(C, F) putc_unlocked(C, F) |
|---|
| 390 | #else |
|---|
| 391 | # define PUTC(C, F) putc(C, F) |
|---|
| 392 | #endif |
|---|
| 393 | ]) |
|---|
| 394 | |
|---|
| [f542bda] | 395 | AC_CONFIG_FILES([ |
|---|
| 396 | Makefile src/Makefile doc/Makefile lib/Makefile lib/icons/Makefile |
|---|
| [09dfd18] | 397 | lib/images/Makefile |
|---|
| [04aa63b] | 398 | tests/Makefile vim/Makefile survex.iss doc/index.htm doc/survex.7 |
|---|
| [df10c51] | 399 | survex.spec lib/Info.plist |
|---|
| [f542bda] | 400 | ]) |
|---|
| 401 | AC_OUTPUT |
|---|
| [d959ab2] | 402 | dnl FIXME update msvc makefile for 1.2 branch |
|---|
| [cf733ae] | 403 | dnl src/msvc/config.h |
|---|