[27427] trunk/dports/graphics/gimp2/Portfile
Yves de Champlain
yves at macports.org
Mon Aug 6 06:10:38 PDT 2007
Le 07-08-04 à 06:53, Ryan Schmidt a écrit :
>
> On Aug 4, 2007, at 04:03, Rainer Müller wrote:
>
>>> The point is that internals and default become less transparant
>>> and more
>>> complex for the user.
>>
>> I admit it is a little bit more complex to deselect
>> default_variants if
>> they are conflicting, like in the python24/python25 case... But after
>> all, it makes sense to write something like -python25 +python24
>> (think
>> that as "without python25, with python24").
>
> See my ports minivmac and pdftk for workarounds to make this easier
> for the user. I only select the default_variants if no conflicting
> variants have been selected.
>
>
>
> minivmac can emulate several early Mac models. If you don't specify
> otherwise, it emulates a Mac Plus.
>
>
> if { ![variant_isset mac128k] && ![variant_isset mac512k] && !
> [variant_isset mac512ke] && ![variant_isset macse] } {
> default_variants +macplus
> }
>
> variant mac128k conflicts mac512k mac512ke macplus macse
> description {Emulate a Macintosh with 128K RAM and 2 drives} {
> patchfiles-append patch-CNFGGLOB.h-mac128k.diff
> }
>
> variant mac512k conflicts mac128k mac512ke macplus macse
> description {Emulate a Macintosh 512K with 512K RAM and 2 drives} {
> patchfiles-append patch-CNFGGLOB.h-mac512k.diff
> }
>
> variant mac512ke conflicts mac128k mac512k macplus macse
> description {Emulate a Macintosh 512Ke with 512K RAM and 6 drives} {
> patchfiles-append patch-CNFGGLOB.h-mac512ke.diff
> }
>
> variant macplus conflicts mac128k mac512k mac512ke macse
> description {Emulate a Macintosh Plus with 4 MB RAM and 6 drives
> (default)} {
> # Mac Plus emulation is the default so we don't need to do
> anything here
> }
>
> variant macse conflicts mac128k mac512k mac512ke macplus
> description {Emulate a Macintosh SE with 4 MB RAM and 6 drives} {
> patchfiles-append patch-CNFGGLOB.h-macse.diff
> }
>
>
>
> pdftk can be compiled with any version of gcc. By default I want to
> use the latest, gcc42, but if the user is on a slow PowerPC Mac and
> already has an earlier gcc and doesn't want to spend a day
> upgrading, they can use another variant.
>
>
> if { ![variant_isset with_gcc34] && ![variant_isset with_gcj34] && !
> [variant_isset with_gcc41] && ![variant_isset with_gcc42] } {
> default_variants +with_gcc42
> }
>
> variant with_gcc34 conflicts with_gcj34 with_gcc41 with_gcc42 i386
> description {Build using gcc34 (PowerPC only)} {
> depends_lib-append port:gcc34
> build.args-append VERSUFF=-dp-3.4
> }
>
> variant with_gcj34 conflicts with_gcc34 with_gcc41 with_gcc42 i386
> description {Build using gcj34 (PowerPC only)} {
> depends_lib-append port:gcj34
> build.args-append TOOLPATH=${prefix}/gcj34-3.4.5/bin/
> }
>
> variant with_gcc41 conflicts with_gcc34 with_gcj34 with_gcc42 i386
> description {Build using gcc41 (PowerPC only)} {
> depends_lib-append port:gcc41
> build.args-append TOOLPATH=${prefix}/bin/ VERSUFF=-mp-4.1
> }
>
> variant with_gcc42 conflicts with_gcc34 with_gcj34 with_gcc41
> description {Build using gcc42 (default)} {
> depends_lib-append port:gcc42
> build.args-append TOOLPATH=${prefix}/bin/ VERSUFF=-mp-4.2
> }
>
> platform i386 {}
This is exactly my point.
Everything gets complex and confusing. I understand the use of
default variants in the 2 cases above because you have many excluding
options. But it's just not the best solution when adding or leaving
an option.
Maybe "+wihout" is not nice in a logical point of view, but it's
simple and straightforward.
yves
More information about the macports-dev
mailing list