From fe0f2ed9a19c2500c80fb7a31dbbfadef9337520 Mon Sep 17 00:00:00 2001 From: Caleb Marshall Date: Wed, 19 Feb 2025 15:21:17 -0600 Subject: [PATCH 1/5] Add OpenGL::GL cmake imported targets Added OpenGL::GL and OpenGL::GLU to FindOpenGL.cmake following CMake's own FindOpenGL.cmake --- cmake/Modules/FindOpenGL.cmake | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/cmake/Modules/FindOpenGL.cmake b/cmake/Modules/FindOpenGL.cmake index 3220a11fddbce..8d1bc6e1aced5 100644 --- a/cmake/Modules/FindOpenGL.cmake +++ b/cmake/Modules/FindOpenGL.cmake @@ -30,3 +30,15 @@ mark_as_advanced( OPENGL_glu_LIBRARY OPENGL_gl_LIBRARY ) + +add_library(OpenGL::GL INTERFACE IMPORTED) +set_target_properties(OpenGL::GL PROPERTIES + IMPORTED_LIBNAME "${OPENGL_gl_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${OPENGL_INCLUDE_DIR}" +) + +add_library(OpenGL::GLU INTERFACE IMPORTED) +set_target_properties(OpenGL::GLU PROPERTIES + IMPORTED_LIBNAME "${OPENGL_glu_LIBRARY}" + INTERFACE_LINK_LIBRARIES OpenGL::GL +) From 32b83a35ff9077ddd8c95ec9975496d725b8af88 Mon Sep 17 00:00:00 2001 From: Caleb Marshall Date: Sat, 22 Feb 2025 13:23:00 -0600 Subject: [PATCH 2/5] Validate OpenGL::GL IMPORTED_LIBNAME --- test/cmake/find_modules/CMakeLists.txt | 3 +++ test/cmake/find_modules/test.c | 2 +- test/test_other.py | 3 ++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/test/cmake/find_modules/CMakeLists.txt b/test/cmake/find_modules/CMakeLists.txt index 0167aa9aa04f2..0b4a6986f2e4d 100644 --- a/test/cmake/find_modules/CMakeLists.txt +++ b/test/cmake/find_modules/CMakeLists.txt @@ -18,3 +18,6 @@ include_directories(${SDL2_INCLUDE_DIRS}) target_link_libraries(test_prog SDL2::SDL2) message(" test: SDL2_LIBRARIES: ${SDL2_LIBRARIES}") message(" test: SDL2_INCLUDE_DIRS: ${SDL2_INCLUDE_DIRS}") + +get_target_property(lib OpenGL::GL IMPORTED_LIBNAME) +message(STATUS " test: OpenGL::GL IMPORTED_LIBNAME: ${lib}") diff --git a/test/cmake/find_modules/test.c b/test/cmake/find_modules/test.c index ba2c5d6a9f03b..fdff340c58116 100644 --- a/test/cmake/find_modules/test.c +++ b/test/cmake/find_modules/test.c @@ -1,4 +1,4 @@ -// Invlude emscripten/version.h to ensure that the in-tree +// Include emscripten/version.h to ensure that the in-tree // include directory has not been added to the include path. #include #include diff --git a/test/test_other.py b/test/test_other.py index 5995a90881715..ae5259f41f0eb 100644 --- a/test/test_other.py +++ b/test/test_other.py @@ -1106,7 +1106,8 @@ def test_cmake_install(self): @requires_network def test_cmake_find_modules(self): - self.run_process([EMCMAKE, 'cmake', test_file('cmake/find_modules')]) + output = self.run_process([EMCMAKE, 'cmake', test_file('cmake/find_modules')], stdout=PIPE).stdout + self.assertContained(' test: OpenGL::GL IMPORTED_LIBNAME: GL', output) self.run_process(['cmake', '--build', '.']) output = self.run_js('test_prog.js') self.assertContained('AL_VERSION: 1.1', output) From 0588bdcbc31d6f6257204395c83963881ccd6bf2 Mon Sep 17 00:00:00 2001 From: Caleb Marshall Date: Sat, 22 Feb 2025 13:24:26 -0600 Subject: [PATCH 3/5] Fix OPENAL_LIBRARIES logging typo --- test/cmake/find_modules/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/cmake/find_modules/CMakeLists.txt b/test/cmake/find_modules/CMakeLists.txt index 0b4a6986f2e4d..90cff0460f97d 100644 --- a/test/cmake/find_modules/CMakeLists.txt +++ b/test/cmake/find_modules/CMakeLists.txt @@ -11,7 +11,7 @@ message(" test: OPENGL_LIBRARIES: ${OPENGL_LIBRARIES}") find_package(OpenAL REQUIRED) include_directories(${OPENAL_INCLUDE_DIR}) target_link_libraries(test_prog ${OPENAL_LIBRARY}) -message(" test: OPENGL_LIBRARIES: ${OPENAL_LIBRARIES}") +message(" test: OPENAL_LIBRARIES: ${OPENAL_LIBRARIES}") find_package(SDL2 REQUIRED) include_directories(${SDL2_INCLUDE_DIRS}) From 82a05198312c555853370c2380f5b2d81f0c1a68 Mon Sep 17 00:00:00 2001 From: Caleb Marshall Date: Mon, 24 Feb 2025 19:07:43 -0600 Subject: [PATCH 4/5] Test for include directories --- test/cmake/find_modules/CMakeLists.txt | 7 +++++-- test/test_other.py | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/test/cmake/find_modules/CMakeLists.txt b/test/cmake/find_modules/CMakeLists.txt index 90cff0460f97d..d757d07505ed7 100644 --- a/test/cmake/find_modules/CMakeLists.txt +++ b/test/cmake/find_modules/CMakeLists.txt @@ -19,5 +19,8 @@ target_link_libraries(test_prog SDL2::SDL2) message(" test: SDL2_LIBRARIES: ${SDL2_LIBRARIES}") message(" test: SDL2_INCLUDE_DIRS: ${SDL2_INCLUDE_DIRS}") -get_target_property(lib OpenGL::GL IMPORTED_LIBNAME) -message(STATUS " test: OpenGL::GL IMPORTED_LIBNAME: ${lib}") +get_target_property(TEST_OPENGL_GL_LIBNAME OpenGL::GL IMPORTED_LIBNAME) +message(STATUS " test: OpenGL::GL IMPORTED_LIBNAME: ${TEST_OPENGL_GL_LIBNAME}") + +get_target_property(TEST_OPENGL_GL_INCLUDES OpenGL::GL INTERFACE_INCLUDE_DIRECTORIES) +message(STATUS " test: OpenGL::GL INTERFACE_INCLUDE_DIRECTORIES: ${TEST_OPENGL_GL_INCLUDES}") diff --git a/test/test_other.py b/test/test_other.py index ae5259f41f0eb..6ee6b3dc3cb36 100644 --- a/test/test_other.py +++ b/test/test_other.py @@ -1108,6 +1108,7 @@ def test_cmake_install(self): def test_cmake_find_modules(self): output = self.run_process([EMCMAKE, 'cmake', test_file('cmake/find_modules')], stdout=PIPE).stdout self.assertContained(' test: OpenGL::GL IMPORTED_LIBNAME: GL', output) + self.assertContained(' test: OpenGL::GL INTERFACE_INCLUDE_DIRECTORIES: /.+/cache/sysroot/include', output, regex=True) self.run_process(['cmake', '--build', '.']) output = self.run_js('test_prog.js') self.assertContained('AL_VERSION: 1.1', output) From fc1b4fbf3f1a1aaa42cf69c2c3fc6eca8c9fa0dc Mon Sep 17 00:00:00 2001 From: Caleb Marshall Date: Mon, 24 Feb 2025 19:08:17 -0600 Subject: [PATCH 5/5] message uses STATUS --- test/cmake/find_modules/CMakeLists.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test/cmake/find_modules/CMakeLists.txt b/test/cmake/find_modules/CMakeLists.txt index d757d07505ed7..911bf33ed53bd 100644 --- a/test/cmake/find_modules/CMakeLists.txt +++ b/test/cmake/find_modules/CMakeLists.txt @@ -6,18 +6,18 @@ add_executable(test_prog test.c) find_package(OpenGL REQUIRED) include_directories(${OPENGL_INCLUDE_DIR}) target_link_libraries(test_prog ${OPENGL_LIBRARIES}) -message(" test: OPENGL_LIBRARIES: ${OPENGL_LIBRARIES}") +message(STATUS " test: OPENGL_LIBRARIES: ${OPENGL_LIBRARIES}") find_package(OpenAL REQUIRED) include_directories(${OPENAL_INCLUDE_DIR}) target_link_libraries(test_prog ${OPENAL_LIBRARY}) -message(" test: OPENAL_LIBRARIES: ${OPENAL_LIBRARIES}") +message(STATUS " test: OPENAL_LIBRARIES: ${OPENAL_LIBRARIES}") find_package(SDL2 REQUIRED) include_directories(${SDL2_INCLUDE_DIRS}) target_link_libraries(test_prog SDL2::SDL2) -message(" test: SDL2_LIBRARIES: ${SDL2_LIBRARIES}") -message(" test: SDL2_INCLUDE_DIRS: ${SDL2_INCLUDE_DIRS}") +message(STATUS " test: SDL2_LIBRARIES: ${SDL2_LIBRARIES}") +message(STATUS " test: SDL2_INCLUDE_DIRS: ${SDL2_INCLUDE_DIRS}") get_target_property(TEST_OPENGL_GL_LIBNAME OpenGL::GL IMPORTED_LIBNAME) message(STATUS " test: OpenGL::GL IMPORTED_LIBNAME: ${TEST_OPENGL_GL_LIBNAME}")