CMake-only fork of https://dawn.googlesource.com/dawn with cleaned, vendored dependencies
Go to file
David Neto 13904a612d Rolling 6 dependencies
Roll build/ 1a541c158..9b01e295f (100 commits)

1a541c1582..9b01e295f8

$ git log 1a541c158..9b01e295f --date=short --no-merges --format='%ad %ae %s'
2020-07-17 chromium-autoroll Roll Fuchsia SDK from 0.20200717.0.1 to 0.20200717.1.1
2020-07-17 chromium-autoroll Roll Fuchsia SDK from 0.20200716.2.1 to 0.20200717.0.1
2020-07-17 sdefresne [ios] Force target to be dirty if xcode_version changes
2020-07-17 mheikal Remove unneeded extra_r_text_files from resource management
2020-07-17 bpastene Reland #2: "Split the cros_boards gclient var into two for fetching QEMU images."
2020-07-17 wnwen Android: Add direct deps for turbine
2020-07-17 thomasanderson [XProto] Remove usage of XCursor
2020-07-16 liaoyuke [lacros] Add functions to download ash-chrome in the test runner
2020-07-16 chromium-autoroll Roll Fuchsia SDK from 0.20200716.1.1 to 0.20200716.2.1
2020-07-16 liaoyuke [lacros] Fix argument helper
2020-07-16 wfh Turn on CFG linker config and bitmap generation for DLLs.
2020-07-16 liaoyuke [lacros] Fix build/lacros OWNERS file
2020-07-16 wnwen Android: More direct deps for turbine
2020-07-16 wnwen Android: Direct deps for //net
2020-07-16 bpastene Revert "Reland "Split the cros_boards gclient var into two for fetching QEMU images.""
2020-07-16 wnwen Android: Direct deps for //media
2020-07-16 sdefresne [ios] Force target to be dirty if xcode_version changes
2020-07-16 chromium-autoroll Roll Fuchsia SDK from 0.20200716.0.1 to 0.20200716.1.1
2020-07-16 chromium-autoroll Roll Fuchsia SDK from 0.20200715.2.1 to 0.20200716.0.1
2020-07-16 wnwen Android: Direct deps for chrome/android etc
2020-07-16 liaoyuke [lacros] Generate a test runner wrapper for lacros
2020-07-15 wnwen Android: Prefer direct deps for turbine
2020-07-15 chromium-autoroll Roll Fuchsia SDK from 0.20200715.1.1 to 0.20200715.2.1
2020-07-15 wnwen Android: Add new build speed benchmarks
2020-07-15 bpastene Reland "Split the cros_boards gclient var into two for fetching QEMU images."
2020-07-15 torne android: use final_android_sdk when setting versionCode.
2020-07-15 pkotwicz [Android] Re-enable custom errorprone plugins
2020-07-15 nelakaczmarek Test commit
2020-07-15 chromium-autoroll Roll Fuchsia SDK from 0.20200715.0.1 to 0.20200715.1.1
2020-07-15 hans Clang: the tip-of-tree version is now 12.0.0
2020-07-15 chromium-autoroll Roll Fuchsia SDK from 0.20200714.1.1 to 0.20200715.0.1
2020-07-15 bjoyce Use coverage on the fly for junit tests.
2020-07-14 thakis Update a TODO bug link.
2020-07-14 chromium-autoroll Roll Fuchsia SDK from 0.20200714.0.1 to 0.20200714.1.1
2020-07-14 bjoyce Set jvm arg for jacoco to false.
2020-07-14 agrieve Android: Dump logcat to logdog when gtests are listing tests
2020-07-14 chromium-autoroll Roll Fuchsia SDK from 0.20200713.3.1 to 0.20200714.0.1
2020-07-14 agrieve Add "list_java_targets.py" to make it easy to build all java targets
2020-07-14 chromium-autoroll Roll Fuchsia SDK from 0.20200713.1.1 to 0.20200713.3.1
2020-07-13 sebmarchand Disable the segment heap by default and add a GN flag to control it.
2020-07-13 agrieve Android: Reduce link pool when R8 or Android Lint is enabled.
2020-07-13 wnwen Android: Add deps' transitive classes to classpath
2020-07-13 hypan Reland "emulator: Disable the feature GLDMA."
2020-07-13 thakis win: Don't pass -mllvm flags to ms assembler.
2020-07-13 zhin [Py3] Make mac_toolchain Python 3 compatible
2020-07-13 agrieve Android: Make android_test_apk() define target with name=target_name
2020-07-13 chromium-autoroll Roll Fuchsia SDK from 0.20200713.0.1 to 0.20200713.1.1
2020-07-13 chromium-autoroll Roll Fuchsia SDK from 0.20200712.3.1 to 0.20200713.0.1
2020-07-13 chromium-autoroll Roll Fuchsia SDK from 0.20200712.2.1 to 0.20200712.3.1
2020-07-12 chromium-autoroll Roll Fuchsia SDK from 0.20200712.1.1 to 0.20200712.2.1
2020-07-12 chromium-autoroll Roll Fuchsia SDK from 0.20200711.3.1 to 0.20200712.1.1
2020-07-12 chromium-autoroll Roll Fuchsia SDK from 0.20200711.2.1 to 0.20200711.3.1
2020-07-11 chromium-autoroll Roll Fuchsia SDK from 0.20200711.1.1 to 0.20200711.2.1
2020-07-11 chromium-autoroll Roll Fuchsia SDK from 0.20200710.4.1 to 0.20200711.1.1
2020-07-11 hypan Revert "emulator: Disable the feature GLDMA."
2020-07-11 chromium-autoroll Roll Fuchsia SDK from 0.20200710.2.1 to 0.20200710.4.1
2020-07-11 thakis Roll clang n358615-fb1aa286-3 : n359864-04b9a46c-1.
2020-07-10 hypan emulator: Disable the feature GLDMA.
2020-07-10 chromium-autoroll Roll Fuchsia SDK from 0.20200710.1.1 to 0.20200710.2.1
2020-07-10 ehmaldonado Allow DIR_METADATA files within res
2020-07-10 vasilyt Remove GLStreamTextureImage
2020-07-10 agrieve Reland #3 "Android: Bump default target_sdk_version 24 -> SDK used to compile"
2020-07-10 chromium-autoroll Roll Fuchsia SDK from 0.20200710.0.1 to 0.20200710.1.1
2020-07-10 sdefresne [ios] Fix intent_definition template
2020-07-10 chromium-autoroll Roll Fuchsia SDK from 0.20200708.2.1 to 0.20200710.0.1
2020-07-10 wnwen Android: Use direct classpath for android_webview
2020-07-09 wnwen Android: Prefer direct interface classpaths
2020-07-09 bsheedy Revert "Reland #2 "Android: Bump default target_sdk_version 24 -> SDK used to compile""
2020-07-09 mheikal java_library_impl targets can now generate their own R.java files
2020-07-09 mmoss Revert "Split the cros_boards gclient var into two for fetching QEMU images."
2020-07-09 agrieve Android: Dump logcat when gtest fails to list tests
2020-07-09 mmoss Revert "Simplify Simple Chrome's gclient and GN conditionals."
2020-07-09 agrieve Android: Fix -checkdiscard regex'es to ignore comments
2020-07-09 sdefresne [ios] Add support for compiling .intentdefinition
2020-07-08 agrieve Reland #2 "Android: Bump default target_sdk_version 24 -> SDK used to compile"
2020-07-08 chromium-autoroll Roll Fuchsia SDK from 0.20200708.1.1 to 0.20200708.2.1
2020-07-08 agrieve Revert "Reland "Android: Bump default target_sdk_version 24 -> SDK used to compile""
2020-07-08 sdefresne Reland "[ios] Add --landmines-path to build/landmines.py script"
2020-07-08 bpastene Simplify Simple Chrome's gclient and GN conditionals.
2020-07-08 agrieve Reland "Android: Bump default target_sdk_version 24 -> SDK used to compile"
2020-07-08 bsheedy Report public and internal Gold links
2020-07-08 sdefresne Revert "[ios] Add --landmines-path to build/landmines.py script"
2020-07-08 chromium-autoroll Roll Fuchsia SDK from 0.20200707.4.1 to 0.20200708.1.1
2020-07-08 sdefresne [ios] Add --landmines-path to build/landmines.py script
2020-07-08 sdefresne [ios] Fix interaction of build/clobber.py & ios/build/tools/setup-gn.py
2020-07-08 chromium-autoroll Roll Fuchsia SDK from 0.20200707.3.1 to 0.20200707.4.1
2020-07-08 thomasanderson [XProto] Remove usage of XRRUpdateConfiguration and XRandR
2020-07-07 bpastene Split the cros_boards gclient var into two for fetching QEMU images.
2020-07-07 bpastene chromeos: Correctly set the '--flash' arg for host-side tests.
2020-07-07 chromium-autoroll Roll Fuchsia SDK from 0.20200707.1.1 to 0.20200707.3.1
2020-07-07 bpastene chromeos: Treat all unknown-args as the cmd to run in host-side tests.
2020-07-07 chromium-autoroll Roll Fuchsia SDK from 0.20200706.3.1 to 0.20200707.1.1
2020-07-07 jiancai Redirect clang crash diagnosese
2020-07-07 chromium-autoroll Roll Fuchsia SDK from 0.20200706.2.1 to 0.20200706.3.1
2020-07-06 mthiesse Move Activity finishing for Instrumentation tests to BaseChromiumAndroidJUnitRunner
2020-07-06 wnwen Android: Refactor write_build_config.py java paths
2020-07-06 mheikal Improve pydeps related errors
2020-07-06 steimel Add libdbus to tsan_suppressions
2020-07-06 wnwen Android: Fix comments in compile_java.py
2020-07-06 chromium-autoroll Roll Fuchsia SDK from 0.20200706.0.1 to 0.20200706.2.1

