version: "3" tasks: run: cmds: - go run ./examples/cube env: # required to for large ssaos on macos MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS: 1 # enable synchronization validation VK_LAYER_ENABLES: VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT GOEXPERIMENT: loopvar build: cmds: - rm -f goworld - go build -tags release -o goworld ./game/client/cmd/main.go - install_name_tool -add_rpath @executable_path/../Frameworks/. goworld - mv goworld Goworld.app/Contents/MacOS - cp $(which glslc) Goworld.app/Contents/MacOS - cp /usr/local/lib/lib{Bullet3Common,BulletCollision,BulletDynamics,LinearMath}.3.25.dylib Goworld.app/Contents/Frameworks - cp /usr/local/lib/lib{vulkan.1,MoltenVK}.dylib Goworld.app/Contents/Frameworks - cp -r assets/* Goworld.app/Contents/Resources - rm -f Goworld.app/Contents/Resources/*.go env: # required to for large ssaos on macos MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS: 1 # enable synchronization validation VK_LAYER_ENABLES: VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT test: cmds: - ginkgo --label-filter=!e2e -p ./... test-e2e: cmds: - ginkgo --label-filter=e2e test/... env: # required to for large ssaos on macos MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS: 1 # enable synchronization validation VK_LAYER_ENABLES: VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT codegen: cmds: - go generate ./...