File: headerdep_test.sh.in

package info (click to toggle)
bind9 1%3A9.16.50-1~deb11u2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 50,580 kB
  • sloc: ansic: 330,886; sh: 53,968; perl: 7,832; python: 3,949; makefile: 3,555; cpp: 2,156; xml: 114; lisp: 31
file content (51 lines) | stat: -rw-r--r-- 1,090 bytes parent folder | download
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
#!/bin/sh

# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
#
# SPDX-License-Identifier: MPL-2.0
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0.  If a copy of the MPL was not distributed with this
# file, you can obtain one at https://mozilla.org/MPL/2.0/.
#
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.

#
# Check the installed bind9 headers to make sure that no header
# depends on another header having been included first.
#

prefix=@prefix@
tmp=/tmp/thdr$$.tmp

status=0

echo "Checking for header interdependencies..."

# Make a list of header files.
(cd $prefix/include; find . -name '*.h' -print | sed 's!^./!!') > $tmp

# Check each header.
while read h
do
    echo " - <$h>"

    # Build a test program.
    cat <<EOF >test.c
#include <$h>
EOF

    # Compile the test program.
    if
       gcc @STD_CWARNINGS@ @STD_CINCLUDES@ -I$prefix/include -c test.c 2>&1
    then
       :
    else
       status=1
    fi
done <$tmp

rm -f test.c test.o $tmp

exit $status