From e0748e1b075ead3470be458566183875a3a2b445 Mon Sep 17 00:00:00 2001 From: Salim Perchy Date: Wed, 9 Oct 2024 11:55:31 +0200 Subject: [PATCH 1/4] guarded LibSL tests (conflicts with pyicesl compilation), guarded glfw inclusion in Windows, fixed redifinitions of OPENGL4 and OPENGL4CORE --- CMakeLists.txt | 5 ++++- src/CMakeLists.txt | 2 ++ src/libs/src/CMakeLists.txt | 2 +- src/tests/CMakeLists.txt | 2 +- 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0e3a400..002972b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,6 +26,7 @@ OPTION(LIBSL_BUILD_LIBARCHIVE "Build libarchive" OFF) OPTION(LIBSL_USE_GLUX "Use gluX with LibSL_gl" OFF) OPTION(LIBSL_USE_GLFW "Use glfw instead of glut" OFF) OPTION(LIBSL_POWER_USER "Power user mode (reserved, do not use)" OFF) +OPTION(LIBSL_BUILD_TESTS "Build LibSL tests" ON) ADD_DEFINITIONS(-DANDROID) @@ -50,6 +51,7 @@ OPTION(LIBSL_BUILD_LIBARCHIVE "Build libarchive" OFF) OPTION(LIBSL_USE_GLUX "Use gluX with LibSL_gl" OFF) OPTION(LIBSL_USE_GLFW "Use glfw instead of glut" OFF) OPTION(LIBSL_POWER_USER "Power user mode (reserved, do not use)" OFF) +OPTION(LIBSL_BUILD_TESTS "Build LibSL tests" ON) else(EMSCRIPTEN) @@ -83,6 +85,7 @@ OPTION(LIBSL_BUILD_GLUX "Build gluX" ON) OPTION(LIBSL_BUILD_LIBARCHIVE "Build libarchive" OFF) OPTION(LIBSL_USE_GLUX "Use gluX with LibSL_gl" ON) OPTION(LIBSL_POWER_USER "Power user mode (reserved, do not use)" OFF) +OPTION(LIBSL_BUILD_TESTS "Build LibSL tests" ON) endif(EMSCRIPTEN) @@ -140,7 +143,7 @@ INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR}/src/libs/src/SQLite ${CMAKE_CURRENT_SOURCE_DIR}/src/libs/src/qhull/src/libqhull_r ${CMAKE_CURRENT_SOURCE_DIR}/src/libs/src/rply - ${CMAKE_CURRENT_SOURCE_DIR}/src/libs/src/glfw/include + ${CMAKE_CURRENT_SOURCE_DIR}/src/libs/src/glfw/include ) if (LIBSL_ENABLE_NVIDIA_CG) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 88e109f..f34fe2a 100755 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -25,7 +25,9 @@ endif(NOT ANDROID) endif(NOT EMSCRIPTEN) endif(LIBSL_BUILD_TOOLS) +if(LIBSL_BUILD_TESTS) ADD_SUBDIRECTORY(tests) +endif(LIBSL_BUILD_TESTS) if(LIBSL_BUILD_TUTORIALS) ADD_SUBDIRECTORY(tutorials) diff --git a/src/libs/src/CMakeLists.txt b/src/libs/src/CMakeLists.txt index 3391485..743b643 100755 --- a/src/libs/src/CMakeLists.txt +++ b/src/libs/src/CMakeLists.txt @@ -52,7 +52,7 @@ if (LIBSL_BUILD_GL OR LIBSL_BUILD_GL4 OR LIBSL_BUILD_GL4CORE) ENDIF(NOT ANDROID) ENDIF(NOT EMSCRIPTEN) - if(NOT EMSCRIPTEN) + if(NOT EMSCRIPTEN AND LIBSL_USE_GLFW) ADD_SUBDIRECTORY(glfw) endif() diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt index c0fecb0..3b46fc8 100755 --- a/src/tests/CMakeLists.txt +++ b/src/tests/CMakeLists.txt @@ -60,7 +60,7 @@ endif(LIBSL_BUILD_GL) if(LIBSL_BUILD_GL4CORE) ADD_EXECUTABLE(test_sh_gl4core test_sh_gl4core.cpp test_sh_gl4core.fp test_sh_gl4core.vp test_sh_gl4core.h) TARGET_LINK_LIBRARIES(test_sh_gl4core LibSL LibSL_gl4core) -SET_TARGET_PROPERTIES(test_sh_gl4core PROPERTIES COMPILE_DEFINITIONS "USE_GLUX;OPENGL4;OPENGLCORE") +SET_TARGET_PROPERTIES(test_sh_gl4core PROPERTIES COMPILE_DEFINITIONS "USE_GLUX") endif(LIBSL_BUILD_GL4CORE) INSTALL(TARGETS TestLibSL From 154c0be2a7897872e26f2cad854ef335f7b1b8d0 Mon Sep 17 00:00:00 2001 From: Salim PERCHY Date: Fri, 20 Jun 2025 14:24:48 +0200 Subject: [PATCH 2/4] updated all cmake files to require version 3.5 --- CMakeLists.txt | 2 +- libsl-config.cmake | 2 +- src/CMakeLists.txt | 4 ++-- src/LibSL/Image/ImageFormat_PNG.cpp | 4 ---- src/LibSL/Image/ImageFormat_PNG.h | 3 --- src/build/UseCXX11_clang.cmake | 2 +- src/libs/src/OpenNL/CMakeLists.txt | 2 +- src/libs/src/anttweakbar/CMakeLists.txt | 2 +- src/libs/src/glfw/CMakeLists.txt | 2 +- src/libs/src/glux/CMakeLists.txt | 2 +- src/libs/src/hashlibpp/CMakeLists.txt | 2 +- src/libs/src/jpeg/CMakeLists.txt | 2 +- src/libs/src/lib3ds/CMakeLists.txt | 2 +- src/libs/src/newmat/CMakeLists.txt | 2 +- src/libs/src/png/CMakeLists.txt | 2 +- src/libs/src/qhull/CMakeLists.txt | 2 +- src/libs/src/tinyxml/CMakeLists.txt | 2 +- src/tests/CMakeLists.txt | 2 +- 18 files changed, 17 insertions(+), 24 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f516f7e..6a0651b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +CMAKE_MINIMUM_REQUIRED(VERSION 3.5) PROJECT(LibSL) diff --git a/libsl-config.cmake b/libsl-config.cmake index 3f8bb35..c71de70 100644 --- a/libsl-config.cmake +++ b/libsl-config.cmake @@ -548,7 +548,7 @@ IF (NOT TARGET AntTweakBar) ${OPENGL_LIBRARIES} ${X11_LIBRARIES} ) - ENDIF(APPLE) + ENDIF(NOT APPLE) #IF(APPLE) # ADD_DEFINITIONS(-D_MACOSX) # ADD_DEFINITIONS(-D__PLACEMENT_NEW_INLINE) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 6d4a7e9..59e4f3b 100755 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +CMAKE_MINIMUM_REQUIRED(VERSION 3.5) # MESSAGE(STATUS "[in LibSL/src/]") @@ -27,7 +27,7 @@ endif(LIBSL_BUILD_TOOLS) if (NOT WASI) ADD_SUBDIRECTORY(tests) -endif(WASI) +endif(NOT WASI) if(LIBSL_BUILD_TUTORIALS) ADD_SUBDIRECTORY(tutorials) diff --git a/src/LibSL/Image/ImageFormat_PNG.cpp b/src/LibSL/Image/ImageFormat_PNG.cpp index 7a7bb0f..c3f6003 100755 --- a/src/LibSL/Image/ImageFormat_PNG.cpp +++ b/src/LibSL/Image/ImageFormat_PNG.cpp @@ -220,8 +220,6 @@ void NAMESPACE::ImageFormat_PNG::save(const char *fname,const NAMESPACE::Image * //--------------------------------------------------------------------------- -#ifndef EMSCRIPTEN // SL 2025-04-17 hotfix as this result in Emscripten compilation error - template void write_data_stream(png_structp png_ptr, png_bytep data, png_size_t length) { @@ -313,8 +311,6 @@ void NAMESPACE::ImageFormat_PNG::save( const NAMESPACE::Image *img, const std::map& key_value_text) const; -#endif - //--------------------------------------------------------------------------- void NAMESPACE::ImageFormat_PNG::save(const char *fname, const NAMESPACE::Image *img) const diff --git a/src/LibSL/Image/ImageFormat_PNG.h b/src/LibSL/Image/ImageFormat_PNG.h index e9f8a48..578d65e 100755 --- a/src/LibSL/Image/ImageFormat_PNG.h +++ b/src/LibSL/Image/ImageFormat_PNG.h @@ -64,13 +64,10 @@ namespace LibSL { void save(const char*, const Image*, const std::map& key_value_text) const; Image* load(const char*, std::map& _key_value_text) const; - #ifndef EMSCRIPTEN // SL 2025-04-17 hotfix as this result in Emscripten compilation error - // NS 2023-01-12: new interface to save in streams template void save(std::basic_ostream&, const Image*, const std::map& key_value_text) const; - #endif }; } //namespace LibSL::Image diff --git a/src/build/UseCXX11_clang.cmake b/src/build/UseCXX11_clang.cmake index 5c60ed1..95035fa 100644 --- a/src/build/UseCXX11_clang.cmake +++ b/src/build/UseCXX11_clang.cmake @@ -1,5 +1,5 @@ ################################################################################ -CMake_Minimum_Required(VERSION 2.8.0) +CMake_Minimum_Required(VERSION 3.5) ################################################################################ # TODO: Set C Compiler Flags diff --git a/src/libs/src/OpenNL/CMakeLists.txt b/src/libs/src/OpenNL/CMakeLists.txt index 9ca9c9c..776c216 100755 --- a/src/libs/src/OpenNL/CMakeLists.txt +++ b/src/libs/src/OpenNL/CMakeLists.txt @@ -2,7 +2,7 @@ # CMake version checks ###################################### if(COMMAND cmake_minimum_required) - cmake_minimum_required(VERSION 2.4) + cmake_minimum_required(VERSION 3.5) endif(COMMAND cmake_minimum_required) if(COMMAND cmake_policy) diff --git a/src/libs/src/anttweakbar/CMakeLists.txt b/src/libs/src/anttweakbar/CMakeLists.txt index 5152c18..3096af2 100755 --- a/src/libs/src/anttweakbar/CMakeLists.txt +++ b/src/libs/src/anttweakbar/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +CMAKE_MINIMUM_REQUIRED(VERSION 3.5) PROJECT(AntTweakBar) diff --git a/src/libs/src/glfw/CMakeLists.txt b/src/libs/src/glfw/CMakeLists.txt index 1ded78b..7682a80 100755 --- a/src/libs/src/glfw/CMakeLists.txt +++ b/src/libs/src/glfw/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.0) +cmake_minimum_required(VERSION 3.5) project(GLFW VERSION 3.3.2 LANGUAGES C) diff --git a/src/libs/src/glux/CMakeLists.txt b/src/libs/src/glux/CMakeLists.txt index 1a7ca7e..b7d2379 100755 --- a/src/libs/src/glux/CMakeLists.txt +++ b/src/libs/src/glux/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +CMAKE_MINIMUM_REQUIRED(VERSION 3.5) PROJECT(glux) OPTION(GLUX_BUILD_SAMPLES "Build gluX sample programs" OFF) diff --git a/src/libs/src/hashlibpp/CMakeLists.txt b/src/libs/src/hashlibpp/CMakeLists.txt index 133d382..0222824 100755 --- a/src/libs/src/hashlibpp/CMakeLists.txt +++ b/src/libs/src/hashlibpp/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +CMAKE_MINIMUM_REQUIRED(VERSION 3.5) PROJECT(hashlibpp) SET(LIBH_SOURCES diff --git a/src/libs/src/jpeg/CMakeLists.txt b/src/libs/src/jpeg/CMakeLists.txt index 9e9a6ee..fefc861 100755 --- a/src/libs/src/jpeg/CMakeLists.txt +++ b/src/libs/src/jpeg/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +CMAKE_MINIMUM_REQUIRED(VERSION 3.5) PROJECT(jpeg) SET(LIBJPEG_SOURCES diff --git a/src/libs/src/lib3ds/CMakeLists.txt b/src/libs/src/lib3ds/CMakeLists.txt index cef33c3..aaf86e7 100755 --- a/src/libs/src/lib3ds/CMakeLists.txt +++ b/src/libs/src/lib3ds/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +CMAKE_MINIMUM_REQUIRED(VERSION 3.5) PROJECT(3ds) SET(LIB3DS_SOURCES diff --git a/src/libs/src/newmat/CMakeLists.txt b/src/libs/src/newmat/CMakeLists.txt index 3b07fb2..d7ce1c1 100755 --- a/src/libs/src/newmat/CMakeLists.txt +++ b/src/libs/src/newmat/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +CMAKE_MINIMUM_REQUIRED(VERSION 3.5) PROJECT(newmat) SET(NEWMAT_SOURCES diff --git a/src/libs/src/png/CMakeLists.txt b/src/libs/src/png/CMakeLists.txt index fa5b5ce..d64e2db 100755 --- a/src/libs/src/png/CMakeLists.txt +++ b/src/libs/src/png/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +CMAKE_MINIMUM_REQUIRED(VERSION 3.5) PROJECT(png) SET(LIBPNG_SOURCES diff --git a/src/libs/src/qhull/CMakeLists.txt b/src/libs/src/qhull/CMakeLists.txt index 95def93..3c5e7a4 100755 --- a/src/libs/src/qhull/CMakeLists.txt +++ b/src/libs/src/qhull/CMakeLists.txt @@ -35,7 +35,7 @@ # $DateTime: 2012/02/21 22:41:40 $$Author: bbarber $ project(qhull) -cmake_minimum_required(VERSION 2.6) +cmake_minimum_required(VERSION 3.5) # Define qhull_VERSION in CMakeLists.txt, Makefile, qhull-exports.def, qhull_p-exports.def, and qhull-warn.pri string(REGEX REPLACE ".* ([0-9]+) .*" diff --git a/src/libs/src/tinyxml/CMakeLists.txt b/src/libs/src/tinyxml/CMakeLists.txt index ce732ee..7fe7d63 100755 --- a/src/libs/src/tinyxml/CMakeLists.txt +++ b/src/libs/src/tinyxml/CMakeLists.txt @@ -1,4 +1,4 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +CMAKE_MINIMUM_REQUIRED(VERSION 3.5) PROJECT(tinyxml) SET(TINYXML_SOURCES diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt index 3b46fc8..e295b6a 100755 --- a/src/tests/CMakeLists.txt +++ b/src/tests/CMakeLists.txt @@ -1,4 +1,4 @@ -# CMAKE_MINIMUM_REQUIRED(VERSION 2.6) +# CMAKE_MINIMUM_REQUIRED(VERSION 3.5) PROJECT(TestLibSL) INCLUDE(${LibSL_DIR}/libsl-config.cmake) From a9f8ea31dd261eb0e7ab545821284770249679db Mon Sep 17 00:00:00 2001 From: Salim PERCHY Date: Fri, 20 Jun 2025 14:32:07 +0200 Subject: [PATCH 3/4] remnants of cmake version <3.5 --- src/build/UseCXX11.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/build/UseCXX11.cmake b/src/build/UseCXX11.cmake index d6550da..dfd318c 100755 --- a/src/build/UseCXX11.cmake +++ b/src/build/UseCXX11.cmake @@ -1,5 +1,5 @@ ################################################################################ -CMake_Minimum_Required(VERSION 2.6.3) +CMake_Minimum_Required(VERSION 3.5) ################################################################################ # The method used here is a bit involved and incomplete, so feel free to improve it! From 0b75e9090304a8db83f23eb489fdd354e7b185fc Mon Sep 17 00:00:00 2001 From: Salim PERCHY Date: Fri, 20 Jun 2025 15:33:29 +0200 Subject: [PATCH 4/4] added LIBSL_USE_INSTALL_PREFIX to LibSLTest project --- src/tests/CMakeLists.txt | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/tests/CMakeLists.txt b/src/tests/CMakeLists.txt index e295b6a..1f0f844 100755 --- a/src/tests/CMakeLists.txt +++ b/src/tests/CMakeLists.txt @@ -63,8 +63,12 @@ TARGET_LINK_LIBRARIES(test_sh_gl4core LibSL LibSL_gl4core) SET_TARGET_PROPERTIES(test_sh_gl4core PROPERTIES COMPILE_DEFINITIONS "USE_GLUX") endif(LIBSL_BUILD_GL4CORE) +IF(LIBSL_USE_INSTALL_PREFIX) + SET(LIBSL_INSTALL_BIN_DIR "bin") +ELSE() + SET(LIBSL_INSTALL_BIN_DIR "${CMAKE_SOURCE_DIR}/bin") +ENDIF() + INSTALL(TARGETS TestLibSL - RUNTIME DESTINATION ${CMAKE_SOURCE_DIR}/bin - LIBRARY DESTINATION ${LIBSL_INSTALL_LIB_DIR} - ARCHIVE DESTINATION ${LIBSL_INSTALL_LIB_DIR} + RUNTIME DESTINATION ${LIBSL_INSTALL_BIN_DIR} )