Synch with CMake master

This commit is contained in:
Allen Byrne 2017-06-19 09:37:55 -05:00
parent 0c34b0bdf7
commit d4896f7c30
3 changed files with 29 additions and 36 deletions

View File

@ -1,41 +1,30 @@
# Distributed under the OSI-approved BSD 3-Clause License. See https://cmake.org/licensing for details.
#=============================================================================
# Copyright 2013-2014 Kitware, Inc.
#
# Distributed under the OSI-approved BSD License (the "License");
# see accompanying file Copyright.txt for details.
#
# This software is distributed WITHOUT ANY WARRANTY; without even the
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the License for more information.
#=============================================================================
# (To distribute this file outside of CMake, substitute the full
# License text for the above reference.)
# Do not include this module directly from code outside CMake!
set(_JAVA_HOME "")
if(JAVA_HOME AND IS_DIRECTORY "${JAVA_HOME}")
set(_JAVA_HOME "${JAVA_HOME}")
set(_JAVA_HOME_EXPLICIT 1)
else ()
else()
set(_ENV_JAVA_HOME "")
if(DEFINED ENV{JAVA_HOME})
file(TO_CMAKE_PATH "$ENV{JAVA_HOME}" _ENV_JAVA_HOME)
endif ()
endif()
if(_ENV_JAVA_HOME AND IS_DIRECTORY "${_ENV_JAVA_HOME}")
set(_JAVA_HOME "${_ENV_JAVA_HOME}")
set(_JAVA_HOME_EXPLICIT 1)
else ()
else()
set(_CMD_JAVA_HOME "")
if(APPLE AND EXISTS /usr/libexec/java_home)
execute_process(COMMAND /usr/libexec/java_home
OUTPUT_VARIABLE _CMD_JAVA_HOME OUTPUT_STRIP_TRAILING_WHITESPACE)
endif ()
endif()
if(_CMD_JAVA_HOME AND IS_DIRECTORY "${_CMD_JAVA_HOME}")
set(_JAVA_HOME "${_CMD_JAVA_HOME}")
set(_JAVA_HOME_EXPLICIT 0)
endif ()
endif()
unset(_CMD_JAVA_HOME)
endif ()
endif()
unset(_ENV_JAVA_HOME)
endif ()
endif()

View File

@ -345,5 +345,3 @@ set(JNI_INCLUDE_DIRS
${JAVA_AWT_INCLUDE_PATH}
)
message ("JNI_LIBRARIES=${JNI_LIBRARIES}")
message ("JNI_INCLUDE_DIRS=${JNI_INCLUDE_DIRS}")

View File

@ -243,21 +243,23 @@
#
# ::
#
# install_jar_exports(TARGETS jar1 [jar2 ...]
# FILE export_filename
# DESTINATION destination [COMPONENT component])
# install_jar_exports(TARGETS jars...
# [NAMESPACE <namespace>]
# FILE <filename>
# DESTINATION <dir> [COMPONENT <component>])
#
# This command installs a target export file export_filename for the named jar
# targets to the given DESTINATION. Its function is similar to that of
# install(EXPORTS).
# This command installs a target export file ``<filename>`` for the named jar
# targets to the given ``DESTINATION``. Its function is similar to that of
# :command:`install(EXPORTS ...)`.
#
# ::
#
# export_jars(TARGETS jar1 [jar2 ...]
# FILE export_filename)
# export_jars(TARGETS jars...
# [NAMESPACE <namespace>]
# FILE <filename>)
#
# This command writes a target export file export_filename for the named jar
# targets. Its function is similar to that of export().
# This command writes a target export file ``<filename>`` for the named jar
# targets. Its function is similar to that of :command:`export(...)`.
#
# ::
#
@ -425,10 +427,12 @@ endfunction()
function(__java_export_jar VAR TARGET PATH)
get_target_property(_jarpath ${TARGET} JAR_FILE)
get_filename_component(_jarname ${_jarpath} NAME)
set(_target "${_jar_NAMESPACE}${TARGET}")
__java_lcat(${VAR}
"# Create imported target ${TARGET}"
"add_custom_target(${TARGET})"
"set_target_properties(${TARGET} PROPERTIES"
"# Create imported target ${_target}"
"add_library(${_target} IMPORTED STATIC)"
"set_target_properties(${_target} PROPERTIES"
" IMPORTED_LOCATION \"${PATH}/${_jarname}\""
" JAR_FILE \"${PATH}/${_jarname}\")"
""
)
@ -1402,7 +1406,7 @@ function(export_jars)
# Parse and validate arguments
cmake_parse_arguments(_export_jars
""
"FILE"
"FILE;NAMESPACE"
"TARGETS"
${ARGN}
)
@ -1412,6 +1416,7 @@ function(export_jars)
if (NOT _export_jars_TARGETS)
message(SEND_ERROR "export_jars: TARGETS must be specified.")
endif()
set(_jar_NAMESPACE "${_export_jars_NAMESPACE}")
# Set content of generated exports file
string(REPLACE ";" " " __targets__ "${_export_jars_TARGETS}")
@ -1434,7 +1439,7 @@ function(install_jar_exports)
# Parse and validate arguments
cmake_parse_arguments(_install_jar_exports
""
"FILE;DESTINATION;COMPONENT"
"FILE;DESTINATION;COMPONENT;NAMESPACE"
"TARGETS"
${ARGN}
)
@ -1447,6 +1452,7 @@ function(install_jar_exports)
if (NOT _install_jar_exports_TARGETS)
message(SEND_ERROR "install_jar_exports: TARGETS must be specified.")
endif()
set(_jar_NAMESPACE "${_install_jar_exports_NAMESPACE}")
if (_install_jar_exports_COMPONENT)
set (_COMPONENT COMPONENT ${_install_jar_exports_COMPONENT})