From 626ce252253388456a4b1af422484cf1b97eca26 Mon Sep 17 00:00:00 2001 From: Steven Siloti Date: Fri, 25 Aug 2017 14:32:14 -0700 Subject: [PATCH] cmake: build examples in the same solution as libtorrent Keep the search script for reference --- CMakeLists.txt | 9 +++++---- examples/CMakeLists.txt | 25 ++----------------------- examples/run_cmake.sh.in | 7 ------- 3 files changed, 7 insertions(+), 34 deletions(-) delete mode 100755 examples/run_cmake.sh.in diff --git a/CMakeLists.txt b/CMakeLists.txt index 1f22a103d..a3001f26b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -181,6 +181,7 @@ option(exceptions "build with exception support" ON) option(libiconv "enable linking against system libiconv" OFF) option(logging "build with logging" ON) option(build_tests "build tests" OFF) +option(build_examples "build examples" OFF) find_package(Threads REQUIRED) @@ -408,10 +409,10 @@ install( ${ConfigPackageLocation} ) -# === set up examples directory as an independent project === -file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/examples) -configure_file(examples/run_cmake.sh.in examples/run_cmake.sh) -# to build the examples, run examples/run_cmake.sh after building libtorrent +# === build examples === +if (build_examples) + add_subdirectory(examples) +endif() # === build tests === if(build_tests) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index a2bc874a3..cc2599e70 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -1,26 +1,5 @@ project(libtorrent-examples) cmake_minimum_required(VERSION 2.6) -set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake/") - -# Add extra include and library search directories so examples can optionally -# be built without a prior "make install" of libtorrent. -list(INSERT CMAKE_INCLUDE_PATH 0 "${CMAKE_CURRENT_SOURCE_DIR}/../include") -list(INSERT CMAKE_LIBRARY_PATH 0 "${CMAKE_CURRENT_BINARY_DIR}/..") - -# Also use the generated pkg-config file prior to "make install". -# In an independent project, these lines would simply not exist. -set(PKG_CONFIG_CHANGED_PATH "${CMAKE_CURRENT_BINARY_DIR}/..;$ENV{PKG_CONFIG_PATH}") -if(UNIX) - string(REPLACE ";" ":" PKG_CONFIG_CHANGED_PATH "${PKG_CONFIG_CHANGED_PATH}") -endif () -set(ENV{PKG_CONFIG_PATH} "${PKG_CONFIG_CHANGED_PATH}") - -find_package(LibtorrentRasterbar REQUIRED) -find_package(Boost REQUIRED COMPONENTS system) -find_package(OpenSSL REQUIRED) - -include_directories(${LibtorrentRasterbar_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS} ${OPENSSL_INCLUDE_DIR}) -add_definitions(${LibtorrentRasterbar_DEFINITIONS}) set(single_file_examples simple_client @@ -32,7 +11,7 @@ set(single_file_examples foreach(example ${single_file_examples}) add_executable(${example} "${example}.cpp") - target_link_libraries(${example} ${LibtorrentRasterbar_LIBRARIES} ${Boost_LIBRARIES}) + target_link_libraries(${example} torrent-rasterbar) endforeach(example) add_executable(client_test @@ -40,4 +19,4 @@ add_executable(client_test print.cpp torrent_view.cpp session_view.cpp) -target_link_libraries(client_test ${LibtorrentRasterbar_LIBRARIES} ${Boost_LIBRARIES}) +target_link_libraries(client_test torrent-rasterbar) diff --git a/examples/run_cmake.sh.in b/examples/run_cmake.sh.in deleted file mode 100755 index 111d79344..000000000 --- a/examples/run_cmake.sh.in +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -cd ${libtorrent_BINARY_DIR}/examples -cmake \ - -G "${CMAKE_GENERATOR}" \ - $@ \ - ${libtorrent_SOURCE_DIR}/examples