summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 01bd4f53c7f1b80a15be3b21f71324b39326b678 (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
# Maintainer: Tércio Martins <echo dGVyY2lvd2VuZGVsQGdtYWlsLmNvbQo= | base64 -d
# Contributor: Antonio Rojas <arojas@archlinux.org>

_rapidjson_commit=00dbcf2c6e03c47d6c399338b6de060c71356464

pkgname=opentimelineio0.14
pkgver=0.14.1
pkgrel=3
pkgdesc='Open Source API and interchange format for editorial timeline information'
url='http://opentimeline.io/'
license=(Apache)
arch=(x86_64)
provides=(opentimelineio)
conflicts=(opentimelineio)
depends=(python-aaf2)
makedepends=(cmake python-pip python-setuptools pybind11)
source=(https://github.com/PixarAnimationStudios/OpenTimelineIO/archive/v$pkgver/$pkgname-$pkgver.tar.gz
        rapidjson-$_rapidjson_commit.tar.gz::https://github.com/Tencent/rapidjson/archive/$_rapidjson_commit.tar.gz
        opentimelineio-c++17.patch)
sha256sums=('04c0a5c2f0639a0a1e9745d40cdb9e86f966c85f19880e8ca614699175a93554'
            'SKIP'
            '36650ae9ab93af5ea9006e3e074a5f33106378dc353ec18345615c1c5f5c0fdc')

prepare() {
  tar -xzf "rapidjson-${_rapidjson_commit}.tar.gz" --strip 1 \
      -C   "OpenTimelineIO-$pkgver/src/deps/rapidjson"
  # Unbundle pybind11
  sed -e '/deps/d' -i OpenTimelineIO-$pkgver/CMakeLists.txt
  sed -e '1 i\find_package(pybind11)' -i OpenTimelineIO-$pkgver/src/py-opentimelineio/opentime-bindings/CMakeLists.txt \
                                      -i OpenTimelineIO-$pkgver/src/py-opentimelineio/opentimelineio-bindings/CMakeLists.txt

  patch -d OpenTimelineIO-$pkgver -p1 < opentimelineio-c++17.patch # Use native C++17 types

  # Solve error when building the file "rationalTime.cpp"
  sed -i '/opentime\/errorStatus.h/ i #include <cstdint>' \
         "OpenTimelineIO-$pkgver/src/opentime/rationalTime.h"
}

build() {
  cmake -B build -S OpenTimelineIO-$pkgver \
    -DCMAKE_INSTALL_PREFIX=/usr
  cmake --build build

  cd OpenTimelineIO-$pkgver
  python setup.py build
}

package() {
  DESTDIR="$pkgdir" cmake --install build

  cd OpenTimelineIO-$pkgver
  python setup.py install --root="$pkgdir" --optimize=1
  rm -fr "$pkgdir"/build
}