vulkan: Implement layer and extension enumeration

Change-Id: I485ebbe3e57da396d361f772793e1e89850c334c
(cherry picked from commit 4bee2c3f2fdff04f1eb437f24a7bcf841364d5b3)
diff --git a/vulkan/libvulkan/Android.mk b/vulkan/libvulkan/Android.mk
index 035a96a..4241757 100644
--- a/vulkan/libvulkan/Android.mk
+++ b/vulkan/libvulkan/Android.mk
@@ -19,11 +19,12 @@
 LOCAL_CFLAGS := -std=c99 -fvisibility=hidden -fstrict-aliasing
 LOCAL_CFLAGS += -DLOG_TAG=\"vulkan\"
 LOCAL_CFLAGS += -Weverything -Werror -Wno-padded -Wno-undef
-LOCAL_CPPFLAGS := -std=c++1y \
+LOCAL_CPPFLAGS := -std=c++14 \
 	-Wno-c++98-compat-pedantic \
 	-Wno-exit-time-destructors \
 	-Wno-c99-extensions \
-	-Wno-zero-length-array
+	-Wno-zero-length-array \
+	-Wno-global-constructors
 
 LOCAL_C_INCLUDES := \
 	frameworks/native/vulkan/include \
@@ -31,6 +32,7 @@
 
 LOCAL_SRC_FILES := \
 	dispatch_gen.cpp \
+	layers_extensions.cpp \
 	loader.cpp \
 	swapchain.cpp \
 	vulkan_loader_data.cpp