blob: 02365c6004a01b5e793799ec9af77365ad83772e [file] [log] [blame]
Dan Willemsena852f952018-01-08 13:50:55 -08001cc_defaults {
2 name: "toolbox_defaults",
3
4 cflags: [
5 "-Werror",
6 "-Wno-unused-parameter",
7 "-Wno-unused-const-variable",
8 "-include bsd-compatibility.h",
9 ],
10 local_include_dirs: ["upstream-netbsd/include/"],
11}
Yifan Hong49641ba2017-05-22 18:08:02 -070012
13cc_library_static {
Dan Willemsena852f952018-01-08 13:50:55 -080014 name: "libtoolbox_dd",
15 defaults: ["toolbox_defaults"],
Tom Cherry6fb3dca2018-01-09 13:20:08 -080016 vendor_available: true,
Yifan Hong49641ba2017-05-22 18:08:02 -070017 srcs: [
18 "upstream-netbsd/bin/dd/args.c",
19 "upstream-netbsd/bin/dd/conv.c",
20 "upstream-netbsd/bin/dd/dd.c",
21 "upstream-netbsd/bin/dd/dd_hostops.c",
22 "upstream-netbsd/bin/dd/misc.c",
23 "upstream-netbsd/bin/dd/position.c",
24 "upstream-netbsd/lib/libc/gen/getbsize.c",
25 "upstream-netbsd/lib/libc/gen/humanize_number.c",
26 "upstream-netbsd/lib/libc/stdlib/strsuftoll.c",
27 "upstream-netbsd/lib/libc/string/swab.c",
28 "upstream-netbsd/lib/libutil/raise_default_signal.c",
29 ],
Dan Willemsena852f952018-01-08 13:50:55 -080030 cflags: [
Yifan Hong49641ba2017-05-22 18:08:02 -070031 "-Dmain=dd_main",
32 "-DNO_CONV",
33 ],
Dan Willemsena852f952018-01-08 13:50:55 -080034}
35
36genrule {
Dan Willemsena852f952018-01-08 13:50:55 -080037 name: "toolbox_input_labels",
38 tool_files: ["generate-input.h-labels.py"],
39 cmd: "$(location) $(in) >$(out)",
40 srcs: [":kernel_input_headers"],
41 out: ["input.h-labels.h"],
42}
43
Tom Cherry6fb3dca2018-01-09 13:20:08 -080044cc_defaults {
45 name: "toolbox_binary_defaults",
Dan Willemsena852f952018-01-08 13:50:55 -080046 defaults: ["toolbox_defaults"],
47 srcs: [
48 "toolbox.c",
49 "getevent.c",
Dan Willemsena852f952018-01-08 13:50:55 -080050 "newfs_msdos.c",
51 ],
52 generated_headers: [
Dan Willemsena852f952018-01-08 13:50:55 -080053 "toolbox_input_labels",
54 ],
55 whole_static_libs: ["libtoolbox_dd"],
56 shared_libs: [
Dan Willemsena852f952018-01-08 13:50:55 -080057 "libcutils",
58 ],
Dan Willemsena852f952018-01-08 13:50:55 -080059
60 symlinks: [
61 "dd",
62 "getevent",
Dan Willemsena852f952018-01-08 13:50:55 -080063 "newfs_msdos",
64 ],
65}
66
Tom Cherry6fb3dca2018-01-09 13:20:08 -080067cc_binary {
68 name: "toolbox",
69 defaults: ["toolbox_binary_defaults"],
70}
71
72cc_binary {
73 name: "toolbox_vendor",
74 stem: "toolbox",
75 vendor: true,
76 defaults: ["toolbox_binary_defaults"],
77}
78
Dan Willemsena852f952018-01-08 13:50:55 -080079// We only want 'r' on userdebug and eng builds.
80cc_binary {
81 name: "r",
82 defaults: ["toolbox_defaults"],
83 srcs: ["r.c"],
Yifan Hong49641ba2017-05-22 18:08:02 -070084}
85
86// We build BSD grep separately, so it can provide egrep and fgrep too.
Erik Staats0c3b1bd2017-06-09 09:10:59 -070087cc_defaults {
88 name: "grep_common",
Dan Willemsena852f952018-01-08 13:50:55 -080089 defaults: ["toolbox_defaults"],
Yifan Hong49641ba2017-05-22 18:08:02 -070090 srcs: [
91 "upstream-netbsd/usr.bin/grep/fastgrep.c",
92 "upstream-netbsd/usr.bin/grep/file.c",
93 "upstream-netbsd/usr.bin/grep/grep.c",
94 "upstream-netbsd/usr.bin/grep/queue.c",
95 "upstream-netbsd/usr.bin/grep/util.c",
96 ],
Dan Willemsena852f952018-01-08 13:50:55 -080097 symlinks: [
98 "egrep",
99 "fgrep",
100 ],
Ivan Lozanof4dafbc2017-11-13 14:06:08 -0800101
102 sanitize: {
103 integer_overflow: false,
104 },
Erik Staats0c3b1bd2017-06-09 09:10:59 -0700105}
Yifan Hong49641ba2017-05-22 18:08:02 -0700106
Erik Staats0c3b1bd2017-06-09 09:10:59 -0700107cc_binary {
108 name: "grep",
109 defaults: ["grep_common"],
110}
111
112// Build vendor grep.
113// TODO: Add vendor_available to "grep" module and remove "grep_vendor" module
114// when vendor_available is fully supported.
115cc_binary {
116 name: "grep_vendor",
117 stem: "grep",
118 vendor: true,
119 defaults: ["grep_common"],
Yifan Hong49641ba2017-05-22 18:08:02 -0700120}