1 # Copyright (C) 2016 and later: Unicode, Inc. and others.
2 # License & terms of use: http://www.unicode.org/copyright.html
3 # Copyright (C) 2016 International Business Machines Corporation
4 # and others. All rights reserved.
6 # Run this script from $ICU_ROOT/src/source/
7 # ~/svn.icu/trunk/src/source$ test/hdrtst/testinternalheaders.sh
14 for file in `ls common/*.h`; do
16 echo '#include "'$file'"' > ht_temp.cpp
;
17 echo 'void noop() {}' >> ht_temp.cpp
;
18 $CXX -c -std=c
++11 -I common
-O0 ht_temp.cpp
;
21 for file in `ls i18n/*.h`; do
23 echo '#include "'$file'"' > ht_temp.cpp
;
24 echo 'void noop() {}' >> ht_temp.cpp
;
25 $CXX -c -std=c
++11 -I common
-I i18n
-O0 ht_temp.cpp
;
28 for file in `ls io/*.h`; do
30 echo '#include "'$file'"' > ht_temp.cpp
;
31 echo 'void noop() {}' >> ht_temp.cpp
;
32 $CXX -c -std=c
++11 -I common
-I i18n
-I io
-O0 ht_temp.cpp
;
37 # layoutex now depends on external additions such as HarfBuzz, skip here
39 # -I . for includes of layout/*.h
40 #for file in `ls layoutex/*.h`; do
42 # echo '#include "'$file'"' > ht_temp.cpp ;
43 # echo 'void noop() {}' >> ht_temp.cpp ;
44 # $CXX -c -I common -I i18n -I io -I layout -I . -I layoutex -O0 ht_temp.cpp ;
49 for file in `ls tools/toolutil/*.h`; do
51 echo '#include "'$file'"' > ht_temp.cpp
;
52 echo 'void noop() {}' >> ht_temp.cpp
;
53 $CXX -c -std=c
++11 -I common
-I i18n
-I io
-I tools
/toolutil
-O0 ht_temp.cpp
;
56 # Exclude tzcode: tools/tzcode/private.h uses an argument "new" in a function declaration.
57 # Markus sent an email to the tz list on 20160307 requesting that it be renamed.
58 # We don't want to patch it, and don't want to spend the time for this script here
59 # to know about C-only header files.
61 for tool
in escapesrc genccode gencmn gencolusb gennorm2 genren gentest icupkg icuswap \
62 pkgdata genbrk gencfu gencnval gendict genrb gensprep icuinfo makeconv memcheck
; do
63 for file in `ls tools/$tool/*.h`; do
65 echo '#include "'$file'"' > ht_temp.cpp
;
66 echo 'void noop() {}' >> ht_temp.cpp
;
67 $CXX -c -std=c
++11 -I common
-I i18n
-I io
-I tools
/toolutil
-I tools
/$tool -O0 ht_temp.cpp
;
73 for file in `ls tools/ctestfw/unicode/*.h`; do
75 echo '#include "'$file'"' > ht_temp.cpp
;
76 echo 'void noop() {}' >> ht_temp.cpp
;
77 $CXX -c -std=c
++11 -I common
-I i18n
-I io
-I tools
/toolutil
-I tools
/ctestfw
-O0 ht_temp.cpp
;
80 # C not C++ for cintltst
81 for file in `ls test/cintltst/*.h`; do
83 echo '#include "'$file'"' > ht_temp.c
;
84 echo 'void noop() {}' >> ht_temp.c
;
85 $CC -c -std=c11
-I common
-I i18n
-I io
-I tools
/toolutil
-I tools
/ctestfw
-I test
/cintltst
-O0 ht_temp.c
;
88 for test in intltest iotest testmap thaitest
; do
89 for file in `ls test/$test/*.h`; do
91 echo '#include "'$file'"' > ht_temp.cpp
;
92 echo 'void noop() {}' >> ht_temp.cpp
;
93 $CXX -c -std=c
++11 -I common
-I i18n
-I io
-I tools
/toolutil
-I tools
/ctestfw
-I test
/$test -O0 ht_temp.cpp
;
97 # layoutex now depends on external additions such as HarfBuzz, skip here
99 #for file in `ls test/letest/*.h`; do
101 # echo '#include "'$file'"' > ht_temp.cpp ;
102 # echo 'void noop() {}' >> ht_temp.cpp ;
103 # $CXX -c -I common -I i18n -I io -I layout -I . -I layoutex -I tools/toolutil -I tools/ctestfw -I test/letest -O0 ht_temp.cpp ;
108 rm ht_temp.cpp ht_temp.o