OSDN Git Service

d1f34ca28b389253d5c419b0c98e0512ddf589db
[pf3gnuchains/gcc-fork.git] / libjava / classpath / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2
3 dnl -----------------------------------------------------------
4 dnl Turning off cache for debug reasons
5 dnl -----------------------------------------------------------
6 dnl define([AC_CACHE_LOAD], )dnl
7 dnl define([AC_CACHE_SAVE], )dnl
8
9 AC_INIT([GNU Classpath],[0.96-pre],[classpath@gnu.org],[classpath])
10 AC_CONFIG_SRCDIR(java/lang/System.java)
11
12 dnl GCJ LOCAL
13 AC_CONFIG_AUX_DIR(../..)
14 dnl END GCJ LOCAL
15
16 AC_CANONICAL_TARGET
17
18 dnl GCJ LOCAL
19 AC_ARG_ENABLE(java-maintainer-mode,
20         AS_HELP_STRING([--enable-java-maintainer-mode],
21         [allow rebuilding of .class and .h files]))
22 AM_CONDITIONAL(JAVA_MAINTAINER_MODE, test "$enable_java_maintainer_mode" = yes)
23 dnl END GCJ LOCAL
24
25 dnl GCJ LOCAL
26 # We would like to our source tree to be readonly.  However when releases or
27 # pre-releases are generated, the man pages need to be included as they are
28 # converted from the texi files via perl which we don't require end users to
29 # have installed.
30 # Therefore we have --enable-generated-files-in-srcdir to do just that.
31
32 AC_MSG_CHECKING([whether to place generated files in the source directory])
33   dnl generated-files-in-srcdir is disabled by default
34   AC_ARG_ENABLE(generated-files-in-srcdir, 
35 [  --enable-generated-files-in-srcdir
36                           put copies of generated files in source dir
37                           intended for creating source tarballs for users
38                           without texinfo, perl, bison or flex.],
39       generated_files_in_srcdir=$enableval,
40       generated_files_in_srcdir=no)
41
42 AC_MSG_RESULT($generated_files_in_srcdir)
43 AM_CONDITIONAL(GENINSRC, test x$generated_files_in_srcdir = xyes)
44 dnl END GCJ LOCAL
45
46 # Find the rest of the source tree framework.
47 AM_ENABLE_MULTILIB(, ../..)
48
49 dnl -----------------------------------------------------------
50 dnl Fold all IA-32 CPU architectures into "x86"
51 dnl -----------------------------------------------------------
52 if expr ${target_cpu} : '.*86' > /dev/null; then target_cpu=x86; fi
53
54 dnl -----------------------------------------------------------
55 dnl We will not track/change lib version until we reach version 1.0
56 dnl at which time we'll have to be more anal about such things
57 dnl -----------------------------------------------------------
58 AC_SUBST(LIBVERSION, "0:0:0")
59 case "$host_os" in
60      darwin*)
61         cp_module=""
62         ;;
63         *)
64         cp_module="-module"
65         ;;
66 esac
67
68 CLASSPATH_MODULE="${cp_module} -version-info ${LIBVERSION} -no-undefined"
69 AC_SUBST(CLASSPATH_MODULE)
70
71 CLASSPATH_CONVENIENCE="-no-undefined"
72 AC_SUBST(CLASSPATH_CONVENIENCE)
73
74 AC_PREREQ(2.59)
75 AM_INIT_AUTOMAKE([1.9.0 gnu std-options tar-ustar -Wno-portability])
76 AC_CONFIG_HEADERS([include/config.h])
77 AC_PREFIX_DEFAULT(/usr/local/classpath)
78
79 dnl GCC LOCAL
80 GCC_NO_EXECUTABLES
81
82 dnl -----------------------------------------------------------
83 dnl Enable collections.jar (disabled by default)
84 dnl -----------------------------------------------------------
85 AC_ARG_ENABLE([collections],
86               [AS_HELP_STRING(--enable-collections,create collections.jar [default=no])],
87               [case x"${enableval}" in
88                 xyes) COMPILE_COLLECTIONS=yes; COLLECTIONS_PREFIX="\"gnu/java/util/collections\"" ;;
89                 xno) COMPILE_COLLECTIONS=no ;;
90                 x) COMPILE_COLLECTIONS=yes; COLLECTIONS_PREFIX="\"gnu/java/util/collections\"" ;;
91                 *) COMPILE_COLLECTIONS=yes; COLLECTIONS_PREFIX="\"${enableval}\"" ;;
92               esac],
93               [COMPILE_COLLECTIONS=no])
94 AM_CONDITIONAL(CREATE_COLLECTIONS, test "x${COMPILE_COLLECTIONS}" = xyes)
95
96 dnl -----------------------------------------------------------
97 dnl Enable JNI libraries (enabled by default)
98 dnl -----------------------------------------------------------
99 AC_ARG_ENABLE([jni],
100               [AS_HELP_STRING(--enable-jni,compile JNI source [default=yes])],
101               [case "${enableval}" in 
102                 yes) COMPILE_JNI=yes; COMPILE_JAVA=yes ;;
103                 no) COMPILE_JNI=no ;;
104                 *) COMPILE_JNI=yes; COMPILE_JAVA=yes ;;
105               esac],
106               [COMPILE_JNI=yes])
107 AM_CONDITIONAL(CREATE_JNI_LIBRARIES, test "x${COMPILE_JNI}" = xyes)
108
109 dnl -----------------------------------------------------------
110 dnl Enable core JNI libraries (enabled by default)
111 dnl -----------------------------------------------------------
112 AC_ARG_ENABLE([core-jni],
113               [AS_HELP_STRING(--enable-core-jni,
114                               compile JNI sources for core [default=yes])],
115               [case "${enableval}" in 
116                 yes) COMPILE_CORE_JNI=yes; COMPILE_JAVA=yes ;;
117                 no) COMPILE_CORE_JNI=no ;;
118                 *) COMPILE_CORE_JNI=yes; COMPILE_JAVA=yes ;;
119               esac],
120               [COMPILE_CORE_JNI=yes])
121 AM_CONDITIONAL(CREATE_CORE_JNI_LIBRARIES, test "x${COMPILE_CORE_JNI}" = xyes)
122
123 dnl -----------------------------------------------------------
124 dnl Default Preference Backend
125 dnl -----------------------------------------------------------
126 AC_ARG_ENABLE([default-preferences-peer],
127               [AS_HELP_STRING([--enable-default-preferences-peer@<:@=peer type or class name@:>@],
128                               [specify one of: "gconf" [default] for a GConf based backend, "file" for a file based one, "memory" for a transient one, or a fully qualified class name implementing java.util.prefs.PreferencesFactory])],
129               [case "${enableval}" in 
130                 file) DEFAULT_PREFS_PEER=gnu.java.util.prefs.FileBasedFactory  ;;
131                 gconf|yes|true) DEFAULT_PREFS_PEER=gnu.java.util.prefs.GConfBasedFactory  ;;
132                 memory) DEFAULT_PREFS_PEER=gnu.java.util.prefs.MemoryBasedFactory  ;;
133                 no|false) AC_MSG_ERROR(bad value '${enableval}' for --enable-default-preferences-peer) ;;
134                 *) DEFAULT_PREFS_PEER=${enableval} ;;
135               esac],
136               [DEFAULT_PREFS_PEER=gnu.java.util.prefs.GConfBasedFactory])
137 dnl AC_SUBST(DEFAULT_PREFS_PEER)
138
139 dnl -----------------------------------------------------------
140 dnl GConf native peer (enabled by default)
141 dnl -----------------------------------------------------------
142 AC_ARG_ENABLE([gconf-peer],
143               [AS_HELP_STRING(--disable-gconf-peer,compile GConf native peers (disabled by --disable-jni) [default=yes])],
144               [case "${enableval}" in
145                 yes) COMPILE_GCONF_PEER=yes ;;
146                 no) COMPILE_GCONF_PEER=no ;;
147                 *) COMPILE_GCONF_PEER=yes ;;
148               esac],
149               [COMPILE_GCONF_PEER=yes])
150 AM_CONDITIONAL(CREATE_GCONF_PEER_LIBRARIES, test "x${COMPILE_GCONF_PEER}" = xyes)
151
152 dnl -----------------------------------------------------------
153 dnl GConf native peer error checking
154 dnl -----------------------------------------------------------
155 AC_ARG_ENABLE([gconf-peers],,AC_MSG_ERROR([No --enable-gconf-peers (or --disable-gconf-peers) option; you want --enable-gconf-peer]))
156
157 dnl ------------------------------------------------------------
158 dnl GStreamer based sound provider backend (disabled by default)
159 dnl ------------------------------------------------------------
160 AC_ARG_ENABLE([gstreamer-peer],
161               [AS_HELP_STRING(--enable-gstreamer-peer,compile GStreamer native peers (disabled by --disable-jni) [default=no])],
162               [case "${enableval}" in
163                 yes) COMPILE_GSTREAMER_PEER=yes ;;
164                 no) COMPILE_GSTREAMER_PEER=no ;;
165                 *) COMPILE_GSTREAMER_PEER=default ;;
166               esac],
167               [COMPILE_GSTREAMER_PEER=default])
168 AM_CONDITIONAL(CREATE_GSTREAMER_PEER_LIBRARIES, test "x${COMPILE_GSTREAMER_PEER}" = xyes)
169
170 dnl -----------------------------------------------------------
171 dnl GStreamer native peer error checking
172 dnl -----------------------------------------------------------
173 AC_ARG_ENABLE([gstreamer-peers],,AC_MSG_ERROR([No --enable-gstreamer-peers (or --disable-gstreamer-peers) option; you want --enable-gstreamer-peer]))
174
175 dnl ------------------------------------------------------------
176 dnl Whether to compile with -Werror or not (disabled by default)
177 dnl ------------------------------------------------------------
178 AC_ARG_ENABLE([Werror],
179               [AS_HELP_STRING(--enable-Werror,whether to compile C code with -Werror which turns any compiler warning into a compilation failure [default=no])],
180               [case "${enableval}" in
181                 yes) ENABLE_WERROR=yes ;;
182                 no) ENABLE_WERROR=no ;;
183                 *) ENABLE_WERROR=default ;;
184               esac],
185               [ENABLE_WERROR=default])
186
187 dnl -----------------------------------------------------------
188 dnl Default AWT toolkit
189 dnl -----------------------------------------------------------
190 AC_ARG_ENABLE(default-toolkit,
191   AS_HELP_STRING([--enable-default-toolkit],
192                  [fully qualified class name of default AWT toolkit]))
193 default_toolkit=$enable_default_toolkit
194 if test "$default_toolkit" = ""; then
195    default_toolkit=gnu.java.awt.peer.gtk.GtkToolkit
196 fi
197 AC_SUBST(default_toolkit)
198
199 dnl -----------------------------------------------------------
200 dnl Native libxml/xslt library (disabled by default)
201 dnl -----------------------------------------------------------
202 AC_ARG_ENABLE([xmlj],
203               [AS_HELP_STRING(--enable-xmlj,compile native libxml/xslt library [default=no])],
204               [case "${enableval}" in
205                 yes) COMPILE_XMLJ=yes ;;
206                 no) COMPILE_XMLJ=no ;;
207                 *) COMPILE_XMLJ=no ;;
208               esac],
209               [COMPILE_XMLJ=no])
210 AM_CONDITIONAL(CREATE_XMLJ_LIBRARY, test "x${COMPILE_XMLJ}" = xyes)
211
212 dnl -----------------------------------------------------------
213 dnl ALSA code (enabled by default)
214 dnl -----------------------------------------------------------
215 AC_ARG_ENABLE([alsa],
216               [AS_HELP_STRING(--disable-alsa,compile ALSA providers (enable by --enable-alsa) [default=yes])],
217               [case "${enableval}" in
218                 yes) COMPILE_ALSA=yes ;;
219                 no) COMPILE_ALSA=no ;;
220                 *) COMPILE_ALSA=yes ;;
221               esac],
222               [AC_CHECK_HEADERS([alsa/asoundlib.h],
223                                 [AC_CHECK_LIB([asound], [snd_seq_open], COMPILE_ALSA=yes,COMPILE_ALSA=no)],
224                                 COMPILE_ALSA=no)])
225 AM_CONDITIONAL(CREATE_ALSA_LIBRARIES, test "x${COMPILE_ALSA}" = xyes)
226
227 dnl -----------------------------------------------------------
228 dnl DSSI code (enabled by default)
229 dnl -----------------------------------------------------------
230 AC_ARG_ENABLE([dssi],
231               [AS_HELP_STRING(--disable-dssi,compile DSSI providers (enable by --enable-dssi) [default=yes])],
232               [case "${enableval}" in
233                 yes) COMPILE_DSSI=yes ;;
234                 no) COMPILE_DSSI=no ;;
235                 *) COMPILE_DSSI=yes ;;
236               esac],
237               [COMPILE_DSSI=no
238                AC_CHECK_HEADERS([dssi.h], [
239                  AC_CHECK_HEADERS([jack/jack.h],COMPILE_DSSI=yes)])])
240 AM_CONDITIONAL(CREATE_DSSI_LIBRARIES, test "x${COMPILE_DSSI}" = xyes)
241
242 dnl -----------------------------------------------------------
243 dnl GTK native peer (enabled by default)
244 dnl -----------------------------------------------------------
245 AC_ARG_ENABLE([gtk-peer],
246               [AS_HELP_STRING(--disable-gtk-peer,compile GTK native peers (disabled by --disable-jni) [default=yes])],
247               [case "${enableval}" in
248                 yes) COMPILE_GTK_PEER=yes ;;
249                 no) COMPILE_GTK_PEER=no ;;
250                 *) COMPILE_GTK_PEER=yes ;;
251               esac],
252               [COMPILE_GTK_PEER=yes])
253 AM_CONDITIONAL(CREATE_GTK_PEER_LIBRARIES, test "x${COMPILE_GTK_PEER}" = xyes)
254
255 dnl -----------------------------------------------------------
256 dnl GTK native peer error checking 
257 dnl -----------------------------------------------------------
258 AC_ARG_ENABLE([gtk-peers],,AC_MSG_ERROR([No --enable-gtk-peers (or --disable-gtk-peers) option; you want --enable-gtk-peer]))
259
260 dnl -----------------------------------------------------------
261 dnl Qt native peer (disabled by default)
262 dnl -----------------------------------------------------------
263 AC_ARG_ENABLE([qt-peer],
264               [AS_HELP_STRING(--enable-qt-peer,compile Qt4 native peers (disabled by --disable-jni) [default=no])],
265               [case "${enableval}" in
266                 yes) COMPILE_QT_PEER=yes ;;
267                 no) COMPILE_QT_PEER=no ;;
268                 *) COMPILE_QT_PEER=yes ;;
269               esac],
270               [COMPILE_QT_PEER=no])
271 AM_CONDITIONAL(CREATE_QT_PEER_LIBRARIES, test "x${COMPILE_QT_PEER}" = xyes)
272
273 dnl -----------------------------------------------------------
274 dnl Plugin (enabled by default)
275 dnl -----------------------------------------------------------
276 AC_ARG_ENABLE([plugin],
277               [AS_HELP_STRING(--disable-plugin,compile gcjwebplugin (disabled by --disable-plugin) [default=yes])],
278               [case "${enableval}" in
279                 yes) COMPILE_PLUGIN=yes ;;
280                 no) COMPILE_PLUGIN=no ;;
281                 *) COMPILE_PLUGIN=yes ;;
282               esac],
283               [COMPILE_PLUGIN=yes])
284 AM_CONDITIONAL(CREATE_PLUGIN, test "x${COMPILE_PLUGIN}" = xyes)
285
286 dnl -----------------------------------------------------------
287 dnl GCJ LOCAL: Calculates and substitutes toolexeclibdir.  $libdir is
288 dnl defined to the same value for all multilibs.  We define toolexeclibdir
289 dnl so that we can refer to the multilib installation directories from
290 dnl classpath's build files.
291 dnl -----------------------------------------------------------
292 CLASSPATH_TOOLEXECLIBDIR
293
294 dnl -----------------------------------------------------------
295 dnl Sets the native libraries installation dir
296 dnl -----------------------------------------------------------
297 dnl GCJ LOCAL: default to ${toolexeclibdir}/gcj-${gcc_version}-${libgcj_soversion}
298 AC_ARG_WITH([native-libdir],
299             [AS_HELP_STRING(--with-native-libdir,sets the installation directory for native libraries [default='${libdir}/${PACKAGE}'])],
300             [
301              nativeexeclibdir=${withval}
302             ],
303             [
304              nativeexeclibdir='${toolexeclibdir}/gcj-'`cat ${srcdir}/../../gcc/BASE-VER`-`awk -F: '/^[[^#]].*:/ { print $1 }' ${srcdir}/../libtool-version`
305             ])
306
307 AC_SUBST(nativeexeclibdir)
308
309 dnl -----------------------------------------------------------
310 dnl Sets the Java library installation dir.
311 dnl -----------------------------------------------------------
312 AC_ARG_WITH([glibj-dir],
313             [AS_HELP_STRING(--with-glibj-dir,sets the installation directory for glibj.zip [default='${libdir}/${PACKAGE}'])],
314             [
315              glibjdir=${withval}
316             ],
317             [
318              glibjdir='${datadir}/${PACKAGE}'
319             ])
320
321 AC_SUBST(glibjdir)
322
323 dnl -----------------------------------------------------------
324 dnl Sets the VM name for use in tool wrapper scripts
325 dnl -----------------------------------------------------------
326 AC_ARG_WITH([vm],
327             [AS_HELP_STRING(--with-vm,sets the VM binary name [default='${prefix}/bin/jamvm'])],
328             [
329              VM_BINARY=${withval}
330             ],
331             [
332              VM_BINARY='${prefix}/bin/jamvm'
333             ])
334
335 AC_SUBST(VM_BINARY)
336
337 dnl -----------------------------------------------------------
338 dnl Regenerate headers at build time (disabled by default)
339 dnl -----------------------------------------------------------
340 AC_ARG_ENABLE([regen-headers],
341               [AS_HELP_STRING(--enable-regen-headers,automatically regenerate JNI headers [default=no])],
342               [case "${enableval}" in
343                 yes) REGENERATE_JNI_HEADERS=yes ;;
344                 no) REGENERATE_JNI_HEADERS=no ;;
345                 *) REGENERATE_JNI_HEADERS=no ;;
346               esac],
347               [REGENERATE_JNI_HEADERS=no])
348 AM_CONDITIONAL(CREATE_JNI_HEADERS, test "x${REGENERATE_JNI_HEADERS}" = xyes)
349
350 dnl -----------------------------------------------------------
351 dnl Enable tool wrapper binaries (disabled by default)
352 dnl -----------------------------------------------------------
353 AC_ARG_ENABLE([tool-wrappers],
354               [AS_HELP_STRING(--enable-tool-wrappers,create tool wrapper binaries [default=no])],
355               [case x"${enableval}" in
356                 xyes)
357                   COMPILE_WRAPPERS=yes;
358                   AC_CHECK_HEADERS([ltdl.h],, [AC_MSG_ERROR(cannot find ltdl.h)])
359                   AC_CHECK_LIB(ltdl, lt_dlopen,, [AC_MSG_ERROR(cannot find libltdl)])
360                   ;;
361                 xno) COMPILE_WRAPPERS=no ;;
362                 x) COMPILE_WRAPPERS=yes ;;
363                 *) COMPILE_WRAPPERS=yes ;;
364               esac],
365               [COMPILE_WRAPPERS=no])
366 AM_CONDITIONAL(CREATE_WRAPPERS, test "x${COMPILE_WRAPPERS}" = xyes)
367
368 AC_PROG_LN_S
369 AC_PROG_INSTALL
370
371 dnl -----------------------------------------------------------
372 dnl Checks for programs.
373 dnl -----------------------------------------------------------
374
375 dnl Initialize libtool
376 AC_DISABLE_STATIC
377 AC_PROG_LIBTOOL
378 AC_PROG_AWK
379 AC_PROG_CC
380 AM_PROG_CC_C_O
381 AC_PROG_CPP
382 AC_PROG_CXX
383
384 # Handle -Werror default case.
385 if test "$ENABLE_WERROR" = default; then
386   case "$host_os" in
387     *linux*)
388       if test "$GCC" = yes; then
389         ENABLE_WERROR=yes
390       fi
391       ;;
392   esac
393 fi
394
395 if test "x${COMPILE_COLLECTIONS}" = xyes; then
396   AC_PATH_PROG(PERL, [perl])
397   AC_SUBST(PERL)
398   AC_SUBST(COLLECTIONS_PREFIX)
399   AC_CONFIG_FILES([lib/mkcollections.pl])
400   AC_CONFIG_COMMANDS([mkcollections.pl],[chmod 755 lib/mkcollections.pl])
401 fi
402
403 if test "x${COMPILE_JNI}" = xyes; then
404   GCC_ATTRIBUTE_UNUSED
405
406   AC_HEADER_STDC
407
408   dnl Checking sizeof void * is needed for fdlibm to work properly on ppc64, 
409   dnl at least. 
410   AC_COMPILE_CHECK_SIZEOF(void *)
411
412   dnl Checking for endianess.
413   AC_C_BIGENDIAN_CROSS
414   
415   dnl We check for sys/filio.h because Solaris 2.5 defines FIONREAD there.
416   dnl On that system, sys/ioctl.h will not include sys/filio.h unless
417   dnl BSD_COMP is defined; just including sys/filio.h is simpler.
418   dnl Check for crt_externs.h on Darwin.
419   AC_CHECK_HEADERS([unistd.h sys/types.h sys/config.h sys/ioctl.h \
420                     asm/ioctls.h \
421                     inttypes.h stdint.h utime.h sys/utime.h sys/filio.h \
422                     sys/time.h \
423                     sys/select.h \
424                     crt_externs.h \
425                     fcntl.h \
426                     sys/mman.h \
427                     magic.h \
428                     sys/event.h sys/epoll.h \
429                     ifaddrs.h])
430
431   AC_EGREP_HEADER(uint32_t, stdint.h, AC_DEFINE(HAVE_INT32_DEFINED, 1, [Define to 1 if you have uint32_t]))
432   AC_EGREP_HEADER(uint32_t, inttypes.h, AC_DEFINE(HAVE_INT32_DEFINED, 1, [Define to 1 if you have uint32_t]))
433   AC_EGREP_HEADER(u_int32_t, sys/types.h, AC_DEFINE(HAVE_BSD_INT32_DEFINED, 1, [Define to 1 if you have BSD u_int32_t]))
434   AC_EGREP_HEADER(u_int32_t, sys/config.h, AC_DEFINE(HAVE_BSD_INT32_DEFINED, 1, [Define to 1 if you have BSD u_int32_t]))
435
436   AC_SEARCH_LIBS([inet_pton],[nsl]) 
437   AC_CHECK_FUNCS([ftruncate fsync select \
438                   gethostname socket strerror fork pipe execve open close \
439                   lseek fstat read readv write writev htonl memset htons connect \
440                   getsockname getpeername bind listen accept \
441                   recvfrom send sendto setsockopt getsockopt time mktime \
442                   gethostbyname_r localtime_r \
443                   strerror_r \
444                   fcntl \
445                   mmap munmap mincore msync madvise getpagesize sysconf \
446                   lstat readlink \
447                   inet_aton inet_addr inet_pton \
448                   getifaddrs kqueue kevent epoll_create \
449                   readdir_r getloadavg])
450
451   LIBMAGIC=
452   AC_CHECK_LIB(magic, magic_open, LIBMAGIC=-lmagic)
453   AC_SUBST(LIBMAGIC)
454
455   AC_MSG_CHECKING([whether struct sockaddr_in6 is in netinet/in.h])
456   AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <netinet/in.h>]], [[struct sockaddr_in6 addr6;]])],
457                     [AC_DEFINE(HAVE_INET6, 1,
458                      [Define if inet6 structures are defined in netinet/in.h.])
459                      AC_MSG_RESULT(yes)],
460                     [AC_MSG_RESULT(no)])
461
462   AC_HEADER_TIME
463   AC_STRUCT_TM
464   AC_STRUCT_TIMEZONE
465
466   AC_MSG_CHECKING([for tm_gmtoff in struct tm])
467   AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]],[[struct tm tim; tim.tm_gmtoff = 0;]])],
468   [AC_DEFINE(STRUCT_TM_HAS_GMTOFF, 1, [Define if struct tm has tm_gmtoff field.])
469    AC_MSG_RESULT(yes)],
470   [AC_MSG_RESULT(no)
471    AC_MSG_CHECKING([for global timezone variable])
472    dnl FIXME: we don't want a link check here because that won't work
473    dnl when cross-compiling.  So instead we make an assumption that
474    dnl the header file will mention timezone if it exists.
475    dnl Don't find the win32 function timezone
476    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]], [[void i(){long z2 = 2*timezone;}]])],
477      [AC_DEFINE(HAVE_TIMEZONE, 1, [Define if global 'timezone' exists.])
478       AC_MSG_RESULT(yes)],
479      [AC_MSG_RESULT(no)
480        AC_MSG_CHECKING([for global _timezone variable])
481        dnl FIXME: As above, don't want link check
482        AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <time.h>]], [[long z2 = _timezone;]])],
483          [AC_DEFINE(HAVE_UNDERSCORE_TIMEZONE, 1,
484             [Define if your platform has the global _timezone variable.])
485           AC_MSG_RESULT(yes)],
486           [AC_MSG_RESULT(no)])])])
487
488   AC_C_CONST
489   AC_C_INLINE
490   AC_C_ATTRIBUTE
491   AX_FUNC_WHICH_GETHOSTBYNAME_R
492
493   dnl See if we HAVE_ICONV, how ICONV_CONST is set and LTLIBICONV
494   AM_ICONV
495
496   dnl When using gcc we want warnings, lots of warnings :-)
497   if test "x${GCC}" = xyes; then
498     dnl We want ISO C90 ansi, but with longlong (jlong) support
499     dnl and modern POSIX and BSD C library functions/prototypes.
500
501     dnl Warning flags for (almost) everybody.
502     dnl Should probably be configurable
503     WARNING_CFLAGS='-W -Wall -Wmissing-declarations -Wwrite-strings -Wmissing-prototypes -Wno-long-long'
504     AC_SUBST(WARNING_CFLAGS)
505
506     dnl Strict warning flags which not every module uses.
507     dnl Should probably be configurable.
508     STRICT_WARNING_CFLAGS='-Wstrict-prototypes -pedantic'
509     AC_SUBST(STRICT_WARNING_CFLAGS)
510
511     dnl Whether or not to add -Werror, also not used by all modueles.
512     dnl Can be configured by --disable-Werror
513     ERROR_CFLAGS=
514     if test "x${ENABLE_WERROR}" = xyes; then
515        ERROR_CFLAGS='-Werror'
516     fi
517     AC_SUBST(ERROR_CFLAGS)
518   fi
519
520   dnl Check for libxml and libxslt libraries (when xmlj is enabled).
521   if test "x${COMPILE_XMLJ}" = xyes; then
522     PKG_CHECK_MODULES(XML, libxml-2.0 >= 2.6.8)
523     PKG_CHECK_MODULES(XSLT, libxslt >= 1.1.11)
524     AC_SUBST(XML_LIBS)
525     AC_SUBST(XML_CFLAGS)
526     AC_SUBST(XSLT_LIBS)
527     AC_SUBST(XSLT_CFLAGS)
528   fi
529
530   dnl Check for AWT related gthread/gtk
531   if test "x${COMPILE_GTK_PEER}" = xyes; then
532     AC_PATH_XTRA
533     if test "$no_x" = yes; then
534         AC_MSG_ERROR([GTK+ peers requested but no X library available])
535     fi
536     dnl We explicitly want the XTest Extension for Robot support.
537     AC_CHECK_LIB([Xtst], [XTestQueryExtension],
538                  [XTEST_LIBS="$XTEST_LIBS -lX11 -lXtst"],
539                  [AC_MSG_ERROR([libXtst NOT found, required for GdkRobot])],
540                  [${X_LIBS}])
541
542     PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.8 gthread-2.0 >= 2.2 gdk-pixbuf-2.0)
543     PKG_CHECK_MODULES(FREETYPE2, freetype2)
544     PKG_CHECK_MODULES(PANGOFT2, pangoft2)
545     PKG_CHECK_MODULES(CAIRO, cairo >= 1.1.8)
546     dnl Check if we can link against the XRender library and set
547     dnl HAVE_XRENDER accordingly.
548     AC_CHECK_LIB([Xrender], [XRenderQueryExtension],
549                  [AC_DEFINE(HAVE_XRENDER, 1, [Define to 1 if you have libXrender.])[X_EXTRA_LIBS="$X_EXTRA_LIBS -lXrender"]],
550                  [true],
551                  [${X_LIBS}])
552
553     dnl Check if we can link against the XRandR library and set
554     dnl HAVE_XRANDR accordingly.
555     AC_CHECK_LIB([Xrandr], [XRRQueryExtension],
556                  [AC_DEFINE(HAVE_XRANDR, 1, [Define to 1 if you have libXrandr.])[X_EXTRA_LIBS="$X_EXTRA_LIBS -lXrandr"]],
557                  [true],
558                  [${X_LIBS}])
559
560     AC_SUBST(GTK_CFLAGS)
561     AC_SUBST(GTK_LIBS)
562     AC_SUBST(FREETYPE2_LIBS)
563     AC_SUBST(FREETYPE2_CFLAGS)
564     AC_SUBST(PANGOFT2_LIBS)
565     AC_SUBST(PANGOFT2_CFLAGS)
566     AC_SUBST(XTEST_LIBS)
567   fi
568
569   dnl gconf-peer
570   if  test "x${COMPILE_GCONF_PEER}" = xyes; then
571     PKG_CHECK_MODULES(GCONF, gconf-2.0 >= 2.6.0)
572     AC_SUBST(GCONF_CFLAGS)
573     AC_SUBST(GCONF_LIBS)
574     dnl we also need gdk for locking
575     PKG_CHECK_MODULES(GDK, gdk-2.0 >= 2.8)
576     AC_SUBST(GDK_CFLAGS)
577     AC_SUBST(GDK_LIBS)
578     dnl check if the config value was given form the command line,
579     dnl if not, overwrite the default if we have the gconf backend
580     dnl compiled in
581     USE_GCONF_PREFS_PEER=$enable_default_preferences_peer
582     if test "$USE_GCONF_PREFS_PEER" = ""; then
583         DEFAULT_PREFS_PEER=gnu.java.util.prefs.GConfBasedFactory
584     fi
585   fi
586
587   dnl gstreamer-peer
588   if  test "x${COMPILE_GSTREAMER_PEER}" = xyes; then
589     GST_MAJORMINOR=0.10
590     GST_REQUIRED=0.10.10
591
592     dnl gstreamer
593     PKG_CHECK_MODULES(GSTREAMER, gstreamer-$GST_MAJORMINOR >= $GST_REQUIRED)
594     AC_SUBST(GSTREAMER_CFLAGS)
595     AC_SUBST(GSTREAMER_LIBS)
596
597     dnl gstreamer-base
598     PKG_CHECK_MODULES(GSTREAMER_BASE,
599                       gstreamer-base-$GST_MAJORMINOR >= $GST_REQUIRED)
600     AC_SUBST(GSTREAMER_BASE_CFLAGS)
601     AC_SUBST(GSTREAMER_BASE_LIBS)
602
603     dnl gstreamer-plugin-base
604     PKG_CHECK_MODULES(GSTREAMER_PLUGINS_BASE,
605                       gstreamer-plugins-base-$GST_MAJORMINOR >= $GST_REQUIRED)
606     AC_SUBST(GSTREAMER_PLUGINS_BASE_CFLAGS)
607     AC_SUBST(GSTREAMER_PLUGINS_BASE_LIBS)
608
609         GST_PLUGIN_LDFLAGS='-module -avoid-version -Wno-unused-parameter -no-undefined'
610         AC_SUBST(GST_PLUGIN_LDFLAGS)
611         
612         dnl set the gstreamer based file reader, writer and mixer
613         GSTREAMER_FILE_READER=gnu.javax.sound.sampled.gstreamer.io.GstAudioFileReader
614         GSTREAMER_MIXER_PROVIDER=gnu.javax.sound.sampled.gstreamer.GStreamerMixerProvider
615   fi
616   dnl add the gstreamer resources 
617   AC_SUBST(GSTREAMER_FILE_READER)
618   AC_SUBST(GSTREAMER_MIXER_PROVIDER)
619
620   dnl Check for AWT related Qt4
621   if test "x${COMPILE_QT_PEER}" = xyes; then
622     PKG_CHECK_MODULES(QT, QtCore QtGui >= 4.1.0, HAVE_QT4="yes", HAVE_QT4="no")
623     if test "x$HAVE_QT4" = "xyes"; then
624       dnl Check needed because in some cases the QtGui includedir
625       dnl doesn't contain the subsystem dir.
626       QT_INCLUDE_DIR=`$PKG_CONFIG --variable=includedir QtGui`
627       EXTRA_QT_INCLUDE_DIR="$QT_INCLUDE_DIR/Qt"
628       AC_CHECK_FILE([$QT_INCLUDE_DIR/QWidget],
629       AC_MSG_NOTICE([No extra QT_INCLUDE_DIR needed]),
630       AC_CHECK_FILE([$EXTRA_QT_INCLUDE_DIR/QWidget],
631         QT_CFLAGS="$QT_CFLAGS -I$EXTRA_QT_INCLUDE_DIR",
632         AC_MSG_WARN([QWidget not found])))
633         AC_CHECK_PROG(MOC, [moc], [moc])
634         AC_CHECK_PROG(MOC, [moc-qt4], [moc-qt4])
635     fi
636     if test "x$HAVE_QT4" = "xno"; then
637       AC_MSG_NOTICE([Looking for QT_CFLAGS and QT_LIBS without pkg-config])
638       case "$host_os" in
639         darwin*)
640           AC_ARG_WITH([qt4dir],
641             [AS_HELP_STRING([--with-qt4dir=DIR],
642             [Qt4 installation directory used for OS-X.
643             For other systems use pkg-config.])],
644             [QT4DIR=$withval]
645             )
646           if test x"$QT4DIR" = x ; then
647             AC_MSG_ERROR([*** No path for Qt4 --with-qt4dir option given])
648           fi
649           AC_MSG_RESULT([QT4DIR... $QT4DIR])
650           AC_CHECK_PROG(MOC, [moc], [$QT4DIR/bin/moc], [], $QT4DIR/bin)
651           if test x"$MOC" = x; then
652             AC_MSG_ERROR([*** This is not the right Qt installation])
653           fi
654           QT_CFLAGS="-F$QT4DIR/lib -I$QT4DIR/lib/QtCore.framework/Headers"
655           QT_CFLAGS="$QT_CFLAGS -I$QT4DIR/lib/QtGui.framework/Headers"
656           QT_LIBS="-Xlinker -F$QT4DIR/lib -Xlinker -framework -Xlinker QtCore"
657           QT_LIBS="$QT_LIBS -Xlinker -framework -Xlinker QtGui"
658           ;;
659         *)
660           AC_MSG_ERROR([*** Please check PKG_CONFIG_PATH or the version
661           of your installed Qt4 installation.])
662           ;;
663       esac
664     fi
665     AC_MSG_NOTICE([Set QT_CFLAGS... $QT_CFLAGS])
666     AC_SUBST(QT_CFLAGS)
667     AC_SUBST(QT_LIBS)
668   fi
669   dnl **********************************************************************
670   dnl Check for MSG_NOSIGNAL
671   dnl **********************************************************************
672   AC_MSG_CHECKING(for MSG_NOSIGNAL)
673   AC_TRY_COMPILE([#include <sys/socket.h>],
674    [ int f = MSG_NOSIGNAL; ],
675    [ AC_MSG_RESULT(yes)
676      AC_DEFINE(HAVE_MSG_NOSIGNAL, 1,
677                [Define this symbol if you have MSG_NOSIGNAL]) ],
678    [ AC_MSG_RESULT(no)]
679   )
680  dnl **********************************************************************
681  dnl Check for SO_NOSIGPIPE (Darwin equivalent for MSG_NOSIGNAL)
682  dnl **********************************************************************
683  AC_MSG_CHECKING(for SO_NOSIGPIPE )
684  AC_TRY_COMPILE([#include <sys/socket.h>],
685   [ int f = SO_NOSIGPIPE; ],
686   [ AC_MSG_RESULT(yes)
687     AC_DEFINE(HAVE_SO_NOSIGPIPE, 1,
688               [Define this symbol if you have SO_NOSIGPIPE]) ],
689   [ AC_MSG_RESULT(no)]
690  )
691   dnl **********************************************************************
692   dnl Check for MSG_WAITALL
693   dnl **********************************************************************
694   AC_MSG_CHECKING(for MSG_WAITALL)
695   AC_TRY_COMPILE([#include <sys/socket.h>],
696    [ int f = MSG_WAITALL; ],
697    [ AC_MSG_RESULT(yes)
698      AC_DEFINE(HAVE_MSG_WAITALL, 1,
699                [Define this symbol if you have MSG_WAITALL]) ],
700    [ AC_MSG_RESULT(no)]
701   )
702
703   dnl Check for plugin support headers and libraries.
704   if test "x${COMPILE_PLUGIN}" = xyes; then
705     PKG_CHECK_MODULES(MOZILLA, mozilla-plugin, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
706     if test "x${MOZILLA_FOUND}" = xno; then
707       PKG_CHECK_MODULES(MOZILLA, firefox-plugin firefox-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
708     fi
709     if test "x${MOZILLA_FOUND}" = xno; then
710       PKG_CHECK_MODULES(MOZILLA, xulrunner-plugin xulrunner-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
711     fi
712     if test "x${MOZILLA_FOUND}" = xno; then
713       PKG_CHECK_MODULES(MOZILLA, mozilla-firefox-plugin mozilla-firefox-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
714     fi
715     if test "x${MOZILLA_FOUND}" = xno; then
716       PKG_CHECK_MODULES(MOZILLA, seamonkey-plugin seamonkey-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
717     fi
718     if test "x${MOZILLA_FOUND}" = xno; then
719       PKG_CHECK_MODULES(MOZILLA, iceape-plugin iceape-xpcom, [MOZILLA_FOUND=yes], [MOZILLA_FOUND=no])
720     fi
721     if test "x${MOZILLA_FOUND}" = xno; then
722       AC_MSG_ERROR([Couldn't find plugin support headers and libraries, try --disable-plugin])
723     fi
724
725     PKG_CHECK_MODULES(GLIB, glib-2.0)
726     PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.8 gthread-2.0 >= 2.2 gdk-pixbuf-2.0)
727
728     AC_SUBST(MOZILLA_CFLAGS)
729     AC_SUBST(MOZILLA_LIBS)
730     AC_SUBST(GLIB_CFLAGS)
731     AC_SUBST(GLIB_LIBS)
732     AC_SUBST(GTK_CFLAGS)
733     AC_SUBST(GTK_LIBS)
734
735     AC_SUBST(PLUGIN_DIR, $HOME/.mozilla/plugins/)
736   fi
737 fi
738
739 if test "x${REGENERATE_JNI_HEADERS}" = xyes; then
740   CLASSPATH_WITH_JAVAH
741 fi
742
743 dnl ----------------------------------------------------------- 
744 dnl Add the include files for the native abstraction layer.
745 dnl Used by AM_CPPFLAGS in the different modules.
746 dnl -----------------------------------------------------------
747 CLASSPATH_INCLUDES="-I\$(top_srcdir)/include -I\$(top_srcdir)/native/jni/classpath -I\$(top_srcdir)/native/jni/native-lib"
748 AC_SUBST(CLASSPATH_INCLUDES)
749
750 dnl -----------------------------------------------------------
751 if test "x${COMPILE_JNI}" = xyes; then
752   AC_MSG_CHECKING(jni_md.h support)
753   if test -f ${srcdir}/include/jni_md-${target_cpu}-${target_os}.h; then
754     AC_MSG_RESULT(yes)
755   else
756     target_cpu=x86
757     target_os=linux-gnu 
758     AC_MSG_WARN(no, using x86-linux-gnu)
759   fi
760   ac_sources="include/jni_md-${target_cpu}-${target_os}.h"
761   ac_dests="include/jni_md.h"
762   while test -n "$ac_sources"; do
763     set $ac_dests; ac_dest=$1; shift; ac_dests=$*
764     set $ac_sources; ac_source=$1; shift; ac_sources=$*
765     ac_config_links_1="$ac_config_links_1 $ac_dest:$ac_source"
766   done
767   AC_CONFIG_LINKS([$ac_config_links_1])
768 fi
769
770 CLASSPATH_FIND_JAVAC
771
772 CLASSPATH_WITH_CLASSLIB
773
774 dnl -----------------------------------------------------------
775 dnl Initialize maintainer mode
776 dnl -----------------------------------------------------------
777 AM_MAINTAINER_MODE
778
779 dnl -----------------------------------------------------------
780 dnl Enable debugging statements at compile time.  By default
781 dnl these statements should be optimized out of the bytecode
782 dnl produced by an optimizing Java compiler and not hinder 
783 dnl performance because debugging is turned off by default.
784 dnl -----------------------------------------------------------
785 AC_ARG_ENABLE([debug],
786               [AS_HELP_STRING(--enable-debug,enable runtime debugging code)],
787               [case "${enableval}" in 
788                 yes) 
789                 LIBDEBUG="true"
790                 AC_DEFINE(DEBUG, 1, [Define to 1 if you want native library runtime debugging code enabled]) 
791                 ;;
792                 no)   LIBDEBUG="false" ;;
793                 *)      AC_MSG_ERROR(bad value ${enableval} for --enable-debug) ;;
794               esac],
795               [LIBDEBUG="false"])
796 AC_SUBST(LIBDEBUG)
797
798 dnl -----------------------------------------------------------
799 dnl Enable execution of all static initializer loadLibrary() 
800 dnl calls at compile time.  By default most people will not
801 dnl want to disable this, but some VMs (gcj) don't need or want 
802 dnl them.
803 dnl -----------------------------------------------------------
804 AC_ARG_ENABLE([load-library],
805               [AS_HELP_STRING(--enable-load-library,enable to use JNI native methods [default=yes])],
806               [case "${enableval}" in 
807                 yes) INIT_LOAD_LIBRARY="true" ;;
808                 no) INIT_LOAD_LIBRARY="false" ;;
809                 *) AC_MSG_ERROR(bad value ${enableval} for --enable-load-library) ;;
810               esac],
811               [INIT_LOAD_LIBRARY="true"])
812 AC_SUBST(INIT_LOAD_LIBRARY)
813
814
815 dnl -----------------------------------------------------------
816 dnl Specify the jar file containing the Eclipse Java Compiler.  If
817 dnl this option is not specified then the com.sun.tools.javac
818 dnl implementation will not be included in tools.zip.
819 dnl -----------------------------------------------------------
820 dnl GCJ LOCAL: default to $multi_basedir/ecj.jar
821 dnl In the default case where $multi_basedir/ecj.jar is found
822 dnl $(jardir)/ecj.jar will not expand properly in GNU Classpath's
823 dnl gnu/classpath/Configuration.java.  That is OK though since libjava's
824 dnl gnu/classpath/Configuration.java overrides GNU Classpath's and
825 dnl ECJ_JAR_FILE will be properly expanded in libjava's
826 dnl gnu/classpath/natConfiguration.cc.
827 AC_ARG_WITH([ecj-jar],
828             [AS_HELP_STRING([--with-ecj-jar=ABS.PATH],
829             [specify jar file containing the Eclipse Java Compiler])],
830             [ECJ_JAR=$withval],
831             [if test -f $multi_basedir/ecj.jar; then
832                ECJ_JAR='$(jardir)/ecj.jar'
833              fi])
834 AC_SUBST(ECJ_JAR)
835
836 dnl -----------------------------------------------------------
837 dnl Should the VM explicitly run class initialization subfunctions for
838 dnl java.lang.System?   (default is false -- the subfunctions will be run 
839 dnl automatically by the class initializer)
840 dnl -----------------------------------------------------------
841 AC_ARG_ENABLE([java-lang-system-explicit-initialization],
842               [AS_HELP_STRING(--enable-java-lang-system-explicit-initialization,will the VM explicitly invoke java.lang.System's static initialization methods [default=no])],
843               [case "${enableval}" in 
844                 yes|true) JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION="true" ;;
845                 no|false) JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION="false" ;;
846                 *) AC_MSG_ERROR(bad value ${enableval} for --enable-java-lang-system-explicit-initialization) ;;
847               esac],
848               [JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION="false"])
849 AC_SUBST(JAVA_LANG_SYSTEM_EXPLICIT_INITIALIZATION)
850
851
852 dnl -----------------------------------------------------------
853 dnl avoiding automake complaints
854 dnl -----------------------------------------------------------
855 REMOVE=""
856 AC_SUBST(REMOVE)
857
858 dnl -----------------------------------------------------------
859 dnl This is probably useless.
860 dnl -----------------------------------------------------------
861 AC_PATH_PROG(MKDIR, mkdir)
862 AC_PATH_PROG(CP, cp)
863 AC_PATH_PROG(DATE, date)
864
865 dnl -----------------------------------------------------------
866 dnl According to the GNU coding guide, we shouldn't require find, 
867 dnl and zip, however GNU provides both so it should be okay 
868 dnl -----------------------------------------------------------
869 AC_PATH_PROG(FIND, find)
870
871 dnl -----------------------------------------------------------
872 dnl Specify what to install (install only glibj.zip by default)
873 dnl -----------------------------------------------------------
874 CLASSPATH_WITH_GLIBJ
875
876 dnl -----------------------------------------------------------
877 dnl Enable API documentation generation (disabled by default)
878 dnl -----------------------------------------------------------
879 CLASSPATH_WITH_GJDOC
880
881 dnl -----------------------------------------------------------
882 dnl Whether to use jay to regenerate parsers.
883 dnl -----------------------------------------------------------
884 REGEN_WITH_JAY
885
886 dnl -----------------------------------------------------------
887 dnl This sets the build-time default, which can now be overridden 
888 dnl by setting the system property gnu.classpath.awt.gtk.portable.native.sync
889 dnl to "true" or "false".
890 dnl -----------------------------------------------------------
891 AC_ARG_ENABLE([portable-native-sync],
892               [AS_HELP_STRING(--enable-portable-native-sync,synchronize VM threads portably)],
893               [case "${enableval}" in 
894                 yes) 
895                      AC_DEFINE(PORTABLE_NATIVE_SYNC, 1, [Define if you want to synchronize VM threads portably by default; undef otherwise])
896                      ;;
897                 no)  ;;
898                 *)   
899                      AC_MSG_ERROR(bad value ${enableval} for --enable-portable-native-sync) 
900                      ;;
901               esac],
902               [])
903
904 AX_CREATE_STDINT_H([include/config-int.h])
905
906 dnl -----------------------------------------------------------------------
907 dnl                    Support for using a prebuilt class library
908 dnl -----------------------------------------------------------------------
909 AC_ARG_WITH([glibj_zip],
910             AS_HELP_STRING([--with-glibj-zip=ABS.PATH],
911                            [use prebuilt glibj.zip class library]))
912
913 case "$with_glibj_zip" in
914 "")
915         use_glibj_zip=false
916         ;;
917 "no" )
918         use_glibj_zip=false
919         ;;
920 "yes")
921         AC_MSG_ERROR([Please suply an absolute path to a prebuilt glibj.zip])
922         ;;
923 *)
924         use_glibj_zip=true
925         PATH_TO_GLIBJ_ZIP=$with_glibj_zip
926         ;;
927 esac;
928
929 AM_CONDITIONAL(USE_PREBUILT_GLIBJ_ZIP, test x$use_glibj_zip = xtrue)
930 AC_SUBST(PATH_TO_GLIBJ_ZIP)
931
932 dnl -----------------------------------------------------------
933 dnl Build with Escher based X peers.
934 dnl -----------------------------------------------------------
935 AC_ARG_WITH([escher],
936          AS_HELP_STRING([--with-escher=ABS.PATH],
937                         [specify path to escher dir or JAR for X peers]))
938 case "$with_escher" in
939 "")
940         use_escher=false
941         ;;
942 "no")
943         use_escher=false
944         ;;
945 "yes")
946         AC_MSG_ERROR([Please supply an absolute path to Escher library])
947         ;;
948 *)
949         use_escher=true
950         PATH_TO_ESCHER=$with_escher
951         ;;
952 esac
953
954 AM_CONDITIONAL(USE_ESCHER, test x$use_escher = xtrue)
955 AC_SUBST(PATH_TO_ESCHER)
956
957 dnl -----------------------------------------------------------
958 dnl Check if local socket support should be included.
959 dnl -----------------------------------------------------------
960 AC_ARG_ENABLE([local-sockets],
961               [AS_HELP_STRING(--enable-local-sockets,enables local (AF_LOCAL) socket API [default: no])],
962               [case "${enableval}" in
963                 yes)
964                   ENABLE_LOCAL_SOCKETS=yes
965                   ;;
966                 *)
967                   ENABLE_LOCAL_SOCKETS=no
968                   ;;
969                esac],
970               [])
971 if test "x$ENABLE_LOCAL_SOCKETS" = "xyes"
972 then
973   AC_CHECK_HEADER([sys/un.h])
974   AC_CHECK_FUNCS([read write bind listen accept shutdown], [],
975                  AC_MSG_ERROR([networking support not available]))
976   AC_DEFINE(ENABLE_LOCAL_SOCKETS, [1], [Define to enable support for local sockets.])
977 fi
978 AM_CONDITIONAL(ENABLE_LOCAL_SOCKETS, test "x$ENABLE_LOCAL_SOCKETS" = "xyes")
979
980 dnl -----------------------------------------------------------
981 dnl Add the default preference peer
982 dnl -----------------------------------------------------------
983 AC_SUBST(DEFAULT_PREFS_PEER)
984
985 dnl -----------------------------------------------------------
986 dnl output files
987 dnl -----------------------------------------------------------
988 AC_CONFIG_FILES([Makefile
989 doc/Makefile
990 doc/api/Makefile
991 external/Makefile
992 external/sax/Makefile
993 external/w3c_dom/Makefile
994 external/relaxngDatatype/Makefile
995 external/jsr166/Makefile
996 gnu/classpath/Configuration.java
997 gnu/java/security/Configuration.java
998 include/Makefile
999 native/Makefile
1000 native/fdlibm/Makefile
1001 native/jawt/Makefile
1002 native/jni/Makefile
1003 native/jni/classpath/Makefile
1004 native/jni/java-io/Makefile
1005 native/jni/java-lang/Makefile
1006 native/jni/java-net/Makefile
1007 native/jni/java-nio/Makefile
1008 native/jni/java-util/Makefile
1009 native/jni/gtk-peer/Makefile
1010 native/jni/gconf-peer/Makefile
1011 native/jni/gstreamer-peer/Makefile
1012 native/jni/qt-peer/Makefile
1013 native/jni/xmlj/Makefile
1014 native/jni/midi-alsa/Makefile
1015 native/jni/midi-dssi/Makefile
1016 native/jni/native-lib/Makefile
1017 native/plugin/Makefile
1018 resource/Makefile
1019 resource/META-INF/services/java.util.prefs.PreferencesFactory
1020 resource/META-INF/services/javax.sound.sampled.spi.AudioFileReader
1021 resource/META-INF/services/javax.sound.sampled.spi.MixerProvider
1022 scripts/Makefile
1023 scripts/classpath.spec
1024 lib/Makefile
1025 lib/gen-classlist.sh
1026 lib/copy-vmresources.sh
1027 tools/Makefile
1028 examples/Makefile
1029 examples/Makefile.jawt
1030 examples/Makefile.java2d])
1031
1032 if test "x${COMPILE_WRAPPERS}" = xno
1033 then
1034 AC_CONFIG_FILES([tools/gappletviewer
1035 tools/gjarsigner
1036 tools/gkeytool
1037 tools/gjar
1038 tools/gnative2ascii
1039 tools/gserialver
1040 tools/grmiregistry
1041 tools/gtnameserv
1042 tools/gorbd
1043 tools/grmid
1044 tools/grmic
1045 tools/gjavah])
1046 AC_CONFIG_COMMANDS([gappletviewer],[chmod 755 tools/gappletviewer])
1047 AC_CONFIG_COMMANDS([gjarsigner],[chmod 755 tools/gjarsigner])
1048 AC_CONFIG_COMMANDS([gkeytool],[chmod 755 tools/gkeytool])
1049 AC_CONFIG_COMMANDS([gjar],[chmod 755 tools/gjar])
1050 AC_CONFIG_COMMANDS([gnative2ascii],[chmod 755 tools/gnative2ascii])
1051 AC_CONFIG_COMMANDS([gserialver],[chmod 755 tools/gserialver])
1052 AC_CONFIG_COMMANDS([grmiregistry],[chmod 755 tools/grmiregistry])
1053 AC_CONFIG_COMMANDS([gtnameserv],[chmod 755 tools/gtnameserv])
1054 AC_CONFIG_COMMANDS([gorbd],[chmod 755 tools/gorbd])
1055 AC_CONFIG_COMMANDS([grmid],[chmod 755 tools/grmid])
1056 AC_CONFIG_COMMANDS([grmic],[chmod 755 tools/grmic])
1057 AC_CONFIG_COMMANDS([gjavah], [chmod 755 tools/gjavah])
1058 fi
1059
1060 AC_CONFIG_COMMANDS([gen-classlist],[chmod 755 lib/gen-classlist.sh])
1061 AC_CONFIG_COMMANDS([copy-vmresources],[chmod 755 lib/copy-vmresources.sh])
1062 AC_OUTPUT
1063
1064 # Create standard.omit based on decisions we just made.
1065 cat ${srcdir}/lib/standard.omit.in > lib/standard.omit
1066 if test x$use_escher != xtrue; then
1067    echo gnu/java/awt/peer/x/.*java$ >> lib/standard.omit
1068 fi