diff --git a/libs/_autotools/mlt/mlt.py b/libs/_autotools/mlt/mlt.py index 787b44a4..0ab476b0 100644 --- a/libs/_autotools/mlt/mlt.py +++ b/libs/_autotools/mlt/mlt.py @@ -1,49 +1,49 @@ import info class subinfo(info.infoclass): def setTargets( self ): self.description = "Open source multimedia framework" self.webpage = "https://www.mltframework.org" for ver in ['6.16.0', '6.18.0']: self.targets[ ver ] = f"https://github.com/mltframework/mlt/archive/v{ver}.tar.gz" self.targetInstSrc[ ver ] = "mlt-" + ver self.targetDigests['6.16.0'] = (['9c28e54cd3ae1d43f8d0d4a24f9cee4f4b161255a3cd2aa29061fce5d46158e6'], CraftHash.HashAlgorithm.SHA256) self.targetDigests['6.18.0'] = (['9ea6775300b9f997460f5d6adde1ea41e525ecfd30a70b987e13800e4c387ddb'], CraftHash.HashAlgorithm.SHA256) self.svnTargets["master"] = "https://github.com/mltframework/mlt.git" - self.patchLevel['master'] = 20200116 + self.patchLevel['master'] = 20200213 self.defaultTarget = "master" def setDependencies( self ): self.buildDependencies["dev-utils/pkg-config"] = None self.runtimeDependencies["libs/libxml2"] = None self.runtimeDependencies["libs/ffmpeg"] = None self.runtimeDependencies["libs/qt5/qtsvg"] = None self.runtimeDependencies["libs/libfftw"] = None self.runtimeDependencies["libs/libsamplerate"] = None # self.runtimeDependencies["libs/exiv2"] = None if OsUtils.isWin(): self.runtimeDependencies["libs/dlfcn-win32"] = None self.runtimeDependencies["libs/frei0r-plugins"] = None self.runtimeDependencies["libs/libsdl2"] = None self.runtimeDependencies["libs/vidstab"] = None # self.runtimeDependencies["libs/jack"] = None # self.runtimeDependencies["libs/ladspa-sdk"] = None # self.runtimeDependencies["libs/ladspa-cmt"] = None from Package.AutoToolsPackageBase import * class Package(AutoToolsPackageBase): def __init__( self, **args ): AutoToolsPackageBase.__init__( self ) self.platform = "" self.subinfo.options.configure.noDataRootDir = True self.subinfo.options.useShadowBuild = False self.subinfo.options.configure.args = " --enable-gpl --enable-gpl3 --enable-sdl2 --disable-sdl --disable-rtaudio --disable-decklink --disable-gtk2" if CraftCore.compiler.isWindows: prefix = OsUtils.toUnixPath(CraftCore.standardDirs.craftRoot()) includedir = prefix+'/include/qt5' libdir = prefix+'/lib' self.subinfo.options.configure.args += \ f" --target-os=MinGW --qt-libdir='{libdir}' --qt-includedir='{includedir}' --disable-windeploy " diff --git a/libs/rubberband/no-jni-to-install.patch b/libs/rubberband/no-jni-to-install.patch new file mode 100644 index 00000000..3e3b5341 --- /dev/null +++ b/libs/rubberband/no-jni-to-install.patch @@ -0,0 +1,10 @@ +--- Makefile.in.orig 2018-05-15 19:43:39.000000000 +0200 ++++ Makefile.in 2020-02-13 23:23:02.290392014 +0100 +@@ -183,7 +183,6 @@ + cp $(DYNAMIC_TARGET) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_FULL_VERSION) + ln -s $(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_FULL_VERSION) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_ABI_VERSION) + ln -s $(LIBNAME)$(DYNAMIC_EXTENSION).$(DYNAMIC_FULL_VERSION) $(DESTDIR)$(INSTALL_LIBDIR)/$(LIBNAME)$(DYNAMIC_EXTENSION) +- cp -f $(JNI_TARGET) $(DESTDIR)$(INSTALL_LIBDIR)/$(JNINAME)$(DYNAMIC_EXTENSION) + cp $(VAMP_TARGET) $(DESTDIR)$(INSTALL_VAMPDIR) + cp vamp/vamp-rubberband.cat $(DESTDIR)$(INSTALL_VAMPDIR) + cp $(LADSPA_TARGET) $(DESTDIR)$(INSTALL_LADSPADIR) diff --git a/libs/rubberband/rubberband.py b/libs/rubberband/rubberband.py new file mode 100644 index 00000000..83d9bf49 --- /dev/null +++ b/libs/rubberband/rubberband.py @@ -0,0 +1,52 @@ +import info + +from Package.MSBuildPackageBase import * +from Package.AutoToolsPackageBase import * + +class subinfo(info.infoclass): + def setTargets( self ): + for ver in ["1.8.2"]: + self.targets[ ver] = f"https://github.com/breakfastquay/rubberband/archive/v{ver}.tar.gz" + self.targetInstSrc[ ver ] = f"rubberband-{ver}" + self.targetDigests["1.8.2"] = (['0bb058710b476712480cf6b3e1c1178c6237e9e8e3c98092f00e31632a011d15'], CraftHash.HashAlgorithm.SHA256) + self.patchToApply['1.8.2'] = [("no-jni-to-install.patch", 0)] + self.svnTargets['master'] = "https://github.com/breakfastquay/rubberband" + + self.description = "An audio time-stretching and pitch-shifting library and utility program" + self.webpage = "http://breakfastquay.com/rubberband/" + self.defaultTarget = "1.8.2" + + def setDependencies( self ): + self.runtimeDependencies["virtual/base"] = None + self.runtimeDependencies["libs/libfftw"] = None + self.runtimeDependencies["libs/libsamplerate"] = None + self.runtimeDependencies["libs/libsndfile"] = None + + +class PackageAutoTools(AutoToolsPackageBase): + def __init__(self, **args): + AutoToolsPackageBase.__init__(self) + +class PackageMSVC(MSBuildPackageBase): + def __init__(self, **args): + MSBuildPackageBase.__init__(self) + self.subinfo.options.configure.projectFile = os.path.join(self.sourceDir, "rubberband-dll.vcxproj") + + def make(self): + with utils.ScopedEnv({ + "LIB" : f"{os.environ['LIB']};{os.path.join(CraftStandardDirs.craftRoot() , 'lib')}", + "INCLUDE" : f"{os.environ['INCLUDE']};{os.path.join(CraftStandardDirs.craftRoot() , 'include')}"}): + return MSBuildPackageBase.make(self) + + def install(self): + return MSBuildPackageBase.install(self) + +if CraftCore.compiler.isGCCLike(): + class Package(PackageAutoTools): + def __init__(self): + PackageAutoTools.__init__(self) + self.subinfo.options.useShadowBuild = False +else: + class Package(PackageMSVC): + def __init__(self): + PackageMSVC.__init__(self) diff --git a/libs/vamp-plugin-sdk/build-dynamic-sdk-plugins-only.patch b/libs/vamp-plugin-sdk/build-dynamic-sdk-plugins-only.patch new file mode 100644 index 00000000..d4aa8242 --- /dev/null +++ b/libs/vamp-plugin-sdk/build-dynamic-sdk-plugins-only.patch @@ -0,0 +1,28 @@ +--- Makefile.in.orig 2020-02-13 22:48:23.778385051 +0100 ++++ Makefile.in 2020-02-13 22:54:48.777314538 +0100 +@@ -280,7 +280,7 @@ + rm -f $(SDK_STATIC) $(SDK_DYNAMIC) $(HOSTSDK_STATIC) $(HOSTSDK_DYNAMIC) $(PLUGIN_TARGET) $(HOST_TARGET) $(RDFGEN_TARGET) *~ */*~ + rm -f config.log config.status Makefile + +-install: $(SDK_STATIC) $(SDK_DYNAMIC) $(HOSTSDK_STATIC) $(HOSTSDK_DYNAMIC) $(PLUGIN_TARGET) $(HOST_TARGET) $(RDFGEN_TARGET) ++install: $(SDK_DYNAMIC) $(HOSTSDK_DYNAMIC) $(PLUGIN_TARGET) + mkdir -p $(DESTDIR)$(INSTALL_API_HEADERS) + mkdir -p $(DESTDIR)$(INSTALL_SDK_HEADERS) + mkdir -p $(DESTDIR)$(INSTALL_HOSTSDK_HEADERS) +@@ -288,16 +288,12 @@ + mkdir -p $(DESTDIR)$(INSTALL_PKGCONFIG) + mkdir -p $(DESTDIR)$(INSTALL_BINARIES) + mkdir -p $(DESTDIR)$(INSTALL_PLUGINS) +- cp $(HOST_TARGET) $(DESTDIR)$(INSTALL_BINARIES) +- cp $(RDFGEN_TARGET) $(DESTDIR)$(INSTALL_BINARIES) + cp $(PLUGIN_TARGET) $(DESTDIR)$(INSTALL_PLUGINS) + cp $(PLUGIN_CAT) $(DESTDIR)$(INSTALL_PLUGINS) + cp $(PLUGIN_TTL) $(DESTDIR)$(INSTALL_PLUGINS) + cp $(API_HEADERS) $(DESTDIR)$(INSTALL_API_HEADERS) + cp $(SDK_HEADERS) $(DESTDIR)$(INSTALL_SDK_HEADERS) + cp $(HOSTSDK_HEADERS) $(DESTDIR)$(INSTALL_HOSTSDK_HEADERS) +- cp $(SDK_STATIC) $(DESTDIR)$(INSTALL_SDK_LIBS) +- cp $(HOSTSDK_STATIC) $(DESTDIR)$(INSTALL_SDK_LIBS) + cp $(SDK_DYNAMIC) $(DESTDIR)$(INSTALL_SDK_LIBS)/$(INSTALL_SDK_LIBNAME) + cp $(HOSTSDK_DYNAMIC) $(DESTDIR)$(INSTALL_SDK_LIBS)/$(INSTALL_HOSTSDK_LIBNAME) + rm -f $(DESTDIR)$(INSTALL_SDK_LIBS)/$(INSTALL_SDK_LINK_ABI) diff --git a/libs/vamp-plugin-sdk/vamp-plugin-sdk.py b/libs/vamp-plugin-sdk/vamp-plugin-sdk.py new file mode 100644 index 00000000..2a5347e7 --- /dev/null +++ b/libs/vamp-plugin-sdk/vamp-plugin-sdk.py @@ -0,0 +1,51 @@ +import info + +from Package.MSBuildPackageBase import * +from Package.AutoToolsPackageBase import * + +class subinfo(info.infoclass): + def setTargets( self ): + for ver in ["2.9.0"]: + self.targets[ ver] = f"https://code.soundsoftware.ac.uk/attachments/download/2588/vamp-plugin-sdk-{ver}.tar.gz" + self.targetInstSrc[ ver ] = f"vamp-plugin-sdk-{ver}" + self.targetDigests["2.9.0"] = (['b72a78ef8ff8a927dc2ed7e66ecf4c62d23268a5d74d02da25be2b8d00341099'], CraftHash.HashAlgorithm.SHA256) + self.patchToApply['2.9.0'] = [("build-dynamic-sdk-plugins-only.patch", 0)] + # self.svnTargets['master'] = "https://code.soundsoftware.ac.uk/hg/vamp-plugin-sdk" + + self.description = "audio analysis plugins system" + self.webpage = "https://www.vamp-plugins.org" + self.defaultTarget = "2.9.0" + + def setDependencies( self ): + self.runtimeDependencies["virtual/base"] = None + + +class PackageAutoTools(AutoToolsPackageBase): + def __init__(self, **args): + AutoToolsPackageBase.__init__(self) + +class PackageMSVC(MSBuildPackageBase): + def __init__(self, **args): + MSBuildPackageBase.__init__(self) + self.subinfo.options.configure.projectFile = os.path.join(self.sourceDir, "build", "VampSDK.sln") + + def make(self): + with utils.ScopedEnv({ + "LIB" : f"{os.environ['LIB']};{os.path.join(CraftStandardDirs.craftRoot() , 'lib')}", + "INCLUDE" : f"{os.environ['INCLUDE']};{os.path.join(CraftStandardDirs.craftRoot() , 'include')}"}): + return MSBuildPackageBase.make(self) + + def install(self): + return MSBuildPackageBase.install(self, installHeaders=False, + buildDirs=[os.path.join(self.sourceDir, "build")]) + +if CraftCore.compiler.isGCCLike(): + class Package(PackageAutoTools): + def __init__(self): + PackageAutoTools.__init__(self) + self.subinfo.options.useShadowBuild = False + self.subinfo.options.configure.args += " --disable-programs" +else: + class Package(PackageMSVC): + def __init__(self): + PackageMSVC.__init__(self)