Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 1 | cc_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 Hong | 49641ba | 2017-05-22 18:08:02 -0700 | [diff] [blame] | 12 | |
| 13 | cc_library_static { |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 14 | name: "libtoolbox_dd", |
| 15 | defaults: ["toolbox_defaults"], |
Tom Cherry | 6fb3dca | 2018-01-09 13:20:08 -0800 | [diff] [blame] | 16 | vendor_available: true, |
Yifan Hong | 49641ba | 2017-05-22 18:08:02 -0700 | [diff] [blame] | 17 | 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 Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 30 | cflags: [ |
Yifan Hong | 49641ba | 2017-05-22 18:08:02 -0700 | [diff] [blame] | 31 | "-Dmain=dd_main", |
| 32 | "-DNO_CONV", |
| 33 | ], |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 34 | } |
| 35 | |
| 36 | genrule { |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 37 | 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 Cherry | 6fb3dca | 2018-01-09 13:20:08 -0800 | [diff] [blame] | 44 | cc_defaults { |
| 45 | name: "toolbox_binary_defaults", |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 46 | defaults: ["toolbox_defaults"], |
Tom Cherry | 91094e0 | 2018-01-02 11:50:16 -0800 | [diff] [blame] | 47 | cpp_std: "experimental", |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 48 | srcs: [ |
| 49 | "toolbox.c", |
| 50 | "getevent.c", |
Tom Cherry | 91094e0 | 2018-01-02 11:50:16 -0800 | [diff] [blame] | 51 | "getprop.cpp", |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 52 | "newfs_msdos.c", |
| 53 | ], |
| 54 | generated_headers: [ |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 55 | "toolbox_input_labels", |
| 56 | ], |
| 57 | whole_static_libs: ["libtoolbox_dd"], |
| 58 | shared_libs: [ |
Tom Cherry | 91094e0 | 2018-01-02 11:50:16 -0800 | [diff] [blame] | 59 | "libbase", |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 60 | "libcutils", |
| 61 | ], |
Tom Cherry | 91094e0 | 2018-01-02 11:50:16 -0800 | [diff] [blame] | 62 | static_libs: ["libpropertyinfoparser"], |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 63 | |
| 64 | symlinks: [ |
| 65 | "dd", |
| 66 | "getevent", |
Tom Cherry | 91094e0 | 2018-01-02 11:50:16 -0800 | [diff] [blame] | 67 | "getprop", |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 68 | "newfs_msdos", |
| 69 | ], |
| 70 | } |
| 71 | |
Tom Cherry | 6fb3dca | 2018-01-09 13:20:08 -0800 | [diff] [blame] | 72 | cc_binary { |
| 73 | name: "toolbox", |
| 74 | defaults: ["toolbox_binary_defaults"], |
| 75 | } |
| 76 | |
| 77 | cc_binary { |
| 78 | name: "toolbox_vendor", |
| 79 | stem: "toolbox", |
| 80 | vendor: true, |
| 81 | defaults: ["toolbox_binary_defaults"], |
| 82 | } |
| 83 | |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 84 | // We only want 'r' on userdebug and eng builds. |
| 85 | cc_binary { |
| 86 | name: "r", |
| 87 | defaults: ["toolbox_defaults"], |
| 88 | srcs: ["r.c"], |
Yifan Hong | 49641ba | 2017-05-22 18:08:02 -0700 | [diff] [blame] | 89 | } |
| 90 | |
| 91 | // We build BSD grep separately, so it can provide egrep and fgrep too. |
Erik Staats | 0c3b1bd | 2017-06-09 09:10:59 -0700 | [diff] [blame] | 92 | cc_defaults { |
| 93 | name: "grep_common", |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 94 | defaults: ["toolbox_defaults"], |
Yifan Hong | 49641ba | 2017-05-22 18:08:02 -0700 | [diff] [blame] | 95 | srcs: [ |
| 96 | "upstream-netbsd/usr.bin/grep/fastgrep.c", |
| 97 | "upstream-netbsd/usr.bin/grep/file.c", |
| 98 | "upstream-netbsd/usr.bin/grep/grep.c", |
| 99 | "upstream-netbsd/usr.bin/grep/queue.c", |
| 100 | "upstream-netbsd/usr.bin/grep/util.c", |
| 101 | ], |
Dan Willemsen | a852f95 | 2018-01-08 13:50:55 -0800 | [diff] [blame] | 102 | symlinks: [ |
| 103 | "egrep", |
| 104 | "fgrep", |
| 105 | ], |
Ivan Lozano | f4dafbc | 2017-11-13 14:06:08 -0800 | [diff] [blame] | 106 | |
| 107 | sanitize: { |
| 108 | integer_overflow: false, |
| 109 | }, |
Erik Staats | 0c3b1bd | 2017-06-09 09:10:59 -0700 | [diff] [blame] | 110 | } |
Yifan Hong | 49641ba | 2017-05-22 18:08:02 -0700 | [diff] [blame] | 111 | |
Erik Staats | 0c3b1bd | 2017-06-09 09:10:59 -0700 | [diff] [blame] | 112 | cc_binary { |
| 113 | name: "grep", |
| 114 | defaults: ["grep_common"], |
| 115 | } |
| 116 | |
| 117 | // Build vendor grep. |
| 118 | // TODO: Add vendor_available to "grep" module and remove "grep_vendor" module |
| 119 | // when vendor_available is fully supported. |
| 120 | cc_binary { |
| 121 | name: "grep_vendor", |
| 122 | stem: "grep", |
| 123 | vendor: true, |
| 124 | defaults: ["grep_common"], |
Yifan Hong | 49641ba | 2017-05-22 18:08:02 -0700 | [diff] [blame] | 125 | } |