Compare commits
10 commits
54b068a5da
...
d2457d806e
Author | SHA1 | Date | |
---|---|---|---|
|
d2457d806e | ||
|
a0b12aade0 | ||
|
8667fd6a3b | ||
|
15eb519d18 | ||
|
4ac518c3b0 | ||
|
f8553cc7fa | ||
|
f643cde5af | ||
|
cbe287b593 | ||
|
9d76b840d3 | ||
|
44c45e84a1 |
2 changed files with 58 additions and 82 deletions
33
.SRCINFO
33
.SRCINFO
|
@ -1,52 +1,47 @@
|
||||||
pkgbase = freecad-git
|
pkgbase = freecad-git
|
||||||
pkgdesc = A general purpose 3D CAD modeler - git checkout
|
pkgdesc = A general purpose 3D CAD modeler - git checkout
|
||||||
pkgver = 0.21.0.31043.g7a8a453746
|
pkgver = 0.22.0.36999.ged77603af9
|
||||||
pkgrel = 1
|
pkgrel = 1
|
||||||
url = https://www.freecad.org/
|
url = https://www.freecad.org/
|
||||||
arch = x86_64
|
arch = x86_64
|
||||||
license = LGPL
|
license = LGPL
|
||||||
checkdepends = fmt
|
|
||||||
checkdepends = pugixml
|
checkdepends = pugixml
|
||||||
makedepends = boost
|
makedepends = boost
|
||||||
makedepends = cmake
|
makedepends = cmake
|
||||||
makedepends = coin
|
|
||||||
makedepends = eigen
|
makedepends = eigen
|
||||||
makedepends = git
|
makedepends = git
|
||||||
makedepends = ninja
|
makedepends = ninja
|
||||||
makedepends = python-shiboken2
|
makedepends = nlohmann-json
|
||||||
makedepends = shiboken2
|
makedepends = shiboken6
|
||||||
makedepends = swig
|
makedepends = swig
|
||||||
depends = boost-libs
|
depends = boost-libs
|
||||||
|
depends = coin
|
||||||
|
depends = fmt
|
||||||
depends = glew
|
depends = glew
|
||||||
depends = jsoncpp
|
depends = jsoncpp
|
||||||
depends = med
|
depends = med
|
||||||
depends = netcdf
|
depends = netcdf
|
||||||
depends = opencascade
|
depends = opencascade
|
||||||
depends = openmpi
|
depends = openmpi
|
||||||
depends = pyside2
|
depends = pyside6
|
||||||
depends = pyside2-tools
|
depends = pyside6-tools
|
||||||
depends = python-yaml
|
depends = python-yaml
|
||||||
depends = python-matplotlib
|
depends = python-matplotlib
|
||||||
depends = python-packaging
|
depends = python-packaging
|
||||||
depends = python-pivy
|
depends = python-pivy
|
||||||
depends = python-ply
|
depends = python-ply
|
||||||
depends = qt5-svg
|
depends = qt6-svg
|
||||||
depends = qt5-tools
|
depends = qt6-tools
|
||||||
depends = qt5-webengine
|
depends = qt6-base
|
||||||
depends = qt5-webchannel
|
depends = qt6-5compat
|
||||||
depends = qt5-x11extras
|
|
||||||
depends = qt5-xmlpatterns
|
|
||||||
depends = qt5-base
|
|
||||||
depends = shared-mime-info
|
depends = shared-mime-info
|
||||||
depends = xerces-c
|
|
||||||
depends = vtk
|
depends = vtk
|
||||||
optdepends = povray: ray tracing support
|
depends = verdict
|
||||||
optdepends = luxcorerender: ray tracing support
|
depends = xerces-c
|
||||||
|
depends = yaml-cpp
|
||||||
optdepends = libspnav: 3D mouse support
|
optdepends = libspnav: 3D mouse support
|
||||||
optdepends = openscad: OpenSCAD support
|
optdepends = openscad: OpenSCAD support
|
||||||
optdepends = graphviz: dependency graph support
|
optdepends = graphviz: dependency graph support
|
||||||
optdepends = python-markdown: markdown support in addon manager
|
|
||||||
optdepends = python-gitpython: support downloading addons with git
|
|
||||||
optdepends = python-pip: support installing python dependencies for addons
|
optdepends = python-pip: support installing python dependencies for addons
|
||||||
optdepends = calculix-ccx: FEM solver backend
|
optdepends = calculix-ccx: FEM solver backend
|
||||||
provides = freecad
|
provides = freecad
|
||||||
|
|
107
PKGBUILD
107
PKGBUILD
|
@ -2,7 +2,7 @@
|
||||||
# Maintainer: Adrian Insaurralde <adrianinsaval at gmail dot com>
|
# Maintainer: Adrian Insaurralde <adrianinsaval at gmail dot com>
|
||||||
|
|
||||||
pkgname=freecad-git
|
pkgname=freecad-git
|
||||||
pkgver=0.21.0.31043.g7a8a453746
|
pkgver=1.0rc1
|
||||||
pkgrel=1
|
pkgrel=1
|
||||||
pkgdesc='A general purpose 3D CAD modeler - git checkout'
|
pkgdesc='A general purpose 3D CAD modeler - git checkout'
|
||||||
arch=('x86_64')
|
arch=('x86_64')
|
||||||
|
@ -10,118 +10,99 @@ url='https://www.freecad.org/'
|
||||||
license=('LGPL')
|
license=('LGPL')
|
||||||
depends=(
|
depends=(
|
||||||
boost-libs
|
boost-libs
|
||||||
|
coin
|
||||||
|
fmt
|
||||||
glew
|
glew
|
||||||
jsoncpp
|
jsoncpp
|
||||||
med
|
med
|
||||||
netcdf
|
netcdf
|
||||||
opencascade
|
opencascade
|
||||||
openmpi
|
openmpi
|
||||||
pyside2
|
pyside6
|
||||||
pyside2-tools
|
pyside6-tools
|
||||||
python-yaml
|
python-yaml
|
||||||
python-matplotlib
|
python-matplotlib
|
||||||
python-packaging
|
python-packaging
|
||||||
python-pivy
|
python-pivy
|
||||||
python-ply
|
python-ply
|
||||||
qt5-svg
|
qt6-svg
|
||||||
qt5-tools
|
qt6-tools
|
||||||
qt5-webengine
|
qt6-base
|
||||||
qt5-webchannel
|
qt6-5compat
|
||||||
qt5-x11extras
|
|
||||||
qt5-xmlpatterns
|
|
||||||
qt5-base
|
|
||||||
shared-mime-info
|
shared-mime-info
|
||||||
xerces-c
|
|
||||||
vtk
|
vtk
|
||||||
|
verdict
|
||||||
|
xerces-c
|
||||||
|
yaml-cpp
|
||||||
)
|
)
|
||||||
makedepends=(
|
makedepends=(
|
||||||
boost
|
boost
|
||||||
cmake
|
cmake
|
||||||
coin
|
|
||||||
eigen
|
eigen
|
||||||
git
|
git
|
||||||
ninja
|
ninja
|
||||||
python-shiboken2
|
nlohmann-json
|
||||||
shiboken2
|
shiboken6
|
||||||
swig
|
swig
|
||||||
)
|
)
|
||||||
checkdepends=(
|
checkdepends=(
|
||||||
fmt
|
|
||||||
pugixml
|
pugixml
|
||||||
)
|
)
|
||||||
optdepends=(
|
optdepends=(
|
||||||
'povray: ray tracing support'
|
|
||||||
'luxcorerender: ray tracing support'
|
|
||||||
'libspnav: 3D mouse support'
|
'libspnav: 3D mouse support'
|
||||||
'openscad: OpenSCAD support'
|
'openscad: OpenSCAD support'
|
||||||
'graphviz: dependency graph support'
|
'graphviz: dependency graph support'
|
||||||
'python-markdown: markdown support in addon manager'
|
|
||||||
'python-gitpython: support downloading addons with git'
|
|
||||||
'python-pip: support installing python dependencies for addons'
|
'python-pip: support installing python dependencies for addons'
|
||||||
'calculix-ccx: FEM solver backend'
|
'calculix-ccx: FEM solver backend'
|
||||||
)
|
)
|
||||||
provides=('freecad')
|
provides=('freecad')
|
||||||
conflicts=('freecad' 'freecad-appimage' 'freecad-appimage-git')
|
conflicts=('freecad' 'freecad-appimage' 'freecad-appimage-git')
|
||||||
source=("git+https://github.com/FreeCAD/FreeCAD.git")
|
source=("git+https://github.com/FreeCAD/FreeCAD.git#tag=$pkgver")
|
||||||
md5sums=('SKIP')
|
md5sums=('SKIP')
|
||||||
|
|
||||||
pkgver() {
|
|
||||||
cd FreeCAD
|
|
||||||
read -d$'/n' -r major minor patch < <(grep -Po "set\(PACKAGE_VERSION_(MAJOR|MINOR|PATCH) \"\K[0-9]*" CMakeLists.txt) || true
|
|
||||||
count=$((24266 + $(git rev-list --count d29fd7d..HEAD) ))
|
|
||||||
hash=$(git rev-parse --short HEAD)
|
|
||||||
printf "%d.%d.%d.%d.g%s" "$major" "$minor" "$patch" "$count" "$hash"
|
|
||||||
}
|
|
||||||
|
|
||||||
prepare() {
|
prepare() {
|
||||||
cd FreeCAD
|
cd FreeCAD
|
||||||
|
git submodule update --init
|
||||||
}
|
}
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
cd FreeCAD
|
cmake \
|
||||||
|
-B build \
|
||||||
cmake -Wno-dev -G Ninja -B build -S . \
|
|
||||||
-D BUILD_ENABLE_CXX_STD=C++17 \
|
|
||||||
-D BUILD_FEM=ON \
|
|
||||||
-D BUILD_MESH=ON \
|
|
||||||
-D BUILD_FLAT_MESH=ON \
|
-D BUILD_FLAT_MESH=ON \
|
||||||
-D BUILD_MESH_PART=ON \
|
|
||||||
-D BUILD_SHIP=ON \
|
|
||||||
-D BUILD_DESIGNER_PLUGIN=ON \
|
-D BUILD_DESIGNER_PLUGIN=ON \
|
||||||
-D CMAKE_BUILD_TYPE=None \
|
-D FREECAD_QT_VERSION=6 \
|
||||||
-D CMAKE_C_FLAGS="${CFLAGS} -fPIC -w" \
|
-D CMAKE_BUILD_TYPE=Release \
|
||||||
-D CMAKE_CXX_FLAGS="${CXXFLAGS} -fPIC -w" \
|
-D CMAKE_C_FLAGS="$CFLAGS -ffat-lto-objects -fPIC -w" \
|
||||||
|
-D CMAKE_CXX_FLAGS="$CXXFLAGS -ffat-lto-objects -fPIC -w" \
|
||||||
|
-D CMAKE_INSTALL_DATADIR=/usr/share/freecad \
|
||||||
|
-D CMAKE_INSTALL_DATAROOTDIR=/usr/share \
|
||||||
|
-D CMAKE_INSTALL_DOCDIR=/usr/share/freecad/doc \
|
||||||
|
-D CMAKE_INSTALL_PREFIX=/usr/lib/freecad \
|
||||||
-D FREECAD_USE_EXTERNAL_PIVY=ON \
|
-D FREECAD_USE_EXTERNAL_PIVY=ON \
|
||||||
-D FREECAD_USE_QT_FILEDIALOG=ON \
|
-D FREECAD_USE_QT_FILEDIALOG=ON \
|
||||||
-D PYTHON_EXECUTABLE=/usr/bin/python \
|
|
||||||
-D INSTALL_TO_SITEPACKAGES=ON \
|
-D INSTALL_TO_SITEPACKAGES=ON \
|
||||||
-D CMAKE_INSTALL_PREFIX='/usr/lib/freecad' \
|
-D ENABLE_DEVELOPER_TESTS=OFF \
|
||||||
-D CMAKE_INSTALL_DATADIR='../../share/freecad' \
|
-G Ninja \
|
||||||
-D CMAKE_INSTALL_DATAROOTDIR='../../share' \
|
-S FreeCAD \
|
||||||
-D CMAKE_INSTALL_DOCDIR='../../doc/freecad'
|
-W no-dev
|
||||||
|
ninja -C build
|
||||||
cmake --build build
|
|
||||||
}
|
}
|
||||||
|
|
||||||
check() {
|
# check() {
|
||||||
cd FreeCAD/build
|
# cd build
|
||||||
LD_LIBRARY_PATH=lib bin/FreeCADCmd --console --run-test 0
|
# LD_LIBRARY_PATH=lib bin/FreeCADCmd --console --run-test 0
|
||||||
}
|
# }
|
||||||
|
|
||||||
package() {
|
package() {
|
||||||
cd FreeCAD
|
DESTDIR="$pkgdir" ninja -C build install
|
||||||
DESTDIR="${pkgdir}" cmake --install build
|
|
||||||
|
|
||||||
# package thumbnailer
|
# tools
|
||||||
install src/Tools/freecad-thumbnailer "${pkgdir}/usr/lib/freecad/bin/freecad-thumbnailer"
|
install -Dm755 FreeCAD/src/Tools/{freecad-thumbnailer,fcinfo} -t "$pkgdir/usr/bin/"
|
||||||
|
|
||||||
# links for bin
|
# symlinks
|
||||||
mkdir -p "${pkgdir}"/usr/bin
|
install -d "$pkgdir/usr/bin"
|
||||||
FILES="${pkgdir}"/usr/lib/freecad/bin/*
|
ln -sf /usr/lib/freecad/bin/FreeCAD "$pkgdir/usr/bin/freecad"
|
||||||
for f in $FILES
|
ln -sf /usr/lib/freecad/bin/FreeCAD "$pkgdir/usr/bin/FreeCAD"
|
||||||
do
|
ln -sf /usr/lib/freecad/bin/FreeCADCmd "$pkgdir/usr/bin/freecadcmd"
|
||||||
ln -s '../lib/freecad/bin/'$(basename $f) "${pkgdir}"/usr/bin/$(basename $f)
|
ln -sf /usr/lib/freecad/bin/FreeCADCmd "$pkgdir/usr/bin/FreeCADCmd"
|
||||||
done
|
|
||||||
|
|
||||||
install -Dt "${pkgdir}/usr/share/licenses/${pkgname}" -m644 LICENSE
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue