Loading cmake/FindINIPARSER.cmake +19 −4 Original line number Diff line number Diff line Loading @@ -44,10 +44,11 @@ endif() # Setze den Include-Pfad (ist i.d.R. immer ${INIPARSER_ROOT}/include) set(INIPARSER_INCLUDE_DIR "${INIPARSER_ROOT}/include") message(STATUS "DIAGNOSE: INIPARSER_INCLUDE_DIR: ${INIPARSER_INCLUDE_DIR}") # -------------------------------------------------------------------------- # 2. Bibliothek suchen und FOUND-Variable setzen (Multiarch- & Optional-Fix) # 2. Bibliothek suchen und FOUND-Variable setzen (KORRIGIERT für Windows-Konsistenz) # -------------------------------------------------------------------------- if (WIN32) Loading @@ -55,8 +56,13 @@ if (WIN32) set(INIPARSER_LIBRARY_DIR "${INIPARSER_ROOT}/lib") # Prüfe die Existenz der Release-Bibliothek, um INIPARSER_FOUND zu setzen if (EXISTS "${INIPARSER_LIBRARY_DIR}/${_INIPARSER_LIB_NAME_STATIC}") set(_INIPARSER_LIB_PATH_STATIC "${INIPARSER_LIBRARY_DIR}/${_INIPARSER_LIB_NAME_STATIC}") if (EXISTS "${_INIPARSER_LIB_PATH_STATIC}") set(INIPARSER_FOUND TRUE) # NEU: Setze die Variable INIPARSER_LIBRARY auf den gefundenen Release-Pfad # (Wichtig für Konsistenz und manche ältere CMake-Verlinkungen) set(INIPARSER_LIBRARY "${_INIPARSER_LIB_PATH_STATIC}") endif() else() # Unix/Linux: Verwende find_library für Multiarch-Unterstützung Loading @@ -68,12 +74,17 @@ else() endif() endif() message(STATUS "DIAGNOSE: INIPARSER_LIBRARY (Pfad): ${INIPARSER_LIBRARY}") message(STATUS "DIAGNOSE: INIPARSER_FOUND ist: ${INIPARSER_FOUND}") # -------------------------------------------------------------------------- # 3. Erstellen des Namespaced IMPORTED Targets (Nur wenn gefunden) # -------------------------------------------------------------------------- if (NOT TARGET iniparser::iniparser AND INIPARSER_FOUND) message(STATUS "DIAGNOSE: Target iniparser::iniparser wird erstellt.") add_library(iniparser::iniparser STATIC IMPORTED) set_target_properties(iniparser::iniparser PROPERTIES Loading @@ -85,7 +96,7 @@ if (NOT TARGET iniparser::iniparser AND INIPARSER_FOUND) if (WIN32) # Pfade wurden oben bereits definiert und geprüft set_target_properties(iniparser::iniparser PROPERTIES IMPORTED_LOCATION_RELEASE "${INIPARSER_LIBRARY_DIR}/${_INIPARSER_LIB_NAME_STATIC}" IMPORTED_LOCATION_RELEASE "${INIPARSER_LIBRARY}" # NUTZT die neu gesetzte INIPARSER_LIBRARY Variable IMPORTED_LOCATION_DEBUG "${INIPARSER_LIBRARY_DIR}/${_INIPARSER_LIB_NAME_STATIC_DEBUG}" ) # --- Linux/Unix Implementierung (.a) --- Loading @@ -96,6 +107,10 @@ if (NOT TARGET iniparser::iniparser AND INIPARSER_FOUND) IMPORTED_LOCATION_DEBUG "${INIPARSER_LIBRARY}" ) endif() else() if(NOT INIPARSER_FOUND) message(STATUS "DIAGNOSE: Target iniparser::iniparser WURDE NICHT erstellt, da INIPARSER_FOUND=FALSE.") endif() endif() # Verhindert, dass die Variable am Ende des Skripts auf FALSE zurückgesetzt wird Loading Loading
cmake/FindINIPARSER.cmake +19 −4 Original line number Diff line number Diff line Loading @@ -44,10 +44,11 @@ endif() # Setze den Include-Pfad (ist i.d.R. immer ${INIPARSER_ROOT}/include) set(INIPARSER_INCLUDE_DIR "${INIPARSER_ROOT}/include") message(STATUS "DIAGNOSE: INIPARSER_INCLUDE_DIR: ${INIPARSER_INCLUDE_DIR}") # -------------------------------------------------------------------------- # 2. Bibliothek suchen und FOUND-Variable setzen (Multiarch- & Optional-Fix) # 2. Bibliothek suchen und FOUND-Variable setzen (KORRIGIERT für Windows-Konsistenz) # -------------------------------------------------------------------------- if (WIN32) Loading @@ -55,8 +56,13 @@ if (WIN32) set(INIPARSER_LIBRARY_DIR "${INIPARSER_ROOT}/lib") # Prüfe die Existenz der Release-Bibliothek, um INIPARSER_FOUND zu setzen if (EXISTS "${INIPARSER_LIBRARY_DIR}/${_INIPARSER_LIB_NAME_STATIC}") set(_INIPARSER_LIB_PATH_STATIC "${INIPARSER_LIBRARY_DIR}/${_INIPARSER_LIB_NAME_STATIC}") if (EXISTS "${_INIPARSER_LIB_PATH_STATIC}") set(INIPARSER_FOUND TRUE) # NEU: Setze die Variable INIPARSER_LIBRARY auf den gefundenen Release-Pfad # (Wichtig für Konsistenz und manche ältere CMake-Verlinkungen) set(INIPARSER_LIBRARY "${_INIPARSER_LIB_PATH_STATIC}") endif() else() # Unix/Linux: Verwende find_library für Multiarch-Unterstützung Loading @@ -68,12 +74,17 @@ else() endif() endif() message(STATUS "DIAGNOSE: INIPARSER_LIBRARY (Pfad): ${INIPARSER_LIBRARY}") message(STATUS "DIAGNOSE: INIPARSER_FOUND ist: ${INIPARSER_FOUND}") # -------------------------------------------------------------------------- # 3. Erstellen des Namespaced IMPORTED Targets (Nur wenn gefunden) # -------------------------------------------------------------------------- if (NOT TARGET iniparser::iniparser AND INIPARSER_FOUND) message(STATUS "DIAGNOSE: Target iniparser::iniparser wird erstellt.") add_library(iniparser::iniparser STATIC IMPORTED) set_target_properties(iniparser::iniparser PROPERTIES Loading @@ -85,7 +96,7 @@ if (NOT TARGET iniparser::iniparser AND INIPARSER_FOUND) if (WIN32) # Pfade wurden oben bereits definiert und geprüft set_target_properties(iniparser::iniparser PROPERTIES IMPORTED_LOCATION_RELEASE "${INIPARSER_LIBRARY_DIR}/${_INIPARSER_LIB_NAME_STATIC}" IMPORTED_LOCATION_RELEASE "${INIPARSER_LIBRARY}" # NUTZT die neu gesetzte INIPARSER_LIBRARY Variable IMPORTED_LOCATION_DEBUG "${INIPARSER_LIBRARY_DIR}/${_INIPARSER_LIB_NAME_STATIC_DEBUG}" ) # --- Linux/Unix Implementierung (.a) --- Loading @@ -96,6 +107,10 @@ if (NOT TARGET iniparser::iniparser AND INIPARSER_FOUND) IMPORTED_LOCATION_DEBUG "${INIPARSER_LIBRARY}" ) endif() else() if(NOT INIPARSER_FOUND) message(STATUS "DIAGNOSE: Target iniparser::iniparser WURDE NICHT erstellt, da INIPARSER_FOUND=FALSE.") endif() endif() # Verhindert, dass die Variable am Ende des Skripts auf FALSE zurückgesetzt wird Loading