summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt3
-rw-r--r--Help/dev/review.rst7
-rw-r--r--Help/variable/CMAKE_LANG_COMPILER_VERSION.rst4
-rw-r--r--Modules/FindGSL.cmake11
-rw-r--r--Source/CMakeVersion.cmake2
-rw-r--r--Source/cmGlobalNinjaGenerator.cxx7
-rw-r--r--Source/cmGlobalNinjaGenerator.h1
-rw-r--r--Source/cmNinjaTargetGenerator.cxx8
-rw-r--r--Source/cmQtAutoGeneratorInitializer.cxx2
-rw-r--r--Source/cmVisualStudio10TargetGenerator.cxx2
-rw-r--r--Source/cmVisualStudio10ToolsetOptions.cxx1
-rw-r--r--Source/kwsys/SystemInformation.cxx3
-rw-r--r--Source/kwsys/SystemTools.cxx11
-rw-r--r--Source/kwsys/SystemTools.hxx.in4
-rw-r--r--Source/kwsys/testSystemTools.cxx8
-rw-r--r--Tests/CMakeLists.txt4
-rw-r--r--Tests/QtAutogen/CMakeLists.txt8
-rw-r--r--Tests/QtAutogen/mocPlugin/CMakeLists.txt1
-rw-r--r--Tests/VSResource/CMakeLists.txt5
-rw-r--r--Utilities/IWYU/mapping.imp1
-rw-r--r--Utilities/Release/hythloth_release.cmake10
-rw-r--r--Utilities/Release/linux64_release.cmake1
-rw-r--r--Utilities/cmlibuv/CMakeLists.txt21
-rwxr-xr-xbootstrap78
24 files changed, 77 insertions, 126 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index eb46c3b..ed924eb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -536,9 +536,6 @@ int main(void) { return 0; }
if(NOT HAVE_CoreServices_OS_X_10_5)
set(CMAKE_USE_LIBUV 0)
endif()
- elseif(CYGWIN)
- # libuv does not support Cygwin
- set(CMAKE_USE_LIBUV 0)
elseif(CMAKE_SYSTEM_NAME STREQUAL "HP-UX")
# Disable until it can be ported.
set(CMAKE_USE_LIBUV 0)
diff --git a/Help/dev/review.rst b/Help/dev/review.rst
index c4122d4..9450bf0 100644
--- a/Help/dev/review.rst
+++ b/Help/dev/review.rst
@@ -216,7 +216,12 @@ Builder names follow the pattern ``project-host-os-buildtype-generator``:
* ``host``: the buildbot host
* ``os``: one of ``windows``, ``osx``, or ``linux``
* ``buildtype``: ``release`` or ``debug``
-* ``generator``: ``ninja``, ``makefiles``, or ``vs<year>``
+* ``generator``: ``ninja``, ``makefiles``, ``vs<year>``,
+ or ``lint-iwyu-tidy``
+
+The special ``lint-<tools>`` generator name is a builder that builds
+CMake using lint tools but does not run the test suite (so the actual
+generator does not matter).
.. _`buildbot`: http://buildbot.net
.. _`CMake CDash Page`: https://open.cdash.org/index.php?project=CMake
diff --git a/Help/variable/CMAKE_LANG_COMPILER_VERSION.rst b/Help/variable/CMAKE_LANG_COMPILER_VERSION.rst
index 50e77eb..27b0cad 100644
--- a/Help/variable/CMAKE_LANG_COMPILER_VERSION.rst
+++ b/Help/variable/CMAKE_LANG_COMPILER_VERSION.rst
@@ -6,3 +6,7 @@ Compiler version string.
Compiler version in major[.minor[.patch[.tweak]]] format. This
variable is not guaranteed to be defined for all compilers or
languages.
+
+For example ``CMAKE_C_COMPILER_VERSION`` and
+``CMAKE_CXX_COMPILER_VERSION`` might indicate the respective C and C++
+compiler version.
diff --git a/Modules/FindGSL.cmake b/Modules/FindGSL.cmake
index 76059b3..8d10b6c 100644
--- a/Modules/FindGSL.cmake
+++ b/Modules/FindGSL.cmake
@@ -37,9 +37,10 @@
#
# This script expects to find libraries at ``$GSL_ROOT_DIR/lib`` and the GSL
# headers at ``$GSL_ROOT_DIR/include/gsl``. The library directory may
-# optionally provide Release and Debug folders. For Unix-like systems, this
-# script will use ``$GSL_ROOT_DIR/bin/gsl-config`` (if found) to aid in the
-# discovery GSL.
+# optionally provide Release and Debug folders. If available, the libraries
+# named ``gsld``, ``gslblasd`` or ``cblasd`` are recognized as debug libraries.
+# For Unix-like systems, this script will use ``$GSL_ROOT_DIR/bin/gsl-config``
+# (if found) to aid in the discovery of GSL.
#
# Cache Variables
# ^^^^^^^^^^^^^^^
@@ -105,12 +106,12 @@ find_library( GSL_CBLAS_LIBRARY
)
# Do we also have debug versions?
find_library( GSL_LIBRARY_DEBUG
- NAMES gsl
+ NAMES gsld gsl
HINTS ${GSL_ROOT_DIR}/lib ${GSL_LIBDIR}
PATH_SUFFIXES Debug
)
find_library( GSL_CBLAS_LIBRARY_DEBUG
- NAMES gslcblas cblas
+ NAMES gslcblasd cblasd gslcblas cblas
HINTS ${GSL_ROOT_DIR}/lib ${GSL_LIBDIR}
PATH_SUFFIXES Debug
)
diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 42be644..63eea25 100644
--- a/Source/CMakeVersion.cmake
+++ b/Source/CMakeVersion.cmake
@@ -1,5 +1,5 @@
# CMake version number components.
set(CMake_VERSION_MAJOR 3)
set(CMake_VERSION_MINOR 8)
-set(CMake_VERSION_PATCH 20170528)
+set(CMake_VERSION_PATCH 20170601)
#set(CMake_VERSION_RC 1)
diff --git a/Source/cmGlobalNinjaGenerator.cxx b/Source/cmGlobalNinjaGenerator.cxx
index e1e165c..39f5d8f 100644
--- a/Source/cmGlobalNinjaGenerator.cxx
+++ b/Source/cmGlobalNinjaGenerator.cxx
@@ -146,13 +146,6 @@ std::string cmGlobalNinjaGenerator::EncodePath(const std::string& path)
return EncodeLiteral(result);
}
-std::string cmGlobalNinjaGenerator::EncodeDepfileSpace(const std::string& path)
-{
- std::string result = path;
- cmSystemTools::ReplaceString(result, " ", "\\ ");
- return result;
-}
-
void cmGlobalNinjaGenerator::WriteBuild(
std::ostream& os, const std::string& comment, const std::string& rule,
const cmNinjaDeps& outputs, const cmNinjaDeps& implicitOuts,
diff --git a/Source/cmGlobalNinjaGenerator.h b/Source/cmGlobalNinjaGenerator.h
index b1d6155..41c5175 100644
--- a/Source/cmGlobalNinjaGenerator.h
+++ b/Source/cmGlobalNinjaGenerator.h
@@ -75,7 +75,6 @@ public:
static std::string EncodeIdent(const std::string& ident, std::ostream& vars);
static std::string EncodeLiteral(const std::string& lit);
std::string EncodePath(const std::string& path);
- static std::string EncodeDepfileSpace(const std::string& path);
cmLinkLineComputer* CreateLinkLineComputer(
cmOutputConverter* outputConverter,
diff --git a/Source/cmNinjaTargetGenerator.cxx b/Source/cmNinjaTargetGenerator.cxx
index 7e29681..2f4cccb 100644
--- a/Source/cmNinjaTargetGenerator.cxx
+++ b/Source/cmNinjaTargetGenerator.cxx
@@ -822,8 +822,8 @@ void cmNinjaTargetGenerator::WriteObjectBuildStatement(
vars["DEFINES"] = this->ComputeDefines(source, language);
vars["INCLUDES"] = this->GetIncludes(language);
if (!this->NeedDepTypeMSVC(language)) {
- vars["DEP_FILE"] =
- cmGlobalNinjaGenerator::EncodeDepfileSpace(objectFileName + ".d");
+ vars["DEP_FILE"] = this->GetLocalGenerator()->ConvertToOutputFormat(
+ objectFileName + ".d", cmOutputConverter::SHELL);
}
this->ExportObjectCompileCommand(
@@ -920,8 +920,8 @@ void cmNinjaTargetGenerator::WriteObjectBuildStatement(
vars["INCLUDES"] = sourceDirectoryFlag + " " + vars["INCLUDES"];
// Explicit preprocessing always uses a depfile.
- ppVars["DEP_FILE"] =
- cmGlobalNinjaGenerator::EncodeDepfileSpace(ppFileName + ".d");
+ ppVars["DEP_FILE"] = this->GetLocalGenerator()->ConvertToOutputFormat(
+ ppFileName + ".d", cmOutputConverter::SHELL);
// The actual compilation does not need a depfile because it
// depends on the already-preprocessed source.
vars.erase("DEP_FILE");
diff --git a/Source/cmQtAutoGeneratorInitializer.cxx b/Source/cmQtAutoGeneratorInitializer.cxx
index e82665b..a39c10b 100644
--- a/Source/cmQtAutoGeneratorInitializer.cxx
+++ b/Source/cmQtAutoGeneratorInitializer.cxx
@@ -790,8 +790,6 @@ void cmQtAutoGeneratorInitializer::InitializeAutogenTarget(
bool usePRE_BUILD = false;
cmGlobalGenerator* gg = lg->GetGlobalGenerator();
if (gg->GetName().find("Visual Studio") != std::string::npos) {
- cmGlobalVisualStudioGenerator* vsgg =
- static_cast<cmGlobalVisualStudioGenerator*>(gg);
// Under VS use a PRE_BUILD event instead of a separate target to
// reduce the number of targets loaded into the IDE.
// This also works around a VS 11 bug that may skip updating the target:
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index e174f13..46c2894 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -3154,8 +3154,6 @@ bool cmVisualStudio10TargetGenerator::ComputeLinkOptions(
// FIXME: Select flag table based on toolset instead of VS version.
if (this->LocalGenerator->GetVersion() >=
cmGlobalVisualStudioGenerator::VS14) {
- cmGlobalVisualStudio10Generator* gg =
- static_cast<cmGlobalVisualStudio10Generator*>(this->GlobalGenerator);
const char* toolset = gg->GetPlatformToolset();
if (toolset &&
(toolset == kWINDOWS_7_1_SDK || /* clang-format please break here */
diff --git a/Source/cmVisualStudio10ToolsetOptions.cxx b/Source/cmVisualStudio10ToolsetOptions.cxx
index 0f15ec4..afca216 100644
--- a/Source/cmVisualStudio10ToolsetOptions.cxx
+++ b/Source/cmVisualStudio10ToolsetOptions.cxx
@@ -11,7 +11,6 @@
#include "cmVS10LibFlagTable.h"
#include "cmVS10LinkFlagTable.h"
#include "cmVS10MASMFlagTable.h"
-#include "cmVS10NASMFlagTable.h"
#include "cmVS10RCFlagTable.h"
#include "cmVS11CLFlagTable.h"
#include "cmVS11CSharpFlagTable.h"
diff --git a/Source/kwsys/SystemInformation.cxx b/Source/kwsys/SystemInformation.cxx
index bfc895e..b7bd102 100644
--- a/Source/kwsys/SystemInformation.cxx
+++ b/Source/kwsys/SystemInformation.cxx
@@ -918,7 +918,8 @@ int LoadLines(const char* fileName, std::vector<std::string>& lines)
// ****************************************************************************
template <typename T>
-int NameValue(std::vector<std::string>& lines, std::string name, T& value)
+int NameValue(std::vector<std::string> const& lines, std::string const& name,
+ T& value)
{
size_t nLines = lines.size();
for (size_t i = 0; i < nLines; ++i) {
diff --git a/Source/kwsys/SystemTools.cxx b/Source/kwsys/SystemTools.cxx
index 5ca382f..07da8dc 100644
--- a/Source/kwsys/SystemTools.cxx
+++ b/Source/kwsys/SystemTools.cxx
@@ -22,6 +22,7 @@
#include KWSYS_HEADER(FStream.hxx)
#include KWSYS_HEADER(Encoding.hxx)
+#include <algorithm>
#include <fstream>
#include <iostream>
#include <set>
@@ -3708,6 +3709,16 @@ std::string SystemTools::JoinPath(
return result;
}
+void SystemTools::RemoveEmptyPathElements(std::vector<std::string>& path)
+{
+ if (path.empty()) {
+ return;
+ }
+
+ path.erase(std::remove(path.begin() + 1, path.end(), std::string("")),
+ path.end());
+}
+
bool SystemTools::ComparePath(const std::string& c1, const std::string& c2)
{
#if defined(_WIN32) || defined(__APPLE__)
diff --git a/Source/kwsys/SystemTools.hxx.in b/Source/kwsys/SystemTools.hxx.in
index 0849e1d..5e091c2 100644
--- a/Source/kwsys/SystemTools.hxx.in
+++ b/Source/kwsys/SystemTools.hxx.in
@@ -474,6 +474,10 @@ public:
static std::string JoinPath(std::vector<std::string>::const_iterator first,
std::vector<std::string>::const_iterator last);
+ /** Removes empty components from path.
+ */
+ static void RemoveEmptyPathElements(std::vector<std::string>& path);
+
/**
* Compare a path or components of a path.
*/
diff --git a/Source/kwsys/testSystemTools.cxx b/Source/kwsys/testSystemTools.cxx
index 900894c..e6fbf6c 100644
--- a/Source/kwsys/testSystemTools.cxx
+++ b/Source/kwsys/testSystemTools.cxx
@@ -54,7 +54,8 @@ static const char* toUnixPaths[][2] = {
{ 0, 0 }
};
-static bool CheckConvertToUnixSlashes(std::string input, std::string output)
+static bool CheckConvertToUnixSlashes(std::string const& input,
+ std::string const& output)
{
std::string result = input;
kwsys::SystemTools::ConvertToUnixSlashes(result);
@@ -71,8 +72,9 @@ static const char* checkEscapeChars[][4] = { { "1 foo 2 bar 2", "12", "\\",
{ " {} ", "{}", "#", " #{#} " },
{ 0, 0, 0, 0 } };
-static bool CheckEscapeChars(std::string input, const char* chars_to_escape,
- char escape_char, std::string output)
+static bool CheckEscapeChars(std::string const& input,
+ const char* chars_to_escape, char escape_char,
+ std::string const& output)
{
std::string result = kwsys::SystemTools::EscapeChars(
input.c_str(), chars_to_escape, escape_char);
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 335267a..2c05789 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1728,6 +1728,7 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
if(CMake_TEST_XCODE_VERSION AND NOT CMake_TEST_XCODE_VERSION VERSION_LESS 5
AND OSX_VERSION MATCHES "^([0-9]+\\.[0-9]+)")
+ set(XCTest_CTEST_OPTIONS --build-config $<CONFIGURATION>)
set(XCTest_BUILD_OPTIONS -DCMAKE_OSX_DEPLOYMENT_TARGET=${CMAKE_MATCH_1} -DCMAKE_OSX_SYSROOT=macosx)
ADD_TEST_MACRO(XCTest ${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION> -V)
endif()
@@ -3109,6 +3110,9 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
endif ()
endif ()
+ if(CMake_TEST_EXTERNAL_CMAKE)
+ set(CMAKE_SKIP_BOOTSTRAP_TEST 1)
+ endif()
if("${CMAKE_GENERATOR}" MATCHES Xcode)
set(CMAKE_SKIP_BOOTSTRAP_TEST 1)
endif()
diff --git a/Tests/QtAutogen/CMakeLists.txt b/Tests/QtAutogen/CMakeLists.txt
index 101b396..073c5fd 100644
--- a/Tests/QtAutogen/CMakeLists.txt
+++ b/Tests/QtAutogen/CMakeLists.txt
@@ -304,10 +304,10 @@ if (NOT QT_TEST_VERSION STREQUAL 4)
set(timeformat "%Y%j%H%M%S")
set(mocPlugSrcDir "${CMAKE_CURRENT_SOURCE_DIR}/mocPlugin")
set(mocPlugBinDir "${CMAKE_CURRENT_BINARY_DIR}/mocPlugin")
- find_library(plAFile "PlugA" PATHS "${mocPlugBinDir}" NO_DEFAULT_PATH)
- find_library(plBFile "PlugB" PATHS "${mocPlugBinDir}" NO_DEFAULT_PATH)
- find_library(plCFile "PlugC" PATHS "${mocPlugBinDir}" NO_DEFAULT_PATH)
- find_library(plDFile "PlugD" PATHS "${mocPlugBinDir}" NO_DEFAULT_PATH)
+ find_library(plAFile "PlugA" PATHS "${mocPlugBinDir}/Debug" "${mocPlugBinDir}" NO_DEFAULT_PATH)
+ find_library(plBFile "PlugB" PATHS "${mocPlugBinDir}/Debug" "${mocPlugBinDir}" NO_DEFAULT_PATH)
+ find_library(plCFile "PlugC" PATHS "${mocPlugBinDir}/Debug" "${mocPlugBinDir}" NO_DEFAULT_PATH)
+ find_library(plDFile "PlugD" PATHS "${mocPlugBinDir}/Debug" "${mocPlugBinDir}" NO_DEFAULT_PATH)
file(TIMESTAMP "${plAFile}" plABefore "${timeformat}")
file(TIMESTAMP "${plBFile}" plBBefore "${timeformat}")
diff --git a/Tests/QtAutogen/mocPlugin/CMakeLists.txt b/Tests/QtAutogen/mocPlugin/CMakeLists.txt
index 4843c21..f80aa29 100644
--- a/Tests/QtAutogen/mocPlugin/CMakeLists.txt
+++ b/Tests/QtAutogen/mocPlugin/CMakeLists.txt
@@ -1,4 +1,5 @@
cmake_minimum_required(VERSION 3.8)
+project(mocPlugin CXX)
set(CMAKE_AUTOMOC_DEPEND_FILTERS
"A_CUSTOM_MACRO"
diff --git a/Tests/VSResource/CMakeLists.txt b/Tests/VSResource/CMakeLists.txt
index 3b9cfc3..ee660ed 100644
--- a/Tests/VSResource/CMakeLists.txt
+++ b/Tests/VSResource/CMakeLists.txt
@@ -18,9 +18,8 @@ if(CMAKE_RC_COMPILER MATCHES windres)
message(STATUS "CMAKE_RC_COMPILER MATCHES windres")
add_definitions(/DCMAKE_RCDEFINE=test.txt)
add_definitions(/DCMAKE_RCDEFINE_NO_QUOTED_STRINGS)
- if(MSYS AND CMAKE_CURRENT_BINARY_DIR MATCHES " ")
- # windres cannot handle spaces in include dir, and
- # for the MSys shell we do not convert to shortpath.
+ if(CMAKE_CURRENT_BINARY_DIR MATCHES " ")
+ # windres cannot handle spaces in include dir
set(CMAKE_RC_NO_INCLUDE 1)
endif()
elseif(MSVC60)
diff --git a/Utilities/IWYU/mapping.imp b/Utilities/IWYU/mapping.imp
index 3604c0d..fe0f7df 100644
--- a/Utilities/IWYU/mapping.imp
+++ b/Utilities/IWYU/mapping.imp
@@ -21,6 +21,7 @@
{ include: [ "<wctype.h>", public, "<cwctype>", public ] },
# HACK: check whether this can be removed with next iwyu release.
+ { include: [ "<bits/std_function.h>", private, "<functional>", public ] },
{ include: [ "<bits/time.h>", private, "<time.h>", public ] },
{ include: [ "<bits/types/clock_t.h>", private, "<time.h>", public ] },
{ include: [ "<bits/types/struct_timespec.h>", private, "<time.h>", public ] },
diff --git a/Utilities/Release/hythloth_release.cmake b/Utilities/Release/hythloth_release.cmake
deleted file mode 100644
index d2f4ba5..0000000
--- a/Utilities/Release/hythloth_release.cmake
+++ /dev/null
@@ -1,10 +0,0 @@
-set(PROCESSORS 2)
-set(HOST hythloth)
-set(MAKE_PROGRAM "make")
-set(MAKE "${MAKE_PROGRAM} -j2")
-set(INITIAL_CACHE "
-CMAKE_BUILD_TYPE:STRING=Release
-CMAKE_SKIP_BOOTSTRAP_TEST:STRING=TRUE
-")
-get_filename_component(path "${CMAKE_CURRENT_LIST_FILE}" PATH)
-include(${path}/release_cmake.cmake)
diff --git a/Utilities/Release/linux64_release.cmake b/Utilities/Release/linux64_release.cmake
index feba2a5..3d8ddba 100644
--- a/Utilities/Release/linux64_release.cmake
+++ b/Utilities/Release/linux64_release.cmake
@@ -35,6 +35,7 @@ OPENSSL_SSL_LIBRARY:FILEPATH=/home/kitware/openssl-1.0.2j/lib/libssl.a
PYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3
CPACK_SYSTEM_NAME:STRING=Linux-x86_64
BUILD_QtDialog:BOOL:=TRUE
+CMAKE_SKIP_BOOTSTRAP_TEST:STRING=TRUE
CMake_ENABLE_SERVER_MODE:BOOL=TRUE
CMake_GUI_DISTRIBUTE_WITH_Qt_LGPL:STRING=3
CMake_INSTALL_DEPENDENCIES:BOOL=ON
diff --git a/Utilities/cmlibuv/CMakeLists.txt b/Utilities/cmlibuv/CMakeLists.txt
index 3252e3d..4c8e228 100644
--- a/Utilities/cmlibuv/CMakeLists.txt
+++ b/Utilities/cmlibuv/CMakeLists.txt
@@ -133,6 +133,27 @@ if(CMAKE_SYSTEM_NAME STREQUAL "AIX")
)
endif()
+if(CMAKE_SYSTEM_NAME MATCHES "CYGWIN")
+ list(APPEND uv_libraries
+ )
+ list(APPEND uv_headers
+ include/uv-posix.h
+ )
+ list(APPEND uv_defines
+ )
+ list(APPEND uv_sources
+ src/unix/cygwin.c
+ src/unix/bsd-ifaddrs.c
+ src/unix/no-fsevents.c
+ src/unix/no-proctitle.c
+ src/unix/posix-hrtime.c
+ src/unix/posix-poll.c
+ src/unix/procfs-exepath.c
+ src/unix/sysinfo-loadavg.c
+ src/unix/sysinfo-memory.c
+ )
+endif()
+
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
list(APPEND uv_headers
include/uv-darwin.h
diff --git a/bootstrap b/bootstrap
index a9cf0b2..84285a8 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1148,84 +1148,6 @@ rm -f "${TMPFILE}.cxx"
if [ "x${cmake_cxx_compiler_is_gnu}" != "x1" ]; then
# Check for non-GNU compiler flags
- # If we are on IRIX, check for -LANG:std
- cmake_test_flags="-LANG:std"
- if [ "x${cmake_system}" = "xIRIX64" ]; then
- TMPFILE=`cmake_tmp_file`
- echo '
- #include <iostream>
- int main() { std::cout << "No need for '"${cmake_test_flags}"'" << std::endl; return 0;}
-' > ${TMPFILE}.cxx
- cmake_need_lang_std=0
- if cmake_try_run "${cmake_cxx_compiler}" \
- "${cmake_cxx_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then
- :
- else
- if cmake_try_run "${cmake_cxx_compiler}" \
- "${cmake_cxx_flags} ${cmake_test_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then
- cmake_need_lang_std=1
- fi
- fi
- if [ "x${cmake_need_lang_std}" = "x1" ]; then
- cmake_cxx_flags="${cmake_cxx_flags} ${cmake_test_flags}"
- echo "${cmake_cxx_compiler} needs ${cmake_test_flags}"
- else
- echo "${cmake_cxx_compiler} does not need ${cmake_test_flags}"
- fi
- rm -f "${TMPFILE}.cxx"
- fi
- cmake_test_flags=
-
- # If we are on OSF, check for -timplicit_local -no_implicit_include
- cmake_test_flags="-timplicit_local -no_implicit_include"
- if [ "x${cmake_system}" = "xOSF1" ]; then
- TMPFILE=`cmake_tmp_file`
- echo '
- #include <iostream>
- int main() { std::cout << "We need '"${cmake_test_flags}"'" << std::endl; return 0;}
-' > ${TMPFILE}.cxx
- cmake_need_flags=1
- if cmake_try_run "${cmake_cxx_compiler}" \
- "${cmake_cxx_flags} ${cmake_test_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then
- :
- else
- cmake_need_flags=0
- fi
- if [ "x${cmake_need_flags}" = "x1" ]; then
- cmake_cxx_flags="${cmake_cxx_flags} ${cmake_test_flags}"
- echo "${cmake_cxx_compiler} needs ${cmake_test_flags}"
- else
- echo "${cmake_cxx_compiler} does not need ${cmake_test_flags}"
- fi
- rm -f "${TMPFILE}.cxx"
- fi
- cmake_test_flags=
-
- # If we are on OSF, check for -std strict_ansi -nopure_cname
- cmake_test_flags="-std strict_ansi -nopure_cname"
- if [ "x${cmake_system}" = "xOSF1" ]; then
- TMPFILE=`cmake_tmp_file`
- echo '
- #include <iostream>
- int main() { std::cout << "We need '"${cmake_test_flags}"'" << std::endl; return 0;}
-' > ${TMPFILE}.cxx
- cmake_need_flags=1
- if cmake_try_run "${cmake_cxx_compiler}" \
- "${cmake_cxx_flags} ${cmake_test_flags}" "${TMPFILE}.cxx" >> cmake_bootstrap.log 2>&1; then
- :
- else
- cmake_need_flags=0
- fi
- if [ "x${cmake_need_flags}" = "x1" ]; then
- cmake_cxx_flags="${cmake_cxx_flags} ${cmake_test_flags}"
- echo "${cmake_cxx_compiler} needs ${cmake_test_flags}"
- else
- echo "${cmake_cxx_compiler} does not need ${cmake_test_flags}"
- fi
- rm -f "${TMPFILE}.cxx"
- fi
- cmake_test_flags=
-
# If we are on HP-UX, check for -Ae for the C compiler.
if [ "x${cmake_system}" = "xHP-UX" ]; then
cmake_test_flags="-Ae"