|
| 1 | +# Copyright: (C) 2016 iCub Facility - Istituto Italiano di Tecnologia |
| 2 | +# Authors: Ugo Pattacini |
| 3 | +# CopyPolicy: Released under the terms of the GNU GPL v2.0. |
1 | 4 |
|
2 |
| -option(ICUB_INSTALL_ALL_ROBOTS "Enable installation of all robots" OFF) |
| 5 | +cmake_minimum_required(VERSION 2.8.9) |
| 6 | +project(robots-configuration) |
3 | 7 |
|
4 |
| -set(ROBOT_NAME "$ENV{YARP_ROBOT_NAME}" CACHE PATH |
5 |
| - "Name of your robot") |
| 8 | +find_package(YARP REQUIRED) |
| 9 | +find_package(ICUBcontrib REQUIRED) |
6 | 10 |
|
| 11 | +list(APPEND CMAKE_MODULE_PATH ${YARP_MODULE_PATH}) |
| 12 | +list(APPEND CMAKE_MODULE_PATH ${ICUBCONTRIB_MODULE_PATH}) |
| 13 | + |
| 14 | +include(YarpInstallationHelpers) |
| 15 | +include(ICUBcontribOptions) |
| 16 | +include(ICUBcontribHelpers) |
| 17 | + |
| 18 | +option(INSTALL_ALL_ROBOTS "Enable installation of all robots" OFF) |
| 19 | +set(ROBOT_NAME "$ENV{YARP_ROBOT_NAME}" CACHE PATH "Name of your robot") |
7 | 20 | set(ROBOT_DIR "${CMAKE_CURRENT_SOURCE_DIR}/${ROBOT_NAME}")
|
8 | 21 |
|
9 |
| -if(ICUB_INSTALL_ALL_ROBOTS) # Install all robot-specific files |
10 |
| - add_subdirectory(vizzy) |
11 |
| - add_subdirectory(iCubAberystwyth01) |
12 |
| - add_subdirectory(iCubAbuDhabi01) |
13 |
| - add_subdirectory(iCubAnkara01) |
14 |
| - add_subdirectory(iCubBarcelona01) |
15 |
| - add_subdirectory(iCubBielefeld01) |
16 |
| - add_subdirectory(iCubBielefeld02) |
17 |
| - add_subdirectory(iCubBielefeld03) |
18 |
| - #add_subdirectory(iCubBremen01) |
19 |
| - add_subdirectory(iCubChemnitz01) |
20 |
| - add_subdirectory(iCubDaejeon01) |
21 |
| - add_subdirectory(iCubEdinburgh01) |
22 |
| - add_subdirectory(iCubFrankfurt01) |
23 |
| - add_subdirectory(iCubGenova01) |
24 |
| - add_subdirectory(iCubGenova03) |
25 |
| - add_subdirectory(iCubNancy01) |
26 |
| - add_subdirectory(iCubGrenoble01) |
27 |
| - add_subdirectory(iCubHamburg01) |
28 |
| - add_subdirectory(iCubHertfordshire01) |
29 |
| - add_subdirectory(iCubHertfordshire02) |
30 |
| - add_subdirectory(iCubKarlsruhe01) |
31 |
| - add_subdirectory(iCubLausanne01) |
32 |
| - add_subdirectory(iCubLisboa01) |
33 |
| - add_subdirectory(iCubLisboa02) |
34 |
| - add_subdirectory(iCubLondon01) |
35 |
| - add_subdirectory(iCubLugano01) |
36 |
| - add_subdirectory(iCubLyon01) |
37 |
| - add_subdirectory(iCubMunich01) |
38 |
| - add_subdirectory(Nottingham01) |
39 |
| - add_subdirectory(iCubOffenbach01) |
40 |
| - add_subdirectory(iCubOffenbach02) |
41 |
| - add_subdirectory(iCubOsaka01) |
42 |
| - add_subdirectory(iCubParis01) |
43 |
| - add_subdirectory(iCubParis02) |
44 |
| - add_subdirectory(iCubPlymouth01) |
45 |
| - add_subdirectory(iCubPlymouth02) |
46 |
| - add_subdirectory(iCubPrototype01) |
47 |
| - add_subdirectory(iCubRome01) |
48 |
| - add_subdirectory(iCubRome02) |
49 |
| - add_subdirectory(iCubSheffield01) |
50 |
| - add_subdirectory(iCubTwente01) |
51 |
| - add_subdirectory(iCubUrbana01) |
52 |
| - add_subdirectory(iCubZurich01) |
53 |
| - add_subdirectory(SkinTableTop) |
| 22 | +if(INSTALL_ALL_ROBOTS) |
| 23 | + add_subdirectory(iCubAberystwyth01) |
| 24 | + add_subdirectory(iCubAbuDhabi01) |
| 25 | + add_subdirectory(iCubAnkara01) |
| 26 | + add_subdirectory(iCubBarcelona01) |
| 27 | + add_subdirectory(iCubBielefeld01) |
| 28 | + add_subdirectory(iCubBielefeld02) |
| 29 | + add_subdirectory(iCubBielefeld03) |
| 30 | + add_subdirectory(iCubChemnitz01) |
| 31 | + add_subdirectory(iCubDaejeon01) |
| 32 | + add_subdirectory(iCubEdinburgh01) |
| 33 | + add_subdirectory(iCubFrankfurt01) |
| 34 | + add_subdirectory(iCubGenova01) |
| 35 | + add_subdirectory(iCubGenova03) |
| 36 | + add_subdirectory(iCubNancy01) |
| 37 | + add_subdirectory(iCubGrenoble01) |
| 38 | + add_subdirectory(iCubHamburg01) |
| 39 | + add_subdirectory(iCubHertfordshire01) |
| 40 | + add_subdirectory(iCubHertfordshire02) |
| 41 | + add_subdirectory(iCubKarlsruhe01) |
| 42 | + add_subdirectory(iCubLausanne01) |
| 43 | + add_subdirectory(iCubLisboa01) |
| 44 | + add_subdirectory(iCubLisboa02) |
| 45 | + add_subdirectory(iCubLondon01) |
| 46 | + add_subdirectory(iCubLugano01) |
| 47 | + add_subdirectory(iCubLyon01) |
| 48 | + add_subdirectory(iCubMunich01) |
| 49 | + add_subdirectory(Nottingham01) |
| 50 | + add_subdirectory(iCubOffenbach01) |
| 51 | + add_subdirectory(iCubOffenbach02) |
| 52 | + add_subdirectory(iCubOsaka01) |
| 53 | + add_subdirectory(iCubParis01) |
| 54 | + add_subdirectory(iCubParis02) |
| 55 | + add_subdirectory(iCubPlymouth01) |
| 56 | + add_subdirectory(iCubPlymouth02) |
| 57 | + add_subdirectory(iCubPrototype01) |
| 58 | + add_subdirectory(iCubRome01) |
| 59 | + add_subdirectory(iCubRome02) |
| 60 | + add_subdirectory(iCubSheffield01) |
| 61 | + add_subdirectory(iCubTwente01) |
| 62 | + add_subdirectory(iCubUrbana01) |
| 63 | + add_subdirectory(iCubZurich01) |
54 | 64 | else()
|
55 |
| - |
56 |
| - if (ROBOT_NAME) |
57 |
| - if(IS_DIRECTORY ${ROBOT_DIR}) |
58 |
| - add_subdirectory(${ROBOT_NAME}) |
| 65 | + if(ROBOT_NAME) |
| 66 | + if(IS_DIRECTORY ${ROBOT_DIR}) |
| 67 | + add_subdirectory(${ROBOT_NAME}) |
| 68 | + endif() |
59 | 69 | endif()
|
60 |
| - endif() |
61 | 70 | endif()
|
62 | 71 |
|
63 |
| -#setup symbolic link (on UNIX...) |
64 |
| - |
65 |
| -if ("${ROBOT_NAME}" STREQUAL "") |
66 |
| - message(STATUS "No robot name") |
67 |
| -else ("${ROBOT_NAME}" STREQUAL "") |
68 |
| - if (EXISTS ${ROBOT_DIR}) |
69 |
| - if(UNIX) |
70 |
| - message(STATUS "Setting up symbolic link for ${ROBOT_NAME}") |
71 |
| - install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_INSTALL_PREFIX}/${ICUB_ROBOTS_INSTALL_DIR}/${ROBOT_NAME})\n |
72 |
| - execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${CMAKE_INSTALL_PREFIX}/${ICUB_ROBOTS_INSTALL_DIR}/${ROBOT_NAME} ${CMAKE_INSTALL_PREFIX}/${ICUB_ROBOTS_INSTALL_DIR}/default)") |
73 |
| - add_custom_target(robotSymLink ALL COMMAND ${CMAKE_COMMAND} -E create_symlink ${CMAKE_BINARY_DIR}/${ICUB_ROBOTS_INSTALL_DIR}/${ROBOT_NAME} ${CMAKE_BINARY_DIR}/${ICUB_ROBOTS_INSTALL_DIR}/default DEPENDS ${CMAKE_BINARY_DIR}/${ICUB_ROBOTS_INSTALL_DIR}/${ROBOT_NAME}) |
| 72 | +# setup symbolic link (on UNIX...) |
| 73 | +if("${ROBOT_NAME}" STREQUAL "") |
| 74 | + message(STATUS "No robot name") |
| 75 | +else() |
| 76 | + if(EXISTS ${ROBOT_DIR}) |
| 77 | + if(UNIX) |
| 78 | + message(STATUS "Setting up symbolic link for ${ROBOT_NAME}") |
| 79 | + install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_INSTALL_PREFIX}/${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${ROBOT_NAME})\n |
| 80 | + execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${CMAKE_INSTALL_PREFIX}/${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${ROBOT_NAME}\n |
| 81 | + ${CMAKE_INSTALL_PREFIX}/${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/default)") |
| 82 | + add_custom_target(robotSymLink ALL COMMAND ${CMAKE_COMMAND} -E create_symlink ${CMAKE_BINARY_DIR}/${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${ROBOT_NAME} |
| 83 | + ${CMAKE_BINARY_DIR}/${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/default |
| 84 | + DEPENDS ${CMAKE_BINARY_DIR}/${ICUBCONTRIB_ROBOTS_INSTALL_DIR}/${ROBOT_NAME}) |
| 85 | + else() |
| 86 | + message(STATUS "Cannot set up symbolic link for ${ROBOT_NAME} on this OS, please set the YARP_ROBOT_NAME environment variable to ${ROBOT_NAME}") |
| 87 | + endif() |
74 | 88 | else()
|
75 |
| - message(STATUS "Cannot set up symbolic link for ${ROBOT_NAME} on this OS, please set the YARP_ROBOT_NAME environment variable to ${ROBOT_NAME}") |
| 89 | + message(WARNING "ROBOT_NAME is set to ${ROBOT_NAME} but the ${ROBOT_DIR} directory does not exist") |
76 | 90 | endif()
|
| 91 | +endif() |
77 | 92 |
|
78 |
| - else(EXISTS ${ROBOT_DIR}) |
79 |
| - message(WARNING "ROBOT_NAME is set to ${ROBOT_NAME} but the app/robots/${ROBOT_NAME} directory does not exist") |
80 |
| - endif(EXISTS ${ROBOT_DIR}) |
81 |
| -endif ("${ROBOT_NAME}" STREQUAL "") |
82 |
| - |
| 93 | +icubcontrib_add_uninstall_target() |
0 commit comments