Commit c6b5bb04 authored by jan.koester's avatar jan.koester
Browse files

test

parent 20c42328
Loading
Loading
Loading
Loading
+19 −4
Original line number Diff line number Diff line
@@ -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)
@@ -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
@@ -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
@@ -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) ---
@@ -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