From 8a833bda0aca62592ceedf4a731c8c625b745971 Mon Sep 17 00:00:00 2001 From: Baptiste Daroussin Date: Wed, 9 Jul 2014 15:52:30 +0000 Subject: [PATCH] The GNU readline library is now an INTERNALLIB - that is, it is statically linked into consumers (GDB and variants) in the base system, and the shared library is no longer installed. That also allows ports to be able to use a modern version of readline PR: 162948 Reviewed by: emaste --- ObsoleteFiles.inc | 19 +++++++++++++++++++ UPDATING | 7 +++++++ gnu/lib/libreadline/Makefile | 2 +- gnu/lib/libreadline/history/Makefile | 15 --------------- gnu/lib/libreadline/history/doc/Makefile | 12 ------------ gnu/lib/libreadline/readline/Makefile | 22 ++++++++++++---------- gnu/lib/libreadline/readline/doc/Makefile | 20 -------------------- gnu/usr.bin/gdb/Makefile.inc | 3 +++ gnu/usr.bin/gdb/gdb/Makefile | 2 +- gnu/usr.bin/gdb/gdbtui/Makefile | 2 +- gnu/usr.bin/gdb/kgdb/Makefile | 2 +- share/mk/bsd.libnames.mk | 2 -- tools/build/mk/OptionalObsoleteFiles.inc | 2 -- 13 files changed, 45 insertions(+), 65 deletions(-) delete mode 100644 gnu/lib/libreadline/history/Makefile delete mode 100644 gnu/lib/libreadline/history/doc/Makefile delete mode 100644 gnu/lib/libreadline/readline/doc/Makefile diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index d70aede37a8..f8206e34a47 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -38,6 +38,25 @@ # xargs -n1 | sort | uniq -d; # done +# 20140705: turn libreadline into an internal lib +OLD_LIBS+=lib/libreadline.so.8 +OLD_FILES+=usr/lib/libreadline.a +OLD_FILES+=usr/lib/libreadline_p.a +OLD_FILES+=usr/lib/libreadline.so +OLD_FILES+=usr/lib/libhistory.a +OLD_FILES+=usr/lib/libhistory_p.a +OLD_FILES+=usr/lib/libhistory.so +OLD_LIBS+=usr/lib/libhistory.so.8 +OLD_FILES+=usr/include/readline/chardefs.h +OLD_FILES+=usr/include/readline/history.h +OLD_FILES+=usr/include/readline/keymaps.h +OLD_FILES+=usr/include/readline/readline.h +OLD_FILES+=usr/include/readline/rlconf.h +OLD_FILES+=usr/include/readline/rlstdc.h +OLD_FILES+=usr/include/readline/rltypedefs.h +OLD_FILES+=usr/include/readline/rltypedefs.h +OLD_FILES+=usr/share/info/readline.info.gz +OLD_FILES+=usr/share/man/man3/readline.3.gz # 20140625: csup removal OLD_FILES+=usr/bin/csup OLD_FILES+=usr/bin/cpasswd diff --git a/UPDATING b/UPDATING index 918c9994fdb..fcf8d8b3bd3 100644 --- a/UPDATING +++ b/UPDATING @@ -31,6 +31,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11.x IS SLOW: disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20140708: + The GNU readline library is now an INTERNALLIB - that is, it is + statically linked into consumers (GDB and variants) in the base + system, and the shared library is no longer installed. The + devel/readline port is available for third party software that + requires readline. + 20140702: The Itanium architecture (ia64) has been removed from the list of known architectures. This is the first step in the removal of the diff --git a/gnu/lib/libreadline/Makefile b/gnu/lib/libreadline/Makefile index 637dcc8a573..c2bfa669731 100644 --- a/gnu/lib/libreadline/Makefile +++ b/gnu/lib/libreadline/Makefile @@ -1,5 +1,5 @@ # $FreeBSD$ -SUBDIR = history readline +SUBDIR = readline .include diff --git a/gnu/lib/libreadline/history/Makefile b/gnu/lib/libreadline/history/Makefile deleted file mode 100644 index 16028728db2..00000000000 --- a/gnu/lib/libreadline/history/Makefile +++ /dev/null @@ -1,15 +0,0 @@ -# $FreeBSD$ - -SUBDIR= doc - -LIB= history -MAN= rlhistory.3 - -SRCS= $(HISTSRC) xmalloc.c - -rlhistory.3: doc/history.3 - cp -f ${.ALLSRC} ${.TARGET} - -CLEANFILES+= rlhistory.3 - -.include diff --git a/gnu/lib/libreadline/history/doc/Makefile b/gnu/lib/libreadline/history/doc/Makefile deleted file mode 100644 index 4b050e75ad9..00000000000 --- a/gnu/lib/libreadline/history/doc/Makefile +++ /dev/null @@ -1,12 +0,0 @@ -# $FreeBSD$ - -SRCDIR= ${.CURDIR}/../../../../../contrib/libreadline/doc - -INFO = history - -INFOSECTION= "Programming & development tools." -INFOENTRY_history= "* History: (history). The GNU History library." - -history.info: history.texi hstech.texi hsuser.texi version.texi fdl.texi - -.include diff --git a/gnu/lib/libreadline/readline/Makefile b/gnu/lib/libreadline/readline/Makefile index fab4aa23051..6ebea3a981a 100644 --- a/gnu/lib/libreadline/readline/Makefile +++ b/gnu/lib/libreadline/readline/Makefile @@ -1,10 +1,8 @@ # $FreeBSD$ -SUBDIR= doc - LIB= readline -MAN= doc/readline.3 -SHLIBDIR?= /lib +INTERNALLIB= yes +NO_MAN= yes TILDESRC= tilde.c SRCS= readline.c vi_mode.c funmap.c keymaps.c parens.c search.c \ @@ -15,13 +13,17 @@ SRCS= readline.c vi_mode.c funmap.c keymaps.c parens.c search.c \ INSTALLED_HEADERS= readline.h chardefs.h keymaps.h history.h tilde.h \ rlstdc.h rlconf.h rltypedefs.h +CFLAGS+= -I${.OBJDIR}/.. +SRCDIR= ${.CURDIR}/../../../../contrib/libreadline + +.for _h in ${INSTALLED_HEADERS} +CLEANFILES+= ${_h} +DPSRCS+= ${.OBJDIR}/${_h} +${.OBJDIR}/${_h}: ${SRCDIR}/${_h} + ${INSTALL} ${.ALLSRC} ${.TARGET} +.endfor + DPADD= ${LIBTERMCAP} LDADD= -ltermcap -INCSDIR=${INCLUDEDIR}/readline - -.for hdr in ${INSTALLED_HEADERS} -INCS+= ${SRCDIR}/${hdr} -.endfor - .include diff --git a/gnu/lib/libreadline/readline/doc/Makefile b/gnu/lib/libreadline/readline/doc/Makefile deleted file mode 100644 index 70289718f5e..00000000000 --- a/gnu/lib/libreadline/readline/doc/Makefile +++ /dev/null @@ -1,20 +0,0 @@ -# $FreeBSD$ - -SRCDIR= ${.CURDIR}/../../../../../contrib/libreadline/doc - -INFO = readline rluserman - -INFOSECTION= "Programming & development tools." -INFOENTRY_readline= "* Readline: (readline). The GNU Readline library" -INFOENTRY_rluserman= "* Readline: (readline). The GNU readline library API" - -CLEANFILES += readline.texi - -readline.info: rlman.texi rluser.texi rltech.texi version.texi fdl.texi - -readline.texi: rlman.texi - cp -f ${SRCDIR}/rlman.texi ${.TARGET} - -rluserman.info: rluserman.texi version.texi rluser.texi fdl.texi - -.include diff --git a/gnu/usr.bin/gdb/Makefile.inc b/gnu/usr.bin/gdb/Makefile.inc index 6679022a1bd..4912e0c6812 100644 --- a/gnu/usr.bin/gdb/Makefile.inc +++ b/gnu/usr.bin/gdb/Makefile.inc @@ -15,6 +15,8 @@ CNTRB_RL= ${CNTRB_ROOT}/libreadline OBJ_ROOT= ${.OBJDIR}/../.. OBJ_BU= ${OBJ_ROOT}/binutils OBJ_GDB= ${OBJ_ROOT}/gdb +OBJ_RL= ${OBJ_ROOT}/../lib/libreadline/readline +LIBREADLINE= ${OBJ_ROOT}/../lib/libreadline/readline/libreadline.a # These assignments duplicate much of the functionality of # MACHINE_CPUARCH, but there's no easy way to export make functions... @@ -46,6 +48,7 @@ CFLAGS+= -I${CNTRB_GDB}/gdb/config CFLAGS+= -I${CNTRB_BU}/include CFLAGS+= -I${CNTRB_GDB}/include CFLAGS+= -I${CNTRB_BU}/bfd +CFLAGS+= -I${OBJ_RL}/.. GENSRCS+= nm.h tm.h diff --git a/gnu/usr.bin/gdb/gdb/Makefile b/gnu/usr.bin/gdb/gdb/Makefile index 23a30729de0..473ffa3907c 100644 --- a/gnu/usr.bin/gdb/gdb/Makefile +++ b/gnu/usr.bin/gdb/gdb/Makefile @@ -12,7 +12,7 @@ GDBLIBS= ${OBJ_GDB}/libgdb/libgdb.a LDFLAGS+= -Wl,-E DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} ${LIBGNUREGEX} -LDADD= ${GDBLIBS} ${BULIBS} -lm -lreadline -ltermcap -lgnuregex +LDADD= ${GDBLIBS} ${BULIBS} -lm ${LIBREADLINE} -ltermcap -lgnuregex NO_PIE= yes diff --git a/gnu/usr.bin/gdb/gdbtui/Makefile b/gnu/usr.bin/gdb/gdbtui/Makefile index d3651b48842..34946eab316 100644 --- a/gnu/usr.bin/gdb/gdbtui/Makefile +++ b/gnu/usr.bin/gdb/gdbtui/Makefile @@ -13,7 +13,7 @@ GDBLIBS= ${OBJ_GDB}/libgdb/libgdb.a LDFLAGS+= -Wl,-E DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} ${LIBGNUREGEX} -LDADD= ${GDBLIBS} ${BULIBS} -lm -lreadline -ltermcap -lgnuregex +LDADD= ${GDBLIBS} ${BULIBS} -lm ${LIBREADLINE} -ltermcap -lgnuregex NO_PIE= yes diff --git a/gnu/usr.bin/gdb/kgdb/Makefile b/gnu/usr.bin/gdb/kgdb/Makefile index 9543ad0d3f4..7a7542a0c04 100644 --- a/gnu/usr.bin/gdb/kgdb/Makefile +++ b/gnu/usr.bin/gdb/kgdb/Makefile @@ -10,7 +10,7 @@ GDBLIBS= ${OBJ_GDB}/libgdb/libgdb.a DPADD= ${GDBLIBS} ${BULIBS} ${LIBKVM} ${LIBM} ${LIBREADLINE} ${LIBTERMCAP} \ ${LIBGNUREGEX} -LDADD= ${GDBLIBS} ${BULIBS} -lkvm${GDB_SUFFIX} -lm -lreadline -ltermcap \ +LDADD= ${GDBLIBS} ${BULIBS} -lkvm${GDB_SUFFIX} -lm ${LIBREADLINE} -ltermcap \ -lgnuregex .if defined(GDB_CROSS_DEBUGGER) diff --git a/share/mk/bsd.libnames.mk b/share/mk/bsd.libnames.mk index eb0509b4609..0f616002664 100644 --- a/share/mk/bsd.libnames.mk +++ b/share/mk/bsd.libnames.mk @@ -57,7 +57,6 @@ LIBGNUREGEX?= ${DESTDIR}${LIBDIR}/libgnuregex.a LIBGSSAPI?= ${DESTDIR}${LIBDIR}/libgssapi.a LIBGSSAPI_KRB5?= ${DESTDIR}${LIBDIR}/libgssapi_krb5.a LIBHDB?= ${DESTDIR}${LIBDIR}/libhdb.a -LIBHISTORY?= ${DESTDIR}${LIBDIR}/libhistory.a LIBHEIMBASE?= ${DESTDIR}${LIBDIR}/libheimbase.a LIBHEIMIPCC?= ${DESTDIR}${LIBPRIVATEDIR}/libheimipcc.a LIBHEIMIPCS?= ${DESTDIR}${LIBPRIVATEDIR}/libheimipcs.a @@ -127,7 +126,6 @@ LIBPROC?= ${DESTDIR}${LIBDIR}/libproc.a LIBPROCSTAT?= ${DESTDIR}${LIBDIR}/libprocstat.a LIBPTHREAD?= ${DESTDIR}${LIBDIR}/libpthread.a LIBRADIUS?= ${DESTDIR}${LIBDIR}/libradius.a -LIBREADLINE?= ${DESTDIR}${LIBDIR}/libreadline.a LIBROKEN?= ${DESTDIR}${LIBDIR}/libroken.a LIBRPCSVC?= ${DESTDIR}${LIBDIR}/librpcsvc.a LIBRPCSEC_GSS?= ${DESTDIR}${LIBDIR}/librpcsec_gss.a diff --git a/tools/build/mk/OptionalObsoleteFiles.inc b/tools/build/mk/OptionalObsoleteFiles.inc index 6ec484796f7..0214da84431 100644 --- a/tools/build/mk/OptionalObsoleteFiles.inc +++ b/tools/build/mk/OptionalObsoleteFiles.inc @@ -1998,7 +1998,6 @@ OLD_FILES+=usr/share/info/history.info.gz OLD_FILES+=usr/share/info/info-stnd.info.gz OLD_FILES+=usr/share/info/info.info.gz OLD_FILES+=usr/share/info/ld.info.gz -OLD_FILES+=usr/share/info/readline.info.gz OLD_FILES+=usr/share/info/regex.info.gz OLD_FILES+=usr/share/info/rluserman.info.gz OLD_FILES+=usr/share/info/stabs.info.gz @@ -3725,7 +3724,6 @@ OLD_FILES+=usr/lib/libpcap_p.a OLD_FILES+=usr/lib/libpmc_p.a OLD_FILES+=usr/lib/libpthread_p.a OLD_FILES+=usr/lib/libradius_p.a -OLD_FILES+=usr/lib/libreadline_p.a OLD_FILES+=usr/lib/libroken_p.a OLD_FILES+=usr/lib/librpcsvc_p.a OLD_FILES+=usr/lib/librt_p.a