xref: /trunk/test/odf-validate/refresh-app.sh (revision 0e16a31d78a652c56c5c0fc79c752f48b9048df9) !
1#!/bin/zsh
2#**************************************************************
3#
4#  Licensed to the Apache Software Foundation (ASF) under one
5#  or more contributor license agreements.  See the NOTICE file
6#  distributed with this work for additional information
7#  regarding copyright ownership.  The ASF licenses this file
8#  to you under the Apache License, Version 2.0 (the
9#  "License"); you may not use this file except in compliance
10#  with the License.  You may obtain a copy of the License at
11#
12#    http://www.apache.org/licenses/LICENSE-2.0
13#
14#  Unless required by applicable law or agreed to in writing,
15#  software distributed under the License is distributed on an
16#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17#  KIND, either express or implied.  See the License for the
18#  specific language governing permissions and limitations
19#  under the License.
20#
21#**************************************************************
22# usage: refresh-app.sh <lib.dylib>... -- copy rebuilt libs from the solver into the app copy
23source ${0:A:h}/env.sh
24: ${SOLVER:?} ${APP:?}
25# overwriting a library an office has mapped makes macOS SIGKILL everything that later touches the file
26pgrep -f "$APP/MacOS/soffice" > /dev/null && { echo "refresh-app.sh: an office from $APP is still running; stop it first" >&2; exit 3; }
27rc=0
28for l in "$@"; do [[ -n $l && $l != */* ]] || { echo "bad lib name: $l"; exit 2; }; done
29for l in "$@"; do
30  /bin/cp -f $SOLVER/$l $APP/program/$l && cmp -s $SOLVER/$l $APP/program/$l && echo "updated $l ($(stat -f %Sm $SOLVER/$l))" || { echo "FAILED $l"; rc=1; }
31done
32exit $rc
33