Roll buildtools/ 6b951673d..eb3987ec7 (2 commits)

6b951673d1..eb3987ec70

$ git log 6b951673d..eb3987ec7 --date=short --no-merges --format='%ad %ae %s'
2020-07-06 estaab Roll GN from b6203d18..d585128c
2020-07-06 bpastene Update chromium's DEPS-file presubmits with new 'Str' type.

Roll testing/ a711b1132..cadd4e1eb (71 commits)

a711b11325..cadd4e1eb3

$ git log a711b1132..cadd4e1eb --date=short --no-merges --format='%ad %ae %s'
2020-07-17 jdoerrie [Passwords] Enable Touch To Fill by default
2020-07-17 sky history: renames ThumbnailDatabase to FaviconDatabase
2020-07-17 wylieb Update client testing config to match server group
2020-07-17 cduvall Add system_webview_google_apk compile target to perf bots
2020-07-17 bsheedy Target Mac 10.15.5 for GPU Intel stable
2020-07-17 jeffyoon [ios] ios14 tests on chromium.tests.ios14
2020-07-16 dpranke Update //testing/buildbot to remove no-longer-used test types.
2020-07-16 thegreenfrog [ios] Add Testing Config for Fullscreen Finch Config
2020-07-16 liaoyuke [lacros] Encapsulates lacros test runner with test_env or xvfb
2020-07-16 dpranke Remove some unused code paths in the test() GN template.
2020-07-16 behdadb Low cpu_Wall_time_ratio can invalidate failures
2020-07-16 bsheedy Target experimental Win10 NVIDIA machines
2020-07-16 robertma Fix --additional-expectations for disable-site-isolation-trials
2020-07-16 jdeblasio [MIX-DL] Update field trial testing config for m85
2020-07-16 behdadb Updated upper limits of rep_perf_tests including CPU_wall_time_ratios
2020-07-16 sgilhuly Enable more cc_unittests for Skia Dawn
2020-07-16 andzaytsev Privacy elevated on Android: added to the field trial config
2020-07-16 sreejakshetty [bfcache] Cleanup empty test filters
2020-07-16 rsesek Forward invoker.frameworks in fuzzer_test template.
2020-07-16 liaoyuke [code coverage] Clean up code coverage merge script
2020-07-16 liaoyuke [lacros] Generate a test runner wrapper for lacros
2020-07-16 justincohen ios: Pause EmbedderBlockRestoreUrl and remove config.
2020-07-15 svenzheng Fix linux-lacros-tester-rel failure
2020-07-15 johnidel Add fieldtrial testing config for Heavy Ads
2020-07-15 svenzheng LUCI config for linux-lacros
2020-07-15 dpranke Reland "Add a first pass of the desktop test wrapper scripts."
2020-07-14 kimstephanie Revert "Add mac-official builder"
2020-07-14 jeffyoon [pgo] deprecate --no-sparse from merge scripts
2020-07-14 kimstephanie Add mac-official builder
2020-07-14 fhorschig [PwdCheckAndroid] Configure trybots to execute controller tests
2020-07-14 seblalancette [iOS] Fix QR Code Generation Study Name
2020-07-14 jochen Remove code that allows non-CORS whitelisted extra headers from intents
2020-07-14 tby Update field trial testing config for launcher experiments.
2020-07-14 bsheedy Switch GPU Mac Intel Exp to 10.15.5
2020-07-13 hypan emulator: Disable flaky tests in content_shell_test_apk on MM
2020-07-13 xinghuilu Split real time lookup with desktop and Android in field trials.
2020-07-13 steveroe Add fuchsia-fyi-arm64-dbg CI and try builder.
2020-07-11 jam Increase sharding of storage_service content_browsertest on CrOS debug to match content_browsertests.
2020-07-10 vikassoni Add fieldtrial config for DisableGles2ForOopR.
2020-07-10 isamsonov Add flag expectations file to high dpi builder.
2020-07-10 lpz Set --chunk-type=hash in run_wpt_tests.py.
2020-07-10 kerneis Implement OSMetrics::FillOSMemoryDump on Fuchsia
2020-07-10 chanli Remove step_name from telemetry_gpu_integration_test's test_id_prefix
2020-07-09 tbansal Enable idle unused socket timeout of 60 seconds on desktop
2020-07-09 ccameron Increase limit for aquarium_20k average frame time
2020-07-09 michaeldo Roll bots to Xcode 12 beta 2
2020-07-09 rockot Revert "Reland "Add MojoDedicatedThread field trial testing config""
2020-07-09 dullweber Enable ImprovedCookieControls by default
2020-07-09 masonfreed Add Webview fieldtrial testing config for WebComponentsV0
2020-07-08 jam Increase sharding for browser test suites on Linux ASan Tests (sandboxed).
2020-07-08 sreejakshetty [bfcache] Filter out newly failing content_browsertests
2020-07-08 kimstephanie Add win-official and win32-official
2020-07-08 kimstephanie Mac10.15 to main waterfall with no_nacl
2020-07-08 sreejakshetty [bfcache] Filter out newly failing content_unittests
2020-07-08 hazems AW UMA: delete fieldtrial config for WebViewCollectNonEmbeddedMetrics
2020-07-08 alcooper Remove vr_testapp from bots
2020-07-07 svenzheng Pixel tests add retry and disable some tests
2020-07-07 hypan android: Temporarily remove content_browsertests from L CQ builder
2020-07-07 bpastene Remove all unused build & test configs for betty CrOS testers.
2020-07-07 sreejakshetty [bfcache] Filter out newly failing content_browsertests
2020-07-07 dhoss Add CupsIppPrintingBackend experiment to field trial testing config
2020-07-07 wenbinzhang [benchmarking] Disable android-go-perf tester from uploading perf data
2020-07-07 dpranke Reland "Remove //chrome/test wrapper targets for angle."
2020-07-07 bpastene Enable pre-test flashing on all internal CrOS device tests.
2020-07-07 mbonadei Smoke tests to check Abseil is built with ABSL_OPTION_HARDENED=1.
2020-07-07 sreejakshetty [bfcache] Filter out new content_unittests failures
2020-07-07 sreejakshetty [bfcache] Filter out newly failing chrome_public_test_apk
2020-07-07 ricea Add WebSocketReassembleShortMessages config
2020-07-07 sreejakshetty [bfcache] Filter out newly failing unit_tests
2020-07-07 alito Enable WebRTC-SendSideBwe-WithOverhead field trial for testing.
2020-07-07 khushalsagar cc: Enable desychronized scrolling for field trial testing.

