diff options
author | Aqua-sama <aqua@iserlohn-fortress.net> | 2020-12-09 22:13:05 +0200 |
---|---|---|
committer | Aqua-sama <aqua@iserlohn-fortress.net> | 2020-12-10 13:44:19 +0200 |
commit | dec4c4cdb1c244a15846e1460958d7c76d65591c (patch) | |
tree | 8e592c8ee5caa22339ca850537b8000ad91c9879 /linux/makepkg | |
parent | Use custom icons in webviewcontextmenu (diff) | |
download | smolbote-dec4c4cdb1c244a15846e1460958d7c76d65591c.tar.xz |
Update PKGBUILD to build with cmake
Diffstat (limited to 'linux/makepkg')
-rw-r--r-- | linux/makepkg/PKGBUILD | 94 |
1 files changed, 22 insertions, 72 deletions
diff --git a/linux/makepkg/PKGBUILD b/linux/makepkg/PKGBUILD index 5bcf684..f262530 100644 --- a/linux/makepkg/PKGBUILD +++ b/linux/makepkg/PKGBUILD @@ -3,8 +3,6 @@ ## not-use flags # Enable plugin signing: _signPlugins=0 -# Enable breakpad integraton: -_enableBreakpad=0 # install prefix _prefix='/usr/local' @@ -13,97 +11,49 @@ pkgdesc='Yet another no-frills browser' pkgver=0 pkgrel=1 -url="https://neueland.iserlohn-fortress.net/gitea/smolbote" -install="smolbote.install" +url="https://neueland.iserlohn-fortress.net/cgit/smolbote" arch=('x86_64' 'aarch64') license=('GPL3') depends=('qt5-svg' 'qt5-webengine>=5.11.0' 'spdlog') -makedepends=('git' 'meson' 'python-kconfiglib' 'openssl' 'qt5-tools' 'scdoc' 'catch2') -if [ $_enableBreakpad == "1" ]; then - makedepends+=('breakpad-git') -fi +makedepends=('git' 'cmake' 'python-kconfiglib' 'openssl' 'qt5-tools' 'scdoc' 'catch2') optdepends=('firejail: launch a sandboxed instance') -# use git+file:///path/to/your/repo to build from a local repo -source=("git+https://neueland.iserlohn-fortress.net/cgit/smolbote" - "https://neueland.iserlohn-fortress.net/releases/SingleApplication-3.1.1a.tar.xz"{,.sig} - "https://neueland.iserlohn-fortress.net/releases/args.hxx-6.2.2.tar.xz"{,.sig}) +# use git+file:///path/to/your/repo#branch=devel to build from a local repo +source=("git+git://neueland.iserlohn-fortress.net/cgit/smolbote#branch=devel" + "https://github.com/itay-grudev/SingleApplication/archive/v3.1.5.tar.gz" + "https://neueland.iserlohn-fortress.net/cgit/rcc/snapshot/rcc-0.1.2.tar.xz" + "https://github.com/tabler/tabler-icons/archive/v1.34.0.tar.gz") -b2sums=('SKIP' - 'cec3de8dbf252bfa6dc488e5a1440695f4dd3abffdf30948b7d1a3df3d9c85911e981c802ed5a882f1407315114529f4016e55c7d05fbbd1dafe5495b0a63f4a' - 'SKIP' - '440e357006883fbf1b1a796051500a6b068858a35947cd1119767bed8e0a86a7db4aff16498934d7217c375fe643da03c22007e438f30899e247153f25c922b6' - 'SKIP') - -validgpgkeys=(BB1C090188E3E32B375C13FD095DE26BC16D2E98) # Aqua-sama <aqua@iserlohn-fortress.net> +sha256sums=('SKIP' + '09b1e088dae8cf69187262554819b77f4ca7b65576b3f39c5b6885823e8a2dbb' + '5ee18b94401b720e6e65d8e0e38dd6ea23cab7ae4727742be313530969a69d50' + 'bc74e5bd28531445f2e50df44f3688b1116397a25a0086e6944ab52260b70ffd' +) prepare() { - mkdir "$srcdir/smolbote/subprojects/packagecache/" - ln -s "$srcdir/SingleApplication-3.1.1a" "$srcdir/smolbote/subprojects/" - ln -s "$srcdir/args.hxx-6.2.2" "$srcdir/smolbote/subprojects/" - - cd $srcdir/smolbote - KCONFIG_CONFIG=linux/.config alldefconfig + mkdir "$srcdir/smolbote-devel/third-party" + ln -s "$srcdir/SingleApplication-3.1.5" "$srcdir/smolbote-devel/third-party/" + ln -s "$srcdir/rcc-0.1.2" "$srcdir/smolbote-devel/third-party/" + ln -s "$srcdir/tabler-icons-1.34.0" "$srcdir/smolbote-devel/third-party/" + ln -s "$srcdir/smolbote-devel/linux/.config" "$srcdir/smolbote-devel/" } pkgver() { - cd smolbote + cd "$srcdir/smolbote-devel" # Without version tag echo r$(git rev-list --count HEAD)-$(git rev-parse --short HEAD) | sed 's/\([^-]*-g\)/r\1/;s/-/./g' } build() { - mkdir -p $srcdir/build - - # For a list of configureable options, check smolbote/meson_options.txt, or run `meson configure` in $srcdir/build - - # --wrap-mode=nodownload - disable meson from downloading dependency wraps. This will cause it to fail if makedepends are not found by pkg-config or cmake. - # --wrap-mode=nofallback - disable downloads as a fallback too. Implies --wrap-mode=nodownload - # --buildtype=plain - meson won't add any flags to the command line - # --prefix=... - install prefix - # --auto-features=disabled - features should be explicitly enabled - # b_pie: Build executables as position independent - # b_lto: Use link time optimization - meson setup \ - --buildtype=plain --prefix=$_prefix --wrap-mode=nodownload --auto-features=disabled \ - -Db_pie=true -Ddefault_library=static \ - -Dmanpage=true \ - $srcdir/smolbote $srcdir/build + cmake -B build -S "smolbote-devel" -DVCS_TAG=OFF -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_INSTALL_PREFIX=$_prefix + make -C build - if [ $_enableBreakpad == "1" ]; then - msg2 "Enabling crashhandler" - meson configure -Ddebug=true -Dcrashhandler=enabled - KCONFIG_CONFIG=linux/.config setconfig USEBREAKPAD=y - fi - - # Build - ninja -C $srcdir/build } -#check() { -# ninja -C $srcdir/build test -#} - package() { - # Install - cd $srcdir/build - DESTDIR="$pkgdir" ninja install - - if [ $_signPlugins == "1" ]; then - msg "Signing plugins" - for so in $pkgdir/$_prefix/lib/smolbote/plugins/*.so; do - openssl dgst -sha256 -sign $srcdir/build/lib/pluginloader/privateKey.pem -out $so.sig $so - msg2 "Signed $(basename $so)" - done - fi - - if [ $_enableBreakpad == "1" ]; then - msg "Installing debug symbols" - ninja -C $srcdir/build linux/poi.sym - install -dm644 $pkgdir/$_prefix/lib/smolbote/symbols/poi/$(head -n1 linux/poi.sym | awk '{ print $(NF-1) }') - install -m644 -t $pkgdir/$_prefix/lib/smolbote/symbols/poi/$(head -n1 linux/poi.sym | awk '{ print $(NF-1) }') $srcdir/build/linux/poi.sym - fi + make DESTDIR="$pkgdir" -C build install } |