Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: adding VulkanSceneGraph v1.1.7 library to BCR #3118

Open
wants to merge 22 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 4 commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
1236481
feat: adding VulkanSceneGraph v1.1.7 library to BCR
artem-korolev Nov 5, 2024
edc7630
feat: adding VulkanSceneGraph v1.1.7 library to BCR
artem-korolev Nov 5, 2024
c98bdcb
feat: adding VulkanSceneGraph v1.1.7 library to BCR
artem-korolev Nov 5, 2024
b9dbc4f
fix: changing version to beta1 as suggested, and trying to fix compil…
artem-korolev Nov 6, 2024
00c048a
fix: adding bazel_compatibility >=7.2.1 to support overlay; adding do…
artem-korolev Nov 6, 2024
f1dea51
fix: [email protected] proper target name
artem-korolev Nov 6, 2024
30fdf13
fix: [email protected] adding rules_cc as dependency; format yaml properly
artem-korolev Nov 6, 2024
99e452b
fix: [email protected] adding platform module dependency
artem-korolev Nov 6, 2024
473c88b
fix: [email protected] downgrade rules_cc to 0.0.13; seems like latest …
artem-korolev Nov 6, 2024
4099d69
fix: [email protected] requires C++17
artem-korolev Nov 6, 2024
594050d
fix: [email protected] using rules to setup system dependencies to Vulkan
artem-korolev Dec 17, 2024
f71ad58
fix: [email protected] using rules to setup system dependencies to Vulk…
artem-korolev Dec 17, 2024
f65d0c9
fix: [email protected] use_repo_rule instead of load
artem-korolev Dec 17, 2024
aa9219b
fix: [email protected] integrating non-Bzlmod-compatible external rules…
artem-korolev Dec 17, 2024
b72bf20
fix: [email protected] integrating non-Bzlmod-compatible external rules…
artem-korolev Dec 17, 2024
b2183fe
fix: [email protected] integrating non-Bzlmod-compatible external rules…
artem-korolev Dec 18, 2024
dd8749c
fix: [email protected] integrating non-Bzlmod-compatible external rules…
artem-korolev Dec 18, 2024
86b9f55
fix: [email protected] integrating non-Bzlmod-compatible external rules…
artem-korolev Dec 18, 2024
f123e2b
fix: [email protected] integrating non-Bzlmod-compatible external rules…
artem-korolev Dec 18, 2024
d95f72d
fix: [email protected] integrating non-Bzlmod-compatible external rules…
artem-korolev Dec 18, 2024
ce0a516
fix: [email protected] integrating non-Bzlmod-compatible external rules…
artem-korolev Dec 18, 2024
6fd9457
fix: [email protected] integrating non-Bzlmod-compatible external rules…
artem-korolev Dec 20, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions modules/vsg/1.1.7-beta1/MODULE.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
module(
name = "vsg",
version = "1.1.7-beta1",
compatibility_level = 0,
)
344 changes: 344 additions & 0 deletions modules/vsg/1.1.7-beta1/overlay/BUILD.bazel
Original file line number Diff line number Diff line change
@@ -0,0 +1,344 @@
load("@rules_cc//cc:defs.bzl", "cc_library")

config_setting(
name = "linux",
constraint_values = [
"@platforms//os:linux",
],
)

config_setting(
name = "windows",
constraint_values = [
"@platforms//os:windows",
],
)

config_setting(
name = "macos",
constraint_values = [
"@platforms//os:osx",
],
)

config_setting(
name = "android",
constraint_values = [
"@platforms//os:android",
],
)

# Generate the Version.h file
genrule(
name = "generate_version_header",
srcs = ["src/vsg/core/Version.h.in"],
outs = ["include/vsg/core/Version.h"],
cmd = """
sed -e 's/@VSG_VERSION_MAJOR@/1/' \
-e 's/@VSG_VERSION_MINOR@/1/' \
-e 's/@VSG_VERSION_PATCH@/8/' \
-e 's/@VSG_SOVERSION@/14/' \
-e 's/@VSG_MAX_DEVICES@/1/' \
-e 's/@VSG_MAX_INSTRUMENTATION_LEVEL@/1/' \
-e 's/@VSG_SUPPORTS_ShaderCompiler@/1/' \
-e 's/@VSG_SUPPORTS_Windowing@/1/' \
$< > $@
""",
visibility = ["//visibility:public"],
)

