configure.in 11.5 KB
Newer Older
Arturo Espinosa's avatar
Arturo Espinosa committed
1 2 3
AC_INIT(src/gnumeric.h)

AM_CONFIG_HEADER(config.h)
Miguel de Icaza's avatar
Miguel de Icaza committed
4
AM_INIT_AUTOMAKE(gnumeric,0.52)
Arturo Espinosa's avatar
Arturo Espinosa committed
5 6 7
AM_MAINTAINER_MODE
AM_ACLOCAL_INCLUDE(macros)

8 9 10
# Make --disable-static the default
AC_DISABLE_STATIC

Arturo Espinosa's avatar
Arturo Espinosa committed
11 12 13
AC_ISC_POSIX
AC_PROG_CC
AC_STDC_HEADERS
Arturo Espinosa's avatar
Arturo Espinosa committed
14
AC_PROG_YACC
Arturo Espinosa's avatar
Arturo Espinosa committed
15 16 17
AC_ARG_PROGRAM
AM_PROG_LIBTOOL

18 19
GNOME_INIT

Arturo Espinosa's avatar
Arturo Espinosa committed
20
## this should come after `AC_PROG_CC'
21
GNOME_COMPILE_WARNINGS
Arturo Espinosa's avatar
Arturo Espinosa committed
22
GNOME_X_CHECKS
23
GNOME_XML_CHECK
24

25 26 27 28 29 30 31 32 33 34 35
dnl
dnl alloca tests
dnl;
AC_FUNC_ALLOCA
if test $ac_cv_header_alloca_h = yes; then
        GNUMERIC_HAVE_ALLOCA_H=1
else
        GNUMERIC_HAVE_ALLOCA_H=0
fi
AC_SUBST(GNUMERIC_HAVE_ALLOCA_H)

Arturo Espinosa's avatar
Arturo Espinosa committed
36 37 38 39 40
AC_SUBST(QTTHREADS_LIB)
AC_SUBST(TERMCAP_LIB)
AC_SUBST(READLINE_LIB)
AC_SUBST(GUILE_LIBS)
AC_SUBST(GUILE_INCS)
41
AC_ARG_WITH(guile,[--with-guile   Include Guile support],[GNOME_CHECK_GUILE])
Arturo Espinosa's avatar
Arturo Espinosa committed
42 43 44 45 46

AC_SUBST(CFLAGS)
AC_SUBST(CPPFLAGS)
AC_SUBST(LDFLAGS)

47 48 49 50 51 52 53 54
dnl **************************************************
dnl * internationalization support
dnl **************************************************
dnl 
dnl
dnl Check doc/translating.sgml for a description of how to translate
dnl and why we have so many translations.
dnl
Karl Eichwalder's avatar
Karl Eichwalder committed
55
ALL_LINGUAS="cs da de en_GB el es es_DO es_GT es_HN es_MX es_PA es_PE es_SV et fi fr ga hr hu it ja ko nl no pl pt pt_BR ru sk sv uk zh_CN.GB2312 zh_TW.Big5"
56
AM_GNU_GETTEXT
57 58 59 60 61
# AM_GNOME_GETTEXT above substs $DATADIRNAME
# this is the directory where the *.{mo,gmo} files are installed
gnomelocaledir='${prefix}/${DATADIRNAME}/locale'
AC_SUBST(gnomelocaledir)

62 63
AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)

64

65 66 67
dnl
dnl On Solaris finite() needs ieeefp.h
dnl
Morten Welinder's avatar
Morten Welinder committed
68
AC_CHECK_HEADERS(ieeefp.h)
69

Morten Welinder's avatar
Morten Welinder committed
70 71 72
dnl Check for some functions
AC_CHECK_FUNCS(random drand48)

73 74 75 76 77 78
dnl **************************************************
dnl * ORBit support
dnl **************************************************
GNOMEGNORBA_LIBS="$GNOMEGNORBA_LIBS"
AC_SUBST(GNOMEGNORBA_LIBS)

79 80 81 82 83
dnl ******************************
dnl gnome-xml checking
dnl ******************************
AC_MSG_CHECKING(for GnomeXML libraries >= 1.8.5)
if xml-config --libs print > /dev/null 2>&1; then 
84
    vers=`xml-config --version | sed -e "s/libxml //" | awk 'BEGIN { FS = "."; } { printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'`
