# This file is part of the Owl Positioning System (OwlPS) project. # It is subject to the copyright notice and license terms in the # COPYRIGHT.t2t file found in the top-level directory of this # distribution and at # https://code.lm7.fr/mcy/owlps/src/master/COPYRIGHT.t2t # No part of the OwlPS Project, including this file, may be copied, # modified, propagated, or distributed except according to the terms # contained in the COPYRIGHT.t2t file; the COPYRIGHT.t2t file must be # distributed along with this file, either separately or by replacing # this notice by the COPYRIGHT.t2t file's contents. # Explicitly link to libc set(EXTRA_LIBS ${EXTRA_LIBS} c) # Targets add_library(libowlps-resultreader.a STATIC libowlps-resultreader.c) add_library(libowlps-resultreader.so SHARED libowlps-resultreader.c) # Fix targets' names set_target_properties( libowlps-resultreader.a libowlps-resultreader.so PROPERTIES OUTPUT_NAME owlps-resultreader SOVERSION 1 VERSION 1.1 ) # Add compile flags set_target_properties(libowlps-resultreader.so PROPERTIES COMPILE_FLAGS ${SHARED_FLAGS}) set_target_properties(libowlps-resultreader.a PROPERTIES COMPILE_FLAGS ${EXE_FLAGS}) # Link libraries target_link_libraries(libowlps-resultreader.so libowlps.so ${EXTRA_LIBS}) target_link_libraries(libowlps-resultreader.a libowlps.a ${EXTRA_LIBS}) # Install targets install( TARGETS libowlps-resultreader.so libowlps-resultreader.a DESTINATION lib) install( FILES owlps-resultreader.h DESTINATION include) ### Demo program ### add_executable(owlps-resultreader-udp owlps-resultreader-udp.c) target_link_libraries(owlps-resultreader-udp libowlps.so libowlps-resultreader.so) install( TARGETS owlps-resultreader-udp DESTINATION bin) add_executable(owlps-resultreader-udp.semistatic EXCLUDE_FROM_ALL owlps-resultreader-udp.c) target_link_libraries(owlps-resultreader-udp.semistatic libowlps.a libowlps-resultreader.a) # Add the semistatic target to the global list of semistatic targets list(APPEND OWLPS_SEMISTATIC_TARGETS owlps-resultreader-udp.semistatic) set(OWLPS_SEMISTATIC_TARGETS ${OWLPS_SEMISTATIC_TARGETS} PARENT_SCOPE) add_executable(owlps-resultreader-udp.static EXCLUDE_FROM_ALL owlps-resultreader-udp.c) set_target_properties(owlps-resultreader-udp.static PROPERTIES LINK_FLAGS -static) target_link_libraries(owlps-resultreader-udp.static libowlps.a libowlps-resultreader.a) # Add the static target to the global list of static targets list(APPEND OWLPS_STATIC_TARGETS owlps-resultreader-udp.static) set(OWLPS_STATIC_TARGETS ${OWLPS_STATIC_TARGETS} PARENT_SCOPE) # Add compile flags for the above targets set_target_properties( owlps-resultreader-udp owlps-resultreader-udp.semistatic owlps-resultreader-udp.static PROPERTIES COMPILE_FLAGS ${EXE_FLAGS})