-
Notifications
You must be signed in to change notification settings - Fork 699
gcc: Add 15.1.0 #2344
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gcc: Add 15.1.0 #2344
Conversation
beat me to it :) |
Could you add a milestone entry for this to |
I think the first batch of build failures are due to some ./configure tests failing to pick up the right functions and using bad fall-backs. |
https://gcc.gnu.org/pipermail/gcc-announce/2025/000185.html See upstream changes at https://gcc.gnu.org/gcc-15/changes.html Add the new version clean up the patches. Remove GCC 14 patches applied to GCC 15. Signed-off-by: Hans-Christian Noren Egtvedt <egtvedt@samfundet.no>
Ah, didn't know, included now. |
Add a patch that updates some function definitions to be compliant with C23. Signed-off-by: Chris Packham <judge.packham@gmail.com>
@cpackham Could you comment on why the massive ncurses patches are needed? Close to half a million (!) LOC of new patches seems excessive for a compiler upgrade. Could (some of) these patches be avoided by explicitly using |
@tttapa yes it's not just support for GCC15 it's basically ncurses updates since 6.5. I did briefly think about trying to reduce the update to just the fixes for the I don't think it's quite as bad as it seems. Some of it seems bigger because of the way the patches have been exported so there is a lot more context than a the |
The overall ncurses changes are |
Bring in upstream patches for ncurses-6.5. These include various upstream fixes including allowing ncurses to be built with GCC15. Taken from https://invisible-island.net/archives/ncurses/6.5/ 20250426 + expand note on extensions in curs_addch.3x + add illumos, sun-16color, sun-256color, sun-direct -TD + add wyse+cvis -TD 20250419 + add note on scrolling and lower-right corner to waddch and wadd_wch manual pages. 20250412 + add pangoterm -TD + add kf1 to kf5 to sclp (report by Werner Fink) + add vt100+pf1-pf4 -TD 20250405 + improve formatting/style of manpages (patches by Branden Robinson). + improve infocmp -E/-e fallback feature (report by Ville Rissanen): + prefix names with "ti_" if they begin with a digit, e.g., 9term + escape backslashes and double-quotes in description fields + modify infocmp -E/-e fallback feature to reduce stricter compiler warnings for the extended capability data. + add sclp -TD + add op to vt525 -TD + update contour -TD 20250329 + add XM/xm to ms-terminal, to enable mouse with experimental Windows driver -TD + add -x option to infocmp in MKfallback.sh + improve experimental Windows driver by restoring the scroll buffer and console mode, e.g., when reset_prog_mode or endwin is called (patch by Daniel Starke). + add a buffer-limit check in postprocess_termcap (report/testcase by Yifan Zhang). 20250322 + add a null pointer check in mouse-initialization, for the experimental Windows driver (patch by Daniel Starke). + improve makefile dependency in Ada95/src + add note in user_caps.5 addressing a quibble about dates. 20250315 + improve formatting/style of manpages (patches by Branden Robinson). 20250308 + remove test in wgetch which applied notimeout to the initial read of a character (patch by Branden Robinson). + improve formatting/style of manpages (patches by Branden Robinson). + fix a few compiler-warnings in MinGW port. 20250301 + add color to vt525 (Branden Robinson) + add vt520-w and vt525-w (Branden Robinson) + improve formatting/style of manpages (patches by Branden Robinson). + improve configurability of alloca() as used in Windows ports. + fix some typos in manpages. + modify configure script checks for stdbool.h to fix build with older gcc version. 20250222 + modify treatment of "n" parameter for waddnstr, waddnwstr, and wins_nwstr to return OK when "n" is zero, for consistency with other implementations (report by Benjamin Barenblat, cf: 20231118). + formatting improvements for terminfo.5 (Debian #1096164). 20250216 + add limit-checks in alloc_entry.c and alloc_ttype.c to avoid indexing errors when using infocmp to compare all capabilities when processing a malformed terminfo binary which has a valid header (testcase by "Ekkosun"). 20250215 + add gzip option for suppressing filename/timestamp information to an overlooked case (cf: 20240330). + correct spelling errors found with codespell. + fix some typos in manpages (report by Sven Joachim) + amend change to lib_set_term.c to work with thread configuration (report by Rajeev Pillai, cf: 20250208). 20250208 + change etip.h.in to include either/both of <new> and <exception>, needed for another old BSD. + update st (report by Alexander Kashpir) -TD + add note for ghostty 1.1.0 -TD + fix a few issues found with coverity. 20250201 + add <new> to the possible headers declaring the C++ std::bad_alloc (report by Carl Hansen). + modify check for stdbool.h to be more conservative in case the headers are used with a compiler other than that which was used to configure (Redhat #2342514). + improve MKlib_gen.sh handling of "bool" type, for building link_test + improve formatting/style of manpages (patches by Branden Robinson). 20250125 + improve error-handling in c++ binding (report by Mingjie Shen). + strict compiler-warning fixes for upcoming gcc15 20250118 + improve pattern used for configure --with-xterm-kbs option (report by Mingyu Wang) + update configure macros, from work on cdk and dialog. + change a parameter name in curs_sp_funcs.3x, for consistency (patch by "WHR"). > patches by Branden Robinson: + improve formatting/style of manpages + change winwstr() to a generated function, using the macro definition, moving its handling of negative length parameter into winnwstr(). + correct actual-function name in a few trace calls. 20250111 + add check for infinite loop in tic's use-resolution. + increase limit on use-clauses from 32 to 40, warn but allow entries which exceed the old limit. + add some null-pointer checks after mallocs in test-programs. 20250104 + modify tput to warn about capabilities which expect parameters where none are given; also repair the feature where multiple capabilities can be handled on a single line. + cleanup use-clauses -TD + add linux+lockeys, xterm+r5+lockeys, xterm+r5+fkeys -TD + add vt220+ufkeys, vt220+sfkeys + revert man/manlinks.sed change, which loses aliases (cf: 20241228). + modify MKlib_gen.c to allow for Solaris's definition of NULL as 0L 20241228 + correct conditional-compile for a case when the C compiler does not have a bool type. + add ghostty -TD > patches by Branden Robinson: + add comments to generated term.h to hint the configure options used + use same subdir-convention for term.h, in configure script + improve formatting/style of manpages 20241221 + modify ncurses/tinfo/MKfallback.sh to work with MacOS sed, which lacks BSD-style \< and \> + trim padding from sgr expression used in trim_sgr0, to avoid copying the padding into the resulting sgr0 (report by Rajeev Pillai). + strict compiler-warning fixes for upcoming gcc15 20241214 + avoid redefining bool in curses.h if the platform already supports that type (cf: 20241123). + move include <curses.h> from etip.h.in to cursesw.h, to work around breakage in Apple's port of ncurses. + strict compiler-warning fixes for upcoming gcc15 20241207 + strict compiler-warning fixes for upcoming gcc15 20241130 + improve configure check for lint program. + adjust options in test-programs to allow for consistent use of -c/-l for command/logging. + modify win_driver.c for MinGW to handle shift-tab and control-tab as back-tab (report by Axel Reinhold) 20241123 + remove dependency on stdbool.h from configure script check for type of bool when C++ binding is omitted (report by Sam James). + compiler-warning fixes 20241109 + work around musl header ifdef's (report by Urs Jansen, cf: Gentoo #920266). + improve error-reporting in write_entry.c (report by Changqing Li). + remove unused #include from DJGPP configuration (report by Stas Sergeev). + workaround/fix issues from clang-analyze 20241102 + remove djgpp-specific initialization to binary mode (report/patch by Stas Sergeev). + add extended-keys for djgpp 2.05 -TD 20241026 + update ms-terminal -TD + add ms-terminal-direct -TD + correct dimensions in test/popup_msg.c, fixing an overrun (patch by Stas Sergeev, cf: 20211219). 20241019 + fixes for compiler warnings/cppcheck. + build-fixes for DJGPP configuration (patches by Stas Sergeev) 20241006 + fixes for compiler warnings/cppcheck. + use xterm+alt+title in wezterm -TD 20240928 + improve error-message from infocmp when a terminal entry cannot be opened (patch by Branden Robinson). + improve filtering of -L options in misc/gen-pkgconfig.in and in misc/ncurses-config.in + add check in wresize() for out-of-range dimensions (report by Peter Bierma). 20240922 + add a few null-pointer checks in ncurses + improve test-driver in ncurses/link_test.c + restore background character in manpages as described in X/Open Curses section 3.3.6, and add option "-c" to test programs to illustrate a non-blank character in the window background property. + improve formatting/style of manpages (patches by Branden Robinson). + modify ncurses*-config to add -I option in --cflag where needed for --disable-overwrite to match ".pc" files. + disallow directories and block/character devices in safe-open. + amend scr_restore() and scr_init() to remove the target window only after validating the source window which will replace the target (report by Zixi Liu). 20240914 + modify _nc_flush() to also flush stderr to help the flash capability to work in bash (patch by Harm te Hennepe, cf: 20201128) + omit -g and -fXXX flags from CFLAGS in misc/ncurses-config.in + improve formatting/style of manpages (patches by Branden Robinson). + improve examples in NCURSES-Programming-HOWTO.html + update comments in terminfo.src -TD 20240831 + build-fix for a case in msys2 where gettimeofday() was available but the fallback was partly configured. > patch by Rafael Kitover: + separate the _NC_WINDOWS platform macro into _NC_WINDOWS_NATIVE, for MinGW and other native Win32 support, and _NC_WINDOWS, to make some Win32 features available under the Cygwin runtime, in this case the term-driver. + make some minor adjustments to allow ./configure --enable-term-driver to also work on Cygwin platforms such as Cygwin and MSYS2. 20240824 + modify infocmp and tabs to use actual name in usage and header. + modify test/demo_keyok.c to accept ^Q for quit, for consistency. 20240817 + review/update foot for 1.18.1 -TD + add a note about DomTerm 3.2.0 -TD + add new glob-expressions variables to list in config.status script (patch by Werner Fink). + add --enable-install-prefix to modify behavior of $DESTDIR to merge or replace the value set by --prefix (adapted from suggestion by Eli Zaretskii). 20240810 + modify misc/Makefile.in and misc/run_tic.in so that $DESTDIR is set and used only in the makefile. + modify CF_WITH_PKG_CONFIG_LIBDIR to allow for pkg-config using DOS/Windows pathname syntax (report by Eli Zaretskii). + improve glob-expressions in configure script + remove unused Get_Menu_Screen() macro from menu.priv.h + update config.guess, config.sub 20240727 + improve formatting/style of manpages (patches by Branden Robinson). + fixes for compiler warnings/cppcheck. + modify wattron/wattroff calls in form/m_post.c to call wattr_on and wattr_off to omit cast used in the former for X/Open compatibility (patch by Bill Gray). + modify wezterm, omitting its broken left/right margin feature (report by Thayne McCombs) -TD 20240720 + improve formatting/style of manpages (patches by Branden Robinson). + modify configure script and misc/Makefile to accept glob expressions that include Windows/DOS drive-letters (report by Eli Zaretskii). + fix misspelled ifdef and correct return-value of _nc_mingw_tcflush in win_driver.c (report/patch by Eli Zaretskii). 20240713 + modify misc/ncurses-config.in, improved match with pkg-config output. 20240706 + update configure script to use macro changes from dialog. + modify CF_NCURSES_PTHREADS to avoid equating package and library names. 20240629 + build-fix for ncurses-examples with newer PDCurses, which no longer has stubs for unimplemented features. + add help-popup for test_instr.c, test_inwstr.c + modify checks in delwin to avoid checking if the window is a pad until first checking if it is still on the active window-list (cf: 20211115). + improve -t option of test/gdc.c, allowing hours only, or hours and minutes only. 20240622 + improve test/gdc.c (patch by Branden Robinson). + improve formatting/style of manpages (patches by Branden Robinson). + adjust naming of mingw *-config scripts to match the pkg-config names + widen pattern in pc/*-config scripts to disallow more linker options + add --cflags-only-I and --cflags-only-other options to misc/ncurses-config.in + revert change to CF_BUILD_CC macro (report by Vassili Courzakis, cf: 20240518). 20240615 + improve formatting/style of manpages (patches by Branden Robinson). + review/update modules files. + improve install-rules in Ada95 makefiles (report by Branden Robinson). + improve formatting/style of manpages in test-directory. 20240608 + change winwstr to return wide character count instead of OK (patch by Branden Robinson). + improve formatting/style of manpages (patches by Branden Robinson). + rename testing dpkg's for ncurses6 to resolve a naming conflict with Debian's ncurses packages. 20240601 + improve formatting/style of manpages (patches by Branden Robinson). + change Ada95/configure to use --with-screen option rather than --enable-widec, to provide more choices of underlying curses library 20240525 + build-fix for configure option --disable-ext-funcs + improve formatting/style of manpages (patches by Branden Robinson). + review/update iTerm2 for 3.5.0 -TD 20240519 + update Ada95/configure to match change for -DTRACE + revert change to include/ncurses_defs, which caused build failure if tracing was not enabled (report by Branden Robinson). 20240518 + improve formatting/style of manpages (patches by Branden Robinson). + move makefile's -DTRACE into include/ncurses_cfg.h, to simplify use of CFLAGS/CPPFLAGS. + improve check for clock_gettime(), from xterm. + modify configure script to work around broken gnatgcc script found in gcc-13 builds. 20240511 + improve formatting/style of manpages (patches by Branden Robinson). + limit value from ESCDELAY environment variable to 30 seconds, like other delay limits. + limit values from LINES and COLUMNS environment variables to 512 (report by Miroslav Lichvar). 20240504 + update ncurses/wcwidth.c, for MinGW ports, from xterm. + trim obsolete comment about tack from INSTALL. Signed-off-by: Chris Packham <judge.packham@gmail.com>
Ran a build-all over the weekend and the only failures were
I think the mips64-ol9u5-linux-gnu is pre-existing. I'll create issues for them and attach the build.log |
https://gcc.gnu.org/pipermail/gcc-announce/2025/000185.html
See upstream changes at https://gcc.gnu.org/gcc-15/changes.html
Add the new version clean up the patches. Remove GCC 14 patches applied to GCC 15.