Skip to content

Commit

Permalink
Usage of version and help in addons
Browse files Browse the repository at this point in the history
More consequent and consistent usage of help and version in addons.
  • Loading branch information
albert-github committed Dec 19, 2020
1 parent 77a37d1 commit b320b14
Show file tree
Hide file tree
Showing 9 changed files with 130 additions and 27 deletions.
2 changes: 2 additions & 0 deletions addon/doxmlparser/examples/metrics/CMakeLists.txt
@@ -1,6 +1,7 @@

include_directories(
../../include
${PROJECT_SOURCE_DIR}/libversion
)

add_executable(doxmlparser_metrics
Expand All @@ -10,6 +11,7 @@ main.cpp

target_link_libraries(doxmlparser_metrics
doxmlparser
doxygen_version
qtools
${COVERAGE_LINKER_FLAGS}
)
Expand Down
21 changes: 19 additions & 2 deletions addon/doxmlparser/examples/metrics/main.cpp
Expand Up @@ -22,6 +22,7 @@
#include <stdlib.h>
#include <string.h>
#include <doxmlintf.h>
#include "version.h"

bool isDocumented(IDocRoot *brief,IDocRoot *detailed)
{
Expand Down Expand Up @@ -49,9 +50,25 @@ bool isDocumented(IDocRoot *brief,IDocRoot *detailed)

int main(int argc,char **argv)
{
if (argc!=2)
int locArgc = argc;

if (locArgc == 2)
{
if (!strcmp(argv[1],"--help"))
{
printf("Usage: %s xml_dir\n",argv[0]);
exit(0);
}
else if (!strcmp(argv[1],"--version"))
{
printf("%s version: %s\n",argv[0],getFullVersion());
exit(0);
}
}

if (locArgc!=2)
{
printf("Usage: %s xml_output_dir\n",argv[0]);
printf("Usage: %s xml_dir\n",argv[0]);
exit(1);
}

Expand Down
2 changes: 2 additions & 0 deletions addon/doxmlparser/test/CMakeLists.txt
@@ -1,6 +1,7 @@

include_directories(
../include
${PROJECT_SOURCE_DIR}/libversion
${PROJECT_SOURCE_DIR}/qtools
)

Expand All @@ -11,6 +12,7 @@ main.cpp

target_link_libraries(doxmlparser_test
doxmlparser
doxygen_version
qtools
${COVERAGE_LINKER_FLAGS}
)
21 changes: 19 additions & 2 deletions addon/doxmlparser/test/main.cpp
Expand Up @@ -17,6 +17,7 @@
#include <stdlib.h>
#include <doxmlintf.h>
#include <qstring.h>
#include "version.h"

/*! Dumps the contents of a hyperlinked text fragment as plain text to the
* output.
Expand Down Expand Up @@ -577,9 +578,25 @@ void DumpParamList(IParamIterator *pli,int indent)

int main(int argc,char **argv)
{
if (argc!=2)
int locArgc = argc;

if (locArgc == 2)
{
if (!strcmp(argv[1],"--help"))
{
printf("Usage: %s xml_dir\n",argv[0]);
exit(0);
}
else if (!strcmp(argv[1],"--version"))
{
printf("%s version: %s\n",argv[0],getFullVersion());
exit(0);
}
}

if (locArgc!=2)
{
printf("Usage: %s xmldir\n",argv[0]);
printf("Usage: %s xml_dir\n",argv[0]);
exit(1);
}

Expand Down
19 changes: 18 additions & 1 deletion addon/doxyapp/doxyapp.cpp
Expand Up @@ -38,6 +38,7 @@
#include "classlist.h"
#include "config.h"
#include "filename.h"
#include "version.h"

class XRefDummyCodeGenerator : public CodeOutputInterface
{
Expand Down Expand Up @@ -225,7 +226,23 @@ int main(int argc,char **argv)
{
char cmd[256];

if (argc<2)
int locArgc = argc;

if (locArgc == 2)
{
if (!strcmp(argv[1],"--help"))
{
printf("Usage: %s [source_file | source_dir]\n",argv[0]);
exit(0);
}
else if (!strcmp(argv[1],"--version"))
{
printf("%s version: %s\n",argv[0],getFullVersion());
exit(0);
}
}

if (locArgc!=2)
{
printf("Usage: %s [source_file | source_dir]\n",argv[0]);
exit(1);
Expand Down
24 changes: 18 additions & 6 deletions addon/doxyparse/doxyparse.cpp
Expand Up @@ -431,15 +431,27 @@ static void listSymbols() {
}

int main(int argc,char **argv) {
if (argc < 2) {
int locArgc = argc;

if (locArgc == 2)
{
if (!strcmp(argv[1],"--help"))
{
printf("Usage: %s [source_file | source_dir]\n",argv[0]);
exit(0);
}
else if (!strcmp(argv[1],"--version"))
{
printf("%s version: %s\n",argv[0],getFullVersion());
exit(0);
}
}

if (locArgc!=2)
{
printf("Usage: %s [source_file | source_dir]\n",argv[0]);
exit(1);
}
if (qstrcmp(&argv[1][2], "version") == 0) {
QCString versionString = getDoxygenVersion();
printf("%s\n", versionString.data());
exit(0);
}

// initialize data structures
initDoxygen();
Expand Down
11 changes: 7 additions & 4 deletions addon/doxysearch/CMakeLists.txt
Expand Up @@ -6,8 +6,9 @@ if (WIN32)
endif()

include_directories(
${PROJECT_SOURCE_DIR}/qtools
${XAPIAN_INCLUDE_DIR}
${PROJECT_SOURCE_DIR}/libversion
${PROJECT_SOURCE_DIR}/qtools
${XAPIAN_INCLUDE_DIR}
${ZLIB_INCLUDE_DIRS}
)
add_executable(doxyindexer
Expand All @@ -16,18 +17,20 @@ add_executable(doxyindexer
target_link_libraries(doxyindexer
${XAPIAN_LIBRARIES}
${ZLIB_LIBRARIES}
${WIN_EXTRA_LIBS}
${WIN_EXTRA_LIBS}
${COVERAGE_LINKER_FLAGS}
doxygen_version
qtools
)

add_executable(doxysearch.cgi
doxysearch.cpp
)
target_link_libraries(doxysearch.cgi
doxygen_version
${XAPIAN_LIBRARIES}
${ZLIB_LIBRARIES}
${WIN_EXTRA_LIBS}
${WIN_EXTRA_LIBS}
)

install(TARGETS doxyindexer doxysearch.cgi DESTINATION bin)
13 changes: 10 additions & 3 deletions addon/doxysearch/doxyindexer.cpp
Expand Up @@ -30,6 +30,8 @@
// Xapian include
#include <xapian.h>

#include "version.h"

#define MAX_TERM_LENGTH 245

#if defined(_WIN32) && !defined(__CYGWIN__)
Expand Down Expand Up @@ -303,10 +305,10 @@ class XMLErrorHandler : public QXmlErrorHandler
QString errorMsg;
};

static void usage(const char *name)
static void usage(const char *name, int exitVal = 1)
{
std::cerr << "Usage: " << name << " [-o output_dir] searchdata.xml [searchdata2.xml ...]" << std::endl;
exit(1);
exit(exitVal);
}

/** main function to index data */
Expand Down Expand Up @@ -340,7 +342,12 @@ int main(int argc,const char **argv)
}
else if (std::string(argv[i])=="-h" || std::string(argv[i])=="--help")
{
usage(argv[0]);
usage(argv[0],0);
}
else if (std::string(argv[i])=="-v" || std::string(argv[i])=="--version")
{
std::cerr << argv[0] << " version: " << getFullVersion() << std::endl;
exit(0);
}
}

Expand Down
44 changes: 35 additions & 9 deletions addon/doxysearch/doxysearch.cpp
Expand Up @@ -27,6 +27,8 @@
// Xapian includes
#include <xapian.h>

#include "version.h"

#ifdef _WIN32
#include <windows.h>
#else
Expand Down Expand Up @@ -306,31 +308,55 @@ static void showError(const std::string &callback,const std::string &error)
exit(0);
}

