summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 97a18300aca939656efd3498ad8f73f356e9dbef (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
# Maintainer: Wil Thomason <wbthomason@cs.cornell.edu>
# Former maintainer: Sven Schneider <archlinux.sandmann@googlemail.com>

pkgname=ompl
pkgver=1.5.0
pkgrel=1
pkgdesc="The Open Motion Planning Library (OMPL) consists of many state-of-the-art sampling-based motion planning algorithms"
arch=('i686' 'x86_64')
url="http://ompl.kavrakilab.org/"
license=('BSD')
conflicts=('ros-melodic-ompl' 'ompl-git')
replaces=('ros-melodic-ompl' 'ompl-git')
depends=('boost-libs')
makedepends=('boost' 'cmake' 'ninja' 'pkgconf' 'eigen')
optdepends=('python: Python bindings'
            'py++: Python bindings'
            'ode: Plan using the Open Dynamics Engine'
            'pypy: Speed up generating Python bindings'
            'spot: Used for constructing finite automata from LTL formulae'
            'morse-simulator-git: MORSE simulation engine OMPL plugin'
            'triangle: Used to create triangular decompositions of polygonal 2D environments'
            'flann: Additional nearest-neighbor query backend'
            'python-numpy: Python bindings'
            'r: Running Planner Arena locally'
            'castxml: Python bindings'
            'pygccxml: Python bindings')
source=(https://github.com/ompl/ompl/archive/${pkgver}.tar.gz)
sha512sums=(a300682fa0af40768c93e44b819c677b6121812e4f968ad89b5ae4044f3171a7febca63fa5645f2ad0f99ec3dfb3b02fe8c7443c4e389bf19a4a4bc9c7a5d013)

build() {
  # NOTE: To get Python bindings, you currently need to install pyplusplus through pip3. The AUR
  # py++ package will *not* work. Hopefully that will get fixed soon...
  cd "${srcdir}/${pkgname}-${pkgver}"
  mkdir -p build
  cd build

  # NOTE: -march=native causes test failures by slowing down PRM and PRMstar for unknown reasons. As
  # such, we currently remove it from CXXFLAGS if it's present
  CXXFLAGS=$(echo $CXXFLAGS | sed 's/-march=native//g')
  cmake -G Ninja \
  -DCMAKE_INSTALL_PREFIX=/usr \
  -DCMAKE_INSTALL_LIBDIR=lib \
  -DOMPL_REGISTRATION=Off ..
  cmake --build .
}

check() {
  cd "${srcdir}/${pkgname}-${pkgver}/build"
  ctest
}

package() {
  cd "${srcdir}/${pkgname}-${pkgver}"
  install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
  cd build
  DESTDIR=${pkgdir} ninja install
}