AC_INIT(kaffe) dnl Setup version number. KVER=1.00 dnl Find the compiler early on in case we need to override. AC_PROG_CC dnl Find the machine type and setup the relevant links AC_CANONICAL_HOST dnl ========================================================================= dnl By default we use dynamic libraries for everything dnl ------------------------------------------------------------------------- dynamic_libraries=yes vm_dynamic_library=yes dnl ------------------------------------------------------------------------- dnl ========================================================================= dnl Force use of static libraries dnl ------------------------------------------------------------------------- AC_ARG_WITH(staticlib,[ --with-staticlib Force the use of static libraries rather than shared]) if test "$with_staticlib" = "yes" ; then dynamic_libraries=no fi changequote(<<, >>)dnl dnl ========================================================================= dnl Look for the configuration information dnl ------------------------------------------------------------------------- known=no orig_host_cpu=$host_cpu orig_host_os=$host_os if test -f $srcdir/config/config.alias ; then . $srcdir/config/config.alias fi if test -f $srcdir/config/$host_cpu/$host_os/config.frag ; then known=yes . $srcdir/config/$host_cpu/$host_os/config.frag fi if test "$known" = "no" ; then AC_MSG_ERROR(Configuration $host_cpu-$host_os not supported) fi dnl ========================================================================= dnl ========================================================================= dnl Start of default configurations dnl ------------------------------------------------------------------------- if test "$dynamic_libraries" = "no" ; then KAFFEVMFLAGS="-DNO_SHARED_LIBRARIES" LIBEXT=".a" fi if test "$OBJEXT" = "" ; then OBJEXT=".o" fi if test "$LIBEXT" = "" ; then LIBEXT=".a" fi if test "$SCREXT" = "" ; then SCREXT="" fi if test "$LD" = "" ; then LD=ld fi if test "$LINKLIB" = "" ; then if test "$LIBEXT" = ".a" ; then LINKLIB='$(AR) $(LIB) $(OBJECT)\ $(RANLIB) $(LIB)' else LINKLIB='$(LD) $(LDFLAGS) -o $(LIB) $(OBJECT) $(LDTAIL)' fi fi if test "$VPATHSEP" = "" ; then VPATHSEP=":" fi if test "$VPATHOPT" = "" ; then VPATHOPT="VPATH" fi dnl What kind of system are we using? case $host_os in win32*) SYSTEM=win32 ;; *) SYSTEM=unix ;; esac dnl ------------------------------------------------------------------------- dnl End of default configurations dnl ========================================================================= changequote([, ])dnl dnl ========================================================================= dnl Set the base set of link files - there may be more added later dnl ------------------------------------------------------------------------- link_from="config/$host_cpu/$host_os/md.h config/$host_cpu/$host_os/md.c" link_to="config/md.h kaffe/kaffevm/md.c" dnl ========================================================================= dnl ========================================================================= dnl Look for configuration specific Makefile fragement and include it dnl ------------------------------------------------------------------------- if test -f $srcdir/config/$host_cpu/$host_os/Make.frag ; then cpu_os_frag=$srcdir/config/$host_cpu/$host_os/Make.frag else cpu_os_frag=/dev/null fi if test -f $srcdir/config/$host_cpu/Make.frag ; then cpu_frag=$srcdir/config/$host_cpu/Make.frag else cpu_frag=/dev/null fi AC_SUBST_FILE(cpu_os_frag)dnl AC_SUBST_FILE(cpu_frag)dnl dnl ========================================================================= dnl ========================================================================= dnl Allow selection of a specific execution engine dnl ------------------------------------------------------------------------- AC_ARG_WITH(engine,[ --with-engine=ENGINE Force use of a specific execution engine]) dnl Translate 'interpreter' to 'intrp' if test "$with_engine" = "interpreter" ; then with_engine=intrp fi dnl Save the requested engine and set the default to 'jit' want_engine=$with_engine if test "$with_engine" = "" ; then with_engine="jit" fi dnl ------------------------------------------------------------------------- dnl Check for JIT support and add in the necessary configuration files dnl ------------------------------------------------------------------------- if test -f $srcdir/config/$host_cpu/$host_os/${with_engine}-md.h ; then link_from="$link_from config/$host_cpu/${with_engine}-$host_cpu.def config/$host_cpu/${with_engine}-icode.h config/$host_cpu/$host_os/${with_engine}-md.h" link_to="$link_to kaffe/kaffevm/jit.def kaffe/kaffevm/icode.h config/jit-md.h" jitsupport=yes else with_engine="intrp" fi dnl Make sure we support jit mode if requested. if test "$jitsupport" = "" && test "$want_engine" != "" && test "$want_engine" != "intrp" ; then AC_MSG_ERROR(Configuration $host_cpu-$host_os does not support $want_engine mode) fi AC_MSG_CHECKING(execution engine) AC_MSG_RESULT($with_engine) AC_SUBST_FILE(engine_frag)dnl engine_frag=$srcdir/kaffe/kaffevm/$with_engine/Makefile.frag dnl ========================================================================= AC_MSG_CHECKING(library type) if test "$dynamic_libraries" = "no" ; then AC_MSG_RESULT(static) else AC_MSG_RESULT(shared) fi dnl ========================================================================= dnl Do we include our Sun compatibility scripts? dnl ------------------------------------------------------------------------- AC_ARG_WITH(suncompat,[ --without-suncompat Don't include Sun compatibility scripts]) AC_MSG_CHECKING(sun compatibility mode) if test "$with_suncompat" = "" ; then with_suncompat=yes fi if test "$with_suncompat" = "yes" ; then suncompatible="install-compat" AC_SUBST(suncompatible) fi AC_MSG_RESULT($with_suncompat) dnl ========================================================================= dnl Use the new internal threading system "jthreads" dnl ------------------------------------------------------------------------- AC_ARG_WITH(threads,[ --with-threads=SYSTEM Define which threading system to use]) AC_MSG_CHECKING(thread system) if test "$with_threads" = "" ; then with_threads=unix-jthreads fi if test ! -d $srcdir/kaffe/kaffevm/systems/${with_threads} ; then AC_MSG_ERROR(Configuration $host_cpu-$host_os does not support $with_threads threads) fi THREAD_SYSTEM=$with_threads AC_MSG_RESULT($THREAD_SYSTEM) AC_SUBST_FILE(threads_frag)dnl threads_frag=$srcdir/kaffe/kaffevm/systems/$with_threads/Makefile.frag dnl ========================================================================= dnl Look for trampoline code if in JIT mode dnl ------------------------------------------------------------------------- if test "$with_engine" != "intrp" ; then AC_MSG_CHECKING(for trampolines) if test -f $srcdir/config/$host_cpu/trampolines.c ; then link_from="$link_from config/$host_cpu/trampolines.c" link_to="$link_to kaffe/kaffevm/trampolines.c" AC_MSG_RESULT(yes) else AC_MSG_ERROR(does not support trampolines - now mandatory) fi fi dnl ========================================================================= dnl ========================================================================= dnl Setup for generating a depend make target dnl ------------------------------------------------------------------------- AC_MSG_CHECKING(how to generate depend files) if test "$DEPTOOL" = ""; then dnl This should just generate harmless dnl .d files DEPTOOL="true" INC_DEPEND="# automatic dependency generation not enabled in configure" dnl If DEPTOOL is undefined, we can use gcc, dnl otherwise, I'm at a loss, as the switch is dnl very compiler specific (if avail, at all.) if test "$ac_cv_prog_gcc" = "yes" ; then DEPTOOL="$CC -M" INC_DEPEND="include .depend" fi fi AC_MSG_RESULT($DEPTOOL) dnl ========================================================================= dnl Make the necessary substitutions dnl ------------------------------------------------------------------------- AC_SUBST(KVER) AC_SUBST(LIBSHARE) AC_SUBST(PIC) AC_SUBST(PICVM) AC_SUBST(JAVA_LIBRARIES) AC_SUBST(NOSHAREDLIBS) AC_SUBST(LDFLAGS) AC_SUBST(KAFFELINK) AC_SUBST(LIBEXT) AC_SUBST(LIBVMEXT) AC_SUBST(OBJEXT) AC_SUBST(EXEEXT) AC_SUBST(SCREXT) AC_SUBST(with_engine) AC_SUBST(host_cpu) AC_SUBST(host_os) AC_SUBST(KAFFEFLAGS) AC_SUBST(KAFFEVMFLAGS) AC_SUBST(VPATHSEP) AC_SUBST(VPATHOPT) AC_SUBST(LINKLIB) AC_SUBST(LINKVMLIB) AC_SUBST(LD) AC_SUBST(THREAD_SYSTEM) AC_SUBST(DEPTOOL) AC_SUBST(INC_DEPEND) AC_DEFINE_UNQUOTED(LIBRARYSUFFIX, "$LIBEXT") AC_DEFINE_UNQUOTED(KAFFEVERSION, "$KVER") if test "$program_prefix" = "NONE" ; then KPREFIX="" else KPREFIX=$program_prefix fi AC_SUBST(KPREFIX) dnl ========================================================================= dnl ========================================================================= dnl Make the links required dnl ------------------------------------------------------------------------- AC_LINK_FILES($link_from, $link_to) dnl ========================================================================= dnl ========================================================================= dnl Checks for programs. dnl ------------------------------------------------------------------------- AC_PROG_INSTALL AC_PROG_MAKE_SET AC_PROG_RANLIB AC_CHECK_PROG(AR, ar, ar cr) AC_CHECK_PROGS(MKDIR, mkdirs 'mkdir -p', mkdir -p) AC_CHECK_PROG(DLLTOOL, dlltool, dlltool) dnl We also need to install scripts INSTALL_SCRIPT='${INSTALL} -m 755' AC_SUBST(INSTALL_SCRIPT) dnl If symlink is overridden then don't bother with the test. if test "$LN_S" = "" ; then AC_PROG_LN_S fi dnl If dlltool is found then we must generate and use the 'lib.exp' file. dnl If not found then just use true to avoid the command erroring. if test "$DLLTOOL" != "" ; then LDTAIL='lib.exp '$LDTAIL else DLLTOOL="true" fi AC_SUBST(LDTAIL) dnl ------------------------------------------------------------------------- dnl ========================================================================= dnl Checks for types dnl ------------------------------------------------------------------------- AC_CHECK_SIZEOF(short,0) AC_CHECK_SIZEOF(int,0) AC_CHECK_SIZEOF(long,0) AC_CHECK_SIZEOF(long long,0) AC_CHECK_SIZEOF(__int64,0) AC_CHECK_SIZEOF(void*,0) dnl ========================================================================= dnl Checks for alignments dnl ------------------------------------------------------------------------- AC_CACHE_CHECK(alignment of void*, ac_cv_alignmentof_voidp, AC_TRY_RUN([#include main() { struct { char c; void *p; } t; FILE *f; if ((char*) &t.c != (char*) &t) exit (1); f=fopen ("conftestdata", "w"); if (! f) exit (1); fprintf (f, "%d", ((char*) &t.p)-((char*) &t)); fclose(f); exit (0); }], ac_cv_alignmentof_voidp=`cat conftestdata`, ac_cv_alignmentof_voidp=1, ac_cv_alignmentof_voidp=1)) AC_DEFINE_UNQUOTED(ALIGNMENTOF_VOIDP,$ac_cv_alignmentof_voidp) dnl ------------------------------------------------------------------------- AC_TYPE_SIGNAL AC_TYPE_SIZE_T AC_CHECK_TYPE(ssize_t,int) dnl ------------------------------------------------------------------------- AC_DEFUN(AC_CHECK_LIBRARY, AC_CHECK_LIB($1,$2, changequote(, )dnl $3="-l$1 $$3"; LIBS="-l$1 $LIBS" ac_tr_lib=HAVE_LIB`echo $1 | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` changequote([, ])dnl AC_DEFINE_UNQUOTED($ac_tr_lib) )) dnl ========================================================================= dnl Checks for libraries dnl ------------------------------------------------------------------------- dnl Checks for standard libraries AC_CHECK_LIBRARY(c,printf,STD_LIBRARIES) AC_CHECK_LIBRARY(m,sin,STD_LIBRARIES) AC_CHECK_LIBRARY(gmp,mpz_abs,STD_LIBRARIES) AC_SUBST(STD_LIBRARIES) dnl Checks for libraries for vm library. if test "$dynamic_libraries" = "yes" ; then dnl Don't bother with dynamic loaders if we're using static linking AC_CHECK_LIBRARY(dl,dlopen,VM_LIBRARIES) if test "$ac_cv_lib_dl_dlopen" = "no" ; then AC_CHECK_LIBRARY(dl,_dlopen,VM_LIBRARIES) if test "$ac_cv_lib_dl__dlopen" = "no" ; then AC_CHECK_LIBRARY(dld,dld_init,VM_LIBRARIES) fi fi fi AC_SUBST(VM_LIBRARIES) dnl Check libraries for native library. dnl None required. dnl Check for libraries for net library. AC_CHECK_LIBRARY(nsl,dial,NET_LIBRARIES) AC_CHECK_LIBRARY(socket,socket,NET_LIBRARIES) AC_SUBST(NET_LIBRARIES) dnl Check for libraries for zip library. AC_CHECK_LIBRARY(z,deflate,ZIP_LIBRARIES) AC_SUBST(ZIP_LIBRARIES) dnl Check for libraries for math library. AC_CHECK_LIBRARY(gmp,mpz_add,MATH_LIBRARIES) AC_SUBST(MATH_LIBRARIES) dnl Checks for libraries for X related libraries. AC_PATH_X if test "$have_x" = "yes" ; then AC_DEFINE(HAVE_X) fi if test "${x_libraries}" != NONE && test -n "${x_libraries}"; then X_LIBRARIES=-L`echo ${x_libraries} | sed -e "s/:/ -L/g"` fi # we must add -lX11 even if x_libraries is empty if test "$have_x" = "yes" ; then X_LIBRARIES="$X_LIBRARIES -lX11" fi if test "${x_includes}" != NONE && test -n "${x_includes}"; then X_INCLUDES=-I`echo ${x_includes} | sed -e "s/:/ -I/g"` # This hack looks for libjpeg.a in /usr/local/lib and for # jpeglib.h in /usr/local/include. # It is intended for users who do not set their LDFLAGS env # variable properly before invoking configure. # # The reason is that the config files are currently missing a # HAVE_JPEGLIB flag which would allow conditional reference to # the functions in this library. GUESSWHEREJPEGLIBIS="/usr/local" for DIR in $GUESSWHEREJPEGLIBIS do if test -r $DIR/include/jpeglib.h -a -r $DIR/lib/libjpeg.a; then X_INCLUDES="$X_INCLUDES -I$DIR/include" JPEG_LIBRARIES="-L$DIR/lib -ljpeg" fi done fi AC_SUBST(X_INCLUDES) AC_SUBST(X_LIBRARIES) AC_CHECK_LIBRARY(ipc,shmat,X_LIBRARIES) OLIBS=$LIBS LIBS="$LIBS $X_LIBRARIES" AC_CHECK_LIBRARY(jpeg,jpeg_read_header,JPEG_LIBRARIES) LIBS=$OLIBS AC_SUBST(JPEG_LIBRARIES) AWTLIB="$X_LIBRARIES $JPEG_LIBRARIES" AC_SUBST(AWTLIB) dnl ------------------------------------------------------------------------- dnl ========================================================================= dnl Checks for header files. dnl ------------------------------------------------------------------------- AC_HEADER_STDC AC_CHECK_HEADERS(fcntl.h sys/time.h unistd.h sys/socket.h winnt.h wintypes.h wtypes.h winbase.h windows.h winsock.h dlfcn.h sys/ioctl.h sys/filio.h malloc.h alloca.h sys/param.h sys/utsname.h pwd.h asm/sigcontext.h sigcontext.h asm/signal.h signal.h mach-o/rld.h sys/types.h sys/stat.h string.h sys/select.h memory.h bsd/libc.h dl.h features.h sys/wait.h zlib.h) AC_HEADER_DIRENT dnl ------------------------------------------------------------------------- dnl ========================================================================= dnl Checks for typedefs, structures, and compiler characteristics. dnl ------------------------------------------------------------------------- AC_HEADER_TIME AC_STRUCT_TM AC_STRUCT_TIMEZONE AC_C_BIGENDIAN AC_C_CHAR_UNSIGNED AC_C_INLINE dnl ========================================================================= dnl Check for struct sigcontext. dnl ------------------------------------------------------------------------- AC_CACHE_CHECK([for struct sigcontext], ac_cv_struct_sigcontext, [AC_TRY_COMPILE([#include #include ], [struct sigcontext t;], ac_cv_struct_sigcontext=yes, ac_cv_struct_sigcontext=no)]) if test $ac_cv_struct_sigcontext = yes; then AC_DEFINE(HAVE_STRUCT_SIGCONTEXT) fi dnl Check for struct sigcontext_struct. dnl Just to complicate things there are two different sets of assembly files dnl we must check which are mutually incompatible. AC_CACHE_CHECK([for struct sigcontext_struct (without asm/sigcontext.h)], ac_cv_struct_sigcontext_struct, [AC_TRY_COMPILE([#include ], [struct sigcontext_struct t;], ac_cv_struct_sigcontext_struct=yes, ac_cv_struct_sigcontext_struct=no)]) AC_CACHE_CHECK([for struct sigcontext_struct (with asm/sigcontext.h)], ac_cv_struct_sigcontext_struct_with, [AC_TRY_COMPILE([#include #include ], [struct sigcontext_struct t;], ac_cv_struct_sigcontext_struct_with=yes, ac_cv_struct_sigcontext_struct_with=no)]) if test $ac_cv_struct_sigcontext_struct = yes -o $ac_cv_struct_sigcontext_struct_with = yes; then AC_DEFINE(HAVE_STRUCT_SIGCONTEXT_STRUCT) fi dnl ------------------------------------------------------------------------- dnl ========================================================================= dnl Checks for library functions. dnl ------------------------------------------------------------------------- AC_FUNC_STRFTIME AC_FUNC_MMAP AC_CHECK_FUNCS(select socket getsockname) AC_CHECK_FUNCS(memcpy memmove) AC_CHECK_FUNCS(mkdir) AC_CHECK_FUNCS(getcwd getwd gettimeofday ftime time uname getuid) AC_CHECK_FUNCS(remainder remainderf fmod drem rint floor ceil finite isinf isnan strtod strdup) AC_CHECK_FUNCS(strerror hstrerror) AC_CHECK_FUNCS(fcntl ioctl) AC_CHECK_FUNCS(alarm setitimer) AC_CHECK_FUNCS(sigprocmask sigsetmask sigemptyset sigaddset signal sigaction) AC_CHECK_FUNCS(sbrk valloc memalign mallopt) AC_CHECK_FUNCS(waitpid kill fork execve) AC_CHECK_FUNCS(rld_load shl_load LoadLibrary dld_link) AC_CHECK_FUNCS(sync fsync) AC_CHECK_FUNCS(atexit on_exit vsnprintf snprintf) dnl Some systems must include dlfcn to get these right. AC_CACHE_CHECK([for dlopen], ac_cv_func_dlopen, [AC_TRY_LINK([#ifdef HAVE_DLFCN_H #include #else char dlopen(); #endif], [dlopen(0, 0)], ac_cv_func_dlopen=yes, ac_cv_func_dlopen=no) ]) if test "$ac_cv_func_dlopen" = "yes" ; then AC_DEFINE(HAVE_DLOPEN) fi AC_CACHE_CHECK([for dlerror], ac_cv_func_dlerror, [AC_TRY_LINK([#ifdef HAVE_DLFCN_H #include #else char dlerror(); #endif], [dlerror()], ac_cv_func_dlerror=yes, ac_cv_func_dlerror=no) ]) if test "$ac_cv_func_dlerror" = "yes" ; then AC_DEFINE(HAVE_DLERROR) fi if test "$host_cpu" = "alpha" ; then AC_CACHE_CHECK([for alpha support of amask instruction], ac_cv_alpha_asm_amask, [AC_TRY_COMPILE(, [ long r; __asm__("amask 1,%0" : "=r"(r)); return !r; ], ac_cv_alpha_asm_amask=yes, ac_cv_alpha_asm_amask=no) ]) if test "$ac_cv_alpha_asm_amask" = "yes" ; then AC_DEFINE(HAVE_ALPHA_ASM_AMASK) fi fi dnl ------------------------------------------------------------------------- dnl ========================================================================= dnl Work out if select is defined dnl ------------------------------------------------------------------------- AC_CACHE_CHECK([for declaration of select], ac_cv_declared_select, [AC_TRY_COMPILE([ #ifdef HAVE_UNISTD_H #include #endif #ifdef HAVE_SYS_TIME_H #include #endif #ifdef HAVE_SYS_SELECT_H #include #endif ], [ void *foo = select; ], ac_cv_declared_select=yes; AC_DEFINE(HAVE_DECLARED_SELECT), ac_cv_declared_select=no) ]) dnl ------------------------------------------------------------------------- dnl ========================================================================= dnl Some dynamic library need an underscore on the loading name, some don't dnl ------------------------------------------------------------------------- AC_CACHE_CHECK(for underscore in dlsym, ac_cv_underscore, echo "#define _LIBC_ \"`ls /lib/lib*c.so* /usr/lib/lib*c.so.* 2>/dev/null | head -1`\"" >> confdefs.h AC_TRY_RUN(main() {[void* lib = (void*)dlopen(_LIBC_); if (dlsym(lib, "_printf") != 0) { exit(0); } else { exit(1); } }], ac_cv_underscore=yes, ac_cv_underscore=no, ac_cv_underscore=cross)) if test "$ac_cv_underscore" = "yes"; then AC_DEFINE(HAVE_DYN_UNDERSCORE) fi dnl ========================================================================= dnl Some C compilers add '_' to C names. dnl ------------------------------------------------------------------------- AC_CACHE_CHECK(for underscore in C assembly names, ac_cv_underscore_c_names, AC_TRY_RUN(extern int main_symbol();void* x;asm("\n_main_symbol:");main(){ x = &main_symbol; exit(0); }, ac_cv_underscore_c_names=yes, ac_cv_underscore_c_names=no, ac_cv_underscore_c_names=cross)) if test "$ac_cv_underscore_c_names" = "yes"; then AC_DEFINE(HAVE_UNDERSCORED_C_NAMES) fi dnl ------------------------------------------------------------------------- changequote(<<, >>)dnl subdirs="config include libraries kaffe test" make_output="\ Makefile \ config/Makefile include/Makefile kaffe/Makefile test/Makefile \ libraries/Makefile \ kaffe/kaffevm/Makefile kaffe/kaffe/Makefile kaffe/kaffeh/Makefile \ kaffe/man/Makefile kaffe/scripts/Makefile \ " dnl Default packages make_output="$make_output \ libraries/javalib/Makefile \ libraries/clib/Makefile \ libraries/clib/native/Makefile \ libraries/clib/net/Makefile \ libraries/clib/zip/Makefile \ libraries/clib/math/Makefile \ libraries/clib/management/Makefile \ " JAVA_LIBRARIES=" \ ../../libraries/clib/native/libnative$LIBEXT \ ../../libraries/clib/net/libnet$LIBEXT \ ../../libraries/clib/zip/libzip$LIBEXT \ ../../libraries/clib/math/libmath$LIBEXT \ ../../libraries/clib/management/libmanagement$LIBEXT \ " dnl If we have X then include AWT support. if test "$have_x" = "yes" ; then make_output="$make_output \ libraries/clib/awt/Makefile \ " JAVA_LIBRARIES="$JAVA_LIBRARIES \ ../../libraries/clib/awt/libawt$LIBEXT \ " fi changequote([, ])dnl dnl If we have share libraries, cancel all the non-shared ones. dnl Otherwise, add on the machine again to help linking. if test "$dynamic_libraries" = "yes" ; then NOSHAREDLIBS="-L../kaffevm -lkaffevm $VM_LIBRARIES $STD_LIBRARIES" KAFFE_LIBDEP="" else NOSHAREDLIBS="../kaffevm/libkaffevm$LIBEXT $JAVA_LIBRARIES $STD_LIBRARIES $ZIP_LIBRARIES $NET_LIBRARIES $X_LIBRARIES $AWTLIB" KAFFE_LIBDEP="$KAFFE_LIBDEP ../kaffevm/libkaffevm$LIBEXT $JAVA_LIBRARIES" PIC="" PICVM="" LIBSHARE="" fi dnl If the vm is to be static but everything else isn't, set it up. if test "$vm_dynamic_library" = "no" -a "$dynamic_libraries" = "yes"; then LINKVMLIB='ld -r -o $(LIB) $(OBJECT)' PICVM="" LIBVMEXT=.o NOSHAREDLIBS="../kaffevm/libkaffevm.o $VM_LIBRARIES $STD_LIBRARIES" KAFFE_LIBDEP="$KAFFE_LIBDEP ../kaffevm/libkaffevm.o" else LINKVMLIB=$LINKLIB PICVM=$PIC LIBVMEXT=$LIBEXT fi dnl If the vm is static or all libraries are static then make sure we set dnl the no-share-vmlibrary flag. if test "$vm_dynamic_library" = "no" -o "$dynamic_libraries" = "no"; then KAFFEVMFLAGS="$KAFFEVMFLAGS -DNO_SHARED_VMLIBRARY" fi AC_SUBST(subdirs) AC_SUBST(packages) AC_SUBST(KAFFE_LIBDEP) dnl A few extra files to process. output="$make_output \ libraries/javalib/rebuildLib \ kaffe/scripts/install-jar \ kaffe/scripts/kaffe \ " dnl ========================================================================= dnl Define default classpath (not needed), kaffehome and libraryhome. dnl ------------------------------------------------------------------------- kaffehome=`eval echo $datadir`/kaffe AC_DEFINE_UNQUOTED(DEFAULT_KAFFEHOME, "$kaffehome") AC_CONFIG_HEADER(config/config.h include/jtypes.h) AC_OUTPUT($output) dnl ========================================================================= dnl Create empty .depend files to ensure that make works even dnl when the depend target is not executed. dnl ------------------------------------------------------------------------- changequote(<<, >>)dnl for makefile in $make_output do makepath=`echo "$makefile" | sed 's,[^/]*$,,'` dependfile=$makepath.depend echo creating $dependfile touch $dependfile done changequote([, ])dnl dnl ========================================================================= dnl Generate example environment dnl ------------------------------------------------------------------------- libdir=`eval echo $libdir` ; libdir=`eval echo $libdir` bindir=`eval echo $bindir` ; bindir=`eval echo $bindir` datadir=`eval echo $datadir` cp /dev/null ENVIRONMENT if test "$dynamic_libraries" = "yes" ; then echo LD_LIBRARY_PATH=$libdir:\$LD_LIBRARY_PATH >> ENVIRONMENT fi echo PATH=$bindir:\$PATH >> ENVIRONMENT echo export LD_LIBRARY_PATH PATH >> ENVIRONMENT dnl -------------------------------------------------------------------------