Date: 29 Dec 2001 09:25:54 +0200 From: Maxim Sobolev <sobomax@FreeBSD.org> To: "James E. Housley" <jeh@FreeBSD.org> Cc: Mikhail Teterin <mi@aldan.algebra.com>, joseph@randomnetworks.com, lioux@FreeBSD.org, ports@FreeBSD.org Subject: Re: cvs commit: ports/www Makefile ports/www/frontpage-es Makefiledistinfo pkg-comment Message-ID: <1009610598.225.7.camel@notebook> In-Reply-To: <3C2D18FB.855F80EC@FreeBSD.org> References: <200112282206.fBSM6kf36064@aldan.algebra.com> <1009581412.225.2.camel@notebook> <3C2D18FB.855F80EC@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--=-msuZQtp4TR7Kt6wlPNki Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Sat, 2001-12-29 at 03:14, James E. Housley wrote: > Maxim Sobolev wrote: > >=20 > > On Sat, 2001-12-29 at 00:06, Mikhail Teterin wrote: > > > > > > That's a bit off-topic, Max, please, don't change the subject. The po= rts > > > quality is the primary target. The wide choice of pre-built packages= -- > > > the secondary. It seems, the quality of the ports collection can= be > > > improved by merging the frontpage-<slave> ports into one (frontp= age > > > itself), even if that means there will be no prebuilt packages for = the > > > slaves for some time. > >=20 > > Look, you are complaining that there is no way to build several packags > > from one port with "options", but don't provide any reasonable way it > > could be improved. Replacing several frontpage-foo ports with one port > > with "options" doesn't count, because it's worse than the current setup > > when pre-built packages are considered. I don't see why you think that > > pre-built packages are "the secondary". If the maintainer(s) feel > > comfortable maintaining N ports - so be it, it's his/their business, no= t > > yours. > >=20 >=20 > For this specific case, a single port with multiple laguages, I have a > concept for a solution. It is still rough and I don't have any patches > for bento's scripts yet. I will use the www/frontpage-* as an example > here. >=20 > * If in www/frontpage "make -UBATCH" is done, ie not in BATCH mode then > a dialog will pop-up for language selection. >=20 > * If in www/frontpage "make -DBUILD_LANGUAGE=3Dar" then the proper pieces > for arabic will be included, including PKGNAMEPREFIX. >=20 > * A new variable will be added to www/frontpage/Makefile for the > specifying the languages to be built. "LANGUAGES=3D ar de ex fr he it ja > ko nl pt sv th zh" The scripts on bento would be modified so that if > the variable LANGUAGES existed then it would build a package for that > port, settting BUILD_LANGUAGE to each value in the array. I suppose > there would need to be away to say build an english version with out an > extension. >=20 > There might need to be another variable added to the package .tgz file > with information about the language or what ever. >=20 > After this is done, I would imagine the next step would be to generalize > this into a second set of variable that could be used to build common > variations of some of the ports. For example www/php4 by default builds > with MySQL support. We could create another standard variation that > includes XML support. >=20 > Probably the best example of this would be *+ipv6. We would have bento > automatically build the +ipv6 variations of ports. If the variable > IPV6_ALSO=3DYES then a second copy for the port would be built with > -DWITH_IPV6. That would then allow the combining www/apache13 and > www/apache13+ipv6; www/mozilla and www/mozilla+ipv6 and probably > others. WITH_IPV6 would probably be worth adding to /etc/make.conf. >=20 > This is rough and has absolutely no code, but it is a place to start > discussions. Yes, I think that something like that would be useful, but for this proposal to be practically useable there should be a way for bento scripts to do auto-discovery of the available options for each port, otherwise there will be too much trouble each time some new option is introduced. Following is how I see it: 1. Each port that supports "options" declares variable PORTOPTIONS in its Makefile, which is the list of all supported build-time options. For example: PORTOPTIONS=3D WITH_FOO WITHOUT_BAR The Makefile obviously should recognize those options, enable/disable approprite features, set sensible PKGNAMESUFFIXes, etc. 2. When building packages on bento, the script tests if the PORTOPTIONS is defined and if yes, then repeats the build of the port several times (3 times in the example above - first without any options, second with WITH_FOO defined and third - with WITHOUT_BAR). As a result, there should be 3 packages with different suffixes. This is a quite "raw" proposal just off the top of the top of my head and I know that there are several drawbacks - for example there is no way to separate those options that are mutually exclusive from those that aren't. Also, ideally there should be a way to automatically present user with a dialog to select from the list of available options. -Maxim --=-msuZQtp4TR7Kt6wlPNki Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (FreeBSD) Comment: For info see http://www.gnupg.org iD8DBQA8LW9moNu5t4iCBa8RAqpRAJ0VcWEksZ3v5zG6rK7yTyU0Umj8zwCdHlzo V7NK16xpd9lI8T/h0u13U0s= =Def1 -----END PGP SIGNATURE----- --=-msuZQtp4TR7Kt6wlPNki-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1009610598.225.7.camel>