summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Help/manual/OPTIONS_HELP.txt6
-rw-r--r--Modules/FindGTK2.cmake8
-rw-r--r--Source/CMakeVersion.cmake2
-rw-r--r--Source/cmDocumentation.cxx14
-rw-r--r--Source/cmDocumentation.h1
-rw-r--r--Source/cmDocumentationFormatter.h2
-rw-r--r--Source/cmExtraCodeLiteGenerator.cxx4
-rw-r--r--Utilities/Sphinx/CMakeLists.txt15
-rw-r--r--Utilities/Sphinx/cmake.py5
9 files changed, 45 insertions, 12 deletions
diff --git a/Help/manual/OPTIONS_HELP.txt b/Help/manual/OPTIONS_HELP.txt
index 631dfef..feeca7d 100644
--- a/Help/manual/OPTIONS_HELP.txt
+++ b/Help/manual/OPTIONS_HELP.txt
@@ -11,6 +11,12 @@
If a file is specified, the version is written into it.
|file|
+``--help-full [<f>]``
+ Print all help manuals and exit.
+
+ All manuals are printed in a human-readable text format.
+ |file|
+
``--help-manual <man> [<f>]``
Print one help manual and exit.
diff --git a/Modules/FindGTK2.cmake b/Modules/FindGTK2.cmake
index 1bdad16..15bcab8 100644
--- a/Modules/FindGTK2.cmake
+++ b/Modules/FindGTK2.cmake
@@ -643,6 +643,10 @@ endif()
foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
if(_GTK2_component STREQUAL "gtk")
+ # Left for compatibility with previous versions.
+ _GTK2_FIND_INCLUDE_DIR(FONTCONFIG fontconfig/fontconfig.h)
+ _GTK2_FIND_INCLUDE_DIR(X11 X11/Xlib.h)
+
_GTK2_FIND_INCLUDE_DIR(GLIB glib.h)
_GTK2_FIND_INCLUDE_DIR(GLIBCONFIG glibconfig.h)
_GTK2_FIND_LIBRARY (GLIB glib false true)
@@ -721,10 +725,6 @@ foreach(_GTK2_component ${GTK2_FIND_COMPONENTS})
_GTK2_ADD_TARGET (GTK GTK2_DEPENDS gdk atk pangoft2 pango gdk_pixbuf gthread gobject glib
GTK2_OPTIONAL_DEPENDS gio pangocairo cairo)
- # Left for compatibility with previous versions.
- _GTK2_FIND_INCLUDE_DIR(FONTCONFIG fontconfig/fontconfig.h)
- _GTK2_FIND_INCLUDE_DIR(X11 X11/Xlib.h)
-
elseif(_GTK2_component STREQUAL "gtkmm")
_GTK2_FIND_INCLUDE_DIR(SIGC++ sigc++/sigc++.h)
diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake
index 45c6f6f..1e0d885 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 0)
-set(CMake_VERSION_PATCH 20140422)
+set(CMake_VERSION_PATCH 20140429)
#set(CMake_VERSION_RC 1)
diff --git a/Source/cmDocumentation.cxx b/Source/cmDocumentation.cxx
index d421889..71e53f4 100644
--- a/Source/cmDocumentation.cxx
+++ b/Source/cmDocumentation.cxx
@@ -30,6 +30,8 @@ static const char *cmDocumentationStandardOptions[][2] =
"Print usage information and exit."},
{"--version,-version,/V [<f>]",
"Print version number and exit."},
+ {"--help-full [<f>]",
+ "Print all help manuals and exit."},
{"--help-manual <man> [<f>]",
"Print one help manual and exit."},
{"--help-manual-list [<f>]",
@@ -112,6 +114,8 @@ bool cmDocumentation::PrintDocumentation(Type ht, std::ostream& os)
{
case cmDocumentation::Usage:
return this->PrintDocumentationUsage(os);
+ case cmDocumentation::Full:
+ return this->PrintHelpFull(os);
case cmDocumentation::OneManual:
return this->PrintHelpOneManual(os);
case cmDocumentation::OneCommand:
@@ -364,9 +368,9 @@ bool cmDocumentation::CheckOptions(int argc, const char* const* argv,
}
else if(strcmp(argv[i], "--help-full") == 0)
{
+ help.HelpType = cmDocumentation::Full;
GET_OPT_ARGUMENT(help.Filename);
- cmSystemTools::Message("Warning: --help-full no longer supported");
- return true;
+ this->WarnFormFromFilename(help, result);
}
else if(strcmp(argv[i], "--help-html") == 0)
{
@@ -678,6 +682,12 @@ bool cmDocumentation::PrintFiles(std::ostream& os,
}
//----------------------------------------------------------------------------
+bool cmDocumentation::PrintHelpFull(std::ostream& os)
+{
+ return this->PrintFiles(os, "index");
+}
+
+//----------------------------------------------------------------------------
bool cmDocumentation::PrintHelpOneManual(std::ostream& os)
{
std::string mname = this->CurrentArgument;
diff --git a/Source/cmDocumentation.h b/Source/cmDocumentation.h
index 56a4151..c98e48e 100644
--- a/Source/cmDocumentation.h
+++ b/Source/cmDocumentation.h
@@ -102,6 +102,7 @@ private:
bool PrintFiles(std::ostream& os, std::string const& pattern);
bool PrintVersion(std::ostream& os);
+ bool PrintHelpFull(std::ostream& os);
bool PrintHelpOneManual(std::ostream& os);
bool PrintHelpOneCommand(std::ostream& os);
bool PrintHelpOneModule(std::ostream& os);
diff --git a/Source/cmDocumentationFormatter.h b/Source/cmDocumentationFormatter.h
index 118f03d..61766b9 100644
--- a/Source/cmDocumentationFormatter.h
+++ b/Source/cmDocumentationFormatter.h
@@ -26,7 +26,7 @@ public:
/** Types of help provided. */
enum Type
{
- None, Version, Usage, ListManuals,
+ None, Version, Usage, Full, ListManuals,
ListCommands, ListModules, ListProperties, ListVariables, ListPolicies,
OneManual, OneCommand, OneModule, OneProperty, OneVariable, OnePolicy,
OldCustomModules
diff --git a/Source/cmExtraCodeLiteGenerator.cxx b/Source/cmExtraCodeLiteGenerator.cxx
index 946d9d2..cc42bca 100644
--- a/Source/cmExtraCodeLiteGenerator.cxx
+++ b/Source/cmExtraCodeLiteGenerator.cxx
@@ -454,7 +454,7 @@ cmExtraCodeLiteGenerator::GetBuildCommand(const cmMakefile* mf) const
else if ( generator == "MinGW Makefiles" ||
generator == "Unix Makefiles" )
{
- std::stringstream ss;
+ cmOStringStream ss;
ss << make << " -j " << this->CpuCount;
buildCommand = ss.str();
}
@@ -482,7 +482,7 @@ cmExtraCodeLiteGenerator::GetSingleFileBuildCommand
std::string generator = mf->GetSafeDefinition("CMAKE_GENERATOR");
if ( generator == "Unix Makefiles" || generator == "MinGW Makefiles" )
{
- std::stringstream ss;
+ cmOStringStream ss;
ss << make << " -f$(ProjectPath)/Makefile $(CurrentFileName).cpp.o";
buildCommand = ss.str();
}
diff --git a/Utilities/Sphinx/CMakeLists.txt b/Utilities/Sphinx/CMakeLists.txt
index 132ce60..951f7ab 100644
--- a/Utilities/Sphinx/CMakeLists.txt
+++ b/Utilities/Sphinx/CMakeLists.txt
@@ -24,6 +24,7 @@ project(CMakeHelp NONE)
option(SPHINX_MAN "Build man pages with Sphinx" OFF)
option(SPHINX_HTML "Build html help with Sphinx" OFF)
+option(SPHINX_SINGLEHTML "Build html single page help with Sphinx" OFF)
option(SPHINX_QTHELP "Build Qt help with Sphinx" OFF)
option(SPHINX_TEXT "Build text help with Sphinx (not installed)" OFF)
find_program(SPHINX_EXECUTABLE
@@ -33,7 +34,7 @@ find_program(SPHINX_EXECUTABLE
mark_as_advanced(SPHINX_TEXT)
-if(NOT SPHINX_MAN AND NOT SPHINX_HTML AND NOT SPHINX_QTHELP AND NOT SPHINX_TEXT)
+if(NOT SPHINX_MAN AND NOT SPHINX_HTML AND NOT SPHINX_SINGLEHTML AND NOT SPHINX_QTHELP AND NOT SPHINX_TEXT)
return()
elseif(NOT SPHINX_EXECUTABLE)
message(FATAL_ERROR "SPHINX_EXECUTABLE (sphinx-build) is not found!")
@@ -61,6 +62,9 @@ endif()
if(SPHINX_MAN)
list(APPEND doc_formats man)
endif()
+if(SPHINX_SINGLEHTML)
+ list(APPEND doc_formats singlehtml)
+endif()
if(SPHINX_TEXT)
list(APPEND doc_formats text)
endif()
@@ -148,6 +152,15 @@ if(SPHINX_HTML)
PATTERN objects.inv EXCLUDE
)
endif()
+
+if(SPHINX_SINGLEHTML)
+ install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/singlehtml
+ DESTINATION ${CMAKE_DOC_DIR}
+ PATTERN .buildinfo EXCLUDE
+ PATTERN objects.inv EXCLUDE
+ )
+endif()
+
if(SPHINX_QTHELP)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qthelp/CMake-${CMake_VERSION_MAJOR}${CMake_VERSION_MINOR}${CMake_VERSION_PATCH}.qch
DESTINATION ${CMAKE_DOC_DIR}
diff --git a/Utilities/Sphinx/cmake.py b/Utilities/Sphinx/cmake.py
index 108c6ef..6e6e48a 100644
--- a/Utilities/Sphinx/cmake.py
+++ b/Utilities/Sphinx/cmake.py
@@ -308,9 +308,12 @@ class CMakeDomain(Domain):
}
def clear_doc(self, docname):
+ to_clear = set()
for fullname, (fn, _) in self.data['objects'].items():
if fn == docname:
- del self.data['objects'][fullname]
+ to_clear.add(fullname)
+ for fullname in to_clear:
+ del self.data['objects'][fullname]
def resolve_xref(self, env, fromdocname, builder,
typ, target, node, contnode):