@@ -21,6 +21,7 @@ pacman -Syu --noconfirm \
2121 mbedtls2 \
2222 mesa \
2323 ninja \
24+ nlohmann-json \
2425 openal \
2526 pipewire-audio \
2627 pulseaudio \
@@ -47,13 +48,10 @@ echo "Installing debloated packages..."
4748echo " ---------------------------------------------------------------"
4849wget --retry-connrefused --tries=30 " $EXTRA_PACKAGES " -O ./get-debloated-pkgs.sh
4950chmod +x ./get-debloated-pkgs.sh
50- ./get-debloated-pkgs.sh --add-mesa qt6-base-mini llvm-libs-nano opus-nano
51+ ./get-debloated-pkgs.sh --add-mesa qt6-base-mini llvm-libs-nano opus-nano gdk-pixbuf2-mini
5152
5253echo " Building citron..."
5354echo " ---------------------------------------------------------------"
54- sed -i ' s|EUID == 0|EUID == 69|g' /usr/bin/makepkg
55- sed -i ' s|-O2|-O3|; s|MAKEFLAGS=.*|MAKEFLAGS="-j$(nproc)"|; s|#MAKEFLAGS|MAKEFLAGS|' /etc/makepkg.conf
56- cat /etc/makepkg.conf
5755
5856if [ " $1 " = ' v3' ] && [ " $ARCH " = ' x86_64' ]; then
5957 echo " Making x86-64-v3 optimized build of citron..."
6664 ARCH_FLAGS=" -march=armv8-a -mtune=generic -O3"
6765fi
6866
69- if [ " $DEVEL " = ' true' ]; then
70- citronpkg=citron-git
71- echo " Making nightly build..."
72- else
73- citronpkg=citron
74- echo " Making stable build..."
75- fi
67+ git clone --recursive " https://git.citron-emu.org/citron/emulator.git" ./citron && (
68+ cd ./citron
7669
77- git clone https://aur.archlinux.org/" $citronpkg " .git ./citron
78- cd ./citron
70+ if [ " $DEVEL " = ' true' ]; then
71+ CITRON_TAG=" $( git rev-parse --short HEAD) "
72+ echo " Making nightly \" $CITRON_TAG \" build"
73+ VERSION=" $CITRON_TAG "
74+ else
75+ CITRON_TAG=$( git describe --tags)
76+ echo " Making stable \" $CITRON_TAG \" build"
77+ git checkout " $CITRON_TAG "
78+ VERSION=" $( echo " $CITRON_TAG " | awk -F' -' ' {print $1}' ) "
79+ fi
7980
80- sed -i \
81- -e " s|x86_64|$ARCH |g" \
82- -e ' s|DISCORD_PRESENCE=ON|DISCORD_PRESENCE=OFF|' \
83- -e ' s|USE_QT_MULTIMEDIA=ON|USE_QT_MULTIMEDIA=OFF|' \
84- -e ' s|BUILD_TYPE=None|BUILD_TYPE=Release|' \
85- -e " s|\$ CXXFLAGS|$ARCH_FLAGS |g" \
86- -e " s|\$ CFLAGS|$ARCH_FLAGS |g" \
87- ./PKGBUILD
88- cat ./PKGBUILD
81+ # remove mysterious sse2neon library dependency
82+ sed -i ' /sse2neon/d' ./src/video_core/CMakeLists.txt
8983
90- makepkg -fs --noconfirm --skippgpcheck
91- ls -la .
92- pacman --noconfirm -U ./* .pkg.tar.*
93- pacman -Q " $citronpkg " | awk ' {print $2; exit}' > ~ /version
84+ mkdir ./build
85+ cd ./build
86+ cmake .. -GNinja \
87+ -DCMAKE_BUILD_TYPE=Release \
88+ -DCMAKE_INSTALL_PREFIX=/usr \
89+ -DUSE_SYSTEM_QT=ON \
90+ -DCITRON_USE_BUNDLED_VCPKG=OFF \
91+ -DCITRON_USE_BUNDLED_FFMPEG=OFF \
92+ -DCITRON_USE_BUNDLED_SDL2=OFF \
93+ -DCITRON_USE_EXTERNAL_SDL2=OFF \
94+ -DCITRON_CHECK_SUBMODULES=OFF \
95+ -DCITRON_ENABLE_LTO=ON \
96+ -DCITRON_TESTS=OFF \
97+ -DENABLE_QT_TRANSLATION=ON \
98+ -DCMAKE_SYSTEM_PROCESSOR=" $( uname -m) " \
99+ -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
100+ -DCMAKE_C_FLAGS=" $ARCH_FLAGS " \
101+ -DCMAKE_CXX_FLAGS=" $ARCH_FLAGS -Wno-error -Wno-template-body -w"
102+ ninja
103+ sudo ninja install
104+ echo " $VERSION " > ~/version
105+ )
0 commit comments