diff options
| author | Albrecht Schlosser <albrechts.fltk@online.de> | 2020-06-13 15:19:27 +0200 |
|---|---|---|
| committer | Albrecht Schlosser <albrechts.fltk@online.de> | 2020-07-15 00:34:53 +0200 |
| commit | 720b84ef9d086245f5119d143202a2661a78ca53 (patch) | |
| tree | 26bcd11ffa797c3c01917507e9204fbc9f9b45aa /documentation | |
| parent | 54425030774eb04b29c749ffa85d224c8bbfcc34 (diff) | |
CMake: refactor and reformat CMake files
- raise minimum CMake version from 2.6.3 to 3.2.3 (Jun 01, 2015)
- indent all CMake files according to the CMP (2 col.)
- refactor FLTK version number definitions and usage
- unify CMake and autoconf/configure variable names:
- FL_VERSION -> FLTK_VERSION
- FL_MAJOR_VERSION -> FLTK_VERSION_MAJOR
- etc. for _MINOR_ and _PATCH_, respectively
- note: this does not affect FL_VERSION etc. in source code
- generate "export headers" for all libraries (experimental: OFF)
- port some forgotten goodies from branch-1.3 to master
- merge and improve macro 'create_example' (WIP)
- remove "temporary" options and code for older CMake versions
- include and use 'GenerateExportHeader' (experimental, WIP: OFF)
- note: created header files are not yet used
- build only *one* DLL with Visual Studio (tested, works)
- similar to the bundled IDE projects in 1.3.x
- add some dynamically linked test/demo programs ('*-shared')
if shared libraries are built (WIP)
- split 'macros.cmake': use one file per macro
Diffstat (limited to 'documentation')
| -rw-r--r-- | documentation/CMakeLists.txt | 135 | ||||
| -rw-r--r-- | documentation/Doxyfile.in | 2 | ||||
| -rw-r--r-- | documentation/Makefile | 6 | ||||
| -rw-r--r-- | documentation/src/fltk-book.tex.in | 2 |
4 files changed, 71 insertions, 74 deletions
diff --git a/documentation/CMakeLists.txt b/documentation/CMakeLists.txt index 66546cfa6..c240531e5 100644 --- a/documentation/CMakeLists.txt +++ b/documentation/CMakeLists.txt @@ -16,8 +16,6 @@ set (DOCS) -set (FL_VERSION "${FLTK_VERSION_FULL}") - if (OPTION_INCLUDE_DRIVER_DOCUMENTATION) set (DRIVER_DOCS "DriverDev") else () @@ -30,34 +28,34 @@ endif () if (OPTION_BUILD_HTML_DOCUMENTATION) - list(APPEND DOCS html) + list (APPEND DOCS html) - # generate Doxygen file "Doxyfile" + # generate Doxygen file "Doxyfile" - set(GENERATE_HTML YES) - set(GENERATE_LATEX NO) - set(LATEX_HEADER "") + set (GENERATE_HTML YES) + set (GENERATE_LATEX NO) + set (LATEX_HEADER "") - configure_file( - ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in - ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile - @ONLY - ) + configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in + ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile + @ONLY + ) - configure_file( - ${CMAKE_CURRENT_SOURCE_DIR}/src/tiny.png - ${CMAKE_CURRENT_BINARY_DIR}/html/tiny.png - COPYONLY - ) + configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/src/tiny.png + ${CMAKE_CURRENT_BINARY_DIR}/html/tiny.png + COPYONLY + ) - # generate html docs + # generate html docs - add_custom_target(html - # ALL - ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} - COMMENT "Generating HTML documentation" VERBATIM - ) + add_custom_target (html + # ALL + ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + COMMENT "Generating HTML documentation" VERBATIM + ) endif (OPTION_BUILD_HTML_DOCUMENTATION) @@ -67,52 +65,51 @@ endif (OPTION_BUILD_HTML_DOCUMENTATION) if (OPTION_BUILD_PDF_DOCUMENTATION) - list(APPEND DOCS pdf) + list (APPEND DOCS pdf) - # generate Doxygen file "Doxybook" + # generate Doxygen file "Doxybook" - set(GENERATE_HTML NO) - set(GENERATE_LATEX YES) - set(LATEX_HEADER "${CMAKE_CURRENT_BINARY_DIR}/fltk-book.tex") + set (GENERATE_HTML NO) + set (GENERATE_LATEX YES) + set (LATEX_HEADER "${CMAKE_CURRENT_BINARY_DIR}/fltk-book.tex") - configure_file( - ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in - ${CMAKE_CURRENT_BINARY_DIR}/Doxybook - @ONLY - ) + configure_file( + ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in + ${CMAKE_CURRENT_BINARY_DIR}/Doxybook + @ONLY + ) - # generate LaTeX header fltk-book.tex + # generate LaTeX header fltk-book.tex - set(FL_VERSION ${FLTK_VERSION_FULL}) - set(DOXY_VERSION ${DOXYGEN_VERSION}) - execute_process(COMMAND date +%Y - OUTPUT_VARIABLE YEAR - ) + set (DOXY_VERSION ${DOXYGEN_VERSION}) + execute_process (COMMAND date +%Y + OUTPUT_VARIABLE YEAR + ) - configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/fltk-book.tex.in - ${CMAKE_CURRENT_BINARY_DIR}/fltk-book.tex - @ONLY - ) + configure_file (${CMAKE_CURRENT_SOURCE_DIR}/src/fltk-book.tex.in + ${CMAKE_CURRENT_BINARY_DIR}/fltk-book.tex + @ONLY + ) - # generate fltk.pdf + # generate fltk.pdf - add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/fltk.pdf - COMMAND ${DOXYGEN_EXECUTABLE} Doxybook - COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/make_pdf - COMMAND cp -f latex/refman.pdf fltk.pdf - WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} - COMMENT "Generating PDF documentation" VERBATIM - ) + add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/fltk.pdf + COMMAND ${DOXYGEN_EXECUTABLE} Doxybook + COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/make_pdf + COMMAND cp -f latex/refman.pdf fltk.pdf + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + COMMENT "Generating PDF documentation" VERBATIM + ) - # add target 'pdf' + # add target 'pdf' - add_custom_target(pdf - # ALL - DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/fltk.pdf - ) + add_custom_target (pdf + # ALL + DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/fltk.pdf + ) -endif(OPTION_BUILD_PDF_DOCUMENTATION) +endif (OPTION_BUILD_PDF_DOCUMENTATION) #---------------------------------- # add target 'docs' for all docs @@ -120,10 +117,10 @@ endif(OPTION_BUILD_PDF_DOCUMENTATION) if (DOCS) - add_custom_target(docs - # ALL - DEPENDS ${DOCS} - ) + add_custom_target(docs + # ALL + DEPENDS ${DOCS} + ) endif (DOCS) @@ -133,16 +130,16 @@ endif (DOCS) if (OPTION_INSTALL_HTML_DOCUMENTATION AND OPTION_BUILD_HTML_DOCUMENTATION) - install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html - DESTINATION ${FLTK_DATADIR}/doc/fltk - ) + install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html + DESTINATION ${FLTK_DATADIR}/doc/fltk + ) endif (OPTION_INSTALL_HTML_DOCUMENTATION AND OPTION_BUILD_HTML_DOCUMENTATION) if (OPTION_INSTALL_PDF_DOCUMENTATION AND OPTION_BUILD_PDF_DOCUMENTATION) - install(FILES ${CMAKE_CURRENT_BINARY_DIR}/fltk.pdf - DESTINATION ${FLTK_DATADIR}/doc/fltk/ - ) + install (FILES ${CMAKE_CURRENT_BINARY_DIR}/fltk.pdf + DESTINATION ${FLTK_DATADIR}/doc/fltk/ + ) endif (OPTION_INSTALL_PDF_DOCUMENTATION AND OPTION_BUILD_PDF_DOCUMENTATION) diff --git a/documentation/Doxyfile.in b/documentation/Doxyfile.in index 893f3bd28..80c9dafaa 100644 --- a/documentation/Doxyfile.in +++ b/documentation/Doxyfile.in @@ -25,7 +25,7 @@ DOXYFILE_ENCODING = UTF-8 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded # by quotes) that should identify the project. -PROJECT_NAME = "FLTK @FL_VERSION@" +PROJECT_NAME = "FLTK @FLTK_VERSION@" # The PROJECT_NUMBER tag can be used to enter a project or revision number. # This could be handy for archiving the generated documentation or diff --git a/documentation/Makefile b/documentation/Makefile index a1c370799..5e95ad5b8 100644 --- a/documentation/Makefile +++ b/documentation/Makefile @@ -132,7 +132,7 @@ uninstall-linux uninstall-osx: Doxyfile: Doxyfile.in echo "Generating Doxyfile ..." - sed -e's,@FL_VERSION@,$(FL_VERSION),' \ + sed -e's,@FLTK_VERSION@,$(FLTK_VERSION),' \ -e's,@GENERATE_HTML@,YES,' \ -e's,@GENERATE_LATEX@,NO,' \ -e's, @LATEX_HEADER@,,' \ @@ -142,7 +142,7 @@ Doxyfile: Doxyfile.in Doxybook: Doxyfile.in echo "Generating Doxybook ..." - sed -e's,@FL_VERSION@,$(FL_VERSION),' \ + sed -e's,@FLTK_VERSION@,$(FLTK_VERSION),' \ -e's,@GENERATE_HTML@,NO,' \ -e's,@GENERATE_LATEX@,YES,' \ -e's,@LATEX_HEADER@,src/fltk-book.tex,' \ @@ -183,6 +183,6 @@ src/fltk-book.tex: src/fltk-book.tex.in DOXY_VERSION=`$(DOXYDOC) --version`; \ YEAR=`date +%Y`; \ sed -e"s/@YEAR@/$$YEAR/g" \ - -e"s/@FL_VERSION@/$(FL_VERSION)/g" \ + -e"s/@FLTK_VERSION@/$(FLTK_VERSION)/g" \ -e"s/@DOXY_VERSION@/$$DOXY_VERSION/g" \ < $< > $@ diff --git a/documentation/src/fltk-book.tex.in b/documentation/src/fltk-book.tex.in index e1568d6d6..880d06ead 100644 --- a/documentation/src/fltk-book.tex.in +++ b/documentation/src/fltk-book.tex.in @@ -127,7 +127,7 @@ \begin{titlepage} \vspace*{5cm} \begin{center}% -{\Huge FLTK @FL_VERSION@ Programming Manual}\\ +{\Huge FLTK @FLTK_VERSION@ Programming Manual}\\ \vspace*{2cm} \begin{DoxyImageNoCaption} \mbox{\includegraphics[width=6cm]{FL200.png}} |
