CMake: add USE_POC to control building poc binaries

This commit is contained in:
nick black 2020-08-29 18:55:21 -04:00
parent eb0030bad3
commit 4d7941f1b9
No known key found for this signature in database
GPG Key ID: 5F43400C21CBFACC
2 changed files with 10 additions and 6 deletions

View File

@ -24,6 +24,7 @@ cmake_dependent_option(
)
option(USE_DOXYGEN "Build HTML cross reference with doxygen" OFF)
option(USE_PANDOC "Build man pages and HTML reference with pandoc" ON)
option(USE_POC "Build small, uninstalled proof-of-concept binaries" ON)
option(USE_QRCODEGEN "Disable libqrcodegen QR code support" ON)
option(USE_STATIC "Build static libraries (in addition to shared)" ON)
set(USE_MULTIMEDIA "ffmpeg" CACHE STRING "Multimedia engine, one of 'ffmpeg', 'oiio', or 'none'")
@ -381,6 +382,7 @@ target_link_libraries(notcurses-demo
)
# tiny proofs of concept, one binary per source file
if(USE_POC)
file(GLOB POCSRCS CONFIGURE_DEPENDS src/poc/*.c src/poc/*.cpp)
foreach(f ${POCSRCS})
get_filename_component(fe "${f}" NAME_WE)
@ -396,6 +398,7 @@ foreach(f ${POCSRCS})
PRIVATE "${TERMINFO_LIBRARY_DIRS}"
)
endforeach()
endif()
# Pandoc documentation (man pages, HTML reference)
if(USE_PANDOC)

View File

@ -160,13 +160,14 @@ but must be `Debug` for use of `USE_COVERAGE`.
* `DFSG_BUILD`: leave out all content considered non-free under the Debian Free
Software Guidelines
* `BUILD_TESTING`: build test targets
* `USE_DOCTEST`: build `notcurses-tester` with Doctest, requires `BUILD_TESTING`
* `USE_MULTIMEDIA`: `ffmpeg` for FFmpeg, `oiio` for OpenImageIO, `none` for none
* `USE_QRCODEGEN`: build qrcode support via libqrcodegen
* `USE_PANDOC`: build man pages with pandoc
* `USE_DOXYGEN`: build interlinked HTML documentation with Doxygen
* `USE_STATIC`: build static libraries (in addition to shared ones)
* `USE_COVERAGE`: build coverage support (for developers, requires use of Clang)
* `USE_DOCTEST`: build `notcurses-tester` with Doctest, requires `BUILD_TESTING`
* `USE_DOXYGEN`: build interlinked HTML documentation with Doxygen
* `USE_MULTIMEDIA`: `ffmpeg` for FFmpeg, `oiio` for OpenImageIO, `none` for none
* `USE_PANDOC`: build man pages with pandoc
* `USE_POC`: build small, uninstalled proof-of-concept binaries
* `USE_QRCODEGEN`: build qrcode support via libqrcodegen
* `USE_STATIC`: build static libraries (in addition to shared ones)
## Included tools