Roll third_party/googletest/ 356f2d264..a781fe29b (10 commits)

356f2d264a..a781fe29bc

$ git log 356f2d264..a781fe29b --date=short --no-merges --format='%ad %ae %s'
2020-07-13 ofats Googletest export
2020-07-11 ashikpaul17 Fixed some minor typos
2020-07-09 absl-team Googletest export
2020-07-07 ofats Googletest export
2020-07-07 absl-team Googletest export
2020-07-07 absl-team Googletest export
2020-04-11 olivier.ldff use target_compile_features to use c++11 if cmake > 3.8
2020-06-19 amatanhead Make EXPECT_THROW and EXPECT_NO_THROW macros more informative
2020-05-30 eli fix compilation on OpenBSD 6.7
2020-01-22 mjvk Fixes extensions missing for QNX

Roll third_party/spirv-tools/ bd2a9ea85..717e7877c (35 commits)

bd2a9ea852..717e7877ca

$ git log bd2a9ea85..717e7877c --date=short --no-merges --format='%ad %ae %s'
2020-07-17 alanbaker Store location values sparsely (#3488)
2020-07-17 dneto Permit Simple and GLSL450 memory model in WEBGPU_0 (#3463)
2020-07-17 antonikarp spirv-fuzz: support floating-point in TransformationInvertComparisonOperator (#3551)
2020-07-17 stefanomil Change MaybeApplyTransformation to return a boolean (#3555)
2020-07-17 stefanomil spirv-fuzz: Implement MaybeApplyTransformation helper function (#3540)
2020-07-17 stefanomil spirv-fuzz: Assert false in IsApplicable method of TransformationAccessChain (#3528)
2020-07-16 vasniktel spirv-fuzz: Add support for OpBitcast to TransformationEquationInstruction (#3523)
2020-07-16 vasniktel spirv-fuzz: Add support for OpConvert to TransformationEquationInstruction (#3472)
2020-07-15 alanbaker Fix reachability in the validator (#3541)
2020-07-15 vasniktel spirv-fuzz: Remove TransformationCopyObject (#3531)
2020-07-15 vasniktel spirv-opt: Add support for OpLabel to dominator analysis (#3516)
2020-07-15 stefanomil spirv-fuzz: Fuzzer pass to interchange zero-like constants (#3524)
2020-07-15 afdx spirv-fuzz: Add replay range option (#3535)
2020-07-14 jaebaek Rewrite KillDebugDeclares() (#3513)
2020-07-14 andreperezmaselco.developer spirv-fuzz: Fix instruction insertion issue (#3521)
2020-07-14 andreperezmaselco.developer spirv-fuzz: Implement the OpMatrixTimesMatrix linear algebra case (#3527)
2020-07-14 greg Add support to GPU-AV instrumentation for Task and Mesh shaders (#3512)
2020-07-14 andreperezmaselco.developer spirv-fuzz: Support adding dead break from back-edge block (#3519)
2020-07-14 andreperezmaselco.developer Support OpPhi when replacing boolean constant operand (#3518)
2020-07-12 vasniktel spirv-fuzz: TransformationAddSynonyms (#3447)
2020-07-11 vasniktel spirv-fuzz: Remove unused functions (#3510)
2020-07-11 vasniktel spirv-fuzz: Minor refactoring (#3507)
2020-07-10 greg Preserve OpenCL.DebugInfo.100 through elim-local-single-store (#3498)
2020-07-10 jaebaek Preserve debug info in vector DCE pass (#3497)
2020-07-10 stefano.milizia00 Implement transformation to record synonymous constants. (#3494)
2020-07-09 jaebaek Fix build failure (#3508)
2020-07-09 greg Upgrade elim-local-single-block for OpenCL.DebugInfo.100 (#3451)
2020-07-09 vasniktel spirv-fuzz: TransformationReplaceParameterWithGlobal (#3434)
2020-07-09 andreperezmaselco.developer Implement the OpMatrixTimesVector linear algebra case (#3500)
2020-07-08 jaebaek Preserve OpenCL.100.DebugInfo in reduce-load-size pass (#3492)
2020-07-08 andreperezmaselco.developer spirv-fuzz: Add image sample unused components transformation (#3439)
2020-07-07 andreperezmaselco.developer spirv-fuzz: Add variables with workgroup storage class (#3485)
2020-07-07 andreperezmaselco.developer spirv-fuzz: Implement the OpVectorTimesMatrix linear algebra case (#3489)
2020-07-07 vasniktel spirv-fuzz: fuzzerutil::MaybeGetConstant* #3487
2020-07-06 jaebaek Debug info preservation in copy-prop-array pass (#3444)

Roll tools/clang/ b49c12a8f..6412135b3 (10 commits)

b49c12a8f3..6412135b39

$ git log b49c12a8f..6412135b3 --date=short --no-merges --format='%ad %ae %s'
2020-07-15 aeubanks Set -DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=OFF
2020-07-15 hans Clang: fix syntax error in build.py
2020-07-15 hans Clang: the tip-of-tree version is now 12.0.0
2020-07-14 lukasza Teach the rewriter about additional thirdy-party paths.
2020-07-12 bartekn Fix a field and add more to manual-fields-to-ignore.txt
2020-07-11 thakis Roll clang n358615-fb1aa286-3 : n359864-04b9a46c-1.
2020-07-10 thakis clang/win bots: Switch to gnuwin-13.
2020-07-08 lukasza Only exclude const-qualified char pointers.
2020-07-08 lukasza Make raw-output-tests ignore changes in absolute path of Chromium repo.
2020-07-07 glenrob Always remove gomacc in compile_db.py, so clang is called directly.

Created with:
  roll-dep build buildtools testing third_party/binutils third_party/googletest third_party/spirv-headers third_party/spirv-tools tools/clang

R=rharrison@google.com
Change-Id: I1f5a20578b6909f556270c807b6be048a97182db

Change-Id: I8cf650a6be72c832bf50e74b4aed1ed1aff9b661
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/25160
Reviewed-by: David Neto <dneto@google.com>
2020-07-17 17:04:06 +00:00
build_overrides Add support for SPIRV reading to BUILD.gn 2020-04-15 20:35:38 +00:00
fuzzers Rename tint_fuzz to tint_wgsl_reader_fuzzer 2020-04-23 13:51:39 +00:00
include/tint [metal-writer] Stub out the Metal Shading Language backend. 2020-06-23 17:48:40 +00:00
infra/config Remove refs.cfg. 2020-07-16 19:02:29 +00:00
samples Fixup format parsing in sample app. 2020-07-08 15:28:26 +00:00
src [spirv-reader] Support Location on module vars 2020-07-16 21:13:58 +00:00
test [msl-writer] Generate entry point functions. 2020-07-15 18:04:11 +00:00
third_party Enable Tint as part of a larger CMake project 2020-06-26 22:29:27 +00:00
tools Set root folder for linter. 2020-03-19 13:03:35 +00:00
.clang-format Initial commit 2020-03-02 15:47:43 -05:00
.gitignore Windows fixes. 2020-05-04 18:58:24 +00:00
.gn Add in basic BUILD.gn and additional DEPS 2020-04-08 20:40:25 +00:00
BUILD.gn Clean up how deps are defined in BUILD.gn 2020-07-16 20:13:16 +00:00
CMakeLists.txt [msl-writer] Add struct offset support. 2020-07-15 20:54:48 +00:00
CODE_OF_CONDUCT.md Initial commit 2020-03-02 15:47:43 -05:00
CONTRIBUTING.md Fixup the contributing file. 2020-04-06 18:43:20 +00:00
CPPLINT.cfg Adding PRESUBMIT.py with a bunch of checks turned on 2020-06-03 13:41:41 +00:00
DEPS Rolling 6 dependencies 2020-07-17 17:04:06 +00:00
Doxyfile Initial commit 2020-03-02 15:47:43 -05:00
LICENSE Initial commit 2020-03-02 15:47:43 -05:00
PRESUBMIT.py Fix nit in PRESUBMIT.py 2020-06-03 16:12:09 +00:00
README.md Add support for running [chromium-style] checks in CMake builds 2020-04-28 19:27:38 +00:00
simple.spv [msl-writer] Fix output of array-of-array. 2020-07-10 00:03:19 +00:00
standalone.gclient Convert dependency management to using gclient 2020-03-05 15:58:27 +00:00
tint_overrides_with_defaults.gni [metal-writer] Stub out the Metal Shading Language backend. 2020-06-23 17:48:40 +00:00

README.md

Tint

Tint is a compiler for the WebGPU Shader Language (WGSL).

This is not an officially supported Google product.

Requirements

  • Git
  • CMake (3.10.2 or later)
  • Ninja (or other build tool)
  • Python, for fetching dependencies
  • depot_tools in your path

Build options

  • TINT_BUILD_SPV_READER : enable the SPIR-V input reader (off by default)
  • TINT_BUILD_WGSL_READER : enable the WGSL input reader (on by default)
  • TINT_BUILD_SPV_WRITER : enable the SPIR-V output writer (on by default)
  • TINT_BUILD_WGSL_WRITER : enable the WGSL output writer (on by default)
  • TINT_BUILD_FUZZERS : enable building fuzzzers (off by default)

Building

Tint uses Chromium dependency management so you need to install depot_tools and add it to your PATH.

Getting source & dependencies

# Clone the repo as "tint"
git clone https://dawn.googlesource.com/tint tint && cd tint

# Bootstrap the gclient configuration
cp standalone.gclient .gclient

# Fetch external dependencies and toolchains with gclient
gclient sync

Compiling using CMake + Ninja

mkdir -p out/Debug
cd out/Debug
cmake -GNinja ../..
ninja # or autoninja

Compiling using CMake + make

mkdir -p out/Debug
cd out/Debug
cmake ../..
make # -j N for N-way parallel build

Compiling using gn + ninja

mkdir -p out/Debug
gn gen out/Debug
autoninja -C out/Debug

Fuzzers on MacOS

If you are attempting fuzz, using TINT_BUILD_FUZZERS=ON, the version of llvm in the XCode SDK does not have the needed libfuzzer functionality included.

The build error that you will see from using the XCode SDK will look something like this:

ld: file not found:/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/11.0.0/lib/darwin/libclang_rt.fuzzer_osx.a

The solution to this problem is to use a full version llvm, like what you would get via homebrew, brew install llvm, and use something like CC=<path to full clang> cmake .. to setup a build using that toolchain.

Checking [chromium-style] issues in CMake builds

The gn based work flow uses the Chromium toolchain for building in anticipation of integration of Tint into Chromium based projects. This toolchain has additional plugins for checking for style issues, which are marked with [chromium-style] in log messages. This means that this toolchain is more strict then the default clang toolchain.

In the future we will have a CQ that will build this work flow and flag issues automatically. Until that is in place, to avoid causing breakages you can run the [chromium-style] checks using the CMake based work flows. This requires setting CC to the version of clang checked out by gclient sync and setting the TINT_CHECK_CHROMIUM_STYLE to ON.

mkdir -p out/style
cd out/style
cmake ../..
CC=../../third_party/llvm-build/Release+Asserts/bin/clang cmake -DTINT_CHECK_CHROMIUM_STYLE=ON ../../ # add -GNinja for ninja builds

Issues

Please file any issues or feature requests at https://bugs.chromium.org/p/tint/issues/entry

Contributing

Please see the CONTRIBUTING and CODE_OF_CONDUCT files on how to contribute to Tint.