Colin Cross | fb1c3f0 | 2017-06-09 11:17:28 -0700 | [diff] [blame] | 1 | #!/bin/bash |
| 2 | |
Colin Cross | fb1c3f0 | 2017-06-09 11:17:28 -0700 | [diff] [blame] | 3 | source $(dirname $0)/build-openjdk-common.sh |
| 4 | |
Eugene Yakavets | ee9d097 | 2023-06-20 16:37:14 -0700 | [diff] [blame] | 5 | clang_dir=${TOP}/prebuilts/clang/host/darwin-x86/clang-r450784e |
Colin Cross | 47c015d | 2017-06-27 12:44:43 -0700 | [diff] [blame] | 6 | freetype=freetype-2.8 |
Colin Cross | 0c2aa0b | 2017-06-26 10:18:34 -0700 | [diff] [blame] | 7 | |
| 8 | export PATH=${clang_dir}/bin:${PATH} |
Colin Cross | fb1c3f0 | 2017-06-09 11:17:28 -0700 | [diff] [blame] | 9 | |
| 10 | ( |
| 11 | cd ${OUT} |
| 12 | tar jxf ${TOP}/toolchain/jdk/deps/src/${freetype}.tar.bz2 |
Colin Cross | fb1c3f0 | 2017-06-09 11:17:28 -0700 | [diff] [blame] | 13 | ) |
| 14 | |
Colin Cross | e44c397 | 2017-11-15 15:49:27 -0800 | [diff] [blame] | 15 | SYSROOT=$(xcrun --show-sdk-path) |
Colin Cross | 820e22d | 2017-06-27 14:28:42 -0700 | [diff] [blame] | 16 | GLOBAL_FLAGS=( |
Colin Cross | e44c397 | 2017-11-15 15:49:27 -0800 | [diff] [blame] | 17 | -isysroot ${SYSROOT} |
| 18 | --sysroot ${SYSROOT} |
| 19 | -F ${SYSROOT}/System/Library/Frameworks/JavaVM.framework/Frameworks |
Colin Cross | 820e22d | 2017-06-27 14:28:42 -0700 | [diff] [blame] | 20 | -Wno-conversion |
| 21 | -Wno-deprecated-declarations |
| 22 | -Wno-expansion-to-defined |
| 23 | -Wno-format |
| 24 | -Wno-implicit-function-declaration |
| 25 | -Wno-incompatible-pointer-types |
| 26 | -Wno-logical-op-parentheses |
| 27 | -Wno-macro-redefined |
| 28 | -Wno-missing-field-initializers |
| 29 | -Wno-missing-method-return-type |
| 30 | -Wno-parentheses |
| 31 | -Wno-parentheses-equality |
Dana Dahlstrom | b165034 | 2019-01-16 20:21:22 -0800 | [diff] [blame] | 32 | -Wno-reserved-user-defined-literal |
Colin Cross | 820e22d | 2017-06-27 14:28:42 -0700 | [diff] [blame] | 33 | -Wno-self-assign |
| 34 | -Wno-shift-negative-value |
| 35 | -Wno-sign-compare |
| 36 | -Wno-sign-conversion |
| 37 | -Wno-switch |
| 38 | -Wno-tautological-compare |
| 39 | -Wno-tautological-undefined-compare |
| 40 | -Wno-unused-command-line-argument |
| 41 | -Wno-unused-function |
| 42 | -Wno-unused-parameter |
Colin Cross | e44c397 | 2017-11-15 15:49:27 -0800 | [diff] [blame] | 43 | |
Colin Cross | 15c2b90 | 2018-10-16 16:07:49 -0700 | [diff] [blame] | 44 | -Wno-deprecated-register |
| 45 | -Wno-c++11-narrowing |
| 46 | |
Colin Cross | e44c397 | 2017-11-15 15:49:27 -0800 | [diff] [blame] | 47 | -Wno-undefined-var-template |
Colin Cross | ffc4961 | 2021-03-13 20:33:10 -0800 | [diff] [blame] | 48 | |
| 49 | -Wno-sizeof-array-div |
| 50 | -Wno-string-compare |
| 51 | -Wno-mismatched-parameter-types |
| 52 | -Wno-unguarded-availability-new |
| 53 | -Wno-void-pointer-to-int-cast |
Pirama Arumuga Nainar | 5fde50f | 2021-04-26 10:09:37 -0700 | [diff] [blame] | 54 | |
| 55 | -fno-delete-null-pointer-checks |
Colin Cross | 820e22d | 2017-06-27 14:28:42 -0700 | [diff] [blame] | 56 | ) |
| 57 | GLOBAL_FLAGS=${GLOBAL_FLAGS[@]} |
| 58 | |
Colin Cross | 47c015d | 2017-06-27 12:44:43 -0700 | [diff] [blame] | 59 | CC=clang |
| 60 | CXX=clang++ |
Colin Cross | c9f5e34 | 2017-06-23 17:36:58 -0700 | [diff] [blame] | 61 | |
Colin Cross | 47c015d | 2017-06-27 12:44:43 -0700 | [diff] [blame] | 62 | export MACOSX_DEPLOYMENT_TARGET=10.8 |
Colin Cross | fb1c3f0 | 2017-06-09 11:17:28 -0700 | [diff] [blame] | 63 | |
Colin Cross | 47c015d | 2017-06-27 12:44:43 -0700 | [diff] [blame] | 64 | ( |
| 65 | cd ${OUT}/${freetype} |
| 66 | bash configure \ |
Colin Cross | 075263c | 2018-02-28 14:54:24 -0800 | [diff] [blame] | 67 | --with-png=no \ |
| 68 | --with-harfbuzz=no \ |
Colin Cross | 47c015d | 2017-06-27 12:44:43 -0700 | [diff] [blame] | 69 | CC=clang \ |
| 70 | CC_BUILD=clang \ |
| 71 | LD=clang \ |
| 72 | CFLAGS="${GLOBAL_FLAGS}" \ |
| 73 | && make -j8 CCexe_CFLAGS="${GLOBAL_FLAGS}" |
| 74 | mkdir -p lib |
| 75 | cp objs/.libs/libfreetype.dylib lib/ |
| 76 | ) |
| 77 | |
| 78 | configure_openjdk \ |
| 79 | --with-freetype=${OUT}/${freetype} |
| 80 | |
Colin Cross | e44c397 | 2017-11-15 15:49:27 -0800 | [diff] [blame] | 81 | if [ "$JDK_VERSION" = "8u" ]; then |
| 82 | extra_build_flags=COMPILER_WARNINGS_FATAL=false |
| 83 | fi |
| 84 | |
| 85 | build_openjdk_images ${extra_build_flags} |
Colin Cross | c6e54ff | 2017-06-28 17:29:29 -0700 | [diff] [blame] | 86 | |
| 87 | # Rewrite absolute references to libfreetype.6.dylib to rpath-relative references |
Colin Cross | e44c397 | 2017-11-15 15:49:27 -0800 | [diff] [blame] | 88 | for lib in $(find ${OUT}/images/jdk ${OUT}/images/jre ${OUT}/images/jdk-bundle ${OUT}/images/jre-bundle \ |
| 89 | -name "libfontmanager.dylib"); do |
Colin Cross | c6e54ff | 2017-06-28 17:29:29 -0700 | [diff] [blame] | 90 | install_name_tool -change /usr/local/lib/libfreetype.6.dylib @rpath/libfreetype.dylib.6 $lib |
| 91 | done |
| 92 | |
Colin Cross | a146717 | 2017-09-21 22:47:43 -0700 | [diff] [blame] | 93 | dist_openjdk |