summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Zhou2023-09-02 22:41:07 -0700
committerRobert Zhou2023-09-02 23:07:59 -0700
commit43d0cb9edfffa5c89ce1be9577a64d25f4e1443b (patch)
treefa62ab0fe86e766d38fffb4f3e08e337f9ab4e0b
parent8d342dc94a5216b3cf6399404ece395586fa63c7 (diff)
downloadaur-43d0cb9edfffa5c89ce1be9577a64d25f4e1443b.tar.gz
Working build with dependings, issues running though
-rw-r--r--.SRCINFO46
-rw-r--r--PKGBUILD61
-rw-r--r--ffmpeg.patch52
-rw-r--r--glew-lib64.patch22
-rw-r--r--pyside2-tools-root.patch16
-rw-r--r--pyside2.patch21
6 files changed, 181 insertions, 37 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..22ce7e4d87d4
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,46 @@
+pkgbase = openrv-git
+ pkgdesc = An image and sequence viewer for VFX and animation artists
+ pkgver = r20230903+1424a24
+ pkgrel = 1
+ url = https://github.com/AcademySoftwareFoundation/OpenRV
+ arch = x86_64
+ license = Apache
+ license = custom
+ makedepends = cmake>=3.24
+ makedepends = git
+ makedepends = opencl-headers
+ makedepends = nasm
+ depends = alsa-lib
+ depends = glew
+ depends = libxcomposite
+ depends = libaio
+ depends = pulseaudio
+ depends = mesa
+ depends = ocl-icd
+ depends = sqlite
+ depends = tk
+ depends = tcsh
+ depends = fmt
+ optdepends = ninja: Preferred CMake Generator
+ source = git+https://github.com/AcademySoftwareFoundation/OpenRV.git
+ source = git+https://github.com/shotgunsoftware/openrv-WFObj.git
+ source = git+https://github.com/shotgunsoftware/openrv-pub.git
+ source = git+https://github.com/shotgunsoftware/openrv-oiio.git
+ source = unblock-distro.patch
+ source = ffmpeg.patch
+ source = glew-lib64.patch
+ source = pyside2.patch
+ source = pyside2-tools-root.patch
+ source = ambiguous-powf64.patch
+ b2sums = SKIP
+ b2sums = SKIP
+ b2sums = SKIP
+ b2sums = SKIP
+ b2sums = b1424b55833ddc227f67a04897d416dd942405352e1b92ab8be8f7bc07ba059f6cb997b551d4fb7347f55fa4d809d3242db402bb19c028570447dc5955a782db
+ b2sums = ad9fabb81c8f56e95b998108a1d94805d253466687a1dbf1daf3f24e3ebb81b527d40ac40eb7ed62d368959d610901838696b8fe3f0ea82e661cee285c322190
+ b2sums = ad6a8b6cab093efc66695aa4797ed35c2723d46427bbdede98f3963c266096b4f3e242cafdf132b4a65f5e777b61cb8416bfc67ab8600ab01fc5d75dce1fc07f
+ b2sums = 7267ed30c25d741dbabb7c46b97982b0340504e862bbde57c7d251f1164a04da7d90eaf92701aceb64f0963f0756ec206949543f05f030d6f3e4a0a69e10b0b0
+ b2sums = a29b8e8cd6b8a78d7cf31b314bd81e605b6ffaa347d1ff75363848d81cc4624a0ca89b63183f1be41159f1671a78bbf123c98c7e42fba824a7012b9622f12288
+ b2sums = 66ffac95c2d50f0ac09fb04eb05cef853901f443328e0819871c7ec116e356d2db8da7adf99cdd45c7d8bff9d73ae1ea257d8241ac6d598e662962abe2939194
+
+pkgname = openrv-git
diff --git a/PKGBUILD b/PKGBUILD
index 5edbe01147e7..9653978ed77e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,37 +1,34 @@
# Maintainer: Robert Zhou <meep dot aur at meepzh dot com>
pkgname=openrv-git
-pkgver=r20230901+1424a24
+pkgver=r20230903+1424a24
pkgrel=1
pkgdesc="An image and sequence viewer for VFX and animation artists"
arch=('x86_64')
url='https://github.com/AcademySoftwareFoundation/OpenRV'
license=('Apache' 'custom')
depends=('alsa-lib' 'glew' 'libxcomposite' 'libaio' 'pulseaudio' 'mesa'
- 'ocl-icd' 'sqlite' 'tk'
- 'qt5-tools' 'qt5-webengine' 'qt5-xmlpatterns'
- 'python-yaml' 'python-requests' 'python-py7zr'
- 'ffmpeg4.4' 'boost-libs' 'gc' 'imath' 'openexr' 'openssl-1.1'
- 'pyside2' 'spdlog' 'opentimelineio' 'tcsh' 'libfmt')
-makedepends=('cmake>=3.24' 'git' 'ninja' 'opencl-headers' 'nasm'
- 'python-wheel' 'python-dohq-artifactory' 'python-pre-commit'
- 'boost' 'doctest')
+ 'ocl-icd' 'sqlite' 'tk' 'tcsh' 'fmt')
+optdepends=('ninja: Preferred CMake Generator')
+makedepends=('cmake>=3.24' 'git' 'opencl-headers' 'nasm')
source=('git+https://github.com/AcademySoftwareFoundation/OpenRV.git'
'git+https://github.com/shotgunsoftware/openrv-WFObj.git'
'git+https://github.com/shotgunsoftware/openrv-pub.git'
'git+https://github.com/shotgunsoftware/openrv-oiio.git'
- 'ambiguous-powf64.patch'
- 'link-libfmt.patch'
- 'skip-dependencies.patch'
'unblock-distro.patch'
- 'fmt.cmake')
+ 'ffmpeg.patch'
+ 'glew-lib64.patch'
+ 'pyside2.patch'
+ 'pyside2-tools-root.patch'
+ 'ambiguous-powf64.patch')
b2sums=('SKIP' 'SKIP' 'SKIP' 'SKIP'
- '66ffac95c2d50f0ac09fb04eb05cef853901f443328e0819871c7ec116e356d2db8da7adf99cdd45c7d8bff9d73ae1ea257d8241ac6d598e662962abe2939194'
- '6d72ad8345de21e773bc8ef2efa6d079b89c22188a97166580b9477c182dd8464eee1952e0e3fbf3800b4ef8f7c8bf66ad490e38bb4b53444523b948942f9700'
- '49e7eb8435b24cd020c00c1de3b5f37ce61b2c89221da96c124d7d60bbfa3d0e5c11201a85343f0dba295b5fd30b50d5e1628d15aa3153464f56d5e83d1e6f9a'
'b1424b55833ddc227f67a04897d416dd942405352e1b92ab8be8f7bc07ba059f6cb997b551d4fb7347f55fa4d809d3242db402bb19c028570447dc5955a782db'
- '9d1c84e03ab8abdbae41eaf5db697245e72621d212bb35a34dd8713d07a85cf3b3124b42d0c5de10231656956229d49c5ade477e9840af54def1fdec71151cba')
+ 'ad9fabb81c8f56e95b998108a1d94805d253466687a1dbf1daf3f24e3ebb81b527d40ac40eb7ed62d368959d610901838696b8fe3f0ea82e661cee285c322190'
+ 'ad6a8b6cab093efc66695aa4797ed35c2723d46427bbdede98f3963c266096b4f3e242cafdf132b4a65f5e777b61cb8416bfc67ab8600ab01fc5d75dce1fc07f'
+ '7267ed30c25d741dbabb7c46b97982b0340504e862bbde57c7d251f1164a04da7d90eaf92701aceb64f0963f0756ec206949543f05f030d6f3e4a0a69e10b0b0'
+ 'a29b8e8cd6b8a78d7cf31b314bd81e605b6ffaa347d1ff75363848d81cc4624a0ca89b63183f1be41159f1671a78bbf123c98c7e42fba824a7012b9622f12288'
+ '66ffac95c2d50f0ac09fb04eb05cef853901f443328e0819871c7ec116e356d2db8da7adf99cdd45c7d8bff9d73ae1ea257d8241ac6d598e662962abe2939194')
pkgver() {
cd OpenRV
@@ -53,37 +50,27 @@ prepare() {
git config submodule.src/lib/oiio.url "$srcdir/openrv-oiio"
git -c protocol.file.allow=always submodule update
+ find cmake/dependencies -type f -exec sed -i "s/lib64/lib/g" {} \;
patch --forward --strip=1 --input="${srcdir}/unblock-distro.patch"
- patch --forward --strip=1 --input="${srcdir}/skip-dependencies.patch"
- patch --forward --strip=1 --input="${srcdir}/link-libfmt.patch"
+ patch --forward --strip=1 --input="${srcdir}/ffmpeg.patch"
+ patch --forward --strip=1 --input="${srcdir}/glew-lib64.patch"
+ patch --forward --strip=1 --input="${srcdir}/pyside2.patch"
patch --forward --strip=1 --input="${srcdir}/ambiguous-powf64.patch"
- mv "$srcdir/fmt.cmake" "cmake/dependencies"
}
build() {
cd OpenRV
- if [[ -z "${QT_HOME}" ]]; then
- export QT_HOME=/usr
- fi
- if [[ -z "${QT_PLUGIN_PATH}" ]]; then
- export QT_PLUGIN_PATH=/usr/lib/qt/plugins
+ if ! pacman -Qs ninja > /dev/null; then
+ export CMAKE_GENERATOR="Unix Makefiles"
fi
source rvcmds.sh
rvmk
}
package() {
-
+ cd OpenRV
+ source rvcmds.sh
+ mkdir -p $pkgdir/openrv
+ rvinst $pkgdir/openrv
}
-# While the dependencies could skip building, the following environment variables
-# needed to be set, and the process experiences significant difficulties getting Qt
-# to load. If you don't add RV_HOME to your PYTHONPATH, you can get a barebones RV
-# working in the meantime.
-#
-# QT_PLUGIN_PATH=/usr/lib/qt/plugins
-# PYTHONHOME=/usr/lib/python3.11
-# PYTHONPATH="$RV_HOME/plugins/Python:/usr/lib/python3.11/site-packages:/usr/lib/python3.11:/usr/lib/python3.11/lib-dynload"
-# LD_LIBRARY_PATH=/usr/lib
-# QTWEBENGINEPROCESS_PATH=/usr/lib/qt/libexec/QtWebEngineProcess
-
diff --git a/ffmpeg.patch b/ffmpeg.patch
new file mode 100644
index 000000000000..31460b394c5e
--- /dev/null
+++ b/ffmpeg.patch
@@ -0,0 +1,52 @@
+diff --color --unified --recursive --text '--exclude=.git' '--exclude=generated' '--exclude=build' '--exclude=_build' OpenRV.clean/cmake/dependencies/ffmpeg.cmake OpenRV/cmake/dependencies/ffmpeg.cmake
+--- OpenRV.clean/cmake/dependencies/ffmpeg.cmake 2023-08-31 22:15:18.786591021 -0700
++++ OpenRV/cmake/dependencies/ffmpeg.cmake 2023-09-02 19:27:05.177196747 -0700
+@@ -22,6 +22,14 @@
+ "51ffa9de9e5b0c17cbabc0d8b780beb2"
+ )
+
++SET(_git_repository
++ "https://git.ffmpeg.org/ffmpeg.git"
++)
++
++SET(_git_tag
++ "3d69f9682f06bbf72e0cdcdc9e66c9307ed6b24f"
++)
++
+ SET(_install_dir
+ ${RV_DEPS_BASE_DIR}/${_target}/install
+ )
+@@ -66,6 +74,11 @@
+ SET(_configure_command
+ sh ./configure
+ )
++SET(_patch_command
++ git cherry-pick -n 988f2e9eb063db7c1a678729f58aab6eba59a55b &&
++ git cherry-pick -n 031f1561cd286596cdb374da32f8aa816ce3b135 &&
++ git cherry-pick -n effadce6c756247ea8bae32dc13bb3e6f464f0eb
++)
+
+ IF(${RV_OSX_EMULATION})
+ SET(_darwin_x86_64
+@@ -182,13 +195,16 @@
+ EXTERNALPROJECT_ADD(
+ ${_target}
+ DEPENDS dav1d::dav1d RV_DEPS_OPENSSL
+- DOWNLOAD_NAME ${_target}_${_version}.zip
+- DOWNLOAD_DIR ${RV_DEPS_DOWNLOAD_DIR}
+- DOWNLOAD_EXTRACT_TIMESTAMP TRUE
++ # DOWNLOAD_NAME ${_target}_${_version}.zip
++ # DOWNLOAD_DIR ${RV_DEPS_DOWNLOAD_DIR}
++ # DOWNLOAD_EXTRACT_TIMESTAMP TRUE
+ INSTALL_DIR ${_install_dir}
+- URL ${_download_url}
+- URL_MD5 ${_download_hash}
++ # URL ${_download_url}
++ # URL_MD5 ${_download_hash}
++ GIT_REPOSITORY ${_git_repository}
++ GIT_TAG ${_git_tag}
+ SOURCE_DIR ${RV_DEPS_BASE_DIR}/${_target}/src
++ PATCH_COMMAND ${_patch_command}
+ CONFIGURE_COMMAND
+ ${CMAKE_COMMAND} -E env PKG_CONFIG_PATH=${RV_DEPS_DAVID_LIB_DIR}/pkgconfig ${_configure_command} --prefix=${_install_dir} --disable-programs --enable-shared
+ --enable-openssl --enable-libdav1d --disable-iconv --disable-outdevs ${_toolchain} --extra-ldflags=${_ldflags} --extra-cflags=${_cflags}
diff --git a/glew-lib64.patch b/glew-lib64.patch
new file mode 100644
index 000000000000..b2ccad53d1c1
--- /dev/null
+++ b/glew-lib64.patch
@@ -0,0 +1,22 @@
+diff --color --unified --recursive --text '--exclude=.git' '--exclude=generated' '--exclude=build' '--exclude=_build' OpenRV.clean/cmake/dependencies/glew.cmake OpenRV/cmake/dependencies/glew.cmake
+--- OpenRV.clean/cmake/dependencies/glew.cmake 2023-08-31 22:15:18.786591021 -0700
++++ OpenRV/cmake/dependencies/glew.cmake 2023-09-02 20:11:35.420430610 -0700
+@@ -23,6 +23,10 @@
+ f150f61074d049ff0423b09b18cd1ef6
+ )
+
++SET(_patch_command
++ sed -i s/lib64/lib/g ${RV_DEPS_BASE_DIR}/${_target}/src/config/Makefile.linux
++)
++
+ SET(_install_dir
+ ${RV_DEPS_BASE_DIR}/${_target}/install
+ )
+@@ -72,6 +76,7 @@
+ URL_MD5 ${_download_hash}
+ DOWNLOAD_NAME ${_target}_${_version}.zip
+ DOWNLOAD_DIR ${RV_DEPS_DOWNLOAD_DIR}
++ PATCH_COMMAND ${_patch_command}
+ CONFIGURE_COMMAND cd auto && ${_make_command}
+ BUILD_COMMAND ${_make_command} -j${_cpu_count} GLEW_DEST=${_install_dir}
+ INSTALL_COMMAND ${_make_command} install GLEW_DEST=${_install_dir}
diff --git a/pyside2-tools-root.patch b/pyside2-tools-root.patch
new file mode 100644
index 000000000000..ba388f178159
--- /dev/null
+++ b/pyside2-tools-root.patch
@@ -0,0 +1,16 @@
+diff --color --unified --recursive --text OpenRV.clean/_build/_deps/rv_deps_pyside2-src/sources/pyside2-tools/CMakeLists.txt OpenRV/_build/_deps/rv_deps_pyside2-src/sources/pyside2-tools/CMakeLists.txt
+--- OpenRV.clean/_build/_deps/rv_deps_pyside2-src/sources/pyside2-tools/CMakeLists.txt 2023-09-02 17:26:26.030799749 -0700
++++ OpenRV/_build/_deps/rv_deps_pyside2-src/sources/pyside2-tools/CMakeLists.txt 2023-09-02 08:36:33.481984024 -0700
+@@ -8,7 +8,12 @@
+
+ find_package(Shiboken2 2.0.0 REQUIRED)
+ find_package(Qt5 REQUIRED Core)
++
++cmake_policy(PUSH)
++cmake_policy(SET CMP0074 NEW)
++set(PySide2_ROOT "${CMAKE_INSTALL_PREFIX}")
+ find_package(PySide2 2.0.0 REQUIRED)
++cmake_policy(POP)
+
+ set(pyside2_tools_MAJOR_VERSION "2")
+ set(pyside2_tools_MINOR_VERSION "0")
diff --git a/pyside2.patch b/pyside2.patch
new file mode 100644
index 000000000000..ffd3c8be1810
--- /dev/null
+++ b/pyside2.patch
@@ -0,0 +1,21 @@
+diff --color --unified --recursive --text '--exclude=.git' '--exclude=generated' '--exclude=build' '--exclude=_build' OpenRV.clean/cmake/dependencies/python3.cmake OpenRV/cmake/dependencies/python3.cmake
+--- OpenRV.clean/cmake/dependencies/python3.cmake 2023-08-31 22:15:18.786591021 -0700
++++ OpenRV/cmake/dependencies/python3.cmake 2023-09-02 18:10:15.350701802 -0700
+@@ -48,6 +48,9 @@
+ SET(_pyside2_download_hash
+ "87841aaced763b6b52e9b549e31a493f"
+ )
++SET(_pyside2_patch_command
++ cd ${PROJECT_SOURCE_DIR} && patch --forward --strip=1 --input=../pyside2-tools-root.patch
++)
+
+ SET(_install_dir
+ ${RV_DEPS_BASE_DIR}/${_python3_target}/install
+@@ -81,6 +84,7 @@
+ URL ${_pyside2_archive_url}
+ URL_HASH MD5=${_pyside2_download_hash}
+ SOURCE_SUBDIR "sources" # Avoids the top level CMakeLists.txt
++ PATCH_COMMAND ${_pyside2_patch_command}
+ )
+
+ FETCHCONTENT_MAKEAVAILABLE(${_pyside2_target})