Implement the following operations for Android NN runtime.

  - CONV_FLOAT32
  - DEPTHWISE_CONV_FLOAT32
  - AVERAGE_POOL_FLOAT32
  - L2_POOL_FLOAT32
  - MAX_POOL_FLOAT32
  - RELU_FLOAT32
  - RELU6_FLOAT32
  - TANH_FLOAT32
  - LOGISTIC_FLOAT32

Bug: 63905942
Test: mm
Test: End-to-end test with MobileNet pass

Change-Id: I3eaa9794c7cdffd01792d26c5d6497c8d56d8605
diff --git a/common/Android.bp b/common/Android.bp
index 85aea54..b2faa38 100644
--- a/common/Android.bp
+++ b/common/Android.bp
@@ -28,9 +28,13 @@
 
     srcs: [
         "CpuExecutor.cpp",
-        "Operations.cpp",
         "OperationsUtils.cpp",
         "Utils.cpp",
+        "operations/Activation.cpp",
+        "operations/Conv2D.cpp",
+        "operations/DepthwiseConv2D.cpp",
+        "operations/Pooling.cpp",
+        "operations/SimpleMath.cpp",
     ],
     shared_libs: [
         "libbase",
@@ -46,5 +50,18 @@
     ],
     header_libs: [
         "libneuralnetworks_headers",
+        "libgemmlowp",
+        "libfixedpoint",
+        "libeigen",
     ],
+
+
+    cflags: [
+        "-Werror",
+        "-Wall",
+        "-Wextra",
+        "-Wno-unused-parameter",
+        "-Wno-unused-variable",
+    ],
+
 }