1#!/bin/sh
2#
3# Copyright (C) 2004, 2007  Internet Systems Consortium, Inc. ("ISC")
4# Copyright (C) 2000, 2001  Internet Software Consortium.
5#
6# Permission to use, copy, modify, and/or distribute this software for any
7# purpose with or without fee is hereby granted, provided that the above
8# copyright notice and this permission notice appear in all copies.
9#
10# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
11# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
12# AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
13# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
14# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
15# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
16# PERFORMANCE OF THIS SOFTWARE.
17
18# $Id: headerdep_test.sh.in,v 1.8 2007/06/19 23:46:59 tbox Exp $
19
20#
21# Check the installed bind9 headers to make sure that no header
22# depends on another header having been included first.
23#
24
25prefix=@prefix@
26tmp=/tmp/thdr$$.tmp
27
28status=0
29
30echo "Checking for header interdependencies..."
31
32# Make a list of header files.
33(cd $prefix/include; find . -name '*.h' -print | sed 's!^./!!') > $tmp
34
35# Check each header.
36while read h
37do
38    echo " - <$h>"
39
40    # Build a test program.
41    cat <<EOF >test.c
42#include <$h>
43EOF
44
45    # Compile the test program.
46    if
47       gcc @STD_CWARNINGS@ @STD_CINCLUDES@ -I$prefix/include -c test.c 2>&1
48    then
49       :
50    else
51       status=1
52    fi
53done <$tmp
54
55rm -f test.c test.o $tmp
56
57exit $status
58