tree 0d3f0e41a8478d507f7b70d6bfac43d01668c664
parent 0375511c74cedbba2f6916d29142a8f366f9f188
author David 'Digit' Turner <digit@google.com> 1560344230 +0000
committer CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org> 1560344230 +0000

[graphics][compute]: Simplify hotsort target generation.

This CL simplifies the build rules associated with hotsort
and spinel target generation.

- Modify the hotsort_target() GN template definition to
  pass hotsort_gen configuration parameters through named
  variables (e.g. 'type_dwords', 'thread_regs', etc)
  instead of command-line flags that are more difficult
  to understand. So now, a target declaration looks like:

	hotsort_target("hs_amd_gcn3_u64") {
	  vendor = "amd"
	  type_dwords = 2
	  warp_lanes = 64
	  thread_regs = 8
	  smem_bs = 32768
	  smem_bc = 32768
	  warps_per_group = 16
	  warps_min = 1
	  warps_mod = 1
	  merge_flip_lo = 1
	  merge_flip_hi = 1
	  merge_half_lo = 1
	  merge_half_hi = 1
	  glsl_bindings = "1,0,1,0"
	  autotune = true
	}

  BONUS: This makes gn-format happier than the previous format!

- Each hotsort_target() GN target now provides a public_configs
  value that simplifies client usage. I.e. as long as your
  source_set() depends on a hotsort_target() target, its
  source code can directly include "<target_name>/hs_target.h".

  There is no need to chase the right include_dirs value for
  this include to work.

- Do the same for spinel_target() GN targets.

+ Simplify spinel_vk_context and spinel_vk_path_builder
  accordingly. Note that for now, all targets are still linked
  into the test programs themselves.

TEST: Rebuild with fx build src/graphics/lib/compute:tests

Change-Id: I39992ecff3c8639999eff0171fb897e14e1fcb43