85 86 87 88 89 90 91 92 93
    if test "$vers" -ge 1008005; then
        AC_MSG_RESULT(found)
    else
        AC_MSG_ERROR(You need at least GnomeXML 1.8.5 for this version of Gnumeric)
    fi
else
    AC_MSG_ERROR(Did not find GnomeXML installed)
fi

94 95 96 97

dnl **************************************************
dnl * Check for Perl
dnl **************************************************
98 99 100 101 102 103 104 105 106
dnl
AC_CHECK_PROG(perl_val, perl, true, false)
if $perl_val; then
  AC_MSG_CHECKING(for perl ExtUtils::Embed module)
  perl -e 'eval { require ExtUtils::Embed }; if ($@) { exit(1); } else { exit(0); }'
  if test "x$?" = "x0"; then
    AC_MSG_RESULT(yes)

    dnl Use ExtUtils::Embed to figure out the other options.
107 108
    PERL_CCCDLFLAGS=`perl -MConfig -e 'print $Config{cccdlflags},"\n";'`
    PERL_LDDLFLAGS=`perl -MConfig -e 'print $Config{lddlflags},"\n";'`
Raja R Harinath's avatar
Raja R Harinath committed
109
    PERL_CC=`perl -MConfig -e 'print $Config{cc},"\n";'`
110
    PERL_LD=`perl -MConfig -e 'print $Config{ld},"\n";'`
111 112
    PERL_CCOPTS=`perl -MExtUtils::Embed -e ccopts`
    PERL_LDOPTS=`perl -MExtUtils::Embed -e ldopts`
113 114
    AC_SUBST(PERL_CCCDLFLAGS)
    AC_SUBST(PERL_LDDLFLAGS)
Raja R Harinath's avatar
Raja R Harinath committed
115
    AC_SUBST(PERL_CC)
116
    AC_SUBST(PERL_LD)
117 118 119 120 121 122 123
    AC_SUBST(PERL_CCOPTS)
    AC_SUBST(PERL_LDOPTS)
  else
    AC_MSG_RESULT(no)
    perl_val=false
  fi
fi
Jody Goldberg's avatar
Jody Goldberg committed
124 125
#
# Disable perl for now
Morten Welinder's avatar
Morten Welinder committed
126
AM_CONDITIONAL(WITH_PERL, false)
127

128 129 130
dnl **************************************************
dnl * Check for Python
dnl **************************************************
131
AC_CHECK_PROG(python_val, python, true, false)
132
if $python_val; then
133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153
	  PY_PREFIX=`python -c 'import sys ; print sys.prefix'`
	  PY_EXEC_PREFIX=`python -c 'import sys ; print sys.exec_prefix'`
	  changequote(<<, >>)dnl
	  PY_VERSION=`python -c 'import sys ; print sys.version[0:3]'`
	  changequote([, ])dnl
	  if test -f $PY_PREFIX/include/python$PY_VERSION/Python.h; then
		  PY_LIBS="python$PY_VERSION"
		  PY_LIB_LOC="-L$PY_EXEC_PREFIX/lib/python$PY_VERSION/config"
		  PY_CFLAGS="-I$PY_PREFIX/include/python$PY_VERSION"
		  PY_MAKEFILE="$PY_EXEC_PREFIX/lib/python$PY_VERSION/config/Makefile"
		  PY_LOCALMODLIBS=`sed -n -e 's/^LOCALMODLIBS=\(.*\)/\1/p' $PY_MAKEFILE`
		  PY_BASEMODLIBS=`sed -n -e 's/^BASEMODLIBS=\(.*\)/\1/p' $PY_MAKEFILE`
		  PY_OTHER_LIBS=`sed -n -e 's/^LIBS=\(.*\)/\1/p' $PY_MAKEFILE`
		  PY_EXTRA_LIBS="$PY_LOCALMODLIBS $PY_BASEMODLIBS $PY_OTHER_LIBS"
		  AC_SUBST(PY_LIBS)
		  AC_SUBST(PY_LIB_LOC)
		  AC_SUBST(PY_CFLAGS)
		  AC_SUBST(PY_EXTRA_LIBS)
	  else
		  python_val=false
	  fi
154
fi
155
AM_CONDITIONAL(WITH_PYTHON, $python_val)
156

