File: test_install_headers.sh

package info (click to toggle)
cvc4 1.8-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 69,876 kB
  • sloc: cpp: 274,686; sh: 5,833; python: 1,893; java: 929; lisp: 763; ansic: 275; perl: 214; makefile: 22; awk: 2
file content (36 lines) | stat: -rwxr-xr-x 1,288 bytes parent folder | download | duplicates (2)
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
#!/bin/bash
# contrib/test_install_headers.sh
# Tim King <taking@google.com> for the CVC4 project, 24 December 2015
#
# ./contrib/test_install_headers.sh <INSTALL>
#
# This files tests the completeness of the public headers for CVC4.
# Any header marked by #include "cvc4_public.h" in either the builds/
# or src/ directory is installed into the path INSTALL/include/cvc4 where
# INSTALL is set using the --prefix=INSTALL flag at configure time.
# This test uses find to attempt to include all of the headers in
# INSTALL/include/cvc4 and compiles a simple cpp file.

INSTALLATION=$1
CXX=g++
LDFLAGS=-lcln
CXXFILE=test_cvc4_header_install.cpp
OUTFILE=test_cvc4_header_install

echo $INSTALLATION

echo "Generating $CXXFILE"
find $INSTALLATION/include/cvc4/ -name *.h -printf '%P\n' | \
		 awk '{ print "#include <cvc4/" $0 ">"}' > $CXXFILE
echo "int main() { return 0; }" >> $CXXFILE

echo "Compiling $CXXFILE into $OUTFILE"
echo "$CXX -I$INSTALLATION/include -L$INSTALLATION/lib $LDFLAGS -o $OUTFILE $CXXFILE"
$CXX -I$INSTALLATION/include -L$INSTALLATION/lib $LDFLAGS -o $OUTFILE $CXXFILE

read -p "Do you want to delete $CXXFILE and $OUTFILE? [y/n]" yn
case $yn in
		[Nn]* ) exit;;
		[Yy]* ) rm "$OUTFILE" "$CXXFILE";;
		* ) echo "Did not get a yes or no answer. Exiting."; exit;;
esac