The right way to depend on a package's extra feature
Adam Weinberger
adamw at magnesium.net
Fri Aug 5 07:10:16 GMT 2005
Vasil Dimov wrote:
> Hi list,
>
> What it the right way to make a port that depends on other port, but
> that other port must be built with some extra feature?
>
> For example, imagine we have port "A" that installs
> /foo/bar/great_feature only if it is build with
> 'make WITH_GREAT_FEATURE=yes'
>
> Then we have port "B" that happens to depend on /foo/bar/great_feature.
>
> You see, there are two problems here:
>
> 1. We cannot pass WITH_GREAT_FEATURE=yes via the RUN_DEPENDS technology,
> only the target may be specified: RUN_DEPENDS=/file:portdir:target
> needed command: make -C portdir WITH_GREAT_FEATURE=yes target
>
> 2. Port A may have already been installed without WITH_GREAT_FEATURE=yes
> This will cause make WITH_GREAT_FEATURE=yes install in A's dir to fail
> with error "already installed"
> needed command: portupgrade -f -m WITH_GREAT_FEATURE=yes /var/db/pkg/A
> (huh! we used portupgrade, not very nice...)
>
> Any suggestions? Did I miss something?
I have that same problem with deskutils/gourmet. It needs a metakit
built with python support, but python support is disabled by default.
You can see what I've done as a kludge in deskutils/gourmet/Makefile,
but the best solution would be to separate metakit into a master/slave
port thing so you can just depend on metakit-python and be done with it.
Does this parallel your situation any?
# Adam
--
Adam Weinberger
adamw at magnesium.net || adamw at FreeBSD.org
adamw at vectors.cx || adamw at gnome.org
http://www.vectors.cx
More information about the freebsd-ports
mailing list