PROJECT( agggpc )

CMAKE_MINIMUM_REQUIRED( VERSION 3.13 )

SET( gpc_HEADERS
    gpc.h
)
# boolean operations library GPC

ADD_LIBRARY( ${PROJECT_NAME} STATIC
    gpc.c
    ${gpc_HEADERS}
)

TARGET_INCLUDE_DIRECTORIES(${PROJECT_NAME}
PUBLIC
    $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
    $<INSTALL_INTERFACE:include/${PROJECT_NAME}>
)

SET_TARGET_PROPERTIES(
    ${PROJECT_NAME}
    PROPERTIES
    PUBLIC_HEADER "${gpc_HEADERS}"
    VERSION ${agg_VERSION}
    SOVERSION 0.${agg_VERSION}
)

TARGET_COMPILE_DEFINITIONS( ${PROJECT_NAME} PUBLIC AGG_USE_GPC )

ADD_LIBRARY( agg::gpc ALIAS ${PROJECT_NAME})
TARGET_LINK_LIBRARIES( agg_internal INTERFACE agg::gpc )

INSTALL(TARGETS ${PROJECT_NAME}
    EXPORT aggTargets DESTINATION ${CMAKE_INSTALL_LIBDIR}
    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT runtime
    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT devel
    PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/agg/gpc COMPONENT devel
)
