Switch to PCRE grep.

Bug: http://b/77150016
Test: boots, manual testing of grep
Change-Id: I7d8bd81547f6608bfcbbc0a0f787dab5b575cc2e
diff --git a/Android.bp b/Android.bp
index 0d95274..ccf9916 100644
--- a/Android.bp
+++ b/Android.bp
@@ -47,7 +47,9 @@
     export_include_dirs: ["include"],
 }
 
-// === libpcre targets ===
+//
+// libpcre2
+//
 
 cc_library {
     name: "libpcre2",
@@ -65,7 +67,32 @@
     },
 }
 
-// === libpcrecpp targets ===
+//
+// PCRE grep
+//
+
+cc_defaults {
+    name: "grep_common",
+    defaults: ["pcre_defaults"],
+    srcs: [libpcre2_dist_prefix + "/src/pcre2grep.c"],
+    shared_libs: ["libpcre2"],
+}
+
+cc_binary {
+    name: "grep",
+    defaults: ["grep_common"],
+}
+
+cc_binary {
+    name: "grep_vendor",
+    defaults: ["grep_common"],
+    stem: "grep",
+    vendor: true,
+}
+
+//
+// Google's C++ wrapper.
+//
 
 cc_library_shared {
     name: "libpcrecpp",
diff --git a/Android.mk b/Android.mk
new file mode 100644
index 0000000..eb84f15
--- /dev/null
+++ b/Android.mk
@@ -0,0 +1,15 @@
+LOCAL_PATH := $(call my-dir)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := egrep
+LOCAL_SRC_FILES := android-egrep-wrapper.sh
+LOCAL_MODULE_CLASS := EXECUTABLES
+LOCAL_MODULE_FILENAME := egrep
+include $(BUILD_PREBUILT)
+
+include $(CLEAR_VARS)
+LOCAL_MODULE := fgrep
+LOCAL_SRC_FILES := android-fgrep-wrapper.sh
+LOCAL_MODULE_CLASS := EXECUTABLES
+LOCAL_MODULE_FILENAME := fgrep
+include $(BUILD_PREBUILT)
diff --git a/android-egrep-wrapper.sh b/android-egrep-wrapper.sh
new file mode 100644
index 0000000..5f3d474
--- /dev/null
+++ b/android-egrep-wrapper.sh
@@ -0,0 +1,2 @@
+#!/system/bin/sh
+exec grep -E "$@"
diff --git a/android-fgrep-wrapper.sh b/android-fgrep-wrapper.sh
new file mode 100644
index 0000000..5596f68
--- /dev/null
+++ b/android-fgrep-wrapper.sh
@@ -0,0 +1,2 @@
+#!/system/bin/sh
+exec grep -F "$@"