Home | History | Annotate | Line # | Download | only in gnulib-m4
      1 # csharpexec.m4 serial 3 (gettext-0.15)
      2 dnl Copyright (C) 2003-2005 Free Software Foundation, Inc.
      3 dnl This file is free software; the Free Software Foundation
      4 dnl gives unlimited permission to copy and/or distribute it,
      5 dnl with or without modifications, as long as this notice is preserved.
      6 
      7 # Prerequisites of csharpexec.sh.
      8 # Checks for a C# execution engine.
      9 # gt_CSHARPEXEC or gt_CSHARPEXEC(testexecutable, its-directory)
     10 # Sets at most one of HAVE_ILRUN, HAVE_MONO, HAVE_CLIX.
     11 # Sets HAVE_CSHARPEXEC to nonempty if csharpexec.sh will work.
     12 AC_DEFUN([gt_CSHARPEXEC],
     13 [
     14   AC_REQUIRE([gt_CSHARP_CHOICE])
     15   AC_MSG_CHECKING([for C[#] program execution engine])
     16   AC_EGREP_CPP(yes, [
     17 #if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__
     18   yes
     19 #endif
     20 ], MONO_PATH_SEPARATOR=';', MONO_PATH_SEPARATOR=':')
     21   HAVE_CSHARPEXEC=1
     22   pushdef([AC_MSG_CHECKING],[:])dnl
     23   pushdef([AC_CHECKING],[:])dnl
     24   pushdef([AC_MSG_RESULT],[:])dnl
     25   AC_CHECK_PROG(HAVE_ILRUN_IN_PATH, ilrun, yes)
     26   AC_CHECK_PROG(HAVE_MONO_IN_PATH, mono, yes)
     27   AC_CHECK_PROG(HAVE_CLIX_IN_PATH, clix, yes)
     28   popdef([AC_MSG_RESULT])dnl
     29   popdef([AC_CHECKING])dnl
     30   popdef([AC_MSG_CHECKING])dnl
     31   for impl in "$CSHARP_CHOICE" pnet mono no; do
     32     case "$impl" in
     33       pnet)
     34         if test -n "$HAVE_ILRUN_IN_PATH" \
     35            && ilrun --version >/dev/null 2>/dev/null \
     36            ifelse([$1], , , [&& ilrun $2/$1 >/dev/null 2>/dev/null]); then
     37           HAVE_ILRUN=1
     38           ac_result="ilrun"
     39           break
     40         fi
     41         ;;
     42       mono)
     43         if test -n "$HAVE_MONO_IN_PATH" \
     44            && mono --version >/dev/null 2>/dev/null \
     45            ifelse([$1], , , [&& mono $2/$1 >/dev/null 2>/dev/null]); then
     46           HAVE_MONO=1
     47           ac_result="mono"
     48           break
     49         fi
     50         ;;
     51       sscli)
     52         if test -n "$HAVE_CLIX_IN_PATH" \
     53            ifelse([$1], , , [&& clix $2/$1 >/dev/null 2>/dev/null]); then
     54           HAVE_CLIX=1
     55           case $host_os in
     56             cygwin* | mingw* | pw32*)
     57               CLIX_PATH_VAR=PATH
     58               ;;
     59             darwin* | rhapsody*)
     60               CLIX_PATH_VAR=DYLD_LIBRARY_PATH
     61               ;;
     62             *)
     63               CLIX_PATH_VAR=LD_LIBRARY_PATH
     64               ;;
     65           esac
     66           eval CLIX_PATH=\"\$CLIX_PATH_VAR\"
     67           ac_result="clix"
     68           break
     69         fi
     70         ;;
     71       no)
     72         HAVE_CSHARPEXEC=
     73         ac_result="no"
     74         break
     75         ;;
     76     esac
     77   done
     78   AC_MSG_RESULT([$ac_result])
     79   AC_SUBST(MONO_PATH)
     80   AC_SUBST(MONO_PATH_SEPARATOR)
     81   AC_SUBST(CLIX_PATH_VAR)
     82   AC_SUBST(CLIX_PATH)
     83   AC_SUBST(HAVE_ILRUN)
     84   AC_SUBST(HAVE_MONO)
     85   AC_SUBST(HAVE_CLIX)
     86 ])
     87