Hello porters,
My name is Alexander Pronin. I am a GSOC intern. My project is 
(http://wiki.freebsd.org/SummerOfCode2012/Parallelization_in_the_ports_collection#preview)

It is assumed that if a user calls

%make config-recursive

then options of current port and all it's dependency ports will be processed, 
but

If this port(A) enables dependency port(Z) via options then 
$$(${ALL-DEPENDS-LIST}) will not include this port(Z), hence options of port(Z) 
will not be processed.
If dependency port(B) of port(A) enables another dependency port(X) then 
options of this port(X) will not be processed either.

If I am correct with my assumptions, then the following patch fixes this 
behaviour:

--- /Users/scher/tmp/config-recursive/bsd.port.mk       2012-06-21 
22:53:45.000000000 +0400
+++ /Users/scher/tmp/config-recursive/bsd.port.mk-fixed 2012-06-21 
22:54:35.000000000 +0400
@@ -6110,8 +6110,8 @@
 
 .if !target(config-recursive)
-config-recursive:
+config-recursive: config-conditional
        @${ECHO_MSG} "===> Setting user-specified options for ${PKGNAME} and 
dependencies";
-       @for dir in ${.CURDIR} $$(${ALL-DEPENDS-LIST}); do \
-               (cd $$dir; ${MAKE} config-conditional); \
+       @for dir in $$(${MAKE} all-depends-list); do \
+               (cd $$dir; ${MAKE} config-recursive); \
        done
 .endif # config-recursive

---
Best regards,
Alexander Pronin

_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to