Add static-compat packages for my other projects

This commit is contained in:
Martchus 2022-05-02 21:10:21 +02:00
parent 6066ade46f
commit b43022d7ec
4 changed files with 134 additions and 15 deletions

View File

@ -10,11 +10,10 @@ pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='C++ library to read/write passwords from/to encrypted files using AES-256-CBC via OpenSSL'
license=('GPL')
depends=('c++utilities' 'openssl')
depends=('c++utilities' 'openssl' 'zlib')
optdepends=("$pkgname-doc: API documentation")
makedepends=('cmake' 'ninja')
checkdepends=('cppunit')
optdepends=("$pkgname-doc: API documentation")
install=
url="https://github.com/Martchus/${_reponame}"
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")

View File

@ -0,0 +1,46 @@
# Maintainer: Martchus <martchus@gmx.net>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
_reponame=passwordfile
pkgname=static-compat-passwordfile
_name=${pkgname#static-compat-}
pkgver=5.0.7
pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='C++ library to read/write passwords from/to encrypted files using AES-256-CBC via OpenSSL'
license=('GPL')
depends=('static-compat-c++utilities' 'static-compat-openssl' 'static-compat-zlib')
optdepends=("$_name-doc: API documentation")
makedepends=('static-compat-cmake' 'ninja')
checkdepends=('static-compat-cppunit')
install=
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('03a0ced7ecfce18ec35104dedb73eec457875ff72859290c11616b36b2da0bbb')
build() {
check_buildoption ccache y && ccache_args='
-DCMAKE_C_COMPILER_LAUNCHER=ccache
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache'
source static-compat-environment
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"
static-compat-cmake \
-G Ninja \
-DCMAKE_BUILD_TYPE:STRING='Release' \
.
ninja
}
check() {
source static-compat-environment
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"
ninja check
}
package() {
source static-compat-environment
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"
DESTDIR="${pkgdir}" ninja install
}

View File

@ -0,0 +1,65 @@
# Maintainer: Martchus <martchus@gmx.net>
# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where
# you also find the URL of a binary repository.
# set whether the Qt Quick GUI should be enabled: set to either ON or OFF
_quick_gui=${PASSWORD_MANAGER_QUICK_GUI:-OFF}
_reponame=passwordmanager
pkgname=static-compat-passwordmanager
_name=${pkgname#static-compat-}
pkgver=4.1.9
pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
pkgdesc='A simple password store using AES-256-CBC encryption via OpenSSL'
license=('GPL')
depends=('static-compat-qt6-base' 'static-compat-qtutilities' 'static-compat-passwordfile')
makedepends=('static-compat-cmake' 'ninja' 'static-compat-qt6-svg' 'static-compat-qt6-wayland' 'static-compat-qt6-tools' 'static-compat-qt6-translations' 'breeze-icons' 'numix-icon-theme-git' 'clang')
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
sha256sums=('c2ad78bd57308a7424c4c856e7404f4bb3cdf23b83d98a7b0e6c03beaf008875')
# add further dependencies for the Qt Quick GUI (only kirigami2 is "pluggable")
if [[ $_quick_gui == ON ]]; then
depends+=('static-compat-qt6-declarative' 'static-compat-kirigami2')
fi
build() {
check_buildoption ccache y && ccache_args='
-DCMAKE_C_COMPILER_LAUNCHER=ccache
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache'
export CXXFLAGS+=' -static-libgcc -static-libstdc++'
export LDFLAGS+=' -static-libgcc -static-libstdc++'
source static-compat-environment
export PATH=$PWD:$PATH
printf '#!/usr/bin/bash\nexec /usr/bin/pkg-config --static "$@"\n' > pkg-config
chmod +x pkg-config
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"
static-compat-cmake -G Ninja \
$ccache_args \
-DCMAKE_SKIP_INSTALL_RPATH=ON \
-DQT_PACKAGE_PREFIX:STRING='Qt6' \
-DBUILTIN_TRANSLATIONS:BOOL=ON \
-DBUILTIN_TRANSLATIONS_OF_QT:BOOL=ON \
-DWEBVIEW_PROVIDER="${_webview_provider}" \
-DJS_PROVIDER="${_js_provider}" \
-DBUILTIN_ICON_THEMES:STRING='breeze;breeze-dark;Numix' \
-DIMAGE_FORMAT_SUPPORT:STRING='Gif;ICO;Jpeg' \
-DSVG_SUPPORT:BOOL=ON \
-DSVG_ICON_SUPPORT:BOOL=ON \
-DBoost_USE_STATIC_RUNTIME:BOOL=ON \
-DGLIB2_USE_PKG_CONFIG:BOOL=ON \
-DWAYLAND_USE_PKG_CONFIG:BOOL=ON \
-DCMAKE_DISABLE_FIND_PACKAGE_harfbuzz=TRUE \
-DQUICK_GUI="$_quick_gui" \
.
ninja
}
package() {
source static-compat-environment
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"
DESTDIR="${pkgdir}" ninja install
}

View File

@ -7,17 +7,17 @@
_webview_provider=${TAGEDITOR_WEBVIEW_PROVIDER:-none}
# set the JavaScript provider: either script, qml, auto or none
_js_provider=${TAGEDITOR_JS_PROVIDER:-none}
_js_provider=${TAGEDITOR_JS_PROVIDER:-qml}
# whether the Qt GUI is enabled: ON or OFF
_qt_gui=${TAGEDITOR_QT_GUI:-OFF}
_qt_gui=${TAGEDITOR_QT_GUI:-ON}
# whether the experimental JSON export is enabled: ON or OFF
_json_export=${TAGEDITOR_JSON_EXPORT:-OFF}
_reponame=tageditor
pkgname=static-compat-tageditor
_name=${pkgname#static-compat}
_name=${pkgname#static-compat-}
pkgver=3.7.0
pkgrel=1
arch=('i686' 'x86_64' 'armv6h' 'armv7h' 'aarch64')
@ -30,7 +30,7 @@ license=('GPL')
[[ $_js_provider == qml ]] && depends+=('qt6-declarative')
makedepends=('static-compat-cmake' 'static-compat-tagparser' 'ninja')
[[ $_json_export == ON ]] && makedepends+=('reflective-rapidjson')
[[ $_qt_gui == ON ]] && makedepends+=('static-compat-qtutilities' 'static-compat-xdg-utils' 'static-compat-qt6-tools' 'clang' 'mesa')
[[ $_qt_gui == ON ]] && makedepends+=('static-compat-qtutilities' 'static-compat-qt6-svg' 'static-compat-qt6-wayland' 'static-compat-qt6-tools' 'static-compat-qt6-translations' 'breeze-icons' 'numix-icon-theme-git' 'clang')
checkdepends=('static-compat-cppunit' 'jq')
url="https://github.com/Martchus/${_reponame}"
source=("${_name}-${pkgver}.tar.gz::https://github.com/Martchus/${_reponame}/archive/v${pkgver}.tar.gz")
@ -40,21 +40,30 @@ build() {
check_buildoption ccache y && ccache_args='
-DCMAKE_C_COMPILER_LAUNCHER=ccache
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache'
export CXXFLAGS+=' -static-libgcc -static-libstdc++'
export LDFLAGS+=' -static-libgcc -static-libstdc++'
source static-compat-environment
export PATH=$PWD:$PATH
printf '#!/usr/bin/bash\nexec /usr/bin/pkg-config --static "$@"\n' > pkg-config
chmod +x pkg-config
cd "$srcdir/${PROJECT_DIR_NAME:-$_reponame-$pkgver}"
static-compat-cmake \
-G Ninja \
-DCMAKE_BUILD_TYPE:STRING='Release' \
static-compat-cmake -G Ninja \
$ccache_args \
-DCMAKE_SKIP_INSTALL_RPATH=ON \
-DQT_PACKAGE_PREFIX:STRING='Qt6' \
-DBUILTIN_TRANSLATIONS:BOOL=ON \
-DBUILTIN_TRANSLATIONS_OF_QT:BOOL=ON \
-DWEBVIEW_PROVIDER="${_webview_provider}" \
-DWIDGETS_GUI="${_qt_gui}" \
-DQUICK_GUI=OFF \
-DJS_PROVIDER="${_js_provider}" \
-DENABLE_JSON_EXPORT="${_json_export}" \
-DREFLECTION_GENERATOR_EXECUTABLE:FILEPATH='/usr/bin/reflective_rapidjson_generator' \
-DSTATIC_LINKAGE:BOOL=ON \
-DNO_STATIC_ENFORCE:BOOL=ON \
-DBUILTIN_ICON_THEMES:STRING='breeze;breeze-dark;Numix' \
-DIMAGE_FORMAT_SUPPORT:STRING='Gif;ICO;Jpeg' \
-DSVG_SUPPORT:BOOL=ON \
-DSVG_ICON_SUPPORT:BOOL=ON \
-DBoost_USE_STATIC_RUNTIME:BOOL=ON \
-DGLIB2_USE_PKG_CONFIG:BOOL=ON \
-DWAYLAND_USE_PKG_CONFIG:BOOL=ON \
-DCMAKE_DISABLE_FIND_PACKAGE_harfbuzz=TRUE \
.
ninja
}