summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: cd1ab506a6058021dc531948d8e9546425fc5966 (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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# Maintainer: Salamandar <felix@piedallu.me>


pkgname=freecad-linkstage3-git
pkgver=asm3.0.5.3.r1537.g234333df9
pkgrel=2
pkgdesc='A general purpose 3D CAD modeler - LinkStage3 dev branch, git checkout'
arch=('x86_64')
url='http://www.freecadweb.org/'
license=('LGPL')
conflicts=('freecad')
depends=(

  'boost-libs'

  'calculix'
  'coin'
  'gmsh'
  'med'
  'netcdf'
  'netgen-git'
  'opencascade'
  'vtk'
  'glew'
  'xerces-c'
  'libspnav'
  'shiboken2'
  'jsoncpp'

  # Qt5
  'qt5-base'
  'qt5-webkit'
  'qt5-svg'

  # libxmu-dev
  # libxmu-headers
  # libxmu6
  # libxmuu-dev
  # libxmuu1
  # python-pivy

  # automake
  # dictionaries-common
  # tcl8.5-dev
  # tk8.5-dev
  # libhdf5-dev
  # libfreetype6-dev
  # python-dev

  'python2-matplotlib'
  'python2-pyside2'
  'pyside2-tools'
  'python2-shiboken2'

)
makedepends=(
  'cmake' 'ninja'
  'gcc-fortran'
  'desktop-file-utils'
  'swig'
  'boost'
  'eigen'
)
optdepends=(

)
_gitname='FreeCAD'
source=(
  "git+https://github.com/realthunder/FreeCAD.git#branch=LinkStage3"
  'temporary_fixes.patch'
)
sha256sums=(
  'SKIP'
  'e6f374849dd96ac198c92ca33082ede99d35d516a1986b09fdbaaa9b4d663e2a'
)


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

prepare() {
  cd "${srcdir}/${_gitname}"
  patch -Np1 -i "${srcdir}/temporary_fixes.patch"
}

build() {
  cd "${srcdir}/${_gitname}"

  rm build -rf
  mkdir build -p
  pushd build >/dev/null

  cmake .. \
    -DOpenGL_GL_PREFERENCE=GLVND \
    -DOCC_INCLUDE_DIR='/usr/include/opencascade' \
    -DOCC_LIBRARY_DIR='/usr/lib' \
    -DOpenCASCADE_DIR='/usr/lib/cmake/opencascade' \
    -DFREECAD_USE_OCC_VARIANT="Official Version" \
    -DBUILD_FEM_NETGEN=OFF \
    -DBUILD_QT5=ON \
    -DCMAKE_INSTALL_PREFIX="/usr/lib/freecad" \
    -DCMAKE_INSTALL_DOCDIR="/usr/share/freecad/doc" \
    -DCMAKE_INSTALL_DATADIR="/usr/share/freecad" \
    -G Ninja

  ninja
}

package() {
  cd "${srcdir}/${_gitname}/build"

  DESTDIR="${pkgdir}" ninja install
  ln -s /usr/lib/freecad/bin/FreeCAD /usr/bin/freecad
}