Revision: 77929
http://sourceforge.net/p/brlcad/code/77929
Author: starseeker
Date: 2020-12-04 18:40:49 +0000 (Fri, 04 Dec 2020)
Log Message:
-----------
Pull in the majority (though not quite all) of the Find* module updates and
their associated CMakeLists.txt adjustments from extbuild, altering the
existing src/other/CMakeLists.txt to define the newer variables in a couple of
cases.
Modified Paths:
--------------
brlcad/trunk/misc/CMake/CMakeLists.txt
brlcad/trunk/misc/CMake/FindLEMON.cmake
brlcad/trunk/misc/CMake/FindNETPBM.cmake
brlcad/trunk/misc/CMake/FindOPENNURBS.cmake
brlcad/trunk/misc/CMake/FindPERPLEX.cmake
brlcad/trunk/misc/CMake/FindRE2C.cmake
brlcad/trunk/misc/CMake/FindTCL.cmake
brlcad/trunk/misc/CMake/FindUTAHRLE.cmake
brlcad/trunk/src/external/Creo/CMakeLists.txt
brlcad/trunk/src/external/Cubit/CMakeLists.txt
brlcad/trunk/src/external/Unigraphics/CMakeLists.txt
brlcad/trunk/src/libbg/CMakeLists.txt
brlcad/trunk/src/libbrep/CMakeLists.txt
brlcad/trunk/src/libbu/CMakeLists.txt
brlcad/trunk/src/libdm/wgl/CMakeLists.txt
brlcad/trunk/src/libgcv/plugins/gdal/CMakeLists.txt
brlcad/trunk/src/libgcv/plugins/obj/wfobj/CMake/FindLEMON.cmake
brlcad/trunk/src/libgcv/plugins/obj/wfobj/CMake/FindPERPLEX.cmake
brlcad/trunk/src/libtclcad/CMakeLists.txt
brlcad/trunk/src/mged/CMakeLists.txt
brlcad/trunk/src/other/CMakeLists.txt
brlcad/trunk/src/rt/CMakeLists.txt
brlcad/trunk/src/rtwizard/CMakeLists.txt
brlcad/trunk/src/util/CMakeLists.txt
Removed Paths:
-------------
brlcad/trunk/misc/CMake/FindSSE.cmake
Modified: brlcad/trunk/misc/CMake/CMakeLists.txt
===================================================================
--- brlcad/trunk/misc/CMake/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/misc/CMake/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev
77929)
@@ -46,7 +46,6 @@
FindRE2C.cmake
FindREGEX.cmake
FindSCL.cmake
- FindSSE.cmake
FindSTL.cmake
FindShellDeps.cmake
FindSTEPCODE.cmake
@@ -103,8 +102,8 @@
multiconfig_path_read.cmake.in
source_archive_setup.cmake.in
tcltest.tcl.in
+ scripts/printtime.cmake
scripts/timestamp.cmake
- scripts/printtime.cmake
scripts/tcl_mkindex.cmake
)
CMAKEFILES(${cmake_ignore_files})
Modified: brlcad/trunk/misc/CMake/FindLEMON.cmake
===================================================================
--- brlcad/trunk/misc/CMake/FindLEMON.cmake 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/misc/CMake/FindLEMON.cmake 2020-12-04 18:40:49 UTC (rev
77929)
@@ -44,9 +44,35 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
-find_program(LEMON_EXECUTABLE lemon DOC "path to the lemon executable")
+set(_LEMON_SEARCHES)
+
+# Search LEMON_ROOT first if it is set.
+if(LEMON_ROOT)
+ set(_LEMON_SEARCH_ROOT PATHS ${LEMON_ROOT} NO_DEFAULT_PATH)
+ list(APPEND _LEMON_SEARCHES _LEMON_SEARCH_ROOT)
+endif()
+
+# Normal search.
+set(_LEMON_x86 "(x86)")
+set(_LEMON_SEARCH_NORMAL
+ PATHS "$ENV{ProgramFiles}/lemon"
+ "$ENV{ProgramFiles${_LEMON_x86}}/lemon")
+unset(_LEMON_x86)
+list(APPEND _LEMON_SEARCHES _LEMON_SEARCH_NORMAL)
+
+set(LEMON_NAMES lemon)
+
+# Try each search configuration.
+foreach(search ${_LEMON_SEARCHES})
+ find_program(LEMON_EXECUTABLE lemon ${${search}} PATH_SUFFIXES bin)
+endforeach()
mark_as_advanced(LEMON_EXECUTABLE)
+foreach(search ${_LEMON_SEARCHES})
+ find_file(LEMON_TEMPLATE lempar.c ${${search}} PATH_SUFFIXES ${DATA_DIR}
${DATA_DIR}/lemon)
+endforeach()
+mark_as_advanced(LEMON_TEMPLATE)
+
if (LEMON_EXECUTABLE AND NOT LEMON_TEMPLATE)
# look for the template in share
if (DATA_DIR AND EXISTS "${DATA_DIR}/lemon/lempar.c")
@@ -113,6 +139,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}")
@@ -160,8 +190,8 @@
add_custom_command(
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} -l -T${LEMON_TEMPLATE}
${${LVAR_PREFIX}_WORKING_DIR}/${INPUT_NAME} ${${LVAR_PREFIX}__EXTRA_ARGS}
- DEPENDS ${Input} ${LEMON_TEMPLATE} ${LEMON_EXECUTABLE_TARGET}
+ COMMAND ${LEMON_EXECUTABLE} -T${LEMON_TEMPLATE}
${${LVAR_PREFIX}_WORKING_DIR}/${INPUT_NAME} ${${LVAR_PREFIX}__EXTRA_ARGS}
+ DEPENDS ${Input} ${LEMON_EXECUTABLE_TARGET} ${DEPS_TARGET}
WORKING_DIRECTORY ${${LVAR_PREFIX}_WORKING_DIR}
COMMENT "[LEMON][${Name}] Building parser with ${LEMON_EXECUTABLE}"
)
@@ -171,7 +201,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 +209,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/trunk/misc/CMake/FindNETPBM.cmake
===================================================================
--- brlcad/trunk/misc/CMake/FindNETPBM.cmake 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/misc/CMake/FindNETPBM.cmake 2020-12-04 18:40:49 UTC (rev
77929)
@@ -1,59 +1,102 @@
-# F I N D N E T P B M . 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.
-#
-###
-# - Find netpbm library and headers
-#
-# The following variables are set:
-#
-# NETPBM_LIBRARIES - libnetpbm
-# NETPBM_INCLUDE_DIRS - where to find ppm.h, pam.h, pbm.h, etc.
-# NETPBM_FOUND - True if libnetpbm and header found.
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
-find_path(NETPBM_INCLUDE_DIR pam.h)
-find_library(NETPBM_LIBRARY NAMES netpbm)
+#[=======================================================================[.rst:
+FindNETPBM
+--------
+Find the native NETPBM includes and library.
+
+IMPORTED Targets
+^^^^^^^^^^^^^^^^
+
+This module defines :prop_tgt:`IMPORTED` target ``NETPBM::NETPBM``, if
+NETPBM has been found.
+
+Result Variables
+^^^^^^^^^^^^^^^^
+
+This module defines the following variables:
+
+::
+
+ NETPBM_INCLUDE_DIRS - where to find pam.h, etc.
+ NETPBM_LIBRARIES - List of libraries when using netpbm.
+ NETPBM_FOUND - True if netpbm found.
+
+Hints
+^^^^^
+
+A user may set ``NETPBM_ROOT`` to a netpbm installation root to tell this
+module where to look.
+#]=======================================================================]
+
+set(_NETPBM_SEARCHES)
+
+# Search NETPBM_ROOT first if it is set.
+if(NETPBM_ROOT)
+ set(_NETPBM_SEARCH_ROOT PATHS ${NETPBM_ROOT} NO_DEFAULT_PATH)
+ list(APPEND _NETPBM_SEARCHES _NETPBM_SEARCH_ROOT)
+endif()
+
+# Normal search.
+set(_NETPBM_x86 "(x86)")
+set(_NETPBM_SEARCH_NORMAL
+ PATHS "$ENV{ProgramFiles}/netpbm"
+ "$ENV{ProgramFiles${_NETPBM_x86}}/netpbm")
+unset(_NETPBM_x86)
+list(APPEND _NETPBM_SEARCHES _NETPBM_SEARCH_NORMAL)
+
+set(NETPBM_NAMES netpbm)
+
+# Try each search configuration.
+foreach(search ${_NETPBM_SEARCHES})
+ find_path(NETPBM_INCLUDE_DIR NAMES pam.h ${${search}} PATH_SUFFIXES include
include/netpbm netpbm)
+endforeach()
+
+# Allow NETPBM_LIBRARY to be set manually, as the location of the netpbm
library
+if(NOT NETPBM_LIBRARY)
+ foreach(search ${_NETPBM_SEARCHES})
+ find_library(NETPBM_LIBRARY NAMES ${NETPBM_NAMES} NAMES_PER_DIR
${${search}} PATH_SUFFIXES lib)
+ endforeach()
+endif()
+
+unset(NETPBM_NAMES)
+
+mark_as_advanced(NETPBM_INCLUDE_DIR)
+
include(FindPackageHandleStandardArgs)
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(NETPBM DEFAULT_MSG NETPBM_LIBRARY
NETPBM_INCLUDE_DIR)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(NETPBM REQUIRED_VARS NETPBM_LIBRARY
NETPBM_INCLUDE_DIR)
-IF (NETPBM_FOUND)
- set(NETPBM_INCLUDE_DIRS ${NETPBM_INCLUDE_DIR})
- set(NETPBM_LIBRARIES ${NETPBM_LIBRARY})
+if(NETPBM_FOUND)
+ set(NETPBM_INCLUDE_DIRS ${NETPBM_INCLUDE_DIR})
+
+ if(NOT NETPBM_LIBRARIES)
+ set(NETPBM_LIBRARIES ${NETPBM_LIBRARY})
+ endif()
+
+ if(NOT TARGET NETPBM::NETPBM)
+ add_library(NETPBM::NETPBM UNKNOWN IMPORTED)
+ set_target_properties(NETPBM::NETPBM PROPERTIES
+ INTERFACE_INCLUDE_DIRECTORIES "${NETPBM_INCLUDE_DIRS}")
+
+ if(NETPBM_LIBRARY_RELEASE)
+ set_property(TARGET NETPBM::NETPBM APPEND PROPERTY
+ IMPORTED_CONFIGURATIONS RELEASE)
+ set_target_properties(NETPBM::NETPBM PROPERTIES
+ IMPORTED_LOCATION_RELEASE "${NETPBM_LIBRARY_RELEASE}")
+ endif()
+
+ if(NETPBM_LIBRARY_DEBUG)
+ set_property(TARGET NETPBM::NETPBM APPEND PROPERTY
+ IMPORTED_CONFIGURATIONS DEBUG)
+ set_target_properties(NETPBM::NETPBM PROPERTIES
+ IMPORTED_LOCATION_DEBUG "${NETPBM_LIBRARY_DEBUG}")
+ endif()
+
+ if(NOT NETPBM_LIBRARY_RELEASE AND NOT NETPBM_LIBRARY_DEBUG)
+ set_property(TARGET NETPBM::NETPBM APPEND PROPERTY
+ IMPORTED_LOCATION "${NETPBM_LIBRARY}")
+ endif()
+ endif()
endif()
-# Local Variables:
-# tab-width: 8
-# mode: cmake
-# indent-tabs-mode: t
-# End:
-# ex: shiftwidth=2 tabstop=8
Modified: brlcad/trunk/misc/CMake/FindOPENNURBS.cmake
===================================================================
--- brlcad/trunk/misc/CMake/FindOPENNURBS.cmake 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/misc/CMake/FindOPENNURBS.cmake 2020-12-04 18:40:49 UTC (rev
77929)
@@ -1,63 +1,102 @@
-# F I N D O P E N N U R B S . 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.
-#
-###
-# - Find OpenNURBS
-#
-# The following variables are set:
-#
-# OPENNURBS_INCLUDE_DIRS - where to find opennurbs.h, etc.
-# OPENNURBS_LIBRARIES - List of libraries when using openNURBS
-# OPENNURBS_FOUND - True if openNURBS found.
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
-# OpenNURBS requires zlib
-find_package(ZLIB)
+#[=======================================================================[.rst:
+FindOPENNURBS
+--------
-find_path(OPENNURBS_INCLUDE_DIR opennurbs.h)
-find_library(OPENNURBS_LIBRARY NAMES opennurbs openNURBS OpenNURBS)
+Find the native OPENNURBS includes and library.
+IMPORTED Targets
+^^^^^^^^^^^^^^^^
+
+This module defines :prop_tgt:`IMPORTED` target ``OPENNURBS::OPENNURBS``, if
+OPENNURBS has been found.
+
+Result Variables
+^^^^^^^^^^^^^^^^
+
+This module defines the following variables:
+
+::
+
+ OPENNURBS_INCLUDE_DIRS - where to find opennurbs.h, etc.
+ OPENNURBS_LIBRARIES - List of libraries when using openNURBS.
+ OPENNURBS_FOUND - True if openNURBS found.
+
+Hints
+^^^^^
+
+A user may set ``OPENNURBS_ROOT`` to a openNURBS installation root to tell this
+module where to look.
+#]=======================================================================]
+
+set(_OPENNURBS_SEARCHES)
+
+# Search OPENNURBS_ROOT first if it is set.
+if(OPENNURBS_ROOT)
+ set(_OPENNURBS_SEARCH_ROOT PATHS ${OPENNURBS_ROOT} NO_DEFAULT_PATH)
+ list(APPEND _OPENNURBS_SEARCHES _OPENNURBS_SEARCH_ROOT)
+endif()
+
+# Normal search.
+set(_OPENNURBS_x86 "(x86)")
+set(_OPENNURBS_SEARCH_NORMAL
+ PATHS "$ENV{ProgramFiles}/openNURBS"
+ "$ENV{ProgramFiles${_OPENNURBS_x86}}/openNURBS")
+unset(_OPENNURBS_x86)
+list(APPEND _OPENNURBS_SEARCHES _OPENNURBS_SEARCH_NORMAL)
+
+set(OPENNURBS_NAMES openNURBS)
+
+# Try each search configuration.
+foreach(search ${_OPENNURBS_SEARCHES})
+ find_path(OPENNURBS_INCLUDE_DIR NAMES opennurbs.h ${${search}} PATH_SUFFIXES
include include/openNURBS openNURBS)
+endforeach()
+
+# Allow OPENNURBS_LIBRARY to be set manually, as the location of the openNURBS
library
+if(NOT OPENNURBS_LIBRARY)
+ foreach(search ${_OPENNURBS_SEARCHES})
+ find_library(OPENNURBS_LIBRARY NAMES ${OPENNURBS_NAMES} NAMES_PER_DIR
${${search}} PATH_SUFFIXES lib)
+ endforeach()
+endif()
+
+unset(OPENNURBS_NAMES)
+
+mark_as_advanced(OPENNURBS_INCLUDE_DIR)
+
include(FindPackageHandleStandardArgs)
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(OPENNURBS DEFAULT_MSG OPENNURBS_LIBRARY
OPENNURBS_INCLUDE_DIR)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(OPENNURBS REQUIRED_VARS OPENNURBS_LIBRARY
OPENNURBS_INCLUDE_DIR)
if(OPENNURBS_FOUND)
- set(OPENNURBS_INCLUDE_DIRS ${OPENNURBS_INCLUDE_DIR} ${ZLIB_INCLUDE_DIR})
- list(REMOVE_DUPLICATES OPENNURBS_INCLUDE_DIR)
- set(OPENNURBS_LIBRARIES ${OPENNURBS_LIBRARY} ${ZLIB_LIBRARY})
+ set(OPENNURBS_INCLUDE_DIRS ${OPENNURBS_INCLUDE_DIR})
+
+ if(NOT OPENNURBS_LIBRARIES)
+ set(OPENNURBS_LIBRARIES ${OPENNURBS_LIBRARY})
+ endif()
+
+ if(NOT TARGET OPENNURBS::OPENNURBS)
+ add_library(OPENNURBS::OPENNURBS UNKNOWN IMPORTED)
+ set_target_properties(OPENNURBS::OPENNURBS PROPERTIES
+ INTERFACE_INCLUDE_DIRECTORIES "${OPENNURBS_INCLUDE_DIRS}")
+
+ if(OPENNURBS_LIBRARY_RELEASE)
+ set_property(TARGET OPENNURBS::OPENNURBS APPEND PROPERTY
+ IMPORTED_CONFIGURATIONS RELEASE)
+ set_target_properties(OPENNURBS::OPENNURBS PROPERTIES
+ IMPORTED_LOCATION_RELEASE "${OPENNURBS_LIBRARY_RELEASE}")
+ endif()
+
+ if(OPENNURBS_LIBRARY_DEBUG)
+ set_property(TARGET OPENNURBS::OPENNURBS APPEND PROPERTY
+ IMPORTED_CONFIGURATIONS DEBUG)
+ set_target_properties(OPENNURBS::OPENNURBS PROPERTIES
+ IMPORTED_LOCATION_DEBUG "${OPENNURBS_LIBRARY_DEBUG}")
+ endif()
+
+ if(NOT OPENNURBS_LIBRARY_RELEASE AND NOT OPENNURBS_LIBRARY_DEBUG)
+ set_property(TARGET OPENNURBS::OPENNURBS APPEND PROPERTY
+ IMPORTED_LOCATION "${OPENNURBS_LIBRARY}")
+ endif()
+ endif()
endif()
-# Local Variables:
-# tab-width: 8
-# mode: cmake
-# indent-tabs-mode: t
-# End:
-# ex: shiftwidth=2 tabstop=8
Modified: brlcad/trunk/misc/CMake/FindPERPLEX.cmake
===================================================================
--- brlcad/trunk/misc/CMake/FindPERPLEX.cmake 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/misc/CMake/FindPERPLEX.cmake 2020-12-04 18:40:49 UTC (rev
77929)
@@ -44,9 +44,35 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
-find_program(PERPLEX_EXECUTABLE perplex DOC "path to the perplex executable")
+set(_PERPLEX_SEARCHES)
+
+# Search PERPLEX_ROOT first if it is set.
+if(PERPLEX_ROOT)
+ set(_PERPLEX_SEARCH_ROOT PATHS ${PERPLEX_ROOT} NO_DEFAULT_PATH)
+ list(APPEND _PERPLEX_SEARCHES _PERPLEX_SEARCH_ROOT)
+endif()
+
+# Normal search.
+set(_PERPLEX_x86 "(x86)")
+set(_PERPLEX_SEARCH_NORMAL
+ PATHS "$ENV{ProgramFiles}/perplex"
+ "$ENV{ProgramFiles${_PERPLEX_x86}}/perplex")
+unset(_PERPLEX_x86)
+list(APPEND _PERPLEX_SEARCHES _PERPLEX_SEARCH_NORMAL)
+
+set(PERPLEX_NAMES perplex)
+
+# Try each search configuration.
+foreach(search ${_PERPLEX_SEARCHES})
+ find_program(PERPLEX_EXECUTABLE perplex ${${search}} PATH_SUFFIXES bin)
+endforeach()
mark_as_advanced(PERPLEX_EXECUTABLE)
+foreach(search ${_PERPLEX_SEARCHES})
+ find_file(PERPLEX_TEMPLATE perplex_template.c ${${search}} PATH_SUFFIXES
${DATA_DIR} ${DATA_DIR}/perplex)
+endforeach()
+mark_as_advanced(PERPLEX_TEMPLATE)
+
if(PERPLEX_EXECUTABLE AND NOT PERPLEX_TEMPLATE)
get_filename_component(perplex_path ${PERPLEX_EXECUTABLE} PATH)
if(perplex_path)
@@ -141,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)
@@ -200,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}"
)
@@ -209,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}"
)
@@ -217,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/trunk/misc/CMake/FindRE2C.cmake
===================================================================
--- brlcad/trunk/misc/CMake/FindRE2C.cmake 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/misc/CMake/FindRE2C.cmake 2020-12-04 18:40:49 UTC (rev
77929)
@@ -3,7 +3,29 @@
#
#=============================================================================
-find_program(RE2C_EXECUTABLE re2c DOC "path to the re2c executable")
+set(_RE2C_SEARCHES)
+
+# Search RE2C_ROOT first if it is set.
+if(RE2C_ROOT)
+ set(_RE2C_SEARCH_ROOT PATHS ${RE2C_ROOT} NO_DEFAULT_PATH)
+ list(APPEND _RE2C_SEARCHES _RE2C_SEARCH_ROOT)
+endif()
+
+# Normal search.
+set(_RE2C_x86 "(x86)")
+set(_RE2C_SEARCH_NORMAL
+ PATHS "$ENV{ProgramFiles}/re2c"
+ "$ENV{ProgramFiles${_RE2C_x86}}/re2c")
+unset(_RE2C_x86)
+list(APPEND _RE2C_SEARCHES _RE2C_SEARCH_NORMAL)
+
+set(RE2C_NAMES re2c)
+
+# Try each search configuration.
+foreach(search ${_RE2C_SEARCHES})
+ find_program(RE2C_EXECUTABLE re2c ${${search}} PATH_SUFFIXES bin)
+endforeach()
+
mark_as_advanced(RE2C_EXECUTABLE)
include(FindPackageHandleStandardArgs)
Deleted: brlcad/trunk/misc/CMake/FindSSE.cmake
===================================================================
--- brlcad/trunk/misc/CMake/FindSSE.cmake 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/misc/CMake/FindSSE.cmake 2020-12-04 18:40:49 UTC (rev
77929)
@@ -1,166 +0,0 @@
-# Copyright (c) 2016- Facebook, Inc (Adam Paszke)
-# Copyright (c) 2014- Facebook, Inc (Soumith Chintala)
-# Copyright (c) 2011-2014 Idiap Research Institute (Ronan Collobert)
-# Copyright (c) 2012-2014 Deepmind Technologies (Koray Kavukcuoglu)
-# Copyright (c) 2011-2012 NEC Laboratories America (Koray Kavukcuoglu)
-# Copyright (c) 2011-2013 NYU (Clement Farabet)
-# Copyright (c) 2006-2010 NEC Laboratories America (Ronan Collobert, Leon
Bottou, Iain Melvin, Jason Weston)
-# Copyright (c) 2006 Idiap Research Institute (Samy Bengio)
-# Copyright (c) 2001-2004 Idiap Research Institute (Ronan Collobert, Samy
Bengio, Johnny Mariethoz)
-#
-# All rights reserved.
-#
-# 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. Neither the names of Facebook, Deepmind Technologies, NYU, NEC
Laboratories America
-# and IDIAP Research Institute nor the names of its contributors may be
-# used to endorse or promote products derived from this software without
-# specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "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 COPYRIGHT OWNER OR CONTRIBUTORS 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.
-
-include(CheckCSourceRuns)
-include(CheckCXXSourceRuns)
-
-set(SSE1_CODE "
- #include <xmmintrin.h>
-
- int main()
- {
- __m128 a;
- float vals[4] = {0,0,0,0};
- a = _mm_loadu_ps(vals);
- return 0;
- }")
-
-set(SSE2_CODE "
- #include <emmintrin.h>
-
- int main()
- {
- __m128d a;
- double vals[2] = {0,0};
- a = _mm_loadu_pd(vals);
- return 0;
- }")
-
-set(SSE3_CODE "
- #include <pmmintrin.h>
-
- int main( )
- {
- const int vals[4] = {0,0,0,0};
- __m128i a;
- a = _mm_lddqu_si128( (const __m128i*)vals );
- return 0;
- }")
-
-set(SSE4_1_CODE "
- #include <smmintrin.h>
-
- int main ()
- {
- __m128i a = {0,0,0,0}, b = {0,0,0,0};
- __m128i res = _mm_max_epi8(a, b);
-
- return 0;
- }
-")
-
-set(SSE4_2_CODE "
- #include <nmmintrin.h>
-
- int main()
- {
- __m128i a = {0,0,0,0}, b = {0,0,0,0}, c = {0,0,0,0};
- c = _mm_cmpgt_epi64(a, b);
- return 0;
- }
-")
-
-set(AVX_CODE "
- #include <immintrin.h>
-
- int main()
- {
- __m256 a;
- a = _mm256_set1_ps(0);
- return 0;
- }
-")
-
-set(AVX2_CODE "
- #include <immintrin.h>
-
- int main()
- {
- __m256i a = {0};
- a = _mm256_abs_epi16(a);
- return 0;
- }
-")
-
-macro(CHECK_SSE lang type flags)
- set(__FLAG_I 1)
- set(CMAKE_REQUIRED_FLAGS_SAVE ${CMAKE_REQUIRED_FLAGS})
- foreach(__FLAG ${flags})
- if(NOT ${lang}_${type}_FOUND)
- set(CMAKE_REQUIRED_FLAGS ${__FLAG})
- if("${lang}" STREQUAL "CXX")
- CHECK_CXX_SOURCE_RUNS("${${type}_CODE}"
"${lang}_HAS_${type}_${__FLAG_I}")
- else()
- CHECK_C_SOURCE_RUNS("${${type}_CODE}"
"${lang}_HAS_${type}_${__FLAG_I}")
- endif("${lang}" STREQUAL "CXX")
- if(${lang}_HAS_${type}_${__FLAG_I})
- set(${lang}_${type}_FOUND TRUE CACHE BOOL "${lang} ${type} support")
- set(${lang}_${type}_FLAGS "${__FLAG}" CACHE STRING "${lang} ${type}
flags")
- endif(${lang}_HAS_${type}_${__FLAG_I})
- math(EXPR __FLAG_I "${__FLAG_I}+1")
- endif(NOT ${lang}_${type}_FOUND)
- endforeach(__FLAG ${flags})
- set(CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS_SAVE})
-
- if(NOT ${lang}_${type}_FOUND)
- set(${lang}_${type}_FOUND FALSE CACHE BOOL "${lang} ${type} support")
- set(${lang}_${type}_FLAGS "" CACHE STRING "${lang} ${type} flags")
- endif(NOT ${lang}_${type}_FOUND)
-
- mark_as_advanced(${lang}_${type}_FOUND ${lang}_${type}_FLAGS)
-
-endmacro(CHECK_SSE)
-
-# Examples:
-
-# CHECK_SSE(C "SSE1" " ;-msse;/arch:SSE")
-# CHECK_SSE(C "SSE2" " ;-msse2;/arch:SSE2")
-# CHECK_SSE(C "SSE3" " ;-msse3;/arch:SSE3")
-# CHECK_SSE(C "SSE4_1" " ;-msse4.1;-msse4;/arch:SSE4")
-# CHECK_SSE(C "SSE4_2" " ;-msse4.2;-msse4;/arch:SSE4")
-# CHECK_SSE(C "AVX" " ;-mavx;/arch:AVX")
-# CHECK_SSE(C "AVX2" " ;-mavx2 -mfma;/arch:AVX2")
-
-# CHECK_SSE(CXX "SSE1" " ;-msse;/arch:SSE")
-# CHECK_SSE(CXX "SSE2" " ;-msse2;/arch:SSE2")
-# CHECK_SSE(CXX "SSE3" " ;-msse3;/arch:SSE3")
-# CHECK_SSE(CXX "SSE4_1" " ;-msse4.1;-msse4;/arch:SSE4")
-# CHECK_SSE(CXX "SSE4_2" " ;-msse4.2;-msse4;/arch:SSE4")
-# CHECK_SSE(CXX "AVX" " ;-mavx;/arch:AVX")
-# CHECK_SSE(CXX "AVX2" " ;-mavx2 -mfma;/arch:AVX2")
Modified: brlcad/trunk/misc/CMake/FindTCL.cmake
===================================================================
--- brlcad/trunk/misc/CMake/FindTCL.cmake 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/misc/CMake/FindTCL.cmake 2020-12-04 18:40:49 UTC (rev
77929)
@@ -11,24 +11,39 @@
::
- TCL_FOUND = Tcl was found
- TK_FOUND = Tk was found
- TCLTK_FOUND = Tcl and Tk were found
- TCLSH_FOUND = TRUE if tclsh has been found
- TCL_LIBRARY = path to Tcl library (tcl tcl80)
- TCL_INCLUDE_PATH = path to where tcl.h can be found
- TCL_TCLSH = path to tclsh binary (tcl tcl80)
- TK_LIBRARY = path to Tk library (tk tk80 etc)
- TK_INCLUDE_PATH = path to where tk.h can be found
- TK_WISH = full path to the wish executable
- TCL_STUB_LIBRARY = path to Tcl stub library
- TK_STUB_LIBRARY = path to Tk stub library
- TTK_STUB_LIBRARY = path to ttk stub library
+TCL_FOUND = Tcl was found
+TCLSH_FOUND = TRUE if tclsh has been found
+TCL_LIBRARY = path to Tcl library (tcl tcl80)
+TCL_INCLUDE_PATH = path to where tcl.h can be found
+TCL_TCLSH = path to tclsh binary (tcl tcl80)
+
+
+If TCL_ENABLE_TK is set, the following are also set:
+
+::
+
+TK_FOUND = Tk was found
+TCLTK_FOUND = Tcl and Tk were found
+TK_LIBRARY = path to Tk library (tk tk80 etc)
+TK_INCLUDE_PATH = path to where tk.h can be found
+TK_WISH = full path to the wish executable
+TCL_STUB_LIBRARY = path to Tcl stub library
+TK_STUB_LIBRARY = path to Tk stub library
+TTK_STUB_LIBRARY = path to ttk stub library
+
#]=======================================================================]
include(CMakeFindFrameworks)
+set(_TCL_SEARCHES)
+
+# Search TCL_ROOT first if it is set.
+if(TCL_ROOT)
+ set(_TCL_SEARCH_ROOT PATHS ${TCL_ROOT} NO_DEFAULT_PATH)
+ list(APPEND _TCL_SEARCHES _TCL_SEARCH_ROOT)
+endif()
+
if(WIN32)
get_filename_component(
ActiveTcl_CurrentVersion
@@ -44,8 +59,8 @@
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.0;Root]/bin"
)
- get_filename_component(
- ActiveTcl_CurrentVersion
+ get_filename_component(
+ ActiveTcl_CurrentVersion
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl;CurrentVersion]"
NAME)
set(TCLTK_POSSIBLE_LIB_PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
@@ -61,7 +76,7 @@
"C:/Tcl/lib"
)
- set(TCLTK_POSSIBLE_INCLUDE_PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS}
+ set(TCLTK_POSSIBLE_INCLUDE_PATHS ${TCLTK_POSSIBLE_INCLUDE_PATHS}
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\ActiveState\\ActiveTcl\\${ActiveTcl_CurrentVersion}]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.6;Root]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Scriptics\\Tcl\\8.5;Root]/include"
@@ -87,35 +102,40 @@
tclsh80 tclsh8.0
)
if(CYGWIN)
- set(TCL_TCLSH_NAMES ${TCL_TCLSH_NAMES} cygtclsh83 cygtclsh80)
+ set(TCL_TCLSH_NAMES ${TCL_TCLSH_NAMES} cygtclsh83 cygtclsh80)
endif(CYGWIN)
+foreach(search ${_TCL_SEARCHES})
+ find_program(TCL_TCLSH NAMES ${TCL_TCLSH_NAMES} ${${search}} PATH_SUFFIXES
bin)
+endforeach()
+if (NOT TCL_TCLSH)
+ find_program(TCL_TCLSH NAMES ${TCL_TCLSH_NAMES} HINTS
${TCLTK_POSSIBLE_BIN_PATHS})
+endif (NOT TCL_TCLSH)
-find_program(TCL_TCLSH
- NAMES ${TCL_TCLSH_NAMES}
- HINTS ${TCLTK_POSSIBLE_BIN_PATHS}
- )
+if (TCL_ENABLE_TK)
+ set(TK_WISH_NAMES
+ wish
+ wish${TCL_LIBRARY_VERSION} wish${TK_LIBRARY_VERSION}
wish${TCL_TCLSH_VERSION}
+ wish86 wish8.6
+ wish85 wish8.5
+ wish84 wish8.4
+ wish83 wish8.3
+ wish82 wish8.2
+ wish80 wish8.0
+ )
-set(TK_WISH_NAMES
- wish
- wish${TCL_LIBRARY_VERSION} wish${TK_LIBRARY_VERSION} wish${TCL_TCLSH_VERSION}
- wish86 wish8.6
- wish85 wish8.5
- wish84 wish8.4
- wish83 wish8.3
- wish82 wish8.2
- wish80 wish8.0
- )
+ if(CYGWIN)
+ set(TK_WISH_NAMES ${TK_WISH_NAMES} cygwish80 )
+ endif()
-if(CYGWIN)
- set(TK_WISH_NAMES ${TK_WISH_NAMES} cygwish80 )
-endif()
+ foreach(search ${_TCL_SEARCHES})
+ find_program(TK_WISH NAMES ${TK_WISH_NAMES} ${${search}} PATH_SUFFIXES bin)
+ endforeach()
+ if (NOT TK_WISH)
+ find_program(TK_WISH NAMES ${TK_WISH_NAMES} HINTS
${TCLTK_POSSIBLE_BIN_PATHS})
+ endif (NOT TK_WISH)
+endif (TCL_ENABLE_TK)
-find_program(TK_WISH
- NAMES ${TK_WISH_NAMES}
- HINTS ${TCLTK_POSSIBLE_BIN_PATHS}
- )
-
if(TCLSH_VERSION_STRING)
set(TCL_TCLSH_VERSION "${TCLSH_VERSION_STRING}")
else()
@@ -127,26 +147,37 @@
set(TCLTK_POSSIBLE_LIB_PATHS
"${TCL_INCLUDE_PATH_PARENT}/lib"
- "${TK_INCLUDE_PATH_PARENT}/lib"
"${TCL_LIBRARY_PATH}"
- "${TK_LIBRARY_PATH}"
"${TCL_TCLSH_PATH_PARENT}/lib"
- "${TK_WISH_PATH_PARENT}/lib"
-)
+ )
+if (TCL_ENABLE_TK)
+ set(TCLTK_POSSIBLE_LIB_PATHS
+ ${TCLTK_POSSIBLE_LIB_PATHS}
+ "${TK_INCLUDE_PATH_PARENT}/lib"
+ "${TK_LIBRARY_PATH}"
+ "${TK_WISH_PATH_PARENT}/lib"
+ )
+endif (TCL_ENABLE_TK)
set(TCLTK_POSSIBLE_LIB_PATH_SUFFIXES
+ lib
+ lib/tcl
lib/tcl/tcl8.7
- lib/tcl/tk8.7
lib/tcl/tcl8.6
- lib/tcl/tk8.6
lib/tcl/tcl8.5
- lib/tcl/tk8.5
lib/tcl/tcl8.4
- lib/tcl/tk8.4
-)
+ )
+if (TCL_ENABLE_TK)
+ set(TCLTK_POSSIBLE_LIB_PATH_SUFFIXES
+ ${TCLTK_POSSIBLE_LIB_PATH_SUFFIXES}
+ lib/tcl/tk8.7
+ lib/tcl/tk8.6
+ lib/tcl/tk8.5
+ lib/tcl/tk8.4
+ )
+endif (TCL_ENABLE_TK)
-find_library(TCL_LIBRARY
- NAMES
+set(TCL_POSSIBLE_LIB_NAMES
tcl
tcl${TCL_LIBRARY_VERSION} tcl${TCL_TCLSH_VERSION} tcl${TK_WISH_VERSION}
tcl87 tcl8.7 tcl87t tcl8.7t
@@ -156,12 +187,25 @@
tcl83 tcl8.3
tcl82 tcl8.2
tcl80 tcl8.0
- PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
- PATH_SUFFIXES ${TCLTK_POSSIBLE_LIB_PATH_SUFFIXES}
)
-find_library(TCL_STUB_LIBRARY
- NAMES
+if(NOT TCL_LIBRARY)
+ foreach(search ${_TCL_SEARCHES})
+ find_library(TCL_LIBRARY
+ NAMES ${TCL_POSSIBLE_LIB_NAMES}
+ NAMES_PER_DIR ${${search}}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_LIB_PATH_SUFFIXES})
+ endforeach()
+endif()
+if(NOT TCL_LIBRARY)
+ find_library(TCL_LIBRARY
+ NAMES ${TCL_POSSIBLE_LIB_NAMES}
+ PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_LIB_PATH_SUFFIXES}
+ )
+endif(NOT TCL_LIBRARY)
+
+set(TCLSTUB_POSSIBLE_LIB_NAMES
tclstub
tclstub${TK_LIBRARY_VERSION} tclstub${TCL_TCLSH_VERSION}
tclstub${TK_WISH_VERSION}
tclstub87 tclstub8.7
@@ -171,51 +215,111 @@
tclstub83 tclstub8.3
tclstub82 tclstub8.2
tclstub80 tclstub8.0
- PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
-)
-
-find_library(TK_LIBRARY
- NAMES
- tk
- tk${TK_LIBRARY_VERSION} tk${TCL_TCLSH_VERSION} tk${TK_WISH_VERSION}
- tk87 tk8.7 tk87t tk8.7t
- tk86 tk8.6 tk86t tk8.6t
- tk85 tk8.5
- tk84 tk8.4
- tk83 tk8.3
- tk82 tk8.2
- tk80 tk8.0
- PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
- PATH_SUFFIXES ${TCLTK_POSSIBLE_LIB_PATH_SUFFIXES}
)
+if(NOT TCL_STUB_LIBRARY)
+ foreach(search ${_TCL_SEARCHES})
+ find_library(TCL_STUB_LIBRARY
+ NAMES ${TCLSTUB_POSSIBLE_LIB_NAMES}
+ NAMES_PER_DIR ${${search}}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_LIB_PATH_SUFFIXES}
+ )
+ endforeach()
+endif()
+if(NOT TCL_STUB_LIBRARY)
+ find_library(TCL_STUB_LIBRARY
+ NAMES ${TCLSTUB_POSSIBLE_LIB_NAMES}
+ PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
+ )
+endif()
-find_library(TK_STUB_LIBRARY
- NAMES
- tkstub
- tkstub${TCL_LIBRARY_VERSION} tkstub${TCL_TCLSH_VERSION}
tkstub${TK_WISH_VERSION}
- tkstub87 tkstub8.7
- tkstub86 tkstub8.6
- tkstub85 tkstub8.5
- tkstub84 tkstub8.4
- tkstub83 tkstub8.3
- tkstub82 tkstub8.2
- tkstub80 tkstub8.0
- PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
-)
+if (TCL_ENABLE_TK)
+ set(TK_POSSIBLE_LIB_NAMES
+ tk
+ tk${TK_LIBRARY_VERSION} tk${TCL_TCLSH_VERSION} tk${TK_WISH_VERSION}
+ tk87 tk8.7 tk87t tk8.7t
+ tk86 tk8.6 tk86t tk8.6t
+ tk85 tk8.5
+ tk84 tk8.4
+ tk83 tk8.3
+ tk82 tk8.2
+ tk80 tk8.0
+ )
-find_library(TTK_STUB_LIBRARY
- NAMES
- ttkstub
- ttkstub${TCL_LIBRARY_VERSION} ttkstub${TCL_TCLSH_VERSION}
ttkstub${TK_WISH_VERSION}
- ttkstub88 ttkstub8.8
- ttkstub87 ttkstub8.7
- ttkstub86 ttkstub8.6
- ttkstub85 ttkstub8.5
- PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
-)
+ if(NOT TK_LIBRARY)
+ foreach(search ${_TCL_SEARCHES})
+ find_library(TK_LIBRARY
+ NAMES ${TK_POSSIBLE_LIB_NAMES}
+ NAMES_PER_DIR ${${search}}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_LIB_PATH_SUFFIXES}
+ )
+ endforeach()
+ endif()
+ if(NOT TK_LIBRARY)
+ find_library(TK_LIBRARY
+ NAMES ${TK_POSSIBLE_LIB_NAMES}
+ PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_LIB_PATH_SUFFIXES}
+ )
+ endif(NOT TK_LIBRARY)
+ set(TK_STUB_POSSIBLE_LIB_NAMES
+ tkstub
+ tkstub${TCL_LIBRARY_VERSION} tkstub${TCL_TCLSH_VERSION}
tkstub${TK_WISH_VERSION}
+ tkstub87 tkstub8.7
+ tkstub86 tkstub8.6
+ tkstub85 tkstub8.5
+ tkstub84 tkstub8.4
+ tkstub83 tkstub8.3
+ tkstub82 tkstub8.2
+ tkstub80 tkstub8.0
+ )
+
+ if(NOT TK_STUB_LIBRARY)
+ foreach(search ${_TCL_SEARCHES})
+ find_library(TK_STUB_LIBRARY
+ NAMES ${TK_STUB_POSSIBLE_LIB_NAMES}
+ NAMES_PER_DIR ${${search}}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_LIB_PATH_SUFFIXES}
+ )
+ endforeach()
+ endif()
+ if(NOT TK_STUB_LIBRARY)
+ find_library(TK_STUB_LIBRARY
+ NAMES ${TK_STUB_POSSIBLE_LIB_NAMES}
+ PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
+ )
+ endif()
+
+ set(TTK_STUB_POSSIBLE_LIB_NAMES
+ ttkstub
+ ttkstub${TCL_LIBRARY_VERSION} ttkstub${TCL_TCLSH_VERSION}
ttkstub${TK_WISH_VERSION}
+ ttkstub88 ttkstub8.8
+ ttkstub87 ttkstub8.7
+ ttkstub86 ttkstub8.6
+ ttkstub85 ttkstub8.5
+ )
+
+ if(NOT TTK_STUB_LIBRARY)
+ foreach(search ${_TCL_SEARCHES})
+ find_library(TTK_STUB_LIBRARY
+ NAMES ${TTK_STUB_POSSIBLE_LIB_NAMES}
+ NAMES_PER_DIR ${${search}}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_LIB_PATH_SUFFIXES}
+ )
+ endforeach()
+ endif()
+ if(NOT TTK_STUB_LIBRARY)
+ find_library(TTK_STUB_LIBRARY
+ NAMES ${TTK_STUB_POSSIBLE_LIB_NAMES}
+ PATHS ${TCLTK_POSSIBLE_LIB_PATHS}
+ )
+ endif()
+endif (TCL_ENABLE_TK)
+
CMAKE_FIND_FRAMEWORKS(Tcl)
-CMAKE_FIND_FRAMEWORKS(Tk)
+if (TCL_ENABLE_TK)
+ CMAKE_FIND_FRAMEWORKS(Tk)
+endif (TCL_ENABLE_TK)
set(TCL_FRAMEWORK_INCLUDES)
if(Tcl_FRAMEWORKS)
@@ -226,114 +330,151 @@
endif()
endif()
-set(TK_FRAMEWORK_INCLUDES)
-if(Tk_FRAMEWORKS)
- if(NOT TK_INCLUDE_PATH)
- foreach(dir ${Tk_FRAMEWORKS})
- set(TK_FRAMEWORK_INCLUDES ${TK_FRAMEWORK_INCLUDES}
- ${dir}/Headers ${dir}/PrivateHeaders)
- endforeach()
+if (TCL_ENABLE_TK)
+ set(TK_FRAMEWORK_INCLUDES)
+ if(Tk_FRAMEWORKS)
+ if(NOT TK_INCLUDE_PATH)
+ foreach(dir ${Tk_FRAMEWORKS})
+ set(TK_FRAMEWORK_INCLUDES ${TK_FRAMEWORK_INCLUDES}
+ ${dir}/Headers ${dir}/PrivateHeaders)
+ endforeach()
+ endif()
endif()
-endif()
+endif (TCL_ENABLE_TK)
set(TCLTK_POSSIBLE_INCLUDE_PATHS
"${TCL_LIBRARY_PATH_PARENT}/include"
- "${TK_LIBRARY_PATH_PARENT}/include"
"${TCL_INCLUDE_PATH}"
- "${TK_INCLUDE_PATH}"
${TCL_FRAMEWORK_INCLUDES}
- ${TK_FRAMEWORK_INCLUDES}
"${TCL_TCLSH_PATH_PARENT}/include"
- "${TK_WISH_PATH_PARENT}/include"
)
+if (TCL_ENABLE_TK)
+ set(TCLTK_POSSIBLE_INCLUDE_PATHS
+ ${TCLTK_POSSIBLE_INCLUDE_PATHS}
+ "${TCL_LIBRARY_PATH_PARENT}/include"
+ "${TCL_INCLUDE_PATH}"
+ ${TCL_FRAMEWORK_INCLUDES}
+ "${TCL_TCLSH_PATH_PARENT}/include"
+ )
+endif (TCL_ENABLE_TK)
set(TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES
- include/tcl${TK_LIBRARY_VERSION}
+ include
include/tcl${TCL_LIBRARY_VERSION}
include/tcl8.7
- include/tk8.7
include/tcl8.6
- include/tk8.6
include/tcl8.5
- include/tk8.5
include/tcl8.4
- include/tk8.4
include/tcl8.3
include/tcl8.2
include/tcl8.0
)
-find_path(TCL_INCLUDE_PATH
- NAMES tcl.h
- HINTS ${TCLTK_POSSIBLE_INCLUDE_PATHS}
- PATH_SUFFIXES ${TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES}
- )
+if (TCL_ENABLE_TK)
+ set(TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES
+ ${TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES}
+ include/tcl${TK_LIBRARY_VERSION}
+ include/tk8.7
+ include/tk8.6
+ include/tk8.5
+ include/tk8.4
+ )
+endif (TCL_ENABLE_TK)
-find_path(TK_INCLUDE_PATH
- NAMES tk.h
- HINTS ${TCLTK_POSSIBLE_INCLUDE_PATHS}
- PATH_SUFFIXES ${TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES}
- )
-# IFF we have TCL_TK_SYSTEM_GRAPHICS set and have a system TK_WISH, check that
the
-# windowing system matches the specified type
-if (NOT "${TCL_TK_SYSTEM_GRAPHICS}" STREQUAL "" AND TK_WISH AND NOT TARGET
"${TK_WISH}")
- set(tkwin_script "
- set filename \"${CMAKE_BINARY_DIR}/CMakeTmp/TK_WINDOWINGSYSTEM\"
- set fileId [open $filename \"w\"]
- set windowingsystem [tk windowingsystem]
- puts $fileId $windowingsystem
- close $fileId
- exit
- ")
- set(tkwin_scriptfile
"${CMAKE_BINARY_DIR}/CMakeTmp/tk_windowingsystem.tcl")
- set(WSYS "wm-NOTFOUND")
- file(WRITE ${tkwin_scriptfile} ${tkwin_script})
- execute_process(COMMAND ${TK_WISH} ${tkwin_scriptfile} OUTPUT_VARIABLE
EXECOUTPUT)
- if (EXISTS "${CMAKE_BINARY_DIR}/CMakeTmp/TK_WINDOWINGSYSTEM")
- file(READ "${CMAKE_BINARY_DIR}/CMakeTmp/TK_WINDOWINGSYSTEM"
readresultvar)
- string(REGEX REPLACE "\n" "" WSYS "${readresultvar}")
- endif (EXISTS "${CMAKE_BINARY_DIR}/CMakeTmp/TK_WINDOWINGSYSTEM")
+foreach(search ${_TCL_SEARCHES})
+ find_path(TCL_INCLUDE_PATH
+ NAMES tcl.h ${${search}}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES}
+ )
+endforeach()
+if (NOT TCL_INCLUDE_PATH)
+ find_path(TCL_INCLUDE_PATH
+ NAMES tcl.h
+ HINTS ${TCLTK_POSSIBLE_INCLUDE_PATHS}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES}
+ )
+endif()
- # If we have no information about the windowing system or it does not
match
- # a specified system, the find_package detection has failed
- if (NOT "${WSYS}" STREQUAL "${TCL_TK_SYSTEM_GRAPHICS}")
- unset(TCL_LIBRARY CACHE)
- unset(TCL_STUB_LIBRARY CACHE)
- unset(TK_LIBRARY CACHE)
- unset(TK_STUB_LIBRARY CACHE)
- unset(TCL_FOUND CACHE)
- unset(TK_FOUND CACHE)
- unset(TCLTK_FOUND CACHE)
- unset(TCLSH_FOUND CACHE)
- unset(TCL_LIBRARY CACHE)
- unset(TCL_INCLUDE_PATH CACHE)
- unset(TCL_TCLSH CACHE)
- unset(TK_LIBRARY CACHE)
- unset(TK_INCLUDE_PATH CACHE)
- unset(TK_WISH CACHE)
- unset(TCL_STUB_LIBRARY CACHE)
- unset(TK_STUB_LIBRARY CACHE)
- unset(TTK_STUB_LIBRARY CACHE)
- endif (NOT "${WSYS}" STREQUAL "${TCL_TK_SYSTEM_GRAPHICS}")
-endif (NOT "${TCL_TK_SYSTEM_GRAPHICS}" STREQUAL "" AND TK_WISH AND NOT TARGET
"${TK_WISH}")
+if (TCL_ENABLE_TK)
+ foreach(search ${_TCL_SEARCHES})
+ find_path(TK_INCLUDE_PATH
+ NAMES tk.h ${${search}}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES}
+ )
+ endforeach()
+ if (NOT TK_INCLUDE_PATH)
+ find_path(TK_INCLUDE_PATH
+ NAMES tk.h
+ HINTS ${TCLTK_POSSIBLE_INCLUDE_PATHS}
+ PATH_SUFFIXES ${TCLTK_POSSIBLE_INCLUDE_PATH_SUFFIXES}
+ )
+ endif()
+
+ # IFF we have TCL_TK_SYSTEM_GRAPHICS set and have a system TK_WISH, check
that the
+ # windowing system matches the specified type
+ if (NOT "${TCL_TK_SYSTEM_GRAPHICS}" STREQUAL "" AND TK_WISH AND NOT TARGET
"${TK_WISH}")
+ set(tkwin_script "
+ set filename \"${CMAKE_BINARY_DIR}/CMakeTmp/TK_WINDOWINGSYSTEM\"
+ set fileId [open $filename \"w\"]
+ set windowingsystem [tk windowingsystem]
+ puts $fileId $windowingsystem
+ close $fileId
+ exit
+ ")
+ set(tkwin_scriptfile "${CMAKE_BINARY_DIR}/CMakeTmp/tk_windowingsystem.tcl")
+ set(WSYS "wm-NOTFOUND")
+ file(WRITE ${tkwin_scriptfile} ${tkwin_script})
+ execute_process(COMMAND ${TK_WISH} ${tkwin_scriptfile} OUTPUT_VARIABLE
EXECOUTPUT)
+ if (EXISTS "${CMAKE_BINARY_DIR}/CMakeTmp/TK_WINDOWINGSYSTEM")
+ file(READ "${CMAKE_BINARY_DIR}/CMakeTmp/TK_WINDOWINGSYSTEM"
readresultvar)
+ string(REGEX REPLACE "\n" "" WSYS "${readresultvar}")
+ endif (EXISTS "${CMAKE_BINARY_DIR}/CMakeTmp/TK_WINDOWINGSYSTEM")
+
+ # If we have no information about the windowing system or it does not match
+ # a specified system, the find_package detection has failed
+ if (NOT "${WSYS}" STREQUAL "${TCL_TK_SYSTEM_GRAPHICS}")
+ unset(TCL_LIBRARY CACHE)
+ unset(TCL_STUB_LIBRARY CACHE)
+ unset(TK_LIBRARY CACHE)
+ unset(TK_STUB_LIBRARY CACHE)
+ unset(TCL_FOUND CACHE)
+ unset(TK_FOUND CACHE)
+ unset(TCLTK_FOUND CACHE)
+ unset(TCLSH_FOUND CACHE)
+ unset(TCL_LIBRARY CACHE)
+ unset(TCL_INCLUDE_PATH CACHE)
+ unset(TCL_TCLSH CACHE)
+ unset(TK_LIBRARY CACHE)
+ unset(TK_INCLUDE_PATH CACHE)
+ unset(TK_WISH CACHE)
+ unset(TCL_STUB_LIBRARY CACHE)
+ unset(TK_STUB_LIBRARY CACHE)
+ unset(TTK_STUB_LIBRARY CACHE)
+ endif (NOT "${WSYS}" STREQUAL "${TCL_TK_SYSTEM_GRAPHICS}")
+ endif (NOT "${TCL_TK_SYSTEM_GRAPHICS}" STREQUAL "" AND TK_WISH AND NOT
TARGET "${TK_WISH}")
+endif (TCL_ENABLE_TK)
+
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(TCL
- REQUIRED_VARS TCL_LIBRARY TCL_STUB_LIBRARY TCL_INCLUDE_PATH TCL_TCLSH
- VERSION_VAR TCLSH_VERSION_STRING)
-set(FPHSA_NAME_MISMATCHED 1)
-set(TCLTK_FIND_REQUIRED ${TCL_FIND_REQUIRED})
-set(TCLTK_FIND_QUIETLY ${TCL_FIND_QUIETLY})
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(TCLTK
- REQUIRED_VARS TCL_LIBRARY TCL_STUB_LIBRARY TCL_INCLUDE_PATH TK_LIBRARY
TK_STUB_LIBRARY TK_INCLUDE_PATH)
-set(TK_FIND_REQUIRED ${TCL_FIND_REQUIRED})
-set(TK_FIND_QUIETLY ${TCL_FIND_QUIETLY})
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(TK
- REQUIRED_VARS TK_LIBRARY TK_STUB_LIBRARY TK_INCLUDE_PATH TK_WISH)
-unset(FPHSA_NAME_MISMATCHED)
+ REQUIRED_VARS TCL_LIBRARY TCL_STUB_LIBRARY TCL_INCLUDE_PATH TCL_TCLSH
+ VERSION_VAR TCLSH_VERSION_STRING)
+if (TCL_ENABLE_TK)
+ set(FPHSA_NAME_MISMATCHED 1)
+ set(TCLTK_FIND_REQUIRED ${TCL_FIND_REQUIRED})
+ set(TCLTK_FIND_QUIETLY ${TCL_FIND_QUIETLY})
+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(TCLTK
+ REQUIRED_VARS TCL_LIBRARY TCL_STUB_LIBRARY TCL_INCLUDE_PATH TK_LIBRARY
TK_STUB_LIBRARY TK_INCLUDE_PATH)
+ set(TK_FIND_REQUIRED ${TCL_FIND_REQUIRED})
+ set(TK_FIND_QUIETLY ${TCL_FIND_QUIETLY})
+ FIND_PACKAGE_HANDLE_STANDARD_ARGS(TK
+ REQUIRED_VARS TK_LIBRARY TK_STUB_LIBRARY TK_INCLUDE_PATH TK_WISH)
+ unset(FPHSA_NAME_MISMATCHED)
+endif (TCL_ENABLE_TK)
+
mark_as_advanced(
TCL_INCLUDE_PATH
TCL_LIBRARY
@@ -346,3 +487,10 @@
TTK_STUB_LIBRARY
)
+
+# Local Variables:
+# tab-width: 8
+# mode: cmake
+# indent-tabs-mode: t
+# End:
+# ex: shiftwidth=2 tabstop=8
Modified: brlcad/trunk/misc/CMake/FindUTAHRLE.cmake
===================================================================
--- brlcad/trunk/misc/CMake/FindUTAHRLE.cmake 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/misc/CMake/FindUTAHRLE.cmake 2020-12-04 18:40:49 UTC (rev
77929)
@@ -1,62 +1,102 @@
-# F I N D U T A H R L E . 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.
-#
-###
-# - Find UtahRLE libraries
-#
-# The following variables are set:
-#
-# UTAHRLE_LIBRARY
-# The following variables are set:
-#
-# UTAHRLE_INCLUDE_DIRS - where to find zlib.h, etc.
-# UTAHRLE_LIBRARIES - List of libraries when using zlib.
-# UTAHRLE_FOUND - True if zlib found.
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
-find_path(UTAHRLE_INCLUDE_DIR rle.h)
-find_library(UTAHRLE_LIBRARY NAMES UTAHRLE)
+#[=======================================================================[.rst:
+FindUTAHRLE
+--------
+Find the native UTAHRLE includes and library.
+
+IMPORTED Targets
+^^^^^^^^^^^^^^^^
+
+This module defines :prop_tgt:`IMPORTED` target ``UTAHRLE::UTAHRLE``, if
+UTAHRLE has been found.
+
+Result Variables
+^^^^^^^^^^^^^^^^
+
+This module defines the following variables:
+
+::
+
+ UTAHRLE_INCLUDE_DIRS - where to find pam.h, etc.
+ UTAHRLE_LIBRARIES - List of libraries when using utahrle.
+ UTAHRLE_FOUND - True if utahrle found.
+
+Hints
+^^^^^
+
+A user may set ``UTAHRLE_ROOT`` to a utahrle installation root to tell this
+module where to look.
+#]=======================================================================]
+
+set(_UTAHRLE_SEARCHES)
+
+# Search UTAHRLE_ROOT first if it is set.
+if(UTAHRLE_ROOT)
+ set(_UTAHRLE_SEARCH_ROOT PATHS ${UTAHRLE_ROOT} NO_DEFAULT_PATH)
+ list(APPEND _UTAHRLE_SEARCHES _UTAHRLE_SEARCH_ROOT)
+endif()
+
+# Normal search.
+set(_UTAHRLE_x86 "(x86)")
+set(_UTAHRLE_SEARCH_NORMAL
+ PATHS "$ENV{ProgramFiles}/utahrle"
+ "$ENV{ProgramFiles${_UTAHRLE_x86}}/utahrle")
+unset(_UTAHRLE_x86)
+list(APPEND _UTAHRLE_SEARCHES _UTAHRLE_SEARCH_NORMAL)
+
+set(UTAHRLE_NAMES utahrle)
+
+# Try each search configuration.
+foreach(search ${_UTAHRLE_SEARCHES})
+ find_path(UTAHRLE_INCLUDE_DIR NAMES rle.h ${${search}} PATH_SUFFIXES include
include/utahrle)
+endforeach()
+
+# Allow UTAHRLE_LIBRARY to be set manually, as the location of the utahrle
library
+if(NOT UTAHRLE_LIBRARY)
+ foreach(search ${_UTAHRLE_SEARCHES})
+ find_library(UTAHRLE_LIBRARY NAMES ${UTAHRLE_NAMES} NAMES_PER_DIR
${${search}} PATH_SUFFIXES lib)
+ endforeach()
+endif()
+
+unset(UTAHRLE_NAMES)
+
+mark_as_advanced(UTAHRLE_INCLUDE_DIR)
+
include(FindPackageHandleStandardArgs)
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(UTAHRLE DEFAULT_MSG UTAHRLE_LIBRARY
UTAHRLE_INCLUDE_DIR)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(UTAHRLE REQUIRED_VARS UTAHRLE_LIBRARY
UTAHRLE_INCLUDE_DIR)
-IF (UTAHRLE_FOUND)
- set(UTAHRLE_INCLUDE_DIRS ${UTAHRLE_INCLUDE_DIR})
- set(UTAHRLE_LIBRARIES ${UTAHRLE_LIBRARY})
+if(UTAHRLE_FOUND)
+ set(UTAHRLE_INCLUDE_DIRS ${UTAHRLE_INCLUDE_DIR})
+
+ if(NOT UTAHRLE_LIBRARIES)
+ set(UTAHRLE_LIBRARIES ${UTAHRLE_LIBRARY})
+ endif()
+
+ if(NOT TARGET UTAHRLE::UTAHRLE)
+ add_library(UTAHRLE::UTAHRLE UNKNOWN IMPORTED)
+ set_target_properties(UTAHRLE::UTAHRLE PROPERTIES
+ INTERFACE_INCLUDE_DIRECTORIES "${UTAHRLE_INCLUDE_DIRS}")
+
+ if(UTAHRLE_LIBRARY_RELEASE)
+ set_property(TARGET UTAHRLE::UTAHRLE APPEND PROPERTY
+ IMPORTED_CONFIGURATIONS RELEASE)
+ set_target_properties(UTAHRLE::UTAHRLE PROPERTIES
+ IMPORTED_LOCATION_RELEASE "${UTAHRLE_LIBRARY_RELEASE}")
+ endif()
+
+ if(UTAHRLE_LIBRARY_DEBUG)
+ set_property(TARGET UTAHRLE::UTAHRLE APPEND PROPERTY
+ IMPORTED_CONFIGURATIONS DEBUG)
+ set_target_properties(UTAHRLE::UTAHRLE PROPERTIES
+ IMPORTED_LOCATION_DEBUG "${UTAHRLE_LIBRARY_DEBUG}")
+ endif()
+
+ if(NOT UTAHRLE_LIBRARY_RELEASE AND NOT UTAHRLE_LIBRARY_DEBUG)
+ set_property(TARGET UTAHRLE::UTAHRLE APPEND PROPERTY
+ IMPORTED_LOCATION "${UTAHRLE_LIBRARY}")
+ endif()
+ endif()
endif()
-# Local Variables:
-# tab-width: 8
-# mode: cmake
-# indent-tabs-mode: t
-# End:
-# ex: shiftwidth=2 tabstop=8
Modified: brlcad/trunk/src/external/Creo/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/external/Creo/CMakeLists.txt 2020-12-04 17:06:37 UTC
(rev 77928)
+++ brlcad/trunk/src/external/Creo/CMakeLists.txt 2020-12-04 18:40:49 UTC
(rev 77929)
@@ -345,8 +345,8 @@
"${CMAKE_CURRENT_BINARY_DIR}/../../../include"
"${CMAKE_CURRENT_SOURCE_DIR}/../../../include"
"${CMAKE_CURRENT_SOURCE_DIR}/../../../src/other/openNURBS"
- "${ZLIB_INCLUDE_DIRS}"
- "${REGEX_INCLUDE_DIRS}"
+ ${ZLIB_INCLUDE_DIRS}
+ ${REGEX_INCLUDE_DIRS}
)
# The build shims aren't so great at mocking the initialization
Modified: brlcad/trunk/src/external/Cubit/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/external/Cubit/CMakeLists.txt 2020-12-04 17:06:37 UTC
(rev 77928)
+++ brlcad/trunk/src/external/Cubit/CMakeLists.txt 2020-12-04 18:40:49 UTC
(rev 77929)
@@ -11,8 +11,8 @@
"${CMAKE_CURRENT_BINARY_DIR}/../../../include"
"${CMAKE_CURRENT_SOURCE_DIR}/../../../include"
"${CMAKE_CURRENT_SOURCE_DIR}/../../../src/other/openNURBS"
- "${ZLIB_INCLUDE_DIRS}"
- "${REGEX_INCLUDE_DIRS}"
+ ${ZLIB_INCLUDE_DIRS}
+ ${REGEX_INCLUDE_DIRS}
)
# The build shims aren't so great at mocking the initialization
Modified: brlcad/trunk/src/external/Unigraphics/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/external/Unigraphics/CMakeLists.txt 2020-12-04
17:06:37 UTC (rev 77928)
+++ brlcad/trunk/src/external/Unigraphics/CMakeLists.txt 2020-12-04
18:40:49 UTC (rev 77929)
@@ -15,9 +15,9 @@
"${CMAKE_CURRENT_BINARY_DIR}/../../../include"
"${CMAKE_CURRENT_SOURCE_DIR}/../../../include"
"${CMAKE_CURRENT_SOURCE_DIR}/../../../src/other/openNURBS"
- "${ZLIB_INCLUDE_DIRS}"
- "${REGEX_INCLUDE_DIRS}"
- "${TCL_INCLUDE_PATH}"
+ ${ZLIB_INCLUDE_DIRS}
+ ${REGEX_INCLUDE_DIRS}
+ ${TCL_INCLUDE_PATH}
)
# The build shims aren't so great at mocking the initialization
Modified: brlcad/trunk/src/libbg/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/libbg/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/src/libbg/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev
77929)
@@ -4,7 +4,8 @@
${BRLCAD_SOURCE_DIR}/include
${BN_INCLUDE_DIRS}
${BU_INCLUDE_DIRS}
- ${P2T_INCLUDE_DIR}
+ ${POLY2TRI_INCLUDE_DIRS}
+ ${SPSR_INCLUDE_DIR}
)
BRLCAD_LIB_INCLUDE_DIRS(bg BG_INCLUDE_DIRS "")
@@ -72,7 +73,7 @@
util.c
)
-BRLCAD_ADDLIB(libbg "${LIBBG_SOURCES}" "libbn;libbu;${P2T_LIBRARY}")
+BRLCAD_ADDLIB(libbg "${LIBBG_SOURCES}" "libbn;libbu;${POLY2TRI_LIBRARIES}")
set_target_properties(libbg PROPERTIES VERSION 20.0.1 SOVERSION 20)
if (HIDE_INTERNAL_SYMBOLS)
if (TARGET poly2tri OR HIDE_INTERNAL_SYMBOLS_EXT)
Modified: brlcad/trunk/src/libbrep/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/libbrep/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/src/libbrep/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev
77929)
@@ -4,7 +4,7 @@
${BRLCAD_SOURCE_DIR}/include
${BU_INCLUDE_DIRS}
${BN_INCLUDE_DIRS}
- ${P2T_INCLUDE_DIR}
+ ${POLY2TRI_INCLUDE_DIRS}
${OPENNURBS_INCLUDE_DIRS}
)
@@ -11,7 +11,7 @@
# locally used but not needed by users of the library
set(BREP_LOCAL_INCLUDE_DIRS
${CMAKE_CURRENT_SOURCE_DIR}
- ${REGEX_INCLUDE_DIR}
+ ${REGEX_INCLUDE_DIRS}
${BRLCAD_SOURCE_DIR}/src/other/Eigen
)
@@ -49,7 +49,7 @@
tools/util.cpp
)
-BRLCAD_ADDLIB(libbrep "${LIBBREP_SOURCES}"
"libbg;libbn;libbu;${OPENNURBS_LIBRARIES};${P2T_LIBRARY};${WINSOCK_LIB};${RPCRT_LIB};${STDCXX_LIBRARIES}")
+BRLCAD_ADDLIB(libbrep "${LIBBREP_SOURCES}"
"libbg;libbn;libbu;${OPENNURBS_LIBRARIES};${POLY2TRI_LIBRARIES};${WINSOCK_LIB};${RPCRT_LIB};${STDCXX_LIBRARIES}")
set_target_properties(libbrep PROPERTIES VERSION 20.0.1 SOVERSION 20)
if(HIDE_INTERNAL_SYMBOLS)
Modified: brlcad/trunk/src/libbu/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/libbu/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/src/libbu/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev
77929)
@@ -11,7 +11,6 @@
# locally used but not needed by users of the library
set(BU_LOCAL_INCLUDE_DIRS
${CMAKE_CURRENT_SOURCE_DIR}/y2038
- ${REGEX_INCLUDE_DIRS}
)
if (UUID_INCLUDE_DIR)
set(BU_LOCAL_INCLUDE_DIRS ${BU_LOCAL_INCLUDE_DIRS} ${UUID_INCLUDE_DIR})
@@ -146,7 +145,7 @@
CMAKEFILES(parallel_cpp11thread.cpp)
endif(NOT CMAKE_CXX_STANDARD EQUAL 98)
-BRLCAD_ADDLIB(libbu "${LIBBU_SOURCES}"
"${Foundation_LIBRARIES};Threads::Threads;${DL_LIBRARY};${WINSOCK_LIB};${PSAPI_LIB};${BSON_LIBRARIES};${UUID_LIBRARIES};${REGEX_LIBRARIES};${M_LIBRARY}")
+BRLCAD_ADDLIB(libbu "${LIBBU_SOURCES}"
"${Foundation_LIBRARIES};Threads::Threads;${DL_LIBRARY};${WINSOCK_LIB};${PSAPI_LIB};${BSON_LIBRARIES};${UUID_LIBRARIES};${M_LIBRARY}")
set_target_properties(libbu PROPERTIES VERSION 20.0.1 SOVERSION 20)
# Define a pre-build test for libbu to check the semaphores in BRL-CAD's
headers for
Modified: brlcad/trunk/src/libdm/wgl/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/libdm/wgl/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/src/libdm/wgl/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev
77929)
@@ -15,6 +15,9 @@
${OPENGL_INCLUDE_DIR_GL}
${TCL_INCLUDE_PATH}
${TK_INCLUDE_PATH}
+ # Needed for tkWinInt.h
+ ${CMAKE_CURRENT_SOURCE_DIR}/../../other/ext/tk/generic
+ ${CMAKE_CURRENT_SOURCE_DIR}/../../other/ext/tk/win
)
set_property(SOURCE dm-wgl.c APPEND PROPERTY COMPILE_DEFINITIONS
FB_USE_INTERNAL_API)
Modified: brlcad/trunk/src/libgcv/plugins/gdal/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/libgcv/plugins/gdal/CMakeLists.txt 2020-12-04 17:06:37 UTC
(rev 77928)
+++ brlcad/trunk/src/libgcv/plugins/gdal/CMakeLists.txt 2020-12-04 18:40:49 UTC
(rev 77929)
@@ -8,7 +8,7 @@
include_directories(SYSTEM ${GDAL_INCLUDE_DIR})
gcv_plugin_library(gcv-gdal SHARED ${GDAL_SRCS})
- target_link_libraries(gcv-gdal libwdb librt libbu ${GDAL_LIBRARY})
+ target_link_libraries(gcv-gdal libwdb librt libbu ${GDAL_LIBRARIES})
set_property(TARGET gcv-gdal APPEND PROPERTY COMPILE_DEFINITIONS BRLCADBUILD
HAVE_CONFIG_H)
VALIDATE_STYLE(gcv-gdal "${GDAL_SRCS}")
PLUGIN_SETUP(gcv-gdal gcv)
Modified: brlcad/trunk/src/libgcv/plugins/obj/wfobj/CMake/FindLEMON.cmake
===================================================================
--- brlcad/trunk/src/libgcv/plugins/obj/wfobj/CMake/FindLEMON.cmake
2020-12-04 17:06:37 UTC (rev 77928)
+++ brlcad/trunk/src/libgcv/plugins/obj/wfobj/CMake/FindLEMON.cmake
2020-12-04 18:40:49 UTC (rev 77929)
@@ -44,9 +44,35 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
-find_program(LEMON_EXECUTABLE lemon DOC "path to the lemon executable")
+set(_LEMON_SEARCHES)
+
+# Search LEMON_ROOT first if it is set.
+if(LEMON_ROOT)
+ set(_LEMON_SEARCH_ROOT PATHS ${LEMON_ROOT} NO_DEFAULT_PATH)
+ list(APPEND _LEMON_SEARCHES _LEMON_SEARCH_ROOT)
+endif()
+
+# Normal search.
+set(_LEMON_x86 "(x86)")
+set(_LEMON_SEARCH_NORMAL
+ PATHS "$ENV{ProgramFiles}/lemon"
+ "$ENV{ProgramFiles${_LEMON_x86}}/lemon")
+unset(_LEMON_x86)
+list(APPEND _LEMON_SEARCHES _LEMON_SEARCH_NORMAL)
+
+set(LEMON_NAMES lemon)
+
+# Try each search configuration.
+foreach(search ${_LEMON_SEARCHES})
+ find_program(LEMON_EXECUTABLE lemon ${${search}} PATH_SUFFIXES bin)
+endforeach()
mark_as_advanced(LEMON_EXECUTABLE)
+foreach(search ${_LEMON_SEARCHES})
+ find_file(LEMON_TEMPLATE lempar.c ${${search}} PATH_SUFFIXES ${DATA_DIR}
${DATA_DIR}/lemon)
+endforeach()
+mark_as_advanced(LEMON_TEMPLATE)
+
if (LEMON_EXECUTABLE AND NOT LEMON_TEMPLATE)
# look for the template in share
if (DATA_DIR AND EXISTS "${DATA_DIR}/lemon/lempar.c")
@@ -113,6 +139,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 +191,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 +201,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 +209,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/trunk/src/libgcv/plugins/obj/wfobj/CMake/FindPERPLEX.cmake
===================================================================
--- brlcad/trunk/src/libgcv/plugins/obj/wfobj/CMake/FindPERPLEX.cmake
2020-12-04 17:06:37 UTC (rev 77928)
+++ brlcad/trunk/src/libgcv/plugins/obj/wfobj/CMake/FindPERPLEX.cmake
2020-12-04 18:40:49 UTC (rev 77929)
@@ -44,9 +44,35 @@
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#=============================================================================
-find_program(PERPLEX_EXECUTABLE perplex DOC "path to the perplex executable")
+set(_PERPLEX_SEARCHES)
+
+# Search PERPLEX_ROOT first if it is set.
+if(PERPLEX_ROOT)
+ set(_PERPLEX_SEARCH_ROOT PATHS ${PERPLEX_ROOT} NO_DEFAULT_PATH)
+ list(APPEND _PERPLEX_SEARCHES _PERPLEX_SEARCH_ROOT)
+endif()
+
+# Normal search.
+set(_PERPLEX_x86 "(x86)")
+set(_PERPLEX_SEARCH_NORMAL
+ PATHS "$ENV{ProgramFiles}/perplex"
+ "$ENV{ProgramFiles${_PERPLEX_x86}}/perplex")
+unset(_PERPLEX_x86)
+list(APPEND _PERPLEX_SEARCHES _PERPLEX_SEARCH_NORMAL)
+
+set(PERPLEX_NAMES perplex)
+
+# Try each search configuration.
+foreach(search ${_PERPLEX_SEARCHES})
+ find_program(PERPLEX_EXECUTABLE perplex ${${search}} PATH_SUFFIXES bin)
+endforeach()
mark_as_advanced(PERPLEX_EXECUTABLE)
+foreach(search ${_PERPLEX_SEARCHES})
+ find_file(PERPLEX_TEMPLATE perplex_template.c ${${search}} PATH_SUFFIXES
${DATA_DIR} ${DATA_DIR}/perplex)
+endforeach()
+mark_as_advanced(PERPLEX_TEMPLATE)
+
if(PERPLEX_EXECUTABLE AND NOT PERPLEX_TEMPLATE)
get_filename_component(perplex_path ${PERPLEX_EXECUTABLE} PATH)
if(perplex_path)
@@ -141,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)
@@ -200,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}"
)
@@ -209,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}"
)
@@ -217,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/trunk/src/libtclcad/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/libtclcad/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/src/libtclcad/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev
77929)
@@ -64,15 +64,11 @@
libbn
libbu
${TCL_LIBRARY}
- ${ITCL_LIBRARY}
${TCLCAD_XLIBS}
)
if (TK_LIBRARY)
set(TCLCAD_LIBS ${TCLCAD_LIBS} ${TK_LIBRARY})
endif (TK_LIBRARY)
- if (ITK_LIBRARY)
- set(TCLCAD_LIBS ${TCLCAD_LIBS} ${ITK_LIBRARY})
- endif (ITK_LIBRARY)
BRLCAD_ADDLIB(libtclcad "${LIBTCLCAD_SRCS}" "${TCLCAD_LIBS}")
set_target_properties(libtclcad PROPERTIES VERSION 20.0.1 SOVERSION 20)
@@ -86,6 +82,13 @@
# For anyone to do anything with tclcad, we need the libged plugins
add_dependencies(libtclcad ged_plugins)
+ set(STAGE_TGTS tcl_stage tk_stage itcl_stage itk_stage iwidgets_stage)
+ foreach(tgt ${STAGE_TGTS})
+ if (TARGET ${tgt})
+ add_dependencies(libtclcad ${tgt})
+ endif (TARGET ${tgt})
+ endforeach(tgt ${STAGE_TGTS})
+
endif (BRLCAD_ENABLE_TCL)
set(tclcad_ignore_files
Modified: brlcad/trunk/src/mged/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/mged/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/src/mged/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev
77929)
@@ -54,7 +54,7 @@
endif (HAVE_WINDOWS_H)
-set(mged_libs libtclcad libged libwdb libdm libnmg ${ITCL_LIBRARY}
${ITK_LIBRARY} ${WS2_32_LIBRARY} ${OPENGL32_LIBRARY})
+set(mged_libs libtclcad libged libwdb libdm libnmg ${WS2_32_LIBRARY}
${OPENGL32_LIBRARY})
if(TARGET libtermio)
set(mged_libs ${mged_libs} libtermio)
endif(TARGET libtermio)
Modified: brlcad/trunk/src/other/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/other/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/src/other/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev
77929)
@@ -297,6 +297,7 @@
SetTargetFolder(utahrle "Third Party Libraries")
SetTargetFolder(utahrle-static "Third Party Libraries")
set(UTAHRLE_INCLUDE_DIR "${BRLCAD_SOURCE_DIR}/src/other/libutahrle/include"
CACHE STRING "directory with rle.h header" FORCE)
+ set(UTAHRLE_INCLUDE_DIRS "${UTAH_INCLUDE_DIR}" CACHE STRING "directory with
rle.h header" FORCE)
set(BRLCAD_UTAHRLE_INCLUDE_DIR "${UTAHRLE_INCLUDE_DIR}" CACHE STRING
"directory with rle.h header" FORCE)
mark_as_advanced(UTAHRLE_INCLUDE_DIR)
mark_as_advanced(BRLCAD_UTAHRLE_INCLUDE_DIR)
@@ -892,7 +893,9 @@
CMAKEFILES_IN_DIR(poly2tri_ignore_files poly2tri)
DISTCLEAN("${CMAKE_CURRENT_SOURCE_DIR}/poly2tri/Makefile")
set(P2T_LIBRARY "poly2tri" CACHE STRING "Poly2Tri library" FORCE)
+set(POLY2TRI_LIBRARIES "poly2tri" CACHE STRING "Poly2Tri library" FORCE)
set(P2T_INCLUDE_DIR "${BRLCAD_SOURCE_DIR}/src/other/poly2tri" CACHE STRING
"Directory containing poly2tri header" FORCE)
+set(POLY2TRI_INCLUDE_DIRS "${BRLCAD_SOURCE_DIR}/src/other/poly2tri" CACHE
STRING "Directory containing poly2tri header" FORCE)
SetTargetFolder(poly2tri "Third Party Libraries")
SetTargetFolder(poly2tri-static "Third Party Libraries")
mark_as_advanced(P2T_LIBRARY)
@@ -958,6 +961,9 @@
DISTCLEAN("${CMAKE_CURRENT_BINARY_DIR}/gdal/cpl_config.h")
SetTargetFolder(gdal "Third Party Libraries/GDAL")
SetTargetFolder(gdal-static "Third Party Libraries/GDAL")
+else(BRLCAD_GDAL_BUILD)
+ set(GDAL_INCLUDE_DIR "${GDAL_INCLUDE_DIRS}" CACHE STRING "libgdal includes"
FORCE)
+ set(GDAL_LIBRARIES "${GDAL_LIBRARY}" CACHE STRING "libgdal" FORCE)
endif(BRLCAD_GDAL_BUILD)
mark_as_advanced(GDAL_CONFIG)
mark_as_advanced(GDAL_INCLUDE_DIR)
Modified: brlcad/trunk/src/rt/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/rt/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev 77928)
+++ brlcad/trunk/src/rt/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev 77929)
@@ -23,7 +23,7 @@
worker.c
)
-BRLCAD_ADDLIB(librtuif "${LIBRTUIF_SOURCES}" "${M_LIBRARY}" STATIC NO_INSTALL)
+BRLCAD_ADDLIB(librtuif "${LIBRTUIF_SOURCES}" "librt;${M_LIBRARY}" STATIC
NO_INSTALL)
if(BRLCAD_ENABLE_OPENCL)
set(OPENCL_LIBS ${OPENCL_LIBRARIES})
Modified: brlcad/trunk/src/rtwizard/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/rtwizard/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/src/rtwizard/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev
77929)
@@ -20,7 +20,7 @@
endif (HAVE_WINDOWS_H)
- BRLCAD_ADDEXEC(rtwizard "${RTWIZARD_SRCS}"
"libtclcad;librt;libdm;liboptical;libicv;${ITCL_LIBRARY};${ITK_LIBRARY};Threads::Threads;${M_LIBRARY}")
+ BRLCAD_ADDEXEC(rtwizard "${RTWIZARD_SRCS}"
"libtclcad;librt;libdm;liboptical;libicv;Threads::Threads;${M_LIBRARY}")
ADD_TARGET_DEPS(rtwizard rt rtedge fbserv fb-png fb-pix fbclear fblabel
fbfree fbline fb-fb pix-bw bwmod bw-pix pixmatte pix-fb tkpng dm_plugins)
foreach(item ${tclindex_target_list})
add_dependencies(rtwizard ${item})
Modified: brlcad/trunk/src/util/CMakeLists.txt
===================================================================
--- brlcad/trunk/src/util/CMakeLists.txt 2020-12-04 17:06:37 UTC (rev
77928)
+++ brlcad/trunk/src/util/CMakeLists.txt 2020-12-04 18:40:49 UTC (rev
77929)
@@ -11,7 +11,7 @@
set(UTIL_LOCAL_INCLUDE_DIRS
${CMAKE_CURRENT_SOURCE_DIR}
- ${UTAHRLE_INCLUDE_DIR}
+ ${UTAHRLE_INCLUDE_DIRS}
${PNG_INCLUDE_DIRS}
)
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