Skip to content

Commit 43f6ad3

Browse files
authored
build citron manually again, drop qt6-webengine, add gdk-pixbuf2-mini (#73)
1 parent 69b270f commit 43f6ad3

File tree

2 files changed

+38
-30
lines changed

2 files changed

+38
-30
lines changed

citron-appimage.sh

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,6 @@ wget --retry-connrefused --tries=30 "$SHARUN" -O ./quick-sharun
2424
chmod +x ./quick-sharun
2525
./quick-sharun /usr/bin/citron* /usr/lib/libgamemode.so* /usr/lib/libpulse.so*
2626

27-
# TODO: remove me once we can build citron again without qt6-webengine nonsense
28-
cp -rv /usr/share/qt6/resources ./AppDir/shared/lib/qt6
29-
cp -rv /usr/share/qt6/translations ./AppDir/shared/lib/qt6
30-
3127
if [ "$DEVEL" = 'true' ]; then
3228
sed -i 's|Name=citron|Name=citron nightly|' ./AppDir/*.desktop
3329
UPINFO="$(echo "$UPINFO" | sed 's|latest|nightly|')"

get-dependencies.sh

Lines changed: 38 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -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..."
4748
echo "---------------------------------------------------------------"
4849
wget --retry-connrefused --tries=30 "$EXTRA_PACKAGES" -O ./get-debloated-pkgs.sh
4950
chmod +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

5253
echo "Building citron..."
5354
echo "---------------------------------------------------------------"
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

5856
if [ "$1" = 'v3' ] && [ "$ARCH" = 'x86_64' ]; then
5957
echo "Making x86-64-v3 optimized build of citron..."
@@ -66,28 +64,42 @@ else
6664
ARCH_FLAGS="-march=armv8-a -mtune=generic -O3"
6765
fi
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

Comments
 (0)