summaryrefslogtreecommitdiffstats
path: root/addon/configgen
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2000-06-04 17:46:13 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2000-06-04 17:46:13 (GMT)
commitd8197176c24ca1a41af722063bfb6ceeb050442c (patch)
tree85b63b795f663bb71c26c647948a085a3849177d /addon/configgen
parent3e33c5094f5127c719418656fff8e47d2e19405e (diff)
downloadDoxygen-d8197176c24ca1a41af722063bfb6ceeb050442c.zip
Doxygen-d8197176c24ca1a41af722063bfb6ceeb050442c.tar.gz
Doxygen-d8197176c24ca1a41af722063bfb6ceeb050442c.tar.bz2
Release-1.1.4
Diffstat (limited to 'addon/configgen')
-rw-r--r--addon/configgen/README13
-rw-r--r--addon/configgen/config_templ.l50
-rw-r--r--addon/configgen/configgen.cpp17
3 files changed, 66 insertions, 14 deletions
diff --git a/addon/configgen/README b/addon/configgen/README
new file mode 100644
index 0000000..717ca2e
--- /dev/null
+++ b/addon/configgen/README
@@ -0,0 +1,13 @@
+The configgen tool is used to:
+- generate the parser for the configuration file based on
+ the templates config_templ.h and config_templ.l
+- generate the GUI frontend "doxywizard" for creating a configuration
+ file based on the templates doxywizard_templ.h and doxywizard_templ.cpp
+
+If you want to add a new configuration option to doxygen,
+then you should add a new entry the init() function in configgen.cpp
+
+After that you can do a "make install" in this directory to update
+the config.l and config.h in doxygen's source directory.
+
+-Dimitri
diff --git a/addon/configgen/config_templ.l b/addon/configgen/config_templ.l
index 006bdc6..561e54b 100644
--- a/addon/configgen/config_templ.l
+++ b/addon/configgen/config_templ.l
@@ -622,6 +622,39 @@ void checkConfig()
#endif
s=Config::includePath.next();
}
+
+ // check dot path
+ if (!Config::dotPath.isEmpty())
+ {
+ if (Config::dotPath.find('\\')!=-1)
+ {
+ if (Config::dotPath.at(Config::dotPath.length()-1)!='\\')
+ {
+ Config::dotPath+='\\';
+ }
+ }
+ else if (Config::dotPath.find('/')!=-1)
+ {
+ if (Config::dotPath.at(Config::dotPath.length()-1)!='/')
+ {
+ Config::dotPath+='/';
+ }
+ }
+#if defined(_WIN32)
+ QFileInfo dp(Config::dotPath+"dot.exe");
+#else
+ QFileInfo dp(Config::dotPath+"dot");
+#endif
+ if (!dp.exists() || !dp.isFile())
+ {
+ err("Warning: the dot tool could not be found at %s\n",Config::dotPath.data());
+ }
+ }
+ else // make sure the string is empty but not null!
+ {
+ Config::dotPath="";
+ }
+
// check input
if (Config::inputSources.count()==0)
{
@@ -646,13 +679,13 @@ void checkConfig()
// add default pattern if needed
if (Config::filePatternList.isEmpty())
{
- Config::filePatternList="*";
+ Config::filePatternList.append("*");
}
// add default pattern if needed
if (Config::examplePatternList.isEmpty())
{
- Config::examplePatternList="*";
+ Config::examplePatternList.append("*");
}
// add default pattern if needed
@@ -676,18 +709,23 @@ void checkConfig()
err("Error: tag CGI_URL: no URL to cgi directory specified.\n");
exit(1);
}
- else if (Config::cgiURL.left(7)!="http://")
+ else if (Config::cgiURL.left(7)!="http://" &&
+ Config::cgiURL.left(8)!="https://"
+ )
{
err("Error: tag CGI_URL: URL to cgi directory is invalid (must "
- "start with http://).\n");
+ "start with http:// or https://).\n");
exit(1);
}
// check documentation URL
if (Config::docURL.isEmpty())
{
- Config::docURL = Config::outputDir.copy().prepend("file://")+"html";
+ Config::docURL = Config::outputDir.copy().prepend("file://").append("html");
}
- else if (Config::docURL.left(7)!="http://" && Config::docURL.left(7)!="file://")
+ else if (Config::docURL.left(7)!="http://" &&
+ Config::docURL.left(8)!="https://" &&
+ Config::docURL.left(7)!="file://"
+ )
{
err("Error: tag DOC_URL: URL to documentation is invalid or "
"not absolute.\n");
diff --git a/addon/configgen/configgen.cpp b/addon/configgen/configgen.cpp
index cc51c4c..557f70d 100644
--- a/addon/configgen/configgen.cpp
+++ b/addon/configgen/configgen.cpp
@@ -1486,6 +1486,15 @@ void init()
"will graphical hierarchy of all classes instead of a textual one. \n"
);
addDependency("gfxHierarchyFlag","haveDotFlag");
+ ConfigString::add("dotPath",
+ "DOT_PATH",
+ "",
+ "path to the dot tool",
+ "This tag can be used to specify the path where the dot tool can be found. \n"
+ "If left blank, it is assumed the dot tool can be found on the path. \n",
+ ConfigString::Dir
+ );
+ addDependency("dotPath","haveDotFlag");
//-----------------------------------------------------------------------------------------------
ConfigInfo::add( "Search","Configuration::addtions related to the search engine ");
@@ -1555,12 +1564,4 @@ void init()
addDependency("extDocPathList","searchEngineFlag");
// The IMAGE_PATTERNS tag is now officially obsolete.
- //-----------------------------------------------------------------------------------------------
- //ConfigInfo::add("not used");
- //-----------------------------------------------------------------------------------------------
- //ConfigList::add("imagePatternList",
- // "IMAGE_PATTERNS",
- // "",
- // "list of image paths",
- // "donīt know\n");
}