Page MenuHomeFreeBSD

shells/zsh: Fix build with devel/ncurses 6.2
ClosedPublic

Authored by loader on Tue, Sep 8, 7:52 AM.

Details

Summary

The package built with poudriere is not affected, it links against the ncuses in base.

Proposed commit log message:

shells/zsh: Fix build with devel/ncurses 6.2

When devel/ncurses is installed in the system, the Zsh configure script detects and uses
${LOCALBASE}/include/ncurses/ncurses.h instead.

The patch is obtained from this commit:
https://sourceforge.net/p/zsh/code/ci/c6a85163619ed1cee89ab047a0d98108ed46828d/

cc -c -I. -I../../Src -I../../Src -I../../Src/Zle -I. -I/usr/local/include -DBOOL_DEFINED -DLIBICONV_PLUG -DHAVE_CONFIG_H -DMODULE -O2 -pipe  -DLIBICONV_PLUG -fstack-protector-strong -fno-strict-aliasing -fPIC -o curses..o curses.c
In file included from curses.c:210:
./curses_keys.h:93:15: error: use of undeclared identifier 'KEY_EVENT'
    {"EVENT", KEY_EVENT},
              ^
1 error generated.
*** Error code 1

Reviewed_by:    bapt, koobs 
Approved by:    bapt (maintainer), koobs (ports, mentor), 
Differential_Revision: D26355
MFH: 2020Q3 (build fix)
Test Plan
  • portlint: OK (

WARN: Makefile: COMMENT is not supposed to begin with 'A ', 'An ', or 'The '.
WARN: Makefile: [120]: possible direct use of command "rm" found. use ${RM} instead.
WARN: Makefile: [123]: possible use of "${CHMOD}" found. Use @(owner,group,mode) syntax or @owner/@group operators in pkg-plist instead.
WARN: Makefile: possible use of absolute pathname "/etc".
WARN: Makefile: use of DISTFILES with single file discouraged. distribution filename should be set by DISTNAME and EXTRACT_SUFX.
WARN: Makefile: "USES" has to appear earlier.
WARN: Makefile: DISTFILES/DISTNAME affects WRKSRC. take caution when changing them.
WARN: /usr/ports/shells/zsh/files/patch-Completion-Unix-Type-_diff_options: patch was not generated using `make makepatch''. It is recommended to use `make makepatch'' when you need to [re-]generate a patch to ensure proper patch format.
0 fatal errors and 8 warnings found.
)

  • testport: OK (poudriere: 1300111, [armv7, aarch64, amd64, i386], tested)

Diff Detail

Repository
rP FreeBSD ports repository
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

loader created this revision.Tue, Sep 8, 7:52 AM
loader requested review of this revision.Tue, Sep 8, 7:52 AM
loader edited the summary of this revision. (Show Details)Tue, Sep 8, 7:55 AM
koobs accepted this revision.Tue, Sep 8, 8:04 AM

I'd include the motivating issue description in the commit log message:

When devel/ncurses is installed in the system, the Zsh configure script detects and uses
${LOCALBASE}/include/ncurses/ncurses.h instead.

Note also that any build (types: fetch, patch, configure, build, run, package) fixes are:

Approved by: portmgr (blanket: <type> fix)
MFH: <No|<branch> <(reason)>

  • And dont need explicit maintainer approval (though its nice to ask for it)
  • Add <(reason>) to MFH line

For those MFH's that don't need explicit approval, the <(reason)> helps ports secteam by not requiring them to explicitly approve it

This revision is now accepted and ready to land.Tue, Sep 8, 8:04 AM
koobs added inline comments.Tue, Sep 8, 8:05 AM
shells/zsh/files/extra-patch-Src_Modules_curses__keys.awk
1 ↗(On Diff #76754)

If there's an upstream issue for this, good to add as a comment reference too

loader edited the summary of this revision. (Show Details)Wed, Sep 9, 5:26 AM
loader marked an inline comment as done.Wed, Sep 9, 5:29 AM

Already accepted @loader nice work :)

This revision was automatically updated to reflect the committed changes.