cc_library(
name = "text_shaders_include_hack",
hdrs = [
"src/vsg/text/shaders/text_ShaderSet.cpp",
],
strip_include_prefix = "src/vsg/text",
)

cc_library(
name = "utils_shaders_include_hack",
hdrs = [
"src/vsg/utils/shaders/flat_ShaderSet.cpp",
"src/vsg/utils/shaders/pbr_ShaderSet.cpp",
"src/vsg/utils/shaders/phong_ShaderSet.cpp",
],
strip_include_prefix = "src/vsg/utils",
)

# Update the vsg library to depend on the generated header
cc_library(
name = "vsg",
srcs = [
"src/vsg/animation/Animation.cpp",
"src/vsg/animation/AnimationGroup.cpp",
"src/vsg/animation/AnimationManager.cpp",
"src/vsg/animation/CameraAnimation.cpp",
"src/vsg/animation/FindAnimations.cpp",
"src/vsg/animation/Joint.cpp",
"src/vsg/animation/JointSampler.cpp",
"src/vsg/animation/MorphSampler.cpp",
"src/vsg/animation/TransformSampler.cpp",
"src/vsg/app/Camera.cpp",
"src/vsg/app/CommandGraph.cpp",
"src/vsg/app/CompileManager.cpp",
"src/vsg/app/CompileTraversal.cpp",
"src/vsg/app/EllipsoidModel.cpp",
"src/vsg/app/Presentation.cpp",
"src/vsg/app/ProjectionMatrix.cpp",
"src/vsg/app/RecordAndSubmitTask.cpp",
"src/vsg/app/RecordTraversal.cpp",
"src/vsg/app/RenderGraph.cpp",
"src/vsg/app/SecondaryCommandGraph.cpp",
"src/vsg/app/Trackball.cpp",
"src/vsg/app/TransferTask.cpp",
"src/vsg/app/UpdateOperations.cpp",
"src/vsg/app/View.cpp",
"src/vsg/app/ViewMatrix.cpp",
"src/vsg/app/Viewer.cpp",
"src/vsg/app/Window.cpp",
"src/vsg/app/WindowAdapter.cpp",
"src/vsg/app/WindowResizeHandler.cpp",
"src/vsg/app/WindowTraits.cpp",
"src/vsg/commands/BeginQuery.cpp",
"src/vsg/commands/BindIndexBuffer.cpp",
"src/vsg/commands/BindVertexBuffers.cpp",
"src/vsg/commands/BlitImage.cpp",
"src/vsg/commands/ClearAttachments.cpp",
"src/vsg/commands/ClearImage.cpp",
"src/vsg/commands/Commands.cpp",
"src/vsg/commands/CopyAndReleaseBuffer.cpp",
"src/vsg/commands/CopyAndReleaseImage.cpp",
"src/vsg/commands/CopyImage.cpp",
"src/vsg/commands/CopyImageToBuffer.cpp",
"src/vsg/commands/CopyImageViewToWindow.cpp",
"src/vsg/commands/CopyQueryPoolResults.cpp",
"src/vsg/commands/Dispatch.cpp",
"src/vsg/commands/Draw.cpp",
"src/vsg/commands/DrawIndexed.cpp",
"src/vsg/commands/DrawIndexedIndirect.cpp",
"src/vsg/commands/DrawIndirect.cpp",
"src/vsg/commands/EndQuery.cpp",
"src/vsg/commands/Event.cpp",
"src/vsg/commands/ExecuteCommands.cpp",
"src/vsg/commands/NextSubPass.cpp",
"src/vsg/commands/PipelineBarrier.cpp",
"src/vsg/commands/ResetQueryPool.cpp",
"src/vsg/commands/ResolveImage.cpp",
"src/vsg/commands/SetDepthBias.cpp",
"src/vsg/commands/SetLineWidth.cpp",
"src/vsg/commands/SetPrimitiveTopology.cpp",
"src/vsg/commands/SetScissor.cpp",
"src/vsg/commands/SetViewport.cpp",
"src/vsg/commands/WriteTimestamp.cpp",
"src/vsg/core/Allocator.cpp",
"src/vsg/core/Auxiliary.cpp",
"src/vsg/core/ConstVisitor.cpp",
"src/vsg/core/Data.cpp",
"src/vsg/core/External.cpp",
"src/vsg/core/IntrusiveAllocator.cpp",
"src/vsg/core/MemorySlots.cpp",
"src/vsg/core/Object.cpp",
"src/vsg/core/Objects.cpp",
"src/vsg/core/Version.cpp",
"src/vsg/core/Visitor.cpp",
"src/vsg/io/AsciiInput.cpp",
"src/vsg/io/AsciiOutput.cpp",
"src/vsg/io/BinaryInput.cpp",
"src/vsg/io/BinaryOutput.cpp",
"src/vsg/io/DatabasePager.cpp",
"src/vsg/io/FileSystem.cpp",
"src/vsg/io/Input.cpp",
"src/vsg/io/Logger.cpp",
"src/vsg/io/ObjectFactory.cpp",
"src/vsg/io/Options.cpp",
"src/vsg/io/Output.cpp",
"src/vsg/io/Path.cpp",
"src/vsg/io/ReaderWriter.cpp",
"src/vsg/io/VSG.cpp",
"src/vsg/io/convert_utf.cpp",
"src/vsg/io/glsl.cpp",
"src/vsg/io/mem_stream.cpp",
"src/vsg/io/read.cpp",
"src/vsg/io/spirv.cpp",
"src/vsg/io/tile.cpp",
"src/vsg/io/txt.cpp",
"src/vsg/io/write.cpp",
"src/vsg/lighting/AmbientLight.cpp",
"src/vsg/lighting/DirectionalLight.cpp",
"src/vsg/lighting/HardShadows.cpp",
"src/vsg/lighting/Light.cpp",
"src/vsg/lighting/PercentageCloserSoftShadows.cpp",
"src/vsg/lighting/PointLight.cpp",
"src/vsg/lighting/ShadowSettings.cpp",
"src/vsg/lighting/SoftShadows.cpp",
"src/vsg/lighting/SpotLight.cpp",
"src/vsg/maths/maths_transform.cpp",
"src/vsg/meshshaders/DrawMeshTasks.cpp",
"src/vsg/meshshaders/DrawMeshTasksIndirect.cpp",
"src/vsg/meshshaders/DrawMeshTasksIndirectCount.cpp",
"src/vsg/nodes/AbsoluteTransform.cpp",
"src/vsg/nodes/Bin.cpp",
"src/vsg/nodes/CullGroup.cpp",
"src/vsg/nodes/CullNode.cpp",
"src/vsg/nodes/DepthSorted.cpp",
"src/vsg/nodes/Geometry.cpp",
"src/vsg/nodes/Group.cpp",
"src/vsg/nodes/InstrumentationNode.cpp",
"src/vsg/nodes/LOD.cpp",
"src/vsg/nodes/Layer.cpp",
"src/vsg/nodes/MatrixTransform.cpp",
"src/vsg/nodes/Node.cpp",
"src/vsg/nodes/PagedLOD.cpp",
"src/vsg/nodes/QuadGroup.cpp",
"src/vsg/nodes/RegionOfInterest.cpp",
"src/vsg/nodes/StateGroup.cpp",
"src/vsg/nodes/Switch.cpp",
"src/vsg/nodes/TileDatabase.cpp",
"src/vsg/nodes/Transform.cpp",
"src/vsg/nodes/VertexDraw.cpp",
"src/vsg/nodes/VertexIndexDraw.cpp",
"src/vsg/raytracing/AccelerationGeometry.cpp",
"src/vsg/raytracing/AccelerationStructure.cpp",
"src/vsg/raytracing/BottomLevelAccelerationStructure.cpp",
"src/vsg/raytracing/BuildAccelerationStructureTraversal.cpp",
"src/vsg/raytracing/DescriptorAccelerationStructure.cpp",
"src/vsg/raytracing/RayTracingPipeline.cpp",
"src/vsg/raytracing/RayTracingShaderGroup.cpp",
"src/vsg/raytracing/TopLevelAccelerationStructure.cpp",
"src/vsg/raytracing/TraceRays.cpp",
"src/vsg/state/ArrayState.cpp",
"src/vsg/state/BindDescriptorSet.cpp",
"src/vsg/state/Buffer.cpp",
"src/vsg/state/BufferInfo.cpp",
"src/vsg/state/BufferView.cpp",
"src/vsg/state/ColorBlendState.cpp",
"src/vsg/state/ComputePipeline.cpp",
"src/vsg/state/DepthStencilState.cpp",
"src/vsg/state/Descriptor.cpp",
"src/vsg/state/DescriptorBuffer.cpp",
"src/vsg/state/DescriptorImage.cpp",
"src/vsg/state/DescriptorSet.cpp",
"src/vsg/state/DescriptorSetLayout.cpp",
"src/vsg/state/DescriptorTexelBufferView.cpp",
"src/vsg/state/DynamicState.cpp",
"src/vsg/state/GraphicsPipeline.cpp",
"src/vsg/state/Image.cpp",
"src/vsg/state/ImageInfo.cpp",
"src/vsg/state/ImageView.cpp",
"src/vsg/state/InputAssemblyState.cpp",
"src/vsg/state/MultisampleState.cpp",
"src/vsg/state/PipelineLayout.cpp",
"src/vsg/state/PushConstants.cpp",
"src/vsg/state/QueryPool.cpp",
"src/vsg/state/RasterizationState.cpp",
"src/vsg/state/ResourceHints.cpp",
"src/vsg/state/Sampler.cpp",
"src/vsg/state/ShaderModule.cpp",
"src/vsg/state/ShaderStage.cpp",
"src/vsg/state/StateCommand.cpp",
"src/vsg/state/StateSwitch.cpp",
"src/vsg/state/TessellationState.cpp",
"src/vsg/state/VertexInputState.cpp",
"src/vsg/state/ViewDependentState.cpp",
"src/vsg/state/ViewportState.cpp",
"src/vsg/text/CpuLayoutTechnique.cpp",
"src/vsg/text/Font.cpp",
"src/vsg/text/GpuLayoutTechnique.cpp",
"src/vsg/text/StandardLayout.cpp",
"src/vsg/text/Text.cpp",
"src/vsg/text/TextGroup.cpp",
"src/vsg/threading/Affinity.cpp",
"src/vsg/threading/OperationThreads.cpp",
"src/vsg/ui/ApplicationEvent.cpp",
"src/vsg/ui/CollectEvents.cpp",
"src/vsg/ui/KeyEvent.cpp",
"src/vsg/ui/Keyboard.cpp",
"src/vsg/ui/PlayEvents.cpp",
"src/vsg/ui/PointerEvent.cpp",
"src/vsg/ui/PrintEvents.cpp",
"src/vsg/ui/RecordEvents.cpp",
"src/vsg/ui/ScrollWheelEvent.cpp",
"src/vsg/ui/ShiftEventTime.cpp",
"src/vsg/ui/TouchEvent.cpp",
"src/vsg/ui/UIEvent.cpp",
"src/vsg/ui/WindowEvent.cpp",
"src/vsg/utils/Builder.cpp",
"src/vsg/utils/CommandLine.cpp",
"src/vsg/utils/ComputeBounds.cpp",
"src/vsg/utils/FindDynamicObjects.cpp",
"src/vsg/utils/GpuAnnotation.cpp",
"src/vsg/utils/GraphicsPipelineConfigurator.cpp",
"src/vsg/utils/Instrumentation.cpp",
"src/vsg/utils/Intersector.cpp",
"src/vsg/utils/LineSegmentIntersector.cpp",
"src/vsg/utils/LoadPagedLOD.cpp",
"src/vsg/utils/Profiler.cpp",
"src/vsg/utils/PropagateDynamicObjects.cpp",
"src/vsg/utils/ShaderCompiler.cpp",
"src/vsg/utils/ShaderSet.cpp",
"src/vsg/utils/SharedObjects.cpp",
"src/vsg/vk/CommandBuffer.cpp",
"src/vsg/vk/CommandPool.cpp",
"src/vsg/vk/Context.cpp",
"src/vsg/vk/DescriptorPool.cpp",
"src/vsg/vk/DescriptorPools.cpp",
"src/vsg/vk/Device.cpp",
"src/vsg/vk/DeviceExtensions.cpp",
"src/vsg/vk/DeviceFeatures.cpp",
"src/vsg/vk/DeviceMemory.cpp",
"src/vsg/vk/Fence.cpp",
"src/vsg/vk/Framebuffer.cpp",
"src/vsg/vk/Instance.cpp",
"src/vsg/vk/InstanceExtensions.cpp",
"src/vsg/vk/MemoryBufferPools.cpp",
"src/vsg/vk/PhysicalDevice.cpp",
"src/vsg/vk/Queue.cpp",
"src/vsg/vk/RenderPass.cpp",
"src/vsg/vk/ResourceRequirements.cpp",
"src/vsg/vk/Semaphore.cpp",
"src/vsg/vk/Surface.cpp",
"src/vsg/vk/Swapchain.cpp",
] + select({
":android": ["src/vsg/platform/android/Android_Window.cpp"],
":macos": ["src/vsg/platform/macos/MacOS_Window.mm"],
":windows": ["src/vsg/platform/win32/Win32_Window.cpp"],
"//conditions:default": ["src/vsg/platform/xcb/Xcb_Window.cpp"],
}),
hdrs = glob([
"include/vsg/**/*.h",
]) + ["include/vsg/core/Version.h"],
copts = [
"-std=c++17",
] + select({
":macos": [
"-x",
"objective-c++",
],
"//conditions:default": [],
}),
includes = ["include"],
linkopts = select({
# ":android": ["-landroid"],
# ":macos": [
# "-framework",
# "Cocoa",
# "-framework",
# "QuartzCore",
# ],
"//conditions:default": [],
}),
visibility = ["//visibility:public"],
deps = [
":generate_version_header", # Add the dependency on the generated header
":text_shaders_include_hack",
":utils_shaders_include_hack",
# ":threads",
# ":vulkan",
] + select({
# ":android": [],
# ":macos": [],
# ":windows": [],
"//conditions:default": [],
# "//conditions:default": [":xcb"],
}),
)
1 change: 1 addition & 0 deletions modules/vsg/1.1.7-beta1/overlay/MODULE.bazel
19 changes: 19 additions & 0 deletions modules/vsg/1.1.7-beta1/presubmit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
matrix:
platform:
- debian10
- debian11
- macos
- macos_arm64
- ubuntu2004
- ubuntu2204
- ubuntu2404
- windows
bazel:
- 7.x
tasks:
verify_targets:
name: Verify build targets
platform: ${{ platform }}
bazel: ${{ bazel }}
build_targets:
- '@vsg'
10 changes: 10 additions & 0 deletions modules/vsg/1.1.7-beta1/source.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"url": "https://github.com/vsg-dev/VulkanSceneGraph/archive/refs/tags/v1.1.7.tar.gz",
"integrity": "sha256-oARZV6i1oYZn+xVg0HK2v/vKhQxvDoCJ/s5up8lEALE=",
"strip_prefix": "VulkanSceneGraph-1.1.7",
"overlay": {
"BUILD.bazel": "sha256-5COEpE1dJhQAl5cF5qUUtH/cteOM1hi7V0a2WWLhfZQ=",
"MODULE.bazel": "sha256-etg3hkOYW6NYTetm87JopMDmgjy04tW23ugy9BIF4is="
},
"patch_strip": 0
}
Loading