aboutsummaryrefslogtreecommitdiff
path: root/lib/ncurses
diff options
context:
space:
mode:
authorBaptiste Daroussin <bapt@FreeBSD.org>2021-01-04 16:29:40 +0000
committerBaptiste Daroussin <bapt@FreeBSD.org>2021-01-05 13:01:32 +0000
commit821aa63a09402935da0a73abf20ba0441562aa07 (patch)
treeb1a1034d969a225e45fc85a376347eea3b391652 /lib/ncurses
parent9fd96b416c4572c83d4958763819bae83928cbce (diff)
downloadsrc-821aa63a09402935da0a73abf20ba0441562aa07.tar.gz
src-821aa63a09402935da0a73abf20ba0441562aa07.zip
ncurses: only keep the version with widechar support
Only keep the widechar version of ncurses as libncursesw.so.9 Keep the old name to avoid breaking the ABI compatibility (the non widechar version libncurses.so.9 is not binary compatible with libncursesw.so.9) since all ports and base are already only linking against the widechar version we can simply remove libncurses.so.9 Since the .9 version only lived in the dev branch and never ended in a release, it is simply removed and not added to any binary compat package. Add symlinks to keep build time compatibility for anyone linking against -lncurses
Diffstat (limited to 'lib/ncurses')
-rw-r--r--lib/ncurses/Makefile6
-rw-r--r--lib/ncurses/config.mk11
-rw-r--r--lib/ncurses/form/Makefile18
-rw-r--r--lib/ncurses/formw/Makefile5
-rw-r--r--lib/ncurses/formw/Makefile.depend17
-rw-r--r--lib/ncurses/menu/Makefile18
-rw-r--r--lib/ncurses/menuw/Makefile5
-rw-r--r--lib/ncurses/menuw/Makefile.depend17
-rw-r--r--lib/ncurses/ncurses/Makefile71
-rw-r--r--lib/ncurses/ncursesw/Makefile7
-rw-r--r--lib/ncurses/ncursesw/Makefile.depend16
-rw-r--r--lib/ncurses/panel/Makefile23
-rw-r--r--lib/ncurses/panelw/Makefile5
-rw-r--r--lib/ncurses/panelw/Makefile.depend17
14 files changed, 75 insertions, 161 deletions
diff --git a/lib/ncurses/Makefile b/lib/ncurses/Makefile
index a5a19deafafd..be8697fbc609 100644
--- a/lib/ncurses/Makefile
+++ b/lib/ncurses/Makefile
@@ -1,13 +1,11 @@
# $FreeBSD$
-SUBDIR= ncurses form menu panel \
- ncursesw formw menuw panelw
+SUBDIR= ncurses form menu panel
SUBDIR_PARALLEL=
-.for subdir in ${SUBDIR:Nncurses*:N*w}
+.for subdir in ${SUBDIR:Nncurses*}
SUBDIR_DEPEND_${subdir}= ncurses
-SUBDIR_DEPEND_${subdir}w= ncursesw
.endfor
.include <bsd.subdir.mk>
diff --git a/lib/ncurses/config.mk b/lib/ncurses/config.mk
index d15be8601136..f199c5829b65 100644
--- a/lib/ncurses/config.mk
+++ b/lib/ncurses/config.mk
@@ -4,20 +4,11 @@
NCURSES_DIR= ${SRCTOP}/contrib/ncurses
-.if defined(ENABLE_WIDEC)
-LIB_SUFFIX= w
CFLAGS+= -D_XOPEN_SOURCE_EXTENDED -DENABLE_WIDEC
-NCURSES_CFG_H= ${.CURDIR:H}/ncurses/ncurses_cfg.h
-.else
-LIB_SUFFIX=
NCURSES_CFG_H= ${.CURDIR}/ncurses_cfg.h
-.endif
CFLAGS+= -I.
-.if exists(${.OBJDIR:H}/ncurses${LIB_SUFFIX})
-CFLAGS+= -I${.OBJDIR:H}/ncurses${LIB_SUFFIX}
-.endif
-CFLAGS+= -I${.CURDIR:H}/ncurses${LIB_SUFFIX}
+CFLAGS+= -I${.CURDIR:H}/ncurses
# for ${NCURSES_CFG_H}
CFLAGS+= -I${.CURDIR:H}/ncurses
diff --git a/lib/ncurses/form/Makefile b/lib/ncurses/form/Makefile
index eab5bbb63c09..a8e636d6ce1b 100644
--- a/lib/ncurses/form/Makefile
+++ b/lib/ncurses/form/Makefile
@@ -1,10 +1,11 @@
# $FreeBSD$
+.include <src.opts.mk>
.include "${.CURDIR:H}/config.mk"
SRCDIR= ${NCURSES_DIR}/form
-LIB= form${LIB_SUFFIX}
+LIB= formw
.PATH: ${SRCDIR}
SRCS= \
@@ -54,9 +55,8 @@ CLEANFILES= ncurses_def.h
CFLAGS+= -I${SRCDIR}
CFLAGS+= -I${NCURSES_DIR}/menu
-LIBADD+= ncurses${LIB_SUFFIX}
+LIBADD+= ncursesw
-.if defined(ENABLE_WIDEC)
INCS= form.h
.PATH: ${NCURSES_DIR}/man
@@ -156,8 +156,16 @@ MLINKS= form_cursor.3 pos_form_cursor.3 \
form_win.3 scale_form.3 \
form_win.3 set_form_sub.3 \
form_win.3 set_form_win.3
-.else
-MAN=
+
+# backward compat
+.if ${MK_INSTALLLIB} != "no"
+SYMLINKS+= libformw.a ${LIBDIR}/libform.a
+.endif
+.if !defined(NO_PIC)
+SYMLINKS+= libformw.so ${LIBDIR}/libform.so
+.endif
+.if ${MK_PROFILE} != "no"
+SYMLINKS+= libformw_p.a ${LIBDIR}/libform_p.a
.endif
.include <bsd.lib.mk>
diff --git a/lib/ncurses/formw/Makefile b/lib/ncurses/formw/Makefile
deleted file mode 100644
index 3ec7637373be..000000000000
--- a/lib/ncurses/formw/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-# $FreeBSD$
-
-ENABLE_WIDEC=
-
-.include "${.CURDIR:H}/form/Makefile"
diff --git a/lib/ncurses/formw/Makefile.depend b/lib/ncurses/formw/Makefile.depend
deleted file mode 100644
index 3d9451023bec..000000000000
--- a/lib/ncurses/formw/Makefile.depend
+++ /dev/null
@@ -1,17 +0,0 @@
-# $FreeBSD$
-# Autogenerated - do NOT edit!
-
-DIRDEPS = \
- include \
- include/xlocale \
- lib/${CSU_DIR} \
- lib/libc \
- lib/libcompiler_rt \
- lib/ncurses/ncursesw \
-
-
-.include <dirdeps.mk>
-
-.if ${DEP_RELDIR} == ${_DEP_RELDIR}
-# local dependencies - needed for -jN in clean tree
-.endif
diff --git a/lib/ncurses/menu/Makefile b/lib/ncurses/menu/Makefile
index 653619638fbc..7844cd4d936c 100644
--- a/lib/ncurses/menu/Makefile
+++ b/lib/ncurses/menu/Makefile
@@ -1,10 +1,11 @@
# $FreeBSD$
+.include <src.opts.mk>
.include "${.CURDIR:H}/config.mk"
SRCDIR= ${NCURSES_DIR}/menu
-LIB= menu${LIB_SUFFIX}
+LIB= menuw
.PATH: ${SRCDIR}
SRCS= \
@@ -40,9 +41,8 @@ CLEANFILES= ncurses_def.h
CFLAGS+= -I${SRCDIR}
-LIBADD+= ncurses${LIB_SUFFIX}
+LIBADD+= ncursesw
-.if defined(ENABLE_WIDEC)
INCS= menu.h eti.h
.PATH: ${NCURSES_DIR}/man
@@ -128,8 +128,16 @@ MLINKS= menu_attributes.3 menu_back.3 \
mitem_value.3 item_value.3 \
mitem_value.3 set_item_value.3 \
mitem_visible.3 item_visible.3
-.else
-MAN=
+
+# backward compat
+.if ${MK_INSTALLLIB} != "no"
+SYMLINKS+= libmenuw.a ${LIBDIR}/libmenu.a
+.endif
+.if !defined(NO_PIC)
+SYMLINKS+= libmenuw.so ${LIBDIR}/libmenu.so
+.endif
+.if ${MK_PROFILE} != "no"
+SYMLINKS+= libmenuw_p.a ${LIBDIR}/libmenu_p.a
.endif
.include <bsd.lib.mk>
diff --git a/lib/ncurses/menuw/Makefile b/lib/ncurses/menuw/Makefile
deleted file mode 100644
index d6df56332826..000000000000
--- a/lib/ncurses/menuw/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-# $FreeBSD$
-
-ENABLE_WIDEC=
-
-.include "${.CURDIR:H}/menu/Makefile"
diff --git a/lib/ncurses/menuw/Makefile.depend b/lib/ncurses/menuw/Makefile.depend
deleted file mode 100644
index 3d9451023bec..000000000000
--- a/lib/ncurses/menuw/Makefile.depend
+++ /dev/null
@@ -1,17 +0,0 @@
-# $FreeBSD$
-# Autogenerated - do NOT edit!
-
-DIRDEPS = \
- include \
- include/xlocale \
- lib/${CSU_DIR} \
- lib/libc \
- lib/libcompiler_rt \
- lib/ncurses/ncursesw \
-
-
-.include <dirdeps.mk>
-
-.if ${DEP_RELDIR} == ${_DEP_RELDIR}
-# local dependencies - needed for -jN in clean tree
-.endif
diff --git a/lib/ncurses/ncurses/Makefile b/lib/ncurses/ncurses/Makefile
index efa38691115e..6f03d93a9ac6 100644
--- a/lib/ncurses/ncurses/Makefile
+++ b/lib/ncurses/ncurses/Makefile
@@ -3,16 +3,11 @@
PACKAGE= clibs
SHLIBDIR?= /lib
-.if !defined(ENABLE_WIDEC)
-# Override any MAN= setting below..
-MK_MAN=no
-.endif
-
.include <src.opts.mk>
.include "${.CURDIR:H}/config.mk"
-LIB= ncurses${LIB_SUFFIX}
+LIB= ncursesw
SHLIB_MAJOR= 9
NO_LINT=
@@ -22,17 +17,10 @@ NCURSES_MINOR!= egrep 'NCURSES_MINOR[ ]*=' ${NCURSES_DIR}/dist.mk | sed -e 's%^
NCURSES_PATCH!= egrep 'NCURSES_PATCH[ ]*=' ${NCURSES_DIR}/dist.mk | sed -e 's%^[^0-9]*%%'
# From autoconf (!)
-.if defined(ENABLE_WIDEC)
NCURSES_CH_T= cchar_t
NCURSES_OK_WCHAR_T= 1
NEED_WCHAR_H= 1
NCURSES_EXT_COLORS= 1
-.else
-NCURSES_CH_T= chtype
-NCURSES_OK_WCHAR_T=
-NEED_WCHAR_H= 0
-NCURSES_EXT_COLORS= 0
-.endif
NCURSES_EXT_FUNCS= 1
NCURSES_CONST= const
NCURSES_INLINE= inline
@@ -242,7 +230,6 @@ SRCS+= \
lib_vidattr.c \
tty_update.c
-.if defined(ENABLE_WIDEC)
.PATH: ${NCURSES_DIR}/ncurses/widechar
SRCS+= \
charable.c \
@@ -265,7 +252,6 @@ SRCS+= \
lib_vline_set.c \
lib_wacs.c \
lib_wunctrl.c
-.endif
.PATH: ${NCURSES_DIR}/ncurses/trace
SRCS+= \
@@ -298,42 +284,54 @@ HEADERS= curses.h term.h termcap.h unctrl.h
SRCHDRS= ncurses_dll.h
CLEANFILES+= ncurses_dll.h
-.if defined(ENABLE_WIDEC)
INCS= ${HEADERS} ${SRCHDRS}
INCSLINKS= curses.h ${INCLUDEDIR}/ncurses.h
-.endif
.if ${MK_INSTALLLIB} != "no"
-SYMLINKS+= libncurses${LIB_SUFFIX}.a ${LIBDIR}/libcurses${LIB_SUFFIX}.a
-SYMLINKS+= libncurses${LIB_SUFFIX}.a ${LIBDIR}/libtermcap${LIB_SUFFIX}.a
-SYMLINKS+= libncurses${LIB_SUFFIX}.a ${LIBDIR}/libtermlib${LIB_SUFFIX}.a
-SYMLINKS+= libncurses${LIB_SUFFIX}.a ${LIBDIR}/libtinfo${LIB_SUFFIX}.a
+SYMLINKS+= libncursesw.a ${LIBDIR}/libcursesw.a
+SYMLINKS+= libncursesw.a ${LIBDIR}/libtermcapw.a
+SYMLINKS+= libncursesw.a ${LIBDIR}/libtermlibw.a
+SYMLINKS+= libncursesw.a ${LIBDIR}/libtinfow.a
+# backward compat
+SYMLINKS+= libncursesw.a ${LIBDIR}/libncurses.a
+SYMLINKS+= libncursesw.a ${LIBDIR}/libcurses.a
+SYMLINKS+= libncursesw.a ${LIBDIR}/libtermcap.a
+SYMLINKS+= libncursesw.a ${LIBDIR}/libtermlib.a
+SYMLINKS+= libncursesw.a ${LIBDIR}/libtinfo.a
.endif
.if !defined(NO_PIC)
# no need for major at all, it's an ld-time redirection only
-SYMLINKS+= libncurses${LIB_SUFFIX}.so ${LIBDIR}/libcurses${LIB_SUFFIX}.so
-SYMLINKS+= libncurses${LIB_SUFFIX}.so ${LIBDIR}/libtermcap${LIB_SUFFIX}.so
-SYMLINKS+= libncurses${LIB_SUFFIX}.so ${LIBDIR}/libtermlib${LIB_SUFFIX}.so
-SYMLINKS+= libncurses${LIB_SUFFIX}.so ${LIBDIR}/libtinfo${LIB_SUFFIX}.so
+SYMLINKS+= libncursesw.so ${LIBDIR}/libcursesw.so
+SYMLINKS+= libncursesw.so ${LIBDIR}/libtermcapw.so
+SYMLINKS+= libncursesw.so ${LIBDIR}/libtermlibw.so
+SYMLINKS+= libncursesw.so ${LIBDIR}/libtinfow.so
+# backward compat
+SYMLINKS+= libncursesw.so ${LIBDIR}/libncurses.so
+SYMLINKS+= libncursesw.so ${LIBDIR}/libcurses.so
+SYMLINKS+= libncursesw.so ${LIBDIR}/libtermcap.so
+SYMLINKS+= libncursesw.so ${LIBDIR}/libtermlib.so
+SYMLINKS+= libncursesw.so ${LIBDIR}/libtinfo.so
.endif
.if ${MK_PROFILE} != "no"
-SYMLINKS+= libncurses${LIB_SUFFIX}_p.a ${LIBDIR}/libcurses${LIB_SUFFIX}_p.a
-SYMLINKS+= libncurses${LIB_SUFFIX}_p.a ${LIBDIR}/libtermcap${LIB_SUFFIX}_p.a
-SYMLINKS+= libncurses${LIB_SUFFIX}_p.a ${LIBDIR}/libtermlib${LIB_SUFFIX}_p.a
-SYMLINKS+= libncurses${LIB_SUFFIX}_p.a ${LIBDIR}/libtinfo${LIB_SUFFIX}_p.a
+SYMLINKS+= libncursesw_p.a ${LIBDIR}/libcursesw_p.a
+SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermcapw_p.a
+SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermlibw_p.a
+SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtinfow_p.a
+# backward compat
+SYMLINKS+= libncursesw_p.a ${LIBDIR}/libncurses_p.a
+SYMLINKS+= libncursesw_p.a ${LIBDIR}/libcurses_p.a
+SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermcap_p.a
+SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtermlib_p.a
+SYMLINKS+= libncursesw_p.a ${LIBDIR}/libtinfo_p.a
.endif
-.if ${.CURDIR:T} == "ncursesw"
-.if defined(ENABLE_WIDEC)
DOCSDIR= ${SHAREDIR}/doc/ncurses
DOCS= ncurses-intro.html hackguide.html
-.endif
.if ${MK_HTML} != "no"
.PATH: ${NCURSES_DIR}/doc/html
FILESGROUPS= DOCS
.endif
-.endif
# Generated source
.ORDER: names.c codes.c
@@ -394,9 +392,7 @@ curses.h: curses.head MKkey_defs.sh Caps Caps-ncurses
cat curses.head > $@.new
AWK=${AWK} _POSIX2_VERSION=199209 sh ${NCURSES_DIR}/include/MKkey_defs.sh \
${NCURSES_DIR}/include/Caps ${NCURSES_DIR}/include/Caps-ncurses >> $@.new
-.if defined(ENABLE_WIDEC)
cat ${NCURSES_DIR}/include/curses.wide >> $@.new
-.endif
cat ${NCURSES_DIR}/include/curses.tail >> $@.new
mv -f $@.new $@
@@ -505,7 +501,6 @@ terminfo.5: MKterminfo.sh terminfo.head Caps
CLEANFILES+= terminfo.5
-.if defined(ENABLE_WIDEC)
.PATH: ${NCURSES_DIR}/man
MAN= \
curs_addch.3 \
@@ -585,7 +580,6 @@ MAN+= \
MAN+= term.5 terminfo.5 scr_dump.5 user_caps.5
MAN+= term.7
-.endif
CLEANFILES+= ${MAN:M*.3}
@@ -1065,7 +1059,6 @@ MLINKS= ncurses.3 curses.3 \
resizeterm.3 is_term_resized.3 \
resizeterm.3 resize_term.3
-.if defined(ENABLE_WIDEC)
MLINKS+=curs_add_wch.3 add_wch.3 \
curs_add_wch.3 echo_wchar.3 \
curs_add_wch.3 mvadd_wch.3 \
@@ -1145,8 +1138,6 @@ MLINKS+=curs_add_wch.3 add_wch.3 \
curs_scanw.3 vw_scanw.3 \
curs_scanw.3 vwscanw.3 \
curs_scanw.3 wscanw.3
-.endif
-
.include <bsd.lib.mk>
diff --git a/lib/ncurses/ncursesw/Makefile b/lib/ncurses/ncursesw/Makefile
deleted file mode 100644
index 5f6040e7119c..000000000000
--- a/lib/ncurses/ncursesw/Makefile
+++ /dev/null
@@ -1,7 +0,0 @@
-# $FreeBSD$
-
-ENABLE_WIDEC=
-
-.PATH: ${.CURDIR:H}/ncurses
-
-.include "${.CURDIR:H}/ncurses/Makefile"
diff --git a/lib/ncurses/ncursesw/Makefile.depend b/lib/ncurses/ncursesw/Makefile.depend
deleted file mode 100644
index 8d409f5263ac..000000000000
--- a/lib/ncurses/ncursesw/Makefile.depend
+++ /dev/null
@@ -1,16 +0,0 @@
-# $FreeBSD$
-# Autogenerated - do NOT edit!
-
-DIRDEPS = \
- include \
- include/xlocale \
- lib/${CSU_DIR} \
- lib/libc \
- lib/libcompiler_rt \
-
-
-.include <dirdeps.mk>
-
-.if ${DEP_RELDIR} == ${_DEP_RELDIR}
-# local dependencies - needed for -jN in clean tree
-.endif
diff --git a/lib/ncurses/panel/Makefile b/lib/ncurses/panel/Makefile
index 1993f5e76ac2..a22df4d89570 100644
--- a/lib/ncurses/panel/Makefile
+++ b/lib/ncurses/panel/Makefile
@@ -1,10 +1,11 @@
# $FreeBSD$
+.include <src.opts.mk>
.include "${.CURDIR:H}/config.mk"
SRCDIR= ${NCURSES_DIR}/panel
-LIB= panel${LIB_SUFFIX}
+LIB= panelw
.PATH: ${SRCDIR}
SRCS= \
@@ -29,10 +30,7 @@ CLEANFILES= ncurses_def.h
CFLAGS+= -I${SRCDIR}
-LIBADD+= ncurses${LIB_SUFFIX}
-
-.if defined(ENABLE_WIDEC)
-INCS= panel.h
+LIBADD+= ncursesw
# generate MAN
.PATH: ${NCURSES_DIR}/man
@@ -56,10 +54,19 @@ MLINKS= panel.3 bottom_panel.3 \
panel.3 show_panel.3 \
panel.3 top_panel.3 \
panel.3 update_panels.3
-.else
-MAN=
+
+# backward compat
+.if ${MK_INSTALLLIB} != "no"
+SYMLINKS+= libpanelw.a ${LIBDIR}/libpanel.a
+.endif
+.if !defined(NO_PIC)
+SYMLINKS+= libpanelw.so ${LIBDIR}/libpanel.so
.endif
-
+.if ${MK_PROFILE} != "no"
+SYMLINKS+= libpanelw_p.a ${LIBDIR}/libpanel_p.a
+.endif
+
+INCS= panel.h
.include <bsd.lib.mk>
# Keep the .SUFFIXES line after the include of bsd.lib.mk
diff --git a/lib/ncurses/panelw/Makefile b/lib/ncurses/panelw/Makefile
deleted file mode 100644
index 2585738a5e60..000000000000
--- a/lib/ncurses/panelw/Makefile
+++ /dev/null
@@ -1,5 +0,0 @@
-# $FreeBSD$
-
-ENABLE_WIDEC=
-
-.include "${.CURDIR:H}/panel/Makefile"
diff --git a/lib/ncurses/panelw/Makefile.depend b/lib/ncurses/panelw/Makefile.depend
deleted file mode 100644
index 3d9451023bec..000000000000
--- a/lib/ncurses/panelw/Makefile.depend
+++ /dev/null
@@ -1,17 +0,0 @@
-# $FreeBSD$
-# Autogenerated - do NOT edit!
-
-DIRDEPS = \
- include \
- include/xlocale \
- lib/${CSU_DIR} \
- lib/libc \
- lib/libcompiler_rt \
- lib/ncurses/ncursesw \
-
-
-.include <dirdeps.mk>
-
-.if ${DEP_RELDIR} == ${_DEP_RELDIR}
-# local dependencies - needed for -jN in clean tree
-.endif