Browse Source

Directly link with targets from CMake

Consider the ful package delivers the two libraries wiringPi and
wiringPiDev with the associated binary gpio. We don't have to build and
install each component separately first.
pull/269/head
Jonathan GUILLOT 2 months ago
parent
commit
eed149aeea
2 changed files with 4 additions and 5 deletions
  1. +3
    -0
      devLib/CMakeLists.txt
  2. +1
    -5
      gpio/CMakeLists.txt

+ 3
- 0
devLib/CMakeLists.txt View File

@@ -27,6 +27,9 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wformat=2 -Winline -pipe")
# Add the library target # Add the library target
add_library(wiringPiDev SHARED ${SRC}) add_library(wiringPiDev SHARED ${SRC})


target_include_directories(wiringPiDev PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(wiringPiDev PRIVATE wiringPi)

# Set the library version # Set the library version
set_target_properties(wiringPiDev PROPERTIES VERSION ${WIRINGPI_VERSION} SOVERSION ${WIRINGPI_SOVERSION}) set_target_properties(wiringPiDev PROPERTIES VERSION ${WIRINGPI_VERSION} SOVERSION ${WIRINGPI_SOVERSION})




+ 1
- 5
gpio/CMakeLists.txt View File

@@ -20,12 +20,8 @@ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra")
# Add the executable target # Add the executable target
add_executable(gpio ${SRC}) add_executable(gpio ${SRC})


# Find the required libraries
find_library(WIRINGPI_LIB wiringPi)
find_library(WIRINGPI_DEV_LIB wiringPiDev)

# Link the required libraries # Link the required libraries
target_link_libraries(gpio ${WIRINGPI_LIB} ${WIRINGPI_DEV_LIB} Threads::Threads m PkgConfig::libcrypt)
target_link_libraries(gpio wiringPi wiringPiDev Threads::Threads m PkgConfig::libcrypt)


# Install the executable # Install the executable
install(TARGETS gpio DESTINATION bin) install(TARGETS gpio DESTINATION bin)


Loading…
Cancel
Save