Package Details: rmlui 6.2-2

Git Clone URL: https://aur.archlinux.org/rmlui.git (read-only, click to copy)
Package Base: rmlui
Description: The HTML/CSS User Interface library evolved
Upstream URL: https://mikke89.github.io/RmlUiDoc/
Licenses: MIT
Submitter: twa022
Maintainer: HurricanePootis
Last Packager: HurricanePootis
Votes: 1
Popularity: 0.50
First Submitted: 2022-03-18 02:17 (UTC)
Last Updated: 2026-07-13 00:13 (UTC)

Latest Comments

HurricanePootis commented on 2026-06-16 09:31 (UTC) (edited on 2026-06-16 09:35 (UTC) by HurricanePootis)

Hey,

I've gone through this PKGBUILD, and I have a few suggestions:

  1. boost is no longer required by this package, nor is glu. I confirmed this by checking the deps required with namcap, and building the package in a extra-x86-64-build -c chroot, reiterating the PKGBUILD until I got everything precisely.
  2. Follow the CMake Packaging Guidelines more closely by building outside of the source code within a separate "${srcdir}/build" folder. Plus, with how the cmake command is, there is no reason to have a prepare() function that checks for a build folder and deletes it. This also means calling cmake instead of make directly.
  3. As part of 2, I also added -DCMAKE_BUILD_TYPE=None -DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG -DCMAKE_CXX_FLAGS=${CXXFLAGS} -DNDEBUG in order to remove any references to the $srcdir, which is warning makepkg gives.
diff --git a/PKGBUILD b/PKGBUILD
index d90d3f3..0f4229a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -8,34 +8,31 @@ pkgdesc="The HTML/CSS User Interface library evolved"
 arch=('i686' 'x86_64' 'aarch64' 'armv7h')
 url="https://mikke89.github.io/RmlUiDoc/"
 license=('MIT')
-depends=('boost-libs' 'freetype2' 'libgl' 'glu')
-makedepends=('cmake' 'mesa' 'boost' 'luajit')
+depends=('libgcc' 'libstdc++' 'glibc' 'freetype2')
+makedepends=('cmake' 'mesa' 'luajit')
 optdepends=('luajit: Lua bindings')
 source=("${pkgname}-${pkgver}.tar.gz::https://github.com/mikke89/RmlUi/archive/${pkgver}.tar.gz")
 sha256sums=('814c3ff7b9666280338d8f0dda85979f5daf028d01c85fc8975431d1e2fd8e8b')

-prepare() {
-  cd "${_pkgname}-${pkgver}"
-  [ -d build ] && rm -fr build
-  mkdir build
-}
-  
 build() {
-  cd "${_pkgname}-${pkgver}"/build
-  cmake  \
+  cd "${srcdir}"
+  cmake  -B build -S "${_pkgname}-${pkgver}" \
     -DCMAKE_INSTALL_PREFIX="/usr" \
     -DCMAKE_INSTALL_LIBDIR=/usr/lib \
     -DRMLUI_SAMPLES=OFF \
     -DRMLUI_LUA_BINDINGS=ON \
     -DRMLUI_LUA_BINDINGS_LIBRARY=luajit \
-    ..
-  make
+    -DCMAKE_BUILD_TYPE=None \
+    -DCMAKE_C_FLAGS="${CFLAGS} -DNDEBUG" \
+    -DCMAKE_CXX_FLAGS="${CXXFLAGS} -DNDEBUG"
+
+  cmake --build build
 }

 package() {
-  cd "${_pkgname}-${pkgver}"
-  make -C build install DESTDIR="${pkgdir}"
+  cd "${srcdir}"
+  DESTDIR="${pkgdir}" cmake --install build

   # license
-  install -Dm644 LICENSE.txt "${pkgdir}"/usr/share/licenses/"${pkgname}"/LICENSE
+  install -Dm644 ${_pkgname}-${pkgver}/LICENSE.txt "${pkgdir}"/usr/share/licenses/"${pkgname}"/LICENSE
 }

Feel free to take a look