forked from Lainports/freebsd-ports
Add Vulkan SDK ports
https://www.khronos.org/vulkan/ PR: 222175 Tested by: Johannes Lundberg <johalun0@gmail.com> Submitted by: Greg V <greg@unrelenting.technology>
This commit is contained in:
parent
a94a04921a
commit
fc090a966f
37 changed files with 585 additions and 3 deletions
|
|
@ -801,6 +801,7 @@
|
|||
SUBDIR += global
|
||||
SUBDIR += glog
|
||||
SUBDIR += glrparser
|
||||
SUBDIR += glslang
|
||||
SUBDIR += glui
|
||||
SUBDIR += gmake
|
||||
SUBDIR += gnatcoll
|
||||
|
|
@ -6163,6 +6164,7 @@
|
|||
SUBDIR += spdlog
|
||||
SUBDIR += spice-protocol
|
||||
SUBDIR += spin
|
||||
SUBDIR += spirv-tools
|
||||
SUBDIR += splint
|
||||
SUBDIR += srecord
|
||||
SUBDIR += st
|
||||
|
|
@ -6286,6 +6288,9 @@
|
|||
SUBDIR += violet
|
||||
SUBDIR += visualparadigm
|
||||
SUBDIR += vstr
|
||||
SUBDIR += vulkan-headers
|
||||
SUBDIR += vulkan-tools
|
||||
SUBDIR += vulkan-validation-layers
|
||||
SUBDIR += vxlog
|
||||
SUBDIR += wand-libconfig
|
||||
SUBDIR += wandio
|
||||
|
|
|
|||
23
devel/glslang/Makefile
Normal file
23
devel/glslang/Makefile
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= glslang
|
||||
DISTVERSION= 6.2.2596-248
|
||||
DISTVERSIONSUFFIX= -ge0bc65b
|
||||
CATEGORIES= devel graphics
|
||||
|
||||
MAINTAINER= greg@unrelenting.technology
|
||||
COMMENT= OpenGL and OpenGL ES shader front end and validator
|
||||
|
||||
LICENSE= BSD3CLAUSE
|
||||
LICENSE_FILE= ${WRKDIR}/LICENSE
|
||||
|
||||
USES= cmake:outsource compiler:c++11-lib
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= KhronosGroup
|
||||
|
||||
post-extract:
|
||||
${SED} '/^$$/,$$d' ${WRKSRC}/${PORTNAME}/Include/Types.h \
|
||||
>${WRKDIR}/LICENSE
|
||||
|
||||
.include <bsd.port.mk>
|
||||
3
devel/glslang/distinfo
Normal file
3
devel/glslang/distinfo
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
TIMESTAMP = 1533666570
|
||||
SHA256 (KhronosGroup-glslang-6.2.2596-248-ge0bc65b_GH0.tar.gz) = 497a18bfe7e102cda61377ca4fd7dbd84478a89b80e4d53420cf94c9a380f2f0
|
||||
SIZE (KhronosGroup-glslang-6.2.2596-248-ge0bc65b_GH0.tar.gz) = 2353165
|
||||
5
devel/glslang/pkg-descr
Normal file
5
devel/glslang/pkg-descr
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
Glslang is the official reference compiler front end for the OpenGL ES and
|
||||
OpenGL shading languages. It implements a strict interpretation of the
|
||||
specifications for these languages.
|
||||
|
||||
WWW: https://www.khronos.org/opengles/sdk/tools/Reference-Compiler/
|
||||
54
devel/glslang/pkg-plist
Normal file
54
devel/glslang/pkg-plist
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
bin/glslangValidator
|
||||
bin/spirv-remap
|
||||
include/SPIRV/GLSL.ext.AMD.h
|
||||
include/SPIRV/GLSL.ext.EXT.h
|
||||
include/SPIRV/GLSL.ext.KHR.h
|
||||
include/SPIRV/GLSL.ext.NV.h
|
||||
include/SPIRV/GLSL.std.450.h
|
||||
include/SPIRV/GlslangToSpv.h
|
||||
include/SPIRV/Logger.h
|
||||
include/SPIRV/SPVRemapper.h
|
||||
include/SPIRV/SpvBuilder.h
|
||||
include/SPIRV/bitutils.h
|
||||
include/SPIRV/disassemble.h
|
||||
include/SPIRV/doc.h
|
||||
include/SPIRV/hex_float.h
|
||||
include/SPIRV/spirv.hpp
|
||||
include/SPIRV/spvIR.h
|
||||
include/glslang/Include/BaseTypes.h
|
||||
include/glslang/Include/Common.h
|
||||
include/glslang/Include/ConstantUnion.h
|
||||
include/glslang/Include/InfoSink.h
|
||||
include/glslang/Include/InitializeGlobals.h
|
||||
include/glslang/Include/PoolAlloc.h
|
||||
include/glslang/Include/ResourceLimits.h
|
||||
include/glslang/Include/ShHandle.h
|
||||
include/glslang/Include/Types.h
|
||||
include/glslang/Include/arrays.h
|
||||
include/glslang/Include/intermediate.h
|
||||
include/glslang/Include/revision.h
|
||||
include/glslang/MachineIndependent/Initialize.h
|
||||
include/glslang/MachineIndependent/LiveTraverser.h
|
||||
include/glslang/MachineIndependent/ParseHelper.h
|
||||
include/glslang/MachineIndependent/RemoveTree.h
|
||||
include/glslang/MachineIndependent/Scan.h
|
||||
include/glslang/MachineIndependent/ScanContext.h
|
||||
include/glslang/MachineIndependent/SymbolTable.h
|
||||
include/glslang/MachineIndependent/Versions.h
|
||||
include/glslang/MachineIndependent/attribute.h
|
||||
include/glslang/MachineIndependent/gl_types.h
|
||||
include/glslang/MachineIndependent/glslang_tab.cpp.h
|
||||
include/glslang/MachineIndependent/iomapper.h
|
||||
include/glslang/MachineIndependent/localintermediate.h
|
||||
include/glslang/MachineIndependent/parseVersions.h
|
||||
include/glslang/MachineIndependent/preprocessor/PpContext.h
|
||||
include/glslang/MachineIndependent/preprocessor/PpTokens.h
|
||||
include/glslang/MachineIndependent/propagateNoContraction.h
|
||||
include/glslang/MachineIndependent/reflection.h
|
||||
include/glslang/Public/ShaderLang.h
|
||||
lib/libHLSL.a
|
||||
lib/libOGLCompiler.a
|
||||
lib/libOSDependent.a
|
||||
lib/libSPIRV.a
|
||||
lib/libSPVRemapper.a
|
||||
lib/libglslang.a
|
||||
25
devel/spirv-tools/Makefile
Normal file
25
devel/spirv-tools/Makefile
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= spirv-tools
|
||||
DISTVERSIONPREFIX= v
|
||||
DISTVERSION= 2018.4
|
||||
CATEGORIES= devel graphics
|
||||
|
||||
MAINTAINER= greg@unrelenting.technology
|
||||
COMMENT= Tools for processing SPIR-V intermediate shader language modules
|
||||
|
||||
LICENSE= APACHE20
|
||||
|
||||
USES= cmake:outsource compiler:c++11-lib python:build shebangfix
|
||||
USE_LDCONFIG= yes
|
||||
SHEBANG_FILES= tools/lesspipe/spirv-lesspipe.sh
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= KhronosGroup
|
||||
GH_PROJECT= SPIRV-Tools
|
||||
GH_TUPLE= KhronosGroup:SPIRV-Headers:ff684ff:headers/external/spirv-headers
|
||||
|
||||
CMAKE_ON= SPIRV_SKIP_TESTS
|
||||
CMAKE_OFF= SPIRV_WERROR
|
||||
|
||||
.include <bsd.port.mk>
|
||||
5
devel/spirv-tools/distinfo
Normal file
5
devel/spirv-tools/distinfo
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
TIMESTAMP = 1533666224
|
||||
SHA256 (KhronosGroup-SPIRV-Tools-v2018.4_GH0.tar.gz) = e09749d3b9d767cf1cf62ba3cf7d7f992f19681477c434fea214227f3665d8d1
|
||||
SIZE (KhronosGroup-SPIRV-Tools-v2018.4_GH0.tar.gz) = 1327904
|
||||
SHA256 (KhronosGroup-SPIRV-Headers-ff684ff_GH0.tar.gz) = dbeb5b65b290519b026f3eb280107929901d671a7f29ae536885bb72e6c38ebd
|
||||
SIZE (KhronosGroup-SPIRV-Headers-ff684ff_GH0.tar.gz) = 280884
|
||||
11
devel/spirv-tools/pkg-descr
Normal file
11
devel/spirv-tools/pkg-descr
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
The SPIR-V Tools project provides an API and commands for processing SPIR-V
|
||||
modules.
|
||||
|
||||
The project includes an assembler, binary module parser, disassembler,
|
||||
validator, and optimizer for SPIR-V. Except for the optimizer, all are based
|
||||
on a common static library. The library contains all of the implementation
|
||||
details, and is used in the standalone tools whilst also enabling integration
|
||||
into other code bases directly. The optimizer implementation resides in its own
|
||||
library, which depends on the core library.
|
||||
|
||||
WWW: https://github.com/KhronosGroup/SPIRV-Tools
|
||||
18
devel/spirv-tools/pkg-plist
Normal file
18
devel/spirv-tools/pkg-plist
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
bin/spirv-as
|
||||
bin/spirv-cfg
|
||||
bin/spirv-dis
|
||||
bin/spirv-lesspipe.sh
|
||||
bin/spirv-link
|
||||
bin/spirv-opt
|
||||
bin/spirv-stats
|
||||
bin/spirv-val
|
||||
include/spirv-tools/libspirv.h
|
||||
include/spirv-tools/libspirv.hpp
|
||||
include/spirv-tools/linker.hpp
|
||||
include/spirv-tools/optimizer.hpp
|
||||
lib/libSPIRV-Tools-link.a
|
||||
lib/libSPIRV-Tools-opt.a
|
||||
lib/libSPIRV-Tools-shared.so
|
||||
lib/libSPIRV-Tools.a
|
||||
libdata/pkgconfig/SPIRV-Tools-shared.pc
|
||||
libdata/pkgconfig/SPIRV-Tools.pc
|
||||
20
devel/vulkan-headers/Makefile
Normal file
20
devel/vulkan-headers/Makefile
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= vulkan-headers
|
||||
DISTVERSIONPREFIX=sdk-
|
||||
DISTVERSION= 1.1.82.0
|
||||
CATEGORIES= devel graphics
|
||||
|
||||
MAINTAINER= greg@unrelenting.technology
|
||||
COMMENT= Headers for the Vulkan graphics API
|
||||
|
||||
LICENSE= APACHE20
|
||||
|
||||
USES= cmake:outsource
|
||||
STRIP= # nothing to strip
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= KhronosGroup
|
||||
GH_PROJECT= Vulkan-Headers
|
||||
|
||||
.include <bsd.port.mk>
|
||||
3
devel/vulkan-headers/distinfo
Normal file
3
devel/vulkan-headers/distinfo
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
TIMESTAMP = 1533661644
|
||||
SHA256 (KhronosGroup-Vulkan-Headers-sdk-1.1.82.0_GH0.tar.gz) = df73da07d547cfbe88a797802401ea8225e4844e13d4fde52a7cb6e00e5179e5
|
||||
SIZE (KhronosGroup-Vulkan-Headers-sdk-1.1.82.0_GH0.tar.gz) = 472646
|
||||
5
devel/vulkan-headers/pkg-descr
Normal file
5
devel/vulkan-headers/pkg-descr
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
Vulkan is a low-level cross-platform 3D graphics and compute API.
|
||||
|
||||
This port provides the development headers for Vulkan applications.
|
||||
|
||||
WWW: https://github.com/KhronosGroup/Vulkan-Headers
|
||||
23
devel/vulkan-headers/pkg-plist
Normal file
23
devel/vulkan-headers/pkg-plist
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
include/vulkan/vk_icd.h
|
||||
include/vulkan/vk_layer.h
|
||||
include/vulkan/vk_platform.h
|
||||
include/vulkan/vk_sdk_platform.h
|
||||
include/vulkan/vulkan.h
|
||||
include/vulkan/vulkan.hpp
|
||||
include/vulkan/vulkan_android.h
|
||||
include/vulkan/vulkan_core.h
|
||||
include/vulkan/vulkan_ios.h
|
||||
include/vulkan/vulkan_macos.h
|
||||
include/vulkan/vulkan_mir.h
|
||||
include/vulkan/vulkan_vi.h
|
||||
include/vulkan/vulkan_wayland.h
|
||||
include/vulkan/vulkan_win32.h
|
||||
include/vulkan/vulkan_xcb.h
|
||||
include/vulkan/vulkan_xlib.h
|
||||
include/vulkan/vulkan_xlib_xrandr.h
|
||||
share/vulkan/registry/cgenerator.py
|
||||
share/vulkan/registry/generator.py
|
||||
share/vulkan/registry/genvk.py
|
||||
share/vulkan/registry/reg.py
|
||||
share/vulkan/registry/validusage.json
|
||||
share/vulkan/registry/vk.xml
|
||||
30
devel/vulkan-tools/Makefile
Normal file
30
devel/vulkan-tools/Makefile
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= vulkan-tools
|
||||
DISTVERSIONPREFIX= sdk-
|
||||
DISTVERSION= 1.1.82.0
|
||||
CATEGORIES= devel graphics
|
||||
|
||||
MAINTAINER= greg@unrelenting.technology
|
||||
COMMENT= Tools and demos for the Vulkan graphics API
|
||||
|
||||
LICENSE= APACHE20
|
||||
|
||||
BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:devel/vulkan-headers \
|
||||
glslangValidator:devel/glslang
|
||||
LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader \
|
||||
libX11-xcb.so:x11/libX11 \
|
||||
libXrandr.so:x11/libXrandr \
|
||||
libxcb.so:x11/libxcb
|
||||
|
||||
USES= cmake:outsource compiler:c++11-lib pkgconfig python:3.4+,build
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= KhronosGroup
|
||||
GH_PROJECT= Vulkan-Tools
|
||||
|
||||
CMAKE_OFF= BUILD_TESTS BUILD_ICD \
|
||||
BUILD_WSI_WAYLAND_SUPPORT BUILD_WSI_MIR_SUPPORT
|
||||
CMAKE_ARGS= -DGLSLANG_INSTALL_DIR=${LOCALBASE}
|
||||
|
||||
.include <bsd.port.mk>
|
||||
3
devel/vulkan-tools/distinfo
Normal file
3
devel/vulkan-tools/distinfo
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
TIMESTAMP = 1533667375
|
||||
SHA256 (KhronosGroup-Vulkan-Tools-sdk-1.1.82.0_GH0.tar.gz) = 22e5e5dfd47535e1664458ee59706abcaace96575d1a3d7fa9ae779a9e83b89c
|
||||
SIZE (KhronosGroup-Vulkan-Tools-sdk-1.1.82.0_GH0.tar.gz) = 342057
|
||||
33
devel/vulkan-tools/files/patch-cube_CMakeLists.txt
Normal file
33
devel/vulkan-tools/files/patch-cube_CMakeLists.txt
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
--- cube/CMakeLists.txt.orig 2018-08-07 18:44:03 UTC
|
||||
+++ cube/CMakeLists.txt
|
||||
@@ -48,7 +48,7 @@ else()
|
||||
find_program(GLSLANG_VALIDATOR NAMES ${GLSLANG_VALIDATOR_NAME} HINTS "${PROJECT_SOURCE_DIR}/glslang/bin")
|
||||
endif()
|
||||
|
||||
-if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
+if(UNIX AND NOT APPLE)
|
||||
include(FindPkgConfig)
|
||||
option(BUILD_WSI_XCB_SUPPORT "Build XCB WSI support" ON)
|
||||
option(BUILD_WSI_XLIB_SUPPORT "Build Xlib WSI support" ON)
|
||||
@@ -58,10 +58,12 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
|
||||
if(BUILD_WSI_XCB_SUPPORT)
|
||||
find_package(XCB REQUIRED)
|
||||
+ include_directories(SYSTEM ${XCB_INCLUDE_DIR})
|
||||
endif()
|
||||
|
||||
if(BUILD_WSI_XLIB_SUPPORT)
|
||||
find_package(X11 REQUIRED)
|
||||
+ include_directories(SYSTEM ${X11_Xlib_INCLUDE_PATH})
|
||||
endif()
|
||||
|
||||
if(BUILD_WSI_WAYLAND_SUPPORT)
|
||||
@@ -87,7 +89,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
endif()
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||
add_definitions(-DVK_USE_PLATFORM_ANDROID_KHR)
|
||||
-elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
+elseif(UNIX AND NOT APPLE)
|
||||
if(NOT CUBE_WSI_SELECTION)
|
||||
set(CUBE_WSI_SELECTION "XCB")
|
||||
endif()
|
||||
11
devel/vulkan-tools/files/patch-cube_cube.cpp
Normal file
11
devel/vulkan-tools/files/patch-cube_cube.cpp
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
--- cube/cube.cpp.orig 2018-08-07 18:51:55 UTC
|
||||
+++ cube/cube.cpp
|
||||
@@ -2922,7 +2922,7 @@ int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPre
|
||||
return (int)msg.wParam;
|
||||
}
|
||||
|
||||
-#elif __linux__
|
||||
+#elif __unix__
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
Demo demo;
|
||||
24
devel/vulkan-tools/files/patch-vulkaninfo_CMakeLists.txt
Normal file
24
devel/vulkan-tools/files/patch-vulkaninfo_CMakeLists.txt
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
--- vulkaninfo/CMakeLists.txt.orig 2018-08-07 18:45:41 UTC
|
||||
+++ vulkaninfo/CMakeLists.txt
|
||||
@@ -28,7 +28,7 @@ else()
|
||||
add_executable(vulkaninfo vulkaninfo.c)
|
||||
endif()
|
||||
|
||||
-if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
+if(UNIX AND NOT APPLE)
|
||||
include(FindPkgConfig)
|
||||
option(BUILD_WSI_XCB_SUPPORT "Build XCB WSI support" ON)
|
||||
option(BUILD_WSI_XLIB_SUPPORT "Build Xlib WSI support" ON)
|
||||
@@ -36,10 +36,12 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
|
||||
if(BUILD_WSI_XCB_SUPPORT)
|
||||
find_package(XCB REQUIRED)
|
||||
+ include_directories(SYSTEM ${XCB_INCLUDE_DIR})
|
||||
endif()
|
||||
|
||||
if(BUILD_WSI_XLIB_SUPPORT)
|
||||
find_package(X11 REQUIRED)
|
||||
+ include_directories(SYSTEM ${X11_Xlib_INCLUDE_PATH})
|
||||
endif()
|
||||
|
||||
if(VULKANINFO_WSI_SELECTION STREQUAL "XCB")
|
||||
5
devel/vulkan-tools/pkg-descr
Normal file
5
devel/vulkan-tools/pkg-descr
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
Vulkan is a low-level cross-platform 3D graphics and compute API.
|
||||
|
||||
This port provides various tools and demos for Vulkan, e.g. vulkaninfo.
|
||||
|
||||
WWW: https://github.com/KhronosGroup/Vulkan-Tools
|
||||
3
devel/vulkan-tools/pkg-plist
Normal file
3
devel/vulkan-tools/pkg-plist
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
bin/cube
|
||||
bin/cubepp
|
||||
bin/vulkaninfo
|
||||
30
devel/vulkan-validation-layers/Makefile
Normal file
30
devel/vulkan-validation-layers/Makefile
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= vulkan-validation-layers
|
||||
DISTVERSIONPREFIX= sdk-
|
||||
DISTVERSION= 1.1.82.0
|
||||
CATEGORIES= devel graphics
|
||||
|
||||
MAINTAINER= greg@unrelenting.technology
|
||||
COMMENT= Validation layers for the Vulkan graphics API
|
||||
|
||||
LICENSE= APACHE20
|
||||
|
||||
# NOTE: keep spirv-tools and glslang up to date when updating Vulkan
|
||||
BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:devel/vulkan-headers \
|
||||
${LOCALBASE}/include/spirv-tools/libspirv.h:devel/spirv-tools \
|
||||
${LOCALBASE}/include/SPIRV/spirv.hpp:devel/glslang
|
||||
|
||||
USES= cmake:outsource compiler:c++11-lib pkgconfig python:3.4+,build
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= KhronosGroup
|
||||
GH_PROJECT= Vulkan-ValidationLayers
|
||||
|
||||
# WSI_* in here are leftover from when all of Vulkan SDK was in one repo
|
||||
CMAKE_OFF= BUILD_TESTS BUILD_WSI_XCB_SUPPORT BUILD_WSI_XLIB_SUPPORT \
|
||||
BUILD_WSI_WAYLAND_SUPPORT BUILD_WSI_MIR_SUPPORT
|
||||
CMAKE_ARGS= -DGLSLANG_INSTALL_DIR=${LOCALBASE}
|
||||
|
||||
.include <bsd.port.mk>
|
||||
3
devel/vulkan-validation-layers/distinfo
Normal file
3
devel/vulkan-validation-layers/distinfo
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
TIMESTAMP = 1533665599
|
||||
SHA256 (KhronosGroup-Vulkan-ValidationLayers-sdk-1.1.82.0_GH0.tar.gz) = 6d83d1f7085bcfe67a791fce0bfb500dfb5d4833f062db1fc272bdc86e87eded
|
||||
SIZE (KhronosGroup-Vulkan-ValidationLayers-sdk-1.1.82.0_GH0.tar.gz) = 962154
|
||||
23
devel/vulkan-validation-layers/files/patch-CMakeLists.txt
Normal file
23
devel/vulkan-validation-layers/files/patch-CMakeLists.txt
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
--- CMakeLists.txt.orig 2018-07-30 17:53:08 UTC
|
||||
+++ CMakeLists.txt
|
||||
@@ -63,9 +63,9 @@ set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||
# "Helper" targets that don't have interesting source code should set their FOLDER property to this
|
||||
set(LAYERS_HELPER_FOLDER "Helper Targets")
|
||||
|
||||
-if(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
+if(UNIX)
|
||||
set(
|
||||
- FALLBACK_CONFIG_DIRS "/etc/xdg"
|
||||
+ FALLBACK_CONFIG_DIRS "${CMAKE_INSTALL_PREFIX}/etc/xdg:/etc/xdg"
|
||||
CACHE
|
||||
STRING
|
||||
"Search path to use when XDG_CONFIG_DIRS is unset or empty or the current process is SUID/SGID. Default is freedesktop compliant."
|
||||
@@ -78,7 +78,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR CMAKE_SYSTEM_
|
||||
)
|
||||
endif()
|
||||
|
||||
-if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
+if(UNIX AND NOT APPLE)
|
||||
include(FindPkgConfig)
|
||||
option(BUILD_WSI_XCB_SUPPORT "Build XCB WSI support" ON)
|
||||
option(BUILD_WSI_XLIB_SUPPORT "Build Xlib WSI support" ON)
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
--- layers/CMakeLists.txt.orig 2018-07-30 17:53:08 UTC
|
||||
+++ layers/CMakeLists.txt
|
||||
@@ -23,7 +23,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
set(DisplayServer Win32)
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||
add_definitions(-DVK_USE_PLATFORM_ANDROID_KHR -DVK_USE_PLATFORM_ANDROID_KHX)
|
||||
-elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
+elseif(UNIX AND NOT APPLE)
|
||||
if(BUILD_WSI_XCB_SUPPORT)
|
||||
add_definitions(-DVK_USE_PLATFORM_XCB_KHR -DVK_USE_PLATFORM_XCB_KHX)
|
||||
endif()
|
||||
@@ -131,7 +131,7 @@ if(WIN32)
|
||||
add_custom_target(vk_validation_error_messages ALL COMMAND copy ${src_val_msgs} ${dst_val_msgs} VERBATIM)
|
||||
set_target_properties(vk_validation_error_messages PROPERTIES FOLDER ${LAYERS_HELPER_FOLDER})
|
||||
endif()
|
||||
-elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
||||
+ elseif(UNIX AND NOT APPLE)
|
||||
# extra setup for out-of-tree builds
|
||||
if(NOT (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_CURRENT_BINARY_DIR))
|
||||
foreach(config_file ${LAYER_JSON_FILES})
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
--- layers/vk_loader_platform.h.orig 2018-08-07 18:19:43 UTC
|
||||
+++ layers/vk_loader_platform.h
|
||||
@@ -31,7 +31,7 @@
|
||||
#include "vulkan/vk_platform.h"
|
||||
#include "vulkan/vk_sdk_platform.h"
|
||||
|
||||
-#if defined(__linux__) || defined(__APPLE__)
|
||||
+#if defined(__unix__)
|
||||
/* Linux-specific common code: */
|
||||
|
||||
// Headers:
|
||||
6
devel/vulkan-validation-layers/pkg-descr
Normal file
6
devel/vulkan-validation-layers/pkg-descr
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
Vulkan is a low-level cross-platform 3D graphics and compute API.
|
||||
|
||||
This port provides the official validation layers for Vulkan applications,
|
||||
which are useful for development and debugging.
|
||||
|
||||
WWW: https://github.com/KhronosGroup/Vulkan-ValidationLayers
|
||||
35
devel/vulkan-validation-layers/pkg-plist
Normal file
35
devel/vulkan-validation-layers/pkg-plist
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
include/hash_util.h
|
||||
include/hash_vk_types.h
|
||||
include/vk_dispatch_table_helper.h
|
||||
include/vk_enum_string_helper.h
|
||||
include/vk_extension_helper.h
|
||||
include/vk_format_utils.cpp
|
||||
include/vk_format_utils.h
|
||||
include/vk_layer_config.cpp
|
||||
include/vk_layer_config.h
|
||||
include/vk_layer_data.h
|
||||
include/vk_layer_dispatch_table.h
|
||||
include/vk_layer_extension_utils.cpp
|
||||
include/vk_layer_extension_utils.h
|
||||
include/vk_layer_logging.h
|
||||
include/vk_layer_utils.cpp
|
||||
include/vk_layer_utils.h
|
||||
include/vk_loader_layer.h
|
||||
include/vk_loader_platform.h
|
||||
include/vk_object_types.h
|
||||
include/vk_safe_struct.cpp
|
||||
include/vk_safe_struct.h
|
||||
include/vk_typemap_helper.h
|
||||
include/vk_validation_error_messages.h
|
||||
lib/libVkLayer_core_validation.so
|
||||
lib/libVkLayer_object_tracker.so
|
||||
lib/libVkLayer_parameter_validation.so
|
||||
lib/libVkLayer_threading.so
|
||||
lib/libVkLayer_unique_objects.so
|
||||
lib/libVkLayer_utils.a
|
||||
share/vulkan/explicit_layer.d/VkLayer_core_validation.json
|
||||
share/vulkan/explicit_layer.d/VkLayer_object_tracker.json
|
||||
share/vulkan/explicit_layer.d/VkLayer_parameter_validation.json
|
||||
share/vulkan/explicit_layer.d/VkLayer_standard_validation.json
|
||||
share/vulkan/explicit_layer.d/VkLayer_threading.json
|
||||
share/vulkan/explicit_layer.d/VkLayer_unique_objects.json
|
||||
|
|
@ -47,9 +47,6 @@ LDFLAGS+= -Wl,--as-needed # GLU
|
|||
|
||||
OPTIONS_DEFINE= ALSA EVDEV GDB LLVM PULSEAUDIO VULKAN
|
||||
OPTIONS_DEFAULT=ALSA LLVM VULKAN
|
||||
.if !exists(${.CURDIR:H:H}/graphics/vulkan-loader)
|
||||
OPTIONS_EXCLUDE=VULKAN # XXX ports/222175
|
||||
.endif
|
||||
|
||||
ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib
|
||||
ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins
|
||||
|
|
|
|||
|
|
@ -1124,6 +1124,7 @@
|
|||
SUBDIR += visprint
|
||||
SUBDIR += volpack
|
||||
SUBDIR += vp
|
||||
SUBDIR += vulkan-loader
|
||||
SUBDIR += waffle
|
||||
SUBDIR += waifu2x-converter-cpp
|
||||
SUBDIR += wayland
|
||||
|
|
|
|||
47
graphics/vulkan-loader/Makefile
Normal file
47
graphics/vulkan-loader/Makefile
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
# $FreeBSD$
|
||||
|
||||
PORTNAME= vulkan-loader
|
||||
DISTVERSIONPREFIX=sdk-
|
||||
DISTVERSION= 1.1.82.0
|
||||
CATEGORIES= graphics devel
|
||||
|
||||
MAINTAINER= greg@unrelenting.technology
|
||||
COMMENT= Driver loader for the Vulkan graphics API
|
||||
|
||||
LICENSE= APACHE20
|
||||
|
||||
BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:devel/vulkan-headers
|
||||
|
||||
USES= cmake:outsource compiler:c++11-lib pkgconfig python:3.4+,build
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= KhronosGroup
|
||||
GH_PROJECT= Vulkan-Loader
|
||||
|
||||
CMAKE_ON= CMAKE_SKIP_RPATH
|
||||
CMAKE_OFF= BUILD_TESTS BUILD_WSI_MIR_SUPPORT
|
||||
|
||||
OPTIONS_DEFINE= XLIB XCB WAYLAND
|
||||
OPTIONS_DEFAULT=XLIB XCB
|
||||
|
||||
XLIB_DESC= Build Xlib WSI (Window System Integration) support
|
||||
XCB_DESC= Build XCB WSI (Window System Integration) support
|
||||
WAYLAND_DESC= Build Wayland WSI (Window System Integration) support
|
||||
|
||||
XLIB_CMAKE_BOOL= BUILD_WSI_XLIB_SUPPORT
|
||||
XLIB_LIB_DEPENDS= libX11.so:x11/libX11 \
|
||||
libXrandr.so:x11/libXrandr
|
||||
XCB_CMAKE_BOOL= BUILD_WSI_XCB_SUPPORT
|
||||
XCB_LIB_DEPENDS= libX11-xcb.so:x11/libX11 \
|
||||
libxcb.so:x11/libxcb
|
||||
WAYLAND_CMAKE_BOOL= BUILD_WSI_WAYLAND_SUPPORT
|
||||
WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/mesa-libs
|
||||
|
||||
post-patch:
|
||||
# Non-x86 targets use C code, so don't abort without GNU as (e.g., on aarch64)
|
||||
.if !exists(/usr/bin/as) && ${MACHINE_ARCH} != i386 && ${MACHINE_ARCH} != amd64
|
||||
@${REINPLACE_CMD} 's/-ATT//' ${WRKSRC}/loader/CMakeLists.txt
|
||||
.endif
|
||||
|
||||
.include <bsd.port.mk>
|
||||
3
graphics/vulkan-loader/distinfo
Normal file
3
graphics/vulkan-loader/distinfo
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
TIMESTAMP = 1533664679
|
||||
SHA256 (KhronosGroup-Vulkan-Loader-sdk-1.1.82.0_GH0.tar.gz) = 86cd3e93d99cbfbb8550e7f2137cacfdaf9aa6611b814e054b2156b4b4775b0c
|
||||
SIZE (KhronosGroup-Vulkan-Loader-sdk-1.1.82.0_GH0.tar.gz) = 1341774
|
||||
36
graphics/vulkan-loader/files/patch-CMakeLists.txt
Normal file
36
graphics/vulkan-loader/files/patch-CMakeLists.txt
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
--- CMakeLists.txt.orig 2018-08-03 22:10:42 UTC
|
||||
+++ CMakeLists.txt
|
||||
@@ -57,9 +57,9 @@ set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||
# "Helper" targets that don't have interesting source code should set their FOLDER property to this
|
||||
set(LOADER_HELPER_FOLDER "Helper Targets")
|
||||
|
||||
-if(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR CMAKE_SYSTEM_NAME STREQUAL "Darwin")
|
||||
+if(UNIX AND NOT APPLE)
|
||||
set(
|
||||
- FALLBACK_CONFIG_DIRS "/etc/xdg"
|
||||
+ FALLBACK_CONFIG_DIRS "${CMAKE_INSTALL_PREFIX}/etc/xdg:/etc/xdg"
|
||||
CACHE
|
||||
STRING
|
||||
"Search path to use when XDG_CONFIG_DIRS is unset or empty or the current process is SUID/SGID. Default is freedesktop compliant."
|
||||
@@ -72,7 +72,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR CMAKE_SYSTEM_
|
||||
)
|
||||
endif()
|
||||
|
||||
-if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
+if(UNIX AND NOT APPLE)
|
||||
include(FindPkgConfig)
|
||||
option(BUILD_WSI_XCB_SUPPORT "Build XCB WSI support" ON)
|
||||
option(BUILD_WSI_XLIB_SUPPORT "Build Xlib WSI support" ON)
|
||||
@@ -81,10 +81,12 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
|
||||
if(BUILD_WSI_XCB_SUPPORT)
|
||||
find_package(XCB REQUIRED)
|
||||
+ include_directories(SYSTEM ${XCB_INCLUDE_DIR})
|
||||
endif()
|
||||
|
||||
if(BUILD_WSI_XLIB_SUPPORT)
|
||||
find_package(X11 REQUIRED)
|
||||
+ include_directories(SYSTEM ${X11_Xlib_INCLUDE_PATH})
|
||||
endif()
|
||||
|
||||
if(BUILD_WSI_WAYLAND_SUPPORT)
|
||||
20
graphics/vulkan-loader/files/patch-loader_CMakeLists.txt
Normal file
20
graphics/vulkan-loader/files/patch-loader_CMakeLists.txt
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
--- loader/CMakeLists.txt.orig 2018-08-03 22:10:42 UTC
|
||||
+++ loader/CMakeLists.txt
|
||||
@@ -40,7 +40,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Windows")
|
||||
endif()
|
||||
elseif(CMAKE_SYSTEM_NAME STREQUAL "Android")
|
||||
add_definitions(-DVK_USE_PLATFORM_ANDROID_KHR)
|
||||
-elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
+elseif(UNIX AND NOT APPLE)
|
||||
if(BUILD_WSI_XCB_SUPPORT)
|
||||
add_definitions(-DVK_USE_PLATFORM_XCB_KHR)
|
||||
endif()
|
||||
@@ -223,7 +223,7 @@ else()
|
||||
add_dependencies(vulkan generate_helper_files loader_gen_files loader_asm_gen_files)
|
||||
target_compile_definitions(vulkan PUBLIC -DLOADER_DYNAMIC_LIB)
|
||||
set_target_properties(vulkan PROPERTIES SOVERSION "1" VERSION "${VulkanHeaders_VERSION_MAJOR}.${VulkanHeaders_VERSION_MINOR}.${VulkanHeaders_VERSION_PATCH}")
|
||||
- target_link_libraries(vulkan -ldl -lpthread -lm)
|
||||
+ target_link_libraries(vulkan ${CMAKE_DL_LIBS} -lpthread -lm)
|
||||
|
||||
if(APPLE)
|
||||
find_library(COREFOUNDATION_LIBRARY NAMES CoreFoundation)
|
||||
20
graphics/vulkan-loader/files/patch-loader_loader.c
Normal file
20
graphics/vulkan-loader/files/patch-loader_loader.c
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
--- loader/loader.c.orig 2018-08-03 22:10:42 UTC
|
||||
+++ loader/loader.c
|
||||
@@ -215,7 +215,7 @@ void *loader_device_heap_realloc(const struct loader_d
|
||||
}
|
||||
|
||||
// Environment variables
|
||||
-#if defined(__linux__) || defined(__APPLE__)
|
||||
+#if defined(__unix__)
|
||||
|
||||
static inline char *loader_getenv(const char *name, const struct loader_instance *inst) {
|
||||
// No allocation of memory necessary for Linux, but we should at least touch
|
||||
@@ -225,7 +225,7 @@ static inline char *loader_getenv(const char *name, co
|
||||
}
|
||||
|
||||
static inline char *loader_secure_getenv(const char *name, const struct loader_instance *inst) {
|
||||
-#if defined(__APPLE__)
|
||||
+#if !defined(__linux__)
|
||||
// Apple does not appear to have a secure getenv implementation.
|
||||
// The main difference between secure getenv and getenv is that secure getenv
|
||||
// returns NULL if the process is being run with elevated privileges by a normal user.
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
--- loader/vk_loader_platform.h.orig 2018-08-03 22:10:42 UTC
|
||||
+++ loader/vk_loader_platform.h
|
||||
@@ -31,7 +31,7 @@
|
||||
#include "vulkan/vk_platform.h"
|
||||
#include "vulkan/vk_sdk_platform.h"
|
||||
|
||||
-#if defined(__linux__) || defined(__APPLE__)
|
||||
+#if defined(__unix__)
|
||||
/* Linux-specific common code: */
|
||||
|
||||
// Headers:
|
||||
6
graphics/vulkan-loader/pkg-descr
Normal file
6
graphics/vulkan-loader/pkg-descr
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
Vulkan is a low-level cross-platform 3D graphics and compute API.
|
||||
|
||||
This port provides the Khronos official ICD (Installable Client Driver) loader,
|
||||
which is necessary for loading Vulkan drivers in a running application.
|
||||
|
||||
WWW: https://github.com/KhronosGroup/Vulkan-Loader
|
||||
4
graphics/vulkan-loader/pkg-plist
Normal file
4
graphics/vulkan-loader/pkg-plist
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
lib/libvulkan.so
|
||||
lib/libvulkan.so.1
|
||||
lib/libvulkan.so.1.1.82
|
||||
libdata/pkgconfig/vulkan.pc
|
||||
Loading…
Add table
Reference in a new issue