diff options
Diffstat (limited to 'addon')
-rw-r--r-- | addon/configgen/README | 13 | ||||
-rw-r--r-- | addon/configgen/config_templ.l | 50 | ||||
-rw-r--r-- | addon/configgen/configgen.cpp | 17 |
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"); } |