mirror of
https://github.com/stenzek/duckstation.git
synced 2024-11-23 05:49:43 +00:00
CI/Flatpak: Switch from JSON -> YAML
Actually lets me have comments...
This commit is contained in:
parent
0517aef5bd
commit
cabba81a76
6
.github/workflows/rolling-release.yml
vendored
6
.github/workflows/rolling-release.yml
vendored
@ -295,14 +295,14 @@ jobs:
|
||||
run: flatpak-builder-lint appstream scripts/flatpak/org.duckstation.DuckStation.metainfo.xml
|
||||
|
||||
- name: Validate manifest
|
||||
run: flatpak-builder-lint manifest scripts/flatpak/org.duckstation.DuckStation.json
|
||||
run: flatpak-builder-lint manifest scripts/flatpak/org.duckstation.DuckStation.yaml
|
||||
|
||||
- name: Build Flatpak
|
||||
uses: flathub-infra/flatpak-github-actions/flatpak-builder@23796715b3dfa4c86ddf50cf29c3cc8b3c82dca8
|
||||
with:
|
||||
bundle: duckstation-x64.flatpak
|
||||
upload-artifact: false
|
||||
manifest-path: scripts/flatpak/org.duckstation.DuckStation.json
|
||||
manifest-path: scripts/flatpak/org.duckstation.DuckStation.yaml
|
||||
arch: x86_64
|
||||
build-bundle: true
|
||||
verbose: true
|
||||
@ -310,7 +310,7 @@ jobs:
|
||||
branch: stable
|
||||
cache: true
|
||||
restore-cache: true
|
||||
cache-key: flatpak-x64-${{ hashFiles('scripts/flatpak/**/*.json') }}
|
||||
cache-key: flatpak-x64-${{ hashFiles('scripts/flatpak/**/*.yaml') }}
|
||||
|
||||
- name: Push to Flathub stable
|
||||
if: github.ref == 'refs/heads/dev'
|
||||
|
@ -1,30 +0,0 @@
|
||||
{
|
||||
"name": "sdl2",
|
||||
"buildsystem": "cmake-ninja",
|
||||
"builddir": true,
|
||||
"config-opts": [
|
||||
"-DBUILD_SHARED_LIBS=ON",
|
||||
"-DSDL_SHARED=ON",
|
||||
"-DSDL_STATIC=OFF",
|
||||
"-DSDL_TESTS=OFF"
|
||||
],
|
||||
"build-options": {
|
||||
"strip": true
|
||||
},
|
||||
"sources": [
|
||||
{
|
||||
"type": "archive",
|
||||
"url": "https://github.com/libsdl-org/SDL/releases/download/release-2.30.6/SDL2-2.30.6.tar.gz",
|
||||
"sha256": "c6ef64ca18a19d13df6eb22df9aff19fb0db65610a74cc81dae33a82235cacd4"
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
"/bin",
|
||||
"/include",
|
||||
"/lib/*.a",
|
||||
"/lib/*.la",
|
||||
"/lib/cmake",
|
||||
"/lib/pkgconfig",
|
||||
"/share/aclocal"
|
||||
]
|
||||
}
|
23
scripts/flatpak/modules/20-sdl2.yaml
Normal file
23
scripts/flatpak/modules/20-sdl2.yaml
Normal file
@ -0,0 +1,23 @@
|
||||
name: sdl2
|
||||
buildsystem: cmake-ninja
|
||||
builddir: true
|
||||
config-opts:
|
||||
- "-DCMAKE_BUILD_TYPE=Release"
|
||||
- "-DBUILD_SHARED_LIBS=ON"
|
||||
- "-DSDL_SHARED=ON"
|
||||
- "-DSDL_STATIC=OFF"
|
||||
- "-DSDL_TESTS=OFF"
|
||||
build-options:
|
||||
strip: true
|
||||
sources:
|
||||
- type: archive
|
||||
url: "https://github.com/libsdl-org/SDL/releases/download/release-2.30.6/SDL2-2.30.6.tar.gz"
|
||||
sha256: "c6ef64ca18a19d13df6eb22df9aff19fb0db65610a74cc81dae33a82235cacd4"
|
||||
cleanup:
|
||||
- /bin
|
||||
- /include
|
||||
- /lib/*.a
|
||||
- /lib/*.la
|
||||
- /lib/cmake
|
||||
- /lib/pkgconfig
|
||||
- /share/aclocal
|
@ -1,21 +0,0 @@
|
||||
{
|
||||
"name": "libbacktrace",
|
||||
"buildsystem": "autotools",
|
||||
"no-autogen": true,
|
||||
"build-options": {
|
||||
"strip": false,
|
||||
"no-debuginfo": true
|
||||
},
|
||||
"sources": [
|
||||
{
|
||||
"type": "git",
|
||||
"url": "https://github.com/ianlancetaylor/libbacktrace.git",
|
||||
"commit": "ad106d5fdd5d960bd33fae1c48a351af567fd075"
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
"/include",
|
||||
"/lib/*.a",
|
||||
"/lib/*.la"
|
||||
]
|
||||
}
|
14
scripts/flatpak/modules/21-libbacktrace.yaml
Normal file
14
scripts/flatpak/modules/21-libbacktrace.yaml
Normal file
@ -0,0 +1,14 @@
|
||||
name: libbacktrace
|
||||
buildsystem: autotools
|
||||
no-autogen: true
|
||||
build-options:
|
||||
strip: false
|
||||
no-debuginfo: true
|
||||
sources:
|
||||
- type: git
|
||||
url: "https://github.com/ianlancetaylor/libbacktrace.git"
|
||||
commit: "ad106d5fdd5d960bd33fae1c48a351af567fd075"
|
||||
cleanup:
|
||||
- /include
|
||||
- /lib/*.a
|
||||
- /lib/*.la
|
@ -1,29 +0,0 @@
|
||||
{
|
||||
"name": "shaderc",
|
||||
"buildsystem": "cmake-ninja",
|
||||
"builddir": true,
|
||||
"config-opts": [
|
||||
"-DCMAKE_BUILD_TYPE=Release",
|
||||
"-DSHADERC_SKIP_TESTS=ON",
|
||||
"-DSHADERC_SKIP_EXAMPLES=ON",
|
||||
"-DSHADERC_SKIP_COPYRIGHT_CHECK=ON"
|
||||
],
|
||||
"build-options": {
|
||||
"strip": true
|
||||
},
|
||||
"sources": [
|
||||
{
|
||||
"type": "git",
|
||||
"url": "https://github.com/stenzek/shaderc.git",
|
||||
"commit": "feb2460bf3a504d67011246edeb810c45ea58826"
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
"/bin",
|
||||
"/include",
|
||||
"/lib/*.a",
|
||||
"/lib/*.la",
|
||||
"/lib/cmake",
|
||||
"/lib/pkgconfig"
|
||||
]
|
||||
}
|
21
scripts/flatpak/modules/22-shaderc.yaml
Normal file
21
scripts/flatpak/modules/22-shaderc.yaml
Normal file
@ -0,0 +1,21 @@
|
||||
name: shaderc
|
||||
buildsystem: cmake-ninja
|
||||
builddir: true
|
||||
config-opts:
|
||||
- "-DCMAKE_BUILD_TYPE=Release"
|
||||
- "-DSHADERC_SKIP_TESTS=ON"
|
||||
- "-DSHADERC_SKIP_EXAMPLES=ON"
|
||||
- "-DSHADERC_SKIP_COPYRIGHT_CHECK=ON"
|
||||
build-options:
|
||||
strip: true
|
||||
sources:
|
||||
- type: git
|
||||
url: "https://github.com/stenzek/shaderc.git"
|
||||
commit: "feb2460bf3a504d67011246edeb810c45ea58826"
|
||||
cleanup:
|
||||
- /bin
|
||||
- /include
|
||||
- /lib/*.a
|
||||
- /lib/*.la
|
||||
- /lib/cmake
|
||||
- /lib/pkgconfig
|
@ -1,39 +0,0 @@
|
||||
{
|
||||
"name": "spirv-cross",
|
||||
"buildsystem": "cmake-ninja",
|
||||
"builddir": true,
|
||||
"config-opts": [
|
||||
"-DCMAKE_BUILD_TYPE=Release",
|
||||
"-DSPIRV_CROSS_SHARED=ON",
|
||||
"-DSPIRV_CROSS_STATIC=OFF",
|
||||
"-DSPIRV_CROSS_CLI=OFF",
|
||||
"-DSPIRV_CROSS_ENABLE_TESTS=OFF",
|
||||
"-DSPIRV_CROSS_ENABLE_GLSL=ON",
|
||||
"-DSPIRV_CROSS_ENABLE_HLSL=OFF",
|
||||
"-DSPIRV_CROSS_ENABLE_MSL=OFF",
|
||||
"-DSPIRV_CROSS_ENABLE_CPP=OFF",
|
||||
"-DSPIRV_CROSS_ENABLE_REFLECT=OFF",
|
||||
"-DSPIRV_CROSS_ENABLE_C_API=ON",
|
||||
"-DSPIRV_CROSS_ENABLE_UTIL=ON"
|
||||
],
|
||||
"build-options": {
|
||||
"strip": true
|
||||
},
|
||||
"sources": [
|
||||
{
|
||||
"type": "git",
|
||||
"url": "https://github.com/KhronosGroup/SPIRV-Cross.git",
|
||||
"tag": "vulkan-sdk-1.3.290.0",
|
||||
"commit": "5d127b917f080c6f052553c47170ec0ba702e54f"
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
"/bin",
|
||||
"/include",
|
||||
"/lib/*.a",
|
||||
"/lib/*.la",
|
||||
"/lib/cmake",
|
||||
"/lib/pkgconfig",
|
||||
"/share"
|
||||
]
|
||||
}
|
31
scripts/flatpak/modules/23-spirv-cross.yaml
Normal file
31
scripts/flatpak/modules/23-spirv-cross.yaml
Normal file
@ -0,0 +1,31 @@
|
||||
name: spirv-cross
|
||||
buildsystem: cmake-ninja
|
||||
builddir: true
|
||||
config-opts:
|
||||
- "-DCMAKE_BUILD_TYPE=Release"
|
||||
- "-DSPIRV_CROSS_SHARED=ON"
|
||||
- "-DSPIRV_CROSS_STATIC=OFF"
|
||||
- "-DSPIRV_CROSS_CLI=OFF"
|
||||
- "-DSPIRV_CROSS_ENABLE_TESTS=OFF"
|
||||
- "-DSPIRV_CROSS_ENABLE_GLSL=ON"
|
||||
- "-DSPIRV_CROSS_ENABLE_HLSL=OFF"
|
||||
- "-DSPIRV_CROSS_ENABLE_MSL=OFF"
|
||||
- "-DSPIRV_CROSS_ENABLE_CPP=OFF"
|
||||
- "-DSPIRV_CROSS_ENABLE_REFLECT=OFF"
|
||||
- "-DSPIRV_CROSS_ENABLE_C_API=ON"
|
||||
- "-DSPIRV_CROSS_ENABLE_UTIL=ON"
|
||||
build-options:
|
||||
strip: true
|
||||
sources:
|
||||
- type: git
|
||||
url: "https://github.com/KhronosGroup/SPIRV-Cross.git"
|
||||
tag: "vulkan-sdk-1.3.290.0"
|
||||
commit: "5d127b917f080c6f052553c47170ec0ba702e54f"
|
||||
cleanup:
|
||||
- /bin
|
||||
- /include
|
||||
- /lib/*.a
|
||||
- /lib/*.la
|
||||
- /lib/cmake
|
||||
- /lib/pkgconfig
|
||||
- /share
|
@ -1,36 +0,0 @@
|
||||
{
|
||||
"name": "cpuinfo",
|
||||
"buildsystem": "cmake-ninja",
|
||||
"builddir": true,
|
||||
"config-opts": [
|
||||
"-DCMAKE_BUILD_TYPE=Release",
|
||||
"-DCPUINFO_LIBRARY_TYPE=shared",
|
||||
"-DCPUINFO_RUNTIME_TYPE=shared",
|
||||
"-DCPUINFO_LOG_LEVEL=error",
|
||||
"-DCPUINFO_LOG_TO_STDIO=ON",
|
||||
"-DCPUINFO_BUILD_TOOLS=OFF",
|
||||
"-DCPUINFO_BUILD_UNIT_TESTS=OFF",
|
||||
"-DCPUINFO_BUILD_MOCK_TESTS=OFF",
|
||||
"-DCPUINFO_BUILD_BENCHMARKS=OFF",
|
||||
"-DUSE_SYSTEM_LIBS=ON"
|
||||
],
|
||||
"build-options": {
|
||||
"strip": true
|
||||
},
|
||||
"sources": [
|
||||
{
|
||||
"type": "git",
|
||||
"url": "https://github.com/stenzek/cpuinfo.git",
|
||||
"commit": "7524ad504fdcfcf75a18a133da6abd75c5d48053"
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
"/bin",
|
||||
"/include",
|
||||
"/lib/*.a",
|
||||
"/lib/*.la",
|
||||
"/lib/cmake",
|
||||
"/lib/pkgconfig",
|
||||
"/share"
|
||||
]
|
||||
}
|
28
scripts/flatpak/modules/24-cpuinfo.yaml
Normal file
28
scripts/flatpak/modules/24-cpuinfo.yaml
Normal file
@ -0,0 +1,28 @@
|
||||
name: cpuinfo
|
||||
buildsystem: cmake-ninja
|
||||
builddir: true
|
||||
config-opts:
|
||||
- "-DCMAKE_BUILD_TYPE=Release"
|
||||
- "-DCPUINFO_LIBRARY_TYPE=shared"
|
||||
- "-DCPUINFO_RUNTIME_TYPE=shared"
|
||||
- "-DCPUINFO_LOG_LEVEL=error"
|
||||
- "-DCPUINFO_LOG_TO_STDIO=ON"
|
||||
- "-DCPUINFO_BUILD_TOOLS=OFF"
|
||||
- "-DCPUINFO_BUILD_UNIT_TESTS=OFF"
|
||||
- "-DCPUINFO_BUILD_MOCK_TESTS=OFF"
|
||||
- "-DCPUINFO_BUILD_BENCHMARKS=OFF"
|
||||
- "-DUSE_SYSTEM_LIBS=ON"
|
||||
build-options:
|
||||
strip: true
|
||||
sources:
|
||||
- type: git
|
||||
url: "https://github.com/stenzek/cpuinfo.git"
|
||||
commit: "7524ad504fdcfcf75a18a133da6abd75c5d48053"
|
||||
cleanup:
|
||||
- /bin
|
||||
- /include
|
||||
- /lib/*.a
|
||||
- /lib/*.la
|
||||
- /lib/cmake
|
||||
- /lib/pkgconfig
|
||||
- /share
|
@ -1,28 +0,0 @@
|
||||
{
|
||||
"name": "discord-rpc",
|
||||
"buildsystem": "cmake-ninja",
|
||||
"builddir": true,
|
||||
"config-opts": [
|
||||
"-DCMAKE_BUILD_TYPE=Release",
|
||||
"-DBUILD_SHARED_LIBS=ON"
|
||||
],
|
||||
"build-options": {
|
||||
"strip": true
|
||||
},
|
||||
"sources": [
|
||||
{
|
||||
"type": "git",
|
||||
"url": "https://github.com/stenzek/discord-rpc.git",
|
||||
"commit": "144f3a3f1209994d8d9e8a87964a989cb9911c1e"
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
"/bin",
|
||||
"/include",
|
||||
"/lib/*.a",
|
||||
"/lib/*.la",
|
||||
"/lib/cmake",
|
||||
"/lib/pkgconfig",
|
||||
"/share"
|
||||
]
|
||||
}
|
20
scripts/flatpak/modules/25-discord-rpc.yaml
Normal file
20
scripts/flatpak/modules/25-discord-rpc.yaml
Normal file
@ -0,0 +1,20 @@
|
||||
name: discord-rpc
|
||||
buildsystem: cmake-ninja
|
||||
builddir: true
|
||||
config-opts:
|
||||
- "-DCMAKE_BUILD_TYPE=Release"
|
||||
- "-DBUILD_SHARED_LIBS=ON"
|
||||
build-options:
|
||||
strip: true
|
||||
sources:
|
||||
- type: git
|
||||
url: "https://github.com/stenzek/discord-rpc.git"
|
||||
commit: "144f3a3f1209994d8d9e8a87964a989cb9911c1e"
|
||||
cleanup:
|
||||
- /bin
|
||||
- /include
|
||||
- /lib/*.a
|
||||
- /lib/*.la
|
||||
- /lib/cmake
|
||||
- /lib/pkgconfig
|
||||
- /share
|
@ -1,28 +0,0 @@
|
||||
{
|
||||
"name": "soundtouch",
|
||||
"buildsystem": "cmake-ninja",
|
||||
"builddir": true,
|
||||
"config-opts": [
|
||||
"-DCMAKE_BUILD_TYPE=Release",
|
||||
"-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON"
|
||||
],
|
||||
"build-options": {
|
||||
"strip": true
|
||||
},
|
||||
"sources": [
|
||||
{
|
||||
"type": "git",
|
||||
"url": "https://github.com/stenzek/soundtouch.git",
|
||||
"commit": "463ade388f3a51da078dc9ed062bf28e4ba29da7"
|
||||
}
|
||||
],
|
||||
"cleanup": [
|
||||
"/bin",
|
||||
"/include",
|
||||
"/lib/*.a",
|
||||
"/lib/*.la",
|
||||
"/lib/cmake",
|
||||
"/lib/pkgconfig",
|
||||
"/share"
|
||||
]
|
||||
}
|
27
scripts/flatpak/modules/26-soundtouch.yaml
Normal file
27
scripts/flatpak/modules/26-soundtouch.yaml
Normal file
@ -0,0 +1,27 @@
|
||||
name: soundtouch
|
||||
buildsystem: cmake-ninja
|
||||
builddir: true
|
||||
config-opts:
|
||||
- "-DCMAKE_BUILD_TYPE=Release"
|
||||
|
||||
# Use clang with LTO for speed.
|
||||
- "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON"
|
||||
- "-DCMAKE_C_COMPILER=/usr/lib/sdk/llvm17/bin/clang"
|
||||
- "-DCMAKE_CXX_COMPILER=/usr/lib/sdk/llvm17/bin/clang++"
|
||||
- "-DCMAKE_EXE_LINKER_FLAGS_INIT=-fuse-ld=lld"
|
||||
- "-DCMAKE_MODULE_LINKER_FLAGS_INIT=-fuse-ld=lld"
|
||||
- "-DCMAKE_SHARED_LINKER_FLAGS_INIT=-fuse-ld=lld"
|
||||
build-options:
|
||||
strip: true
|
||||
sources:
|
||||
- type: git
|
||||
url: "https://github.com/stenzek/soundtouch.git"
|
||||
commit: "463ade388f3a51da078dc9ed062bf28e4ba29da7"
|
||||
cleanup:
|
||||
- /bin
|
||||
- /include
|
||||
- /lib/*.a
|
||||
- /lib/*.la
|
||||
- /lib/cmake
|
||||
- /lib/pkgconfig
|
||||
- /share
|
@ -1,67 +0,0 @@
|
||||
{
|
||||
"app-id": "org.duckstation.DuckStation",
|
||||
"runtime": "org.kde.Platform",
|
||||
"runtime-version": "6.7",
|
||||
"sdk": "org.kde.Sdk",
|
||||
"sdk-extensions": [
|
||||
"org.freedesktop.Sdk.Extension.llvm17"
|
||||
],
|
||||
"command": "duckstation-qt",
|
||||
"finish-args": [
|
||||
"--device=all",
|
||||
"--allow=bluetooth",
|
||||
"--share=network",
|
||||
"--share=ipc",
|
||||
"--socket=x11",
|
||||
"--socket=pulseaudio",
|
||||
"--talk-name=org.freedesktop.ScreenSaver",
|
||||
"--env=QT_QPA_PLATFORM=xcb"
|
||||
],
|
||||
"modules": [
|
||||
"modules/20-sdl2.json",
|
||||
"modules/21-libbacktrace.json",
|
||||
"modules/22-shaderc.json",
|
||||
"modules/23-spirv-cross.json",
|
||||
"modules/24-cpuinfo.json",
|
||||
"modules/25-discord-rpc.json",
|
||||
"modules/26-soundtouch.json",
|
||||
{
|
||||
"name": "duckstation",
|
||||
"buildsystem": "cmake-ninja",
|
||||
"builddir": true,
|
||||
"no-make-install": true,
|
||||
"build-options": {
|
||||
"strip": false,
|
||||
"no-debuginfo": true,
|
||||
"cflags": "",
|
||||
"cflags-override": true,
|
||||
"cxxflags": "",
|
||||
"cxxflags-override": true,
|
||||
"config-opts": [
|
||||
"-DCMAKE_BUILD_TYPE=Release",
|
||||
"-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON",
|
||||
"-DBUILD_NOGUI_FRONTEND=OFF",
|
||||
"-DBUILD_QT_FRONTEND=ON",
|
||||
"-DBUILD_TESTS=OFF",
|
||||
"-DCMAKE_C_COMPILER=/usr/lib/sdk/llvm17/bin/clang",
|
||||
"-DCMAKE_CXX_COMPILER=/usr/lib/sdk/llvm17/bin/clang++",
|
||||
"-DCMAKE_EXE_LINKER_FLAGS_INIT=-fuse-ld=lld",
|
||||
"-DCMAKE_MODULE_LINKER_FLAGS_INIT=-fuse-ld=lld",
|
||||
"-DCMAKE_SHARED_LINKER_FLAGS_INIT=-fuse-ld=lld"
|
||||
]
|
||||
},
|
||||
"sources": [
|
||||
{
|
||||
"type": "dir",
|
||||
"path": "../.."
|
||||
}
|
||||
],
|
||||
"post-install": [
|
||||
"cp -a bin \"${FLATPAK_DEST}\"",
|
||||
"install -Dm644 \"${FLATPAK_BUILDER_BUILDDIR}/scripts/org.duckstation.DuckStation.png\" \"${FLATPAK_DEST}/share/icons/hicolor/512x512/apps/org.duckstation.DuckStation.png\"",
|
||||
"install -Dm644 \"${FLATPAK_BUILDER_BUILDDIR}/scripts/org.duckstation.DuckStation.desktop\" \"${FLATPAK_DEST}/share/applications/org.duckstation.DuckStation.desktop\"",
|
||||
"install -Dm644 \"${FLATPAK_BUILDER_BUILDDIR}/scripts/flatpak/org.duckstation.DuckStation.metainfo.xml\" \"${FLATPAK_DEST}/share/metainfo/org.duckstation.DuckStation.metainfo.xml\""
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
82
scripts/flatpak/org.duckstation.DuckStation.yaml
Normal file
82
scripts/flatpak/org.duckstation.DuckStation.yaml
Normal file
@ -0,0 +1,82 @@
|
||||
app-id: "org.duckstation.DuckStation"
|
||||
runtime: "org.kde.Platform"
|
||||
runtime-version: "6.7"
|
||||
sdk: "org.kde.Sdk"
|
||||
sdk-extensions:
|
||||
- "org.freedesktop.Sdk.Extension.llvm17"
|
||||
|
||||
command: "duckstation-qt"
|
||||
|
||||
finish-args:
|
||||
- "--device=all"
|
||||
- "--allow=bluetooth"
|
||||
- "--share=network"
|
||||
- "--share=ipc"
|
||||
- "--socket=pulseaudio"
|
||||
- "--talk-name=org.freedesktop.ScreenSaver"
|
||||
|
||||
# Wayland is disabled due to various QtWayland issues, causing broken UI.
|
||||
- "--socket=x11"
|
||||
- "--env=QT_QPA_PLATFORM=xcb"
|
||||
|
||||
modules:
|
||||
# Dependencies.
|
||||
- "modules/20-sdl2.yaml"
|
||||
- "modules/21-libbacktrace.yaml"
|
||||
- "modules/22-shaderc.yaml"
|
||||
- "modules/23-spirv-cross.yaml"
|
||||
- "modules/24-cpuinfo.yaml"
|
||||
- "modules/25-discord-rpc.yaml"
|
||||
- "modules/26-soundtouch.yaml"
|
||||
|
||||
# Main module.
|
||||
- name: duckstation
|
||||
buildsystem: cmake-ninja
|
||||
builddir: true
|
||||
no-make-install: true
|
||||
build-options:
|
||||
# Preserve debug information, it is needed for backtraces.
|
||||
strip: false
|
||||
no-debuginfo: true
|
||||
|
||||
# Prevent flatpak defaults of fortify etc from creeping in.
|
||||
cflags: ""
|
||||
cflags-override: true
|
||||
cxxflags: ""
|
||||
cxxflags-override: true
|
||||
|
||||
config-opts:
|
||||
# Flatpak build does not appear to default to Release.
|
||||
- "-DCMAKE_BUILD_TYPE=Release"
|
||||
|
||||
# We're not running tests as part of the flatpak build.
|
||||
- '-DBUILD_TESTS=OFF'
|
||||
|
||||
# Make sure we're using ThinLTO.
|
||||
- "-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON"
|
||||
- "-DCMAKE_C_COMPILER=/usr/lib/sdk/llvm17/bin/clang"
|
||||
- "-DCMAKE_CXX_COMPILER=/usr/lib/sdk/llvm17/bin/clang++"
|
||||
- "-DCMAKE_EXE_LINKER_FLAGS_INIT=-fuse-ld=lld"
|
||||
- "-DCMAKE_MODULE_LINKER_FLAGS_INIT=-fuse-ld=lld"
|
||||
- "-DCMAKE_SHARED_LINKER_FLAGS_INIT=-fuse-ld=lld"
|
||||
sources:
|
||||
- type: dir
|
||||
path: ../..
|
||||
|
||||
post-install:
|
||||
# Copy the binary distribution.
|
||||
- "cp -a bin \"${FLATPAK_DEST}\""
|
||||
|
||||
# Manually copy desktop file/metadata, it's not done as part of the regular build.
|
||||
- >-
|
||||
install -Dm644
|
||||
"${FLATPAK_BUILDER_BUILDDIR}/scripts/org.duckstation.DuckStation.png"
|
||||
"${FLATPAK_DEST}/share/icons/hicolor/512x512/apps/org.duckstation.DuckStation.png"
|
||||
- >-
|
||||
install -Dm644
|
||||
"${FLATPAK_BUILDER_BUILDDIR}/scripts/org.duckstation.DuckStation.desktop"
|
||||
"${FLATPAK_DEST}/share/applications/org.duckstation.DuckStation.desktop"
|
||||
- >-
|
||||
install -Dm644
|
||||
"${FLATPAK_BUILDER_BUILDDIR}/scripts/flatpak/org.duckstation.DuckStation.metainfo.xml"
|
||||
"${FLATPAK_DEST}/share/metainfo/org.duckstation.DuckStation.metainfo.xml"
|
@ -31,6 +31,6 @@
|
||||
<release version="@GIT_VERSION@" date="@GIT_DATE@" />
|
||||
</releases>
|
||||
<custom>
|
||||
<value key="flathub::manifest">https://raw.githubusercontent.com/stenzek/duckstation/@GIT_HASH@/scripts/flatpak/org.duckstation.DuckStation.json</value>
|
||||
<value key="flathub::manifest">https://raw.githubusercontent.com/stenzek/duckstation/@GIT_HASH@/scripts/flatpak/org.duckstation.DuckStation.yaml</value>
|
||||
</custom>
|
||||
</component>
|
||||
|
Loading…
Reference in New Issue
Block a user