# ---------------------------------------------------------------------------
# Beispiel: ein FREMDES Projekt benutzt libpda.
#
# Dieses Verzeichnis ist bewusst NICHT Teil des Superprojekts -- es wird
# nirgends per add_subdirectory eingebunden. Es wird eigenstaendig
# konfiguriert, gegen eine INSTALLIERTE libpda:
#
#     cmake -S examples/consumer -B build/consumer \
#           -DCMAKE_PREFIX_PATH=/pfad/zur/installation
#
# Genau das macht tools/check-install.sh automatisch. Wenn das hier baut, ist
# der Export in libpda/CMakeLists.txt korrekt -- und nur dann.
# ---------------------------------------------------------------------------
cmake_minimum_required(VERSION 3.28)

project(pda_consumer VERSION 1.0.0 LANGUAGES CXX)

# find_package sucht pdaConfig.cmake in CMAKE_PREFIX_PATH unter
# lib/cmake/pda/. Findet es die Datei nicht, bricht REQUIRED sofort ab --
# mit einer Meldung, die sagt, wo gesucht wurde.
find_package(pda 0.1 REQUIRED)

add_executable(consumer main.cpp)

# pda::pda -- der Name aus dem NAMESPACE-Argument von install(EXPORT).
# Include-Pfade, der C++23-Standard und die Bibliotheksdatei kommen alle
# ueber dieses eine Target. Kein target_include_directories noetig, kein
# -lpda, kein Pfad von Hand.
target_link_libraries(consumer PRIVATE pda::pda)

message(STATUS "consumer: libpda ${pda_VERSION} gefunden")
