a3d1ccd8ab
AC_SUBST_FILE happened to work in autoconf 2.59, but is broken in autoconf 2.61.
121 lines
3.1 KiB
Text
121 lines
3.1 KiB
Text
dnl Process this file with autoconf 2.53 or later to produce
|
|
dnl a configure script.
|
|
AC_PREREQ(2.53)
|
|
AC_INIT(config.h.in)
|
|
AC_CONFIG_HEADERS(config.h)
|
|
|
|
dnl Check for broken VPATH handling on older NetBSD makes.
|
|
AC_DEFUN(AC_PROG_MAKE_VPATHOK,
|
|
[AC_MSG_CHECKING(whether ${MAKE-make} has sane VPATH handling)
|
|
set dummy ${MAKE-make}; ac_make=`echo "[$]2" | sed 'y%./+-%__p_%'`
|
|
AC_CACHE_VAL(ac_cv_prog_make_vpathok,
|
|
[mkdir conftestdir
|
|
cat > conftestdir/conftestmake <<\EOF
|
|
VPATH = ..
|
|
conftestfoo: conftestbar
|
|
@echo ac_make2temp=ok
|
|
conftestbar: conftestbaz
|
|
@echo ac_maketemp=broken
|
|
@touch conftestbar
|
|
EOF
|
|
echo > conftestbaz # these two lines need to be...
|
|
echo > conftestbar # ... in this order not the other
|
|
changequote(, )dnl
|
|
unset ac_maketemp
|
|
unset ac_make2temp
|
|
# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
|
|
eval `cd conftestdir; ${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
|
|
changequote([, ])dnl
|
|
if test -n "$ac_maketemp"; then
|
|
ac_cv_prog_make_vpathok=no
|
|
else
|
|
if test -n "$ac_make2temp"; then
|
|
ac_cv_prog_make_vpathok=yes
|
|
else
|
|
ac_cv_prog_make_vpathok=no
|
|
fi
|
|
fi
|
|
rm -rf conftestdir
|
|
rm -f conftestbar conftestbaz])dnl
|
|
if test $ac_cv_prog_make_vpathok = yes; then
|
|
AC_MSG_RESULT(yes)
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
])
|
|
|
|
AC_PREFIX_PROGRAM(nasm)
|
|
|
|
dnl Checks for programs.
|
|
AC_PROG_CC
|
|
AC_PROG_LN_S
|
|
AC_PROG_MAKE_SET
|
|
if test -f nasm.c; then
|
|
# we're building in the source dir, so we don't need this check at all
|
|
ac_cv_prog_make_vpathok=yes
|
|
else
|
|
AC_PROG_MAKE_VPATHOK
|
|
fi
|
|
AC_PROG_INSTALL
|
|
|
|
dnl If we have gcc, add appropriate options
|
|
PA_ADD_CFLAGS([-W])
|
|
PA_ADD_CFLAGS([-Wall])
|
|
PA_ADD_CFLAGS([-std=c99])
|
|
PA_ADD_CFLAGS([-pedantic])
|
|
|
|
dnl Look for "nroff" or "groff"
|
|
AC_CHECK_PROGS(NROFF, nroff, echo)
|
|
AC_SUBST(NROFF)
|
|
|
|
dnl Checks for header files.
|
|
AC_HEADER_STDC
|
|
if test $ac_cv_header_stdc = no; then
|
|
AC_MSG_ERROR([NASM requires ANSI C header files to compile])
|
|
fi
|
|
|
|
AC_CHECK_HEADERS(limits.h)
|
|
if test $ac_cv_header_limits_h = no; then
|
|
AC_MSG_ERROR([NASM requires '<limits.h>' to compile])
|
|
fi
|
|
|
|
dnl Check for <inttypes.h> or add a substitute version
|
|
AC_CHECK_HEADERS(inttypes.h, , CFLAGS="$CFLAGS -I\$(top_srcdir)/inttypes")
|
|
|
|
dnl Checks for typedefs, structures, and compiler characteristics.
|
|
AC_C_CONST
|
|
AC_TYPE_SIZE_T
|
|
|
|
dnl Checks for library functions.
|
|
AC_SUBST(XOBJS)
|
|
|
|
AC_CHECK_FUNCS(strcspn, ,
|
|
AC_MSG_ERROR([NASM requires ANSI C (specifically, "strcspn")]))
|
|
|
|
AC_CHECK_FUNCS(strspn, ,
|
|
AC_MSG_ERROR([NASM requires ANSI C (specifically, "strspn")]))
|
|
|
|
missing=true
|
|
AC_CHECK_FUNCS([vsnprintf _vsnprintf], missing=false)
|
|
if $missing; then
|
|
XOBJS="$XOBJS lib/vsnprintf.o"
|
|
fi
|
|
|
|
missing=true
|
|
AC_CHECK_FUNCS([snprintf _snprintf], missing=false)
|
|
if $missing; then
|
|
XOBJS="$XOBJS lib/snprintf.o"
|
|
fi
|
|
|
|
AC_CHECK_FUNCS(getuid)
|
|
AC_CHECK_FUNCS(getgid)
|
|
|
|
if test $ac_cv_prog_make_vpathok = no; then
|
|
echo Copying generated srcs into build directory to compensate for VPATH breakage
|
|
for file in macros.c insnsa.c insnsd.c insnsn.c insnsi.h version.h version.mac; do
|
|
if test ! -f $file; then cp -p ${srcdir}/${file} .; fi
|
|
done
|
|
fi
|
|
|
|
AC_OUTPUT_COMMANDS([mkdir -p output])
|
|
AC_OUTPUT(Makefile rdoff/Makefile doc/Makefile)
|