Re: buildworld without libncursesw
On Wed, Mar 04, 2015 at 10:47:44AM +1100, Dewayne Geraghty wrote: On 4/03/2015 8:13 AM, Brooks Davis wrote: On Tue, Mar 03, 2015 at 08:20:57PM +1100, Dewayne Geraghty wrote: Is there a preferred way to buildworld without libncursesw? When I add to /etc/src.conf WITHOUT_NCURSESW=yes I find that a buildworld fails due to missing libncursesw.*. So what uses libncurses? These guys do /usr/bin/dialog /usr/bin/dpv /usr/sbin/sade - /usr/libexec/bsdinstall/partedit /usr/sbin/tzsetup Getting a little frustrated I modifed the Makefile:, so for example dialog (/usr/src/contrib/dialog) +.include bsd.own.mk + +.if ${MK_NCURSESW} == no +DPADD= ${LIBDPV} ${LIBDIALOG} ${LIBFIGPAR} ${LIBNCURSES} ${LIBUTIL} ${LIBM} +LDADD= -ldpv -ldialog -lfigpar -lncurses -lutil -lm +.else DPADD= ${LIBDPV} ${LIBDIALOG} ${LIBFIGPAR} ${LIBNCURSESW} ${LIBUTIL} ${LIBM} LDADD= -ldpv -ldialog -lfigpar -lncursesw -lutil -lm +.endif And checking # make -VMK_NCURSESW no I'm at a bit of a loss as to why these are proving difficult to build, or what I can do to get the desired outcome, ie no libncursesw.so* I tried to make this work a while ago and it's not practical. Instead, we need to remove libncurses (or more likely replace it with a linker script to cause libncursesw to be used.) It should be the case that nothing in the base system uses libncurses, but it's all too likely that someone has broken that since I switched the remaining bits over. -- Brooks Unfortunately I can't say which ones use libncurses as I've sprinkled things like this over anything that uses libncursesw -DPADD= ${LIBDEVSTAT} ${LIBKVM} ${LIBGEOM} ${LIBBSDXML} ${LIBSBUF} ${LIBEDIT} ${LIBNCURSESW} -LDADD= -ldevstat -lkvm -lgeom -lbsdxml -lsbuf -ledit -lncursesw +DPADD= ${LIBDEVSTAT} ${LIBKVM} ${LIBGEOM} ${LIBBSDXML} ${LIBSBUF} ${LIBEDIT} +LDADD= -ldevstat -lkvm -lgeom -lbsdxml -lsbuf -ledit +.include bsd.own.mk + +.if ${MK_NCURSESW} == no +DPADD+= ${LIBNCURSES} +LDADD+= -lncurses +.else +DPADD+= ${LIBNCURSESW} +LDADD+= -lncursesw +.endif + and only the above 4 programs are more of a challenge. Any consistency is a good thing, so honouring WITHOUT_NCURSESW should be the trigger. This situation arose because I needed some things in /rescue and there was a conflict stuffing both libncurses and libncursesw into the /usr/src/rescue build, as you'd expect. :) I'd forgotten I'd merged WITHOUT_NCURSESW to 10. That was a mistake as it turns out to be unmaintainable. I removed it from head long ago and it will not return. Unless you want to fix it and keep fixing it as things are merged from head we should either remove it or document it as broken. -- Brooks pgpFsfYzIEBlL.pgp Description: PGP signature
buildworld without libncursesw
Is there a preferred way to buildworld without libncursesw? When I add to /etc/src.conf WITHOUT_NCURSESW=yes I find that a buildworld fails due to missing libncursesw.*. So what uses libncurses? These guys do /usr/bin/dialog /usr/bin/dpv /usr/sbin/sade - /usr/libexec/bsdinstall/partedit /usr/sbin/tzsetup Getting a little frustrated I modifed the Makefile:, so for example dialog (/usr/src/contrib/dialog) +.include bsd.own.mk + +.if ${MK_NCURSESW} == no +DPADD= ${LIBDPV} ${LIBDIALOG} ${LIBFIGPAR} ${LIBNCURSES} ${LIBUTIL} ${LIBM} +LDADD= -ldpv -ldialog -lfigpar -lncurses -lutil -lm +.else DPADD= ${LIBDPV} ${LIBDIALOG} ${LIBFIGPAR} ${LIBNCURSESW} ${LIBUTIL} ${LIBM} LDADD= -ldpv -ldialog -lfigpar -lncursesw -lutil -lm +.endif And checking # make -VMK_NCURSESW no I'm at a bit of a loss as to why these are proving difficult to build, or what I can do to get the desired outcome, ie no libncursesw.so* Dewayne. ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org
Re: buildworld without libncursesw
On Tue, Mar 03, 2015 at 08:20:57PM +1100, Dewayne Geraghty wrote: Is there a preferred way to buildworld without libncursesw? When I add to /etc/src.conf WITHOUT_NCURSESW=yes I find that a buildworld fails due to missing libncursesw.*. So what uses libncurses? These guys do /usr/bin/dialog /usr/bin/dpv /usr/sbin/sade - /usr/libexec/bsdinstall/partedit /usr/sbin/tzsetup Getting a little frustrated I modifed the Makefile:, so for example dialog (/usr/src/contrib/dialog) +.include bsd.own.mk + +.if ${MK_NCURSESW} == no +DPADD= ${LIBDPV} ${LIBDIALOG} ${LIBFIGPAR} ${LIBNCURSES} ${LIBUTIL} ${LIBM} +LDADD= -ldpv -ldialog -lfigpar -lncurses -lutil -lm +.else DPADD= ${LIBDPV} ${LIBDIALOG} ${LIBFIGPAR} ${LIBNCURSESW} ${LIBUTIL} ${LIBM} LDADD= -ldpv -ldialog -lfigpar -lncursesw -lutil -lm +.endif And checking # make -VMK_NCURSESW no I'm at a bit of a loss as to why these are proving difficult to build, or what I can do to get the desired outcome, ie no libncursesw.so* I tried to make this work a while ago and it's not practical. Instead, we need to remove libncurses (or more likely replace it with a linker script to cause libncursesw to be used.) It should be the case that nothing in the base system uses libncurses, but it's all too likely that someone has broken that since I switched the remaining bits over. -- Brooks pgptqg5lvAXt2.pgp Description: PGP signature
Re: buildworld without libncursesw
On 4/03/2015 8:13 AM, Brooks Davis wrote: On Tue, Mar 03, 2015 at 08:20:57PM +1100, Dewayne Geraghty wrote: Is there a preferred way to buildworld without libncursesw? When I add to /etc/src.conf WITHOUT_NCURSESW=yes I find that a buildworld fails due to missing libncursesw.*. So what uses libncurses? These guys do /usr/bin/dialog /usr/bin/dpv /usr/sbin/sade - /usr/libexec/bsdinstall/partedit /usr/sbin/tzsetup Getting a little frustrated I modifed the Makefile:, so for example dialog (/usr/src/contrib/dialog) +.include bsd.own.mk + +.if ${MK_NCURSESW} == no +DPADD= ${LIBDPV} ${LIBDIALOG} ${LIBFIGPAR} ${LIBNCURSES} ${LIBUTIL} ${LIBM} +LDADD= -ldpv -ldialog -lfigpar -lncurses -lutil -lm +.else DPADD= ${LIBDPV} ${LIBDIALOG} ${LIBFIGPAR} ${LIBNCURSESW} ${LIBUTIL} ${LIBM} LDADD= -ldpv -ldialog -lfigpar -lncursesw -lutil -lm +.endif And checking # make -VMK_NCURSESW no I'm at a bit of a loss as to why these are proving difficult to build, or what I can do to get the desired outcome, ie no libncursesw.so* I tried to make this work a while ago and it's not practical. Instead, we need to remove libncurses (or more likely replace it with a linker script to cause libncursesw to be used.) It should be the case that nothing in the base system uses libncurses, but it's all too likely that someone has broken that since I switched the remaining bits over. -- Brooks Unfortunately I can't say which ones use libncurses as I've sprinkled things like this over anything that uses libncursesw -DPADD= ${LIBDEVSTAT} ${LIBKVM} ${LIBGEOM} ${LIBBSDXML} ${LIBSBUF} ${LIBEDIT} ${LIBNCURSESW} -LDADD= -ldevstat -lkvm -lgeom -lbsdxml -lsbuf -ledit -lncursesw +DPADD= ${LIBDEVSTAT} ${LIBKVM} ${LIBGEOM} ${LIBBSDXML} ${LIBSBUF} ${LIBEDIT} +LDADD= -ldevstat -lkvm -lgeom -lbsdxml -lsbuf -ledit +.include bsd.own.mk + +.if ${MK_NCURSESW} == no +DPADD+= ${LIBNCURSES} +LDADD+= -lncurses +.else +DPADD+= ${LIBNCURSESW} +LDADD+= -lncursesw +.endif + and only the above 4 programs are more of a challenge. Any consistency is a good thing, so honouring WITHOUT_NCURSESW should be the trigger. This situation arose because I needed some things in /rescue and there was a conflict stuffing both libncurses and libncursesw into the /usr/src/rescue build, as you'd expect. :) Regards, Dewayne. -- For the talkers: “The superior man acts before he speaks, and afterwards speaks according to his action.” For everyone else: “Life is really simple, but we insist on making it complicated.” ___ freebsd-stable@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-stable To unsubscribe, send any mail to freebsd-stable-unsubscr...@freebsd.org