mirror of
https://github.com/digital-asset/daml.git
synced 2024-09-20 09:17:43 +03:00
e40aad897f
* move most files * update CI configuration
48 lines
1.1 KiB
Bash
48 lines
1.1 KiB
Bash
#!/usr/bin/env bash
|
|
# Copyright (c) 2024 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved.
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
is_windows() {
|
|
case "$OSTYPE" in
|
|
win*) return 0;;
|
|
msys*) return 0;;
|
|
cygwin*) return 0;;
|
|
*) return 1;;
|
|
esac
|
|
}
|
|
|
|
path_list_separtor() {
|
|
# Use ':' even on Windows because msys2 will automatically convert such
|
|
# path lists to the Windows format, using ';' as separator and 'C:\'
|
|
# syntax. Be sure that absolute paths use the format '/c/...' instead of
|
|
# 'C:\...'. See https://www.msys2.org/docs/filesystem-paths/.
|
|
if is_windows; then
|
|
echo ":"
|
|
else
|
|
echo ":"
|
|
fi
|
|
}
|
|
|
|
make_absolute() {
|
|
local P="$1"
|
|
case "$P" in
|
|
/*|[a-zA-Z]:/*|[a-zA-Z]:\\*) echo "$P";;
|
|
*) echo "$PWD/$P";;
|
|
esac
|
|
}
|
|
|
|
make_all_absolute() {
|
|
local IN="$1" ARR P OUT=""
|
|
local SEP="$(path_list_separtor)"
|
|
IFS="$SEP" read -ra ARR <<<"$IN"
|
|
for P in "${ARR[@]}"; do
|
|
OUT="$OUT$(make_absolute "$P")$SEP"
|
|
done
|
|
echo "${OUT%$SEP}"
|
|
}
|
|
|
|
abs_dirname() {
|
|
local IN="$1"
|
|
echo "$(make_absolute "$(dirname "$IN")")"
|
|
}
|