Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable opencl on ffmpeg5-6 with DSM >= 7 #6166

Merged
merged 88 commits into from
Sep 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
0f4f53d
opencl-clang: Build using version LLVM 14.x needed for IGC
th0ma7 Jul 3, 2024
6429c88
llvm-140: Include relevant IGC necessary patches
th0ma7 Jul 4, 2024
99f30d8
SPIRV-LLVM-Translator-140: update digests - TODO: move to git hash
th0ma7 Jul 4, 2024
98875b7
ocl: Use specific git hash as no -140 release available
th0ma7 Jul 6, 2024
336b9fc
SPIRV-LLVM-Translator-140.src: Newly available release of -140 sources
th0ma7 Jul 6, 2024
1801ee6
ocl: Disable INSTALL_TOOLCHAIN_ONLY for libopencl-clang.so.14
th0ma7 Jul 11, 2024
ea6d902
IGC: Configure now wokr sucessfully
th0ma7 Jul 12, 2024
7b4f1bb
IGC: Requires building lld and sources to libunwind from LLVM
th0ma7 Jul 12, 2024
2df4e3b
IGC: Requires intel-vc-intrinsics sources
th0ma7 Jul 12, 2024
1cc1954
vc-intrinsics: Update to v0.19 and disable extract hash commit
th0ma7 Jul 23, 2024
0616f31
vc-intrinsics: Update patch to remove unecessary include
th0ma7 Jul 23, 2024
e187bae
vc-intrinsics: Move from in-tree to external to llvm build
th0ma7 Jul 27, 2024
1fb16a0
vc-intrinsics: Remove llvm in-tree source files
th0ma7 Jul 27, 2024
56a826a
intel-opencl-clang-140: Include base PLIST (needs cleaning-up)
th0ma7 Jul 27, 2024
fa97941
libdrm: Update from version 2.4.121 to 2.4.122
th0ma7 Jul 27, 2024
c081b22
intel-gmmlib: Update from version 22.3.20 to 22.4.1
th0ma7 Jul 27, 2024
6b7cec1
libva: Update from version 2.21.0 to 2.22.0
th0ma7 Jul 27, 2024
9b711c1
level-zero: Update from version 1.17.6 to 1.17.19
th0ma7 Jul 27, 2024
9aa219e
intel-media-driver-latest: Update to 24Q2 version 24.1.5 to 24.2.5
th0ma7 Jul 27, 2024
2b1b2a7
intel-opencl-clang-140: Only libopencl-clang.so.14 is required
th0ma7 Jul 27, 2024
8bb777e
intel-opencl-clang: Enable shared libraries
th0ma7 Jul 30, 2024
e42d435
intel-opencl-clang-140: Include LLVM and clang shared libraries
th0ma7 Jul 30, 2024
a87c61a
opencl-clang-140: Include in-tree build of vc-intrinsics
th0ma7 Aug 19, 2024
6469bdc
SPIRV-Tools: Removing unecessary comments and options
th0ma7 Aug 19, 2024
b02dec3
intel-opencl-clang-140: include vc-intrinsics to PLIST + comments
th0ma7 Aug 19, 2024
537ff3d
intel-opencl-clang-140: Remove unused PREFERRED_LLVM_VERSION var
th0ma7 Aug 19, 2024
00ed7da
intel-opencl-clang-140: Remove duplicate -DLLVM_ENABLE_ZLIB
th0ma7 Aug 20, 2024
77f72bd
IGC: Configure successful
th0ma7 Aug 20, 2024
b208844
IGC: configure 100%, build 93%, sigh, getting there
th0ma7 Aug 21, 2024
ea02169
IGC: It finally builds! Now let's clean this up.
th0ma7 Aug 22, 2024
1bd9946
IGC: Clean-up makefile
th0ma7 Aug 23, 2024
2d4de61
llvm-project-140.src: Include LLVM 14.0.5 with ocl + IGC patches
th0ma7 Aug 23, 2024
fe91352
SPIRV-LLVM-Translator: Update from version 14.0.2 to 14.0.3
th0ma7 Aug 23, 2024
9d80947
llvm-14.0-build: Add a corresponding LLVM 14.0.5 native build
th0ma7 Aug 23, 2024
697e157
ffmpeg6: Enable OpenCL (and vulkan being autodetected)
th0ma7 Aug 23, 2024
b96cd9a
intel-opencl-clang-140: Add vc-intrinsics library
th0ma7 Aug 23, 2024
19dd1ca
intel-opencl-clang-140.src: Add sources only (to be merge with build …
th0ma7 Aug 23, 2024
169b216
level-zero: Remove as duplicate of intel-level-zero
th0ma7 Aug 23, 2024
a95fdc4
intel-opencl-clang-140: Use llvm-projet sources & Khronos headers
th0ma7 Aug 25, 2024
eea622f
Khronos*: Rename all khronos sources using 'Khronos-*' prefix
th0ma7 Aug 25, 2024
9960012
clang|lld|llvm|libunwind: Migrate to using llvm-project sources
th0ma7 Aug 25, 2024
3d8f946
Khronos-SPIRV-Headers.src: Now only using cmake installed version
th0ma7 Aug 25, 2024
910c497
SPIRV-Tools: Update from version 2024.1 to 2024.2
th0ma7 Aug 25, 2024
6fbefbd
intel-opencl-clang-140: Remove PLIST-llvm as of no use
th0ma7 Aug 25, 2024
fd505fc
intel-vc-intrinsics.src: No PLIST needed as source install only
th0ma7 Aug 25, 2024
873ee88
intel-graphics-compiler: Clean-ups and re-organize info
th0ma7 Aug 25, 2024
6a75552
intel-compute-runtime: First iteration, configure's ok, build fails
th0ma7 Aug 25, 2024
a67f51e
IGC: Update to v1.0.17384.12 + other enablements
th0ma7 Aug 26, 2024
07a3d93
intel-compute-runtime: Small updates + cmake debug mode ready
th0ma7 Aug 26, 2024
ff27456
level-zero: Update from 1.17.19 to 1.17.28
th0ma7 Aug 26, 2024
6bf59aa
IGC: Multiple changes
th0ma7 Aug 26, 2024
64bf46a
intel-compute-runtime: Bump to 24.31.30508.7 and fix IGC_DIR
th0ma7 Aug 27, 2024
0be16c2
intel-compute-runtime: Fix installation of OpenCL/vendors/intel.icd
th0ma7 Aug 27, 2024
a20920f
intel-graphics-compiler + intel-compute-runtime: Set min DSM 7.1
th0ma7 Aug 27, 2024
0f0f28f
ocl-icd: Install generc OpenCL loader (version 2.3.2)
th0ma7 Aug 27, 2024
ddd1a16
intel-compute-runtime: Comments clean-up
th0ma7 Aug 27, 2024
e26fc50
ffmpeg6: Revert to libmfx and enable OpenCL
th0ma7 Aug 27, 2024
b5e0b6a
synocli-videodriver: Prepare division of videodrv from ffmpeg
th0ma7 Aug 27, 2024
24e6aaa
clinfo: Include utility to get OpenCL information (v3.0.23.01.25)
th0ma7 Aug 27, 2024
d8f0645
ocl-icd: Ensure OpenCL/layers|vendors is under INSTALL_PREFIX
th0ma7 Aug 27, 2024
d463d0d
intel-compute-runtime: Use DESTDIR for OpenCL/vendors/intel.icd
th0ma7 Sep 3, 2024
03dfe46
IGC: Migrate to using pre-built native/llvm-14.0
th0ma7 Sep 15, 2024
b368c1e
libvpl-tools: Update from version 1.0.0 to 1.2.0
th0ma7 Sep 15, 2024
7aa0d07
libvpl: Update from version 2.11.0 to 2.13.0
th0ma7 Sep 15, 2024
ac3cdfc
synocli-videodriver: Fixes for DSM6 build
th0ma7 Sep 15, 2024
66a9d0b
synocli-videodriver: Build fixes to ocl-icd and intel-libvpl-tools
th0ma7 Sep 15, 2024
9166465
ffmpeg5-6: Migrate to using spksrc.videodriver.mk re-using drivers
th0ma7 Sep 15, 2024
6482228
github-action: synocli-videodriver is now built first for ffmpeg56
th0ma7 Sep 15, 2024
29c6587
github-action: Fix typo that still refered to python
th0ma7 Sep 15, 2024
172696c
ffmpeg5-6: Fix build using spksrc.videodriver.mk
th0ma7 Sep 15, 2024
b72b542
ffmpeg56: Add SPK_DEPENDS and adjust changelog
th0ma7 Sep 15, 2024
89e3e4a
vc-intrinsics: Update from version 0.19.0 to 0.20.0
th0ma7 Sep 16, 2024
f7245b9
intel-opencl-clang-140: Align with IGC for static build
th0ma7 Sep 16, 2024
8afdcd0
intel-level-zero: Update from 1.17.28 to 1.17.42
th0ma7 Sep 16, 2024
74c648a
intel-gmmlib-latest: Update from 22.4.1 to 22.5.2
th0ma7 Sep 16, 2024
b7fb5c9
intel-graphics-compiler: Update from 1.0.17384.12 to 1.0.17537.20
th0ma7 Sep 16, 2024
5b07bb0
cmake: Disable developer warnings (equivalent of -Wno-dev)
th0ma7 Sep 17, 2024
a464bcd
extract.mk: Allow extra parameter to tar extract commands
th0ma7 Sep 17, 2024
229f447
Add a new GCC_NO_DEBUG_INFO disabling symbols at build-time
th0ma7 Sep 17, 2024
20858ff
intel-compute-runtime: Do not enable GCC_NO_DEBUG_INFO has failing
th0ma7 Sep 17, 2024
f1c59e4
intel-mediasdk: Not enable GCC_NO_DEBUG_INFO for ffmpeg --enable-mfx
th0ma7 Sep 17, 2024
4b4dbeb
ffmpeg.mk: Add new ffmpeg build functionality
th0ma7 Sep 18, 2024
6b5cea5
videodriver.mk: Fix
th0ma7 Sep 18, 2024
d7c1d85
tvheadend: Update to new version & migrate to new ffmpeg.mk
th0ma7 Sep 18, 2024
c59498c
ffmpeg56: Update changelog on to using new synocli-videodriver
th0ma7 Sep 18, 2024
4935c71
comskip: Migrate to using new ffmpeg.mk
th0ma7 Sep 18, 2024
e69067e
chromaprint: Migrate to ffmpeg6
th0ma7 Sep 18, 2024
6c9e236
github-action: Fix for new ffmpeg.mk
th0ma7 Sep 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions .github/actions/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@
# - The build output is structured into log groups by package.
# - As the disk space in the workflow environment is limitted, we clean the
# work folder of each package after build. At 2020.06 this limit is 14GB.
# - ffmpeg5 and ffmpeg6 are not cleaned to be available for dependents.
# - Therefore ffmpeg5 and ffmpeg6 are built first if triggered by its
# - synocli-videodriver and ffmpeg5-6 are not cleaned to be available for dependents.
# - Therefore synocli-videodriver is built first if triggered by ffmpeg5-6
# - Therefore ffmpeg5 and ffmpeg6 are built second if triggered by its
# own or a dependent (see prepare.sh).

set -o pipefail
Expand Down Expand Up @@ -59,7 +60,7 @@ if [ -n "$API_KEY" ] && [ "$PUBLISH" == "true" ]; then
fi

# Build
PACKAGES_TO_KEEP="ffmpeg5 ffmpeg6 python310 python311"
PACKAGES_TO_KEEP="synocli-videodriver ffmpeg5 ffmpeg6 python310 python311"
for package in ${build_packages}
do
echo "::group:: ---- build ${package}"
Expand Down
25 changes: 20 additions & 5 deletions .github/actions/prepare.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@
#
# Functions:
# - Evaluate all packages to build depending on files defined in ${GH_FILES}.
# - python310, python311, ffmpeg5 and ffmpeg6 are moved to head of packages to build first if triggered by its own or a dependent.
# - synocli-videodriver is moved to head of packages to build first if triggered by its ffmpeg5-6
# - python310-311 and ffmpeg5-6 are moved to head of remaining packages to build when triggered by its own or a dependent.
# - Referenced native and cross packages of the packages to build are added to the download list.

set -o pipefail
Expand Down Expand Up @@ -53,12 +54,12 @@ fi
# remove duplicate packages
packages=$(printf %s "${SPK_TO_BUILD}" | tr ' ' '\n' | sort -u | tr '\n' ' ')

# for ffmpeg v4-6 find all packages that depend on them
# for ffmpeg v5-6 find all packages that depend on them
for i in {5..6}; do
ffmpeg_dependent_packages=$(find spk/ -maxdepth 2 -mindepth 2 -name "Makefile" -exec grep -Ho "FFMPEG_VERSION = ${i}" {} \; | grep -Po ".*spk/\K[^/]*" | sort | tr '\n' ' ')
ffmpeg_dependent_packages=$(find spk/ -maxdepth 2 -mindepth 2 -name "Makefile" -exec grep -Ho "FFMPEG_PACKAGE = ffmpeg${i}" {} \; | grep -Po ".*spk/\K[^/]*" | sort | tr '\n' ' ')

# If packages contain a package that depends on ffmpeg (or is ffmpeg), then ensure
# relevant ffmpeg5|ffmpeg6 is first in list
# If packages contain a package that depends on ffmpeg (or is ffmpeg),
# then ensure relevant ffmpeg5|ffmpeg6 is first in list
for package in ${packages}
do
if [ "$(echo ffmpeg${i} ${ffmpeg_dependent_packages} | grep -ow ${package})" != "" ]; then
Expand All @@ -69,6 +70,20 @@ for i in {5..6}; do
done
done

# for synocli-videodriver that ffmpeg v5-6 depends on
videodrv_dependent_packages=$(find spk/ -maxdepth 2 -mindepth 2 -name "Makefile" -exec grep -Ho "spksrc.videodriver.mk" {} \; | grep -Po ".*spk/\K[^/]*" | sort | tr '\n' ' ')

# If packages contain a package that depends on spksrc.videodriver.mk,
# then ensure synocli-videodriver spk is first in list
for package in ${packages}
do
if [ "$(echo synocli-videodriver ${videodrv_dependent_packages} | grep -ow ${package})" != "" ]; then
packages_without_videodrv=$(echo "${packages}" | tr ' ' '\n' | grep -v "synocli-videodriver" | tr '\n' ' ')
packages="synocli-videodriver ${packages_without_videodrv}"
break
fi
done

# for python (310, 311) find all packages that depend on them
for py in python310 python311; do
python_dependent_packages=$(find spk/ -maxdepth 2 -mindepth 2 -name "Makefile" -exec grep -Ho "PYTHON_PACKAGE = ${py}" {} \; | grep -Po ".*spk/\K[^/]*" | sort | tr '\n' ' ')
Expand Down
19 changes: 19 additions & 0 deletions cross/Khronos-OpenCL-Headers/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
PKG_NAME = OpenCL-Headers
PKG_VERS = 2024.05.08
PKG_EXT = tar.gz
PKG_DIST_NAME = v$(PKG_VERS).$(PKG_EXT)
PKG_DIST_FILE = khronos-opencl-headers-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/KhronosGroup/OpenCL-Headers/archive/refs/tags
PKG_DIR = $(PKG_NAME)-$(PKG_VERS)

HOMEPAGE = https://github.com/KhronosGroup/SPIRV-Headers
COMMENT = Machine-readable files for the SPIR-V Registry
LICENSE = Copyright (c) 2015-2024 The Khronos Group Inc.

POST_EXTRACT_TARGET = SPIRV-Headers_post_extract_target

include ../../mk/spksrc.cross-cmake.mk

.PHONY: SPIRV-Headers_post_extract_target
SPIRV-Headers_post_extract_target:
@cd $(WORK_DIR) && ln -s $(PKG_DIR) $(PKG_NAME)
3 changes: 3 additions & 0 deletions cross/Khronos-OpenCL-Headers/digests
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
khronos-opencl-headers-2024.05.08.tar.gz SHA1 188ef91da8210d120271a9b74b8b8858e897d9b8
khronos-opencl-headers-2024.05.08.tar.gz SHA256 3c3dd236d35f4960028f4f58ce8d963fb63f3d50251d1e9854b76f1caab9a309
khronos-opencl-headers-2024.05.08.tar.gz MD5 56d28bdc7957be155aa81114ce504794
18 changes: 18 additions & 0 deletions cross/Khronos-SPIRV-Headers/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
PKG_NAME = SPIRV-Headers
PKG_VERS = 1.3.283.0
PKG_EXT = tar.gz
PKG_DIST_NAME = vulkan-sdk-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/KhronosGroup/SPIRV-Headers/archive/refs/tags
PKG_DIR = $(PKG_NAME)-vulkan-sdk-$(PKG_VERS)

HOMEPAGE = https://github.com/KhronosGroup/SPIRV-Headers
COMMENT = Machine-readable files for the SPIR-V Registry
LICENSE = Copyright (c) 2015-2024 The Khronos Group Inc.

POST_EXTRACT_TARGET = SPIRV-Headers_post_extract_target

include ../../mk/spksrc.cross-cmake.mk

.PHONY: SPIRV-Headers_post_extract_target
SPIRV-Headers_post_extract_target:
@cd $(WORK_DIR) && ln -s $(PKG_DIR) $(PKG_NAME)
3 changes: 3 additions & 0 deletions cross/Khronos-SPIRV-Headers/digests
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
vulkan-sdk-1.3.283.0.tar.gz SHA1 b532efb95ddbcb28128897992a390767c6a93772
vulkan-sdk-1.3.283.0.tar.gz SHA256 a68a25996268841073c01514df7bab8f64e2db1945944b45087e5c40eed12cb9
vulkan-sdk-1.3.283.0.tar.gz MD5 5f258f65b4526c053d9ca3cddc94e71b
39 changes: 39 additions & 0 deletions cross/Khronos-SPIRV-LLVM-Translator-140.src/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
PKG_NAME = SPIRV-LLVM-Translator
PKG_LLVM_MAJ = 14
PKG_LLVM_MIN = 0.3
PKG_EXT = tar.gz
PKG_DIST_NAME = v$(PKG_LLVM_MAJ).$(PKG_LLVM_MIN).$(PKG_EXT)
PKG_DIST_FILE = $(PKG_NAME)-$(PKG_LLVM_MAJ).$(PKG_LLVM_MIN).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive/refs/tags
PKG_DIR = $(PKG_NAME)-$(PKG_LLVM_MAJ).$(PKG_LLVM_MIN)

# llvm_release_140 branch is still receiving updates
# using latest gis hash to ensure replicable builds
#PKG_GIT_HASH = f23845001443049a9f1b0472b9a6f491aee46e3e
#PKG_DIST_NAME = $(PKG_GIT_HASH).$(PKG_EXT)
#PKG_DIST_FILE = $(PKG_NAME)-git$(PKG_GIT_HASH).$(PKG_EXT)
#PKG_DIST_SITE = https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive
#PKG_DIR = $(PKG_NAME)-$(PKG_GIT_HASH)

# use below for direct llvm_release_140 branch
#PKG_VERS = $(PKG_LLVM_MAJ)0
#PKG_GIT_BRANCH = llvm_release_$(PKG_VERS)
#PKG_DIST_NAME = $(PKG_GIT_BRANCH).$(PKG_EXT)
#PKG_DIST_FILE = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT)
#PKG_DIST_SITE = https://github.com/KhronosGroup/SPIRV-LLVM-Translator/archive
#PKG_DIR = $(PKG_NAME)-$(PKG_GIT_BRANCH)

HOMEPAGE = https://github.com/KhronosGroup/SPIRV-LLVM-Translator
COMMENT = Library and tool for translation between LLVM IR and SPIR-V.
LICENSE = LLVM Release License

POST_EXTRACT_TARGET = llvm_post_extract_target
CONFIGURE_TARGET = nop
COMPILE_TARGET = nop
INSTALL_TARGET = nop

include ../../mk/spksrc.cross-cmake.mk

.PHONY: llvm_post_extract_target
llvm_post_extract_target:
@cd $(WORK_DIR) && ln -s $(PKG_DIR) $(PKG_NAME)
3 changes: 3 additions & 0 deletions cross/Khronos-SPIRV-LLVM-Translator-140.src/digests
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
SPIRV-LLVM-Translator-14.0.3.tar.gz SHA1 7fb0a38086390b130ff3981d54a1bc89d3e4393d
SPIRV-LLVM-Translator-14.0.3.tar.gz SHA256 c225f6929e5433c303c0f8f63a8e201322363c6817ebb1368ddb068279131ba7
SPIRV-LLVM-Translator-14.0.3.tar.gz MD5 08f17fc6b891931d41049ad2bb2a7f51
31 changes: 31 additions & 0 deletions cross/Khronos-SPIRV-Tools/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
PKG_NAME = SPIRV-Tools
PKG_VERS = 2024.2
PKG_EXT = tar.gz
PKG_DIST_NAME = v$(PKG_VERS).$(PKG_EXT)
PKG_DIST_FILE = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/KhronosGroup/SPIRV-Tools/archive/refs/tags
PKG_DIR = $(PKG_NAME)-$(PKG_VERS)

HOMEPAGE = https://github.com/KhronosGroup/SPIRV-Tools
COMMENT = The SPIR-V Tools project provides an API and commands for processing SPIR-V modules.
LICENSE = Apache-2.0 license

BUILD_DEPENDS = cross/Khronos-SPIRV-Headers

POST_EXTRACT_TARGET = SPIRV-Tools_post_extract_target

CMAKE_ARGS += -DSPIRV_WERROR=OFF
CMAKE_ARGS += -DSPIRV_TOOLS_BUILD_STATIC=OFF
CMAKE_ARGS += -DSPIRV-Headers_SOURCE_DIR=$(WORK_DIR)/SPIRV-Headers

include ../../mk/spksrc.cross-cmake.mk

# Using gcc-8 we must use: make LDLIBS=-lstdc++fs
# or by adding the following
ifeq ($(call version_le, $(TC_GCC), 9),1)
CMAKE_ARGS += -DCMAKE_CXX_STANDARD_LIBRARIES=-lstdc++fs
endif

.PHONY: SPIRV-Tools_post_extract_target
SPIRV-Tools_post_extract_target:
@cd $(WORK_DIR) && ln -s $(PKG_DIR) $(PKG_NAME)
17 changes: 17 additions & 0 deletions cross/Khronos-SPIRV-Tools/PLIST
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
bin:bin/spirv-as
bin:bin/spirv-cfg
bin:bin/spirv-dis
rsc:bin/spirv-lesspipe.sh
bin:bin/spirv-link
bin:bin/spirv-lint
bin:bin/spirv-objdump
bin:bin/spirv-opt
bin:bin/spirv-reduce
bin:bin/spirv-val
lib:lib/libSPIRV-Tools-diff.so
lib:lib/libSPIRV-Tools-link.so
lib:lib/libSPIRV-Tools-lint.so
lib:lib/libSPIRV-Tools-opt.so
lib:lib/libSPIRV-Tools-reduce.so
lib:lib/libSPIRV-Tools-shared.so
lib:lib/libSPIRV-Tools.so
3 changes: 3 additions & 0 deletions cross/Khronos-SPIRV-Tools/digests
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
SPIRV-Tools-2024.2.tar.gz SHA1 1e838970271113e0191a37e6d1ab929de61d605b
SPIRV-Tools-2024.2.tar.gz SHA256 58c5f4e6961c3d4936f7dbcd7f0b495c830b96972ee731452eaa9ade873f0095
SPIRV-Tools-2024.2.tar.gz MD5 bde778ea43ee00f81ced9e441d69a0c9
53 changes: 36 additions & 17 deletions cross/chromaprint/Makefile
Original file line number Diff line number Diff line change
@@ -1,34 +1,53 @@
PKG_NAME = chromaprint
PKG_VERS = 1.5.2
PKG_VERS = 1.5.1
PKG_EXT = tar.gz
PKG_GIT_HASH = aa67c95b9e486884a6d3ee8b0c91207d8c2b0551
PKG_DIST_NAME = $(PKG_GIT_HASH).$(PKG_EXT)
PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT)
PKG_DIST_SITE = https://github.com/acoustid/chromaprint/archive
PKG_DIST_FILE = $(PKG_NAME)-git$(PKG_GIT_HASH).$(PKG_EXT)
PKG_DIR = $(PKG_NAME)-$(PKG_GIT_HASH)
PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT)
PKG_DIR = $(PKG_NAME)-$(PKG_VERS)

