mirror of
https://github.com/eclipse/upm.git
synced 2025-03-15 04:57:30 +03:00
components: Refactor UPM install components
Removed the per-target install component in favor of a limited set of insinstall components. Available install components are: "upm" "upm-dev" "upm-java" "upm-nodejs" "upm-python2" "upm-python3" Signed-off-by: Noel Eck <noel.eck@intel.com>
This commit is contained in:
parent
71b2b9b1fc
commit
f848deb35b
@ -456,4 +456,5 @@ endif()
|
||||
|
||||
# Install C headers
|
||||
install(DIRECTORY include/ DESTINATION include/upm
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-dev
|
||||
FILES_MATCHING PATTERN "*.h")
|
||||
|
@ -39,7 +39,9 @@ endmacro(subdirlist)
|
||||
macro (upm_create_install_pkgconfig generated_file install_location)
|
||||
configure_file (${PROJECT_SOURCE_DIR}/src/pkgconfig.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/${generated_file} @ONLY)
|
||||
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${generated_file} DESTINATION ${install_location})
|
||||
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${generated_file}
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}
|
||||
DESTINATION ${install_location})
|
||||
endmacro(upm_create_install_pkgconfig)
|
||||
|
||||
# Given a target name, return all in-project targets ALREADY defined (ie, this
|
||||
@ -294,11 +296,12 @@ macro(_upm_swig_python)
|
||||
# Install .py's to python packages directory/upm
|
||||
install (FILES ${swig_extra_generated_files}
|
||||
DESTINATION ${PYTHON_PACKAGES_PATH}/upm
|
||||
COMPONENT ${libname})
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-python${PYTHON_VERSION_MAJOR})
|
||||
|
||||
# Install python wrapper module library
|
||||
install (TARGETS ${python_wrapper_target}
|
||||
DESTINATION ${PYTHON_PACKAGES_PATH}/upm)
|
||||
DESTINATION ${PYTHON_PACKAGES_PATH}/upm
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-python${PYTHON_VERSION_MAJOR})
|
||||
|
||||
# Restore CMAKE_CURRENT_BINARY_DIR
|
||||
set(CMAKE_CURRENT_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR_SAVED})
|
||||
@ -408,7 +411,9 @@ macro(upm_swig_node)
|
||||
${CMAKE_CURRENT_BINARY_DIR}/jsupm_${libname})
|
||||
endif ()
|
||||
|
||||
install (TARGETS jsupm_${libname} DESTINATION ${NODE_MODULE_INSTALL_PATH})
|
||||
install (TARGETS jsupm_${libname}
|
||||
DESTINATION ${NODE_MODULE_INSTALL_PATH}
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-nodejs)
|
||||
endif (NOT ";${NODESWIG_BLACKLIST};" MATCHES ";${libname};")
|
||||
|
||||
# Keep track of all NODE targets
|
||||
@ -474,11 +479,15 @@ macro(upm_swig_java)
|
||||
endif(is_supported)
|
||||
endforeach(flag ${SWIG_CXX_DISABLE_WARNINGS})
|
||||
|
||||
install (TARGETS javaupm_${libname} LIBRARY DESTINATION ${LIB_INSTALL_DIR})
|
||||
install (TARGETS javaupm_${libname} LIBRARY
|
||||
DESTINATION ${LIB_INSTALL_DIR}
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-java)
|
||||
|
||||
# Java jar files always need to go under lib/java, regardless of
|
||||
# architecture.
|
||||
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/upm_${libname}.jar
|
||||
DESTINATION lib/java)
|
||||
DESTINATION lib/java
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-java)
|
||||
|
||||
if (NOT DEFINED $ENV{JAVA_HOME_NATIVE})
|
||||
set (JAVAC $ENV{JAVA_HOME}/bin/javac)
|
||||
@ -590,7 +599,8 @@ if (BUILDSWIGNODE)
|
||||
set (NODE_MODULE_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/lib/node_modules/jsupm_${libname}/)
|
||||
endif ()
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/package.json
|
||||
DESTINATION ${NODE_MODULE_INSTALL_PATH} COMPONENT ${libname})
|
||||
DESTINATION ${NODE_MODULE_INSTALL_PATH}
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-nodejs)
|
||||
endmacro(createpackagejson)
|
||||
endif(BUILDSWIGNODE)
|
||||
|
||||
@ -759,16 +769,20 @@ function(upm_module_init)
|
||||
endif()
|
||||
|
||||
# Install target library to lib dir
|
||||
install (TARGETS ${libname} DESTINATION ${LIB_INSTALL_DIR})
|
||||
install (TARGETS ${libname}
|
||||
DESTINATION ${LIB_INSTALL_DIR}
|
||||
COMPONENT ${CMAKE_PROJECT_NAME})
|
||||
|
||||
# Install header files to include/upm/
|
||||
install (FILES ${module_hpp} DESTINATION include/upm COMPONENT ${libname})
|
||||
install (FILES ${module_hpp}
|
||||
DESTINATION include/upm
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-dev)
|
||||
|
||||
# Install JSON library descriptor files into datadir (if they exist)
|
||||
if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${basename}.json")
|
||||
install (FILES "${CMAKE_CURRENT_SOURCE_DIR}/${basename}.json"
|
||||
DESTINATION ${CMAKE_INSTALL_DATADIR}/upm/${basename}
|
||||
COMPONENT ${basename})
|
||||
COMPONENT ${CMAKE_PROJECT_NAME})
|
||||
endif ()
|
||||
|
||||
if (IPK)
|
||||
@ -783,12 +797,12 @@ if (BUILDSWIGPYTHON)
|
||||
if(PYTHON2LIBS_FOUND)
|
||||
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/__init__.py
|
||||
DESTINATION ${PYTHON2_PACKAGES_PATH}/upm
|
||||
COMPONENT python2)
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-python2)
|
||||
endif(PYTHON2LIBS_FOUND)
|
||||
if(PYTHON3LIBS_FOUND)
|
||||
install (FILES ${CMAKE_CURRENT_BINARY_DIR}/__init__.py
|
||||
DESTINATION ${PYTHON3_PACKAGES_PATH}/upm
|
||||
COMPONENT python3)
|
||||
COMPONENT ${CMAKE_PROJECT_NAME}-python3)
|
||||
endif(PYTHON3LIBS_FOUND)
|
||||
endif (BUILDSWIGPYTHON)
|
||||
|
||||
|
@ -18,4 +18,5 @@ set (module_hpp iADC.hpp
|
||||
iPressureSensor.hpp
|
||||
iTemperatureSensor.hpp)
|
||||
# Install interfaces headers a bit differently
|
||||
install (FILES ${module_hpp} DESTINATION include/upm/${libname} COMPONENT ${libname})
|
||||
install (FILES ${module_hpp} DESTINATION include/upm/${libname}
|
||||
COMPONENT ${CMAKE_PROJECT_NAME})
|
||||
|
Loading…
x
Reference in New Issue
Block a user