libc/winsup/mingw/configure.in

137 lines
3.5 KiB
Plaintext

dnl Process this file with autoconf to produce a configure script.
dnl This file is part of winsup/mingw
dnl
dnl This program is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
dnl the Free Software Foundation; either version 2 of the License, or
dnl (at your option) any later version.
dnl
dnl This program is distributed in the hope that it will be useful,
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
dnl GNU General Public License for more details.
dnl
dnl You should have received a copy of the GNU General Public License
dnl along with this program; if not, write to the Free Software
dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
AC_PREREQ(2.12)
AC_INIT(dllmain.c)
dnl FIXME: We temporarily define our own version of AC_PROG_CC. This is
dnl copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS. We
dnl are probably using a cross compiler, which will not be able to fully
dnl link an executable. This should really be fixed in autoconf
dnl itself.
AC_DEFUN(LIB_AC_PROG_CC,
[AC_BEFORE([$0], [AC_PROG_CPP])dnl
AC_CHECK_TOOL(CC, gcc, gcc)
if test -z "$CC"; then
AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
fi
AC_PROG_CC_GNU
if test $ac_cv_prog_gcc = yes; then
GCC=yes
dnl Check whether -g works, even if CFLAGS is set, in case the package
dnl plays around with CFLAGS (such as to build both debugging and
dnl normal versions of a library), tasteless as that idea is.
ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
CFLAGS=
AC_PROG_CC_G
if test "$ac_test_CFLAGS" = set; then
CFLAGS="$ac_save_CFLAGS"
elif test $ac_cv_prog_cc_g = yes; then
CFLAGS="-g -O2"
else
CFLAGS="-O2"
fi
if test "$ac_test_CXXFLAGS" != set; then
CXXFLAGS='$(CFLAGS)'
fi
else
GCC=
test "${CFLAGS+set}" = set || CFLAGS="-g"
fi
])
LIB_AC_PROG_CC
case "$with_cross_host" in
""|*cygwin*) all_dlls_host='all_dlls_host'
install_dlls_host='install_dlls_host';;
esac
AC_SUBST(all_dlls_host)
AC_SUBST(install_dlls_host)
AC_CHECK_TOOL(AR, ar, ar)
AC_SUBST(AR)
AC_CHECK_TOOL(AS, as, as)
AC_SUBST(AS)
AC_CHECK_TOOL(RANLIB, ranlib, ranlib)
AC_SUBST(RANLIB)
AC_CHECK_TOOL(LD, ld, ld)
AC_SUBST(LD)
AC_CHECK_TOOL(DLLTOOL, dlltool, dlltool)
AC_SUBST(DLLTOOL)
AC_CHECK_TOOL(DLLWRAP, dlltool, dlltool)
AC_SUBST(DLLWRAP)
AC_CHECK_TOOL(WINDRES, windres, windres)
AC_SUBST(WINDRES)
AC_ALLOCA
AC_CANONICAL_SYSTEM
SUBDIRS="profile mingwex"
configdirs="profile mingwex"
HEADER_SUBDIR=""
LIBGMON_A=libgmon.a
W32API_INCLUDE='-I $(srcdir)/../w32api/include'
case "$target_os" in
*cygwin*)
MNO_CYGWIN=-mno-cygwin
LIBM_A=libm.a
# Install mingw headers in mingw subdirectory.
HEADER_SUBDIR="mingw"
;;
*)
# Build it for MSVCRT by default.
MNO_CYGWIN=
LIBM_A=libm.a
;;
esac
# THREAD_DLL used to be set within the above case and was mingwc for CRTDLL.
# I can find no reason to do this.
#
# FIXME: In the future I would like to change the dll name to mingwthrd to
# to match the libmingwthrd.a name.
THREAD_DLL=mingwm
if test -n "$configdirs"; then
AC_CONFIG_SUBDIRS($configdirs)
fi
MKINSTALLDIRS=$ac_aux_dir/mkinstalldirs
AC_SUBST(MKINSTALLDIRS)
AC_SUBST(MNO_CYGWIN)
AC_SUBST(THREAD_DLL)
AC_SUBST(LIBM_A)
AC_SUBST(LIBGMON_A)
AC_SUBST(SUBDIRS)
AC_SUBST(HEADER_SUBDIR)
AC_SUBST(W32API_INCLUDE)
AC_PROG_INSTALL
AC_OUTPUT(Makefile)