# Copyright 2016 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

inputs = [
  "data/ref/input/a10.img",
  "data/ref/input/c756hel.in",
  "data/ref/input/hc.img",
]

executable("179.art") {
  testonly = true

  sources = [
    "src/scanner.c",
  ]
  defines = [ "SPEC_CPU2000" ]
  cflags_c = [
    "-Wno-format",
    "-Wno-implicit-function-declaration",
  ]
  if (current_os == "fuchsia") {
    data = inputs
  } else {
    data_deps = [
      ":copy_inputs",
    ]
  }
}

copy("copy_inputs") {
  visibility = [ ":*" ]
  sources = inputs
  outputs = [
    "$root_out_dir/data/179.art/{{source_file_part}}",
  ]
}
