mirror of
https://github.com/lindbergh-loader/lindbergh-loader.git
synced 2026-10-12 00:58:12 +03:00
Super release
This commit is contained in:
@@ -6,25 +6,45 @@ OUTPUT_FOLDER=$(realpath "./$APPIMAGEDIRNAME")
|
||||
mkdir build-deps
|
||||
cd build-deps
|
||||
|
||||
# Build openal
|
||||
wget https://github.com/kcat/openal-soft/archive/refs/tags/openal-soft-1.17.2.tar.gz
|
||||
tar -xzf openal-soft-1.17.2.tar.gz
|
||||
cd openal-soft-openal-soft-1.17.2/build
|
||||
|
||||
CFLAGS="-m32 -mstackrealign" CXXFLAGS="-m32 -std=c++14 -mstackrealign" cmake ../ -DALSOFT_BACKEND_PULSEAUDIO=ON -DALSOFT_BACKEND_ALSA=ON -DALSOFT_BACKEND_JACK=OFF -DALSOFT_BACKEND_SNDIO=ON
|
||||
|
||||
# Build SDL3
|
||||
git clone https://github.com/libsdl-org/SDL.git
|
||||
cd SDL
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ../ -DCMAKE_C_FLAGS=-m32 -DCMAKE_INSTALL_PREFIX=/usr
|
||||
make -j4
|
||||
sudo cp libopenal.so.1.17.2 /usr/lib/i386-linux-gnu/libopenal.so.0
|
||||
sudo make install
|
||||
cd ../../
|
||||
|
||||
# Build libSSL and libCrypto
|
||||
wget https://github.com/openssl/openssl/archive/refs/tags/OpenSSL_0_9_7.tar.gz
|
||||
tar -xzf OpenSSL_0_9_7.tar.gz
|
||||
cd openssl-OpenSSL_0_9_7
|
||||
cp ../../scripts/appimage/patches/openssl-0.9.7.patch .
|
||||
./Configure shared 386 no-asm no-krb5 linux-pentium -m32
|
||||
patch -p1 < openssl-0.9.7.patch
|
||||
CFLAGS=-m32 make
|
||||
sudo cp libcrypto.so.0.9.7 /usr/lib/i386-linux-gnu
|
||||
sudo cp libssl.so.0.9.7 /usr/lib/i386-linux-gnu
|
||||
# Build SDL3_ttf
|
||||
git clone https://github.com/libsdl-org/SDL_ttf.git
|
||||
cd SDL_ttf
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ../ -DCMAKE_C_FLAGS=-m32 -DCMAKE_INSTALL_PREFIX=/usr
|
||||
make -j4
|
||||
sudo make install
|
||||
cd ../../
|
||||
|
||||
# Build SDL3_image
|
||||
git clone https://github.com/libsdl-org/SDL_image.git
|
||||
cd SDL_image
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ../ -DCMAKE_C_FLAGS=-m32 -DCMAKE_INSTALL_PREFIX=/usr
|
||||
make -j4
|
||||
sudo make install
|
||||
cd ../../
|
||||
|
||||
|
||||
# Build libFAudio
|
||||
git clone https://github.com/FNA-XNA/FAudio.git
|
||||
cd FAudio
|
||||
mkdir build
|
||||
cd build
|
||||
cmake ../ -DCMAKE_C_FLAGS=-m32 -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_SHARED_LIBS=off
|
||||
make -j4
|
||||
sudo make install
|
||||
cd ../../../
|
||||
|
||||
|
||||
|
||||
@@ -4,8 +4,10 @@ echo "Install Packages Running..."
|
||||
sudo dpkg --add-architecture i386
|
||||
sudo apt update
|
||||
sudo apt -y install --no-install-recommends \
|
||||
build-essential gcc-multilib g++-multilib cmake fuse freeglut3-dev:i386 libsdl2-dev:i386 libfaudio-dev:i386 libvdpau1:i386 \
|
||||
libstdc++5:i386 libxmu6:i386 libpcsclite1:i386 libncurses5:i386 unzip libsndio-dev:i386
|
||||
build-essential gcc-multilib g++-multilib cmake fuse freeglut3-dev:i386 libvdpau1:i386 libstdc++5:i386 libxmu6:i386 \
|
||||
libpcsclite1:i386 libncurses5:i386 unzip libsndio-dev libsndio-dev:i386 pulseaudio-utils:i386 zlib1g:i386 libgpg-error0:i386 \
|
||||
libasound2 libasound2-dev libasound2:i386 libasound2-dev:i386 libfreetype6-dev:i386 libdbus-1-dev libpulse-dev libdbus-1-dev:i386 \
|
||||
libudev-dev:i386 libxcursor-dev:i386 libxfixes-dev:i386 libxi-dev:i386 libxrandr-dev:i386 libxss-dev:i386 libxxf86vm-dev:i386 git
|
||||
|
||||
sudo add-apt-repository ppa:kisak/kisak-mesa -y
|
||||
sudo add-apt-repository ppa:kisak/turtle -y
|
||||
sudo apt update -y && sudo apt upgrade -y
|
||||
@@ -4,6 +4,7 @@ APPIMAGENAME=lindbergh-loader
|
||||
APPIMAGEDIRNAME=lindbergh-loader.AppDir
|
||||
|
||||
declare -a ADDED_LIBS=(
|
||||
"libfreetype.so.6"
|
||||
"libOpenGL.so.0"
|
||||
"libGLdispatch.so.0"
|
||||
"libGLX.so"
|
||||
@@ -22,16 +23,18 @@ declare -a ADDED_LIBS=(
|
||||
"libxcb-dri3.so.0"
|
||||
"libxcb-glx.so.0"
|
||||
"libXmu.so.6"
|
||||
"libXrandr.so.2"
|
||||
"libncurses.so.5"
|
||||
"libpcsclite.so.1"
|
||||
"libstdc++.so.5"
|
||||
"libdrm.so.2"
|
||||
"libexpat.so.1"
|
||||
"libm.so.6"
|
||||
"libopenal.so.0"
|
||||
"libcrypto.so.0.9.7"
|
||||
"libssl.so.0.9.7"
|
||||
"libuuid.so.1"
|
||||
"libz.so.1"
|
||||
"libgpg-error.so.0"
|
||||
"libstdc++.so.6"
|
||||
"libudev.so.1"
|
||||
"libsndio.so.7"
|
||||
)
|
||||
|
||||
set -e
|
||||
@@ -55,6 +58,7 @@ for lib in "${ADDED_LIBS[@]}"; do
|
||||
ADDED_LIBS_ARGS+=("--library=/usr/lib/i386-linux-gnu/$lib")
|
||||
done
|
||||
|
||||
ADDED_LIBS_ARGS+=("--library=/usr/lib/i386-linux-gnu/pulseaudio/libpulsedsp.so")
|
||||
|
||||
echo "Copying files into AppDir..."
|
||||
mkdir -p "$OUTPUT_FOLDER/usr/bin"
|
||||
@@ -76,7 +80,7 @@ cp libkswapapi.so $OUTPUT_FOLDER/usr/lib
|
||||
cp libsegaapi.so $OUTPUT_FOLDER/usr/lib
|
||||
cp lindbergh.so $OUTPUT_FOLDER/usr/lib
|
||||
cp libposixtime.so $OUTPUT_FOLDER/usr/lib
|
||||
mv lindbergh $OUTPUT_FOLDER/usr/bin
|
||||
cp lindbergh $OUTPUT_FOLDER/usr/bin
|
||||
mkdir -p $OUTPUT_FOLDER/usr/lib/dri
|
||||
cp /usr/lib/i386-linux-gnu/dri/* $OUTPUT_FOLDER/usr/lib/dri
|
||||
cd ..
|
||||
@@ -93,11 +97,15 @@ mv $OUTPUT_FOLDER/usr/lib/libposixtime.so $OUTPUT_FOLDER/usr/lib32
|
||||
mv $OUTPUT_FOLDER/usr/lib/dri $OUTPUT_FOLDER/usr/lib32
|
||||
|
||||
unzip libs/Cg-3.1.zip -d $OUTPUT_FOLDER/usr/lib32
|
||||
cp libs/libCg.so $OUTPUT_FOLDER/usr/lib32/libCg2.so
|
||||
cp libs/libCg.so $OUTPUT_FOLDER/usr/lib32/libCg2.so
|
||||
cp libs/libopenal.so.0 $OUTPUT_FOLDER/usr/lib32/libopenal.so.0
|
||||
cp libs/libcrypto.so.0.9.7 $OUTPUT_FOLDER/usr/lib32/libcrypto.so.0.9.7
|
||||
cp libs/libssl.so.0.9.7 $OUTPUT_FOLDER/usr/lib32/libssl.so.0.9.7
|
||||
ln -s -f libposixtime.so $OUTPUT_FOLDER/usr/lib32/libposixtime.so.1
|
||||
ln -s -f libposixtime.so $OUTPUT_FOLDER/usr/lib32/libposixtime.so.2.4
|
||||
ln -s -f libkswapapi.so $OUTPUT_FOLDER/usr/lib32/libGLcore.so.1
|
||||
ln -s -f libkswapapi.so $OUTPUT_FOLDER/usr/lib32/libnvidia-tls.so.1
|
||||
ln -s -f libGLX.so $OUTPUT_FOLDER/usr/lib32/libGLX.so.0
|
||||
|
||||
echo "Generating AppImage..."
|
||||
rm -f "$APPIMAGENAME.AppImage"
|
||||
|
||||
Executable
+6
@@ -0,0 +1,6 @@
|
||||
cd libs
|
||||
find /usr/lib/i386-linux-gnu -name "libSDL3*" -exec sh -c 'tar -rf libs.tar -C /usr/lib/i386-linux-gnu $(basename {})' \;
|
||||
find /usr/lib/i386-linux-gnu -name "libFAudio*" -exec sh -c 'tar -rf libs.tar -C /usr/lib/i386-linux-gnu $(basename {})' \;
|
||||
tar -cf includes.tar -C /usr/include SDL3 SDL3_image SDL3_ttf FAudio.h FAudioFX.h
|
||||
|
||||
cd ..
|
||||
@@ -1,13 +0,0 @@
|
||||
diff -ruN openssl-OpenSSL_0_9_7.orig/Makefile.ssl openssl-OpenSSL_0_9_7/Makefile.ssl
|
||||
--- openssl-OpenSSL_0_9_7.orig/Makefile.ssl 2025-04-14 05:05:11.162340308 +0000
|
||||
+++ openssl-OpenSSL_0_9_7/Makefile.ssl 2025-04-14 05:06:22.261420144 +0000
|
||||
@@ -198,7 +198,7 @@
|
||||
SHARED_SSL=libssl$(SHLIB_EXT)
|
||||
SHARED_LIBS=$(SHARED_CRYPTO) $(SHARED_SSL)
|
||||
SHARED_LIBS_LINK_EXTS=.so.$(SHLIB_MAJOR) .so
|
||||
-SHARED_LDFLAGS=
|
||||
+SHARED_LDFLAGS=-m32
|
||||
|
||||
GENERAL= Makefile
|
||||
BASENAME= openssl
|
||||
|
||||
@@ -1,27 +1,28 @@
|
||||
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
|
||||
|
||||
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 # Define GL merge dirs alias
|
||||
x-i386-build-options: &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"
|
||||
|
||||
command: lindbergh
|
||||
|
||||
# SDK extensions needed for building 32-bit components
|
||||
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
|
||||
@@ -32,17 +33,23 @@ finish-args:
|
||||
- --socket=pulseaudio
|
||||
- --filesystem=~/Games
|
||||
|
||||
# Runtime extensions automatically downloaded and installed with the app (For some reason does not work)
|
||||
add-extensions:
|
||||
org.freedesktop.Platform.Compat.i386:
|
||||
directory: lib/i386-linux-gnu
|
||||
version: *runtime-version
|
||||
|
||||
# 32-bit graphics driver extension
|
||||
no-autodownload: true
|
||||
|
||||
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
|
||||
versions: *gl-versions
|
||||
version: *gl-version
|
||||
versions: *gl-versions
|
||||
subdirectories: true
|
||||
no-autodownload: true
|
||||
autodelete: false
|
||||
add-ld-path: lib
|
||||
merge-dirs: *gl-merge-dirs
|
||||
@@ -50,8 +57,17 @@ add-extensions:
|
||||
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:
|
||||
# Pre-built 32-bit library (if required)
|
||||
- name: libstdcxx5
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
@@ -61,7 +77,16 @@ modules:
|
||||
- type: file
|
||||
path: ./assets/libstdc++.so.5
|
||||
|
||||
# Build 32-bit libGLU
|
||||
- name: SDL3-FAudio
|
||||
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:
|
||||
@@ -72,16 +97,14 @@ modules:
|
||||
x86_64: *i386-build-options
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://archive.mesa3d.org/glu/glu-9.0.2.tar.xz
|
||||
url: https://mesa.freedesktop.org/archive/glu/glu-9.0.2.tar.xz
|
||||
sha256: 6e7280ff585c6a1d9dfcdf2fca489251634b3377bfc33c29e4002466a38d02d4
|
||||
|
||||
# Build 32-bit freeglut
|
||||
- name: freeglut
|
||||
buildsystem: cmake
|
||||
config-opts:
|
||||
- -DCMAKE_BUILD_TYPE=Release
|
||||
- -DCMAKE_INSTALL_PREFIX=/app
|
||||
- -DCMAKE_INSTALL_LIBDIR=/app/lib32
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://downloads.sourceforge.net/freeglut/freeglut-3.2.2.tar.gz
|
||||
@@ -90,44 +113,75 @@ modules:
|
||||
arch:
|
||||
x86_64: *i386-build-options
|
||||
|
||||
# Build 32-bit libFAudio (dynamic)
|
||||
- name: libFAudio-Dynamic
|
||||
buildsystem: cmake-ninja
|
||||
- name: libsndio-dynamic
|
||||
buildsystem: autotools
|
||||
config-opts:
|
||||
- -DCMAKE_BUILD_TYPE=Release
|
||||
- -DCMAKE_INSTALL_PREFIX=/app
|
||||
- -DBUILD_SDL3=off
|
||||
- -DCMAKE_INSTALL_LIBDIR=/app/lib32
|
||||
- --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
|
||||
env:
|
||||
CFLAGS: "-m32 -mstackrealign"
|
||||
CXXFLAGS: "-m32 -mstackrealign"
|
||||
sources:
|
||||
- type: git
|
||||
url: https://github.com/FNA-XNA/FAudio.git
|
||||
tag: "24.12"
|
||||
|
||||
# Build 32-bit libXmu
|
||||
- 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: libFAudio-Static
|
||||
# buildsystem: cmake-ninja
|
||||
# config-opts:
|
||||
# - -DCMAKE_BUILD_TYPE=Release
|
||||
# - -DCMAKE_INSTALL_PREFIX=/app
|
||||
# - -DBUILD_SHARED_LIBS=off
|
||||
# - -DCMAKE_INSTALL_LIBDIR=/app/lib32
|
||||
# build-options:
|
||||
# arch:
|
||||
# x86_64: *i386-build-options
|
||||
# env:
|
||||
# CFLAGS: "-m32 -mstackrealign"
|
||||
# CXXFLAGS: "-m32 -mstackrealign"
|
||||
# LDFLAGS: "-m32 -mstackrealign"
|
||||
# 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: git
|
||||
# url: https://github.com/FNA-XNA/FAudio.git
|
||||
# branch: "master"
|
||||
|
||||
- name: libxmu
|
||||
buildsystem: autotools
|
||||
config-opts:
|
||||
- --prefix=/app
|
||||
- --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
|
||||
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
|
||||
libdir: /app/lib32
|
||||
|
||||
# Build 32-bit libmd
|
||||
- name: libmd
|
||||
buildsystem: autotools
|
||||
config-opts:
|
||||
- --prefix=/app
|
||||
- --libdir=/app/lib32
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://archive.hadrons.org/software/libmd/libmd-1.1.0.tar.xz
|
||||
@@ -136,11 +190,10 @@ modules:
|
||||
arch:
|
||||
x86_64: *i386-build-options
|
||||
|
||||
# Build 32-bit libbsd
|
||||
- name: libbsd
|
||||
buildsystem: autotools
|
||||
config-opts:
|
||||
- --prefix=/app
|
||||
- --libdir=/app/lib32
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://libbsd.freedesktop.org/releases/libbsd-0.12.2.tar.xz
|
||||
@@ -149,11 +202,10 @@ modules:
|
||||
arch:
|
||||
x86_64: *i386-build-options
|
||||
|
||||
# Build 32-bit ncurses (very old version)
|
||||
- name: ncurses
|
||||
buildsystem: autotools
|
||||
config-opts:
|
||||
- --prefix=/app
|
||||
- --libdir=/app/lib32
|
||||
- --with-shared
|
||||
- --without-debug
|
||||
sources:
|
||||
@@ -169,7 +221,6 @@ modules:
|
||||
CPPFLAGS: "-P"
|
||||
CXXFLAGS: "-std=c++14"
|
||||
|
||||
# Install pre-built 32-bit Nvidia Cg Toolkit (old)
|
||||
- name: nvidia-cg-toolkit
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
@@ -180,62 +231,10 @@ modules:
|
||||
url: http://developer.download.nvidia.com/cg/Cg_3.1/Cg-3.1_April2012_x86.tgz
|
||||
sha256: cef3591e436f528852db0e8c145d3842f920e0c89bcfb219c466797cb7b18879
|
||||
|
||||
# Build 32-bit libsndio (dynamic)
|
||||
- name: libsndio-dynamic
|
||||
buildsystem: autotools
|
||||
config-opts:
|
||||
- --prefix=/app
|
||||
- --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
|
||||
|
||||
# Build 32-bit libopenal (old version)
|
||||
- name: libopenal
|
||||
buildsystem: cmake
|
||||
config-opts:
|
||||
- -DCMAKE_INSTALL_PREFIX=/app
|
||||
- -DCMAKE_INSTALL_LIBDIR=/app/lib32
|
||||
- -DALSOFT_BACKEND_PULSEAUDIO=ON
|
||||
- -DALSOFT_BACKEND_ALSA=ON
|
||||
- -DALSOFT_BACKEND_JACK=OFF
|
||||
- -DALSOFT_BACKEND_SNDIO=ON
|
||||
- -DSOUNDIO_INCLUDE_DIR=/app/include
|
||||
- -DSOUNDIO_LIBRARY=/app/lib32/libsndio.so
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://github.com/kcat/openal-soft/archive/refs/tags/openal-soft-1.17.2.tar.gz
|
||||
sha256: 11ea176f6cbf9763dbce0953dd77ab72d032b4ad95f07afffb91844abb174033
|
||||
build-options:
|
||||
arch:
|
||||
x86_64: *i386-build-options
|
||||
env:
|
||||
CFLAGS: "-m32 -mstackrealign"
|
||||
CXXFLAGS: "-m32 -std=c++14 -mstackrealign"
|
||||
|
||||
# Build 32-bit OpenSSL (extremely old and insecure version)
|
||||
- name: openssl
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- ./Configure --prefix=/app --openssldir=/app/etc/ssl shared 386 no-asm no-krb5 linux-pentium
|
||||
- make CC=/usr/lib/sdk/toolchain-i386/bin/i686-unknown-linux-gnu-gcc RANLIB=/usr/lib/sdk/toolchain-i386/bin/i686-unknown-linux-gnu-ranlib
|
||||
- install -d /app/lib32
|
||||
- mv libcrypto.so* /app/lib32/
|
||||
- mv libssl.so* /app/lib32/
|
||||
sources:
|
||||
- type: archive
|
||||
url: https://github.com/openssl/openssl/archive/refs/tags/OpenSSL_0_9_7.tar.gz
|
||||
sha256: 14e3a90f75994689e8c1bef098a97021f225a1a1623a7b8012079bd8b2eca1e8
|
||||
|
||||
# Build 32-bit libpcsclite
|
||||
- name: libpcsclite
|
||||
buildsystem: meson
|
||||
config-opts:
|
||||
- --libdir=/app/lib32
|
||||
- -Dpolkit=false
|
||||
- -Dlibsystemd=false
|
||||
build-options:
|
||||
@@ -244,19 +243,20 @@ modules:
|
||||
env:
|
||||
CFLAGS: "-m32"
|
||||
CXXFLAGS: "-m32"
|
||||
LDFLAGS: "-m32 -L/app/lib32"
|
||||
PKG_CONFIG_PATH: "/app/lib32/pkgconfig:/usr/lib/i386-linux-gnu/pkgconfig:/usr/lib/sdk/toolchain-i386/lib/pkgconfig"
|
||||
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 the main application (lindbergh-loader)
|
||||
- name: lindbergh-loader
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- export LD_LIBRARY_PATH=/app/lib32:$LD_LIBRARY_PATH
|
||||
- make -j$(nproc)
|
||||
- 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/
|
||||
@@ -265,20 +265,22 @@ modules:
|
||||
- install -Dm755 ./build/libkswapapi.so /app/lib32/
|
||||
- install -Dm755 ./build/libposixtime.so /app/lib32/
|
||||
- install -Dm755 ./libs/libCg.so /app/lib32/libCg2.so
|
||||
- ln -sf libposixtime.so /app/lib32/libposixtime.so.1
|
||||
- ln -sf libposixtime.so /app/lib32/libposixtime.so.2.4
|
||||
- ln -sf libopenal.so.1 /app/lib32/libopenal.so.0
|
||||
- ln -sf libkswapapi.so /app/lib32/libGLcore.so.1
|
||||
- ln -sf libkswapapi.so /app/lib32/libnvidia-tls.so.1
|
||||
- mv /app/lib/libopenal* /app/lib32/
|
||||
- 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
|
||||
build-options:
|
||||
arch:
|
||||
x86_64: *i386-build-options
|
||||
env:
|
||||
CFLAGS: "-I/app/include"
|
||||
sources:
|
||||
- type: dir
|
||||
path: ../..
|
||||
|
||||
# Setup dynamic linker configuration
|
||||
- name: bundle-setup
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
@@ -287,18 +289,16 @@ modules:
|
||||
- type: file
|
||||
path: ./assets/ld.so.conf
|
||||
|
||||
# Cleanup unnecessary files to reduce final flatpak size
|
||||
- name: cleanup
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- find /app/lib32 -name '*.a' -type f -delete
|
||||
- find /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
|
||||
- rm -rf /app/lib32/cmake /app/lib/debug /app/include /app/man /app/share /app/etc/bash_completion.d
|
||||
- rm -f /app/lib32/libmenu.so*
|
||||
- rm -f /app/lib32/libform.so*
|
||||
- rm -f /app/lib32/libpanel.so*
|
||||
- rm -f /app/lib32/libXmuu.so*
|
||||
- rm -f /app/lib32/libbsd.so*
|
||||
- rm -rf /app/lib/terminfo
|
||||
- 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 -d /app/lib/terminfo
|
||||
- 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/libmenu.*
|
||||
- rm /app/lib32/libform.*
|
||||
- rm /app/lib32/libpanel.*
|
||||
- rm /app/lib32/libXmuu.*
|
||||
- rm /app/lib32/libbsd.so
|
||||
|
||||
Reference in New Issue
Block a user