[cmake-developers] Need more information concerning the Trilinos test of CMake

2017-10-12 Thread Alan W. Irwin
A PLplot configure, build, and test is an excellent indirect test 
of modern CMake because PLplot currently uses


cmake_minimum_required(VERSION 3.6.2 FATAL_ERROR)

and has a relatively small and fast build but with a rather complex
build system for its size that has been developed over the course of
the last decade. Accordingly Bill Hoffman suggested to me off-list
some time ago that I configure a CMake dashboard submission that
builds the master HEAD CMake version and tests it with a build and
test of PLplot similarly to what is done for Trilinos.  But I am only
getting around to this now, and all I can find in the CMake source
code with regard to Trilinos is Tests/Contracts/Trilinos.

Could someone here please confirm that code is a good model for
what I should set up in the PLplot case?

Assuming that is the case, and I modify my local CMake git repository
to add the required files in Tests/Contracts/PLplot and build that
modified CMake, how would I
submit an Experimental CMake dashboard to test my work?

Or more directly, how would I submit an Experimental CMake dashboard to test
the existing Trilinos case?

Alan
__
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__

Linux-powered Science
__
--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


[cmake-developers] CMake-3.10.0-rc2 yields good comprehensive test results for PLplot

2017-10-12 Thread Alan W. Irwin

I just completed a comprehensive test of PLplot on Linux (Debian
Jessie) using a cmake version that I built myself from the
CMake-3.10.0-rc2 source code using the bootstrap method.  The result
was a complete success for the three different PLplot build systems
(CMake-based build systems for the core build and installed examples,
and a CMake-configured traditional [Makefile + pkg-config] build
system for the installed examples) and the 3 major PLplot build
configurations (shared libraries/dynamic devices, shared
libaries/nondynamic devices, and static libraries/nondynamic devices).
So from the PLplot perspective, CMake-3.10.x is looking quite
promising. For further details of this comprehensive test, see the
"Tested by" stanza of the git log for PLplot commit 6906798
).

Alan
__
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__

Linux-powered Science
__
--

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


[cmake-developers] [ANNOUNCE] CMake 3.10.0-rc2 is now ready for testing

2017-10-12 Thread Robert Maynard
I am proud to announce the second CMake 3.10 release candidate.
  https://cmake.org/download/

Documentation is available at:
  https://cmake.org/cmake/help/v3.10

Release notes appear below and are also published at
  https://cmake.org/cmake/help/v3.10/release/3.10.html

Some of the more significant changes in CMake 3.10 are:

* The flang Fortran compiler is now supported, with compiler id
  "Flang".

* Support for the MSVC ARM64 architecture was added. Visual Studio
  2017 Update 4 and above offer an ARM64 toolchain.

* The "include_guard()" command was introduced to allow guarding
  CMake scripts from being included more than once. The command
  supports "DIRECTORY" and "GLOBAL" options to adjust the
  corresponding include guard scope. If no options given, include
  guard is similar to basic variable-based check.

* "FindMPI" received a major overhaul. It now features language specific
  components, better Fortran support, and support for statically linked
  MPI implementations.

* A "FindOpenACC" module was added to detect compiler support for
  OpenACC.  Currently only supports PGI, GNU and Cray compilers.

* The "FindOpenGL" module underwent numerous improvements. It has gained
  support for GLVND and EGL on Linux. It now has import targets that
  separate the OpenGL library and OpenGL contexts.

* The "GoogleTest" module gained a new command
  "gtest_discover_tests()" implementing dynamic (build-time) test
  discovery.

* When using "AUTOMOC" or "AUTOUIC", source files that are
  "GENERATED" will be processed as well. They were ignored by
  "AUTOMOC" and "AUTOUIC" in earlier releases. See policy "CMP0071".

* A "CTEST_LABELS_FOR_SUBPROJECTS" CTest module variable and CTest
  script variable were added to specify a list of labels that should
  be treated as subprojects by CDash. To use this value in both the
  CTest module and the ctest command line Dashboard Client mode (e.g.
  "ctest -S") set it in the "CTestConfig.cmake" config file.

* CPack gained a "FREEBSD" generator for FreeBSD "pkg(8)",
  configured by the "CPackFreeBSD" module.

* The CPack "DEB" generator, configured by the "CPackDeb" module,
  was enabled on Windows.  While not fully featured (due to the lack
  of external UNIX tools) this will allow building basic cross-
  platform Debian packages.

* The "cmake(1)" "-E" mode gained support for "sha1sum",
  "sha224sum", "sha256sum", "sha384sum", and "sha512sum".

* The "file(GENERATE)" command now interprets relative paths given
  to its "OUTPUT" and "INPUT" arguments with respect to the caller's
  current binary and source directories, respectively. See policy
  "CMP0070".

CMake 3.10 Release Notes


Changes made since CMake 3.9 include the following.


New Features



Platforms
-

* The flang Fortran compiler is now supported, with compiler id
  "Flang".

* A new minimal platform file for "Midipix" was added.

* Support for the MSVC ARM64 architecture was added. Visual Studio
  2017 Update 4 and above offer an ARM64 toolchain.

* Support for the IAR ARM Compiler was improved.


Generators
--

* The Makefile Generators and the "Ninja" generator learned to add
  compiler launcher tools like ccache along with the compiler for the
  "CUDA" language ("C" and "CXX" were supported previously).  See the
  "CMAKE__COMPILER_LAUNCHER" variable and
  "_COMPILER_LAUNCHER" target property for details.

* The "CodeBlocks" extra generator learned to optionally exclude
  files from outside the project root directory from the generated
  project. See the "CMAKE_CODEBLOCKS_EXCLUDE_EXTERNAL_FILES" variable.


Commands


* The "cmake_host_system_information()" command learned more keys to
  get information about the processor capabilities and the host OS
  version.

* The "configure_file()" command learned to support indented "#
  cmakedefine" and "#  cmakedefine01". Spaces and/or tabs between the
  "#" character and the "cmakedefine"/"cmakedefine01" words are now
  understood and preserved in the output.

* The "execute_process()" command gained a "RESULTS_VARIABLE" option
  to collect a list of results from all children in a pipeline of
  processes when multiple "COMMAND" arguments are given.

* The "include_guard()" command was introduced to allow guarding
  CMake scripts from being included more than once. The command
  supports "DIRECTORY" and "GLOBAL" options to adjust the
  corresponding include guard scope. If no options given, include
  guard is similar to basic variable-based check.

* The "string()" command learned a new "PREPEND" subcommand.

* The "string(TIMESTAMP)" command now supports "%A" for full weekday
  name and "%B" for full month name.


Variables
-

* A "CMAKE_DIRECTORY_LABELS" variable was added to specify labels
  for all tests in a directory.


Properties
--

* A "_CPPCHECK" target property and supporting
  "CMAKE__CPPCHECK" variable were introduced to tell the
  Makefile Generators and the "Ninja" gener