#PKG_GIT_HASH = aa67c95b9e486884a6d3ee8b0c91207d8c2b0551
#PKG_DIST_NAME = $(PKG_GIT_HASH).$(PKG_EXT)
#PKG_DIST_FILE = $(PKG_NAME)-git$(PKG_GIT_HASH).$(PKG_EXT)
#PKG_DIR = $(PKG_NAME)-$(PKG_GIT_HASH)

HOMEPAGE = https://acoustid.org/chromaprint
COMMENT = Chromaprint is the core component of the AcoustID project. It\'s a client-side library that implements a custom algorithm for extracting fingerprints from any audio source.
LICENSE = LGPL2.1+

OPTIONAL_DEPENDS = cross/ffmpeg$(FFMPEG_VERSION)
OPTIONAL_DEPENDS = cross/ffmpeg6

# compiler too old
UNSUPPORTED_ARCHS = $(ARMv5_ARCHS) $(OLD_PPC_ARCHS)

ifneq ($(wildcard $(FFMPEG_DIR)),)
CMAKE_RPATH = /var/packages/ffmpeg$(subst 4,,$(FFMPEG_VERSION))/target/lib
CMAKE_ARGS += -DBUILD_TOOLS=ON
CMAKE_ARGS += -DBUILD_TESTS=OFF
CMAKE_ARGS += -DCMAKE_CXX_FLAGS="-Wno-deprecated-declarations"

