[packages] create a shell=true package per binary
These will be used to make a soft transition to the removal of the
deprecated_system_image package that remains called "sbase".
Change-Id: Ic720db8adc46ab3ed538ac24cdea47382c87f824
diff --git a/BUILD.gn b/BUILD.gn
index 12a6c42..4aef37a 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -2,120 +2,107 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
-group("all") {
- testonly = true
+import("//build/package.gni")
- public_deps = [
- ":basename",
- ":cal",
- ":cat",
+# The following binaries are disabled:
+# "chgrp",
+# "chmod",
+# "chown",
+# "chroot",
+# "cron",
+# "flock",
+# "getconf",
+# "kill",
+# "ln",
+# "logger",
+# "logname",
+# "mkfifo",
+# "nice",
+# "nohup",
+# "renice",
+# "setsid",
+# "time",
+# "uname",
- # ":chgrp",
- # ":chmod",
- # ":chown",
- # ":chroot",
- ":cksum",
- ":cmp",
- ":cols",
- ":comm",
- ":cp",
-
- # ":cron",
- ":cut",
- ":date",
- ":dirname",
- ":du",
- ":echo",
- ":ed",
- ":env",
- ":expand",
- ":expr",
- ":false",
- ":find",
-
- # ":flock",
- ":fold",
-
- # ":getconf",
- ":grep",
- ":head",
- ":hostname",
- ":join",
-
- # ":kill",
- ":link",
-
- # ":ln",
- # ":logger",
- # ":logname",
- ":ls",
- ":md5sum",
- ":mkdir",
-
- # ":mkfifo",
- ":mktemp",
- ":mv",
-
- # ":nice",
- ":nl",
-
- # ":nohup",
- ":od",
- ":paste",
- ":pathchk",
- ":printenv",
- ":printf",
- ":pwd",
- ":readlink",
-
- # ":renice",
- ":rev",
- ":rm",
- ":rmdir",
- ":sed",
- ":seq",
-
- # ":setsid",
- ":sha1sum",
- ":sha224sum",
- ":sha256sum",
- ":sha384sum",
- ":sha512-224sum",
- ":sha512-256sum",
- ":sha512sum",
- ":sleep",
- ":sort",
- ":split",
- ":sponge",
- ":strings",
- ":sync",
- ":tail",
- ":tar",
- ":tee",
- ":test",
- ":tftp",
-
- # ":time",
- ":touch",
- ":tr",
- ":true",
- ":tsort",
- ":tty",
-
- # ":uname",
- ":unexpand",
- ":uniq",
- ":unlink",
- ":uudecode",
- ":uuencode",
- ":wc",
- ":which",
- # ":whoami",
- ":xargs",
- ":xinstall",
- ":yes",
- ]
-}
+sbase_binaries = [
+ "basename",
+ "cal",
+ "cat",
+ "cksum",
+ "cmp",
+ "cols",
+ "comm",
+ "cp",
+ "cut",
+ "date",
+ "dirname",
+ "du",
+ "echo",
+ "ed",
+ "env",
+ "expand",
+ "expr",
+ "false",
+ "find",
+ "fold",
+ "grep",
+ "head",
+ "hostname",
+ "join",
+ "link",
+ "ls",
+ "md5sum",
+ "mkdir",
+ "mktemp",
+ "mv",
+ "nl",
+ "od",
+ "paste",
+ "pathchk",
+ "printenv",
+ "printf",
+ "pwd",
+ "readlink",
+ "rev",
+ "rm",
+ "rmdir",
+ "sed",
+ "seq",
+ "sha1sum",
+ "sha224sum",
+ "sha256sum",
+ "sha384sum",
+ "sha512-224sum",
+ "sha512-256sum",
+ "sha512sum",
+ "sleep",
+ "sort",
+ "split",
+ "sponge",
+ "strings",
+ "sync",
+ "tail",
+ "tar",
+ "tee",
+ "test",
+ "tftp",
+ "touch",
+ "tr",
+ "true",
+ "tsort",
+ "tty",
+ "unexpand",
+ "uniq",
+ "unlink",
+ "uudecode",
+ "uuencode",
+ "wc",
+ "which",
+ "whoami",
+ "xargs",
+ "xinstall",
+ "yes",
+]
config("sbase_config") {
cflags = [
@@ -126,14 +113,16 @@
]
}
-template("sbase_util") {
- assert(invoker != "")
+foreach(bin, sbase_binaries) {
+ executable(bin + "_bin") {
+ output_name = bin
- executable(target_name) {
sources = [
- "$target_name.c",
+ "$bin.c",
]
+ libs = [ "zircon" ]
+
deps = [
"libutf",
"libutil",
@@ -142,596 +131,35 @@
configs += [ ":sbase_config" ]
}
+
+ package(bin) {
+ deps = [
+ ":${bin}_bin",
+ ]
+
+ binaries = [
+ {
+ name = bin
+ shell = true
+ },
+ ]
+ }
}
-sbase_util("basename") {
-}
-sbase_util("cal") {
-}
-sbase_util("cat") {
-}
-
-# sbase_util("chgrp") {}
-# sbase_util("chmod") {}
-# sbase_util("chown") {}
-# sbase_util("chroot") {}
-sbase_util("cksum") {
-}
-sbase_util("cmp") {
-}
-sbase_util("cols") {
-}
-sbase_util("comm") {
-}
-sbase_util("cp") {
-}
-
-# sbase_util("cron") {}
-sbase_util("cut") {
-}
-sbase_util("date") {
-}
-sbase_util("dirname") {
-}
-sbase_util("du") {
-}
-sbase_util("echo") {
-}
-sbase_util("ed") {
-}
-sbase_util("env") {
-}
-sbase_util("expand") {
-}
-sbase_util("expr") {
-}
-sbase_util("false") {
-}
-sbase_util("find") {
-}
-
-# sbase_util("flock") {}
-sbase_util("fold") {
-}
-
-# sbase_util("getconf") {}
-sbase_util("grep") {
-}
-sbase_util("head") {
-}
-sbase_util("hostname") {
-}
-sbase_util("join") {
-}
-
-# sbase_util("kill") {}
-sbase_util("link") {
-}
-
-# sbase_util("ln") {}
-# sbase_util("logger") {}
-# sbase_util("logname") {}
-sbase_util("ls") {
-}
-sbase_util("md5sum") {
-}
-sbase_util("mkdir") {
-}
-
-# sbase_util("mkfifo") {}
-sbase_util("mktemp") {
-}
-sbase_util("mv") {
-}
-
-# sbase_util("nice") {}
-sbase_util("nl") {
-}
-
-# sbase_util("nohup") {}
-sbase_util("od") {
-}
-sbase_util("paste") {
-}
-sbase_util("pathchk") {
-}
-sbase_util("printenv") {
-}
-sbase_util("printf") {
-}
-sbase_util("pwd") {
-}
-sbase_util("readlink") {
-}
-
-# sbase_util("renice") {}
-sbase_util("rev") {
-}
-sbase_util("rm") {
-}
-sbase_util("rmdir") {
-}
-sbase_util("sed") {
-}
-sbase_util("seq") {
-}
-
-# sbase_util("setsid") {}
-sbase_util("sha1sum") {
-}
-sbase_util("sha224sum") {
-}
-sbase_util("sha256sum") {
-}
-sbase_util("sha384sum") {
-}
-sbase_util("sha512-224sum") {
-}
-sbase_util("sha512-256sum") {
-}
-sbase_util("sha512sum") {
-}
-sbase_util("sleep") {
-}
-sbase_util("sort") {
-}
-sbase_util("split") {
-}
-sbase_util("sponge") {
-}
-sbase_util("strings") {
-}
-sbase_util("sync") {
-}
-sbase_util("tail") {
-}
-sbase_util("tar") {
-}
-sbase_util("tee") {
-}
-sbase_util("test") {
-}
-sbase_util("tftp") {
-}
-
-# sbase_util("time") {}
-sbase_util("touch") {
-}
-sbase_util("tr") {
-}
-sbase_util("true") {
-}
-sbase_util("tsort") {
-}
-sbase_util("tty") {
-}
-
-# sbase_util("uname") {}
-sbase_util("unexpand") {
-}
-sbase_util("uniq") {
-}
-sbase_util("unlink") {
-}
-sbase_util("uudecode") {
-}
-sbase_util("uuencode") {
-}
-sbase_util("wc") {
-}
-sbase_util("which") {
-}
-# sbase_util("whoami") {
-# }
-sbase_util("xinstall") {
-}
-sbase_util("yes") {
-}
-
-executable("xargs") {
- sources = [
- "xargs.c",
- ]
-
- deps = [
- "libutf",
- "libutil",
- "//zircon/public/lib/fdio",
- ]
-
- libs = [ "zircon" ]
-
- configs += [ ":sbase_config" ]
-}
-import("//build/package.gni")
-
+# package sbase is deprecated, users should over time migrate to using the above packages instead.
package("sbase") {
testonly = true
deprecated_system_image = true
- deps = [
- ":all",
- ]
+ deps = []
+ binaries = []
- binaries = [
- {
- shell = true
- name = "basename"
- },
-
- {
- shell = true
- name = "cal"
- },
-
- {
- shell = true
- name = "cat"
- },
-
- {
- shell = true
- name = "cksum"
- },
-
- {
- shell = true
- name = "cmp"
- },
-
- {
- shell = true
- name = "cols"
- },
-
- {
- shell = true
- name = "comm"
- },
-
- {
- shell = true
- name = "cp"
- },
-
- {
- shell = true
- name = "cut"
- },
-
- {
- shell = true
- name = "date"
- },
-
- {
- shell = true
- name = "dirname"
- },
-
- {
- shell = true
- name = "du"
- },
-
- {
- shell = true
- name = "echo"
- },
-
- {
- shell = true
- name = "ed"
- },
-
- {
- shell = true
- name = "env"
- },
-
- {
- shell = true
- name = "expand"
- },
-
- {
- shell = true
- name = "expr"
- },
-
- {
- shell = true
- name = "false"
- },
-
- {
- shell = true
- name = "find"
- },
-
- {
- shell = true
- name = "fold"
- },
-
- {
- shell = true
- name = "grep"
- },
-
- {
- shell = true
- name = "head"
- },
-
- {
- shell = true
- name = "hostname"
- },
-
- {
- shell = true
- name = "join"
- },
-
- {
- shell = true
- name = "link"
- },
-
- {
- shell = true
- name = "ls"
- },
-
- {
- shell = true
- name = "md5sum"
- },
-
- {
- shell = true
- name = "mkdir"
- },
-
- {
- shell = true
- name = "mktemp"
- },
-
- {
- shell = true
- name = "mv"
- },
-
- {
- shell = true
- name = "nl"
- },
-
- {
- shell = true
- name = "od"
- },
-
- {
- shell = true
- name = "paste"
- },
-
- {
- shell = true
- name = "pathchk"
- },
-
- {
- shell = true
- name = "printenv"
- },
-
- {
- shell = true
- name = "printf"
- },
-
- {
- shell = true
- name = "pwd"
- },
-
- {
- shell = true
- name = "readlink"
- },
-
- {
- shell = true
- name = "rev"
- },
-
- {
- shell = true
- name = "rm"
- },
-
- {
- shell = true
- name = "rmdir"
- },
-
- {
- shell = true
- name = "sed"
- },
-
- {
- shell = true
- name = "seq"
- },
-
- {
- shell = true
- name = "sha1sum"
- },
-
- {
- shell = true
- name = "sha224sum"
- },
-
- {
- shell = true
- name = "sha256sum"
- },
-
- {
- shell = true
- name = "sha384sum"
- },
-
- {
- shell = true
- name = "sha512-224sum"
- },
-
- {
- shell = true
- name = "sha512-256sum"
- },
-
- {
- shell = true
- name = "sha512sum"
- },
-
- {
- shell = true
- name = "sleep"
- },
-
- {
- shell = true
- name = "sort"
- },
-
- {
- shell = true
- name = "split"
- },
-
- {
- shell = true
- name = "sponge"
- },
-
- {
- shell = true
- name = "strings"
- },
-
- {
- shell = true
- name = "sync"
- },
-
- {
- shell = true
- name = "tail"
- },
-
- {
- shell = true
- name = "tar"
- },
-
- {
- shell = true
- name = "tee"
- },
-
- {
- shell = true
- name = "test"
- },
-
- {
- shell = true
- name = "tftp"
- },
-
- {
- shell = true
- name = "touch"
- },
-
- {
- shell = true
- name = "tr"
- },
-
- {
- shell = true
- name = "true"
- },
-
- {
- shell = true
- name = "tsort"
- },
-
- {
- shell = true
- name = "tty"
- },
-
- {
- shell = true
- name = "unexpand"
- },
-
- {
- shell = true
- name = "uniq"
- },
-
- {
- shell = true
- name = "unlink"
- },
-
- {
- shell = true
- name = "uudecode"
- },
-
- {
- shell = true
- name = "uuencode"
- },
-
- {
- shell = true
- name = "wc"
- },
-
- {
- shell = true
- name = "which"
- },
-
- {
- shell = true
- name = "xargs"
- },
-
- {
- shell = true
- name = "xinstall"
- },
-
- {
- shell = true
- name = "yes"
- },
- ]
+ foreach(bin, sbase_binaries) {
+ deps += [ ":${bin}_bin" ]
+ binaries += [
+ {
+ name = bin
+ },
+ ]
+ }
}