1add_library(utils SHARED androidImpl/libutils_placeholder.cpp) 2add_library(log SHARED androidImpl/Log.cpp) 3 4target_include_directories(log PRIVATE android/android-emugl/guest 5 android/android-emu) 6 7# The cutils library. 8add_library( 9 cutils 10 SHARED 11 androidImpl/AndroidVulkanDispatch.cpp 12 androidImpl/Ashmem.cpp 13 androidImpl/GrallocDispatch.cpp 14 androidImpl/native_handle.cpp 15 androidImpl/Properties.cpp 16 androidImpl/RefBase.cpp 17 androidImpl/SharedBuffer.cpp 18 androidImpl/String16.cpp 19 androidImpl/String8.cpp 20 androidImpl/trace-host.cpp 21 androidImpl/Unicode.cpp) 22target_include_directories(cutils PRIVATE ${GFXSTREAM_REPO_ROOT} ${GFXSTREAM_REPO_ROOT}/include .) 23target_include_directories(cutils PUBLIC .) 24target_link_libraries(cutils PUBLIC gfxstream-base) 25target_link_libraries(cutils PRIVATE log) 26target_compile_options(cutils PRIVATE -fvisibility=default -Wno-invalid-constexpr -Wno-macro-redefined) 27target_compile_definitions(cutils PRIVATE -D__ANDROID_API__=28) 28 29add_library(grallocusage SHARED libgrallocusage/GrallocUsageConversion.cpp) 30target_include_directories(grallocusage PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}) 31target_link_libraries(grallocusage PUBLIC gfxstream-base) 32target_compile_definitions(grallocusage PRIVATE -D__ANDROID_API__=28) 33 34# The gui library 35add_library(gui 36 SHARED 37 androidImpl/AHardwareBuffer.cpp 38 androidImpl/ANativeWindow.cpp 39 androidImpl/AndroidBufferQueue.cpp 40 androidImpl/AndroidWindow.cpp 41 androidImpl/AndroidWindowBuffer.cpp 42 androidImpl/Gralloc2.cpp 43 androidImpl/GraphicBuffer.cpp 44 androidImpl/GraphicBufferAllocator.cpp 45 androidImpl/GraphicBufferMapper.cpp 46 androidImpl/PixelFormat.cpp 47 androidImpl/SurfaceFlinger.cpp 48 androidImpl/Vsync.cpp 49 sync/sync.cpp) 50target_link_libraries(gui PUBLIC gfxstream-base) 51target_include_directories(gui PUBLIC ${GFXSTREAM_REPO_ROOT}/fake-android-guest) 52target_compile_options(gui PRIVATE -fvisibility=default) 53target_compile_definitions(gui PRIVATE -D__ANDROID_API__=28) 54target_link_libraries(gui PRIVATE cutils log grallocusage) 55 56# The unit tests 57# android_add_test(TARGET gui_unittests SRC # cmake-format: sortable 58# androidImpl/libgui_unittest.cpp) 59# target_link_libraries(gui_unittests PUBLIC gui emugl_base gtest gtest_main) 60 61add_library( 62 vulkan_android 63 SHARED 64 libvulkan/api.cpp 65 libvulkan/api_gen.cpp 66 libvulkan/debug_report.cpp 67 libvulkan/driver.cpp 68 libvulkan/driver_gen.cpp 69 libvulkan/layers_extensions.cpp 70 libvulkan/stubhal.cpp 71 libvulkan/swapchain.cpp) 72target_compile_definitions( 73 vulkan_android PRIVATE -DLOG_TAG=\"vulkan\" -DVK_USE_PLATFORM_ANDROID_KHR 74 -DVK_NO_PROTOTYPES -D__ANDROID_API__=28) 75target_include_directories(vulkan_android 76 PRIVATE ${GFXSTREAM_REPO_ROOT}/include) 77target_compile_options(vulkan_android PRIVATE -fvisibility=hidden 78 -fstrict-aliasing) 79target_link_libraries(vulkan_android PRIVATE grallocusage) 80target_link_libraries(vulkan_android PUBLIC gfxstream-base log gui cutils utils) 81 82# android_add_test( 83# TARGET vulkanhal_unittests SRC # cmake-format: sortable 84# androidImpl/vulkanhal_unittest.cpp) 85# target_include_directories( 86# vulkanhal_unittests 87# PRIVATE ${ANDROID_EMUGL_DIR}/host/include ${ANDROID_EMUGL_DIR}/combined 88# ${ANDROID_EMUGL_DIR}/guest/grallocusage 89# ${GOLDFISH_EMUGL_DIR}/shared/OpenglCodecCommon 90# ${GOLDFISH_EMUGL_DIR}/system 91# ${GOLDFISH_EMUGL_DIR}/system/renderControl_enc) 92# target_link_libraries(vulkanhal_unittests PRIVATE grallocusage aemugraphics 93# PRIVATE android-emu-test-launcher) 94# target_compile_definitions(vulkanhal_unittests PRIVATE -D__ANDROID_API__=28) 95# android_target_dependency(vulkanhal_unittests all 96# EMULATOR_FEATURE_DEPENDENCIES) 97# android_target_dependency(vulkanhal_unittests all SWIFTSHADER_DEPENDENCIES) 98# android_target_properties( 99# vulkanhal_unittests darwin-x86_64 100# "INSTALL_RPATH>=@loader_path/lib64/gles_swiftshader") 101# android_target_properties( 102# vulkanhal_unittests linux-x86_64 103# "LINK_FLAGS>=-Wl,-rpath,'$ORIGIN/lib64/gles_swiftshader'") 104# 105