[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: cmake needs -ltinfo on Linux
Let me see if I can put this mess together.
Gentoo, system split ncurses.
If CURSES_DEFAULT is set to ncurses, it will include
This is not desirable because we have already ncurses.
Modules/FindCurses.cmake checks that the system has an usable curses or
ncurses (that may need tinfo).
The code responsible to include tinfo depends on CURSES_USE_NCURSES.
This will be set only if CURSES_NEED_NCURSES is set, or if there is
CURSES_USE_NCURSES is set by default in
Source/Checks/Curses/CMakeLists.txt, so in
if(CURSES_NCURSES_LIBRARY AND ((NOT CURSES_CURSES_LIBRARY) OR CURSES_NEED_NCURSES))
CURSES_USE_NCURSES will be set even having ncurses.h and curses.h
Yes, this is going to be over-complicated.
Now patches/patch-Source_Checks_Curses_CMakeLists.txt unset CURSES_USE_NCURSES:
$NetBSD: patch-Source_Checks_Curses_CMakeLists.txt,v 1.1 2018/10/16 16:37:21 leot Exp $
- Don't insist on ncurses
--- Source/Checks/Curses/CMakeLists.txt.orig 2018-10-03 12:35:51.000000000 +0000
@@ -4,7 +4,6 @@ if(POLICY CMP0060)
So if system curses is a split ncurses, it will not include
This part checks if curses is usable (thinking on NetBSD) with
if(CURSES_CURSES_LIBRARY AND CURSES_NEED_NCURSES)
wsyncup "" CURSES_CURSES_HAS_WSYNCUP)
if(CURSES_NCURSES_LIBRARY AND NOT CURSES_CURSES_HAS_WSYNCUP)
wsyncup "" CURSES_NCURSES_HAS_WSYNCUP)
Now I eliminate the patch. CURSES_USE_NCURSES should be set.
The other patches are harmless.
-- Found Curses: /usr/lib/libcurses.so
So libcurses is set, tinfo is not included.
I can compile the same tar without pkgsrc. libncurses is set, tinfo is
There is something I'm missing.
Main Index |
Thread Index |