Revision: 77395
http://sourceforge.net/p/brlcad/code/77395
Author: starseeker
Date: 2020-10-09 19:44:40 +0000 (Fri, 09 Oct 2020)
Log Message:
-----------
More adjustments to targets. Probably need to revisit the ET_target_props
logic, or at least make the relocation logic respect the higher level variables
rather than just LIB_DIR and BIN_DIR...
Modified Paths:
--------------
brlcad/branches/thirdparty_rework/misc/CMake/CMakeLists.txt
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMake/FindLEMON.cmake
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMake/FindPERPLEX.cmake
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMakeLists.txt
brlcad/branches/thirdparty_rework/src/superbuild/CMake/ExternalProject_Target.cmake
brlcad/branches/thirdparty_rework/src/superbuild/perplex.cmake
Removed Paths:
-------------
brlcad/branches/thirdparty_rework/misc/CMake/ThirdParty.cmake
brlcad/branches/thirdparty_rework/misc/CMake/ThirdPartyExecutable.cmake
Modified: brlcad/branches/thirdparty_rework/misc/CMake/CMakeLists.txt
===================================================================
--- brlcad/branches/thirdparty_rework/misc/CMake/CMakeLists.txt 2020-10-09
19:31:02 UTC (rev 77394)
+++ brlcad/branches/thirdparty_rework/misc/CMake/CMakeLists.txt 2020-10-09
19:44:40 UTC (rev 77395)
@@ -55,8 +55,6 @@
RPath_Setup.cmake
ResetCache.cmake
TCL_PKGINDEX.cmake
- ThirdParty.cmake
- ThirdPartyExecutable.cmake
compat/README
compat/README.compat
compat/README.compat.c99
Deleted: brlcad/branches/thirdparty_rework/misc/CMake/ThirdParty.cmake
===================================================================
--- brlcad/branches/thirdparty_rework/misc/CMake/ThirdParty.cmake
2020-10-09 19:31:02 UTC (rev 77394)
+++ brlcad/branches/thirdparty_rework/misc/CMake/ThirdParty.cmake
2020-10-09 19:44:40 UTC (rev 77395)
@@ -1,270 +0,0 @@
-# T H I R D P A R T Y . C M A K E
-# BRL-CAD
-#
-# Copyright (c) 2011-2020 United States Government as represented by
-# the U.S. Army Research Laboratory.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-#
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# 2. Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following
-# disclaimer in the documentation and/or other materials provided
-# with the distribution.
-#
-# 3. The name of the author may not be used to endorse or promote
-# products derived from this software without specific prior written
-# permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
-# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
-# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
-# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#
-###
-
-# Synopsis:
-#
-# THIRD_PARTY(dir
-# vroot
-# build_target
-# description
-# [FIND_NAME name]
-# [FIND_VERSION version]
-# [FIND_COMPONENTS component1 component2 ...]
-# [REQUIRED_VARS var1 var2 ...]
-# [RESET_VARS var1 var2 ...]
-# [ALIASES alias1 alias2 ...]
-# [FLAGS flag1 flag2 ...]
-# [UNDOCUMENTED]
-# )
-
-#-----------------------------------------------------------------------------
-function(THIRD_PARTY dir vroot build_target description)
-
- # Parse extra arguments
- cmake_parse_arguments(TP "UNDOCUMENTED;NOSYS" "FIND_NAME;FIND_VERSION"
"FIND_COMPONENTS;REQUIRED_VARS;RESET_VARS;ALIASES;FLAGS" ${ARGN})
-
- # If the library variable has been explicitly set, get
- # a normalized version of it for easier matching
- set(local_opt)
- if(NOT "${${CMAKE_PROJECT_NAME}_${vroot}}" STREQUAL "")
- set(local_opt "${${CMAKE_PROJECT_NAME}_${vroot}}")
- endif(NOT "${${CMAKE_PROJECT_NAME}_${vroot}}" STREQUAL "")
- VAL_NORMALIZE(local_opt ABS)
-
- # Initialize some variables
- set(TP_DISABLED 0)
- set(TP_DISABLE_TEST 0)
- set(TP_MET_CONDITION 0)
- if(NOT TP_FIND_NAME)
- set(TP_FIND_NAME ${vroot})
- endif(NOT TP_FIND_NAME)
-
- # 0. Whether or not we're building the sources, we are tracking the files
- # that are supposed to be in the directory
- get_filename_component(DIR_NAME "${dir}" NAME)
- #if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${DIR_NAME}.dist")
- # message(FATAL_ERROR "Third party component ${DIR_NAME} does not have a
dist file at \"${CMAKE_CURRENT_SOURCE_DIR}/${DIR_NAME}.dist\"")
- #endif(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${DIR_NAME}.dist")
- #include("${CMAKE_CURRENT_SOURCE_DIR}/${DIR_NAME}.dist")
- #CMAKEFILES_IN_DIR(${DIR_NAME}_ignore_files ${dir})
-
- # 1. If any of the required flags are off, this extension is a no-go.
- set(DISABLE_STR "")
- foreach(item ${TP_REQUIRED_VARS})
- if(NOT ${item})
- set(TP_DISABLED 1)
- set(TP_DISABLE_TEST 1)
- set(${CMAKE_PROJECT_NAME}_${vroot}_BUILD OFF)
- if(NOT DISABLE_STR)
- set(DISABLE_STR "${item}")
- else(NOT DISABLE_STR)
- set(DISABLE_STR "${DISABLE_STR},${item}")
- endif(NOT DISABLE_STR)
- endif(NOT ${item})
- endforeach(item ${TP_REQUIRED_VARS})
- if(DISABLE_STR)
- set(${CMAKE_PROJECT_NAME}_${vroot} "DISABLED ${DISABLE_STR}" CACHE STRING
"DISABLED ${DISABLED_STR}" FORCE)
- mark_as_advanced(FORCE ${CMAKE_PROJECT_NAME}_${vroot})
- set_property(CACHE ${CMAKE_PROJECT_NAME}_${vroot} PROPERTY STRINGS
"DISABLED ${DISABLE_STR}")
- set(TP_MET_CONDITION 1)
- else(DISABLE_STR)
- # If we have a leftover disabled setting in the cache from earlier runs,
clear it.
- if("${local_opt}" MATCHES "DISABLED")
- set(${CMAKE_PROJECT_NAME}_${vroot} "" CACHE STRING "Clear DISABLED
setting" FORCE)
- mark_as_advanced(CLEAR ${CMAKE_PROJECT_NAME}_${vroot})
- endif("${local_opt}" MATCHES "DISABLED")
- endif(DISABLE_STR)
-
- # 2. Next - is the library variable explicitly set to SYSTEM? If it is, we
are NOT building it.
- if(local_opt)
- if("${local_opt}" STREQUAL "SYSTEM")
- set(${CMAKE_PROJECT_NAME}_${vroot}_BUILD OFF)
- set(${CMAKE_PROJECT_NAME}_${vroot} "SYSTEM" CACHE STRING "User forced to
SYSTEM" FORCE)
- set(TP_MET_CONDITION 2)
- if(TP_NOSYS)
- message(WARNING "Compilation of ${build_target} was disabled, but
local copy is modified - using a system version of ${build_target} may
introduce problems or even fail to work!")
- endif(TP_NOSYS)
- endif("${local_opt}" STREQUAL "SYSTEM")
- endif(local_opt)
-
- # 3. If we have a NOSYS flag and aren't explicitly disabled, ALWAYS use the
bundled version.
- # The NOSYS flag signifies that the BRL-CAD project requires modifications
in the local src/other
- # version of a library or tool that are not likely to be present in a system
version. These flags
- # should be periodically reviewed to determine if they can be removed (i.e.
system packages have
- # appeared in modern OS distributions with the fixes needed by BRL-CAD...)
- if(NOT TP_MET_CONDITION AND TP_NOSYS)
- set(${CMAKE_PROJECT_NAME}_${vroot} "BUNDLED" CACHE STRING "NOSYS passed,
using bundled ${build_target}" FORCE)
- mark_as_advanced(${CMAKE_PROJECT_NAME}_${vroot})
- set(${CMAKE_PROJECT_NAME}_${vroot}_BUILD ON)
- set(TP_MET_CONDITION 3)
- set(TP_DISABLE_TEST 1)
- endif(NOT TP_MET_CONDITION AND TP_NOSYS)
-
- # 4. If we have an explicit BUNDLE request for this particular library,
honor it as long as
- # features are satisfied. No point in testing if we know we're turning it
on - set vars accordingly.
- if(local_opt)
- if("${local_opt}" STREQUAL "BUNDLED")
- if(NOT TP_MET_CONDITION)
- set(${CMAKE_PROJECT_NAME}_${vroot}_BUILD ON)
- set(${CMAKE_PROJECT_NAME}_${vroot} "BUNDLED" CACHE STRING "User forced
to BUNDLED" FORCE)
- set(TP_DISABLE_TEST 1)
- set(TP_MET_CONDITION 4)
- endif(NOT TP_MET_CONDITION)
- endif("${local_opt}" STREQUAL "BUNDLED")
- endif(local_opt)
-
- # 5. If ${CMAKE_PROJECT_NAME}_BUNDLED_LIBS is exactly SYSTEM or exactly
BUNDLED, and we haven't been overridden by
- # one of the other conditions above, go with that.
- if(NOT TP_MET_CONDITION)
- if("${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" STREQUAL "SYSTEM" OR
"${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" STREQUAL "BUNDLED")
- set(${CMAKE_PROJECT_NAME}_${vroot}
"${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS} (AUTO)" CACHE
- STRING "${CMAKE_PROJECT_NAME}_BUNDLED_LIBS:
${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" FORCE)
- if("${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" STREQUAL "SYSTEM")
- set(${CMAKE_PROJECT_NAME}_${vroot}_BUILD OFF)
- set(TP_MET_CONDITION 5)
- elseif("${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" STREQUAL "BUNDLED")
- set(${CMAKE_PROJECT_NAME}_${vroot}_BUILD ON)
- set(TP_DISABLE_TEST 1)
- set(TP_MET_CONDITION 5)
- endif("${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" STREQUAL "SYSTEM")
- endif("${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" STREQUAL "SYSTEM" OR
"${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" STREQUAL "BUNDLED")
- endif(NOT TP_MET_CONDITION)
-
- # If we haven't been knocked out by any of the above conditions, do our
testing and base the results on that.
-
- if(NOT TP_DISABLE_TEST)
- # Stash the previous results (if any) so we don't repeatedly call out the
tests - only report
- # if something actually changes in subsequent runs.
- set(${vroot}_FOUND_STATUS ${${vroot}_FOUND})
-
- # Initialize (or rather, uninitialize) variables in preparation for search
- set(${vroot}_FOUND "${vroot}-NOTFOUND" CACHE STRING "${vroot}_FOUND" FORCE)
- mark_as_advanced(${vroot}_FOUND)
- foreach(item ${TP_RESET_VARS})
- set(${item} "${vroot}-NOTFOUND" CACHE STRING "${item}" FORCE)
- endforeach(item ${TP_RESET_VARS})
-
- # Be quiet if we're doing this over
- if("${${vroot}_FOUND_STATUS}" MATCHES "NOTFOUND")
- set(${vroot}_FIND_QUIETLY TRUE)
- endif("${${vroot}_FOUND_STATUS}" MATCHES "NOTFOUND")
-
- # Find the package in question. It is the toplevel CMakeLists.txt's
responsibility to make
- # sure that the CMAKE_MODULE_PATH variable is set correctly if there are
local versions of
- # Find*.cmake scripts that should be used. Note that newer CMake versions
will prefer a system
- # version of the module, so if a custom override is needed the Find*.cmake
name should not conflict
- # with the system version.
- find_package(${TP_FIND_NAME} ${TP_FIND_VERSION} COMPONENTS
${TP_FIND_COMPONENTS})
-
- # going to use system or bundled versions of deps
- if(${vroot}_FOUND)
- set(${CMAKE_PROJECT_NAME}_${vroot}_BUILD OFF)
- if(NOT "${CMAKE_PROJECT_NAME}_${vroot}" STREQUAL "SYSTEM")
- set(${CMAKE_PROJECT_NAME}_${vroot} "SYSTEM (AUTO)" CACHE STRING "Found
System version, using" FORCE)
- endif(NOT "${CMAKE_PROJECT_NAME}_${vroot}" STREQUAL "SYSTEM")
- else(${vroot}_FOUND)
- # If one of our previous conditions precludes building this library,
we've got a problem.
- if("${local_opt}" STREQUAL "SYSTEM" OR
"${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" STREQUAL SYSTEM)
- set(${CMAKE_PROJECT_NAME}_${vroot}_BUILD OFF)
- set(${CMAKE_PROJECT_NAME}_${vroot}_NOTFOUND 1)
- message(WARNING "Compilation of local version of ${build_target} was
disabled, but system version not found!")
- if(NOT "${local_opt}" STREQUAL "SYSTEM")
- set(${CMAKE_PROJECT_NAME}_${vroot} "SYSTEM (AUTO)" CACHE STRING
"${CMAKE_PROJECT_NAME}_BUNDLED_LIBS forced to SYSTEM, but library not found!"
FORCE)
- else(NOT "${local_opt}" STREQUAL "SYSTEM")
- set(${CMAKE_PROJECT_NAME}_${vroot} "SYSTEM" CACHE STRING "Hard-set to
SYSTEM by user, but library not found!" FORCE)
- endif(NOT "${local_opt}" STREQUAL "SYSTEM")
- else("${local_opt}" STREQUAL "SYSTEM" OR
"${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" STREQUAL SYSTEM)
- set(${CMAKE_PROJECT_NAME}_${vroot}_BUILD ON)
- set(${CMAKE_PROJECT_NAME}_${vroot} "BUNDLED (AUTO)" CACHE STRING
"System test failed, enabling local copy" FORCE)
- endif("${local_opt}" STREQUAL "SYSTEM" OR
"${${CMAKE_PROJECT_NAME}_BUNDLED_LIBS}" STREQUAL SYSTEM)
- endif(${vroot}_FOUND)
- endif(NOT TP_DISABLE_TEST)
-
- # If we're going with a system version of a library, we have to remove any
previously built
- # output from enabled bundled copies of the library in question, or the
linker will get
- # confused - a system lib was found and system libraries are to be preferred
with current
- # options. This is unfortunate in that it may introduce extra build work
just from trying
- # configure options, but appears to be essential to ensuring that the build
"just works"
- # each time.
- if (NOT ${CMAKE_PROJECT_NAME}_${vroot}_BUILD)
-
- if (EXISTS "${CMAKE_BUILD_DIR}/${build_target}_files.txt")
-
- file(STRINGS "${CMAKE_BUILD_DIR}/${build_target}_files.txt" STALE_FILES)
-
- foreach(stale_file ${STALE_FILES})
- execute_process(
- COMMAND ${CMAKE_COMMAND} -E remove ${stale_file}
- OUTPUT_VARIABLE rm_out
- RETURN_VALUE rm_retval
- )
- endforeach(stale_file ${STALE_FILES})
-
- endif (EXISTS "${CMAKE_BUILD_DIR}/${build_target}_files.txt")
-
- if(NOT "${CMAKE_PROJECT_NAME}_${vroot}" MATCHES "${local_opt}")
- if("${local_opt}" MATCHES "BUNDLED")
- message("Reconfiguring to use system ${vroot}")
- endif("${local_opt}" MATCHES "BUNDLED")
- endif(NOT "${CMAKE_PROJECT_NAME}_${vroot}" MATCHES "${local_opt}")
-
- endif(NOT ${CMAKE_PROJECT_NAME}_${vroot}_BUILD)
-
- # After all that, we know now what to do about this particular dependency
- set(${CMAKE_PROJECT_NAME}_${vroot}_BUILD
"${${CMAKE_PROJECT_NAME}_${vroot}_BUILD}" PARENT_SCOPE)
-
- # Unless we're suppressing it, document the options that control this third
party component
- if(NOT ${vroot}_UNDOCUMENTED)
- BRLCAD_OPTION("${CMAKE_PROJECT_NAME}_${vroot}"
"${${CMAKE_PROJECT_NAME}_${vroot}}"
- TYPE ABS
- ALIASES ${TP_ALIASES}
- DESCRIPTION "${description}")
- endif(NOT ${vroot}_UNDOCUMENTED)
-
- # For drop-down menus in CMake gui - set STRINGS property
- set_property(CACHE ${CMAKE_PROJECT_NAME}_${vroot} PROPERTY STRINGS AUTO
BUNDLED SYSTEM)
-
- mark_as_advanced(${vroot}_LIBRARY)
- mark_as_advanced(${vroot}_INCLUDE_DIR)
-endfunction(THIRD_PARTY)
-
-
-# Local Variables:
-# tab-width: 8
-# mode: cmake
-# indent-tabs-mode: t
-# End:
-# ex: shiftwidth=2 tabstop=8
Deleted: brlcad/branches/thirdparty_rework/misc/CMake/ThirdPartyExecutable.cmake
===================================================================
--- brlcad/branches/thirdparty_rework/misc/CMake/ThirdPartyExecutable.cmake
2020-10-09 19:31:02 UTC (rev 77394)
+++ brlcad/branches/thirdparty_rework/misc/CMake/ThirdPartyExecutable.cmake
2020-10-09 19:44:40 UTC (rev 77395)
@@ -1,281 +0,0 @@
-# T H I R D P A R T Y E X E C U T A B L E . C M A K E
-# BRL-CAD
-#
-# Copyright (c) 2020 United States Government as represented by
-# the U.S. Army Research Laboratory.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-#
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# 2. Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following
-# disclaimer in the documentation and/or other materials provided
-# with the distribution.
-#
-# 3. The name of the author may not be used to endorse or promote
-# products derived from this software without specific prior written
-# permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
-# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
-# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
-# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#
-###
-
-function(THIRD_PARTY_EXECUTABLE dir varname_root build_target)
-
- # Parse extra arguments
- CMAKE_PARSE_ARGUMENTS(TP "NOSYS" "" "REQUIRED_VARS;ALIASES;DESCRIPTION"
${ARGN})
-
- # If the exec variable has been explicitly set, get
- # an normalized version of it for easier matching
- set(local_opt)
- if(NOT ${${CMAKE_PROJECT_NAME}_${varname_root}} STREQUAL "")
- set(local_opt "${${CMAKE_PROJECT_NAME}_${varname_root}}")
- endif(NOT ${${CMAKE_PROJECT_NAME}_${varname_root}} STREQUAL "")
- VAL_NORMALIZE(local_opt ABS)
-
- # Initialize some variables
- set(TP_DISABLED 0)
- set(TP_DISABLE_TEST 0)
- set(TP_MET_CONDITION 0)
-
- # 0. Whether or not we're building the sources, we are tracking the files
- # that are supposed to be in the directory
- get_filename_component(DIR_NAME "${dir}" NAME)
- #if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${DIR_NAME}.dist")
- # message(FATAL_ERROR "Third party component ${DIR_NAME} does not have a
dist file at \"${CMAKE_CURRENT_SOURCE_DIR}/${DIR_NAME}.dist\"")
- #endif(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${DIR_NAME}.dist")
- #include("${CMAKE_CURRENT_SOURCE_DIR}/${DIR_NAME}.dist")
- #CMAKEFILES_IN_DIR(${DIR_NAME}_ignore_files ${dir})
-
- # 1. For executables, it is a reasonable use case that the developer
manually specifies
- # the location for an executable. It is tricky to distinguish this
situation from
- # a previously cached executable path resulting from a Find*.cmake script.
The way
- # we will proceed is to cache the value of ${varname_root}_EXECUTABLE if it
is defined, and
- # at the end check it against the results of running the THIRD_PARTY logic.
If
- # it matches neither pattern (Bundled or System) it is assumed that the
value passed
- # in is an intentional setting on the part of the developer. This has one
potential
- # drawback in that the *removal* of a system executable between searches
could result
- # in a previously cached system search result being identified as a
user-specified
- # result - to prevent that, the cached path is only used to override other
results
- # if the file it specifies actually exists. One additional wrinkle here -
if the
- # developer has hard-specified BUNDLED for this particular executable, even
a user specified
- # or cached value will be replaced with the local path. A feature based
disablement
- # of the tool also applies to the cached version.
- if(${varname_root}_EXECUTABLE)
- IS_SUBPATH("${CMAKE_BINARY_DIR}" "${${varname_root}_EXECUTABLE}"
SUBBUILD_TEST)
- if("${SUBBUILD_TEST}" STREQUAL "0")
- get_filename_component(FULL_PATH_EXEC ${${varname_root}_EXECUTABLE}
ABSOLUTE)
- if("${FULL_PATH_EXEC}" STREQUAL "${${varname_root}_EXECUTABLE}")
- if(EXISTS ${FULL_PATH_EXEC})
- set(EXEC_CACHED ${${varname_root}_EXECUTABLE})
- else(EXISTS ${FULL_PATH_EXEC})
- # This path not being present may indicate the user specified a path
- # and made a mistake doing so - warn that this might be the case.
- message(WARNING "File path ${${varname_root}_EXECUTABLE} specified
for ${varname_root}_EXECUTABLE does not exist - this path will not override
${build_target} executable search results.")
- endif(EXISTS ${FULL_PATH_EXEC})
- endif("${FULL_PATH_EXEC}" STREQUAL "${${varname_root}_EXECUTABLE}")
- endif("${SUBBUILD_TEST}" STREQUAL "0")
- endif(${varname_root}_EXECUTABLE)
-
- # 2. If any of the required flags are off, this tool is a no-go.
- set(DISABLE_STR "")
- foreach(item ${TP_REQUIRED_VARS})
- if(NOT ${item})
- set(TP_DISABLED 1)
- set(TP_DISABLE_TEST 1)
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD OFF)
- if(NOT DISABLE_STR)
- set(DISABLE_STR "${item}")
- else(NOT DISABLE_STR)
- set(DISABLE_STR "${DISABLE_STR},${item}")
- endif(NOT DISABLE_STR)
- endif(NOT ${item})
- endforeach(item ${TP_REQUIRED_VARS})
- if(DISABLE_STR)
- set(${CMAKE_PROJECT_NAME}_${varname_root} "DISABLED ${DISABLE_STR}" CACHE
STRING "DISABLED ${DISABLED_STR}" FORCE)
- mark_as_advanced(FORCE ${CMAKE_PROJECT_NAME}_${varname_root})
- set(${varname_root}_MET_CONDITION 1)
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD OFF)
- else(DISABLE_STR)
- # If we have a leftover disabled setting in the cache from earlier runs,
clear it.
- if("${local_opt}" MATCHES "DISABLED")
- set(${CMAKE_PROJECT_NAME}_${varname_root} "" CACHE STRING "Clear
DISABLED setting" FORCE)
- mark_as_advanced(CLEAR ${CMAKE_PROJECT_NAME}_${varname_root})
- endif("${local_opt}" MATCHES "DISABLED")
- endif(DISABLE_STR)
-
- # 3. Next - is the executable variable explicitly set to SYSTEM? If it is,
we are NOT building it.
- if(local_opt)
- if("${local_opt}" STREQUAL "SYSTEM")
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD OFF)
- set(TP_MET_CONDITION 2)
- if(TP_NOSYS)
- message(WARNING "Compilation of ${build_target} was disabled, but local
copy is modified - using a system version of ${build_target} may introduce
problems or even fail to work!")
- endif(TP_NOSYS)
- endif("${local_opt}" STREQUAL "SYSTEM")
- endif(local_opt)
-
- # 4. If we have a NOSYS flag, ALWAYS* use the bundled version. The NOSYS
flag signifies that
- # the BRL-CAD project requires modifications in the local src/other version
of a library or
- # tool that are not likely to be present in a system version. These flags
should be periodically
- # reviewed to determine if they can be removed (i.e. system packages have
appeared in modern
- # OS distributions with the fixes needed by BRL-CAD...).
- #
- # * In the case of executables, we'll allow a cached value from the user to
override the NOSYS
- # flag, since that's a likely scenario for testing, but that shouldn't be
done except for testing
- # purposes with a NOSYS target.
- if(NOT TP_MET_CONDITION AND TP_NOSYS)
- set(${CMAKE_PROJECT_NAME}_${varname_root} "BUNDLED" CACHE STRING "NOSYS
passed, using bundled ${build_target}" FORCE)
- mark_as_advanced(${CMAKE_PROJECT_NAME}_${varname_root})
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD ON)
- set(TP_MET_CONDITION 3)
- set(TP_DISABLE_TEST 1)
- endif(NOT TP_MET_CONDITION AND TP_NOSYS)
-
- # 5. If we have an explicit BUNDLE request for this particular executable,
honor it as long as
- # features are satisfied. No point in testing if we know we're turning it
on - set vars accordingly.
- if(NOT TP_MET_CONDITION AND "${local_opt}" STREQUAL "BUNDLED")
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD ON)
- set(TP_DISABLE_TEST 1)
- set(TP_MET_CONDITION 4)
- endif(NOT TP_MET_CONDITION AND "${local_opt}" STREQUAL "BUNDLED")
-
-
- # 5. If BRLCAD_BUNDLED_LIBS is exactly SYSTEM or exactly BUNDLED, and we
haven't been overridden by
- # one of the other conditions above, go with that.
- if(NOT TP_MET_CONDITION)
- if("${BRLCAD_BUNDLED_LIBS}" STREQUAL "SYSTEM" OR "${BRLCAD_BUNDLED_LIBS}"
STREQUAL "BUNDLED")
- set(${CMAKE_PROJECT_NAME}_${varname_root} "${BRLCAD_BUNDLED_LIBS}
(AUTO)" CACHE STRING "BRLCAD_BUNDLED_LIBS: ${BRLCAD_BUNDLED_LIBS}" FORCE)
- if("${BRLCAD_BUNDLED_LIBS}" STREQUAL "SYSTEM")
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD OFF)
- set(TP_MET_CONDITION 5)
- elseif("${BRLCAD_BUNDLED_LIBS}" STREQUAL "BUNDLED")
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD ON)
- set(TP_DISABLE_TEST 1)
- set(TP_MET_CONDITION 5)
- endif("${BRLCAD_BUNDLED_LIBS}" STREQUAL "SYSTEM")
- endif("${BRLCAD_BUNDLED_LIBS}" STREQUAL "SYSTEM" OR
"${BRLCAD_BUNDLED_LIBS}" STREQUAL "BUNDLED")
- endif(NOT TP_MET_CONDITION)
-
- # If we haven't been knocked out by any of the above conditions, do our
testing and base the results on that.
- if(NOT TP_DISABLE_TEST)
- # Stash the previous results (if any) so we don't repeatedly call out the
tests - only report
- # if something actually changes in subsequent runs.
- set(${varname_root}_FOUND_STATUS ${${varname_root}_FOUND})
-
- # Initialize (or rather, uninitialize) variables in preparation for search
- set(${varname_root}_FOUND "${varname_root}-NOTFOUND" CACHE STRING
"${varname_root}_FOUND" FORCE)
- mark_as_advanced(${varname_root}_FOUND)
- set(${varname_root}_EXECUTABLE "${varname_root}-NOTFOUND" CACHE STRING
"${varname_root}_EXECUTABLE" FORCE)
-
- # Be quiet if we're doing this over
- if("${${varname_root}_FOUND_STATUS}" MATCHES "NOTFOUND")
- set(${varname_root}_FIND_QUIETLY TRUE)
- endif("${${varname_root}_FOUND_STATUS}" MATCHES "NOTFOUND")
-
- # Include the Find module for the executable in question
- if(EXISTS ${${CMAKE_PROJECT_NAME}_CMAKE_DIR}/Find${varname_root}.cmake)
- include(${${CMAKE_PROJECT_NAME}_CMAKE_DIR}/Find${varname_root}.cmake)
- else(EXISTS ${${CMAKE_PROJECT_NAME}_CMAKE_DIR}/Find${varname_root}.cmake)
- include(${CMAKE_ROOT}/Modules/Find${varname_root}.cmake)
- endif(EXISTS ${${CMAKE_PROJECT_NAME}_CMAKE_DIR}/Find${varname_root}.cmake)
-
- # going to use system or bundled versions of deps
- if(${varname_root}_FOUND)
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD OFF)
- set(${CMAKE_PROJECT_NAME}_${varname_root} "SYSTEM (AUTO)" CACHE STRING
"Found System version, using" FORCE)
- else(${varname_root}_FOUND)
- # If one of our previous conditions precludes building this library,
we've got a problem unless the
- # cached version is suitable - check that before we warn.
- if(NOT "${local_opt}" STREQUAL "SYSTEM" AND NOT "${BRLCAD_BUNDLED_LIBS}"
STREQUAL SYSTEM)
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD ON)
- set(${CMAKE_PROJECT_NAME}_${varname_root} "BUNDLED (AUTO)" CACHE STRING
"System test failed, enabling local copy" FORCE)
- endif(NOT "${local_opt}" STREQUAL "SYSTEM" AND NOT
"${BRLCAD_BUNDLED_LIBS}" STREQUAL SYSTEM)
- endif(${varname_root}_FOUND)
-
- endif(NOT TP_DISABLE_TEST)
-
- # Now that we've run the Find routine, see if we had a cached value
different from any of our
- # standard results
- set(TP_USING_CACHED 0)
- if(NOT "${TP_MET_CONDITION}" STREQUAL "1" AND NOT "${TP_MET_CONDITION}"
STREQUAL "4")
- if(EXEC_CACHED)
- # Is it a build target? If so, don't cache it.
- get_filename_component(EXEC_CACHED_ABS_PATH ${EXEC_CACHED} ABSOLUTE)
- IF ("${EXEC_CACHED_ABS_PATH}" STREQUAL "${PATH_ABS}")
- # Is it the bundled path? (don't override if it is, the bundled option
setting takes care of that)
- if(NOT "${EXEC_CACHED}" STREQUAL
"${CMAKE_BINARY_DIR}/${BIN_DIR}/${build_target}")
- # Is it the same as the found results?
- if(NOT "${EXEC_CACHED}" STREQUAL
"${${varname_root}_EXECUTABLE_FOUND_RESULT}")
- set(${varname_root}_EXECUTABLE ${EXEC_CACHED} CACHE STRING
"Apparently a user specified path was supplied, use it" FORCE)
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD OFF)
- set(${CMAKE_PROJECT_NAME}_${varname_root} "SYSTEM (AUTO)" CACHE
STRING "Apparently a user specified path was supplied, use it" FORCE)
- set(TP_USING_CACHED 1)
- endif(NOT "${EXEC_CACHED}" STREQUAL
"${${varname_root}_EXECUTABLE_FOUND_RESULT}")
- endif(NOT "${EXEC_CACHED}" STREQUAL
"${CMAKE_BINARY_DIR}/${BIN_DIR}/${build_target}")
- endif("${EXEC_CACHED_ABS_PATH}" STREQUAL "${PATH_ABS}")
- endif(EXEC_CACHED)
- endif(NOT "${TP_MET_CONDITION}" STREQUAL "1" AND NOT "${TP_MET_CONDITION}"
STREQUAL "4")
-
- # If the CACHED value doesn't look good, and we aren't overridden by any of
the other conditions, set based
- # on the test results
- if(NOT TP_USING_CACHED AND NOT TP_DISABLE_TEST)
- if(${varname_root}_FOUND)
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD OFF)
- if(NOT "${CMAKE_PROJECT_NAME}_${varname_root}" STREQUAL "SYSTEM")
- set(${CMAKE_PROJECT_NAME}_${varname_root} "SYSTEM (AUTO)" CACHE STRING
"Found System version, using" FORCE)
- endif(NOT "${CMAKE_PROJECT_NAME}_${varname_root}" STREQUAL "SYSTEM")
- else(${varname_root}_FOUND)
- # If one of our previous conditions precludes building this exec, we've
got a problem.
- if("${local_opt}" STREQUAL "SYSTEM" OR "${BRLCAD_BUNDLED_LIBS}" STREQUAL
SYSTEM)
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD ON)
- set(${CMAKE_PROJECT_NAME}_${varname_root}_NOTFOUND 1)
- message(WARNING "Compilation of local version of ${build_target} was
disabled, but system version not found!")
- if(NOT "${local_opt}" STREQUAL "SYSTEM")
- set(${CMAKE_PROJECT_NAME}_${varname_root} "SYSTEM (AUTO)" CACHE
STRING "BRLCAD_BUNDLED_LIBS forced to SYSTEM, but library not found!" FORCE)
- else(NOT "${local_opt}" STREQUAL "SYSTEM")
- set(${CMAKE_PROJECT_NAME}_${varname_root} "SYSTEM" CACHE STRING
"Hard-set to SYSTEM by user, but library not found!" FORCE)
- endif(NOT "${local_opt}" STREQUAL "SYSTEM")
- else("${local_opt}" STREQUAL "SYSTEM" OR "${BRLCAD_BUNDLED_LIBS}"
STREQUAL SYSTEM)
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD ON)
- set(${CMAKE_PROJECT_NAME}_${varname_root} "BUNDLED (AUTO)" CACHE STRING
"System test failed, enabling local copy" FORCE)
- endif("${local_opt}" STREQUAL "SYSTEM" OR "${BRLCAD_BUNDLED_LIBS}"
STREQUAL SYSTEM)
- endif(${varname_root}_FOUND)
- endif(NOT TP_USING_CACHED AND NOT TP_DISABLE_TEST)
-
- if (TP_ALIASES AND TP_DESCRIPTION)
- BRLCAD_OPTION("${CMAKE_PROJECT_NAME}_${varname_root}"
"${${CMAKE_PROJECT_NAME}_${varname_root}}"
- TYPE ABS
- ALIASES ${TP_ALIASES}
- DESCRIPTION "${TP_DESCRIPTION}")
- endif (TP_ALIASES AND TP_DESCRIPTION)
-
- mark_as_advanced(${varname_root}_EXECUTABLE)
- mark_as_advanced(${varname_root}_EXECUTABLE_TARGET)
- mark_as_advanced(${varname_root}_FOUND)
-
- # Tell the calling scope what the final result was
- set(${CMAKE_PROJECT_NAME}_${varname_root}_BUILD
${${CMAKE_PROJECT_NAME}_${varname_root}_BUILD} PARENT_SCOPE)
-
-endfunction(THIRD_PARTY_EXECUTABLE)
-
-# Local Variables:
-# tab-width: 8
-# mode: cmake
-# indent-tabs-mode: t
-# End:
-# ex: shiftwidth=2 tabstop=8
Modified:
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMake/FindLEMON.cmake
===================================================================
---
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMake/FindLEMON.cmake
2020-10-09 19:31:02 UTC (rev 77394)
+++
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMake/FindLEMON.cmake
2020-10-09 19:44:40 UTC (rev 77395)
@@ -113,6 +113,10 @@
CMAKE_PARSE_ARGUMENTS(${LVAR_PREFIX} ""
"OUT_SRC_FILE;OUT_HDR_FILE;WORKING_DIR;EXTRA_ARGS" "" ${ARGN})
endif(${ARGC} GREATER 3)
+ if (TARGET perplex_stage)
+ set(DEPS_TARGET perplex_stage)
+ endif (TARGET perplex_stage)
+
# Need a working directory
if("${${LVAR_PREFIX}_WORKING_DIR}" STREQUAL "")
set(${LVAR_PREFIX}_WORKING_DIR
"${CMAKE_CURRENT_BINARY_DIR}/${LVAR_PREFIX}")
@@ -161,7 +165,7 @@
OUTPUT ${LEMON_GEN_OUT} ${LEMON_GEN_SOURCE} ${LEMON_GEN_HEADER}
COMMAND ${CMAKE_COMMAND} -E copy ${lemon_in_file}
${${LVAR_PREFIX}_WORKING_DIR}/${INPUT_NAME}
COMMAND ${LEMON_EXECUTABLE} -T${LEMON_TEMPLATE}
${${LVAR_PREFIX}_WORKING_DIR}/${INPUT_NAME} ${${LVAR_PREFIX}__EXTRA_ARGS}
- DEPENDS ${Input} ${LEMON_TEMPLATE} ${LEMON_EXECUTABLE_TARGET}
+ DEPENDS ${Input} ${LEMON_EXECUTABLE_TARGET} ${DEPS_TARGET}
WORKING_DIRECTORY ${${LVAR_PREFIX}_WORKING_DIR}
COMMENT "[LEMON][${Name}] Building parser with ${LEMON_EXECUTABLE}"
)
@@ -171,7 +175,7 @@
add_custom_command(
OUTPUT ${${LVAR_PREFIX}_OUT_SRC_FILE}
COMMAND ${CMAKE_COMMAND} -E copy ${LEMON_GEN_SOURCE}
${${LVAR_PREFIX}_OUT_SRC_FILE}
- DEPENDS ${LemonInput} ${LEMON_EXECUTABLE_TARGET} ${LEMON_GEN_SOURCE}
+ DEPENDS ${LemonInput} ${LEMON_EXECUTABLE_TARGET} ${LEMON_GEN_SOURCE}
${DEPS_TARGET}
)
set(LEMON_${Name}_OUTPUTS ${${LVAR_PREFIX}_OUT_SRC_FILE}
${LEMON_${Name}_OUTPUTS})
endif(NOT "${${LVAR_PREFIX}_OUT_SRC_FILE}" STREQUAL "${LEMON_GEN_SOURCE}")
@@ -179,7 +183,7 @@
add_custom_command(
OUTPUT ${${LVAR_PREFIX}_OUT_HDR_FILE}
COMMAND ${CMAKE_COMMAND} -E copy ${LEMON_GEN_HEADER}
${${LVAR_PREFIX}_OUT_HDR_FILE}
- DEPENDS ${LemonInput} ${LEMON_EXECUTABLE_TARGET} ${LEMON_GEN_HEADER}
+ DEPENDS ${LemonInput} ${LEMON_EXECUTABLE_TARGET} ${LEMON_GEN_HEADER}
${DEPS_TARGET}
)
set(LEMON_${Name}_OUTPUTS ${${LVAR_PREFIX}_OUT_HDR_FILE}
${LEMON_${Name}_OUTPUTS})
endif(NOT "${${LVAR_PREFIX}_OUT_HDR_FILE}" STREQUAL "${LEMON_GEN_HEADER}")
Modified:
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMake/FindPERPLEX.cmake
===================================================================
---
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMake/FindPERPLEX.cmake
2020-10-09 19:31:02 UTC (rev 77394)
+++
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMake/FindPERPLEX.cmake
2020-10-09 19:44:40 UTC (rev 77395)
@@ -167,6 +167,10 @@
get_filename_component(IN_FILE_WE ${Input} NAME_WE)
set(PVAR_PREFIX ${Name}_${IN_FILE_WE})
+ if (TARGET perplex_stage)
+ set(DEP_TARGET perplex_stage)
+ endif (TARGET perplex_stage)
+
if(${ARGC} GREATER 3)
CMAKE_PARSE_ARGUMENTS(${PVAR_PREFIX} ""
"TEMPLATE;OUT_SRC_FILE;OUT_HDR_FILE;WORKING_DIR" "" ${ARGN})
endif(${ARGC} GREATER 3)
@@ -226,7 +230,7 @@
OUTPUT ${re2c_src} ${${PVAR_PREFIX}_OUT_HDR_FILE}
${${PVAR_PREFIX}_WORKING_DIR}/${IN_FILE}
COMMAND ${CMAKE_COMMAND} -E copy ${perplex_in_file}
${${PVAR_PREFIX}_WORKING_DIR}/${IN_FILE}
COMMAND ${PERPLEX_EXECUTABLE} -c -o ${re2c_src} -i
${${PVAR_PREFIX}_OUT_HDR_FILE} -t ${${PVAR_PREFIX}_TEMPLATE}
${${PVAR_PREFIX}_WORKING_DIR}/${IN_FILE}
- DEPENDS ${Input} ${${PVAR_PREFIX}_TEMPLATE} ${PERPLEX_EXECUTABLE_TARGET}
${RE2C_EXECUTABLE_TARGET}
+ DEPENDS ${Input} ${PERPLEX_EXECUTABLE_TARGET} ${RE2C_EXECUTABLE_TARGET}
${DEP_TARGET}
WORKING_DIRECTORY ${${PVAR_PREFIX}_WORKING_DIR}
COMMENT "[PERPLEX][${Name}] Generating re2c input with
${PERPLEX_EXECUTABLE}"
)
@@ -235,7 +239,7 @@
add_custom_command(
OUTPUT ${${PVAR_PREFIX}_OUT_SRC_FILE}
COMMAND ${RE2C_EXECUTABLE} --no-debug-info --no-generation-date -c -o
${${PVAR_PREFIX}_OUT_SRC_FILE} ${re2c_src}
- DEPENDS ${Input} ${re2c_src} ${${PVAR_PREFIX}_OUT_HDR_FILE}
${PERPLEX_EXECUTABLE_TARGET} ${RE2C_EXECUTABLE_TARGET}
+ DEPENDS ${Input} ${re2c_src} ${${PVAR_PREFIX}_OUT_HDR_FILE}
${PERPLEX_EXECUTABLE_TARGET} ${RE2C_EXECUTABLE_TARGET} ${DEP_TARGET}
WORKING_DIRECTORY ${${PVAR_PREFIX}_WORKING_DIR}
COMMENT "[RE2C][${Name}] Building scanner with ${RE2C_EXECUTABLE}"
)
@@ -243,7 +247,7 @@
add_custom_command(
OUTPUT ${${PVAR_PREFIX}_OUT_SRC_FILE}
COMMAND ${RE2C_EXECUTABLE} --no-generation-date -c -o
${${PVAR_PREFIX}_OUT_SRC_FILE} ${re2c_src}
- DEPENDS ${Input} ${re2c_src} ${${PVAR_PREFIX}_OUT_HDR_FILE}
${PERPLEX_EXECUTABLE_TARGET} ${RE2C_EXECUTABLE_TARGET}
+ DEPENDS ${Input} ${re2c_src} ${${PVAR_PREFIX}_OUT_HDR_FILE}
${PERPLEX_EXECUTABLE_TARGET} ${RE2C_EXECUTABLE_TARGET} ${DEP_TARGET}
WORKING_DIRECTORY ${${PVAR_PREFIX}_WORKING_DIR}
COMMENT "[RE2C][${Name}] Building scanner with ${RE2C_EXECUTABLE}"
)
Modified:
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMakeLists.txt
===================================================================
---
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMakeLists.txt
2020-10-09 19:31:02 UTC (rev 77394)
+++
brlcad/branches/thirdparty_rework/src/libgcv/plugins/obj/wfobj/CMakeLists.txt
2020-10-09 19:44:40 UTC (rev 77395)
@@ -80,7 +80,6 @@
find_package(LEMON REQUIRED)
find_package(RE2C REQUIRED)
find_package(PERPLEX REQUIRED)
-message("LEMON_TEMPLATE: ${LEMON_TEMPLATE}")
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/WFBOBJ_SCANNER_SO")
set(WFOBJ_SCANNER_WORKING_DIR "${CMAKE_CURRENT_BINARY_DIR}/WFBOBJ_SCANNER_SO")
Modified:
brlcad/branches/thirdparty_rework/src/superbuild/CMake/ExternalProject_Target.cmake
===================================================================
---
brlcad/branches/thirdparty_rework/src/superbuild/CMake/ExternalProject_Target.cmake
2020-10-09 19:31:02 UTC (rev 77394)
+++
brlcad/branches/thirdparty_rework/src/superbuild/CMake/ExternalProject_Target.cmake
2020-10-09 19:44:40 UTC (rev 77395)
@@ -365,7 +365,8 @@
string(REPLACE "${BIN_DIR}/" "" ENAME ${E_EXEC})
fcfgcpy(TOUT ${extproj} ${extroot} ${BIN_DIR} ${E_EXEC} ${ENAME})
- ET_target_props(${etarg} "${E_IMPORT_PREFIX}" ${E_EXEC} EXEC)
+ string(REPLACE "${BIN_DIR}/" "" ENAME ${E_EXEC})
+ ET_target_props(${etarg} "${E_IMPORT_PREFIX}" ${ENAME} EXEC)
install(PROGRAMS "${CMAKE_BINARY_DIR}/$<CONFIG>/${E_EXEC}" DESTINATION
${BIN_DIR}/${E_SUBDIR})
# Let CMake know there is a target dependency here, despite this being an
import target
Modified: brlcad/branches/thirdparty_rework/src/superbuild/perplex.cmake
===================================================================
--- brlcad/branches/thirdparty_rework/src/superbuild/perplex.cmake
2020-10-09 19:31:02 UTC (rev 77394)
+++ brlcad/branches/thirdparty_rework/src/superbuild/perplex.cmake
2020-10-09 19:44:40 UTC (rev 77395)
@@ -30,10 +30,10 @@
)
set(LEMON_TEMPLATE
"${CMAKE_BINARY_DIR}/$<CONFIG>/${DATA_DIR}/lemon/lempar.c" CACHE PATH "lemon
template" FORCE)
- set(LEMON_EXECUTABLE
"${CMAKE_BINARY_DIR}/$<CONFIG>/${BIN_DIR}/lemon${EXE_EXT}" CACHE PATH "lemon"
FORCE)
-
set(PERPLEX_TEMPLATE
"${CMAKE_BINARY_DIR}/$<CONFIG>/${DATA_DIR}/perplex/perplex_template.c" CACHE
PATH "perplex template" FORCE)
- set(PERPLEX_EXECUTABLE
"${CMAKE_BINARY_DIR}/$<CONFIG>/${BIN_DIR}/perplex${EXE_EXT}" CACHE PATH
"perplex" FORCE)
+ set(LEMON_EXECUTABLE perplex_lemon CACHE STRING "lemon" FORCE)
+ set(RE2C_EXECUTABLE perplex_re2c CACHE STRING "re2c" FORCE)
+ set(PERPLEX_EXECUTABLE perplex_perplex CACHE STRING "perplex" FORCE)
endif (BRLCAD_LEVEL2)
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits