aboutsummaryrefslogtreecommitdiff
path: root/winsup/configure.in
blob: 79d472b9eec974f8f7aaa2ff9d72dcd125807db4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
dnl Autoconf configure script for Cygwin.
dnl Copyright 1996, 1997, 1998, 1999, 2000 Red Hat, Inc.
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.12)dnl
AC_INIT(Makefile.in)

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
else
  GCC=
  test "${CFLAGS+set}" = set || CFLAGS="-g"
fi
])

AC_DEFUN(LIB_AC_PROG_CXX,
[AC_BEFORE([$0], [AC_PROG_CPP])dnl
AC_CHECK_TOOL(CXX, g++, g++)
if test -z "$CXX"; then
  AC_CHECK_PROG(CXX, c++, c++, , , )
  test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
fi

CXXFLAGS='$(CFLAGS)'
])

AC_CANONICAL_SYSTEM

LIB_AC_PROG_CC
LIB_AC_PROG_CXX

SUBDIRS='cygwin'
if test -d $srcdir/w32api; then
    SUBDIRS="w32api $SUBDIRS"
else
    echo "*** missing w32api directory" 1>&2
    exit 1
fi
test -d $srcdir/mingw && SUBDIRS="$SUBDIRS mingw"

case "$with_cross_host" in
  ""|*cygwin*)
    test -d $srcdir/bz2lib && SUBDIRS="$SUBDIRS bz2lib"
    test -d $srcdir/zlib && SUBDIRS="$SUBDIRS zlib"
    # test -d $srcdir/subauth && SUBDIRS="$SUBDIRS subauth"
    SUBDIRS="$SUBDIRS utils doc"
    ;;
esac

AC_CONFIG_SUBDIRS($SUBDIRS)

AC_PROG_MAKE_SET

AC_SUBST(SUBDIRS)
AC_OUTPUT(Makefile)