Move libneuralnetworks.so to com.android.neuralnetworks APEX

Test: build&flashed crosshatch image
Bug: 137320025

Change-Id: Iadbb32cffc636c515a5e89b62539183ebc0c2f14
diff --git a/core/main.mk b/core/main.mk
index 9182fa7..100099a 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -1244,6 +1244,7 @@
   libnativebridge.so \
   libnativehelper.so \
   libnativeloader.so \
+  libneuralnetworks.so \
   libnpt.so \
   libopenjdk.so \
   libopenjdkjvm.so \
diff --git a/target/product/base_system.mk b/target/product/base_system.mk
index 162fbed..01b2c9e 100644
--- a/target/product/base_system.mk
+++ b/target/product/base_system.mk
@@ -19,6 +19,9 @@
     abb \
     adbd \
     am \
+    android.hardware.neuralnetworks@1.0 \
+    android.hardware.neuralnetworks@1.1 \
+    android.hardware.neuralnetworks@1.2 \
     android.hidl.allocator@1.0-service \
     android.hidl.base-V1.0-java \
     android.hidl.manager-V1.0-java \
@@ -53,6 +56,7 @@
     com.android.conscrypt \
     com.android.location.provider \
     com.android.resolv \
+    com.android.neuralnetworks \
     com.android.tzdata \
     ContactsProvider \
     content \
@@ -153,7 +157,6 @@
     libnetd_client \
     libnetlink \
     libnetutils \
-    libneuralnetworks \
     libOpenMAXAL \
     libOpenSLES \
     libpdfium \
diff --git a/target/product/gsi/Android.mk b/target/product/gsi/Android.mk
index 5693234..75c5ade 100644
--- a/target/product/gsi/Android.mk
+++ b/target/product/gsi/Android.mk
@@ -101,8 +101,10 @@
 
 include $(CLEAR_VARS)
 LOCAL_MODULE := vndk_package
+# Filter LLNDK libs moved to APEX to avoid pulling them into /system/LIB
 LOCAL_REQUIRED_MODULES := \
-    $(LLNDK_LIBRARIES)
+    $(filter-out $(LLNDK_MOVED_TO_APEX_LIBRARIES),$(LLNDK_LIBRARIES)))
+
 ifneq ($(TARGET_SKIP_CURRENT_VNDK),true)
 LOCAL_REQUIRED_MODULES += \
     llndk.libraries.txt \