xref: /aosp_15_r20/external/wuffs-mirror-release-c/script/sync.sh (revision 30889fd3ad667d11ca7a90e9af352e217875dd23)
1*30889fd3SAndroid Build Coastguard Worker#!/bin/bash -eu
2*30889fd3SAndroid Build Coastguard Worker# Copyright 2021 The Wuffs-Mirror-Release-C Authors.
3*30889fd3SAndroid Build Coastguard Worker#
4*30889fd3SAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
5*30889fd3SAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
6*30889fd3SAndroid Build Coastguard Worker# You may obtain a copy of the License at
7*30889fd3SAndroid Build Coastguard Worker#
8*30889fd3SAndroid Build Coastguard Worker#    https://www.apache.org/licenses/LICENSE-2.0
9*30889fd3SAndroid Build Coastguard Worker#
10*30889fd3SAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
11*30889fd3SAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
12*30889fd3SAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*30889fd3SAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
14*30889fd3SAndroid Build Coastguard Worker# limitations under the License.
15*30889fd3SAndroid Build Coastguard Worker
16*30889fd3SAndroid Build Coastguard Worker# ----------------
17*30889fd3SAndroid Build Coastguard Worker
18*30889fd3SAndroid Build Coastguard Worker# This script synchronizes this repository's release/c directory with the
19*30889fd3SAndroid Build Coastguard Worker# upstream one, assumed to be "../wuffs/release/c", and updates "sync.txt".
20*30889fd3SAndroid Build Coastguard Worker#
21*30889fd3SAndroid Build Coastguard Worker# It does not ensure that ../wuffs is synchronized to the latest version (at
22*30889fd3SAndroid Build Coastguard Worker# https://github.com/google/wuffs). That is a separate responsibility.
23*30889fd3SAndroid Build Coastguard Worker
24*30889fd3SAndroid Build Coastguard Workerecho -n "script/sync.sh ran on " > sync.txt
25*30889fd3SAndroid Build Coastguard Workerdate --iso-8601 >> sync.txt
26*30889fd3SAndroid Build Coastguard Workerecho -n "Sibling directory (../wuffs) git revision is " >> sync.txt
27*30889fd3SAndroid Build Coastguard Workercd ../wuffs
28*30889fd3SAndroid Build Coastguard Workergit rev-parse HEAD >> ../wuffs-mirror-release-c/sync.txt
29*30889fd3SAndroid Build Coastguard Workercd ../wuffs-mirror-release-c
30*30889fd3SAndroid Build Coastguard Workerecho "Manifest (sha256sum values, filenames, versions):" >> sync.txt
31*30889fd3SAndroid Build Coastguard Worker
32*30889fd3SAndroid Build Coastguard Workerfor f in ../wuffs/release/c/*; do
33*30889fd3SAndroid Build Coastguard Worker  f=${f##*/}
34*30889fd3SAndroid Build Coastguard Worker
35*30889fd3SAndroid Build Coastguard Worker  # Skip the unsupported snapshot.
36*30889fd3SAndroid Build Coastguard Worker  if [ $f = "wuffs-unsupported-snapshot.c" ]; then
37*30889fd3SAndroid Build Coastguard Worker    continue
38*30889fd3SAndroid Build Coastguard Worker  fi
39*30889fd3SAndroid Build Coastguard Worker
40*30889fd3SAndroid Build Coastguard Worker  cp ../wuffs/release/c/$f release/c
41*30889fd3SAndroid Build Coastguard Worker  sha256sum release/c/$f >> sync.txt
42*30889fd3SAndroid Build Coastguard Worker  set +e
43*30889fd3SAndroid Build Coastguard Worker  VER=$(grep "^#define WUFFS_VERSION_STRING " release/c/$f)
44*30889fd3SAndroid Build Coastguard Worker  set -e
45*30889fd3SAndroid Build Coastguard Worker  if [ -n "$VER" ]; then
46*30889fd3SAndroid Build Coastguard Worker    echo "    $VER" >> sync.txt
47*30889fd3SAndroid Build Coastguard Worker  fi
48*30889fd3SAndroid Build Coastguard Workerdone
49