/[path-sandbox]/trunk/configure.ac
Gentoo

Contents of /trunk/configure.ac

Parent Directory Parent Directory | Revision Log Revision Log


Revision 57 - (hide annotations) (download)
Fri Apr 29 00:15:08 2005 UTC (9 years, 4 months ago) by azarah
Original Path: trunk/configure.in
File MIME type: text/plain
File size: 2773 byte(s)
Add comment for CXX/F77 puntage

1 ferringb 2 AC_PREREQ(2.59)
2 azarah 48 AC_INIT(sandbox, 1.2.2, dev-portage@gentoo.org)
3 ferringb 2 AM_INIT_AUTOMAKE
4 ferringb 16 AC_CONFIG_HEADER([config.h])
5 ferringb 2
6     # Checks for programs.
7     AC_PROG_CC
8 azarah 29 AC_ISC_POSIX
9     AC_PROG_INSTALL
10     AC_PROG_MAKE_SET
11     AC_PROG_AWK
12    
13 vapier 21 AC_ENABLE_SHARED
14     AC_DISABLE_STATIC
15 azarah 57 # Next for lines is a hack to prevent libtool checking for CXX/F77
16 azarah 56 m4_undefine([AC_PROG_CXX])
17     m4_defun([AC_PROG_CXX],[])
18     m4_undefine([AC_PROG_F77])
19     m4_defun([AC_PROG_F77],[])
20 ferringb 2 AC_PROG_LIBTOOL
21    
22     AC_PREFIX_DEFAULT([/usr])
23 azarah 29
24 ferringb 2 # Checks for libraries.
25     # Checks for header files.
26     AC_FUNC_ALLOCA
27     AC_HEADER_DIRENT
28     AC_HEADER_STDC
29     AC_HEADER_SYS_WAIT
30 vapier 21 AC_CHECK_HEADERS([ \
31     fcntl.h limits.h memory.h stddef.h \
32     stdlib.h string.h strings.h sys/file.h \
33     sys/param.h sys/time.h unistd.h utime.h \
34     ])
35 ferringb 2
36     # Checks for typedefs, structures, and compiler characteristics.
37     AC_C_CONST
38     AC_TYPE_UID_T
39     AC_TYPE_MODE_T
40     AC_TYPE_SIZE_T
41     AC_CHECK_TYPES([ptrdiff_t])
42    
43     # Checks for library functions.
44     AC_FUNC_CHOWN
45     AC_FUNC_FORK
46     AC_FUNC_LSTAT
47     AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
48     AC_FUNC_MALLOC
49     AC_FUNC_REALLOC
50     AC_TYPE_SIGNAL
51     AC_FUNC_STAT
52 vapier 21 AC_CHECK_FUNCS([ \
53     bzero ftruncate getcwd lchown memmove \
54     mempcpy memset mkdir pathconf realpath \
55     rmdir setenv strcasecmp strchr strdup \
56     strerror strndup strrchr strspn strstr \
57     ])
58 ferringb 2
59 vapier 23 dnl when using libc5, (f)trucate's offset argument type is size_t with
60     dnl libc5, but it's off_t with libc6 (glibc2).
61     AC_MSG_CHECKING(truncate argument type)
62 vapier 53 if echo '#include <unistd.h>' | $CC -E - | grep -q 'truncate.*size_t' ; then
63 vapier 23 AC_MSG_RESULT(size_t)
64     AC_DEFINE(TRUNCATE_T, size_t, [truncate arg type])
65     else
66     AC_MSG_RESULT(off_t)
67     AC_DEFINE(TRUNCATE_T, off_t, [truncate arg type])
68     fi
69    
70 vapier 53 dnl we need to handle symbols differently based upon their version,
71     dnl but we have to know which symbols the libc supports first
72     AC_MSG_CHECKING(libc path)
73 vapier 23 echo "int main(void) { return 0; }" > libctest.c
74 vapier 53 $CC -Wall -o libctest libctest.c
75     LIBC_PATH=`$CC $CFLAGS -Wl,-verbose -o libctest libctest.c 2>&1 | \
76 vapier 55 $AWK '/attempt to open/ { if (($4 ~ /libc\.so/) && ($5 == "succeeded")) LIBC = $4; }; END {print LIBC}'`
77 vapier 53 if test "$LIBC_PATH"x = x ; then
78     AC_MSG_ERROR(Unable to determine LIBC PATH)
79     fi
80     AC_MSG_RESULT($LIBC_PATH)
81 ferringb 33 AC_SUBST(LIBC_PATH)
82 vapier 23
83 vapier 53 dnl when intercepting libc calls, we have to know the name of the
84     dnl libc to load and search with dl*() calls
85     AC_MSG_CHECKING(libc version)
86     dnl the sed script at the end here looks funny but it's ok ...
87     dnl they're m4 escape sequences for left and right brackets
88     LIBC_VERSION=`readelf -d libctest | grep NEEDED.*libc\\.so | $AWK '{print $NF}' | sed -e 's:\@<:@::' -e 's:\@:>@::'`
89     if test "$LIBC_VERSION"x = x ; then
90     AC_MSG_ERROR(Unable to determine LIBC VERSION)
91     fi
92     AC_MSG_RESULT($LIBC_VERSION)
93     AC_DEFINE_UNQUOTED(LIBC_VERSION, "$LIBC_VERSION", [name of libc to hook into])
94     rm -f libctest
95    
96 vapier 21 AC_OUTPUT([Makefile])

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.20