157 158 159
dnl ******************************
dnl Check for Bonobo
dnl ******************************
160 161 162
try_bonobo=true
bonobo=
bonobo_msg=no
163
bonobo_suffix=
164 165
have_bonobo=false
AC_ARG_WITH(bonobo,
Michael Meeks's avatar
Michael Meeks committed
166
	[--{with,without}-bonobo   Compile with Bonobo support or without it],
167 168 169 170 171
	if test x$withval = xno; then
		try_bonobo=false
	fi
)

Miguel de Icaza's avatar
Miguel de Icaza committed
172 173
gnumeric_executable=gnumeric
AC_SUBST(gnumeric_executable)
174
if $try_bonobo; then
175
	AC_MSG_CHECKING(for Bonobo >= 0.9)
176 177 178 179
	if gnome-config --libs bonobo > /dev/null 2>&1; then
		vers=`gnome-config --modversion bonobo`
		case $vers
		in
180
		    bonobo-0.[[012345678]]) bonobo_ok=false ;;
Arturo Espinosa's avatar
5XF  
Arturo Espinosa committed
181
		    *) bonobo_ok=true ;;
182 183 184 185 186 187 188 189 190 191 192
		esac
	else
		bonobo_ok=false
	fi
	
	if $bonobo_ok; then
		AC_MSG_RESULT(found)
		AC_DEFINE(ENABLE_BONOBO)
		have_bonobo=true
		bonobo=bonobo
		bonobo_msg=yes
193
		bonobo_suffix=-bonobo
Miguel de Icaza's avatar
Miguel de Icaza committed
194
	        gnumeric_executable=gnumeric-bonobo
Michael Meeks's avatar
Michael Meeks committed
195 196 197 198 199 200 201 202 203 204 205 206 207 208 209

		dnl Check if Bonobo is OAFized

		AC_MSG_CHECKING(if Bonobo uses OAF)
		if ( gnome-config --libs bonobo | grep oaf ) > /dev/null 2>&1 ; then
			using_oaf="yes"
			AC_DEFINE(USING_OAF)
		else
			using_oaf="no"
		fi

		AC_MSG_RESULT("$using_oaf")

		AM_CONDITIONAL(USING_OAF, test x"using_oaf" = "xyes")

210 211 212
	else
		AC_MSG_RESULT(not found)
	fi
213
fi
214
gnumeric_bonobo_enabled=$bonobo_msg
215
AM_CONDITIONAL(BONOBO, $have_bonobo)
Michael Meeks's avatar
Michael Meeks committed
216

217

218 219 220
dnl **************************************************
dnl * Config defaults (Must be after bonobo)
dnl **************************************************
221 222 223 224 225 226 227 228 229

dnl FIXME : This has several ugly bits.
dnl We should be using datadir rather than ${prefix}/share
dnl The same holds for libdir.
gnumeric_prefix="${prefix}"
gnumeric_exec_prefix="${exec_prefix}"
test "x${gnumeric_prefix}" = xNONE && gnumeric_prefix=${ac_default_prefix}
test "x${gnumeric_exec_prefix}" = xNONE && gnumeric_exec_prefix=${gnumeric_prefix}

230
gnumeric_version="${VERSION}${bonobo_suffix}"
231 232
gnumeric_datadir="${gnumeric_prefix}/share/gnumeric/${gnumeric_version}/"
gnumeric_libdir="${gnumeric_exec_prefix}/lib/gnumeric/${gnumeric_version}/"
233 234 235
gnumeric_plugindir="${gnumeric_libdir}plugins/"
gnumeric_gladedir="${gnumeric_datadir}glade/"

Almer. S. Tigelaar's avatar
Almer. S. Tigelaar committed
236 237 238
dnl Export to config.h
AC_DEFINE_UNQUOTED(GNUMERIC_VERSION, "$gnumeric_version")

239 240 241 242 243 244 245 246 247
AC_SUBST(gnumeric_prefix)
AC_SUBST(gnumeric_exec_prefix)
AC_SUBST(gnumeric_datadir)
AC_SUBST(gnumeric_version)
AC_SUBST(gnumeric_libdir)
AC_SUBST(gnumeric_bonobo_enabled)
AC_SUBST(gnumeric_plugindir)
AC_SUBST(gnumeric_gladedir)

Michael Meeks's avatar
Michael Meeks committed
248 249 250
dnl ******************************
dnl Kludge for Libole2 virtual link.
dnl ******************************
251
AM_CONDITIONAL(LIBOLE2_PUBLIC_LIBRARY, false)
252

