Konstantin Podsvirov dbbf096d0f update contact info
2025-03-25 19:27:33 +03:00

106 lines
4.0 KiB
Bash

# Maintainer: Konstantin Podsvirov <konstantin@podsvirov.su>
_realname=pgmodeler
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}"
"${MINGW_PACKAGE_PREFIX}-${_realname}-plugins")
pkgver=1.1.6
_plugsha=26070ea470c7d569e6b94b1e28e6d330f91ab030
pkgrel=1
pkgdesc="PostgreSQL Database Modeler: an open source CASE tool for modeling PostgreSQL databases (mingw-w64)"
url="https://pgmodeler.io"
msys2_repository_url="https://github.com/pgmodeler/pgmodeler"
license=('GPL3')
arch=('any')
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
depends=("${MINGW_PACKAGE_PREFIX}-libxml2"
"${MINGW_PACKAGE_PREFIX}-postgresql"
"${MINGW_PACKAGE_PREFIX}-qt6-svg")
optdepends=("${MINGW_PACKAGE_PREFIX}-${_realname}-plugins: official plugins")
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
"${MINGW_PACKAGE_PREFIX}-qt6-tools")
source=("${msys2_repository_url}/archive/v${pkgver}/${_realname}-${pkgver}.tar.gz"
"https://github.com/pgmodeler/plugins/archive/${_plugsha}/plugins-${_plugsha}.tar.gz"
'0001-pgmodeler-1.0.2-libgui-inc.patch'
'0002-pgmodeler-1.0.2-no-check-update.patch'
'0003-pgmodeler-1.0.2-fix-global-attributes.patch')
sha256sums=('4ffe1bb7ab96bf66b3188d0bd3bf378b5c4b670659739928a6c68482bf9fff6f'
'1ee0907975f35c5ee95cda4a549356c33e60d3d26b153cd2287992d8dd68d67f'
'f658ed0129b0402c8d91b44f62498e35f9c1af87ae14ae1a4030f0b9e7b8bf78'
'ceae3c5dadf80754ffdea133a53a1bd28bca9e837af0c495d52f5651c8e89fef'
'4a1d58a746fab7ac852014abae85ecf8312b5f52d9282c766290e63637b1447a')
prepare() {
cd "${srcdir}"/${_realname}-${pkgver}
patch -Np1 -i "${srcdir}"/0001-pgmodeler-1.0.2-libgui-inc.patch
patch -Np1 -i "${srcdir}"/0002-pgmodeler-1.0.2-no-check-update.patch
patch -Np1 -i "${srcdir}"/0003-pgmodeler-1.0.2-fix-global-attributes.patch
cp -r "${srcdir}"/plugins-${_plugsha} "${srcdir}"/${_realname}-${pkgver}/plugins
}
build() {
msg2 "Will be in future"
}
package_pgmodeler() {
cd "${srcdir}"/${_realname}-${pkgver}
"${MINGW_PREFIX}"/bin/qmake6.exe CONFIG+=release \
PREFIX="${pkgdir}${MINGW_PREFIX}" \
BINDIR="${pkgdir}${MINGW_PREFIX}"/bin \
PRIVATEBINDIR="${pkgdir}${MINGW_PREFIX}"/bin \
PRIVATELIBDIR="${pkgdir}${MINGW_PREFIX}"/bin \
PLUGINSDIR="${pkgdir}${MINGW_PREFIX}"/lib/pgmodeler/plugins \
CONFDIR="${pkgdir}${MINGW_PREFIX}"/etc/pgmodeler \
SHAREDIR="${pkgdir}${MINGW_PREFIX}"/share/pgmodeler \
DOCDIR="${pkgdir}${MINGW_PREFIX}"/share/doc/pgmodeler \
LANGDIR="${pkgdir}${MINGW_PREFIX}"/share/pgmodeler/lang \
SAMPLESDIR="${pkgdir}${MINGW_PREFIX}"/share/pgmodeler/samples \
SCHEMASDIR="${pkgdir}${MINGW_PREFIX}"/share/pgmodeler/schemas \
PGSQL_LIB="${MINGW_PREFIX}"/bin/libpq.dll \
PGSQL_INC="${MINGW_PREFIX}"/include \
XML_INC="${MINGW_PREFIX}"/include/libxml2 \
XML_LIB="${MINGW_PREFIX}"/bin/libxml2-2.dll \
NO_UPDATE_CHECK=MSYS2doesthis \
QMAKE_CXXFLAGS_RELEASE+="${CXXFLAGS} ${CPPFLAGS}" \
pgmodeler.pro
make
make INSTALL_ROOT="" install
rm "${pkgdir}${MINGW_PREFIX}/bin/"lib*.dll.a
rm "${pkgdir}${MINGW_PREFIX}/share/doc/${_realname}/"{LICENSE,README.md}
install -Dm644 LICENSE "${pkgdir}"${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE
# split plugins
rm -rf "dest${MINGW_PREFIX}" && mkdir -p "dest${MINGW_PREFIX}"
mv "${pkgdir}${MINGW_PREFIX}/lib" "dest${MINGW_PREFIX}/lib"
}
package_pgmodeler-plugins() {
cd "${srcdir}"/${_realname}-${pkgver}
pkgdesc+=" (plugins)"
depends=("${MINGW_PACKAGE_PREFIX}-${_realname}=${pkgver}")
optdepends=()
mv dest/* "${pkgdir}"
}
# template start; name=mingw-w64-splitpkg-wrappers; version=1.0;
# vim: set ft=bash :
# generate wrappers
for _name in "${pkgname[@]}"; do
_short="package_${_name#${MINGW_PACKAGE_PREFIX}-}"
_func="$(declare -f "${_short}")"
eval "${_func/#${_short}/package_${_name}}"
done
# template end;