xref: /aosp_15_r20/external/icu/icu4j/releases_tools/shared.sh (revision 0e209d3975ff4a8c132096b14b0e9364a753506e)
1*0e209d39SAndroid Build Coastguard Worker#!/usr/bin/env bash
2*0e209d39SAndroid Build Coastguard Worker# Copyright (C) 2023 and later: Unicode, Inc. and others.
3*0e209d39SAndroid Build Coastguard Worker# License & terms of use: http://www.unicode.org/copyright.html
4*0e209d39SAndroid Build Coastguard Worker
5*0e209d39SAndroid Build Coastguard Workerexport MAVEN_ARGS='--no-transfer-progress'
6*0e209d39SAndroid Build Coastguard Worker
7*0e209d39SAndroid Build Coastguard Worker# Version update!
8*0e209d39SAndroid Build Coastguard Workerexport artifact_version='75.1'
9*0e209d39SAndroid Build Coastguard Workerexport github_rel_version='75_1'
10*0e209d39SAndroid Build Coastguard Workerexport api_report_version='75'
11*0e209d39SAndroid Build Coastguard Workerexport api_report_prev_version='74'
12*0e209d39SAndroid Build Coastguard Workerexport out_dir=target
13*0e209d39SAndroid Build Coastguard Worker
14*0e209d39SAndroid Build Coastguard Workerfunction checkThatJdk8IsDefault() {
15*0e209d39SAndroid Build Coastguard Worker  javac -version appPath 2>&1 | grep -E 'javac 1\.8\.' > /dev/null
16*0e209d39SAndroid Build Coastguard Worker  if [ $? -eq 0 ]; then
17*0e209d39SAndroid Build Coastguard Worker    echo "The default JDK is JDK 8, all good!"
18*0e209d39SAndroid Build Coastguard Worker    javac -version
19*0e209d39SAndroid Build Coastguard Worker  else
20*0e209d39SAndroid Build Coastguard Worker    echo "This step can only be executed with JDK 8!"
21*0e209d39SAndroid Build Coastguard Worker    echo "Make sure that you have the PATH pointing to a JDK 8!"
22*0e209d39SAndroid Build Coastguard Worker    javac -version
23*0e209d39SAndroid Build Coastguard Worker    exit
24*0e209d39SAndroid Build Coastguard Worker  fi
25*0e209d39SAndroid Build Coastguard Worker
26*0e209d39SAndroid Build Coastguard Worker}
27*0e209d39SAndroid Build Coastguard Worker
28*0e209d39SAndroid Build Coastguard Worker# Copy the icu artifacts from the local maven repo to the lib folder,
29*0e209d39SAndroid Build Coastguard Worker# so that we can use it as classpath.
30*0e209d39SAndroid Build Coastguard Workerfunction copyDependencyArtifacts() {
31*0e209d39SAndroid Build Coastguard Worker  rm   -fr ${out_dir}/lib/
32*0e209d39SAndroid Build Coastguard Worker  mkdir -p ${out_dir}/lib/
33*0e209d39SAndroid Build Coastguard Worker
34*0e209d39SAndroid Build Coastguard Worker  mvn dependency:copy -q -Dartifact=com.ibm.icu:core:${artifact_version}                   -DoutputDirectory=${out_dir}/lib/
35*0e209d39SAndroid Build Coastguard Worker  mvn dependency:copy -q -Dartifact=com.ibm.icu:collate:${artifact_version}                -DoutputDirectory=${out_dir}/lib/
36*0e209d39SAndroid Build Coastguard Worker  mvn dependency:copy -q -Dartifact=com.ibm.icu:icu4j-charset:${artifact_version}          -DoutputDirectory=${out_dir}/lib/
37*0e209d39SAndroid Build Coastguard Worker  mvn dependency:copy -q -Dartifact=com.ibm.icu:currdata:${artifact_version}               -DoutputDirectory=${out_dir}/lib/
38*0e209d39SAndroid Build Coastguard Worker  mvn dependency:copy -q -Dartifact=com.ibm.icu:langdata:${artifact_version}               -DoutputDirectory=${out_dir}/lib/
39*0e209d39SAndroid Build Coastguard Worker  mvn dependency:copy -q -Dartifact=com.ibm.icu:regiondata:${artifact_version}             -DoutputDirectory=${out_dir}/lib/
40*0e209d39SAndroid Build Coastguard Worker  mvn dependency:copy -q -Dartifact=com.ibm.icu:translit:${artifact_version}               -DoutputDirectory=${out_dir}/lib/
41*0e209d39SAndroid Build Coastguard Worker  mvn dependency:copy -q -Dartifact=com.ibm.icu:tools_build:${artifact_version}            -DoutputDirectory=${out_dir}/lib/
42*0e209d39SAndroid Build Coastguard Worker  mvn dependency:copy -q -Dartifact=com.ibm.icu:common_tests:${artifact_version}:jar:tests -DoutputDirectory=${out_dir}/lib/
43*0e209d39SAndroid Build Coastguard Worker
44*0e209d39SAndroid Build Coastguard Worker  export toolcp="${out_dir}/lib/*"
45*0e209d39SAndroid Build Coastguard Worker}
46*0e209d39SAndroid Build Coastguard Worker
47*0e209d39SAndroid Build Coastguard Workerfunction checkFileCreated() {
48*0e209d39SAndroid Build Coastguard Worker  local OUT_FILE=$1
49*0e209d39SAndroid Build Coastguard Worker  if [ -f "$OUT_FILE" ]; then
50*0e209d39SAndroid Build Coastguard Worker    echo "    Output file $OUT_FILE generated"
51*0e209d39SAndroid Build Coastguard Worker  else
52*0e209d39SAndroid Build Coastguard Worker    echo "    Error generating output file $OUT_FILE"
53*0e209d39SAndroid Build Coastguard Worker    exit
54*0e209d39SAndroid Build Coastguard Worker  fi
55*0e209d39SAndroid Build Coastguard Worker}
56*0e209d39SAndroid Build Coastguard Worker
57*0e209d39SAndroid Build Coastguard Workerfunction reportTitle() {
58*0e209d39SAndroid Build Coastguard Worker  echo ""
59*0e209d39SAndroid Build Coastguard Worker  echo "=============================================="
60*0e209d39SAndroid Build Coastguard Worker  echo $*
61*0e209d39SAndroid Build Coastguard Worker  echo "=============================================="
62*0e209d39SAndroid Build Coastguard Worker  echo ""
63*0e209d39SAndroid Build Coastguard Worker}
64