Skip to content

Commit

Permalink
[dav1d] Add dav1d AV1 decoder port (#15009)
Browse files Browse the repository at this point in the history
* [dav1d] Add dav1d AV1 decoder port

* Remove unnecessary port-version

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>

* Bump dav1d to 0.8.1

* Skip dav1d x86 due to infinite link

* Add dav1d port version

* Apply dav1d code review

* Reset dav1d version

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
  • Loading branch information
RichLogan and NancyLi1013 committed Jan 25, 2021
1 parent bb4de6f commit fc0d6b2
Show file tree
Hide file tree
Showing 5 changed files with 69 additions and 0 deletions.
13 changes: 13 additions & 0 deletions ports/dav1d/patch_underscore_prefix.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
diff --git a/meson.build b/meson.build
index 07b2586..02acd91 100644
--- a/meson.build
+++ b/meson.build
@@ -370,7 +370,7 @@ endif

cdata.set10('ARCH_PPC64LE', host_machine.cpu() == 'ppc64le')

-if cc.symbols_have_underscore_prefix()
+if cc.symbols_have_underscore_prefix() or (host_machine.cpu_family() == 'x86' and host_machine.system() == 'windows')
cdata.set10('PREFIX', true)
cdata_asm.set10('PREFIX', true)
endif
33 changes: 33 additions & 0 deletions ports/dav1d/portfile.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
vcpkg_fail_port_install(ON_ARCH "arm" "x86" ON_TARGET "uwp")

vcpkg_from_gitlab(
GITLAB_URL https://code.videolan.org
OUT_SOURCE_PATH SOURCE_PATH
REPO videolan/dav1d
REF 0.8.1
SHA512 dd40b82b65e4be37a27ab11e7116f7a244b0da4469915ead3922ac31724fb6da3910a78629a32a669031fe08d4323ab135174afb7462f6ea4adf96c111841c1c
PATCHES
"patch_underscore_prefix.patch"
)

vcpkg_find_acquire_program(NASM)
get_filename_component(NASM_EXE_PATH ${NASM} DIRECTORY)
vcpkg_add_to_path(${NASM_EXE_PATH})

set(LIBRARY_TYPE ${VCPKG_LIBRARY_LINKAGE})
if (LIBRARY_TYPE STREQUAL "dynamic")
set(LIBRARY_TYPE "shared")
endif(LIBRARY_TYPE STREQUAL "dynamic")

vcpkg_configure_meson(
SOURCE_PATH ${SOURCE_PATH}
OPTIONS
--default-library=${LIBRARY_TYPE}
-Denable_tests=false
-Denable_tools=false
)

vcpkg_install_meson()
vcpkg_copy_pdbs()

configure_file("${SOURCE_PATH}/COPYING" "${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright" COPYONLY)
10 changes: 10 additions & 0 deletions ports/dav1d/vcpkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"name": "dav1d",
"version-string": "0.8.1",
"description": "dav1d is a new open-source AV1 decoder developed by the VideoLAN and FFmpeg communities and sponsored by the Alliance for Open Media.",
"homepage": "https://code.videolan.org/videolan/dav1d",
"supports": "!(uwp | arm | x86)",
"dependencies": [
"tool-meson"
]
}
4 changes: 4 additions & 0 deletions versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -1532,6 +1532,10 @@
"baseline": "3.0.0",
"port-version": 1
},
"dav1d": {
"baseline": "0.8.1",
"port-version": 0
},
"dbg-macro": {
"baseline": "2019-07-11",
"port-version": 0
Expand Down
9 changes: 9 additions & 0 deletions versions/d-/dav1d.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"versions": [
{
"git-tree": "1c30fb68cde7004f37eb289c95fb9823331fe571",
"version-string": "0.8.1",
"port-version": 0
}
]
}

0 comments on commit fc0d6b2

Please sign in to comment.