[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: koji weirdness



On Mon, 2007-06-04 at 09:56 -0400, Adam Jackson wrote:

> This appears to stick a : between every target in the CHAIN, which means
> the build system will stall between every one.  Would it be possible to
> get like a 'make expert-chain' that lets you specify the stall points
> explicitly?

In fact, rather than just ask for it, here's a patch that does what I
want.

- ajax
? Makefile.common.jx
Index: Makefile.common
===================================================================
RCS file: /cvs/pkgs/common/Makefile.common,v
retrieving revision 1.61
diff -u -p -r1.61 Makefile.common
--- Makefile.common	31 May 2007 19:38:07 -0000	1.61
+++ Makefile.common	5 Jun 2007 12:26:34 -0000
@@ -425,6 +425,26 @@ chain-build: build-check
         urls="$$urls : `make -s cvsurl`" ; \
         $(BUILD_CLIENT) chain-build $(BUILD_FLAGS) $(TARGET) $$urls
 
+chain-build-expert: build-check
+	@set -e ; \
+        subdir=`basename $$(pwd)` ; \
+        urls="" ; \
+        for component in $(CHAIN) ; do \
+                if [ "$$component" = ":" ]; then \
+			urls="$$urls :" ; \
+			continue; \
+                fi ; \
+                rm -rf .tmp-$$$$ ; \
+                mkdir -p .tmp-$$$$ ; \
+                pushd .tmp-$$$$ > /dev/null ; \
+                cvs -f -Q -z 3 -d $(CVS_ROOT) co $$component ; \
+                urls="$$urls `make -s -C $$component/$$subdir cvsurl`" ; \
+                popd > /dev/null ; \
+                rm -rf .tmp-$$$$ ; \
+        done ; \
+        urls="$$urls : `make -s cvsurl`" ; \
+        $(BUILD_CLIENT) chain-build $(BUILD_FLAGS) $(TARGET) $$urls
+
 # "make new | less" to see what has changed since the last tag was assigned
 new:
 	- cvs diff -u -r$$(cvs log Makefile 2>/dev/null | awk '/^symbolic names:$$/ {getline; sub(/^[ \t]*/, "") ; sub (/:.*$$/, ""); print; exit 0}')

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]