Skip to content

Instantly share code, notes, and snippets.

@thatcosmonaut
Last active June 5, 2025 07:18
Show Gist options
  • Select an option

  • Save thatcosmonaut/2ff0c2a783bcb1b0dc4d3597bc848697 to your computer and use it in GitHub Desktop.

Select an option

Save thatcosmonaut/2ff0c2a783bcb1b0dc4d3597bc848697 to your computer and use it in GitHub Desktop.
Build moonlibs
#!/bin/bash
set -ex
rm -rf win64
mkdir win64
rm -rf lib64
mkdir lib64
rm -rf macos
mkdir macos
rm -rf downloads
mkdir downloads
cd downloads
# SDL3
wget https://nightly.link/libsdl-org/SDL/workflows/build/release-3.2.x/SDL-VC-x64.zip
unzip SDL-VC-x64.zip -d SDL-VC-x64
cd SDL-VC-x64/dist
unzip SDL3-3.2.17-Windows-VC.zip
cp SDL3-3.2.17-Windows-VC/bin/SDL3.dll ../../../win64/SDL3.dll
cd ../..
wget https://nightly.link/libsdl-org/SDL/workflows/build/release-3.2.x/SDL-macos-arm64-gnu.zip
unzip SDL-macos-arm64-gnu.zip -d SDL-macos-arm64-gnu
cd SDL-macos-arm64-gnu/dist
tar -xzf SDL3-3.2.17-macOS.tar.gz
cp SDL3-3.2.17-macOS/lib/libSDL3.0.dylib ../../../macos/libSDL3.0.dylib
cd ../..
wget https://nightly.link/libsdl-org/SDL/workflows/build/release-3.2.x/SDL-slrsniper.zip
unzip SDL-slrsniper.zip -d SDL-slrsniper
cd SDL-slrsniper/dist
tar -xzf SDL3-3.2.17-Linux.tar.gz
cp -L SDL3-3.2.17-Linux/lib/libSDL3.so.0 ../../../lib64/libSDL3.so.0
cd ../..
# SDL_shadercross
wget https://nightly.link/libsdl-org/SDL_shadercross/workflows/main/main/SDL3_shadercross-VC-x64.zip
unzip SDL3_shadercross-VC-x64.zip -d SDL3_shadercross-VC-x64
cd SDL3_shadercross-VC-x64
unzip SDL3_shadercross-3.0.0-windows-VC-x64.zip
cd SDL3_shadercross-3.0.0-windows-VC-x64/bin
cp dxcompiler.dll ../../../../win64/dxcompiler.dll
cp dxil.dll ../../../../win64/dxil.dll
cp spirv-cross-c-shared.dll ../../../../win64/spirv-cross-c-shared.dll
cp SDL3_shadercross.dll ../../../../win64/SDL3_shadercross.dll
cd ../../..
wget https://nightly.link/libsdl-org/SDL_shadercross/workflows/main/main/SDL3_shadercross-macos-arm64.zip
unzip SDL3_shadercross-macos-arm64.zip -d SDL3_shadercross-macos-arm64
cd SDL3_shadercross-macos-arm64
tar -xzf SDL3_shadercross-3.0.0-darwin-arm64-x64.tar.gz
cd SDL3_shadercross-3.0.0-darwin-arm64-x64/lib
cp libdxcompiler.dylib ../../../../macos/libdxcompiler.dylib
cp libdxil.dylib ../../../../macos/libdxil.dylib
cp -L libspirv-cross-c-shared.0.dylib ../../../../macos/libspirv-cross-c-shared.0.dylib
cp -L libSDL3_shadercross.0.dylib ../../../../macos/libSDL3_shadercross.0.dylib
cp -L libvkd3d.1.dylib ../../../../macos/libvkd3d.1.dylib
cp -L libvkd3d-shader.1.dylib ../../../../macos/libvkd3d-shader.1.dylib
cp -L libvkd3d-utils.1.dylib ../../../../macos/libvkd3d-utils.1.dylib
cd ../../..
wget https://nightly.link/libsdl-org/SDL_shadercross/workflows/main/main/SDL3_shadercross-slrsniper.zip
unzip SDL3_shadercross-slrsniper.zip -d SDL3_shadercross-slrsniper
cd SDL3_shadercross-slrsniper
tar -xzf SDL3_shadercross-3.0.0-linux-x64.tar.gz
cd SDL3_shadercross-3.0.0-linux-x64/lib
cp libdxcompiler.so ../../../../lib64/libdxcompiler.so
cp libdxil.so ../../../../lib64/libdxil.so
cp -L libspirv-cross-c-shared.so.0 ../../../../lib64/libspirv-cross-c-shared.so.0
cp -L libSDL3_shadercross.so.0 ../../../../lib64/libSDL3_shadercross.so.0
cp -L libvkd3d.so.1 ../../../../lib64/libvkd3d.so.1
cp -L libvkd3d-shader.so.1 ../../../../lib64/libvkd3d-shader.so.1
cp -L libvkd3d-utils.so.1 ../../../../lib64/libvkd3d-utils.so.1
cd ../../..
# FAudio
wget https://nightly.link/FNA-XNA/FAudio/workflows/ci/master/FAudio-x64.zip
unzip FAudio-x64.zip -d FAudio-x64
cp FAudio-x64/FAudio.dll ../win64/FAudio.dll
wget https://nightly.link/FNA-XNA/FAudio/workflows/ci/master/FAudio-osx.zip
unzip FAudio-osx.zip -d FAudio-osx
cp FAudio-osx/libFAudio.0.dylib ../macos/libFAudio.0.dylib
wget https://nightly.link/FNA-XNA/FAudio/workflows/ci/master/FAudio-lib64.zip
unzip FAudio-lib64.zip -d FAudio-lib64
cp FAudio-lib64/libFAudio.so.0 ../lib64/libFAudio.so.0
# IRO
wget https://nightly.link/MoonsideGames/IRO/workflows/ci/main/IRO-msvc-x64.zip
unzip IRO-msvc-x64.zip -d IRO-msvc-x64
cp IRO-msvc-x64/IRO.dll ../win64/IRO.dll
wget https://nightly.link/MoonsideGames/IRO/workflows/ci/main/IRO-osx.zip
unzip IRO-osx.zip -d IRO-osx
cp IRO-osx/libIRO.1.dylib ../macos/libIRO.1.dylib
wget https://nightly.link/MoonsideGames/IRO/workflows/ci/main/IRO-lib64.zip
unzip IRO-lib64.zip -d IRO-lib64
cp IRO-lib64/libIRO.so.1 ../lib64/libIRO.so.1
# dav1dfile
wget https://nightly.link/MoonsideGames/dav1dfile/workflows/build/main/dav1dfile-x64.zip
unzip dav1dfile-x64.zip -d dav1dfile-x64
cp dav1dfile-x64/dav1dfile.dll ../win64/dav1dfile.dll
wget https://nightly.link/MoonsideGames/dav1dfile/workflows/build/main/dav1dfile-macos.zip
unzip dav1dfile-macos.zip -d dav1dfile-macos
cp dav1dfile-macos/libdav1dfile.1.dylib ../macos/libdav1dfile.1.dylib
wget https://nightly.link/MoonsideGames/dav1dfile/workflows/build/main/dav1dfile-lib64.zip
unzip dav1dfile-lib64.zip -d dav1dfile-lib64
cp dav1dfile-lib64/libdav1dfile.so ../lib64/libdav1dfile.so.1
# Wellspring
wget https://github.com/MoonsideGames/Wellspring/releases/download/1.1.0/Wellspring.dll
cp Wellspring.dll ../win64/Wellspring.dll
wget https://github.com/MoonsideGames/Wellspring/releases/download/1.1.0/libWellspring.1.dylib
cp libWellspring.1.dylib ../macos/libWellspring.1.dylib
wget https://github.com/MoonsideGames/Wellspring/releases/download/1.1.0/libWellspring.so.1
cp libWellspring.so.1 ../lib64/libWellspring.so.1
# Compress and upload
cd ..
tar -czf moonlibs.tar.gz win64 macos lib64
# Insert upload command here
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment