Add package config for speccpu2000

Change-Id: I21ece04efb41dcef28b2552fe4a14879a253509e
diff --git a/BUILD.gn b/BUILD.gn
index 6889b90..6e49091 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -2,6 +2,8 @@
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
 
+import("//packages/package.gni")
+
 group("speccpu2000") {
   testonly = true
 
@@ -22,3 +24,382 @@
     "benchmarks:speccpu2000_benchmark",
   ]
 }
+
+package("package") {
+  package_name = "speccpu2000"
+
+  deps = [
+    ":speccpu2000",
+    ":speccpu2000(//build/toolchain:host_x64)",
+  ]
+
+  binaries = [
+    {
+      name = "164.gzip"
+    },
+
+    {
+      name = "175.vpr"
+    },
+
+    {
+      name = "176.gcc"
+    },
+
+    {
+      name = "177.mesa"
+    },
+
+    {
+      name = "179.art"
+    },
+
+    {
+      name = "181.mcf"
+    },
+
+    {
+      name = "183.equake"
+    },
+
+    {
+      name = "186.crafty"
+    },
+
+    {
+      name = "188.ammp"
+    },
+
+    {
+      name = "252.eon"
+    },
+
+    {
+      name = "255.vortex"
+    },
+
+    {
+      name = "256.bzip2"
+    },
+
+    {
+      name = "300.twolf"
+    },
+
+    {
+      name = "speccpu2000_benchmark"
+    },
+  ]
+
+  resources = [
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/164.gzip/data/ref/input/input.graphic")
+      dest = "benchmarks/data/164.gzip/input.graphic"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/164.gzip/data/ref/input/input.log")
+      dest = "benchmarks/data/164.gzip/input.log"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/164.gzip/data/ref/input/input.program")
+      dest = "benchmarks/data/164.gzip/input.program"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/164.gzip/data/ref/input/input.random")
+      dest = "benchmarks/data/164.gzip/input.random"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/164.gzip/data/ref/input/input.source")
+      dest = "benchmarks/data/164.gzip/input.source"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/175.vpr/data/ref/input/net.in")
+      dest = "benchmarks/data/175.vpr/net.in"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/175.vpr/data/ref/input/place.in")
+      dest = "benchmarks/data/175.vpr/place.in"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/175.vpr/data/ref/input/arch.in")
+      dest = "benchmarks/data/175.vpr/arch.in"
+    },
+
+    {
+      path = rebase_path("third_party/speccpu2000/176.gcc/data/ref/input/166.i")
+      dest = "benchmarks/data/176.gcc/166.i"
+    },
+
+    {
+      path = rebase_path("third_party/speccpu2000/176.gcc/data/ref/input/200.i")
+      dest = "benchmarks/data/176.gcc/200.i"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/176.gcc/data/ref/input/expr.i")
+      dest = "benchmarks/data/176.gcc/expr.i"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/176.gcc/data/ref/input/integrate.i")
+      dest = "benchmarks/data/176.gcc/integrate.i"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/176.gcc/data/ref/input/scilab.i")
+      dest = "benchmarks/data/176.gcc/scilab.i"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/177.mesa/data/ref/input/mesa.mesh")
+      dest = "benchmarks/data/177.mesa/mesa.mesh"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/179.art/data/ref/input/c756hel.in")
+      dest = "benchmarks/data/179.art/c756hel.in"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/179.art/data/ref/input/a10.img")
+      dest = "benchmarks/data/179.art/a10.img"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/179.art/data/ref/input/hc.img")
+      dest = "benchmarks/data/179.art/hc.img"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/181.mcf/data/ref/input/inp.in")
+      dest = "benchmarks/data/181.mcf/inp.in"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/181.mcf/data/ref/input/mcf.out")
+      dest = "benchmarks/data/181.mcf/mcf.out"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/183.equake/data/ref/input/inp.in")
+      dest = "benchmarks/data/183.equake/inp.in"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/186.crafty/data/ref/input/crafty.in")
+      dest = "benchmarks/data/186.crafty/crafty.in"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/188.ammp/data/ref/input/ammp.in")
+      dest = "benchmarks/data/188.ammp/ammp.in"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/188.ammp/data/ref/input/all.init.ammp")
+      dest = "benchmarks/data/188.ammp/all.init.ammp"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/188.ammp/data/ref/input/init_cond.run.1")
+      dest = "benchmarks/data/188.ammp/init_cond.run.1"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/188.ammp/data/ref/input/init_cond.run.2")
+      dest = "benchmarks/data/188.ammp/init_cond.run.2"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/188.ammp/data/ref/input/init_cond.run.3")
+      dest = "benchmarks/data/188.ammp/init_cond.run.3"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/252.eon/data/ref/input/chair.camera")
+      dest = "benchmarks/data/252.eon/chair.camera"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/252.eon/data/ref/input/chair.control.cook")
+      dest = "benchmarks/data/252.eon/chair.control.cook"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/252.eon/data/ref/input/chair.control.kajiya")
+      dest = "benchmarks/data/252.eon/chair.control.kajiya"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/252.eon/data/ref/input/chair.control.rushmeier")
+      dest = "benchmarks/data/252.eon/chair.control.rushmeier"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/252.eon/data/ref/input/chair.surfaces")
+      dest = "benchmarks/data/252.eon/chair.surfaces"
+    },
+
+    {
+      path =
+          rebase_path("third_party/speccpu2000/252.eon/data/ref/input/eon.dat")
+      dest = "benchmarks/data/252.eon/eon.dat"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/252.eon/data/ref/input/spectra.dat")
+      dest = "benchmarks/data/252.eon/spectra.dat"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/252.eon/data/ref/input/materials")
+      dest = "benchmarks/data/252.eon/materials"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/lendian1.raw")
+      dest = "benchmarks/data/255.vortex/lendian1.raw"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/lendian2.raw")
+      dest = "benchmarks/data/255.vortex/lendian2.raw"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/lendian3.raw")
+      dest = "benchmarks/data/255.vortex/lendian3.raw"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/lendian.wnv")
+      dest = "benchmarks/data/255.vortex/lendian.wnv"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/lendian.rnv")
+      dest = "benchmarks/data/255.vortex/lendian.rnv"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/bendian1.raw")
+      dest = "benchmarks/data/255.vortex/bendian1.raw"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/bendian2.raw")
+      dest = "benchmarks/data/255.vortex/bendian2.raw"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/bendian3.raw")
+      dest = "benchmarks/data/255.vortex/bendian3.raw"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/bendian.wnv")
+      dest = "benchmarks/data/255.vortex/bendian.wnv"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/bendian.rnv")
+      dest = "benchmarks/data/255.vortex/bendian.rnv"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/255.vortex/data/ref/input/persons.1k")
+      dest = "benchmarks/data/255.vortex/persons.1k"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/256.bzip2/data/ref/input/input.source")
+      dest = "benchmarks/data/256.bzip2/input.source"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/256.bzip2/data/ref/input/input.graphic")
+      dest = "benchmarks/data/256.bzip2/input.graphic"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/256.bzip2/data/ref/input/input.program")
+      dest = "benchmarks/data/256.bzip2/input.program"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/300.twolf/data/ref/input/ref.blk")
+      dest = "benchmarks/data/300.twolf/ref.blk"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/300.twolf/data/ref/input/ref.cel")
+      dest = "benchmarks/data/300.twolf/ref.cel"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/300.twolf/data/ref/input/ref.net")
+      dest = "benchmarks/data/300.twolf/ref.net"
+    },
+
+    {
+      path = rebase_path(
+              "third_party/speccpu2000/300.twolf/data/ref/input/ref.par")
+      dest = "benchmarks/data/300.twolf/ref.par"
+    },
+  ]
+}