summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 15a686eb3f3f16782503b5f9440484e6c3729ed7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# Maintainer: Grey Christoforo <first name at last name dot net>

pkgname=python-ocp-git
pkgver=7.5.RC1.r4.g6b105a3
pkgrel=1
pkgdesc="Python wrapper for OCCT generated using pywrap"
arch=(x86_64)
url=https://github.com/CadQuery/OCP
license=('Apache')
depends=(
python
opencascade
)
makedepends=(
git
clang
python-joblib
python-click
python-pandas
python-path
pybind11
ninja
cmake
python-logzero
python-tqdm
python-toposort
python-cymbal
python-schema
rapidjson
python-jinja
python-toml
)
conflicts=(python-ocp)
provides=(python-ocp)
source=(git+https://github.com/CadQuery/OCP.git)
sha256sums=('SKIP')

pkgver() {
  cd OCP
  git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
}

prepare(){
  cd OCP
  git submodule update --init --recursive
  
  # don't use the opencascade headers packaged here
  # instead use the ones from the installed opencascade package
  #rm -rf opencascade
  #ln -s /usr/include/opencascade .
}

build() {
  cd OCP
  CONDA_PREFIX=/usr PYTHONPATH=pywrap python -m bindgen \
    --clean \
    --libclang "$(ldconfig -p | grep 'libclang.so$' | awk '{print $NF}')" \
    --include "$(clang -print-resource-dir)"/include \
    all ocp.toml

  cmake \
    -W no-dev \
    -D CMAKE_INSTALL_PREFIX="/usr" \
    -D OPENCASCADE_INCLUDE_DIR=opencascade \
    -D CMAKE_BUILD_TYPE=None \
    -B build_dir \
    -G Ninja \
    -S OCP

  cmake --build build_dir
}

check() {
  cd OCP
  cd build_dir
  python -c "from OCP.gp import gp_Vec, gp_Ax1, gp_Ax3, gp_Pnt, gp_Dir, gp_Trsf, gp_GTrsf, gp, gp_XYZ"
}

package(){
  cd OCP
  #_python_site_path="$(python -c 'import sys; print(sys.path[-1])')"
  #mkdir -p "${pkgdir}/${_python_site_path}"
  #cp "${srcdir}"/build/OCP.*.so "${pkgdir}/${_python_site_path}"

  install -Dt "${pkgdir}$(python -c 'import sys; print(sys.path[-1])')" -m644 build_dir/OCP.*.so
  install -Dt "${pkgdir}/usr/share/licenses/${pkgname}" -m644 LICENSE
}

# vim:ts=2:sw=2:et: