configure.in 20.6 KB
Newer Older
Jody Goldberg's avatar
Jody Goldberg committed
1 2
-*- mode: m4 -*-
AC_PREREQ(2.52)
Jody Goldberg's avatar
Jody Goldberg committed
3
AC_INIT(gnumeric, 1.1.6,
Jody Goldberg's avatar
Jody Goldberg committed
4
	http://bugzilla.gnome.org/enter_bug.cgi?product=gnumeric)
Arturo Espinosa's avatar
Arturo Espinosa committed
5

Jody Goldberg's avatar
Jody Goldberg committed
6
AC_CONFIG_SRCDIR(src/sheet.h)
Jody Goldberg's avatar
Jody Goldberg committed
7
AM_CONFIG_HEADER(gnumeric-config.h)
Jody Goldberg's avatar
Jody Goldberg committed
8

Jody Goldberg's avatar
Jody Goldberg committed
9 10
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)

Arturo Espinosa's avatar
Arturo Espinosa committed
11 12
AM_MAINTAINER_MODE

Jody Goldberg's avatar
Jody Goldberg committed
13 14
GNOME_PLATFORM_GNOME_2(yes, force)

15 16 17
# Make --disable-static the default
AC_DISABLE_STATIC

Arturo Espinosa's avatar
Arturo Espinosa committed
18 19
AC_ISC_POSIX
AC_PROG_CC
Arturo Espinosa's avatar
Arturo Espinosa committed
20
AC_PROG_YACC
Jody Goldberg's avatar
Jody Goldberg committed
21 22 23
AM_PROG_LIBTOOL
AC_PROG_INTLTOOL
AM_PROG_LIBTOOL
Arturo Tena's avatar
Arturo Tena committed
24
AC_STDC_HEADERS
Arturo Espinosa's avatar
Arturo Espinosa committed
25 26
AC_ARG_PROGRAM

27
if test "$GCC" = "yes"; then
Morten Welinder's avatar
Morten Welinder committed
28
  gcc_check=`$CC -v 2>&1 | grep '^gcc version 2\.96'`
29 30 31 32 33 34 35
  if test "$gcc_check" != ""; then
    # I know a dead parrot when I see one, and I am looking at
    # one now.
    AC_MSG_ERROR([You cannot compile Gnumeric with RedHat gcc 2.96.
We have seen too many subtle compiler errors.
Please use another compiler, for example a gcc 2.95 series compiler.])
    # Mate, this parrot wouldn't "vooom!" if you put four million
Morten Welinder's avatar
Morten Welinder committed
36
    # Volts through it!
37 38 39
  fi
fi

Jody Goldberg's avatar
Jody Goldberg committed
40
PKG_CHECK_MODULES(GNUMERIC,[
Jody Goldberg's avatar
Jody Goldberg committed
41 42 43
glib-2.0	>= 2.0.0
gobject-2.0	>= 2.0.0
gmodule-2.0	>= 2.0.0
44
libgsf-1	>= 1.1.0
Jody Goldberg's avatar
Jody Goldberg committed
45 46 47
gtk+-2.0	>= 2.0.0
libxml-2.0	>= 2.4.12
libglade-2.0	>= 1.99.7
48
libgnomecanvas-2.0 >= 1.113.0
Jody Goldberg's avatar
Jody Goldberg committed
49 50 51
gal-2.0		>= 0.0.2
libgnome-2.0	>= 1.105.0
libgnomeui-2.0	>= 1.106.0
Jody Goldberg's avatar
Jody Goldberg committed
52
libgnomeprint-2.0 >= 1.114.0
53
libgnomeprintui-2.0 >= 1.114.0
Jody Goldberg's avatar
Jody Goldberg committed
54 55 56 57 58 59
])
AC_SUBST(GNUMERIC_LIBS)
AC_SUBST(GNUMERIC_CFLAGS)

AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal)
AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource)
60

Arturo Espinosa's avatar
Arturo Espinosa committed
61
## this should come after `AC_PROG_CC'
62
GNOME_COMPILE_WARNINGS
63
set_more_warnings=yes
64
if test "$GCC" = "yes" -a "x$set_more_warnings" != "xno"; then
Morten Welinder's avatar
Morten Welinder committed
65
	for option in -Wsign-promo -Wsign-compare -Wpointer-arith -Wnested-externs -Wchar-subscripts -Wwrite-strings; do
Morten Welinder's avatar
Morten Welinder committed
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
		SAVE_CFLAGS="$CFLAGS"
		CFLAGS="$CFLAGS $option"
		AC_MSG_CHECKING([whether gcc understands $option])
		AC_TRY_COMPILE([], [],
			has_option=yes,
			has_option=no,)
		if test $has_option = no; then
		  CFLAGS="$SAVE_CFLAGS"
		fi
		AC_MSG_RESULT($has_option)
		unset has_option
		unset SAVE_CFLAGS
	done
	unset option
fi

