You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
82 lines
2.8 KiB
82 lines
2.8 KiB
# Copyright (C) 2015 The Android Open Source Project
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
# Common variables and actions for inclusion in srcgen scripts.
|
|
|
|
set -e
|
|
|
|
if [[ -z ${ANDROID_BUILD_TOP} ]]; then
|
|
echo ANDROID_BUILD_TOP not set
|
|
exit 1
|
|
fi
|
|
|
|
# source envsetup.sh because functions we use like mm are not exported.
|
|
source ${ANDROID_BUILD_TOP}/build/envsetup.sh
|
|
|
|
# Build Options used by Android.bp
|
|
while true; do
|
|
case "$1" in
|
|
--do-not-make ) DO_NOT_MAKE=1; shift ;;
|
|
-- ) shift; break ;;
|
|
* ) break ;;
|
|
esac
|
|
done
|
|
|
|
# Build the srcgen tools.
|
|
cd ${ANDROID_BUILD_TOP}
|
|
if [ -z "$DO_NOT_MAKE" ]; then
|
|
make -j16 android_icu4j_srcgen_binary
|
|
fi
|
|
|
|
ICU_SRCGEN_DIR=${ANDROID_BUILD_TOP}/external/icu/tools/srcgen
|
|
ICU4J_DIR=${ANDROID_BUILD_TOP}/external/icu/icu4j
|
|
ANDROID_ICU4J_DIR=${ANDROID_BUILD_TOP}/external/icu/android_icu4j
|
|
|
|
CLASSPATH=${ANDROID_HOST_OUT}/framework/currysrc.jar:${ANDROID_HOST_OUT}/framework/android_icu4j_srcgen.jar
|
|
|
|
# The parts of ICU4J to include during srcgen.
|
|
#
|
|
# The following are deliberately excluded:
|
|
# localespi - is not supported on Android
|
|
# charset - because icu4c is used instead
|
|
INPUT_DIRS="\
|
|
${ICU4J_DIR}/main/classes/collate/src \
|
|
${ICU4J_DIR}/main/classes/core/src \
|
|
${ICU4J_DIR}/main/classes/currdata/src \
|
|
${ICU4J_DIR}/main/classes/langdata/src \
|
|
${ICU4J_DIR}/main/classes/regiondata/src \
|
|
${ICU4J_DIR}/main/classes/translit/src \
|
|
"
|
|
|
|
SAMPLE_INPUT_DIR=${ICU4J_DIR}/samples/src/com/ibm/icu/samples
|
|
# Only generate sample files for code we know should compile on Android with the public APIs.
|
|
SAMPLE_INPUT_FILES="\
|
|
${SAMPLE_INPUT_DIR}/text/dateintervalformat/DateIntervalFormatSample.java \
|
|
${SAMPLE_INPUT_DIR}/text/datetimepatterngenerator/DateTimePatternGeneratorSample.java \
|
|
${SAMPLE_INPUT_DIR}/text/pluralformat/PluralFormatSample.java \
|
|
"
|
|
|
|
# See above for an explanation as to why the tests for charset and localespi are not included here.
|
|
TEST_INPUT_DIR=${ICU4J_DIR}/main/tests
|
|
TEST_INPUT_DIRS="\
|
|
${TEST_INPUT_DIR}/collate/src \
|
|
${TEST_INPUT_DIR}/framework/src \
|
|
${TEST_INPUT_DIR}/translit/src \
|
|
${TEST_INPUT_DIR}/core/src \
|
|
${TEST_INPUT_DIR}/packaging/src \
|
|
${ICU4J_DIR}/tools/misc/src/com/ibm/icu/dev/tool/locale"
|
|
|
|
# Allow override of the java runtime to avoid http://b/27775477
|
|
SRCGEN_JAVA_BINARY=${SRCGEN_JAVA_BINARY:-java}
|