mirror of
https://github.com/fish-shell/fish-shell
synced 2024-12-26 21:03:12 +00:00
Fall back to CMake's pkg-config-based search for curses
CMake seems to have trouble finding libraries from multiarch packages that do not have the compatibility symlink installed to the arch-independent library directory. Users must either manually supply the path to the library in question via command-line parameters or we can fall back to CMake's alternate method of finding packages based off of pkg-config rather than using the hard-coded `FindCurses` CMake module specific to the CMake version/distribution installed.
This commit is contained in:
parent
74422e476b
commit
7af0cad23d
1 changed files with 12 additions and 2 deletions
|
@ -1,5 +1,15 @@
|
||||||
# Detect curses.
|
# Try using CMake's own logic to locate curses/ncurses
|
||||||
FIND_PACKAGE(Curses REQUIRED)
|
FIND_PACKAGE(Curses)
|
||||||
|
IF(NOT ${CURSES_FOUND})
|
||||||
|
# CMake has trouble finding platform-specific system libraries
|
||||||
|
# installed to multiarch paths (e.g. /usr/lib/x86_64-linux-gnu)
|
||||||
|
# if not symlinked or passed in as a manual define.
|
||||||
|
MESSAGE("Falling back to pkg-config for (n)curses detection")
|
||||||
|
INCLUDE(FindPkgConfig)
|
||||||
|
PKG_SEARCH_MODULE(CURSES REQUIRED ncurses curses)
|
||||||
|
SET(CURSES_CURSES_LIBRARY ${CURSES_LIBRARIES})
|
||||||
|
SET(CURSES_LIBRARY ${CURSES_LIBRARIES})
|
||||||
|
ENDIF()
|
||||||
|
|
||||||
# Get threads.
|
# Get threads.
|
||||||
set(THREADS_PREFER_PTHREAD_FLAG ON)
|
set(THREADS_PREFER_PTHREAD_FLAG ON)
|
||||||
|
|
Loading…
Reference in a new issue