# Maintainer: Alexander F. Rødseth # Contributor: Sven-Hendrik Haase # Contributor: loqs # Contributor: Gabriel Souza Franco # Contributor: Florian Pritz # Contributor: Jonas Heinrich # Contributor: Jordi De Groof # Contributor: mickele # Contributor: manwithgrenade # Contributor: bricem13 # Contributor: gborzi # Contributor: Adrian Insaurralde # Contributor: Martin Rodriguez Reboredo # Contributor: Jamin Collins # ALARM: Kevin Mihelich # - remove makedepends on ospray buildarch=8 highmem=1 pkgname=freecad pkgver=1.0rc2 # https://gitlab.archlinux.org/archlinux/packaging/packages/freecad/-/issues/10#note_211023 pkgrel=1 pkgdesc='Feature based parametric 3D CAD modeler' arch=(x86_64) url='https://freecadweb.org/' license=(LGPL) depends=(asciidoctor boost-libs coin fmt glew jsoncpp libspnav med-openmpi netcdf opencascade openmpi pugixml pyside6 python-gitpython yaml-cpp python-markdown python-matplotlib python-pip python-pivy python-ply python-yaml qt6-svg qt6-tools qt6-webengine verdict xerces-c) makedepends=(boost cgns cmake eigen git libharu liblas ninja nlohmann-json openvdb openvr pdal postgresql-libs python-mpi4py shiboken6 swig utf8cpp dos2unix microsoft-gsl) optdepends=('graphviz: dependency graph support' 'opencamlib: CAM workbench support' 'openscad: OpenSCAD support') options=(!lto) source=("git+https://github.com/$pkgname/$pkgname#tag=$pkgver") b2sums=('39688b03ab2c5fb130cba0518ebbe5f1948836638459eebc4c37e6e39a6f505c1835250f7213095de04c89704a0a940cac976ab461a909496d237b31dc5a4245') prepare() { cd freecad git submodule update --init --recursive } build() { cmake \ -B build \ -D BUILD_FLAT_MESH=ON \ -D BUILD_ENABLE_CXX_STD=C++17 \ -D BUILD_DESIGNER_PLUGIN=ON \ -D CMAKE_BUILD_TYPE=Release \ -D CMAKE_C_FLAGS="$CFLAGS -fPIC -w" \ -D CMAKE_CXX_FLAGS="$CXXFLAGS -fPIC -w" \ -D CMAKE_INSTALL_BINDIR=/usr/lib/freecad/bin \ -D CMAKE_INSTALL_DATADIR=/usr/share/freecad \ -D CMAKE_INSTALL_DATAROOTDIR=/usr/share \ -D CMAKE_INSTALL_DOCDIR=/usr/share/freecad/doc \ -D CMAKE_INSTALL_LIBDIR=/usr/lib/freecad/lib \ -D CMAKE_INSTALL_PREFIX=/usr/lib/freecad \ -D FREECAD_USE_EXTERNAL_PIVY=ON \ -D FREECAD_USE_OCC_VARIANT='Official Version' \ -D FREECAD_USE_QT_FILEDIALOG=ON \ -D FREECAD_QT_VERSION=6 \ -D INSTALL_TO_SITEPACKAGES=ON \ -D PYTHON_EXECUTABLE=/usr/bin/python \ -G Ninja \ -S $pkgname \ -W no-dev ninja -C build } package() { DESTDIR="$pkgdir" ninja -C build install # tools install -Dm755 $pkgname/src/Tools/{$pkgname-thumbnailer,fcinfo} -t "$pkgdir/usr/bin/" # symlinks install -d "$pkgdir/usr/bin" ln -sf /usr/lib/freecad/bin/FreeCAD "$pkgdir/usr/bin/freecad" ln -sf /usr/lib/freecad/bin/FreeCAD "$pkgdir/usr/bin/FreeCAD" ln -sf /usr/lib/freecad/bin/FreeCADCmd "$pkgdir/usr/bin/freecadcmd" ln -sf /usr/lib/freecad/bin/FreeCADCmd "$pkgdir/usr/bin/FreeCADCmd" }