Re: [cmake-developers] PLplot contract test

2017-10-27 Thread Alan W. Irwin

On 2017-10-27 07:02-0400 Brad King wrote:


On 10/26/2017 09:58 PM, Alan W. Irwin wrote:

However, one of the deficiencies of this third method is the
bootstrap script only pays attention to CXXFLAGS and CFLAGS when
setting compile flags for building the preliminary version of CMake

[...]


You could do this to apply flags to bootstrap and configuration
steps but not to the tests:

```
set(ENV{CXXFLAGS} "-O3 -DNDEBUG")
set(ENV{CFLAGS} "-O3 -DNDEBUG")
set(CTEST_BUILD_CONFIGURATION "")
macro(dashboard_hook_build)
 unset(ENV{CXXFLAGS})
 unset(ENV{CFLAGS})
endmacro()
```


Thanks for that idea which I have adopted (using
set(CTEST_BUILD_CONFIGURATION "Release")).  It generates perfect
dashboards (see the Experimental raven result for today).

Should at least some of these considerations concerning CXXFLAGS and
CFLAGS (e.g., they normally should be unset to assure a standard build
configuration corresponding to CTEST_BUILD_CONFIGURATION) be
documented in comments in cmake_common.cmake?

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


Re: [cmake-developers] PLplot contract test

2017-10-27 Thread Brad King
On 10/26/2017 09:58 PM, Alan W. Irwin wrote:
> While trying to set up a clean Experimental dashboard, I have noticed
> a minor spelling issue (furhter ==> further in
> a comment in cmake_common.cmake).

Fixed, thanks.

> unset(ENV{CXXFLAGS})
> unset(ENV{CFLAGS})
> unset(ENV{FFLAGS})
> set(CTEST_BUILD_CONFIGURATION Release)

This is the intended way for dashboard scripts.

> That gave a completely clean result (see the second Experimental
> "raven" results on 2017-10-26 for commit fc3668). I also followed up
> with a Nightly raven result (generated by crontab).  That also gave a
> perfectly clean result (see the first Nightly "raven" results on
> 2017-10-26 for commit da363e).  So it looks like I am basically in
> business (except for the PLplot build part of the test that you
> plan to work on as time permits).

Great!

> However, one of the deficiencies of this third method is the
> bootstrap script only pays attention to CXXFLAGS and CFLAGS when
> setting compile flags for building the preliminary version of CMake so
> that build is unoptimized in this case which will significantly add to
> the time taken to configure the build of the full version of CMake

I doubt it would make much difference.  Most of the configuration
time is spent waiting for try_compile to complete and such, though
I've never timed it.

You could do this to apply flags to bootstrap and configuration
steps but not to the tests:

```
set(ENV{CXXFLAGS} "-O3 -DNDEBUG")
set(ENV{CFLAGS} "-O3 -DNDEBUG")
set(CTEST_BUILD_CONFIGURATION "")
macro(dashboard_hook_build)
  unset(ENV{CXXFLAGS})
  unset(ENV{CFLAGS})
endmacro()
```

> debug whatever is wrong on the CMake end for those 4 test failures.

That would be nice if anyone has time.  However, I think at least some
of them may be testing per-config behavior, so by adding `-DNDEBUG`
to the all-config flags they get confused.

-Brad
-- 

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