# Don't set -e here as egrep (used a few times) returns 1 if no matches
# were found.
-version=`git describe --tags --abbrev=0 | sed -e "s/v//"`
+# Use a tag if what we've built is exactly on one
+version=$(git describe --tags --abbrev=0 --match=v2.*.* --exact-match 2> /dev/null)
+if [ "$?" == "0" ]; then
+ version=$(echo $version | sed -e "s/^v//")
+else
+ # Otherwise use <branch>-<commit>
+ version="$(basename $(git name-rev --name-only HEAD))-$(git rev-parse --short HEAD)"
+fi
# DMG size in megabytes
DMG_SIZE=256
}
function copy_lib_env {
- for f in $ENV/$ARCH2/lib/$1*.dylib; do
- if [ -h $f ]; then
- ln -s $(readlink $f) "$2/`basename $f`"
- else
- if [ "$ARCH2" == "" ]; then
+ if [ "$ARCH2" == "" ]; then
+ for f in $ENV/$ARCH1/lib/$1*.dylib; do
+ if [ -h $f ]; then
+ ln -s $(readlink $f) "$2/`basename $f`"
+ else
cp $f "$2/`basename $f`"
+ fi
+ done
+ else
+ for f in $ENV/$ARCH2/lib/$1*.dylib; do
+ if [ -h $f ]; then
+ ln -s $(readlink $f) "$2/`basename $f`"
else
g=`echo $f | sed -e "s@/$ARCH2/@/$ARCH1/@g"`
mkdir -p "$2"
lipo -create $f $g -output "$2/$(basename $f)"
fi
- fi
- done
+ done
+ fi
to_relink="$to_relink|$1"
}
copy_lib_env libfribidi "$dest"
copy_lib_env libgio "$dest"
copy_lib_env libz "$dest"
+ copy_lib_env libdav1d "$dest"
}
# @param #1 directory to copy to
cp $prefix/src/dcpomatic/graphics/osx/dcpomatic2_playlist.icns "$dest"
cp $prefix/src/dcpomatic/graphics/osx/dcpomatic2_disk.icns "$dest"
cp $prefix/src/dcpomatic/graphics/osx/dcpomatic2_combiner.icns "$dest"
+ cp $prefix/src/dcpomatic/graphics/osx/dcpomatic2_editor.icns "$dest"
cp $prefix/src/dcpomatic/graphics/osx/preferences/defaults.png "$dest"
cp $prefix/src/dcpomatic/graphics/osx/preferences/defaults@2x.png "$dest"
cp $prefix/src/dcpomatic/graphics/osx/preferences/kdm_email.png "$dest"
cp $prefix/src/dcpomatic/graphics/no_tick.png "$dest"
cp -r $prefix/share/libdcp/xsd "$dest"
cp -r $prefix/share/libdcp/tags "$dest"
+ cp -r $prefix/share/libdcp/ratings "$dest"
# i18n: DCP-o-matic .mo files
for lang in de_DE es_ES fr_FR it_IT sv_SE nl_NL ru_RU pl_PL da_DK pt_PT pt_BR sk_SK cs_CZ uk_UA zh_CN tr_TR; do
for arch in $arch1_name $arch2_name; do
for obj in "${linkers[@]}"; do
- deps=`otool -arch $arch -L "$obj" | awk '{print $1}' | egrep "($to_relink)" | egrep "($ENV|$ROOT|boost|libicu|libssh)"`
+ deps=`otool -arch $arch -L "$obj" | awk '{print $1}' | egrep "($to_relink)" | egrep "($ENV|$ROOT|@rpath|boost|libicu|libssh)"`
changes=""
for dep in $deps; do
base=`basename $dep`
local pkg="$2"
local full_name="$3"
local exes="$4"
- tmp_dmg=dcpomatic_tmp.dmg
- dmg="$full_name $version.dmg"
+ tmp_dmg=dcpomatic_tmp.dmg
+ if [ "$ARCH2" == "" ]; then
+ dmg="$full_name $version macOS10.8+.dmg"
+ else
+ dmg="$full_name $version macOS10.10+.dmg"
+ fi
vol_name=DCP-o-matic-$version
find "$appdir/Contents/Frameworks" -iname "*.dylib" -type f -print0 | while IFS= read -r -d '' f; do
relink_relative "${rl[@]}"
make_dmg "$appdir" "" "DCP-o-matic Combiner" "dcpomatic2_verify openssl dcpomatic2_combiner"
+# DCP-o-matic Editor
+setup "DCP-o-matic 2 Editor.app"
+copy $ROOT src/dcpomatic/build/src/tools/dcpomatic2_editor "$approot/MacOS"
+copy $ROOT src/openssl/apps/openssl "$approot/MacOS"
+copy_verify
+cp $prefix/src/dcpomatic/build/platform/osx/dcpomatic2_editor.Info.plist "$approot/Info.plist"
+rl=("$approot/MacOS/dcpomatic2_editor" "$approot/Frameworks/"*.dylib)
+relink_relative "${rl[@]}"
+make_dmg "$appdir" "" "DCP-o-matic Editor" "dcpomatic2_verify openssl dcpomatic2_editor"
+
# DCP-o-matic Disk Writer .app
setup "DCP-o-matic 2 Disk Writer.app"
copy $ROOT src/dcpomatic/build/src/tools/dcpomatic2_disk "$approot/MacOS"