Elliott Hughes | c673df2 | 2017-11-30 10:53:25 -0800 | [diff] [blame] | 1 | cc_defaults { |
Elliott Hughes | b89363f | 2019-01-29 12:52:50 -0800 | [diff] [blame] | 2 | name: "awk-flags", |
Elliott Hughes | c673df2 | 2017-11-30 10:53:25 -0800 | [diff] [blame] | 3 | cflags: [ |
| 4 | "-Wall", |
| 5 | "-Werror", |
| 6 | "-Wextra", |
| 7 | // Ignore a few harmless idioms widely used in this code. |
| 8 | "-Wno-missing-field-initializers", |
| 9 | "-Wno-self-assign", |
| 10 | "-Wno-unused-parameter", |
Elliott Hughes | c9fdfd8 | 2019-03-08 15:25:46 -0800 | [diff] [blame] | 11 | // A loop to UCHAR_MAX in `b.c`. |
| 12 | "-Wno-sign-compare", |
Elliott Hughes | 112b307 | 2018-12-12 14:36:24 -0800 | [diff] [blame] | 13 | // And one less harmless used with strtod(3) in `lex.c`. |
| 14 | "-Wno-unused-result", |
George Burgess IV | b870290 | 2019-01-15 18:56:57 -0800 | [diff] [blame] | 15 | // Also ignore harmless macro redefinitions: glibc 2.17 #defines dprintf |
| 16 | // in stdio2.h, and this #defines it in awk.h |
| 17 | "-Wno-macro-redefined", |
Elliott Hughes | c673df2 | 2017-11-30 10:53:25 -0800 | [diff] [blame] | 18 | ], |
Elliott Hughes | 3723915 | 2019-05-01 15:20:25 -0700 | [diff] [blame] | 19 | stl: "none", |
Dan Willemsen | f5e8feb | 2019-04-12 12:57:56 -0700 | [diff] [blame] | 20 | yacc: { |
| 21 | flags: [ |
| 22 | "-y", |
| 23 | ], |
| 24 | }, |
Elliott Hughes | b89363f | 2019-01-29 12:52:50 -0800 | [diff] [blame] | 25 | } |
| 26 | |
Elliott Hughes | 52487fa | 2019-03-15 03:28:55 +0000 | [diff] [blame] | 27 | // TODO: we should actually rebuild awkgram.y and pass the output through maketab. |
| 28 | // For now we just rebuild the checked-in generated files. |
Haibo Huang | 0687bec | 2019-09-06 17:32:25 -0700 | [diff] [blame] | 29 | cc_binary_host { |
Elliott Hughes | b89363f | 2019-01-29 12:52:50 -0800 | [diff] [blame] | 30 | name: "awk-maketab", |
| 31 | defaults: ["awk-flags"], |
| 32 | srcs: ["maketab.c"] |
| 33 | } |
| 34 | |
| 35 | cc_defaults { |
| 36 | name: "awk-defaults", |
| 37 | defaults: ["awk-flags"], |
Elliott Hughes | 52487fa | 2019-03-15 03:28:55 +0000 | [diff] [blame] | 38 | |
Elliott Hughes | b89363f | 2019-01-29 12:52:50 -0800 | [diff] [blame] | 39 | srcs: [ |
| 40 | "b.c", |
| 41 | "lex.c", |
| 42 | "lib.c", |
| 43 | "main.c", |
| 44 | "parse.c", |
Elliott Hughes | 52487fa | 2019-03-15 03:28:55 +0000 | [diff] [blame] | 45 | "proctab.c", |
Elliott Hughes | b89363f | 2019-01-29 12:52:50 -0800 | [diff] [blame] | 46 | "run.c", |
| 47 | "tran.c", |
Elliott Hughes | 52487fa | 2019-03-15 03:28:55 +0000 | [diff] [blame] | 48 | "ytab.c", |
Elliott Hughes | b89363f | 2019-01-29 12:52:50 -0800 | [diff] [blame] | 49 | ], |
Elliott Hughes | c673df2 | 2017-11-30 10:53:25 -0800 | [diff] [blame] | 50 | } |
| 51 | |
| 52 | cc_binary { |
| 53 | name: "awk", |
| 54 | defaults: ["awk-defaults"], |
| 55 | } |
| 56 | |
| 57 | cc_binary { |
| 58 | name: "awk_vendor", |
| 59 | defaults: ["awk-defaults"], |
| 60 | stem: "awk", |
| 61 | vendor: true, |
| 62 | } |
Elliott Hughes | 112b307 | 2018-12-12 14:36:24 -0800 | [diff] [blame] | 63 | |
| 64 | cc_binary_host { |
| 65 | name: "one-true-awk", |
| 66 | defaults: ["awk-defaults"], |
| 67 | } |