flibitBuild
Want to replicate my build machine? Grab a RHEL8-based OS and have a look!
"RHEL-based" OSes include RHEL for Developers, Rocky Linux, and AlmaLinux.
Your OS minimum will be "glibc 2.28+, 64-bit only".
# Update base install before doing anything else
dnf update
# Add EPEL
dnf install epel-release
crb enable
# SDL2 dependencies
dnf builddep SDL2
# All the base build tools!
dnf install bzip2 bzip2-devel chrpath clang cmake freetype-devel gcc-c++ \
git gtk3-devel libstdc++-static libuuid-devel libvorbis-devel \
libxml2-devel meson mingw32-gcc-c++ mingw64-gcc-c++ ninja-build \
ocl-icd-devel openal-soft-devel opencl-headers openssl-devel patch \
perl-IPC-Cmd svn unix2dos zlib-static
# libdecor
curl -O https://gitlab.gnome.org/jadahl/libdecor/-/archive/0.1.0/libdecor-0.1.0.tar.bz2
tar xvfj libdecor-0.1.0.tar.bz2
mkdir libdecor-0.1.0/flibitBuild
cd libdecor-0.1.0/flibitBuild
meson .. --libdir=lib -Ddemo=false
ninja
su -c 'ninja install'
# PipeWire 0.3.42 (Highest version usable with meson)
curl -O https://gitlab.freedesktop.org/pipewire/pipewire/-/archive/0.3.42/pipewire-0.3.42.tar.bz2
tar xvfj pipewire-0.3.42.tar.bz2
mkdir pipewire-0.3.42/flibitBuild
cd pipewire-0.3.42/flibitBuild
meson setup .. --libdir=lib -Dsession-managers= -Dpipewire-v4l2=disabled -Dv4l2=disabled -Draop=disabled
ninja
su -c 'ninja install'
# Also:
# Configure SDL with PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure
# The CMake config provided by SDL2-mingw is terrible, delete the block
# that starts with "if(NOT TARGET SDL2::SDL2)".
flibitBuild AArch64
This works fine on the latest Fedora. Your glibc minimum will be 2.34.
# On Fedora...
dnf install qemu-system-aarch64
dnf group install --with-optional virtualization
virt-builder fedora-35 --arch aarch64 --size 32G \
--root-password password:!!YOUR_PASS!!
virt-install --name fedora_aarch64 --arch aarch64 --ram 3072 \
--disk path=fedora-35.img,format=raw --os-variant fedora35 --import
# Inside the VM...
dnf builddep SDL2 libgdiplus
dnf install autoconf automake bison bzip2 chrpath cmake gettext-devel git \
libicu-devel libtool python tar unzip
Wait, a "plan"?
Well, this is a .plan file, so here's my TODO. Expect nothing from it, ever.
In Progress
SDL_ActionSet
Waiting Room (2023)
SDL 3.0
- SDL_ActionSet is what sponsor resources are going towards
- SDL_StorageContainer is whenever I feel like it
- Wayland/PipeWire are waiting on external components
Marble It Up Ultra
- Back in cert once more~
Codename TupTip
- Waiting for the hardware...!
Coding History
- On call throughout development
VVVVVV 2.4
- Giving the localization project as much time as it wants
Super Hexagon Neo Part 2
- Occasional merge work
Waiting Room (Heat Death)
ScoreRush PC
- Need AppAdmin for publish, crosshair for mouse
Proteus "Neo" Rewrite
- Retirement project
Anodyne 1
- Retirement project