aboutsummaryrefslogtreecommitdiff
path: root/lib/ncurses
Commit message (Collapse)AuthorAgeFilesLines
* ncurses: fix cross build on MacOSBaptiste Daroussin12 days1-1/+0
|
* ncurses: merge update to ncurses 6.6Baptiste Daroussin13 days2-22/+24
| | | | | | | 6.6 is ABI compatible with 6.5 (tested with abidiff) Remove html documentation to ease updates MFC After: 1 month
* ncurses: readd "bsdpads"Baptiste Daroussin2025-12-051-1/+1
| | | | | | | | | | | | | During the import of ncurses 6.5 some bsd specifics configuration where lost and reintroduce quickly after the import, unfortunatly there was a typo in this fix which caused the "bsdpads" to not be enabled in ncurses. Fortunatly only very old programs may be affected by this change, unfortunatly Nethack (in the ports tree is one of them.) PR: 287358 MFC After: 3 days
* packages: Install development manpages in the -dev packageLexi Winter2025-10-261-2/+4
| | | | | | | | | | | | | | | | | | | | | Add a new per-group SUBPACKAGE option to bsd.man.mk. When MANSPLITPKG is enabled, this is forced to "-man", otherwise it defaults to empty but can be overridden by the caller. Use this in bsd.lib.mk to install library manpages in the -dev package instead of the base package. This is nearly always preferable, since library manpages are usually in section 2 or 3 and are only relevant to people with development packages installed. For manpages which should be installed in the base package even for libraries, add a new MANNODEV group in bsd.lib.mk. Update existing Makefiles to use this where appropriate. MFC after: 3 days Discussed with: olce Reviewed by: olce Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52832
* ncurses: Add an ncurses-lib packageLexi Winter2025-10-151-0/+1
| | | | | | | | | | | | | | | Set LIB_PACKAGE= in lib/ncurses/Makefile.inc so the ncurses libraries go into the ncurses-lib subpackage rather than the base package. This means applications that depend on ncurses can be installed without needing to install the various utilities and manpages. This removes a dependency from runtime to ncurses (it now depends on ncurses-lib instead). MFC after: 3 seconds Reviewed by: kevans Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D53060
* pkgbase: move ncurses into its own packageKyle Evans2025-09-305-4/+1
| | | | | | | | | | | | | | | | | | Pushing ncurses into clibs adds extra upgrade risk to a package that otherwise consists of integral libs with non-trivial interdependencies. Adding it to -runtime was considered, but the move was historically motivated to some extent by allowing a much smaller set of base libs to be installed for smaller VM images that don't really need all of the runtime package. This also fixes the ncurses build to ensure that libmenuw is grouped with the rest of the ncurses libraries, which doesn't seem to have been an intentional omission. Reviewed by: ivy MFC after: 2 days (pkgbase movement) Differential Revision: https://reviews.freebsd.org/D52786
* ncurses: Provide reproducible pathsMark Johnston2025-07-141-0/+9
| | | | | | | | | | Avoid hard-coding the value of SRCTOP in generated files. Use /usr/src as the canonical srcdir. MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D50955
* build: remove the last vestiges of lint supportBrooks Davis2025-06-052-4/+0
| | | | | | | | | Commit 1cbb58886a47 (shipped in 12.0.0) removed all lint infrastructure. A bunch of NO_LINT definitions remained (perhaps as a bootstrapping measture). Remove them. Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D50704
* Retire MK_PROFILE infrastructureEd Maste2024-11-125-23/+0
| | | | | | | | | | It was disabled by default in fe52b7f60ef4. We planned to (but did not) remove the option before FreeBSD 14. Remove it now, for FreeBSD 15. Relnotes: Yes Reviewed by: imp Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D31558
* ncurses: Fix codegen for key names and codesSHENG-YI HONG2024-10-231-2/+3
| | | | | | | | | | | | | | | | | | Adding back arguments, which were missed during the import of ncurses version 6.5, to the code gen awk script. This is modified from lib_keyname.c and keys.list targets in contrib/ncurses/ncurses/Makefile.in of 21817992b3314c908ab50f0bb88d2ee750b9c4ac PR: 280697 Reported by: np Reviewed by: bapt Tested by: scf Fixes: 21817992b331 ncurses: vendor import version 6.5 MFC after: 1 week Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D47153
* Update Makefile.depend filesSimon J. Gerraty2024-10-144-3/+1
| | | | | | | After building packages we have a number of new and updated Makefile.depend files Reviewed by: stevek
* Remove residual blank line at start of MakefileWarner Losh2024-07-157-7/+0
| | | | | | | This is a residual of the $FreeBSD$ removal. MFC After: 3 days (though I'll just run the command on the branches) Sponsored by: Netflix
* ncurses: reinstantiate bsd specific codeBaptiste Daroussin2024-06-201-0/+3
| | | | This fixes ncurses 6.5 badly reading termcap
* ncurses: vendor import version 6.5Baptiste Daroussin2024-06-203-32/+37
|
* ncurses: serialize the tinfo build a little bitKyle Evans2024-01-241-3/+11
| | | | | | | | | | | | | | | Move ncurses_dll.h to GENHDRS to start with; it's been generated from ncurses_dll.h.in for years, so it's not actually in a different category than all of the other GENHDRS. Slap an .ORDER on it to ensure that we build ncurses_dll.h and curses.h before any *.c gets compiled. This should sufficiently address a build race seen downstream where ncurses_dll.h is present but not yet populated. Reviewed by: bapt Sponsored by: NetApp, Inc. Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D43540
* lib: Remove ancient SCCS tags.Warner Losh2023-11-272-4/+0
| | | | | | | | Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl script. Sponsored by: Netflix
* dirdeps: Update/fix Makefile.depend* for toolchainKa Ho Ng2023-11-273-0/+6
| | | | This fixes make pseudo/toolchain.
* ncurses: avoid hardcoded assumptions about the layout of .OBJDIRKyle Evans2023-09-122-4/+6
| | | | | | | | | | | | | Abstract out the details of the FreeBSD build into a $TINFO_OBJDIR that external builds can override if they orchestrate the build a bit differently and have a different objdir layout as a result. This makes the ncurses build a little bit more flexible without requiring weird backflips. Reviewed by: bapt, sjg Sponsored by: NetApp, Inc. Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D41834
* Remove $FreeBSD$: one-line sh patternWarner Losh2023-08-1613-13/+0
| | | | Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
* Remove $FreeBSD$: one-line .c comment patternWarner Losh2023-08-161-1/+0
| | | | Remove /^/[*/]\s*\$FreeBSD\$.*\n/
* Remove $FreeBSD$: one-line .h patternWarner Losh2023-08-162-2/+0
| | | | Remove /^\s*\*+\s*\$FreeBSD\$.*$\n/
* ncurses: Silence -Wunused-but-set-variable for various files.John Baldwin2023-06-273-0/+7
| | | | | | Presumably these will be fixed upstream eventually. Differential Revision: https://reviews.freebsd.org/D40664
* Fix building host tools for hostSimon J. Gerraty2023-04-201-0/+13
| | | | | | | | | | | | | | | Several makefile depend on tools built for host. At least when using DIRDEPS_BUILD we can build these for the pseudo machine "host" to facilitate building on older host versions. Ideally we would build these tools in their own directories to avoid building more than needed. For now, setting an appropriate default for BTOOLSPATH will suffice Reviewed by: stevek Sponsored by: Juniper Networks, Inc. Differential Revision: https://reviews.freebsd.org/D39708
* Update/fix Makefile.depend for userlandSimon J. Gerraty2023-04-195-10/+5
|
* pkgbase: Put libpanelw and libform in FreeBSD-clibsEmmanuel Vadot2023-02-082-0/+2
| | | | | | | Put them with the others ncurses libs. Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D38227
* Install working pkgconfig .pc files for compat librariesAlex Richardson2022-08-111-2/+2
| | | | | | | | | The default ones are install them to /usr/libdata/pkgconfig, and we can't use this path for compat libraries, so we use /usr/lib<suffix>/pkgconfigi here. Test Plan: grep -rn libdir= ./usr/lib32/pkgconfig/*.pc MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D34939
* ncurses: add SRCHDRS (ncurses_dll.h) to tinfo SRCSBrooks Davis2022-06-171-1/+1
| | | | | | | | | | | | | | This avoids relying on the `includes` target to generate this header which must be in .OBJDIR for the ncurses library to find it. With an upcoming change libcompat build won't build a seperate sysroot and will instead share with the 64-bit target which means the `includes` target will not be called. Sponsored by: DARPA, AFRL Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D35510
* ncurses: to not create a libncursesw.a in the OBJDIRBaptiste Daroussin2021-11-241-4/+6
| | | | | | It breaks intree partial builds for every library depending on ncurses because ncursesw.a (built without PIC) will be the first the library path for the linker to resolve -lncursesw
* ncurses: rework static linker script generationBaptiste Daroussin2021-10-262-10/+10
| | | | | | | | Rework the generation of the linker script to make it in par with ldscript, this also forces the regeneration of the .aldscript in the obj dir which might in the past have ended up empty. Tested by: manu
* ncurses: fix typo in makefileBaptiste Daroussin2021-10-101-1/+1
|
* ncurses: convert libncursesw.a into a static ldscriptBaptiste Daroussin2021-10-101-0/+14
| | | | | | | | | | | | | | Introduce the notion of static linker scripts to allow libncursesw.a to track its dependency on libtinfow.a this allows the build of older freebsd source tree to happen and make static linking in part with dynamic linking which already provides a ldscript This fixes a bootstrapping FreeBSD 12 or 13 on recent FreeBSD 14 Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D32435
* ncurses: fix path where to find curses.h at bootstrapBaptiste Daroussin2021-10-041-2/+2
| | | | | | after the split, curses.h is now generated by tinfo Makefile, but still used for a file generated in ncurses lib. Adjust the path to make sure curses.h is always found
* ncurses: split libtinfo from libncursesBaptiste Daroussin2021-10-048-987/+1146
| | | | | | | | | | | many external program expects libncurses to not be provided as a single library. Instead of fixing all ports, distribute ncurses the way upstream distributes it Turn libncursesw.so into a ldscript which will link automatically as needed to libtinfow so so this change is seamless at compile time. Differential Revision: https://reviews.freebsd.org/D32098
* expand @TPUT@ in ncurses manpagesYuri Pankov2021-04-141-0/+1
| | | | | Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D29761
* terminfo: add more path to lookup for the databaseBaptiste Daroussin2021-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | In preparation for the move of the database out of base, add one more path to lookup Now the default lookup path is 1. base 2. localbase 3. localbase special site for custom terminfo (for ports adding custom terminfo and avoid potential collision with the general db) 4. termcap The plan is to allow the terminfo-db to be installed by end users via a package for people willing to have the support for features from this database provides. And keep the fallback on termcap for people who don't want to hear about the terminfo db or how to configure the terminal if it uses by default the features proposed in the definitions of the terminfo db. the first look up path is a window open for a proposal made by glebius@ consisting on creating a tool where the user at install time will select the feature it want for a given terminal and generate its configurations based on that. I won't work on it, but it is now posssible and there is a path where to store those definitions
* Fix ncurses bootstrap on macOSAlex Richardson2021-03-011-0/+2
| | | | Avoid including machine/console.h when bootstrapping on non-FreeBSD.
* ncurses: fix generation of term.hBaptiste Daroussin2021-02-251-1/+3
| | | | | | All variable were not properly expanded Submitted by: cy (initial version)
* ncurses: fix patch dateBaptiste Daroussin2021-02-251-1/+1
| | | | Submitted by: cy
* ncurses: update configuration header after updateBaptiste Daroussin2021-02-251-4/+8
|
* ncurses: ensure we prefer the generated ncurses_dll.hBaptiste Daroussin2021-02-251-0/+1
|
* ncurses: Silence MKuserdefs.sh callRenato Botelho2021-02-251-1/+1
| | | | | | | | | Remove -x flag from sh used to execute MKuserdefs.sh during ncurses build and stop polluting make -s output Reviewed by: bapt, manu Approved by: bapt Differential Revision: https://reviews.freebsd.org/D28885
* ncurses: Add support for terminfo databaseBaptiste Daroussin2021-02-254-306/+46
| | | | | | | | | | | | | | | | | | | | | | | | | Along with the termcap database, ncurses will now lookup for the terminfo database, note that the terminfo database is being looked up first and then it fallsback on the termcap one. While here drop our custom reader for the termcap database, over the time it is needed maintenance to be able to catchup with changes on ncurses side. Install the ncurses tools which are needed to deal with the terminfo database: tic, infocmp, toe Replace our termcap only aware tools with the ncurses counterpart: tput, tabs, tset, clear and reset In particular they can your the extra capabilities described in the terminfo database, which does not exist in termcap Note that to add a new terminfo information to the database from ports the ports will just need to add their extra information into: /usr/local/share/site-terminfo/<firstletteroftheterm>/<term> Tested by: jbeich, manu
* Bump shared library versions after ncurses bump in 13.John Baldwin2021-02-023-0/+3
| | | | | | | | | | | | | A few shared libraries in the base system link against ncurses. An upgrade from a 12.x host to 13 results in ABI breakage for existing binaries since the newer versions of these libraries link against the newer ncurses while the binary itself links against the older ncurses. For example, dialog4ports built on 12.x sometimes crashes on 13 since it depends on libdialog which links against ncurses internally. MFC after: 3 days Reviewed by: kib, delphij Differential Revision: https://reviews.freebsd.org/D28448
* ncurses: only keep the version with widechar supportBaptiste Daroussin2021-01-0514-161/+75
| | | | | | | | | | | | | | | | 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
* Pass the full CFLAGS to cpp for MKlib_gen.sh.John Baldwin2020-08-031-1/+1
| | | | | | | | | | | | | | | | GCC's cpp was exiting immediately when it failed to find requested includes (<ncurses_cfg.h> and <ncurses_defs.h>). clang-cpp emitted an error for the missing header files but continued processing the file (thus not honoring any macros defined in the missing headers). Arguably, the awk script is buggy since it doesn't check the return value of the command it executes. Reviewed by: kevans Differential Revision: https://reviews.freebsd.org/D25731 Notes: svn path=/head/; revision=363804
* ncurses: bump shlib number to version 9Baptiste Daroussin2020-02-201-2/+1
| | | | | | | | | | | | ABI has change in between ncurses 5 or 6. While theorically ncurses 6 is buildable with backward compatibility, I fail at building in a way where the application linked against the previous version of ncurses are rendering properly. Let's go on the new ABI which provides all the latest features. A compat12x package is cooking for backward compatibility Notes: svn path=/head/; revision=358164
* Update to 6.2-20200215Baptiste Daroussin2020-02-191-1/+1
| | | | | | | | While I didn't plan another upgrade, This version incorporate fixes from kevans@ so let's upgrade to it Notes: svn path=/head/; revision=358127
* lib_gen.c now also depends on ncurses_dll.h specify it to prevent some breakageBaptiste Daroussin2020-02-191-1/+1
| | | | | | | if ncurses_dll.h is already present in base while building Notes: svn path=/head/; revision=358100
* Update ncurses to 20200118Baptiste Daroussin2020-02-183-53/+97
| | | | | | | | | | | | | | | | | | Among the changes from before: - Add support for extended colors on widechar version - Enable ncurses extended functions - Enable version 2 of the extended mouse support - Enable SCREEN extensions Modification that differs from upstream: - _nc_delink_entries used to be exposed and was turn static, turn it back as dynamic to not break abi - Adapt our old termcap.c to modern ncurses MFC after: 3 weeks Notes: svn path=/head/; revision=358062
* Update Makefile.depend filesSimon J. Gerraty2019-12-114-4/+0
| | | | | | | | | | | | | Update a bunch of Makefile.depend files as a result of adding Makefile.depend.options files Reviewed by: bdrewery MFC after: 1 week Sponsored by: Juniper Networks Differential Revision: https://reviews.freebsd.org/D22494 Notes: svn path=/head/; revision=355617