mirror of
https://github.com/dankamongmen/notcurses
synced 2025-03-09 09:09:03 -04:00
CMake: add USE_GPM option #1405
This commit is contained in:
parent
1915fb48a1
commit
0b67d67c8f
@ -24,6 +24,7 @@ cmake_dependent_option(
|
||||
"${BUILD_TESTING}" OFF
|
||||
)
|
||||
option(USE_DOXYGEN "Build HTML cross reference with doxygen" OFF)
|
||||
option(USE_GPM "Enable libgpm console mouse support" 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 "Enable libqrcodegen QR code support" OFF)
|
||||
@ -145,6 +146,16 @@ endif()
|
||||
find_library(unistring unistring REQUIRED)
|
||||
set_property(GLOBAL APPEND PROPERTY PACKAGES_FOUND libunistring)
|
||||
set_package_properties(libunistring PROPERTIES TYPE REQUIRED)
|
||||
if(${USE_GPM}) # no pkgconfig from gpm
|
||||
unset(HAVE_GPM_H CACHE)
|
||||
check_include_file("gpm.h" HAVE_GPM_H)
|
||||
if(NOT "${HAVE_GPM_H}")
|
||||
message(FATAL_ERROR "Couldn't find gpm.h from libgpm")
|
||||
endif()
|
||||
find_library(gpm gpm REQUIRED)
|
||||
set_property(GLOBAL APPEND PROPERTY PACKAGES_FOUND libgpm)
|
||||
set_package_properties(libgpm PROPERTIES TYPE REQUIRED)
|
||||
endif()
|
||||
unset(HAVE_QRCODEGEN_H CACHE)
|
||||
if("${USE_QRCODEGEN}")
|
||||
check_include_file("qrcodegen/qrcodegen.h" HAVE_QRCODEGEN_H)
|
||||
|
@ -12,7 +12,7 @@ prepackaged on many distributions. Otherwise, acquire the current source via
|
||||
|
||||
Install build dependencies:
|
||||
|
||||
`apt-get install build-essential cmake doctest-dev zlib1g-dev libavformat-dev libavutil-dev libncurses-dev libreadline-dev libqrcodegen-dev libswscale-dev libunistring-dev pandoc pkg-config`
|
||||
`apt-get install build-essential cmake doctest-dev zlib1g-dev libavformat-dev libavutil-dev libgpm-dev libncurses-dev libreadline-dev libqrcodegen-dev libswscale-dev libunistring-dev pandoc pkg-config`
|
||||
|
||||
If you only intend to build core Notcurses (without multimedia support), you
|
||||
can omit `libavformat-dev`, `libavutil-dev`, and `libswscale-dev` from this
|
||||
@ -30,7 +30,7 @@ If you want to build the Rust wrappers, you'll also need:
|
||||
|
||||
Install build dependencies:
|
||||
|
||||
`dnf install cmake doctest-devel zlib-devel ncurses-devel readline-devel libqrcodegen-devel libunistring-devel OpenImageIO-devel pandoc`
|
||||
`dnf install cmake doctest-devel zlib-devel ncurses-devel gpm-devel readline-devel libqrcodegen-devel libunistring-devel OpenImageIO-devel pandoc`
|
||||
|
||||
If you only intend to build core Notcurses (without multimedia support), you
|
||||
can omit `OpenImageIO-devel`. If you're building outside Fedora Core (e.g. with
|
||||
@ -109,6 +109,7 @@ but must be `Debug` for use of `USE_COVERAGE`.
|
||||
* `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_GPM`: build GPM console mouse support via libgpm
|
||||
* `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
|
||||
|
@ -110,6 +110,7 @@ may well be possible to use still older versions. Let me know of any successes!
|
||||
* (OPTIONAL) (OpenImageIO, testing, C++ bindings): A C++17 compiler
|
||||
* (build+runtime) From [NCURSES](https://invisible-island.net/ncurses/announce.html): terminfo 6.1+
|
||||
* (build+runtime) GNU [libunistring](https://www.gnu.org/software/libunistring/) 0.9.10+
|
||||
* (OPTIONAL) (build+runtime) [libgpm](https://www.nico.schottelius.org/software/gpm/) 1.20+
|
||||
* (OPTIONAL) (build+runtime) GNU [Readline](https://www.gnu.org/software/readline/) 8.0+
|
||||
* (OPTIONAL) (build+runtime) From QR-Code-generator: [libqrcodegen](https://github.com/nayuki/QR-Code-generator) 1.5.0+
|
||||
* (OPTIONAL) (build+runtime) From [FFmpeg](https://www.ffmpeg.org/): libswscale 5.0+, libavformat 57.0+, libavutil 56.0+
|
||||
|
Loading…
x
Reference in New Issue
Block a user