Date: Fri, 23 Oct 2015 19:31:07 +0000 From: bugzilla-noreply@freebsd.org To: ruby@FreeBSD.org Subject: maintainer-feedback requested: [Bug 203988] lang/ruby21 - readline & libedit configure options spelled wrong Message-ID: <bug-203988-21402-DCG9W0Gq4s@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-203988-21402@https.bugs.freebsd.org/bugzilla/> References: <bug-203988-21402@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
John Hein <z7dr6ut7gs@snkmail.com> has reassigned Bugzilla Automation <bugzilla@FreeBSD.org>'s request for maintainer-feedback to ruby@FreeBSD.or= g: Bug 203988: lang/ruby21 - readline & libedit configure options spelled wrong https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D203988 --- Description --- Created attachment 162400 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D162400&action= =3Dedit [patch] fix --with-libedit/readline* configuration arg spellings and enable them for libedit in the readline module's extconf.rb The --with-readline-prefix and --with-libedit-prefix configure arguments are spelled wrong. They should be --with-readline-dir and --with-libedit-dir. = See dir_config() inlib/mkmf.rb It's just luck in the normal default case that the ports do the right thing now. You could spell them --with-libedit-flibberjam=3D${LOCALBASE} and it = would still work (in the default case). Because -I/usr/local/include is added for other reasons and normally /usr/local (LOCALBASE) is where the readline and libedit ports are installed. For instance, if you select the LIBEDIT option and have devel/libedit insta= lled to a different prefix than LOCALBASE, then setting --with-libedit-prefix=3D<that_prefix> (you have to change the current port Makefile to test that since it's hard-coded to ${LOCALBASE} instead of the results from 'pkgconf --variable prefix libedit') will fail to find the rig= ht libedit and you'll get issues like this because the ruby build finds and us= es the libedit from base: compiling readline.c readline.c: In function 'history_get_offset_history_base': readline.c:1573: error: 'history_base' undeclared (first use in this functi= on) readline.c:1573: error: (Each undeclared identifier is reported only once readline.c:1573: error: for each function it appears in.) readline.c: In function 'hist_get': readline.c:1585: error: 'HIST_ENTRY' undeclared (first use in this function) readline.c:1585: error: 'entry' undeclared (first use in this function) readline.c:1590: error: 'history_length' undeclared (first use in this function) readline.c: In function 'hist_set': readline.c:1605: error: 'HIST_ENTRY' undeclared (first use in this function) . . Furthermore, I believe there's a bug in ext/readline/extconf.rb in the libe= dit case where the --with-libedit* feature is not turned on - it needs 'dir_config("libedit")'. That part of the attached patch can be submitted upstream. I'll try to do that if no one else beats me to it. This bug is something of a nitpick since everything works in the default everything-in-/usr/local case now. But the configure option is definitely spelled wrong. And those --with-libedit* knobs need to be enabled in readline/extconf.rb for libedit.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-203988-21402-DCG9W0Gq4s>