| #!/usr/bin/env bash |
| |
| # This test makes sure that if lto is enabled and that all host libraries |
| # contain only bitcode. |
| # |
| # *NOTE* This will not trigger for embedded bitcode sections since to file those |
| # are still mach-o files and come up as such. |
| |
| set -e |
| set -u |
| |
| # REQUIRES: lto |
| # REQUIRES: OS=macosx |
| # RUN: %s %swift_obj_root |
| |
| if find $1/lib -iname '*.cpp.o' -type f -exec file {} \; | grep -q -v -e bitcode -e bit-code; then |
| echo "Found a ./lib non-bitcode object file!" |
| exit 1 |
| else |
| echo "All ./lib object files are bit-code files!" |
| fi |
| |
| if find $1/unittests -iname '*.cpp.o' -type f -exec file {} \; | grep -q -v -e bitcode -e bit-code; then |
| echo "Found a ./unittests non-bitcode object file!" |
| exit 1 |
| else |
| echo "All ./unittests object files are bit-code files!" |
| fi |
| |
| set +u |
| set +e |