static void usage(const char *name, int exitVal = 1)
{
std::cerr << "Usage: " << name << "[query_string]" << std::endl;
std::cerr << " " << "alternatively the query string can be given by the environment variable QUERY_STRING" << std::endl;
exit(exitVal);
}

/** Main routine */
int main(int argc,char **argv)
{
// process inputs that were passed to us via QUERY_STRING
std::cout << "Content-Type:application/javascript;charset=utf-8\r\n\n";
std::string callback;
try
{
// get input parameters
const char *queryEnv = getenv("QUERY_STRING");
std::string queryString;
if (queryEnv)
if (argc == 1)
{
queryString = queryEnv;
const char *queryEnv = getenv("QUERY_STRING");
if (queryEnv)
{
queryString = queryEnv;
}
else
{
usage(argv[0]);
}
}
else if (argc>=2)
else if (argc == 2)
{
queryString = argv[1];
if (std::string(argv[1])=="-h" || std::string(argv[1])=="--help")
{
usage(argv[0],0);
}
else if (std::string(argv[1])=="-v" || std::string(argv[1])=="--version")
{
std::cerr << argv[0] << " version: " << getFullVersion() << std::endl;
exit(0);
}
else
{
queryString = argv[1];
}
}
else
{
std::cout << "No input!\n";
exit(1);
usage(argv[0]);
}

std::cout << "Content-Type:application/javascript;charset=utf-8\r\n\n";
// parse query string
std::vector<std::string> parts = split(queryString,'&');
std::string searchFor,callback;
Expand Down

0 comments on commit b320b14

Please sign in to comment.