Michael Meeks's avatar
Michael Meeks committed
253 254 255 256 257 258 259
dnl ******************************
dnl Check for GB
dnl ******************************
try_gb=true
gb=
gb_msg=no
have_gb=false
260 261
GB_CFLAGS=
GB_LIBS=
Michael Meeks's avatar
Michael Meeks committed
262
AC_ARG_WITH(gb,
Michael Meeks's avatar
Michael Meeks committed
263
	[--{with,without}-gb       Compile with Gb support or without it],
Michael Meeks's avatar
Michael Meeks committed
264 265 266 267 268 269
	if test x$withval = xno; then
		try_gb=false
	fi
)

if $try_gb; then
270
	AC_MSG_CHECKING(for Gb >= 0.0.9)
Michael Meeks's avatar
Michael Meeks committed
271
	if gnome-config --libs gb > /dev/null 2>&1; then
272
		vers=`gnome-config --modversion gb | awk 'BEGIN { FS = "."; } { print $1 * 10000 + $2 * 100 + $3; }'`
273
		if test "$vers" -ge 000009; then
274 275 276 277
			gb_ok=true
		else
		    	gb_ok=false
		fi
Michael Meeks's avatar
Michael Meeks committed
278 279 280 281 282 283 284
	else
		gb_ok=false
	fi
	
	if $gb_ok; then
		AC_MSG_RESULT(found)
		AC_DEFINE(ENABLE_GB)
285 286
		GB_LIBS=`gnome-config --libs gb`
		GB_CFLAGS=`gnome-config --cflags gb`
Michael Meeks's avatar
Michael Meeks committed
287 288 289 290 291 292 293
		have_gb=true
		gb=gb
		gb_msg=yes
	else
		AC_MSG_RESULT(not found)
	fi
fi
294
AM_CONDITIONAL(WITH_GB, $have_gb)
295 296
AC_SUBST(GB_CFLAGS)
AC_SUBST(GB_LIBS)
Michael Meeks's avatar
Michael Meeks committed
297

298 299 300
dnl ******************************
dnl GnomePrint checking
dnl ******************************
301
AC_MSG_CHECKING(for GnomePrint libraries >= 0.19)
302
if gnome-config --libs print > /dev/null 2>&1; then 
303
    vers=`gnome-config --modversion print | sed -e "s/gnome-print-//" -e 's/cvs$//' | \
304
        awk 'BEGIN { FS = "."; } { print $1 * 1000 + $2;}'`
305
    if test "$vers" -ge 19; then
306 307
        AC_MSG_RESULT(found)
    else
308
        AC_MSG_ERROR(You need at least GNOME print 0.19 for this version of Gnumeric)
309
    fi
310 311 312 313 314 315 316
else
    AC_MSG_ERROR(Did not find GnomePrint installed)
fi

dnl ******************************
dnl LibGlade checking
dnl ******************************
317
AC_MSG_CHECKING(for Glade libraries >= 0.11)
318
if gnome-config --libs libglade > /dev/null 2>&1; then 
319 320 321 322 323 324
    vers=`gnome-config --modversion libglade | awk 'BEGIN { FS = "."; } { print $1 * 1000 + $2;}'`
    if test "$vers" -ge 11; then
        AC_MSG_RESULT(found)
    else
        AC_MSG_ERROR(You need at least libglade 0.11 for this version of Gnumeric)
    fi
325 326 327 328
else
    AC_MSG_ERROR(Did not find libGlade installed)
fi

329 330 331
dnl ******************************
dnl gtk+ checking
dnl ******************************
Miguel de Icaza's avatar
Miguel de Icaza committed
332
AC_MSG_CHECKING(for GTK >= 1.2.7)
333
if gtk-config --version > /dev/null 2>&1; then 
Morten Welinder's avatar
Morten Welinder committed
334 335
    dnl We need the "%d" in order not to get e-notation on hpux.
    vers=`gtk-config --version | awk 'BEGIN { FS = "."; } { printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'`
Miguel de Icaza's avatar
Miguel de Icaza committed
336
    if test "$vers" -ge 1002007; then
337 338
        AC_MSG_RESULT(found)
    else
Miguel de Icaza's avatar
Miguel de Icaza committed
339
        AC_MSG_ERROR(You need at least GTK+ 1.2.7 for this version of Gnumeric)
