15bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod#!/bin/sh 25bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 35bc18195d55570ef01e4b24dd248f222f081b0a2Behdad EsfahbodLC_ALL=C 45bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodexport LC_ALL 55bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 65bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodtest -z "$srcdir" && srcdir=. 75bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodstat=0 85bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 9d22548c0e362cc9447557440af9ecbb11badfa78Behdad Esfahbodtest "x$HBHEADERS" = x && HBHEADERS=`cd "$srcdir"; find . -maxdepth 1 -name 'hb*.h'` 10d22548c0e362cc9447557440af9ecbb11badfa78Behdad Esfahbodtest "x$HBSOURCES" = x && HBSOURCES=`cd "$srcdir"; find . -maxdepth 1 -name 'hb-*.cc' -or -name 'hb-*.hh'` 115bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 125bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 135bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodecho 'Checking that public header files #include "hb-common.h" or "hb.h" first (or none)' 145bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 155bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodfor x in $HBHEADERS; do 16d3490761e11ae308fbd8aaf02059653f579035c5Behdad Esfahbod test -f "$srcdir/$x" && x="$srcdir/$x" 175bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod grep '#.*\<include\>' "$x" /dev/null | head -n 1 185bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahboddone | 195bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodgrep -v '"hb-common[.]h"' | 205bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodgrep -v '"hb[.]h"' | 215bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodgrep -v 'hb-common[.]h:' | 225bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodgrep -v 'hb[.]h:' | 235bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodgrep . >&2 && stat=1 245bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 255bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 265bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodecho 'Checking that source files #include "hb-*private.hh" first (or none)' 275bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 285bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodfor x in $HBSOURCES; do 29d3490761e11ae308fbd8aaf02059653f579035c5Behdad Esfahbod test -f "$srcdir/$x" && x="$srcdir/$x" 305bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod grep '#.*\<include\>' "$x" /dev/null | head -n 1 315bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahboddone | 325bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodgrep -v '"hb-.*private[.]hh"' | 335bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodgrep -v 'hb-private[.]hh:' | 345bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodgrep . >&2 && stat=1 355bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 365bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 375bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodecho 'Checking that there is no #include <hb.*.h>' 38d3490761e11ae308fbd8aaf02059653f579035c5Behdad Esfahbodfor x in $HBHEADERS $HBSOURCES; do 39d3490761e11ae308fbd8aaf02059653f579035c5Behdad Esfahbod test -f "$srcdir/$x" && x="$srcdir/$x" 40d3490761e11ae308fbd8aaf02059653f579035c5Behdad Esfahbod grep '#.*\<include\>.*<.*hb' "$x" /dev/null >&2 && stat=1 41d3490761e11ae308fbd8aaf02059653f579035c5Behdad Esfahboddone 425bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 435bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbod 445bc18195d55570ef01e4b24dd248f222f081b0a2Behdad Esfahbodexit $stat 45