Morten Welinder's avatar
Morten Welinder committed
82 83 84 85 86 87
float_msg=double
have_ld=no
AC_ARG_WITH(long_double,
	[--{with,without}-long-double		Use long double for floating point],
	[if test "x$withval" = xyes; then
		AC_C_LONG_DOUBLE
88
		if test "x$ac_cv_c_long_double" != "xyes"; then
Morten Welinder's avatar
Morten Welinder committed
89 90
			AC_MSG_ERROR([Long double type is not available.])
		fi
91 92

		need_sunmath=no
Morten Welinder's avatar
argh.  
Morten Welinder committed
93
		for ldfunc in fabsl sqrtl expl expm1l logl log10l log1pl ceill floorl powl hypotl \
94 95
				sinl cosl tanl asinl acosl atanl atan2l \
				sinhl coshl tanhl asinhl acoshl atanhl \
96
				isnanl finitel; do
97
			AC_CHECK_FUNC($ldfunc,
Morten Welinder's avatar
Morten Welinder committed
98 99 100 101 102 103
			      ,
			      AC_CHECK_LIB(m,
				  $ldfunc,
				  ,
				  AC_CHECK_LIB(sunmath,
				      $ldfunc,
104
				      [ if test "x$need_sunmath" = "xno"; then
Morten Welinder's avatar
Morten Welinder committed
105 106 107 108 109 110 111 112
					    # FIXME: better idea?
					    LDFLAGS="$LDFLAGS -L/opt/SUNWspro/lib -R/opt/SUNWspro/lib -lsunmath"
					    sunmathinclude=`ls -d /opt/SUNWspro/*/include/cc | tail -1`
					    CPPFLAGS="$CPPFLAGS -I$sunmathinclude"
				        fi
					need_sunmath=yes ],
				      AC_MSG_ERROR([Long doubles require the $ldfunc function.]),
				      -L/opt/SUNWspro/lib $GNUMERIC_LIBS)))
113
		done
114
		if test "x$need_sunmath" = "xyes"; then
115 116 117 118
			AC_CHECK_HEADERS([sunmath.h floatingpoint.h],
					 ,
					 AC_MSG_ERROR([Long doubles require the sunmath.h header.]))
		fi
Morten Welinder's avatar
Morten Welinder committed
119

120
		AC_CHECK_FUNCS(modfl frexpl ldexpl strtold string_to_decimal decimal_to_quadruple)
121
		if test "x$ac_cv_func_strtold" = "xyes"; then
122 123 124 125 126 127 128 129
			AC_MSG_CHECKING([if we must prototype strtold ourselves])
			AC_TRY_RUN([
				#include <stdlib.h>
				int main ()
				{
					const char *s = "+3.1415e+0";
					char *theend;
					long double res = strtold (s, &theend);
Morten Welinder's avatar
argh.  
Morten Welinder committed
130 131
					return !(*theend == 0 && finitel (res) &&
						 res >= 3.14 && res <= 3.15);
132 133 134 135 136
				}],
				AC_MSG_RESULT(no),
				[AC_MSG_RESULT(yes)
				 AC_DEFINE(MUST_PROTOTYPE_STRTOLD)],
				AC_MSG_RESULT(assuming not));
Morten Welinder's avatar
Morten Welinder committed
137
			true
138 139 140
		elif test "x$ac_cv_func_string_to_decimal" = "xyes" -a \
			  "x$ac_cv_func_decimal_to_quadruple" = "xyes" -a \
			  "x$ac_cv_header_floatingpoint_h" = "xyes"; then
Morten Welinder's avatar
Morten Welinder committed
141 142 143 144
			true
		else
			AC_MSG_WARN([You lack the strtold function -- precision will be impaired])
		fi
Morten Welinder's avatar
Morten Welinder committed
145

146
		    if test "x$ac_cv_func_modfl" != "xyes"; then
Morten Welinder's avatar
Morten Welinder committed
147 148
			AC_MSG_WARN([You lack the modfl function -- precision will be impaired])
		fi
Morten Welinder's avatar
Morten Welinder committed
149

150 151 152 153 154 155 156 157 158 159 160 161 162
		AC_MSG_CHECKING([checking for working ynl])
		AC_TRY_RUN([
			#include <math.h>
			#ifdef HAVE_SUNMATH_H
			#include <sunmath.h>
			#endif
			int main ()
			{
				long double l = ynl (2, 4.0L);
				return !(l >= 0.21 && l <= 0.22);
			}],
			[AC_DEFINE(HAVE_YNL)
			AC_MSG_RESULT(yes)],
163 164
			AC_MSG_RESULT(no),
			[AC_CHECK_FUNCS(ynl)])
165

Morten Welinder's avatar
Morten Welinder committed
166
		AC_MSG_CHECKING([checking for working erfl and erfcl])
167 168 169 170 171 172 173
		AC_TRY_RUN([
			#include <math.h>
			#ifdef HAVE_SUNMATH_H
			#include <sunmath.h>
			#endif
			int main ()
			{
174 175
				long double l1 = erfl (1.2L);
				long double l2 = erfcl (1.2L);
176 177 178
				return !(l1 >= 0.91 && l1 <= 0.92 &&
					 l2 >= 0.08 && l2 <= 0.09);
			}],
Morten Welinder's avatar
Morten Welinder committed
179 180
			[AC_DEFINE(HAVE_ERFL)
			 AC_DEFINE(HAVE_ERFCL)
181
			AC_MSG_RESULT(yes)],
182 183
			AC_MSG_RESULT(no),
			[AC_CHECK_FUNCS(erfl erfcl)])
184

Morten Welinder's avatar
Morten Welinder committed
185 186 187 188 189 190 191
		float_msg="long double (EXPERIMENTAL)"
		AC_MSG_WARN([Long double support is experimental -- expect problems])
		AC_DEFINE(WITH_LONG_DOUBLE)
	fi]
)


