Thanks for your help!
I was actually working on something similar to your (2), using CONFIG_
variables but there were some trouble with the logic behind including
the .config file and then also, all string options are exported with
"quotes" around them and that messed up the DEPENDENCY declaration.
BR // Mats
On 2015-01-23 08:18, Alexandru Ardelean wrote:
Well, you need to specifiy Ax in the DEPENDS section of B.
Since there are 3 Ax, you can do it 2 ways:
1) Create Bx (x = 1-3) packages; B1 depends on A1, B2 depends on A2,
B3 depends on A3; so, if you select the correct Bx, the correct Ax
will also get built.
You can also use build variants to keep Bx in a single Makefile; you
can check the package/ncurses/Makefile for hints.
The build variants does not seem too popular, but you can try it.
2) In the Makefile of B you can do a "dynamic" DEPENDS.
Before the package definition (i.e. define Package/B ) you can add a
A_DEPENDS variable.
You can do something like:
ifeq ($(A_DEPENDS),)
ifeq ($(CONFIG_A1),y)
A_DEPENDS := A1
endif
endif
ifeq ($(A_DEPENDS),)
ifeq ($(CONFIG_A2),y)
A_DEPENDS := A2
endif
endif
ifeq ($(A_DEPENDS),)
ifeq ($(CONFIG_A3),y)
A_DEPENDS := A3
endif
endif
A_DEPENDS should equal to either A1, A2 or A3, if either is selected.
Note that CONFIG_Ax is as defined in the .config file.
Then
define Package/B
DEPENDS:= ............ $(A_DEPENDS)
endef
If I look at this approach, it does what you asked for.
But all in all, I would say there would be a cleaner approach if Ax
and B are known.
If the assumption would be that Ax are similar packages (or variants
of a base A), then I'd make a single package A, and define some
options to it.
Based on those options A would be a variation of type Ax (x = 1 - 3).
Then
define Package/B
DEPENDS:= ............ A
endef
And you can configure A with whatever options you need.
On Thu, Jan 22, 2015 at 8:34 PM, Mats Karrman <mats.dev.l...@gmail.com
<mailto:mats.dev.l...@gmail.com>> wrote:
Hi,
I'm struggling with a problem and I can't really get it to work as
I want.
Say you have 3 packages, A1, A2 and A3, that all provide the
include file "f.h".
I also have package B that build-time depends on "f.h".
I will enable either A1, A2 or A3 in the .config for a build but
how do I make
OpenWRT understand that it cannot build B until either of Ax is built?
I'd be ever so greatfull for some good hints on how to solve this.
(and oh, I'm on "Attitude-Adjustment")
Best regards,
Mats
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
<mailto:openwrt-devel@lists.openwrt.org>
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel