mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-01-19 12:59:21 +08:00
f4a26ececa
Add a configure option '--disable-doc' to disable building of the documentation by the 'all' target. Check for the required tools at configure time, and require them if building documentation is enabled. Even if building the documentation was diabled with '--disable-doc', 'make -C doc' at the top-level can still make the documentation, if the documentation tools were found. If the tools were not found, 'missing' is used to issue a warning about that. Update instructions for building Cygwin appropriately. (Building documentation remains the default to increase the chances of noticing when building the documentation is broken.)
143 lines
3.8 KiB
Plaintext
143 lines
3.8 KiB
Plaintext
dnl Autoconf configure script for Cygwin.
|
|
dnl
|
|
dnl This file is part of Cygwin.
|
|
dnl
|
|
dnl This software is a copyrighted work licensed under the terms of the
|
|
dnl Cygwin license. Please consult the file "CYGWIN_LICENSE" for
|
|
dnl details.
|
|
dnl
|
|
dnl Process this file with autoconf to produce a configure script.
|
|
|
|
AC_PREREQ([2.59])
|
|
AC_INIT([Cygwin],[0],[cygwin@cygwin.com],[cygwin],[https://cygwin.com])
|
|
AC_CONFIG_AUX_DIR(..)
|
|
AC_CANONICAL_TARGET
|
|
AM_INIT_AUTOMAKE([dejagnu foreign no-define no-dist subdir-objects -Wall -Wno-portability -Wno-extra-portability])
|
|
AM_SILENT_RULES([yes])
|
|
|
|
realdirpath() {
|
|
test -z "$1" && return 1
|
|
(cd "$1" 2>/dev/null && pwd)
|
|
if test $? -ne 0; then
|
|
return 1
|
|
else
|
|
return 0
|
|
fi
|
|
}
|
|
|
|
winsup_srcdir="$(realdirpath $srcdir)"
|
|
target_builddir="$(realdirpath ..)"
|
|
|
|
AC_NO_EXECUTABLES
|
|
|
|
AC_PROG_INSTALL
|
|
AC_PROG_MKDIR_P
|
|
AC_PROG_CC
|
|
AC_PROG_CXX
|
|
AC_PROG_CPP
|
|
AM_PROG_AS
|
|
|
|
AC_LANG(C)
|
|
AC_LANG(C++)
|
|
|
|
AC_ARG_WITH([cross-bootstrap],[AS_HELP_STRING([--with-cross-bootstrap],[do not build programs using the MinGW toolchain or check for MinGW libraries (useful for bootstrapping a cross-compiler)])],[],[with_cross_bootstrap=no])
|
|
|
|
AC_CYGWIN_INCLUDES
|
|
|
|
AC_CONFIG_HEADERS([cygwin/config.h])
|
|
|
|
AC_CHECK_TOOL(AR, ar, ar)
|
|
AC_CHECK_TOOL(AS, as, as)
|
|
AC_CHECK_TOOL(DLLTOOL, dlltool, dlltool)
|
|
AC_CHECK_TOOL(LD, ld, ld)
|
|
AC_CHECK_TOOL(NM, nm, nm)
|
|
AC_CHECK_TOOL(OBJCOPY, objcopy, objcopy)
|
|
AC_CHECK_TOOL(OBJDUMP, objdump, objdump)
|
|
AC_CHECK_TOOL(RANLIB, ranlib, ranlib)
|
|
AC_CHECK_TOOL(STRIP, strip, strip)
|
|
AC_CHECK_TOOL(WINDRES, windres, windres)
|
|
|
|
AC_ARG_ENABLE(debugging,
|
|
[AS_HELP_STRING([--enable-debugging],[Build a cygwin DLL which has more consistency checking for debugging])],
|
|
[case "${enableval}" in
|
|
yes) AC_DEFINE([DEBUGGING],[1],[Define if DEBUGGING support is requested.]) ;;
|
|
no) ;;
|
|
esac
|
|
])
|
|
|
|
case "$target_cpu" in
|
|
i?86)
|
|
DLL_ENTRY="_dll_entry@12"
|
|
DEF_DLL_ENTRY="dll_entry@12"
|
|
DIN_FILE="i686.din"
|
|
TLSOFFSETS_H="tlsoffsets.h"
|
|
;;
|
|
x86_64)
|
|
DLL_ENTRY="dll_entry"
|
|
DEF_DLL_ENTRY="dll_entry"
|
|
DIN_FILE="x86_64.din"
|
|
TLSOFFSETS_H="tlsoffsets64.h"
|
|
;;
|
|
*) AC_MSG_ERROR([Invalid target processor "$target_cpu"]) ;;
|
|
esac
|
|
|
|
AC_SUBST(DLL_ENTRY)
|
|
AC_SUBST(DEF_DLL_ENTRY)
|
|
AC_SUBST(DIN_FILE)
|
|
AC_SUBST(TLSOFFSETS_H)
|
|
|
|
AM_CONDITIONAL(TARGET_X86_64, [test $target_cpu = "x86_64"])
|
|
|
|
AC_ARG_ENABLE(doc,
|
|
[AS_HELP_STRING([--enable-doc], [Build documentation])],,
|
|
enable_doc=yes)
|
|
AM_CONDITIONAL(BUILD_DOC, [test $enable_doc != "no"])
|
|
|
|
AC_CHECK_PROGS([DOCBOOK2XTEXI], [docbook2x-texi db2x_docbook2texi])
|
|
if test -z "$DOCBOOK2XTEXI" ; then
|
|
if test "x$enable_doc" != "xno"; then
|
|
AC_MSG_ERROR([docbook2texi is required to build documentation])
|
|
else
|
|
unset DOCBOOK2XTEXI
|
|
AM_MISSING_PROG([DOCBOOK2XTEXI], [docbook2texi])
|
|
fi
|
|
fi
|
|
|
|
AC_CHECK_PROGS([XMLTO], [xmlto])
|
|
if test -z "$XMLTO"; then
|
|
if test "x$enable_doc" != "xno"; then
|
|
AC_MSG_ERROR([xmlto is required to build documentation])
|
|
else
|
|
unset XMLTO
|
|
AM_MISSING_PROG([XMLTO], [xmlto])
|
|
fi
|
|
fi
|
|
|
|
if test "x$with_cross_bootstrap" != "xyes"; then
|
|
AC_CHECK_PROGS(MINGW_CXX, ${target_cpu}-w64-mingw32-g++)
|
|
test -n "$MINGW_CXX" || AC_MSG_ERROR([no acceptable MinGW g++ found in \$PATH])
|
|
AC_CHECK_PROGS(MINGW_CC, ${target_cpu}-w64-mingw32-gcc)
|
|
test -n "$MINGW_CC" || AC_MSG_ERROR([no acceptable MinGW gcc found in \$PATH])
|
|
fi
|
|
AM_CONDITIONAL(CROSS_BOOTSTRAP, [test "x$with_cross_bootstrap" != "xyes"])
|
|
|
|
AC_EXEEXT
|
|
|
|
AC_CHECK_LIB([bfd], [bfd_init], [true],
|
|
AC_MSG_WARN([Not building dumper.exe since some required libraries or headers are missing]))
|
|
|
|
AM_CONDITIONAL(BUILD_DUMPER, [test "x$ac_cv_lib_bfd_bfd_init" = "xyes"])
|
|
|
|
AC_CONFIG_FILES([
|
|
Makefile
|
|
cygwin/Makefile
|
|
cygserver/Makefile
|
|
doc/Makefile
|
|
utils/Makefile
|
|
utils/mingw/Makefile
|
|
testsuite/Makefile
|
|
testsuite/cygrun/Makefile
|
|
])
|
|
|
|
AC_OUTPUT
|