192 193 194 195 196 197 198 199 200 201 202 203 204
dnl ****************************
dnl MS Excel (tm) Plugin
dnl ****************************
try_ole=true
excel_msg=yes
AC_ARG_WITH(excel,
	[--{with,without}-excel		Compile the Excel plugin],
	if test "x$withval" = xno; then
		try_ole=false
		excel_msg="Disabled by request"
	fi
)
if test "$try_ole" = "true"; then
Jody Goldberg's avatar
Jody Goldberg committed
205
	PKG_CHECK_MODULES(LIBOLE2, [libole2-2.0 >= 2.2.7],
206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238
		[excel_msg="yes"],
		[excel_msg="NO.  libole2 problem"])
fi
AM_CONDITIONAL(WITH_EXCEL, test x"$excel_msg" = "xyes")
AC_SUBST(LIBOLE2_CFLAGS)
AC_SUBST(LIBOLE2_LIBS)

dnl ****************************
dnl GDA Plugin
dnl ****************************
try_gda=true
gda_msg=yes
AC_ARG_WITH(gda,
	[--{with,without}-gda      Compile the Gnome Database Access plugin],
	if test "x$withval" = xyes; then
		try_gda=true
		gda_msg="Disabled by request"
	fi
)
if test "$try_gda" = "true"; then
	PKG_CHECK_MODULES(GDA, [libgda >= 0.8.102 ],
		[gda_msg=yes],
		[gda_msg="NO.  libdga problem"])
fi
AM_CONDITIONAL(WITH_GDA, test x"$gda_msg" = "xyes")
AC_SUBST(GDA_CFLAGS)
AC_SUBST(GDA_LIBS)

dnl ****************************
dnl GB Plugin
dnl ****************************
#try_gda=true
#gb_msg=yes
Jody Goldberg's avatar
typos  
Jody Goldberg committed
239
try_gb=no
240 241
gb_msg="Temporarily disabled during gnome2 porting"
AC_ARG_WITH(gb,
Jody Goldberg's avatar
typos  
Jody Goldberg committed
242
	[--{with,without}-gb      Compile the Gnome Basic plugin],
243
	if test "x$withval" = xyes; then
Jody Goldberg's avatar
typos  
Jody Goldberg committed
244
		#try_gb=true
245 246 247 248 249 250 251 252 253 254 255 256 257 258
		gb_msg="We are not joking, it is temporarily disabled during gnome2 porting"
		#gb_msg="Disabled by request"
	fi
)
if test "$try_gb" = "true"; then
	PKG_CHECK_MODULES(GB, [libgb == 1.17 ],
		[gb_msg=yes],
		[gb_msg="NO.  gb problem"])
fi
AM_CONDITIONAL(WITH_GB, test x"$gb_msg" = "xyes")
AC_SUBST(GB_CFLAGS)
AC_SUBST(GB_LIBS)

dnl ****************************
Morten Welinder's avatar
Morten Welinder committed
259

