1add_library(
2  GLcommon
3  rgtc.cpp
4  FramebufferData.cpp
5  GLBackgroundLoader.cpp
6  GLDispatch.cpp
7  GLESbuffer.cpp
8  GLEScontext.cpp
9  GLESpointer.cpp
10  GLESvalidate.cpp
11  GLutils.cpp
12  NamedObject.cpp
13  ObjectData.cpp
14  ObjectNameSpace.cpp
15  PaletteTexture.cpp
16  RangeManip.cpp
17  SaveableTexture.cpp
18  ScopedGLState.cpp
19  ShareGroup.cpp
20  TextureData.cpp
21  TextureUtils.cpp)
22target_include_directories(
23    GLcommon PUBLIC
24    ${GFXSTREAM_REPO_ROOT}
25    ${GFXSTREAM_REPO_ROOT}/include
26    ${GFXSTREAM_REPO_ROOT}/host
27    ${GFXSTREAM_REPO_ROOT}/host/apigen-codec-common
28    ${GFXSTREAM_REPO_ROOT}/host/gl/glestranslator/include)
29target_link_libraries(
30    GLcommon PUBLIC
31    aemu-base.headers
32    aemu-host-common.headers
33    gfxstream-snapshot.headers
34    gfxstream-compressedTextures
35    gfxstream_egl_headers
36    gfxstream_etc_headers
37    PRIVATE
38    gfxstream_etc)
39if (NOT MSVC)
40    target_compile_options(GLcommon PRIVATE -fvisibility=hidden)
41endif()
42target_compile_options(GLcommon PUBLIC -Wno-inconsistent-missing-override)
43
44if (LINUX)
45    target_link_libraries(GLcommon PRIVATE "-ldl" "-Wl,-Bsymbolic")
46endif()
47
48# android_add_test(TARGET GLcommon_unittests SRC # cmake-format: sortable
49#                                                Etc2_unittest.cpp)
50# target_link_libraries(GLcommon_unittests PUBLIC GLcommon gmock_main)
51# target_link_libraries(GLcommon_unittests PRIVATE emugl_base)
52# android_target_link_libraries(GLcommon_unittests linux-x86_64
53#                               PRIVATE "-ldl" "-Wl,-Bsymbolic")
54# android_target_link_libraries(GLcommon_unittests windows
55#                               PRIVATE "gdi32::gdi32" "-Wl,--add-stdcall-alias")
56