156 lines
3.9 KiB
Bash
156 lines
3.9 KiB
Bash
# POWER Maintainer: Alexander Baldeck <alex.bldck@gmail.com>
|
|
# Maintainer: Antonio Rojas <arojas@archlinux.org>
|
|
|
|
pkgbase=avogadrolibs
|
|
pkgname=(avogadrolibs
|
|
avogadrolibs-qt5)
|
|
pkgver=1.100.0
|
|
pkgrel=1
|
|
pkgdesc='Libraries that provide 3D rendering, visualization, analysis and data processing useful in computational chemistry, molecular modeling, bioinformatics, materials science, and related areas'
|
|
arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
|
|
url='https://www.openchemistry.org/'
|
|
license=(custom)
|
|
makedepends=(boost
|
|
cmake
|
|
eigen
|
|
fast_float
|
|
fmt
|
|
git
|
|
hdf5
|
|
genxrdpattern
|
|
glew
|
|
libmsym
|
|
mmtf-cpp
|
|
nlohmann-json
|
|
openmpi
|
|
pybind11
|
|
python
|
|
spglib
|
|
tbb
|
|
utf8cpp
|
|
verdict
|
|
vtk)
|
|
makedepends_powerpc=(
|
|
qt6-svg
|
|
qt6-tools
|
|
)
|
|
makedepends_powerpc64=(
|
|
qt5-svg
|
|
qt5-tools
|
|
)
|
|
makedepends_powerpc64le=(
|
|
qt5-svg
|
|
qt5-tools
|
|
)
|
|
makedepends_riscv64=(
|
|
qt5-svg
|
|
qt5-tools
|
|
)
|
|
makedepends_x86_64=(
|
|
qt5-svg
|
|
qt5-tools
|
|
)
|
|
|
|
source=(git+https://github.com/OpenChemistry/avogadrolibs#tag=$pkgver)
|
|
sha256sums=('468e577097cd30f1f5c7339ece95278fe7d890f4eba440688d2b5953214de685')
|
|
|
|
prepare() {
|
|
mkdir crystals fragments molecules # Dummy dirs to trick cmake, actually provided by avogadro-{crystals,fragments,molecules}
|
|
}
|
|
|
|
build() {
|
|
case "${CARCH}" in
|
|
powerpc)
|
|
_cmake_options=(-DQT_VERSION=6)
|
|
;;
|
|
powerpc64)
|
|
export CFLAGS='-O2 -pipe'
|
|
export CXXFLAGS='-O2 -pipe'
|
|
_cmake_options=(-DQT_VERSION=5)
|
|
;;
|
|
*)
|
|
_cmake_options=(-DQT_VERSION=5)
|
|
;;
|
|
esac
|
|
|
|
cmake -B build -S $pkgname \
|
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DCMAKE_C_FLAGS="$CFLAGS -ffat-lto-objects" \
|
|
-DCMAKE_CXX_FLAGS="$CXXFLAGS -ffat-lto-objects" \
|
|
-DENABLE_TRANSLATIONS=ON \
|
|
-DUSE_HDF5=ON \
|
|
-DUSE_VTK=ON \
|
|
-DUSE_PYTHON=ON \
|
|
-DUSE_SYSTEM_GENXRDPATTERN=ON \
|
|
-DUSE_EXTERNAL_NLOHMANN=ON \
|
|
-DUSE_EXTERNAL_PUGIXML=ON ${_cmake_options[@]}
|
|
cmake --build build
|
|
}
|
|
|
|
package_avogadrolibs() {
|
|
depends=(avogadro-crystals
|
|
avogadro-fragments
|
|
avogadro-molecules
|
|
gcc-libs
|
|
glew
|
|
glibc
|
|
hdf5
|
|
libglvnd
|
|
molequeue
|
|
pugixml
|
|
spglib
|
|
verdict)
|
|
optdepends=('avogadrolibs-qt5: For the VTK and Qt plugins')
|
|
|
|
DESTDIR="$pkgdir" cmake --install build
|
|
rm -r "$pkgdir"/usr/lib/libAvogadroQt* \
|
|
"$pkgdir"/usr/lib/libAvogadroMoleQueue* \
|
|
"$pkgdir"/usr/lib/libAvogadroVtk* \
|
|
"$pkgdir"/usr/include/avogadro/{molequeue,qt*,vtk} \
|
|
"$pkgdir"/usr/lib/avogadro2/{scripts,staticplugins}
|
|
|
|
install -Dm644 $pkgname/LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
|
|
}
|
|
|
|
package_avogadrolibs-qt5() {
|
|
pkgdesc="Qt 5 modules for Avogadro"
|
|
depends=(avogadrolibs
|
|
fmt # needed by VTK dependencies
|
|
gcc-libs
|
|
glew
|
|
glibc
|
|
libarchive
|
|
libglvnd
|
|
libmsym
|
|
libxcursor # needed by VTK dependencies
|
|
openmpi # needed by VTK dependencies
|
|
vtk)
|
|
depends_powerpc=(
|
|
qt6-base
|
|
qt6-svg
|
|
)
|
|
depends_powerpc64=(
|
|
qt5-base
|
|
qt5-svg
|
|
)
|
|
depends_powerpc64le=(
|
|
qt5-base
|
|
qt5-svg
|
|
)
|
|
depends_riscv64=(
|
|
qt5-base
|
|
qt5-svg
|
|
)
|
|
depends_x86_6464=(
|
|
qt5-base
|
|
qt5-svg
|
|
)
|
|
DESTDIR="$pkgdir" cmake --install build/avogadro/molequeue
|
|
DESTDIR="$pkgdir" cmake --install build/avogadro/qtgui
|
|
DESTDIR="$pkgdir" cmake --install build/avogadro/qtopengl
|
|
DESTDIR="$pkgdir" cmake --install build/avogadro/qtplugins
|
|
DESTDIR="$pkgdir" cmake --install build/avogadro/vtk
|
|
|
|
install -Dm644 $pkgbase/LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
|
|
}
|