mirror of
https://github.com/lindbergh-loader/lindbergh-loader.git
synced 2026-09-25 16:08:00 +03:00
277 lines
8.4 KiB
YAML
277 lines
8.4 KiB
YAML
app-id: com.github.lindberghloader
|
|
runtime: org.freedesktop.Platform
|
|
runtime-version: &runtime-version '24.08'
|
|
x-gl-version: &gl-version '1.4'
|
|
x-gl-versions: &gl-versions 24.08;1.4
|
|
x-gl-merge-dirs: &gl-merge-dirs vulkan/icd.d;glvnd/egl_vendor.d;egl/egl_external_platform.d;OpenCL/vendors;lib/dri;lib/d3d;lib/gbm;vulkan/explicit_layer.d;vulkan/implicit_layer.d
|
|
sdk: org.freedesktop.Sdk
|
|
command: lindbergh
|
|
|
|
sdk-extensions:
|
|
- org.freedesktop.Sdk.Extension.toolchain-i386
|
|
- org.freedesktop.Sdk.Compat.i386
|
|
|
|
x-arch-build-options:
|
|
i386: &i386-build-options
|
|
libdir: /app/lib32
|
|
env:
|
|
CC: /usr/lib/sdk/toolchain-i386/bin/i686-unknown-linux-gnu-gcc
|
|
CXX: /usr/lib/sdk/toolchain-i386/bin/i686-unknown-linux-gnu-g++
|
|
LD: /usr/lib/sdk/toolchain-i386/bin/i686-unknown-linux-gnu-ld
|
|
LDFLAGS: "-L/app/lib32"
|
|
|
|
finish-args:
|
|
- --env=LD_LIBRARY_PATH=/app/lib32:$LD_LIBRARY_PATH
|
|
- --env=LDFLAGS="-L/app/lib32"
|
|
- --env=PATH=/app/bin:/usr/bin
|
|
- --allow=multiarch
|
|
- --share=ipc
|
|
- --share=network
|
|
- --socket=x11
|
|
- --socket=wayland
|
|
- --device=all
|
|
- --socket=pulseaudio
|
|
- --filesystem=~/Games
|
|
|
|
add-extensions:
|
|
org.freedesktop.Platform.Compat.i386:
|
|
directory: lib/i386-linux-gnu
|
|
version: *runtime-version
|
|
|
|
org.freedesktop.Platform.Compat.i386.Debug:
|
|
directory: lib/debug/lib/i386-linux-gnu
|
|
version: *runtime-version
|
|
# no-autodownload: true
|
|
|
|
org.freedesktop.Platform.GL32:
|
|
directory: lib/i386-linux-gnu/GL
|
|
version: *gl-version
|
|
versions: *gl-versions
|
|
subdirectories: true
|
|
# no-autodownload: true
|
|
autodelete: false
|
|
add-ld-path: lib
|
|
merge-dirs: *gl-merge-dirs
|
|
download-if: active-gl-driver
|
|
enable-if: active-gl-driver
|
|
autoprune-unless: active-gl-driver
|
|
|
|
org.freedesktop.Platform.GL32.Debug:
|
|
directory: lib/debug/lib/i386-linux-gnu/GL
|
|
version: *gl-version
|
|
versions: *gl-versions
|
|
# subdirectories: true
|
|
# no-autodownload: true
|
|
merge-dirs: *gl-merge-dirs
|
|
enable-if: active-gl-driver
|
|
autoprune-unless: active-gl-driver
|
|
|
|
modules:
|
|
- name: libstdcxx5
|
|
buildsystem: simple
|
|
build-commands:
|
|
- mkdir -p /app/lib32
|
|
- install -Dm644 libstdc++.so.5 /app/lib32/libstdc++.so.5
|
|
sources:
|
|
- type: file
|
|
path: ./assets/libstdc++.so.5
|
|
|
|
- name: SDL3-FAudio-ID
|
|
buildsystem: simple
|
|
build-commands:
|
|
- tar -xf libs/libs.tar -C /app/lib32
|
|
- mkdir -p /app/include
|
|
- tar -xf libs/includes.tar -C /app/include
|
|
sources:
|
|
- type: dir
|
|
path: ../..
|
|
|
|
- name: libGLU
|
|
buildsystem: autotools
|
|
config-opts:
|
|
- --host=i686-unknown-linux-gnu
|
|
- --prefix=/app
|
|
build-options:
|
|
arch:
|
|
x86_64: *i386-build-options
|
|
sources:
|
|
- type: archive
|
|
url: https://mesa.freedesktop.org/archive/glu/glu-9.0.2.tar.xz
|
|
sha256: 6e7280ff585c6a1d9dfcdf2fca489251634b3377bfc33c29e4002466a38d02d4
|
|
|
|
- name: freeglut
|
|
buildsystem: cmake
|
|
config-opts:
|
|
- -DCMAKE_BUILD_TYPE=Release
|
|
- -DCMAKE_INSTALL_PREFIX=/app
|
|
- -DCMAKE_POLICY_VERSION_MINIMUM=3.5
|
|
sources:
|
|
- type: git
|
|
url: https://github.com/freeglut/freeglut.git
|
|
branch: master
|
|
build-options:
|
|
arch:
|
|
x86_64: *i386-build-options
|
|
|
|
- name: libsndio-dynamic
|
|
buildsystem: autotools
|
|
config-opts:
|
|
- --libdir=/app/lib32
|
|
- --enable-dynamic
|
|
- --enable-alsa
|
|
sources:
|
|
- type: archive
|
|
url: https://www.sndio.org/sndio-1.10.0.tar.gz
|
|
sha256: bebd3bfd01c50c9376cf3e7814b9379bed9e17d0393b5113b7eb7a3d0d038c54
|
|
build-options:
|
|
arch:
|
|
x86_64: *i386-build-options
|
|
|
|
- name: libsndio-static
|
|
buildsystem: autotools
|
|
config-opts:
|
|
- --libdir=/app/lib32
|
|
- --enable-static
|
|
- --enable-alsa
|
|
sources:
|
|
- type: archive
|
|
url: https://www.sndio.org/sndio-1.10.0.tar.gz
|
|
sha256: bebd3bfd01c50c9376cf3e7814b9379bed9e17d0393b5113b7eb7a3d0d038c54
|
|
build-options:
|
|
arch:
|
|
x86_64: *i386-build-options
|
|
|
|
- name: libxmu
|
|
buildsystem: autotools
|
|
config-opts:
|
|
- --libdir=/app/lib32
|
|
- --with-shared
|
|
sources:
|
|
- type: archive
|
|
url: https://xorg.freedesktop.org/releases/individual/lib/libXmu-1.2.1.tar.gz
|
|
sha256: bf0902583dd1123856c11e0a5085bd3c6e9886fbbd44954464975fd7d52eb599
|
|
build-options:
|
|
arch:
|
|
x86_64: *i386-build-options
|
|
|
|
- name: libmd
|
|
buildsystem: autotools
|
|
config-opts:
|
|
- --libdir=/app/lib32
|
|
sources:
|
|
- type: archive
|
|
url: https://archive.hadrons.org/software/libmd/libmd-1.1.0.tar.xz
|
|
sha256: 1bd6aa42275313af3141c7cf2e5b964e8b1fd488025caf2f971f43b00776b332
|
|
build-options:
|
|
arch:
|
|
x86_64: *i386-build-options
|
|
|
|
- name: libbsd
|
|
buildsystem: autotools
|
|
config-opts:
|
|
- --libdir=/app/lib32
|
|
sources:
|
|
- type: archive
|
|
url: https://libbsd.freedesktop.org/releases/libbsd-0.12.2.tar.xz
|
|
sha256: b88cc9163d0c652aaf39a99991d974ddba1c3a9711db8f1b5838af2a14731014
|
|
build-options:
|
|
arch:
|
|
x86_64: *i386-build-options
|
|
|
|
- name: nvidia-cg-toolkit
|
|
buildsystem: simple
|
|
build-commands:
|
|
- install -Dm755 usr/lib/libCg.so /app/lib32/libCg.so
|
|
- install -Dm755 usr/lib/libCgGL.so /app/lib32/libCgGL.so
|
|
sources:
|
|
- type: archive
|
|
url: http://developer.download.nvidia.com/cg/Cg_3.1/Cg-3.1_April2012_x86.tgz
|
|
sha256: cef3591e436f528852db0e8c145d3842f920e0c89bcfb219c466797cb7b18879
|
|
|
|
- name: libpcsclite
|
|
buildsystem: meson
|
|
config-opts:
|
|
- --libdir=/app/lib32
|
|
- -Dpolkit=false
|
|
- -Dlibsystemd=false
|
|
build-options:
|
|
arch:
|
|
x86_64: *i386-build-options
|
|
env:
|
|
CFLAGS: "-m32"
|
|
CXXFLAGS: "-m32"
|
|
LDFLAGS: "-m32"
|
|
PKG_CONFIG_PATH: "/app/lib32/pkgconfig:/usr/lib/i386-linux-gnu/pkgconfig"
|
|
LD_LIBRARY_PATH: "/app/lib32:/usr/lib/i386-linux-gnu/pkgconfig:$LD_LIBRARY_PATH"
|
|
sources:
|
|
- type: archive
|
|
url: https://pcsclite.apdu.fr/files/pcsc-lite-2.3.1.tar.xz
|
|
sha256: a641d44d57affe1edd8365dd75307afc307e7eefb4e7ad839f6f146baa41ed56
|
|
|
|
# Build 32-bit libFAudio (static)
|
|
- name: libFAudio-Static
|
|
buildsystem: cmake-ninja
|
|
config-opts:
|
|
- -DBUILD_SHARED_LIBS=off
|
|
- -DCMAKE_INSTALL_PREFIX=/app
|
|
- -DCMAKE_INSTALL_LIBDIR=/app/lib32
|
|
build-options:
|
|
arch:
|
|
x86_64: *i386-build-options
|
|
env:
|
|
CFLAGS: "-m32 -mstackrealign"
|
|
CXXFLAGS: "-m32 -mstackrealign"
|
|
sources:
|
|
- type: git
|
|
url: https://github.com/FNA-XNA/FAudio.git
|
|
branch: master
|
|
|
|
- name: lindbergh-loader
|
|
buildsystem: simple
|
|
build-commands:
|
|
- export LD_LIBRARY_PATH=/app/lib32:$LD_LIBRARY_PATH
|
|
- make
|
|
- mkdir -p /app/bin
|
|
- mkdir -p /app/lib/i386-linux-gnu
|
|
- mkdir -p /app/lib/i386-linux-gnu/GL
|
|
- install -Dm755 ./build/lindbergh /app/bin/
|
|
- install -Dm755 ./build/lindbergh.so /app/lib32/
|
|
- install -Dm755 ./build/libsegaapi.so /app/lib32/
|
|
- install -Dm755 ./build/libkswapapi.so /app/lib32/
|
|
- install -Dm755 ./build/libposixtime.so /app/lib32/
|
|
- install -Dm755 ./libs/libCg.so /app/lib32/libCg2.so
|
|
- install -Dm755 ./libs/libopenal.so.0 /app/lib32/libopenal.so.0
|
|
- install -Dm755 ./libs/libcrypto.so.0.9.7 /app/lib32/libcrypto.so.0.9.7
|
|
- install -Dm755 ./libs/libssl.so.0.9.7 /app/lib32/libssl.so.0.9.7
|
|
- ln -s -f libposixtime.so /app/lib32/libposixtime.so.1
|
|
- ln -s -f libposixtime.so /app/lib32/libposixtime.so.2.4
|
|
- ln -s -f libkswapapi.so /app/lib32/libGLcore.so.1
|
|
- ln -s -f libkswapapi.so /app/lib32/libnvidia-tls.so.1
|
|
- ln -s -f /usr/lib/i386-linux-gnu/libncurses.so /app/lib32/libncurses.so.5
|
|
build-options:
|
|
arch:
|
|
x86_64: *i386-build-options
|
|
env:
|
|
CFLAGS: "-I/app/include"
|
|
sources:
|
|
- type: dir
|
|
path: ../..
|
|
|
|
- name: bundle-setup
|
|
buildsystem: simple
|
|
build-commands:
|
|
- install -Dm644 -t /app/etc ld.so.conf
|
|
sources:
|
|
- type: file
|
|
path: ./assets/ld.so.conf
|
|
|
|
- name: cleanup
|
|
buildsystem: simple
|
|
build-commands:
|
|
- find /app/lib /app/lib32 -name '*.a' -type f -delete
|
|
- find /app/lib /app/lib32 -name '*.la' -type f -delete
|
|
- find /app/bin -mindepth 1 ! -name "lindbergh*" -exec rm -f {} \;
|
|
- rm -rf /app/lib/pkgconfig /app/lib32/pkgconfig /app/share/pkgconfig /app/lib32/cmake /app/lib/debug /app/include /app/man /app/share
|
|
- rm /app/lib32/libXmuu.*
|
|
- rm /app/lib32/libbsd.so
|