Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Add files for standalone icon on mac/win; install meson on CI
Signed-off-by: falkTX <falktx@falktx.com>
  • Loading branch information
falkTX committed Jun 18, 2023
1 parent 9daee99 commit dc8bc80
Show file tree
Hide file tree
Showing 8 changed files with 64 additions and 11 deletions.
19 changes: 10 additions & 9 deletions .github/workflows/build.yml
Expand Up @@ -4,8 +4,6 @@ on: [push, pull_request]

env:
CACHE_VERSION: 7
DEBIAN_FRONTEND: noninteractive
HOMEBREW_NO_AUTO_UPDATE: 1
PAWPAW_SKIP_LTO: 1
PAWPAW_SKIP_FFTW: 1
PAWPAW_SKIP_GLIB: 1
Expand Down Expand Up @@ -44,7 +42,7 @@ jobs:
echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports focal-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-arm64.list
echo "deb [arch=arm64] http://ports.ubuntu.com/ubuntu-ports focal-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-arm64.list
sudo apt-get update -qq
sudo apt-get install -yqq g++-aarch64-linux-gnu libasound2-dev:arm64 libdbus-1-dev:arm64 libgl1-mesa-dev:arm64 libglib2.0-dev:arm64 libx11-dev:arm64 libxcursor-dev:arm64 libxext-dev:arm64 libxrandr-dev:arm64 gperf qemu-user-static
sudo apt-get install -yqq g++-aarch64-linux-gnu libasound2-dev:arm64 libdbus-1-dev:arm64 libgl1-mesa-dev:arm64 libglib2.0-dev:arm64 libx11-dev:arm64 libxcursor-dev:arm64 libxext-dev:arm64 libxrandr-dev:arm64 gperf meson qemu-user-static
- name: Set up dependencies (armhf)
if: ${{ matrix.target == 'armhf' }}
run: |
Expand All @@ -54,13 +52,13 @@ jobs:
echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports focal-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-armhf.list
echo "deb [arch=armhf] http://ports.ubuntu.com/ubuntu-ports focal-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-armhf.list
sudo apt-get update -qq
sudo apt-get install -yqq g++-arm-linux-gnueabihf libasound2-dev:armhf libdbus-1-dev:armhf libgl1-mesa-dev:armhf libglib2.0-dev:armhf libx11-dev:armhf libxcursor-dev:armhf libxext-dev:armhf libxrandr-dev:armhf gperf qemu-user-static
sudo apt-get install -yqq g++-arm-linux-gnueabihf libasound2-dev:armhf libdbus-1-dev:armhf libgl1-mesa-dev:armhf libglib2.0-dev:armhf libx11-dev:armhf libxcursor-dev:armhf libxext-dev:armhf libxrandr-dev:armhf gperf meson qemu-user-static
- name: Set up dependencies (i386)
if: ${{ matrix.target == 'i386' }}
run: |
sudo dpkg --add-architecture i386
sudo apt-get update -qq
sudo apt-get install -yqq g++-i686-linux-gnu libasound2-dev:i386 libdbus-1-dev:i386 libgl1-mesa-dev:i386 libglib2.0-dev:i386 libx11-dev:i386 libxcursor-dev:i386 libxext-dev:i386 libxrandr-dev:i386 gperf
sudo apt-get install -yqq g++-i686-linux-gnu libasound2-dev:i386 libdbus-1-dev:i386 libgl1-mesa-dev:i386 libglib2.0-dev:i386 libx11-dev:i386 libxcursor-dev:i386 libxext-dev:i386 libxrandr-dev:i386 gperf meson
sudo apt-get install -yqq binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 libwine-dev:i386 wine-stable wine64-tools
- name: Set up dependencies (riscv64)
if: ${{ matrix.target == 'riscv64' }}
Expand All @@ -71,13 +69,13 @@ jobs:
echo "deb [arch=riscv64] http://ports.ubuntu.com/ubuntu-ports focal-updates main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-riscv64.list
echo "deb [arch=riscv64] http://ports.ubuntu.com/ubuntu-ports focal-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list.d/ports-riscv64.list
sudo apt-get update -qq
sudo apt-get install -yqq g++-riscv64-linux-gnu libasound2-dev:riscv64 libdbus-1-dev:riscv64 libgl1-mesa-dev:riscv64 libglapi-mesa:riscv64 libglvnd0:riscv64 libglib2.0-dev:riscv64 libx11-dev:riscv64 libxcursor-dev:riscv64 libxext-dev:riscv64 libxrandr-dev:riscv64 gperf qemu-user-static
sudo apt-get install -yqq g++-riscv64-linux-gnu libasound2-dev:riscv64 libdbus-1-dev:riscv64 libgl1-mesa-dev:riscv64 libglapi-mesa:riscv64 libglvnd0:riscv64 libglib2.0-dev:riscv64 libx11-dev:riscv64 libxcursor-dev:riscv64 libxext-dev:riscv64 libxrandr-dev:riscv64 gperf meson qemu-user-static
- name: Set up dependencies (x86_64)
if: ${{ matrix.target == 'x86_64' }}
run: |
sudo dpkg --add-architecture i386
sudo apt-get update -qq
sudo apt-get install -yqq libasound2-dev libdbus-1-dev libgl1-mesa-dev libglib2.0-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev gperf
sudo apt-get install -yqq libasound2-dev libdbus-1-dev libgl1-mesa-dev libglib2.0-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev gperf meson
sudo apt-get install -yqq g++-multilib libx11-dev:i386
sudo apt-get install -yqq binutils-mingw-w64-i686 binutils-mingw-w64-x86-64 g++-mingw-w64-i686 g++-mingw-w64-x86-64 mingw-w64 wine-stable wine64-tools
- name: Build extra dependencies
Expand Down Expand Up @@ -125,6 +123,9 @@ jobs:
path: |
~/PawPawBuilds
key: macos-${{ matrix.target }}-v${{ env.CACHE_VERSION }}
- name: Set up dependencies
run: |
brew install meson
- name: Build extra dependencies
run: |
git clone --depth=1 https://github.com/DISTRHO/PawPaw.git
Expand Down Expand Up @@ -174,11 +175,11 @@ jobs:
- name: Set up dependencies (win32)
if: ${{ matrix.target == 'win32' }}
run: |
sudo apt-get install -yqq --allow-downgrades binutils-mingw-w64-i686 libc6:i386 libgcc-s1:i386 libstdc++6:i386 g++-mingw-w64-i686 gperf mingw-w64 wine-stable
sudo apt-get install -yqq --allow-downgrades binutils-mingw-w64-i686 libc6:i386 libgcc-s1:i386 libstdc++6:i386 g++-mingw-w64-i686 gperf meson mingw-w64 wine-stable
- name: Set up dependencies (win64)
if: ${{ matrix.target == 'win64' }}
run: |
sudo apt-get install -yqq --allow-downgrades binutils-mingw-w64-x86-64 libc6:i386 libgcc-s1:i386 libstdc++6:i386 g++-mingw-w64-x86-64 gperf mingw-w64 wine-stable
sudo apt-get install -yqq --allow-downgrades binutils-mingw-w64-x86-64 libc6:i386 libgcc-s1:i386 libstdc++6:i386 g++-mingw-w64-x86-64 gperf meson mingw-w64 wine-stable
- name: Build extra dependencies
run: |
git clone --depth=1 https://github.com/DISTRHO/PawPaw.git
Expand Down
1 change: 1 addition & 0 deletions .gitignore
@@ -1,3 +1,4 @@
/bin/
/build/
.kdev4/
.DS_Store
4 changes: 4 additions & 0 deletions plugins/Common/Makefile.mk
Expand Up @@ -33,6 +33,10 @@ FILES_UI = \
../Common/PluginHostWindow.cpp \
../../dpf-widgets/opengl/DearImGui.cpp

