OLD | NEW |
(Empty) | |
| 1 #!/bin/bash |
| 2 # Copyright (c) 2016 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. |
| 5 |
| 6 # This is used to prepare for a major version update of ICU (e.g. from |
| 7 # 54.1 to 56.1). Running this script is step 1 in README.chromium. |
| 8 |
| 9 if [ $# -lt 1 ]; |
| 10 then |
| 11 echo "Usage: $0 version (e.g. '56-1')" |
| 12 exit 1 |
| 13 fi |
| 14 |
| 15 version="$1" |
| 16 repoprefix="http://source.icu-project.org/repos/icu/icu/tags/release-" |
| 17 repo="${repoprefix}${version}" |
| 18 treeroot="$(dirname "$0")/.." |
| 19 |
| 20 # Check if the repo for $version is available. |
| 21 svn ls "${repo}" > /dev/null 2>&1 || \ |
| 22 { echo "${repo} does not exist."; exit 2; } |
| 23 |
| 24 echo "Cleaning up source/ ..." |
| 25 for file in source license.html readme.html APIChangeReport.html |
| 26 do |
| 27 rm -rf "${treeroot}/${file}" |
| 28 done |
| 29 |
| 30 echo "Download ${version} from the upstream repository ..." |
| 31 for file in source license.html readme.html APIChangeReport.html |
| 32 do |
| 33 svn export --native-eol LF "${repo}/${file}" "${treeroot}/${file}" |
| 34 done |
| 35 |
| 36 echo "deleting directories we don't care about ..." |
| 37 for d in layout layoutex data/xml |
| 38 do |
| 39 rm -rf "${treeroot}/source/${d}" |
| 40 done |
| 41 |
| 42 echo "restoring local data and configuration files ..." |
| 43 while read line |
| 44 do |
| 45 # $line is not quoted to expand "*html.ucm". |
| 46 git checkout -- "${treeroot}/source/data/"${line} |
| 47 done < "${treeroot}/scripts/data_files_to_preserve.txt" |
| 48 |
| 49 echo "Patching configure to work without source/layout(ex) directories ..." |
| 50 sed -i.orig -e '/^ac_config_files=/ s:\ layout\(ex\)\{0,1\}/Makefile::g' \ |
| 51 "${treeroot}/source/configure" |
| 52 rm -f "${treeroot}/source/configure.orig" |
| 53 |
| 54 echo "Done" |
OLD | NEW |