340
    fi
341
else
342
    AC_MSG_ERROR(Did not find GTK+ installed)
343 344
fi

Jody Goldberg's avatar
Jody Goldberg committed
345 346 347 348 349 350 351 352 353 354 355 356 357 358 359
dnl ******************************
dnl Check for Applix SHELF
dnl ******************************
try_applix_shelf=false
applix_shelf=
applix_shelf_msg=no
have_applix_shelf=false
AC_ARG_WITH(applix_shelf,
	[--{with,without}-shelf   Compile with Applix SHELF support or without it],
	if test x$withval = xyes; then
		try_applix_shelf=true
	fi
)
dnl ***************************************

360 361
EXTRA_GNOME_LIBS=`gnome-config --libs gnomeui print libglade $bonobo`
EXTRA_GNOME_CFLAGS=`gnome-config --cflags gnomeui print libglade $bonobo`
362 363
AC_SUBST(EXTRA_GNOME_LIBS)
AC_SUBST(EXTRA_GNOME_CFLAGS)
364

365
AM_CONDITIONAL(LIBOLE2_PUBLIC_LIBRARY, false)
366

Morten Welinder's avatar
Morten Welinder committed
367 368
AM_CONDITIONAL(WITH_GDA, false)
AM_CONDITIONAL(WITH_PLAN_PERFECT, false)
Jody Goldberg's avatar
Jody Goldberg committed
369

Arturo Espinosa's avatar
Arturo Espinosa committed
370
AC_OUTPUT([
371
gnumeric.spec
Arturo Espinosa's avatar
Arturo Espinosa committed
372
Makefile
373
icons/Makefile
Miguel de Icaza's avatar
Miguel de Icaza committed
374
idl/Makefile
Arturo Espinosa's avatar
Arturo Espinosa committed
375
src/Makefile
376 377 378
src/dialogs/Makefile
src/widgets/Makefile
src/functions/Makefile
379
src/portability.h
380
graph/Makefile
Michael Meeks's avatar
Michael Meeks committed
381
graph/graph.oafinfo
382 383
wizards/Makefile
wizards/graphics/Makefile
384
doc/Makefile
385 386
doc/C/Makefile
doc/es/Makefile
387
corba-test/Makefile
Arturo Espinosa's avatar
Arturo Espinosa committed
388 389
plugins/Makefile
plugins/sample/Makefile
Morten Welinder's avatar
Morten Welinder committed
390
plugins/numtheory/Makefile
391
plugins/sc/Makefile
392
plugins/sylk/Makefile
393
plugins/excel/Makefile
394
plugins/excel/libole2/Makefile
395
plugins/gb/Makefile
Michael Meeks's avatar
Michael Meeks committed
396
plugins/lotus-123/Makefile
397
plugins/oleo/Makefile
398
plugins/python/Makefile
399
plugins/perl/Makefile
400
plugins/perl/ext/Makefile.PL
Mark Probst's avatar
Mark Probst committed
401
plugins/guile/Makefile
402
plugins/ff-csv/Makefile
403
plugins/text/Makefile
Michael Meeks's avatar
Michael Meeks committed
404
plugins/xbase/Makefile
405
plugins/html/Makefile
406
plugins/dif/Makefile
407
plugins/plan-perfect/Makefile
Jody Goldberg's avatar
Jody Goldberg committed
408
plugins/gda/Makefile
Arturo Espinosa's avatar
Arturo Espinosa committed
409 410 411
intl/Makefile
po/Makefile.in
macros/Makefile
412
gnumericConf.sh
Miguel de Icaza's avatar
Miguel de Icaza committed
413
gnumeric.desktop
414 415
stamp.h
],[sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile])
416

417

418 419 420 421 422 423 424
echo "

Configuration:

	Source code location:	${srcdir}
	Compiler:		${CC} 
	
425
	GB Support:		${gb_msg}
426
	Bonobo Support:		${bonobo_msg}
Michael Meeks's avatar
Michael Meeks committed
427
	Oaf Support:		${using_oaf}
428
"
429 430 431 432 433 434 435 436 437
if $have_bonobo; then
	echo "
	The Bonobo version of gnumeric is not supported,
this code is changing extremely rapidly. For any given
release it may not compile or depend on unreleased packages.

	Please do not file bonobo related bug reports.
"
fi