MantisBT - CMake
View Issue Details
0010857CMakeCTestpublic2010-06-21 15:352010-06-23 07:45
Orion E. Poplawski 
Brad King 
normalminoralways
closedfixed 
CMake-2-8 
 
0010857: CMake.HTML test requires internet access
I package cmake for Fedora. The rpms are built on machines with no internet access. The CMake.HTML test fails because xmllint cannot access the internet:

        Start 21: CMake.HTML
21: Test command: /usr/bin/xmllint --valid --noout /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cmake.html /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cmake-policies.html /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cmake-properties.html /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cmake-variables.html /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cmake-modules.html /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cmake-commands.html /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cmake-compatcommands.html /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/ctest.html /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cpack.html /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/ccmake.html /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cmake-gui.html
21: Test timeout computed to be: 1500
21: error : No such process
21: /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cmake.html:1: warning: failed to load external entity "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" [^]
21: C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" [^]
21: ^
21: /builddir/build/BUILD/cmake-2.8.2-rc2/build/Docs/cmake.html:2: validity error : Validation failed: no DTD found !

xmllint can take the --nonet option. Perhaps there could be a way to pass this in? In the meantime, I'm just disabling the test in our builds. Perhaps fine to keep it this way.
No tags attached.
related to 0010338closed Brad King CMake generated HTML is not valid HTML 
Issue History
2010-06-21 15:35Orion E. PoplawskiNew Issue
2010-06-21 17:18Bill HoffmanStatusnew => assigned
2010-06-21 17:18Bill HoffmanAssigned To => Brad King
2010-06-21 17:25Brad KingRelationship addedrelated to 0010338
2010-06-21 17:31Brad KingNote Added: 0021109
2010-06-22 08:35Brad KingNote Added: 0021114
2010-06-22 08:43Brad KingNote Added: 0021115
2010-06-22 08:57Brad KingNote Added: 0021116
2010-06-22 09:14Brad KingNote Added: 0021117
2010-06-22 09:47Brad KingNote Added: 0021119
2010-06-22 10:13Brad KingStatusassigned => closed
2010-06-22 10:13Brad KingResolutionopen => fixed
2010-06-23 07:45Brad KingNote Added: 0021145
2010-06-23 07:45Brad KingStatusclosed => feedback
2010-06-23 07:45Brad KingResolutionfixed => reopened
2010-06-23 07:45Brad KingStatusfeedback => closed
2010-06-23 07:45Brad KingResolutionreopened => fixed

Notes
(0021109)
Brad King   
2010-06-21 17:31   
The test was added here:

  http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=370e5b94 [^]
(0021114)
Brad King   
2010-06-22 08:35   
It is easy enough to add the "--nonet" option, but will that prevent xmllint from actually validating against the DTD?
(0021115)
Brad King   
2010-06-22 08:43   
Some simple experiments say yes. I've published a fix to 'next':

  http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=fbdb9e4f [^]
(0021116)
Brad King   
2010-06-22 08:57   
Well, my local tests were not representative of all machines. Our continuous build fails because '--nonet' prevents the DTD from being available:

I/O error : Attempt to load network entity http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd [^]
/.../Docs/cmake.html:1: warning: failed to load external entity "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" [^]
C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" [^]
(0021117)
Brad King   
2010-06-22 09:14   
I've reverted the fix in 'next':

  http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ca7c089b [^]

In order to run this test locally we need to include a copy of the xhtml dtd and all its dependencies.
(0021119)
Brad King   
2010-06-22 09:47   
I've published another fix that provides the dtd locally:

  http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=8c0e79f8 [^]
(0021145)
Brad King   
2010-06-23 07:45   
Older xmllint versions do not have --path or --nonet. Falling back in that case:

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1819d9d6 [^]