| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix compiling with clang parser support and with Clang compiler, too
When compiling the code with the Clang compiler a new CMake option
`use_libc++` is available which is enabled by default. It determines if
the Clang compiler should use libc++ as its C++ standard library or uses
the systems default (e.g. libstdc++ on Linux).
Disabling that option might help when compiling with Clang and the
option `use_libclang` is enabled but the associated library was not
built with libc++ as its C++ standard library.
Additionally, the doxygen executable that is created when CMake option
`static_libclang` is enabled, no longer crashes.
* Removing obsolete (and wrong) forcing of -std=c++11 for GCC
The entire Doxygen project already requires the compiler to run in C++14
mode. That setting is applied globally in the top-most `CMakeLists.txt`
file.
Therefore, forcing GCC to run in C++11 mode in `src/CMakeLists.txt` is
wrong and obsolete.
|
|
|
|
| |
linking against clangTooling
|
|
|
|
|
|
|
|
|
| |
New CMAKE options (default OFF):
- SANITIZE_ADDRESS:BOOL=OFF
- SANITIZE_LINK_STATIC:BOOL=OFF
- SANITIZE_MEMORY:BOOL=OFF
- SANITIZE_THREAD:BOOL=OFF
- SANITIZE_UNDEFINED:BOOL=OFF
|
| |
|
|
|
|
| |
MSYS compiles also with gcc and therefore should skip this code analogous to MinGW as well
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix C compiler warnings about C++ flags
```
cc1: warning: command line option ‘-Wnon-virtual-dtor’ is valid for C++/ObjC++ but not for C
cc1: warning: command line option ‘-Woverloaded-virtual’ is valid for C++/ObjC++ but not for C
```
... using the generator expression `$<COMPILE_LANGUAGE:CXX>`.
* COMPILE_LANGUAGE is new in CMake 3.3
See https://cmake.org/cmake/help/v3.3/release/3.3.html
* CMake 3.3 is required
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When using NMake Makefiles on windows we get messages like:
```
D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\include\vector(960): warning C4530: C++ exception handler used, but unwind semantics are not enabled. Specify /EHsc
```
From the help information of `cl`:
```
/EHs enable C++ EH (no SEH exceptions)
/EHc extern "C" defaults to nothrow
```
Looking at the usage with the `msbuild / vsxproj` type builds (as done on appveyor), here the option `/EHsc` is used.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
During transition to cmake build the, essential for debugging, flag possibility was not added.
(Added analogous to LEX_FLAGS and YACC_Flags).
Available debug options (according to old Makefile):
`-debug_parser`
`-debug_token_manager`
`-debug_lookahead`
|
|/ |
|
| |
|
|
|
|
| |
Spelling correction
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Until now the chm format of the doxygen documentation was generated by a separate script, this is now integrated in the CMake procedure.
- option -Dbuild_doc_chm to enable the possibility to generate the CHM documentation (only works for windows)
- procedure is as follows
- generate the base documentation for the CHM output
- copy the documentation of the examples to the tree with the base CHM output (cannot use it from its default place due to the fact that in the next face the first page of the CHM file will be wrong
- add the html, png, css and gif files of the examples to the so called hhp file (has to happen during runtime, hence a small python script, created inline so there is no extra file in the source tree)
- create the resulting doxygen_manual.chm
Some improvements during the process
- the html files of the examples are added so that the full documentation of the examples is accessible and not just the top pages of the examples
- keep the index terms of base chm file (mostly the commands and configuration parameters)
- see to it that the doxygen logo is copied by doxygen and not by means of cmake
|
|\
| |
| |
| | |
https://github.com/albert-github/doxygen into albert-github-feature/bug_gitversion
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The original version has as features:
- getting the git version number for usage in doxygen
- making the doxygen version number inclusion dependent on the VERSION file
The disadvantage of the chosen methodology was that an extra correction step was necessary, by defining getter methods to retrieve the values this correction can be hidden.
The information is coming from different sources:
- the VERSION file
- the git "repository and build system (when present)
Furthermore there are a couple of places where the version information is used (a.o. doxygen and doxywizard executable, though the doxygenwizard was only done "half hearted")
The handling of the VERSION file has been made in such a way that it is comparable with the generation of the git version changes.
For a better abstraction the version handling is all done in a separate directory.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Show the git version on designated places (currently version, help and Doxyfile difference).
The implementation is based on the git_watcher.cmake (https://github.com/andrew-hardin/cmake-git-version-tracking).
The information is useful to see which. master, version of doxygen is used for a build on systems where a lot of builds are make (Fossies.org) or very regular builds are made (CGAL)
Furthermore the tracking of the VERSION file was not done (when changed the version.cpp was not updated), this is corrected as well.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Cmake option `-Denlarge_lex_buffers=<size>` to enlarge input and read buffers for source code lexers.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Placed minimum `bison` requirement.
Tested with bison version 2.7 so used this as minimum.
Note: win_flex_bison uses a different external numbering. The e.g. the version 2.5.16 of win_flex_bison contains bison version 3.0.4.
|
| | |
|
|/ |
|
|
|
|
|
| |
The `env` command with `-E` is first supported with version 3.1 setting the minimum required version as such
(Based on message: https://stackoverflow.com/questions/54194646/make-docs-fails-while-building-doxygen-v1-8-15-for-rhel-distros-for-s390x and CMake documentation: https://cmake.org/cmake/help/v2.8.12/cmake.html, https://cmake.org/cmake/help/v3.0/manual/cmake.1.html and https://cmake.org/cmake/help/v3.1/manual/cmake.1.html)
|
|
|
|
| |
The generated schema is malformed in versions below 3.9.0.
|
|
|
|
| |
while linking
|
| |
|
|
|
|
| |
Just don't call add_subdirectory() if the build flag is not set.
|
|
|
|
|
|
|
| |
When some header or library is not found introduce a proper find_* call for it
and use the results. Especially injecting additional link directories would just
confuse the automatic library ordering done by CMake and is basically never the
right solution for any link problem.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Allows us to hide all the internal symbols from the final binary.
Shaving some 10+% of its size.
v2: use CMAKE_{LANG}_VISIBILITY_PRESET
v3: add CMP0063 guard
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
|
| |
|
|\ |
|
| |
| |
| |
| | |
See: https://clang.llvm.org/docs/JSONCompilationDatabase.html
|
|/
|
|
|
| |
Change-Id: Ibad47399f87511f6d8ef7c2238c932377777a333
Signed-off-by: Adrian DC <radian.dc@gmail.com>
|
|\
| |
| | |
new addon doxyparse, a source parsing engine
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
doxyparse parses source code and dumps the dependencies between the code
elements. Today doxyparse is in use by Analizo* toolkit, a suite of
source code analysis tools, aimed at being language-independent and
extensible.
* http://analizo.org
Signed-off-by: Antonio Terceiro <terceiro@softwarelivre.org>
Signed-off-by: João M. Miranda <joaomm88@gmail.com>
Signed-off-by: Paulo Meirelles <paulo@softwarelivre.org>
Signed-off-by: Vinicius Daros <vkdaros@mercurio.eclipse.ime.usp.br>
|
|/
|
|
|
|
|
| |
The pull request #419 didn't work for the ninja build platform
The pull request #442 did only work when cmake was called but not during compilation ("make")
In this patch we set the LEX_FLAGS and YACC_FLAGS when specified on the command line with cmake to the specified value, in the other case these flags are for the Ninja build system they are omitted and for all other build systems they are set to $(LEX_FLAGS) and $(YACC_FLAGS) so they can be used during runtime as well.
|
| |
|
| |
|
|\
| |
| | |
Enable build of RPM/DEB/... packages
|
| | |
|
| |
| |
| |
| |
| | |
Removed old unmaintained packages/rpm/doxygen.spec.in
Provided cmake/packaging.cmake needs tunning on different distributions
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* use configure_files to avoid different $ semantics when COMMAND lines
are expanded in build files. ($$var vs. \$var)
* nmake/gmake no longer needed by cmake, when building doc.
* explicitly copy doc files into build directory to make it clear what
files each build stage uses.
Documentation can be built with:
mkdir build/ && cd $_
cmake -Dbuild_doc=1 .. # add -G"NMake Makefiles" for nmake
make docs # this builds doxygen first
v3: replace file(COPY) with proper generated file tagging.
v2: Remove option to build documentation independently from doxygen.
tested on linux(gmake) and windows(nmake) [thanks albert]
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
| |
|