vndk-def: Update NDK libs.

This commit adds libsync.so and libnativewindow.so to SP-NDK and move
libz.so to VNDK-SP (VNDK-Stable).

Test: ./tests/run.py
Change-Id: I8f2cc1b0e54c9380165014a65f24feaca314e1b9
diff --git a/vndk/tools/definition-tool/tests/test_elf_linker.py b/vndk/tools/definition-tool/tests/test_elf_linker.py
index 7b5930b..e484452 100755
--- a/vndk/tools/definition-tool/tests/test_elf_linker.py
+++ b/vndk/tools/definition-tool/tests/test_elf_linker.py
@@ -270,10 +270,6 @@
             'libnativeloader',
             'libvintf',
 
-            # SP-NDK VNDK-stable (UI-related)
-            'libnativewindow',
-            'libsync',
-
             # SP-NDK dependencies (SP-NDK only)
             'libui',
             'libutils',
@@ -553,7 +549,6 @@
         gb.add_multilib(PT_SYSTEM, 'liblog')
         gb.add_multilib(PT_SYSTEM, 'libm')
         gb.add_multilib(PT_SYSTEM, 'libstdc++')
-        gb.add_multilib(PT_SYSTEM, 'libz')
 
         # Add SP-NDK libraries.
         gb.add_multilib(PT_SYSTEM, 'libEGL')
@@ -620,7 +615,6 @@
         self.assertNotIn('/system/lib/liblog.so', vndk_cap)
         self.assertNotIn('/system/lib/libm.so', vndk_cap)
         self.assertNotIn('/system/lib/libstdc++.so', vndk_cap)
-        self.assertNotIn('/system/lib/libz.so', vndk_cap)
 
         self.assertNotIn('/system/lib64/libEGL.so', vndk_cap)
         self.assertNotIn('/system/lib64/libOpenGLES_v2.so', vndk_cap)
@@ -629,7 +623,6 @@
         self.assertNotIn('/system/lib64/liblog.so', vndk_cap)
         self.assertNotIn('/system/lib64/libm.so', vndk_cap)
         self.assertNotIn('/system/lib64/libstdc++.so', vndk_cap)
-        self.assertNotIn('/system/lib64/libz.so', vndk_cap)
 
 if __name__ == '__main__':
     unittest.main()
diff --git a/vndk/tools/definition-tool/tests/test_ndk_libs.py b/vndk/tools/definition-tool/tests/test_ndk_libs.py
index 36c1720..95d58b7 100755
--- a/vndk/tools/definition-tool/tests/test_ndk_libs.py
+++ b/vndk/tools/definition-tool/tests/test_ndk_libs.py
@@ -18,29 +18,34 @@
         self.assertTrue(NDK_LIBS.is_ll_ndk('/system/lib/liblog.so'))
         self.assertTrue(NDK_LIBS.is_ll_ndk('/system/lib/libm.so'))
         self.assertTrue(NDK_LIBS.is_ll_ndk('/system/lib/libstdc++.so'))
-        self.assertTrue(NDK_LIBS.is_ll_ndk('/system/lib/libz.so'))
 
         self.assertTrue(NDK_LIBS.is_ll_ndk('/system/lib64/libc.so'))
         self.assertTrue(NDK_LIBS.is_ll_ndk('/system/lib64/libdl.so'))
         self.assertTrue(NDK_LIBS.is_ll_ndk('/system/lib64/liblog.so'))
         self.assertTrue(NDK_LIBS.is_ll_ndk('/system/lib64/libm.so'))
         self.assertTrue(NDK_LIBS.is_ll_ndk('/system/lib64/libstdc++.so'))
-        self.assertTrue(NDK_LIBS.is_ll_ndk('/system/lib64/libz.so'))
 
-        self.assertFalse(NDK_LIBS.is_ll_ndk('/system/lib/libz'))
-        self.assertFalse(NDK_LIBS.is_ll_ndk('/system/lib/libzz.so'))
+        self.assertFalse(NDK_LIBS.is_ll_ndk('/system/lib/libm'))
+
+        # libz.so is not LL-NDK anymore.
+        self.assertFalse(NDK_LIBS.is_ll_ndk('/system/lib/libz.so'))
+        self.assertFalse(NDK_LIBS.is_ll_ndk('/system/lib64/libz.so'))
 
     def test_is_sp_ndk(self):
         self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib/libEGL.so'))
         self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib/libGLESv1_CM.so'))
         self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib/libGLESv2.so'))
         self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib/libGLESv3.so'))
+        self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib/libnativewindow.so'))
+        self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib/libsync.so'))
         self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib/libvulkan.so'))
 
         self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib64/libEGL.so'))
         self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib64/libGLESv1_CM.so'))
         self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib64/libGLESv2.so'))
         self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib64/libGLESv3.so'))
+        self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib64/libnativewindow.so'))
+        self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib64/libsync.so'))
         self.assertTrue(NDK_LIBS.is_sp_ndk('/system/lib64/libvulkan.so'))
 
         # Vendor libraries with the same name are still not SP-NDK.
@@ -97,14 +102,12 @@
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib/liblog.so'))
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib/libm.so'))
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib/libstdc++.so'))
-        self.assertTrue(NDK_LIBS.is_ndk('/system/lib/libz.so'))
 
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib64/libc.so'))
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib64/libdl.so'))
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib64/liblog.so'))
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib64/libm.so'))
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib64/libstdc++.so'))
-        self.assertTrue(NDK_LIBS.is_ndk('/system/lib64/libz.so'))
 
         # SP-NDK
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib/libEGL.so'))
@@ -134,6 +137,10 @@
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib64/libmediandk.so'))
         self.assertTrue(NDK_LIBS.is_ndk('/system/lib64/libvulkan.so'))
 
+        # libz.so is not NDK anymore.
+        self.assertFalse(NDK_LIBS.is_ndk('/system/lib/libz.so'))
+        self.assertFalse(NDK_LIBS.is_ndk('/system/lib64/libz.so'))
+
     def test_classify(self):
         self.assertEqual(NDK_LIBS.NOT_NDK,
                          NDK_LIBS.classify('/system/lib/libfoo.so'))
diff --git a/vndk/tools/definition-tool/vndk_definition_tool.py b/vndk/tools/definition-tool/vndk_definition_tool.py
index d59275a..37d378c 100755
--- a/vndk/tools/definition-tool/vndk_definition_tool.py
+++ b/vndk/tools/definition-tool/vndk_definition_tool.py
@@ -491,7 +491,6 @@
         'liblog.so',
         'libm.so',
         'libstdc++.so',
-        'libz.so',
     )
 
     SP_NDK_LIB_NAMES = (
@@ -499,6 +498,8 @@
         'libGLESv1_CM.so',
         'libGLESv2.so',
         'libGLESv3.so',
+        'libnativewindow.so',
+        'libsync.so',
         'libvulkan.so',
     )
 
@@ -999,8 +1000,6 @@
             '^.*/libhidltransport\\.so$',
             '^.*/libhwbinder\\.so$',
             '^.*/liblzma\\.so$',
-            '^.*/libnativewindow\\.so$',
-            '^.*/libsync\\.so$',
 
             # SP-NDK VNDK-stable (should to be removed)
             '^.*/libbacktrace\\.so$',
@@ -1017,6 +1016,9 @@
             '^.*/libhardware\\.so$',
             '^.*/libnativeloader\\.so$',
             '^.*/libvintf\\.so$',
+
+            # Other libraries.
+            '^.*/libz\\.so$',
         )
 
         return self.compute_path_matched_lib(path_patterns)