ifeq ($(STANDALONE)$(WINDOWS),truetrue)
FILES_UI += distrho.rc
endif

# ---------------------------------------------------------------------------------------------------------------------
# Carla stuff

Expand Down
29 changes: 27 additions & 2 deletions plugins/Standalone/Makefile
Expand Up @@ -4,13 +4,38 @@
# Created by falkTX
#

# --------------------------------------------------------------
# ---------------------------------------------------------------------------------------------------------------------
# Project name, used for binaries

NAME = Ildaeil

# --------------------------------------------------------------
# ---------------------------------------------------------------------------------------------------------------------
# Do some magic

STANDALONE = true
include ../Common/Makefile.mk

# ---------------------------------------------------------------------------------------------------------------------
# Extra rules for macOS app bundle

$(TARGET_DIR)/Ildaeil.app/Contents/Info.plist: macOS/Info.plist $(TARGET_DIR)/Ildaeil.app/Contents/Resources/distrho.icns
-@mkdir -p $(shell dirname $@)
cp $< $@

$(TARGET_DIR)/Ildaeil.app/Contents/Resources/distrho.icns: macOS/distrho.icns
-@mkdir -p $(shell dirname $@)
cp $< $@

# ---------------------------------------------------------------------------------------------------------------------
# Extra rules for Windows icon

ifeq ($(WINDOWS),true)
WINDRES ?= $(subst gcc,windres,$(CC))

$(BUILD_DIR)/distrho.rc.o: win32/distrho.rc win32/distrho.ico
-@mkdir -p "$(shell dirname $(BUILD_DIR)/$<)"
@echo "Compiling distrho.rc"
$(SILENT)$(WINDRES) $< -O coff -o $@
endif

# ---------------------------------------------------------------------------------------------------------------------
20 changes: 20 additions & 0 deletions plugins/Standalone/macOS/Info.plist
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>Ildaeil</string>
<key>CFBundleIconFile</key>
<string>distrho.icns</string>
<key>CFBundleIdentifier</key>
<string>Ildaeil</string>
<key>NSHighResolutionCapable</key>
<true/>
<key>NSRequiresAquaSystemAppearance</key>
<false/>
<key>NSMicrophoneUsageDescription</key>
<string>Ildaeil requires microphone permissions for audio input.</string>
</dict>
</plist>
Binary file added plugins/Standalone/macOS/distrho.icns
Binary file not shown.
Binary file added plugins/Standalone/win32/distrho.ico
Binary file not shown.
2 changes: 2 additions & 0 deletions plugins/Standalone/win32/distrho.rc
@@ -0,0 +1,2 @@
id ICON "distrho.ico"
401 ICON "distrho.ico"

0 comments on commit dc8bc80

Please sign in to comment.