From 444158945658910f46ee01879e6c659dc6d0831d Mon Sep 17 00:00:00 2001 From: shinchiro Date: Wed, 20 Mar 2024 00:26:15 +0800 Subject: [PATCH] vapoursynth: include required def files in repo Instead relying dlls from tarball to generate def file, including VapourSynth.def and VSScript.def is wise choice since the public API doesnt change. --- packages/VSScript.def | 27 +++++++++++++++++++++++++++ packages/VapourSynth.def | 8 ++++++++ packages/vapoursynth.cmake | 18 ++++++++---------- 3 files changed, 43 insertions(+), 10 deletions(-) create mode 100644 packages/VSScript.def create mode 100644 packages/VapourSynth.def diff --git a/packages/VSScript.def b/packages/VSScript.def new file mode 100644 index 000000000..0a68d988e --- /dev/null +++ b/packages/VSScript.def @@ -0,0 +1,27 @@ +; +; Definition file of VSScript.dll +; Automatic generated by gendef +; written by Kai Tietz 2008 +; +LIBRARY "VSScript.dll" +EXPORTS +getVSScriptAPI@4 +vsscript_clearEnvironment@4 +vsscript_clearOutput@8 +vsscript_clearVariable@8 +vsscript_createScript@4 +vsscript_evaluateFile@12 +vsscript_evaluateScript@16 +vsscript_finalize@0 +vsscript_freeScript@4 +vsscript_getApiVersion@0 +vsscript_getCore@4 +vsscript_getError@4 +vsscript_getExitCode@4 +vsscript_getOutput2@12 +vsscript_getOutput@8 +vsscript_getVSApi2@4 +vsscript_getVSApi@0 +vsscript_getVariable@12 +vsscript_init@0 +vsscript_setVariable@8 diff --git a/packages/VapourSynth.def b/packages/VapourSynth.def new file mode 100644 index 000000000..a2763f8ec --- /dev/null +++ b/packages/VapourSynth.def @@ -0,0 +1,8 @@ +; +; Definition file of VapourSynth.dll +; Automatic generated by gendef +; written by Kai Tietz 2008 +; +LIBRARY "VapourSynth.dll" +EXPORTS +getVapourSynthAPI@4 diff --git a/packages/vapoursynth.cmake b/packages/vapoursynth.cmake index dcb13b42c..5337e0e18 100644 --- a/packages/vapoursynth.cmake +++ b/packages/vapoursynth.cmake @@ -1,11 +1,7 @@ if(${TARGET_CPU} MATCHES "x86_64") set(rev "R65") - set(link "https://github.com/vapoursynth/vapoursynth/releases/download/${rev}/VapourSynth64-Portable-${rev}.7z") - set(hash "E3FCA973DC56283289A2F4F73FE0A6908FF270B9C46B65AF3F8674BE867CA303") else() set(rev "R63") - set(link "https://github.com/vapoursynth/vapoursynth/releases/download/${rev}/VapourSynth32-Portable-${rev}.7z") - set(hash "88057C6BD25D42CCCCDE94305AF340B95BFCA7EA2D9BB57A544B2621A60F563F") set(dlltool_opts "-U") endif() @@ -15,12 +11,12 @@ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/vapoursynth-script.pc.in ${CMAKE_CURR set(GENERATE_DEF ${CMAKE_CURRENT_BINARY_DIR}/vapoursynth-prefix/src/generate_def.sh) file(WRITE ${GENERATE_DEF} "#!/bin/bash -gendef - $1.dll | sed -r -e 's|^_||' -e 's|@[1-9]+$||' > $1.def") +if [[ \"$1\" != \"i686\" ]]; then + sed -r -e 's|@[0-9]+$||' -i $2 +fi") ExternalProject_Add(vapoursynth - URL ${link} - URL_HASH SHA256=${hash} - DOWNLOAD_DIR ${SOURCE_LOCATION} + DOWNLOAD_COMMAND "" UPDATE_COMMAND "" PATCH_COMMAND "" CONFIGURE_COMMAND "" @@ -32,9 +28,11 @@ ExternalProject_Add(vapoursynth ExternalProject_Add_Step(vapoursynth generate-def DEPENDEES install WORKING_DIRECTORY + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/VapourSynth.def /VapourSynth.def + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/VSScript.def /VSScript.def COMMAND chmod 755 ${GENERATE_DEF} - COMMAND ${EXEC} ${GENERATE_DEF} VSScript - COMMAND ${EXEC} ${GENERATE_DEF} VapourSynth + COMMAND ${EXEC} ${GENERATE_DEF} ${TARGET_CPU} VapourSynth.def + COMMAND ${EXEC} ${GENERATE_DEF} ${TARGET_CPU} VSScript.def LOG 1 )