Loading cmake/FindINIPARSER.cmake 0 → 100644 +42 −0 Original line number Diff line number Diff line # FindINIPARSER.cmake # 1. Search for the INIPARSER header file (iniparser.h) # Looks in standard locations and CMAKE_PREFIX_PATH/INIPARSER_ROOT hints. find_path(INIPARSER_INCLUDE_DIR NAMES iniparser.h PATHS /usr/local /usr HINTS ENV{INIPARSER_ROOT} ${CMAKE_PREFIX_PATH} PATH_SUFFIXES include ) # 2. Search for the library file (libiniparser.a/lib, iniparser.lib) # Note: The library name is often 'iniparser' or 'iniparser' find_library(INIPARSER_LIBRARY NAMES iniparser PATHS /usr/local /usr HINTS ENV{INIPARSER_ROOT} ${CMAKE_PREFIX_PATH} PATH_SUFFIXES lib ) # 3. Handle standard arguments (set INIPARSER_FOUND) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(INIPARSER DEFAULT_MSG INIPARSER_LIBRARY INIPARSER_INCLUDE_DIR ) # 4. Create the modern IMPORTED target (if found) if(INIPARSER_FOUND AND NOT TARGET INIPARSER::INIPARSER) # The library is typically static, so we use INTERFACE/IMPORTED. add_library(INIPARSER::INIPARSER INTERFACE IMPORTED) # Add include directories and library path to the target properties set_target_properties(INIPARSER::INIPARSER PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${INIPARSER_INCLUDE_DIR}" INTERFACE_LINK_LIBRARIES "${INIPARSER_LIBRARY}" ) endif() # 5. Mark variables as advanced mark_as_advanced(INIPARSER_LIBRARY INIPARSER_INCLUDE_DIR) No newline at end of file Loading
cmake/FindINIPARSER.cmake 0 → 100644 +42 −0 Original line number Diff line number Diff line # FindINIPARSER.cmake # 1. Search for the INIPARSER header file (iniparser.h) # Looks in standard locations and CMAKE_PREFIX_PATH/INIPARSER_ROOT hints. find_path(INIPARSER_INCLUDE_DIR NAMES iniparser.h PATHS /usr/local /usr HINTS ENV{INIPARSER_ROOT} ${CMAKE_PREFIX_PATH} PATH_SUFFIXES include ) # 2. Search for the library file (libiniparser.a/lib, iniparser.lib) # Note: The library name is often 'iniparser' or 'iniparser' find_library(INIPARSER_LIBRARY NAMES iniparser PATHS /usr/local /usr HINTS ENV{INIPARSER_ROOT} ${CMAKE_PREFIX_PATH} PATH_SUFFIXES lib ) # 3. Handle standard arguments (set INIPARSER_FOUND) include(FindPackageHandleStandardArgs) find_package_handle_standard_args(INIPARSER DEFAULT_MSG INIPARSER_LIBRARY INIPARSER_INCLUDE_DIR ) # 4. Create the modern IMPORTED target (if found) if(INIPARSER_FOUND AND NOT TARGET INIPARSER::INIPARSER) # The library is typically static, so we use INTERFACE/IMPORTED. add_library(INIPARSER::INIPARSER INTERFACE IMPORTED) # Add include directories and library path to the target properties set_target_properties(INIPARSER::INIPARSER PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${INIPARSER_INCLUDE_DIR}" INTERFACE_LINK_LIBRARIES "${INIPARSER_LIBRARY}" ) endif() # 5. Mark variables as advanced mark_as_advanced(INIPARSER_LIBRARY INIPARSER_INCLUDE_DIR) No newline at end of file