Hello community, here is the log from the commit of package ffnvcodec for openSUSE:Factory checked in at 2018-11-08 09:49:24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ffnvcodec (Old) and /work/SRC/openSUSE:Factory/.ffnvcodec.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ffnvcodec" Thu Nov 8 09:49:24 2018 rev:4 rq:646708 version:8.2.15.5 Changes: -------- --- /work/SRC/openSUSE:Factory/ffnvcodec/ffnvcodec.changes 2018-10-08 17:50:46.318074931 +0200 +++ /work/SRC/openSUSE:Factory/.ffnvcodec.new/ffnvcodec.changes 2018-11-08 09:49:27.665031160 +0100 @@ -1,0 +2,8 @@ +Tue Nov 6 17:14:47 UTC 2018 - Martin Herkt <9+suse@cirno.systems> + +- Update to version 8.2.15.5 + * Add CUDA function cuDeviceGetAttribute V2 + * Guard against multiple definitions of CUuuid + * Add cuGetDeviceUuid, load as optional function + +------------------------------------------------------------------- Old: ---- nv-codec-headers-8.2.15.1.tar.xz New: ---- nv-codec-headers-8.2.15.5.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ffnvcodec.spec ++++++ --- /var/tmp/diff_new_pack.sYDGU1/_old 2018-11-08 09:49:28.209030518 +0100 +++ /var/tmp/diff_new_pack.sYDGU1/_new 2018-11-08 09:49:28.209030518 +0100 @@ -17,7 +17,7 @@ Name: ffnvcodec -Version: 8.2.15.1 +Version: 8.2.15.5 Release: 0 Summary: FFmpeg version of NVIDIA codec API headers License: MIT ++++++ _service ++++++ --- /var/tmp/diff_new_pack.sYDGU1/_old 2018-11-08 09:49:28.237030485 +0100 +++ /var/tmp/diff_new_pack.sYDGU1/_new 2018-11-08 09:49:28.237030485 +0100 @@ -4,7 +4,7 @@ <param name="scm">git</param> <param name="versionformat">@PARENT_TAG@</param> <param name="versionrewrite-pattern">n([0-9\.]*)</param> - <param name="revision">n8.2.15.1</param> + <param name="revision">n8.2.15.5</param> </service> <service mode="disabled" name="recompress"> <param name="file">*.tar</param> ++++++ nv-codec-headers-8.2.15.1.tar.xz -> nv-codec-headers-8.2.15.5.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nv-codec-headers-8.2.15.1/ffnvcodec.pc.in new/nv-codec-headers-8.2.15.5/ffnvcodec.pc.in --- old/nv-codec-headers-8.2.15.1/ffnvcodec.pc.in 2018-10-07 17:47:41.000000000 +0200 +++ new/nv-codec-headers-8.2.15.5/ffnvcodec.pc.in 2018-11-02 18:38:27.000000000 +0100 @@ -3,5 +3,5 @@ Name: ffnvcodec Description: FFmpeg version of Nvidia Codec SDK headers -Version: 8.2.15.1 +Version: 8.2.15.5 Cflags: -I${includedir} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nv-codec-headers-8.2.15.1/include/ffnvcodec/dynlink_cuda.h new/nv-codec-headers-8.2.15.5/include/ffnvcodec/dynlink_cuda.h --- old/nv-codec-headers-8.2.15.1/include/ffnvcodec/dynlink_cuda.h 2018-10-07 17:47:41.000000000 +0200 +++ new/nv-codec-headers-8.2.15.5/include/ffnvcodec/dynlink_cuda.h 2018-11-02 18:38:27.000000000 +0100 @@ -59,6 +59,31 @@ CUDA_ERROR_NOT_READY = 600 } CUresult; +/** + * Device properties (subset) + */ +typedef enum CUdevice_attribute_enum { + CU_DEVICE_ATTRIBUTE_CLOCK_RATE = 13, + CU_DEVICE_ATTRIBUTE_MULTIPROCESSOR_COUNT = 16, + CU_DEVICE_ATTRIBUTE_INTEGRATED = 18, + CU_DEVICE_ATTRIBUTE_CAN_MAP_HOST_MEMORY = 19, + CU_DEVICE_ATTRIBUTE_COMPUTE_MODE = 20, + CU_DEVICE_ATTRIBUTE_CONCURRENT_KERNELS = 31, + CU_DEVICE_ATTRIBUTE_PCI_BUS_ID = 33, + CU_DEVICE_ATTRIBUTE_PCI_DEVICE_ID = 34, + CU_DEVICE_ATTRIBUTE_TCC_DRIVER = 35, + CU_DEVICE_ATTRIBUTE_MEMORY_CLOCK_RATE = 36, + CU_DEVICE_ATTRIBUTE_GLOBAL_MEMORY_BUS_WIDTH = 37, + CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT = 40, + CU_DEVICE_ATTRIBUTE_UNIFIED_ADDRESSING = 41, + CU_DEVICE_ATTRIBUTE_PCI_DOMAIN_ID = 50, + CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MAJOR = 75, + CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MINOR = 76, + CU_DEVICE_ATTRIBUTE_MANAGED_MEMORY = 83, + CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD = 84, + CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD_GROUP_ID = 85, +} CUdevice_attribute; + typedef enum CUarray_format_enum { CU_AD_FORMAT_UNSIGNED_INT8 = 0x01, CU_AD_FORMAT_UNSIGNED_INT16 = 0x02, @@ -100,6 +125,13 @@ CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE = 5, } CUexternalMemoryHandleType; +#ifndef CU_UUID_HAS_BEEN_DEFINED +#define CU_UUID_HAS_BEEN_DEFINED +typedef struct CUuuid_st { + char bytes[16]; +} CUuuid; +#endif + typedef struct CUDA_MEMCPY2D_st { size_t srcXInBytes; size_t srcY; @@ -177,7 +209,9 @@ typedef CUresult CUDAAPI tcuInit(unsigned int Flags); typedef CUresult CUDAAPI tcuDeviceGetCount(int *count); typedef CUresult CUDAAPI tcuDeviceGet(CUdevice *device, int ordinal); +typedef CUresult CUDAAPI tcuDeviceGetAttribute(int *pi, CUdevice_attribute attrib, CUdevice dev); typedef CUresult CUDAAPI tcuDeviceGetName(char *name, int len, CUdevice dev); +typedef CUresult CUDAAPI tcuDeviceGetUuid(CUuuid *uuid, CUdevice dev); typedef CUresult CUDAAPI tcuDeviceComputeCapability(int *major, int *minor, CUdevice dev); typedef CUresult CUDAAPI tcuCtxCreate_v2(CUcontext *pctx, unsigned int flags, CUdevice dev); typedef CUresult CUDAAPI tcuCtxSetLimit(CUlimit limit, size_t value); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nv-codec-headers-8.2.15.1/include/ffnvcodec/dynlink_loader.h new/nv-codec-headers-8.2.15.5/include/ffnvcodec/dynlink_loader.h --- old/nv-codec-headers-8.2.15.1/include/ffnvcodec/dynlink_loader.h 2018-10-07 17:47:41.000000000 +0200 +++ new/nv-codec-headers-8.2.15.5/include/ffnvcodec/dynlink_loader.h 2018-11-02 18:38:27.000000000 +0100 @@ -63,7 +63,7 @@ #if !defined(FFNV_LOAD_FUNC) || !defined(FFNV_SYM_FUNC) # ifdef _WIN32 # define FFNV_LOAD_FUNC(path) LoadLibrary(TEXT(path)) -# define FFNV_SYM_FUNC(lib, sym) GetProcAddress((lib), TEXT(sym)) +# define FFNV_SYM_FUNC(lib, sym) GetProcAddress((lib), (sym)) # define FFNV_FREE_FUNC(lib) FreeLibrary(lib) # else # include <dlfcn.h> @@ -139,7 +139,9 @@ tcuInit *cuInit; tcuDeviceGetCount *cuDeviceGetCount; tcuDeviceGet *cuDeviceGet; + tcuDeviceGetAttribute *cuDeviceGetAttribute; tcuDeviceGetName *cuDeviceGetName; + tcuDeviceGetUuid *cuDeviceGetUuid; tcuDeviceComputeCapability *cuDeviceComputeCapability; tcuCtxCreate_v2 *cuCtxCreate; tcuCtxSetLimit *cuCtxSetLimit; @@ -247,6 +249,7 @@ LOAD_SYMBOL(cuInit, tcuInit, "cuInit"); LOAD_SYMBOL(cuDeviceGetCount, tcuDeviceGetCount, "cuDeviceGetCount"); LOAD_SYMBOL(cuDeviceGet, tcuDeviceGet, "cuDeviceGet"); + LOAD_SYMBOL(cuDeviceGetAttribute, tcuDeviceGetAttribute, "cuDeviceGetAttribute"); LOAD_SYMBOL(cuDeviceGetName, tcuDeviceGetName, "cuDeviceGetName"); LOAD_SYMBOL(cuDeviceComputeCapability, tcuDeviceComputeCapability, "cuDeviceComputeCapability"); LOAD_SYMBOL(cuCtxCreate, tcuCtxCreate_v2, "cuCtxCreate_v2"); @@ -279,6 +282,7 @@ LOAD_SYMBOL(cuGraphicsUnmapResources, tcuGraphicsUnmapResources, "cuGraphicsUnmapResources"); LOAD_SYMBOL(cuGraphicsSubResourceGetMappedArray, tcuGraphicsSubResourceGetMappedArray, "cuGraphicsSubResourceGetMappedArray"); + LOAD_SYMBOL_OPT(cuDeviceGetUuid, tcuDeviceGetUuid, "cuDeviceGetUuid"); LOAD_SYMBOL_OPT(cuImportExternalMemory, tcuImportExternalMemory, "cuImportExternalMemory"); LOAD_SYMBOL_OPT(cuDestroyExternalMemory, tcuDestroyExternalMemory, "cuDestroyExternalMemory"); LOAD_SYMBOL_OPT(cuExternalMemoryGetMappedBuffer, tcuExternalMemoryGetMappedBuffer, "cuExternalMemoryGetMappedBuffer");