diff options
-rw-r--r-- | Android.bp | 97 | ||||
-rw-r--r-- | METADATA | 15 | ||||
-rw-r--r-- | MODULE_LICENSE_BSD | 0 | ||||
-rw-r--r-- | OWNERS | 1 |
4 files changed, 113 insertions, 0 deletions
diff --git a/Android.bp b/Android.bp new file mode 100644 index 0000000..8c06110 --- /dev/null +++ b/Android.bp @@ -0,0 +1,97 @@ +cc_defaults { + name: "awk-flags", + cflags: [ + "-Wall", + "-Werror", + "-Wextra", + // Ignore a few harmless idioms widely used in this code. + "-Wno-missing-field-initializers", + "-Wno-self-assign", + "-Wno-unused-parameter", + // A loop to UCHAR_MAX in `b.c`. + "-Wno-sign-compare", + // And one less harmless used with strtod(3) in `lex.c`. + "-Wno-unused-result", + // Also ignore harmless macro redefinitions: glibc 2.17 #defines dprintf + // in stdio2.h, and this #defines it in awk.h + "-Wno-macro-redefined", + ], + c_std: "gnu11", + stl: "none", + yacc: { + flags: [ + "-y", + ], + }, +} + +genrule { + name: "awkgram.tab.c", + cmd: "M4=$(location m4) $(location bison) -y --no-lines --output=$(genDir)/awkgram.tab.c $(in)", + out: ["awkgram.tab.c"], + srcs: ["awkgram.y"], + tools: [ + "bison", + "m4", + ], +} + +genrule { + name: "awkgram.tab.h", + cmd: "M4=$(location m4) $(location bison) -y --no-lines --defines=$(genDir)/awkgram.tab.h --output=$(genDir)/awkgram.tab.c $(in)", + out: ["awkgram.tab.h"], + srcs: ["awkgram.y"], + tools: [ + "bison", + "m4", + ], +} + +genrule { + name: "proctab.c", + tools: ["awk-maketab"], + cmd: "$(location awk-maketab) $(in) > $(genDir)/proctab.c", + out: ["proctab.c"], + srcs: [":awkgram.tab.h"], +} + +cc_binary_host { + name: "awk-maketab", + defaults: ["awk-flags"], + generated_headers: ["awkgram.tab.h"], + srcs: ["maketab.c"], +} + +cc_defaults { + name: "awk-defaults", + defaults: ["awk-flags"], + generated_headers: ["awkgram.tab.h"], + srcs: [ + "b.c", + "lex.c", + "lib.c", + "main.c", + "parse.c", + ":proctab.c", + "run.c", + "tran.c", + ":awkgram.tab.c", + ], +} + +cc_binary { + name: "awk", + defaults: ["awk-defaults"], +} + +cc_binary { + name: "awk_vendor", + defaults: ["awk-defaults"], + stem: "awk", + vendor: true, +} + +cc_binary_host { + name: "one-true-awk", + defaults: ["awk-defaults"], +} diff --git a/METADATA b/METADATA new file mode 100644 index 0000000..0c29003 --- /dev/null +++ b/METADATA @@ -0,0 +1,15 @@ +name: "one-true-awk" +description: "This is the version of awk described in \'The AWK Programming Language\', by Al Aho, Brian Kernighan, and Peter Weinberger (Addison-Wesley, 1988, ISBN 0-201-07981-X)." +third_party { + url { + type: GIT + value: "https://github.com/onetrueawk/awk.git" + } + version: "a2a41a8e359dca5295c43dc2c2408094b96c3e0c" + license_type: NOTICE + last_upgrade_date { + year: 2020 + month: 11 + day: 30 + } +} diff --git a/MODULE_LICENSE_BSD b/MODULE_LICENSE_BSD new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/MODULE_LICENSE_BSD @@ -0,0 +1 @@ +include platform/system/core:/janitors/OWNERS |