Date: Sat, 17 Jan 2015 07:00:24 -0800 From: Waitman Gobble <gobble.wa@gmail.com> To: Baptiste Daroussin <bapt@freebsd.org> Cc: "freebsd-ports@freebsd.org" <freebsd-ports@freebsd.org>, Palle Girgensohn <girgen@pingpong.net>, "pgsql@FreeBSD.org" <pgsql@freebsd.org> Subject: Re: postgresql93 port and libedit Message-ID: <CAFuo_fwBTE4XMNUHR10kubD85%2Bav-uj_cEqLHAw0X-aZf3UZHw@mail.gmail.com> In-Reply-To: <20150117145425.GR98528@ivaldir.etoilebsd.net> References: <CAFuo_fzX5i357NofZ2DFkz_=qDZzdNdGKdT8RfhoTN-wo=YDSA@mail.gmail.com> <20150115160113.GE98528@ivaldir.etoilebsd.net> <CAFuo_fxXu05ELWtB3GSjhC0-fk_cjEv8QN4LTgyxdsaC%2BXLXow@mail.gmail.com> <20150117004151.GO98528@ivaldir.etoilebsd.net> <171ED59D-E445-4605-B72C-E9ED8A74CA28@pingpong.net> <20150117140935.GQ98528@ivaldir.etoilebsd.net> <CAFuo_fxw051u=9gvNF4itUCFvy-ZnJZMztD%2B9_bN3Q=koUREmg@mail.gmail.com> <20150117145425.GR98528@ivaldir.etoilebsd.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jan 17, 2015 at 6:54 AM, Baptiste Daroussin <bapt@freebsd.org> wrot= e: > On Sat, Jan 17, 2015 at 06:38:10AM -0800, Waitman Gobble wrote: >> On Sat, Jan 17, 2015 at 6:09 AM, Baptiste Daroussin <bapt@freebsd.org> w= rote: >> > On Sat, Jan 17, 2015 at 10:37:49AM +0100, Palle Girgensohn wrote: >> >> >> >> >> >> 17 jan 2015 kl. 01:41 skrev Baptiste Daroussin <bapt@freebsd.org>: >> >> >> >> > On Thu, Jan 15, 2015 at 08:02:22PM -0800, Waitman Gobble wrote: >> >> >> On Thu, Jan 15, 2015 at 8:01 AM, Baptiste Daroussin <bapt@freebsd.= org> wrote: >> >> >>> On Wed, Jan 14, 2015 at 10:27:14PM -0800, Waitman Gobble wrote: >> >> >>>> Hi, >> >> >>>> >> >> >>>> I noticed that postgresql93-client port pulls in readline, which= is GPLv3. >> >> >>>> When I get rid of readline in Makefile 'USES' and also change th= e >> >> >>>> bottom of the Makefile in postgresql93-server, >> >> >>>> >> >> >>>> ... >> >> >>>> .include "${.CURDIR}/../postgresql92-server/Makefile" >> >> >>>> >> >> >>>> CONFIGURE_ARGS+=3D--with-libedit-preferred >> >> >>>> >> >> >>>> >> >> >>>> It builds without readline and links against libedit in base: >> >> >>>> >> >> >>> except that libedit is not really an alternative as it does not s= upprot unicode >> >> >>> (except in head) one solution would be to try linking against the= editline port >> >> >>> which contains the same fixes as libedit in head and see if it wo= rks. >> >> >>> >> >> >>> Best regards, >> >> >>> Bapt >> >> >> >> >> >> Thanks so much for the feedback. I've considered the options regar= ding >> >> >> my project and I think it's more work to handle end-user devices w= ith >> >> >> a pkg repository if I indeed must manage custom ports built using >> >> >> customized sources. Distributing the initial appliance isn't the >> >> >> problem, i'm working out an update strategy for down the road. >> >> >> >> >> > >> >> > https://people.freebsd.org/~bapt/pglibedit.diff >> >> > >> >> > This patch works for me and accepts perfectly unicode. >> >> > >> >> > Can anyone from the postgresql team test, generalize to other poste= gresql >> >> > versions? (please keep it using the port version of libedit). >> >> > >> >> > Best regards, >> >> > Bapt >> >> >> >> Hi, >> >> >> >> Looks like a reasonable patch. I have a hard time finding the differe= nces between readine and ilbedit. It aims at 100% API compatibility. How go= od is libedit? If it degrades functionality compared to readline it should = really be an option, but I agree, lesser options are preferred. >> >> >> >> Palle >> > It is not 100% compatible but I think it implements all pgsql requirem= ents, only >> > the version in ports and he head handle correctly unicode. >> > >> > Some of the default settings are a bit different most ^W but that can = be changed >> > via .editrc >> > >> > mysql has tips about the differences: >> > https://docs.oracle.com/cd/E17952_01/refman-5.6-en/mysql-tips.html >> > >> > From what I can read in the code psql only uses compatible interfaces. >> > >> > As the one who have done the latet updates on libedit both base and po= rts, I >> > would recommand to only use the version from ports on all version of F= reeBSD as >> > I can add quick fixes if needed. >> > >> > Once I'm sure the libedit in base is good enough everywhere we would b= e able to >> > switch on the base version if people prefers to avoid an external dep. >> > >> > Best regards, >> > Bapt >> >> Looks great. The patch looks fine, however there is an issue that the >> configure script in postgresql93 src still needs readline. If readline >> is already on the machine then it builds fine, however if it is not >> then the build fails. adding 'readline' back into USES will fix that >> problem, and the resulting client is still linked to libedit and not >> readline.. however the pkg will show a dependency on readline and pull >> that in. The configure script is based on having readline, if you use >> the --without-readline switch it won't even use libedit, however if >> you use --with-libedit-preferred it will check for readline and then >> switch the library linking order from 'readline libedit' to 'libedit >> readline'. >> >> I think the configure script for postgresql needs some rework so that >> it only uses libedit, and the option would be --with-readline or >> --with-libedit. >> >> if 'readline' is removed from the Makefile (and readline is already >> installed on the machine) then the package will build fine without the >> dependency on readline. It's kind of a tricky predicament that it >> needs it but not really. >> >> As far as a port, I'm not sure how to 'optionally' replace the >> configure script with what is in 'files' if the libedit option is >> selected. I'm sure there is an example in the ports tree, just haven't >> yet taken the time to check. >> > > I have no readline installed and I can see: > checking for rl_completion_append_character... no > checking for rl_completion_matches... yes > checking for rl_filename_completion_function... yes > checking for append_history... no > checking for history_truncate_file... yes > > Which is what I was expected. > > With libedit-prefered it checks: > READLINE_ORDER=3D"-ledit -lreadline" > > So from what I can see everything ok :) > > Bapt Hmmm, I'll check again. The build was failing for me using poudriere. it looks to me like the configure script checks for readline existence and the with-libedit-preferred check block is inside the readline check block.. --=20 Waitman Gobble Los Altos California USA 510-830-7975
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFuo_fwBTE4XMNUHR10kubD85%2Bav-uj_cEqLHAw0X-aZf3UZHw>