ifneq ($(wildcard $(FFMPEG_PACKAGE_ROOT)),)
CMAKE_ARGS += -DCMAKE_INSTALL_RPATH=$(FFMPEG_PREFIX)/lib

# Location of FFMPEG Headers
CMAKE_ARGS += -DFFMPEG_LIBAVCODEC_FFT_INCLUDE_DIRS:PATH=$(FFMPEG_STAGING_PREFIX)/include
CMAKE_ARGS += -DFFMPEG_LIBAVCODEC_FFT_LIBRARIES:FILEPATH=$(FFMPEG_STAGING_PREFIX)/lib/libavcodec.so
CMAKE_ARGS += -DFFMPEG_LIBAVCODEC_INCLUDE_DIRS:PATH=$(FFMPEG_STAGING_PREFIX)/include
CMAKE_ARGS += -DFFMPEG_LIBAVCODEC_LIBRARIES:FILEPATH=$(FFMPEG_STAGING_PREFIX)/lib/libavcodec.so
CMAKE_ARGS += -DFFMPEG_LIBAVDEVICE_INCLUDE_DIRS:PATH=$(FFMPEG_STAGING_PREFIX)/include
CMAKE_ARGS += -DFFMPEG_LIBAVDEVICE_LIBRARIES:FILEPATH=$(FFMPEG_STAGING_PREFIX)/lib/libavdevice.so
CMAKE_ARGS += -DFFMPEG_LIBAVFORMAT_INCLUDE_DIRS:PATH=$(FFMPEG_STAGING_PREFIX)/include
CMAKE_ARGS += -DFFMPEG_LIBAVFORMAT_LIBRARIES:FILEPATH=$(FFMPEG_STAGING_PREFIX)/lib/libavformat.so
#CMAKE_ARGS += -DFFMPEG_LIBAVRESAMPLE_INCLUDE_DIRS:PATH=$(FFMPEG_STAGING_PREFIX)/include
#CMAKE_ARGS += -DFFMPEG_LIBAVRESAMPLE_LIBRARIES:FILEPATH=$(FFMPEG_STAGING_PREFIX)/lib/libswresample.so
CMAKE_ARGS += -DFFMPEG_LIBAVUTIL_INCLUDE_DIRS:PATH=$(FFMPEG_STAGING_PREFIX)/include
CMAKE_ARGS += -DFFMPEG_LIBAVUTIL_LIBRARIES:FILEPATH=$(FFMPEG_STAGING_PREFIX)/lib/libavutil.so
CMAKE_ARGS += -DFFMPEG_LIBSWRESAMPLE_INCLUDE_DIRS:PATH=$(FFMPEG_STAGING_PREFIX)/include
CMAKE_ARGS += -DFFMPEG_LIBSWRESAMPLE_LIBRARIES:FILEPATH=$(FFMPEG_STAGING_PREFIX)/lib/libswresample.so
CMAKE_ARGS += -DFFMPEG_LIBSWSCALE_INCLUDE_DIRS:PATH=$(FFMPEG_STAGING_PREFIX)/include
CMAKE_ARGS += -DFFMPEG_LIBSWSCALE_LIBRARIES:FILEPATH=$(FFMPEG_STAGING_PREFIX)/lib/libswscale.so

