# 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.

executable("175.vpr") {
  testonly = true

  sources = [
    "src/check_route.c",
    "src/check_rr_graph.c",
    "src/draw.c",
    "src/graphics.c",
    "src/hash.c",
    "src/main.c",
    "src/place.c",
    "src/read_arch.c",
    "src/read_netlist.c",
    "src/read_place.c",
    "src/route.c",
    "src/rr_graph.c",
    "src/rr_graph2.c",
    "src/rr_graph_area.c",
    "src/rr_graph_sbox.c",
    "src/rr_graph_timing_params.c",
    "src/rr_graph_util.c",
    "src/segment_stats.c",
    "src/stats.c",
    "src/util.c",
  ]
  cflags_c = [ "-Wno-sign-compare" ]
  defines = [ "SPEC_CPU2000" ]
  data = [
    "data/ref/input/net.in",
    "data/ref/input/arch.in",
  ]
}
