137 lines
3.5 KiB
Plaintext
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)
|
|
|