else
DEPENDS = cross/ffmpeg$(FFMPEG_VERSION)
DEPENDS = cross/ffmpeg6
CMAKE_RPATH =
endif

CMAKE_BUILD_DIR = $(WORK_DIR)/$(PKG_DIR)
CMAKE_USE_TOOLCHAIN_FILE = OFF

include ../../mk/spksrc.cross-cmake.mk

CMAKE_ARGS += -DBUILD_TOOLS=ON
CMAKE_ARGS += -DBUILD_TESTS=OFF
CMAKE_ARGS += -DCMAKE_INSTALL_RPATH=$(CMAKE_RPATH)
CMAKE_ARGS += -DCMAKE_CXX_FLAGS="-Wno-deprecated-declarations"
6 changes: 3 additions & 3 deletions cross/chromaprint/digests
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
chromaprint-gitaa67c95b9e486884a6d3ee8b0c91207d8c2b0551.tar.gz SHA1 3e85f4bd134263b1699b7e7412b1e089865185d7
chromaprint-gitaa67c95b9e486884a6d3ee8b0c91207d8c2b0551.tar.gz SHA256 88e13f065e31d59d102339d956d0e2f99b125386e4d58ae7de6f09b90104b90f
chromaprint-gitaa67c95b9e486884a6d3ee8b0c91207d8c2b0551.tar.gz MD5 80d7d474a585c186a6a3285465bfef1e
chromaprint-1.5.1.tar.gz SHA1 f54d8b58ff514ab65851d524237b38d8965cba57
chromaprint-1.5.1.tar.gz SHA256 a1aad8fa3b8b18b78d3755b3767faff9abb67242e01b478ec9a64e190f335e1c
chromaprint-1.5.1.tar.gz MD5 54e71f86bcf1d34989db639044ba9628
Loading