260 261 262 263 264 265 266 267 268 269 270 271 272 273 274
dnl src/functions/fn-math.c uses M_PI
dnl src/plugin-util.c uses caddr_t
AC_MSG_CHECKING([whether -D_BSD_SOURCE is needed for M_PI])
AC_TRY_COMPILE([#include <math.h>], [double f = M_PI], need_bsd=no, need_bsd=yes)
AC_MSG_RESULT($need_bsd)
if test $need_bsd = yes ; then
	CFLAGS="$CFLAGS -D_BSD_SOURCE"
else
	AC_MSG_CHECKING([whether -D_BSD_SOURCE is needed for caddr_t])
	AC_TRY_COMPILE([#include <sys/types.h>], [caddr_t ca], need_bsd=no, need_bsd=yes)
	if test $need_bsd = yes ; then
		CFLAGS="$CFLAGS -D_BSD_SOURCE"
	fi
	AC_MSG_RESULT($need_bsd)
fi
Morten Welinder's avatar
Morten Welinder committed
275

Arturo Espinosa's avatar
Arturo Espinosa committed
276 277
AC_SUBST(GUILE_LIBS)
AC_SUBST(GUILE_INCS)
278 279

#check for guile 1.5
280 281 282
try_guile=false
guile_msg="temporarily disabled in gnome2 branch"
enable_guile=false
283 284
AC_ARG_WITH(guile,
	[--{with,without}-guile   Compile with Guile support or without it],
285
	if test "x$withval" = xyes; then
286
		try_guile=true
287 288 289
	fi
)

290 291 292 293 294 295 296 297 298 299 300 301 302 303 304
dnl if $try_guile; then
dnl 	AC_MSG_CHECKING(for guile >= 1.5)
dnl 	if test "`guile -c '(display (string>=? (version) "1.4.1"))'`" != "#t"; then
dnl   		AC_MSG_RESULT([Your Guile is too old.  You need Guile 1.5 or later.])
dnl 	else
dnl 	        AC_MSG_RESULT(found)
dnl 		guile_msg="yes"
dnl 		enable_guile=true
dnl 	fi
dnl 	
dnl fi
dnl if $enable_guile; then
dnl 	GNOME_CHECK_GUILE
dnl fi
AM_CONDITIONAL(WITH_GUILE, $enable_guile)
Arturo Espinosa's avatar
Arturo Espinosa committed
305

Jody Goldberg's avatar
Jody Goldberg committed
306 307 308
dnl **************************************************
dnl * psiconv support
dnl **************************************************
309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326
dnl PSICONV_INIT()
dnl if test "$want_psiconv" = "yes"; then
dnl 	ac_save_CFLAGS="$CFLAGS"
dnl 	ac_save_LIBS="$LIBS"
dnl 	CFLAGS="$CFLAGS $psiconv_cflags"
dnl 	LIBS="$LIBS $psiconv_libs"
dnl 	AC_CHECK_LIB(psiconv,psiconv_parse_sheet_file,want_psiconv=yes,want_psiconv=no)
dnl 	CFLAGS="$ac_save_CFLAGS"
dnl 	LIBS="$ac_save_LIBS"
dnl 
dnl 	if test "$want_psiconv" = "no"; then
dnl 		PSICONV_LIBS=""
dnl 		PSICONV_CFLAGS=""
dnl 		enable_psiconv=false
dnl 	fi
dnl fi
enable_psiconv=false
AM_CONDITIONAL(WITH_PSICONV,$enable_psiconv)
Jody Goldberg's avatar
Jody Goldberg committed
327

Jody Goldberg's avatar
Jody Goldberg committed
328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343
dnl **************************************************
dnl stolen from gtk+
AC_MSG_CHECKING(whether make is GNU Make)
STRIP_BEGIN=
STRIP_END=
if $ac_make --version 2>/dev/null | grep '^GNU Make ' >/dev/null ; then
	STRIP_BEGIN='$(strip $(STRIP_DUMMY)'
	STRIP_END=')'
	AC_MSG_RESULT(yes)
else
	AC_MSG_RESULT(no)
fi
STRIP_DUMMY=
AC_SUBST(STRIP_DUMMY)
AC_SUBST(STRIP_BEGIN)
AC_SUBST(STRIP_END)
Jody Goldberg's avatar
Jody Goldberg committed
344

345 346 347 348 349 350 351
dnl **************************************************
dnl * internationalization support
dnl **************************************************
dnl
dnl Check doc/translating.sgml for a description of how to translate
dnl and why we have so many translations.
dnl
Pablo Saratxaga's avatar
Pablo Saratxaga committed
352
ALL_LINGUAS="ca cs da de en_AU en_CA en_GB el es et fi fr ga gl hr hu it ja ko nl nn no pl pt pt_BR ro ru sk sv tr uk vi zh_CN zh_TW"
Jody Goldberg's avatar
Jody Goldberg committed
353 354 355 356 357
GETTEXT_PACKAGE=gnumeric
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE")
AM_GLIB_GNU_GETTEXT

358 359
# AM_GNOME_GETTEXT above substs $DATADIRNAME
# this is the directory where the *.{mo,gmo} files are installed
360 361 362 363
AC_MSG_CHECKING(locale directory)
GNUMERIC_LOCALE_DIR="${prefix}/${DATADIRNAME}/locale"
AC_DEFINE_UNQUOTED(GNUMERIC_LOCALE_DIR,"$GNUMERIC_LOCALE_DIR")
AC_MSG_RESULT("$GNUMERIC_LOCALE_DIR")
364

365 366 367 368 369 370 371
#AC_PATH_PROG(TPUT_CMD,tput,no)
TPUT_CMD=no
marker_ok="<yes >"
marker_fail="<FAIL>"
marker_no="<NO  >"
if test "$TPUT_CMD" '!=' no  -a  -t 1  -a  -t 2; then
  # We have tput and output goes to a terminal.
372 373 374 375
  marker_ok="<`$TPUT_CMD bold`yes`$TPUT_CMD sgr0` >"
  marker_fail="<`$TPUT_CMD bold`fail`$TPUT_CMD sgr0`>"
  marker_no="<`$TPUT_CMD bold`no`$TPUT_CMD sgr0`  >"
fi
376

377 378
dnl
dnl On Solaris finite() needs ieeefp.h
379
dnl Either of these seem to signal IEEE754 math, see mathfunc.c
380
dnl
381
AC_CHECK_HEADERS(ieeefp.h ieee754.h)
382

Morten Welinder's avatar
Morten Welinder committed
383
dnl Check for some functions
384 385
AC_CHECK_FUNCS(random drand48 finite)

Morten Welinder's avatar
Morten Welinder committed
386 387 388
dnl FIXME: Does this really belong here?
AC_CHECK_FUNC(bind_textdomain_codeset,,[AC_CHECK_LIB(intl,bind_textdomain_codeset)])

389 390
dnl isfinite is a macro on HPUX
AC_TRY_COMPILE([#include <math.h>], [int a = isfinite(0.0)], [AC_DEFINE(HAVE_ISFINITE)], [])
Morten Welinder's avatar
Morten Welinder committed
391

Morten Welinder's avatar
56857.  
Morten Welinder committed
392 393 394 395 396 397 398 399 400
dnl
dnl On BSD, we seem to need -lm for finite
dnl
if test $ac_cv_func_finite = no; then
  AC_CHECK_LIB(m, finite,
        [AC_DEFINE(HAVE_FINITE)
         LIBS="$LIBS -lm"])
fi

401 402 403
dnl check for complete locale implementation
AC_CHECK_HEADERS(langinfo.h)

Jody Goldberg's avatar
Jody Goldberg committed
404 405 406 407
dnl we need iconv for translating to/from locale's charset when
dnl reading/writing Excel files
AC_CHECK_HEADERS(iconv.h)

Jon Kåre Hellan's avatar
Jon Kåre Hellan committed
408 409 410
dnl iswprint/iswspace are sometimes in wctype.h
AC_CHECK_HEADERS(wctype.h)

411 412 413
dnl **************************************************
dnl * Check for Perl
dnl **************************************************
414 415 416
dnl
AC_CHECK_PROG(perl_val, perl, true, false)
if $perl_val; then
417
  AC_MSG_CHECKING(for perl ExtUtils::Embed module				)
418 419
  perl -e 'eval { require ExtUtils::Embed }; if ($@) { exit(1); } else { exit(0); }'
  if test "x$?" = "x0"; then
420
    AC_MSG_RESULT($marker_ok)
421 422

    dnl Use ExtUtils::Embed to figure out the other options.
423 424
    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
425
    PERL_CC=`perl -MConfig -e 'print $Config{cc},"\n";'`
426
    PERL_LD=`perl -MConfig -e 'print $Config{ld},"\n";'`
427 428
    PERL_CCOPTS=`perl -MExtUtils::Embed -e ccopts`
    PERL_LDOPTS=`perl -MExtUtils::Embed -e ldopts`
429 430
    AC_SUBST(PERL_CCCDLFLAGS)
    AC_SUBST(PERL_LDDLFLAGS)
Raja R Harinath's avatar
Raja R Harinath committed
431
    AC_SUBST(PERL_CC)
432
    AC_SUBST(PERL_LD)
433 434 435
    AC_SUBST(PERL_CCOPTS)
    AC_SUBST(PERL_LDOPTS)
  else
436
    AC_MSG_RESULT($marker_no)
437 438 439
    perl_val=false
  fi
fi
Jody Goldberg's avatar
update  
Jody Goldberg committed
440 441

dnl Disable perl until we have an active maintainer
Morten Welinder's avatar
Morten Welinder committed
442
AM_CONDITIONAL(WITH_PERL, false)
443

444 445 446
dnl **************************************************
dnl * Check for Python
dnl **************************************************
447
try_python=true
Jon Kåre Hellan's avatar
Jon Kåre Hellan committed
448
try_pygtk=false
449
AC_ARG_WITH(python,
450
	[--{with,without}-python   Compile the Python plugin loader],
Jody Goldberg's avatar
Jody Goldberg committed
451
	if test "x$withval" = xno; then
452
		try_python=false
Jody Goldberg's avatar
Jody Goldberg committed
453
	else
Jody Goldberg's avatar
Jody Goldberg committed
454
		python_prog="$withval"
455 456 457 458
	fi
)

if $try_python; then
Jody Goldberg's avatar
Jody Goldberg committed
459 460 461 462
	if test "x$python_prog" = xyes -o "x$python_prog" = x ; then
	    python_prog=python
	fi

463
	python_val=
Jody Goldberg's avatar
Jody Goldberg committed
464
	AC_CHECK_PROG(python_val, "$python_prog", true, false)
465
	if $python_val; then
466
		  PY_PREFIX=`$python_prog -c 'import sys ; print sys.prefix'`
Jon Kåre Hellan's avatar
Jon Kåre Hellan committed
467
		  PY_EXEC_PREFIX=`$python_prog -c 'import sys ; print sys.exec_prefix'`
468
		  changequote(<<, >>)dnl
469
		  PY_VERSION=`$python_prog -c 'import sys ; print sys.version[0:3]'`
470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487
		  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
	fi
488 489 490 491 492 493 494 495 496 497 498 499
	if $python_val; then
		AC_MSG_CHECKING(if we can build a shared library depending on libpython)
		rm -rf testpython
		mkdir testpython
		cd testpython
		cat > testpython.c <<EOF
#include <Python.h>
int testpython (void)
{
Py_Exit (0);
}
EOF
500 501 502
		if /bin/sh ../libtool --mode=compile ${CC} $PY_CFLAGS -c testpython.c >/dev/null 2>&1 && \
		   /bin/sh ../libtool --mode=link ${CC} -o testpython.la -rpath `pwd` -module -avoid-version $PY_LIB_LOC testpython.lo -l$PY_LIBS $PY_EXTRA_LIBS >/dev/null 2>&1 && \
		   grep 'dlname.*testpython' testpython.la >/dev/null 2>&1; then
503 504 505 506 507 508 509 510
			AC_MSG_RESULT(yes)
		else
			AC_MSG_RESULT(no)
			python_val=false
		fi
		cd ..
		rm -rf testpython
	fi
511
	AM_CONDITIONAL(WITH_PYTHON, $python_val)
Jon Kåre Hellan's avatar
Jon Kåre Hellan committed
512
	try_pygtk=$python_val
513 514
else
	AM_CONDITIONAL(WITH_PYTHON, false)
515
fi
Jon Kåre Hellan's avatar
Jon Kåre Hellan committed
516 517 518 519 520 521 522 523 524 525
pygtk_msg="no"
if test "x$try_pygtk" = "xtrue"; then
	PKG_CHECK_MODULES(PYGTK, pygtk-2.0 >= 1.99.10,
			  [pygtk_msg="yes"],
		          [pygtk_msg="NO.  pygtk problem"])
	AC_SUBST(PYGTK_CFLAGS)
fi
if test "x$pygtk_msg" = "xyes"; then
	AC_DEFINE(WITH_PYGTK)
fi
526

527
try_bonobo=false
528
bonobo_msg="disabled"
529
AC_ARG_WITH(bonobo,
Jody Goldberg's avatar
Jody Goldberg committed
530
	[--{with,without}-bonobo   Use the bonobo UI routines],
Jody Goldberg's avatar
Jody Goldberg committed
531
	if test "x$withval" = xyes; then
532
		try_bonobo=true
533 534
	fi
)
535 536 537 538 539 540 541 542 543 544 545 546 547 548 549
if test "x$try_bonobo" = "xtrue"; then
	PKG_CHECK_MODULES(LIBBONOBO, [
		libbonobo-2.0 >= 1.115.0
		libbonoboui-2.0
		bonobo-activation-2.0
		],	
		[bonobo_msg="yes"],
		[bonobo_msg="NO. xxx problem"])
fi

if test "x$bonobo_msg" = "xyes"; then
	bonobo_suffix=-bonobo
	AC_DEFINE(WITH_BONOBO)
        gnumeric_bonobo_enabled=true
else
Jody Goldberg's avatar
typo  
Jody Goldberg committed
550
        gnumeric_bonobo_enabled=false
551 552
fi
AM_CONDITIONAL(WITH_BONOBO, $gnumeric_bonobo_enabled)
553

554 555 556
dnl **************************************************
dnl * Config defaults (Must be after bonobo)
dnl **************************************************
557 558
gnumeric_prefix="${prefix}"
gnumeric_exec_prefix="${exec_prefix}"
559
gnumeric_version="${VERSION}${bonobo_suffix}"
560 561 562 563
gnumeric_datadir="${datadir}/gnumeric/${gnumeric_version}"
gnumeric_libdir="${libdir}/gnumeric/${gnumeric_version}"
gnumeric_plugindir="${gnumeric_libdir}/plugins"
gnumeric_gladedir="${gnumeric_datadir}/glade"
Jody Goldberg's avatar
Jody Goldberg committed
564 565
gnumeric_icondir="${datadir}/pixmaps/gnumeric"

566
gnumeric_autoformatdir="${gnumeric_datadir}/autoformat-templates"
567

Jody Goldberg's avatar
Jody Goldberg committed
568
dnl Export to gnumeric-config.h
Almer. S. Tigelaar's avatar
Almer. S. Tigelaar committed
569
AC_DEFINE_UNQUOTED(GNUMERIC_VERSION, "$gnumeric_version")
Jody Goldberg's avatar
Jody Goldberg committed
570
AC_DEFINE_UNQUOTED(GNUMERIC_PREFIX,  "$gnumeric_prefix")
Almer. S. Tigelaar's avatar
Almer. S. Tigelaar committed
571

572 573 574 575 576 577 578
AC_SUBST(gnumeric_prefix)
AC_SUBST(gnumeric_exec_prefix)
AC_SUBST(gnumeric_datadir)
AC_SUBST(gnumeric_version)
AC_SUBST(gnumeric_libdir)
AC_SUBST(gnumeric_plugindir)
AC_SUBST(gnumeric_gladedir)
Jody Goldberg's avatar
Jody Goldberg committed
579
AC_SUBST(gnumeric_icondir)
580
AC_SUBST(gnumeric_autoformatdir)
581
AC_SUBST(gnumeric_bonobo_enabled)
582

583 584 585 586 587 588 589 590 591 592 593 594
dnl ==============================================
dnl Special GConf section  (stolen from libgnome)
dnl ==============================================

AC_PATH_PROG(GCONFTOOL, gconftool-2, no)

if test x"$GCONFTOOL" = xno; then
  AC_MSG_ERROR([gconftool-2 executable not found in your path - should be installed with GConf])
fi

AM_GCONF_SOURCE_2

595 596 597
dnl ******************************
dnl Check for Evolution
dnl ******************************
Jody Goldberg's avatar
Jody Goldberg committed
598
try_evolution=false
599 600
evolution=no
AC_ARG_WITH(evolution,
Jody Goldberg's avatar
Jody Goldberg committed
601
	[--{with,without}-evolution Use evolution to send spreadsheets (bonobo needed).],
602
	if test "x$withval" = xyes; then
Jody Goldberg's avatar
Jody Goldberg committed
603
		try_evolution=true
604 605
	fi
)
606
if test x"$have_bonobo" = "xtrue" -a x"$try_evolution" = "xtrue" ; then
Jody Goldberg's avatar
Jody Goldberg committed
607
	path_to_composer_idl=`pkg-config --datadir`/idl/Evolution-Composer.idl
608
	AC_CHECK_FILE($path_to_composer_idl, evolution=yes, evolution=no)
609 610 611 612 613
 	if test x"$evolution" = "xno" ; then
 		echo "Debian build hack: enabling Evolution support anyway;"
 		echo "be sure to set EVOLUTION_IDL_DIR to a dir containing Evolution-Composer.idl"
 		evolution=yes
 	fi
614
fi
Jody Goldberg's avatar
Jody Goldberg committed
615
AM_CONDITIONAL(ENABLE_EVOLUTION, test x"$evolution" = "xyes")
616 617 618
if test x"$evolution" = "xyes" ; then
    AC_DEFINE(ENABLE_EVOLUTION)
fi
619

620 621 622 623 624 625 626 627 628
dnl ******************************
dnl Check for Applix SHELF
dnl ******************************
dnl try_applix_shelf=false
dnl applix_shelf=
dnl applix_shelf_msg=no
dnl have_applix_shelf=false
dnl AC_ARG_WITH(applix_shelf,
dnl	[--{with,without}-shelf   Compile with Applix SHELF support or without it],
629
dnl	if test "x$withval" = xyes; then
630 631 632
dnl		try_applix_shelf=true
dnl	fi
dnl)
633

Jody Goldberg's avatar
Jody Goldberg committed
634 635 636 637 638
ORBIT="`$PKG_CONFIG --variable=orbit_idl ORBit-2.0`"
BONOBO_IDL_DIR="`$PKG_CONFIG --variable=idldir libbonobo-2.0`"
BONOBO_ACTIVATION_IDL_DIR="`$PKG_CONFIG --variable=idldir bonobo-activation-2.0`"
ORBIT_IDL="${ORBIT} -I${BONOBO_IDL_DIR} -I${BONOBO_ACTIVATION_IDL_DIR}"
AC_SUBST(ORBIT_IDL)
639

640 641 642
dnl ====================================
dnl = Plan Perfect Plugin
dnl ====================================
Morten Welinder's avatar
Morten Welinder committed
643
AM_CONDITIONAL(WITH_PLAN_PERFECT, false)
Jody Goldberg's avatar
Jody Goldberg committed
644

645 646 647 648 649 650 651 652 653 654 655 656 657 658 659
dnl ====================================
dnl = Test whether jw is installed
dnl ====================================
AC_PATH_PROG(JW,jw,no)
if test x$JW = xno; then
  HAVE_JW="no"
else
  HAVE_JW="yes"
fi
AM_CONDITIONAL(HAVE_JW, test "x$HAVE_JW" = "xyes")
AC_SUBST(HAVE_JW)
dnl ====================================
dnl = End tests for jw
dnl ====================================

Arturo Espinosa's avatar
Arturo Espinosa committed
660
AC_OUTPUT([
661
gnumeric.spec
662
GNOME_Gnumeric.server.in
Arturo Espinosa's avatar
Arturo Espinosa committed
663
Makefile
Jody Goldberg's avatar
Jody Goldberg committed
664
src/Makefile
665
icons/Makefile
Miguel de Icaza's avatar
Miguel de Icaza committed
666
idl/Makefile
Arturo Espinosa's avatar
Arturo Espinosa committed
667
src/Makefile
668
src/dialogs/Makefile
Jody Goldberg's avatar
Jody Goldberg committed
669 670
src/pixmaps/Makefile
src/widgets/Makefile
671 672 673
src/tools/Makefile
src/tools/solver/Makefile
src/tools/solver/lp_solve/Makefile
674
doc/Makefile
675
doc/C/Makefile
Jody Goldberg's avatar
Jody Goldberg committed
676 677 678 679 680 681 682 683 684 685 686
doc/de/Makefile
doc/es/Makefile
doc/hu/Makefile
doc/ja/Makefile
doc/nl/Makefile
doc/no/Makefile
doc/pl/Makefile
doc/pt/Makefile
doc/ru/Makefile
doc/sk/Makefile
doc/sv/Makefile
Jody Goldberg's avatar
Jody Goldberg committed
687
omf-install/Makefile
Arturo Espinosa's avatar
Arturo Espinosa committed
688
plugins/Makefile
Morten Welinder's avatar
Morten Welinder committed
689
plugins/numtheory/Makefile
690
plugins/fn-database/Makefile
Morten Welinder's avatar
Morten Welinder committed
691
plugins/fn-date/Makefile
692
plugins/fn-eng/Makefile
Morten Welinder's avatar
Morten Welinder committed
693
plugins/fn-financial/Makefile
Morten Welinder's avatar
Morten Welinder committed
694
plugins/fn-info/Makefile
Morten Welinder's avatar
Morten Welinder committed
695
plugins/fn-logical/Makefile
696
plugins/fn-lookup/Makefile
Morten Welinder's avatar
Morten Welinder committed
697
plugins/fn-math/Makefile
698
plugins/fn-stat/Makefile
Morten Welinder's avatar
Morten Welinder committed
699
plugins/fn-string/Makefile
Morten Welinder's avatar
Morten Welinder committed
700
plugins/derivatives/Makefile
701
plugins/sc/Makefile
702
plugins/sylk/Makefile
703
plugins/excel/Makefile
Jody Goldberg's avatar
typos  
Jody Goldberg committed
704
plugins/gda/Makefile
705
plugins/gb/Makefile
Michael Meeks's avatar
Michael Meeks committed
706
plugins/lotus-123/Makefile
707
plugins/oleo/Makefile
708
plugins/python/Makefile
709 710 711
plugins/python-loader/Makefile
plugins/gnome-glossary/Makefile
plugins/py-func/Makefile
712
plugins/perl/Makefile
713
plugins/perl/ext/Makefile.PL
Mark Probst's avatar
Mark Probst committed
714
plugins/guile/Makefile
Michael Meeks's avatar
Michael Meeks committed
715
plugins/xbase/Makefile
716
plugins/html/Makefile
717
plugins/dif/Makefile
Jody Goldberg's avatar
Jody Goldberg committed
718
plugins/xml_sax/Makefile
Jody Goldberg's avatar
Jody Goldberg committed
719
plugins/applix/Makefile
Jody Goldberg's avatar
Jody Goldberg committed
720
plugins/psiconv/Makefile
Jukka-Pekka Iivonen's avatar
Jukka-Pekka Iivonen committed
721
plugins/mps/Makefile
Jody Goldberg's avatar
Jody Goldberg committed
722
plugins/sample_datasource/Makefile
Arturo Espinosa's avatar
Arturo Espinosa committed
723
po/Makefile.in
Jody Goldberg's avatar
Jody Goldberg committed
724
schemas/Makefile
Jody Goldberg's avatar
Jody Goldberg committed
725 726
templates/Makefile
templates/english/Makefile
727
templates/autoformat/Makefile
728
stamp.h
Fatih Demir's avatar
Fatih Demir committed
729
])
730

731

732 733
echo "

734 735 736 737 738 739 740 741 742 743
WARNING WARNING WARNING

    This is the _DEVELOPMENT_ branch of gnumeric.  It is undergoing rapid change
    and is _NOT_ suitable for packaging or production work.  Please use the
    stable branch

	cvs co -r gnome_1_4 gnumeric

WARNING WARNING WARNING

744 745 746
Configuration:

	Source code location:	${srcdir}
Morten Welinder's avatar
Morten Welinder committed
747
	Compiler:		${CC}
Morten Welinder's avatar
Morten Welinder committed
748
	Compiler flags:		${CFLAGS}
Morten Welinder's avatar
Morten Welinder committed
749
	Floating point type:	${float_msg}
750

Morten Welinder's avatar
Morten Welinder committed
751
	MS Excel Support:	${excel_msg}
752 753 754
	GDA support:		${gda_msg}
	GB support:		${gb_msg}

755
	Bonobo Support:		${bonobo_msg}
756
	Guile Support:		${guile_msg}
Jody Goldberg's avatar
Jody Goldberg committed
757
	Evolution Support:      ${evolution}
758
"