Files
fiv/macos-configure.sh
Přemysl Eric Janouch 690e60cd74
All checks were successful
Alpine 3.22 Success
Arch Linux Success
Arch Linux AUR Success
Debian Bookworm Success
Fedora 39 Success
OpenBSD 7.8 Success
openSUSE 15.5 Success
Build an application bundle on macOS
This is far from done, but nonetheless constitutes a big improvement.

macOS application bundles are more or less necessary for:
 - showing a nice icon;
 - having spawned off instances actually be brought to the foreground;
 - file associations (yet files currently do not open properly);
 - having a reasonable method of distribution.

Also resolving a bunch of minor issues:
 - The context menu had duplicate items,
   and might needlessly end up with (null) labels.
2025-11-11 19:28:45 +01:00

26 lines
1.0 KiB
Bash
Executable File

#!/bin/sh -e
# macos-configure.sh: set up a Homebrew-based macOS build
#
# Meson has no special support for macOS application bundles whatsoever.
#
# gtk-mac-bundler doesn't do anything particularly miraculous,
# and it doesn't directly support Homebrew.
#
# It would be cleaner and more reproducible to set up a special HOMEBREW_PREFIX,
# though right now we're happy to build an app bundle at all.
#
# It would also allow us to make a custom Little CMS build that includes
# the fast float plugin, which is a bit of a big deal.
# TODO: exiftool (Perl is part of macOS, at least for now)
HOMEBREW_NO_AUTO_UPDATE=1 HOMEBREW_ASK=1 brew install
coreutils meson pkgconf shared-mime-info adwaita-icon-theme \
gtk+3 jpeg-xl libavif libheif libraw librsvg little-cms2 webp
sourcedir=$(grealpath "${2:-$(dirname "$0")}")
builddir=$(grealpath "${1:-builddir}")
appdir=$builddir/fiv.app
meson setup --buildtype=debugoptimized --prefix="$appdir" \
--bindir=Contents/MacOS --libdir=Contents/Resources/lib \
--datadir=Contents/Resources/share "$builddir" "$sourcedir"