summaryrefslogtreecommitdiffstats
path: root/intl/icu/source/config/dist-data.sh
diff options
context:
space:
mode:
Diffstat (limited to 'intl/icu/source/config/dist-data.sh')
-rwxr-xr-xintl/icu/source/config/dist-data.sh110
1 files changed, 110 insertions, 0 deletions
diff --git a/intl/icu/source/config/dist-data.sh b/intl/icu/source/config/dist-data.sh
new file mode 100755
index 0000000000..9406ebb3a6
--- /dev/null
+++ b/intl/icu/source/config/dist-data.sh
@@ -0,0 +1,110 @@
+#!/bin/bash
+# Copyright (C) 2020 and later: Unicode, Inc. and others.
+
+# set VERSION to the ICU version. set top_srcdir to the parent of icurc
+# Note: You need to set LD_LIBRARY_PATH/etc before calling this script.
+export LD_LIBRARY_PATH=./lib:${LD_LIBRARY_PATH-/lib:/usr/lib:/usr/local/lib}
+export DYLD_LIBRARY_PATH=./lib:${DYLD_LIBRARY_PATH-/lib:/usr/lib:/usr/local/lib}
+
+if [ ! -d "${top_srcdir}" ]
+then
+ echo >&2 "$0: please set 'top_srcdir' to the icu/icu4c/source dir"
+ exit 1
+fi
+LICENSE=${LICENSE-${top_srcdir}/../LICENSE}
+
+if [ ! -f "${LICENSE}" ]
+then
+ echo >&2 "$0: could not load license file ${LICENSE}"
+ exit 1
+fi
+
+DATFILE=${DATFILE-$(ls data/out/tmp/icudt*.dat| head -1)}
+
+if [ ! -f "${DATFILE}" ]
+then
+ echo >&2 "$0: could not find DATFILE ${DATFILE}"
+ exit 1
+fi
+
+# Short (major) version, i.e. 70
+VERS=$(echo ${DATFILE} | tr -d a-z/.)
+# Version number, i.e. 70.1
+VERSION=${VERSION-unknown}
+# Version number for files, i.e. 70_1
+VERSION_FILE=$(echo ${VERSION} | tr . _)
+
+if [[ "${VERSION}" = "unknown" ]];
+then
+ VERSION=${VERS}.0
+ echo "$0: VERSION not set, using ${VERSION}"
+else
+ if [[ "${VERS}" != $(echo ${VERSION} | cut -d. -f1) ]]
+ then
+ echo >&2 "$0: Warning: Expected version ${VERSION} to start with ${VERS}..."
+ fi
+fi
+
+# yeah, override ENDIANS if you want a different flavor.
+#ENDIANS="b l e"
+ENDIANS=${ENDIANS-"b l"}
+DISTY_DIR=${DISTY_DIR-./dist/}
+
+if [ ! -x ./bin/icupkg ]
+then
+ echo >&2 "$0: could not find executable ./bin/icupkg"
+ exit 1
+fi
+
+echo "# Packing ${DATFILE} into data zips in dist/ for version ${VERSION}"
+mkdir -p ${DISTY_DIR}/tmp
+
+for endian in $ENDIANS;
+do
+ base=icu4c-${VERSION_FILE}-data-bin-${endian}.zip
+ filename=icudt${VERS}${endian}.dat
+ if [ -f ${DISTY_DIR}/${base} ];
+ then
+ echo ${DISTY_DIR}/${base} exists, skipping
+ continue
+ fi
+ rm -f ${DISTY_DIR}/tmp/${filename}
+ echo ./bin/icupkg -t${endian} ${DATFILE} ${DISTY_DIR}/tmp/${filename}
+ ./bin/icupkg -t${endian} ${DATFILE} ${DISTY_DIR}/tmp/${filename}
+ README=icu4c-${VERSION_FILE}-data-bin-${endian}-README.md
+ cat >> ${DISTY_DIR}/tmp/${README} <<EOF
+# ICU Data Zip for ${VERSION}
+
+For information on Unicode ICU, see [http://icu-project.org](http://icu-project.org)
+
+## Contents
+
+This .zip file contains:
+
+- this README
+- [LICENSE](./LICENSE)
+- ${filename}
+
+## How to use this file
+
+This file contains prebuilt data in form **${endian}**.
+("l" for Little Endian, "b" for Big Endian, "e" for EBCDIC.)
+It may be used to simplify build and installation of ICU.
+See [http://icu-project.org](http://icu-project.org) for further information.
+
+## License
+
+See [LICENSE](./LICENSE).
+
+> Copyright © 2016 and later Unicode, Inc. and others. All Rights Reserved.
+Unicode and the Unicode Logo are registered trademarks
+of Unicode, Inc. in the U.S. and other countries.
+[Terms of Use and License](http://www.unicode.org/copyright.html)
+
+EOF
+ zip -v -j ${DISTY_DIR}/${base} \
+ ${LICENSE} \
+ ${DISTY_DIR}/tmp/${README} \
+ ${DISTY_DIR}/tmp/${filename}
+ ls -lh ${DISTY_DIR}/${base}
+done