[CMake] Trouble starting ctest run with intention of reportingto dashboard
David Cole
david.cole at kitware.com
Wed Jun 10 14:23:49 EDT 2009
OK. You have a correct CTestConfig.cmake now.
Is it at the top level of your source tree? (In
"${CTEST_SOURCE_DIRECTORY}"?)
Do you "include(CTest)" in your CMakeLists.txt file?
On Wed, Jun 10, 2009 at 2:02 PM, Steve Huston <shuston at riverace.com> wrote:
> Hi folks,
>
> I've tried a few more things and am at a loss at this point.
>
> First, I ran this under strace on Linux to see what ctest was really
> doing. For defaults on the config file, when ctest reports:
>
> Cannot find file:
> /qpidbuilds/trunk/qpid/cpp/rhel5/DartConfiguration.tcl
>
> it is actually looking for either of these:
>
> ./CTestConfiguration.ini
> ./DartConfiguration.tcl
>
> Once I knew that, I used the --ctest-config option to point ctest to
> the actual file. It appeared to read the file:
>
> access("../../CTestConfig.cmake", R_OK) = 0
> open("../../CTestConfig.cmake", O_RDONLY) = 3
> fstat64(3, {st_mode=S_IFREG|0744, st_size=541, ...}) = 0
> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
> 0) = 0xfffffffff7f54000
> read(3, "## This file should be placed in"..., 8192) = 541
> read(3, "", 4096) = 0
> read(3, "", 8192) = 0
> close(3) = 0
>
> But still reported the same problem that there's no nightly start time
> found.
> The config file I downloaded from my cdash install is:
>
> ## This file should be placed in the root directory of your project.
> ## Then modify the CMakeLists.txt file in the root directory of your
> ## project to incorporate the testing dashboard.
> ## # The following are required to uses Dart and the Cdash dashboard
> ## ENABLE_TESTING()
> ## INCLUDE(CTest)
> set(CTEST_PROJECT_NAME "Qpid")
> set(CTEST_NIGHTLY_START_TIME "00:00:00 EST")
>
> set(CTEST_DROP_METHOD "http")
> set(CTEST_DROP_SITE "www.riverace.com")
> set(CTEST_DROP_LOCATION "/CDash-1.4.2/submit.php?project=Qpid")
> set(CTEST_DROP_SITE_CDASH TRUE)
>
> Any clues on what needs to be set?
>
> Thanks,
> -Steve
>
> > -----Original Message-----
> > From: cmake-bounces at cmake.org
> > [mailto:cmake-bounces at cmake.org] On Behalf Of Steve Huston
> > Sent: Thursday, June 04, 2009 1:27 PM
> > To: 'David Cole'
> > Cc: cmake at cmake.org
> > Subject: Re: [CMake] Trouble starting ctest run with
> > intention of reportingto dashboard
> >
> >
> > Thanks for the quick assistance, David. No joy though...
> >
> > > After setting up the project on the CDash server, the project
> > > administrator should be able to download the CTestConfig.cmake
> > > from CDash to put in the source tree.
> >
> > Ah, ok. I did this. I don't remember reading a direction like this
> > while setting up the project, but may have missed it.
> >
> > > Your CTestConfig.cmake does not have the proper variable
> definitions
> > > in it to work with CDash... for example, this is a snippet from
> > > CTestConfig.cmake in the CMake source tree:
> > > ...
> > > All of the variables begin with CTEST_....
> >
> > Ah-ha... The example CTestConfig.cmake in "Mastering Cmake" pg 195
> > don't have the CTEST_ prefixes either.
> >
> > > CDash should generate the proper CTestConfig.cmake for you after
> the
> > > project has been set up.
> >
> > Ok, I did this. The file generated is:
> >
> > ## This file should be placed in the root directory of your project.
> > ## Then modify the CMakeLists.txt file in the root directory of your
> > ## project to incorporate the testing dashboard.
> > ## # The following are required to uses Dart and the Cdash dashboard
> > ## ENABLE_TESTING()
> > ## INCLUDE(CTest)
> > set(CTEST_PROJECT_NAME "Qpid%20C++")
> > set(CTEST_NIGHTLY_START_TIME "00:00:00 EST")
> >
> > set(CTEST_DROP_METHOD "http")
> > set(CTEST_DROP_SITE "www.riverace.com")
> > set(CTEST_DROP_LOCATION
> > "/CDash-1.4.2/submit.php?project=Qpid%2520C%2B%2B")
> > set(CTEST_DROP_SITE_CDASH TRUE)
> >
> > I put this in the top-level source directory and retried. This time
> > with -VV:
> >
> > [shuston at smokey cpp]$ ctest -VV -S ~/trunk_nightly.cmake
> > * Extra verbosity turned on
> > Reading Script: /home/shuston/trunk_nightly.cmake
> > Run ctest command:
> > "/home/shuston/Desktop/cmake-2.6.2-Linux-i386/bin/ctest" -D Nightly
> > Cannot find file:
> > /qpidbuilds/trunk/qpid/cpp/rhel5/DartConfiguration.tcl
> > Site:
> > Build name:
> > WARNING: No nightly start time found please set in CTestConfig.cmake
> > or DartConfig.cmake
> > Problem initializing the dashboard.
> > Unable to run ctest:
> > Cannot find file:
> > /qpidbuilds/trunk/qpid/cpp/rhel5/DartConfiguration.tcl
> > Site:
> > Build name:
> > WARNING: No nightly start time found please set in CTestConfig.cmake
> > or DartConfig.cmake
> > Problem initializing the dashboard.
> >
> >
> > I'm not sure it's even seeing the CTestConfig.cmake file - after the
> > run above, I added a junk line to the top of the file and re-ran
> > ctest... No change in output. I was thinking it should complain
> about
> > the junk in the file.
> >
> > What do you think?
> >
> > Thanks,
> > -Steve
> >
> >
> > On Thu, Jun 4, 2009 at 12:26 PM, Steve Huston <shuston at riverace.com>
> > wrote:
> >
> > Still have problems...
> >
> > On Linux, I cd to my main source dir...
> >
> > [shuston at smokey cpp]$ ctest -S ~/trunk_nightly.cmake
> >
> > Unable to run ctest:
> > Cannot find file:
> >
> > /qpidbuilds/trunk/qpid/cpp/rhel5/DartConfiguration.tcl
> >
> > Site:
> > Build name:
> > WARNING: No nightly start time found please set in CTestConfig.cmake
> > or DartConfig.cmake
> > Problem initializing the dashboard.
> >
> >
> >
> > My CTestConfig.cmake is in the same directory I ran ctest from. It
> > contains:
> >
> > [shuston at smokey cpp]$ cat CTestConfig.cmake
> > # Submit build to riverace.com's CDash dashboard.
> > SET(DROP_METHOD "http")
> > SET(DROP_SITE "www.riverace.com")
> > SET(DROP_LOCATION "CDash-1.4.2/submit.php?project=Qpid%20C++")
> >
> > set (NIGHTLY_START_TIME "00:00:00 EDT")
> >
> >
> >
> > My script (trunk_nightly.cmake) has:
> >
> > [shuston at smokey cpp]$ more ~/trunk_nightly.cmake
> > # CMake/CTest script to run the daily/nightly build against trunk
> >
> > set (CTEST_SOURCE_DIRECTORY /qpidbuilds/trunk/qpid/cpp)
> > set (CTEST_BINARY_DIRECTORY /qpidbuilds/trunk/qpid/cpp/rhel5)
> > set (CTEST_COMMAND "\"${CTEST_EXECUTABLE_NAME}\" -D Nightly")
> > set (CTEST_MAKE_COMMAND "\"${CMAKE_EXECUTABLE_NAME}\"")
> >
> > # Wipe the build dir to ensure a clean build
> > set (CTEST_START_WITH_EMPTY_BINARY_DIRECTORY TRUE)
> >
> > # Set up initial cache entries to get started
> > set (CTEST_INITIAL_CACHE "
> >
> > ... A bunch of settings that do end up in the cache file in a clean
> > dir
> > ")
> >
> > find_program(CTEST_SVN_COMMAND NAMES svn)
> >
> > set (CTEST_CVS_COMMAND "${CTEST_SVN_COMMAND}")
> > set (CTEST_EXTRA_UPDATES_1 "C:/ace/exported/qpid/trunk/qpid/specs")
> > set (CTEST_EXTRA_UPDATES_2
> "C:/ace/exported/qpid/trunk/qpid/gentools")
> >
> > set (CTEST_ENVIRONMENT
> > "LD_LIBRARY_PATH=${CTEST_BINARY_DIRECTORY}/src:/usr/lib}")
> >
> > set (NIGHTLY_START_TIME "00:00:00 EDT")
> >
> > --
> > Steve Huston, Riverace Corporation
> > shuston at riverace.com
> >
> >
> > -----Original Message-----
> > From: David Cole [mailto:david.cole at kitware.com]
> > Sent: Thursday, June 04, 2009 11:11 AM
> > To: Tyler Roscoe
> > Cc: Steve Huston; cmake at cmake.org
> > Subject: Re: [CMake] Trouble starting ctest run with intention of
> > reporting to dashboard
> >
> >
> > - Download the CTestConfig.cmake from CDash
> > - Place it at the top of your source tree (next to your main
> > CMakeLists.txt)
> > - No need for the --ctest-config on the ctest command line
> >
> >
> >
> > Arrange it like that, and let us know if you still have problems.
> >
> >
> >
> >
> > HTH,
> > David
> >
> >
> >
> >
> > On Thu, Jun 4, 2009 at 11:03 AM, Tyler Roscoe <tyler at cryptio.net>
> > wrote:
> >
> > On Wed, Jun 03, 2009 at 07:21:33PM -0400, Steve Huston wrote:
> > > C:\ace\exported\qpid> ctest -S trunk_nightly.cmake --ctest-config
> > > trunk\qpid\cpp\CTestConfig.cmake
> > > Unable to run ctest:
> > > Cannot find file:
> > > C:/ace/exported/qpid/trunk/qpid/cpp/build/DartConfiguration.tcl
> > > Site:
> > > Build name:
> > > WARNING: No nightly start time found please set in
> CTestConfig.cmake
> > > or DartConfig.cmake
> > > Problem initializing the dashboard.
> > >
> > > It doesn't seem to see my CTestConfig.cmake file - it has a
> > > NIGHTLY_START_TIME in it.
> >
> >
> > ctest might expect to find CTestConfig.cmake relative to your
> current
> > binary directory rather than relative to your working directory.
> Maybe
> > try fixing up your --ctest-config path or using an absolute path to
> > your
> > CTestConfig?
> >
> >
> > > And what's DartConfiguration.tcl? It wasn't mentioned in the
> > > "Mastering Cmake" book, and I'm trying to use cdash, not dart.
> >
> >
> > Dart is the ancestor of CDash. CMake still writes out a
> > DartConfiguration.tcl in every binary directory where include(CTest)
> > has
> > been run.
> >
> > So actually, make sure you are doing include(CTest) in your
> > CMakeLists.
> > Maybe this will fix your first problem as well?
> >
> > tyler
> >
> > _______________________________________________
> > Powered by www.kitware.com
> >
> > Visit other Kitware open-source projects at
> > http://www.kitware.com/opensource/opensource.html
> >
> > Please keep messages on-topic and check the CMake FAQ at:
> > http://www.cmake.org/Wiki/CMake_FAQ
> >
> > Follow this link to subscribe/unsubscribe:
> > http://www.cmake.org/mailman/listinfo/cmake
> >
> > _______________________________________________
> > Powered by www.kitware.com
> >
> > Visit other Kitware open-source projects at
> > http://www.kitware.com/opensource/opensource.html
> >
> > Please keep messages on-topic and check the CMake FAQ at:
> > http://www.cmake.org/Wiki/CMake_FAQ
> >
> > Follow this link to subscribe/unsubscribe:
> > http://www.cmake.org/mailman/listinfo/cmake
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20090610/040bb3d9/attachment-0001.htm>
More information about the CMake
mailing list