[
if test -d $srcdir/happy; then
SrcTreeHappyCmd=$hardtop/happy/src/happy-inplace
+else
+ SrcTreeHappyCmd=""
fi
if test x"$UseSrcTreeHappy" = xYES; then
- HappyCmd=$SrcTreeHappyCmd
+ if test x"$SrcTreeHappyCmd" != x; then
+ HappyCmd=$SrcTreeHappyCmd
+ else
+ AC_MSG_ERROR([--enable-src-tree-happy given, but happy not found in source tree])
+ fi
else
AC_PATH_PROG(HappyCmd,happy,$SrcTreeHappyCmd)
fi
[
if test -d $srcdir/haddock; then
SrcTreeHaddockCmd=$hardtop/haddock/src/haddock-inplace
+else
+ SrcTreeHaddockCmd=""
fi
if test x"$UseSrcTreeHaddock" = xYES; then
- HaddockCmd=$SrcTreeHaddockCmd
+ if test x"$SrcTreeHaddockCmd" != x; then
+ HaddockCmd=$SrcTreeHaddockCmd
+ else
+ AC_MSG_ERROR([--enable-src-tree-haddock given, but haddock not found in source tree])
+ fi
else
AC_PATH_PROG(HaddockCmd,haddock,$SrcTreeHaddockCmd)
fi
[
if test -d $srcdir/alex; then
SrcTreeAlexCmd=$hardtop/alex/src/alex-inplace
+else
+ SrcTreeAlexCmd=""
fi
if test x"$UseSrcTreeAlex" = xYES; then
- AlexCmd=$SrcTreeAlexCmd
+ if test x"$SrcTreeAlexCmd" != x; then
+ AlexCmd=$SrcTreeAlexCmd
+ else
+ AC_MSG_ERROR([--enable-src-tree-alex given, but alex not found in source tree])
+ fi
else
AC_PATH_PROG(AlexCmd,alex,$SrcTreeAlexCmd)
fi
])
-dnl
-dnl Check whether ld supports -x
-dnl
-AC_DEFUN(FPTOOLS_LD_X,
-[AC_CACHE_CHECK([whether ld understands -x], fptools_cv_ld_x,
-[
-echo 'foo() {}' > conftest.c
+# FP_PROG_LD
+# ----------
+# Sets the output variable LdCmd to the (non-Cygwin version of the) full path
+# of ld. Exits if no ld can be found
+AC_DEFUN([FP_PROG_LD],
+[AC_PATH_PROG([fp_prog_ld_raw], [ld])
+if test -z "$fp_prog_ld_raw"; then
+ AC_MSG_ERROR([cannot find ld in your PATH, no idea how to link])
+fi
+LdCmd=$fp_prog_ld_raw
+case $HostPlatform in
+ *mingw32) if test x${OSTYPE} != xmsys; then
+ LdCmd="`cygpath -w ${fp_prog_ld_raw} | sed -e 's@\\\\@/@g'`"
+ AC_MSG_NOTICE([normalized ld command to $LdCmd])
+ fi
+ ;;
+esac
+AC_SUBST([LdCmd])
+])# FP_PROG_LD
+
+
+# FP_PROG_LD_X
+# ------------
+# Sets the output variable LdXFlag to -x if ld supports this flag, otherwise the
+# variable's value is empty.
+AC_DEFUN([FP_PROG_LD_X],
+[AC_REQUIRE([FP_PROG_LD])
+AC_CACHE_CHECK([whether ld understands -x], [fp_cv_ld_x],
+[echo 'foo() {}' > conftest.c
${CC-cc} -c conftest.c
-if ${LdCmd} -r -x -o foo.o conftest.o; then
- fptools_cv_ld_x=yes
+if ${LdCmd} -r -x -o conftest2.o conftest.o; then
+ fp_cv_ld_x=yes
else
- fptools_cv_ld_x=no
+ fp_cv_ld_x=no
fi
-rm -rf conftest.c conftest.o foo.o
-])
-if test "$fptools_cv_ld_x" = yes; then
- LdXFlag=-x
+rm -rf conftest*])
+if test "$fp_cv_ld_x" = yes; then
+ LdXFlag=-x
else
- LdXFlag=
+ LdXFlag=
fi
-AC_SUBST(LdXFlag)
-])
+AC_SUBST([LdXFlag])
+])# FP_PROG_LD_X
+
+
+# FP_PROG_LD_IS_GNU
+# -----------------
+# Sets the output variable LdIsGNULd to YES or NO, depending on whether it is
+# GNU ld or not.
+AC_DEFUN([FP_PROG_LD_IS_GNU],
+[AC_REQUIRE([FP_PROG_LD])
+AC_CACHE_CHECK([whether ld is GNU ld], [fp_cv_gnu_ld],
+[if ${LdCmd} --version 2> /dev/null | grep "GNU" > /dev/null 2>&1; then
+ fp_cv_gnu_ld=yes
+else
+ fp_cv_gnu_ld=no
+fi])
+AC_SUBST([LdIsGNULd], [`echo $fp_cv_gnu_ld | sed 'y/yesno/YESNO/'`])
+])# FP_PROG_LD_IS_GNU
# FP_PROG_AR
AC_SUBST([GccVersion], [`gcc --version | grep mingw | cut -f 3 -d ' '`])
])# FP_HAVE_GCC
+AC_DEFUN([FP_MINGW_GCC],
+[
+ case $HostOS_CPP in
+ mingw*) AC_MSG_CHECKING([whether $CC is a mingw gcc])
+ if $CC -v 2>&1 | grep mingw >/dev/null; then
+ AC_MSG_RESULT([yes])
+ else
+ AC_MSG_RESULT([no])
+ AC_MSG_ERROR([Please use --with-gcc to specify a mingw gcc])
+ fi;;
+ *) ;;
+ esac
+])
dnl Small feature test for perl version. Assumes PerlCmd
dnl contains path to perl binary