[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] r7912 - in gnuradio/trunk: gnuradio-core/src/lib/filte
From: |
eb |
Subject: |
[Commit-gnuradio] r7912 - in gnuradio/trunk: gnuradio-core/src/lib/filter gnuradio-core/src/lib/gengen gr-trellis/src/lib pmt/src/lib |
Date: |
Mon, 3 Mar 2008 15:14:51 -0700 (MST) |
Author: eb
Date: 2008-03-03 15:14:50 -0700 (Mon, 03 Mar 2008)
New Revision: 7912
Modified:
gnuradio/trunk/gnuradio-core/src/lib/filter/Makefile.am
gnuradio/trunk/gnuradio-core/src/lib/gengen/Makefile.am
gnuradio/trunk/gr-trellis/src/lib/Makefile.am
gnuradio/trunk/pmt/src/lib/Makefile.am
Log:
Fix for ticket:236, parallel makes are indeterminate.
Merged eb/pmake r7909:7911 into trunk
Modified: gnuradio/trunk/gnuradio-core/src/lib/filter/Makefile.am
===================================================================
--- gnuradio/trunk/gnuradio-core/src/lib/filter/Makefile.am 2008-03-03
22:08:34 UTC (rev 7911)
+++ gnuradio/trunk/gnuradio-core/src/lib/filter/Makefile.am 2008-03-03
22:14:50 UTC (rev 7912)
@@ -64,10 +64,36 @@
include $(srcdir)/Makefile.gen
-$(srcdir)/Makefile.gen $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC):
$(CODE_GENERATOR)
+# Ensure parallel does the right thing.
+# http://sources.redhat.com/automake/automake.html#Multiple-Outputs
+
+generate-stamp: $(CODE_GENERATOR)
+ @rm -f generate-tmp
+ @touch generate-tmp
PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python srcdir=$(srcdir)
$(PYTHON) $(srcdir)/generate_all.py
touch $(srcdir)/Makefile.in
+ @mv -f generate-tmp $@
+
+$(srcdir)/Makefile.gen $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC):
generate-stamp
+## Recover from the removal of $@
+ @if test -f $@; then :; else \
+ trap 'rm -rf generate-lock generate-stamp' 1 2 13 15; \
+ if mkdir generate-lock 2>/dev/null; then \
+## This code is being executed by the first process.
+ rm -f generate-stamp; \
+ $(MAKE) $(AM_MAKEFLAGS) generate-stamp; \
+ rmdir generate-lock; \
+ else \
+## This code is being executed by the follower processes.
+## Wait until the first process is done.
+ while test -d generate-lock; do sleep 1; done; \
+## Succeed if and only if the first process succeeded.
+ test -f generate-stamp; exit $$?; \
+ fi; \
+ fi
+
+
BUILT_SOURCES = $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC)
Modified: gnuradio/trunk/gnuradio-core/src/lib/gengen/Makefile.am
===================================================================
--- gnuradio/trunk/gnuradio-core/src/lib/gengen/Makefile.am 2008-03-03
22:08:34 UTC (rev 7911)
+++ gnuradio/trunk/gnuradio-core/src/lib/gengen/Makefile.am 2008-03-03
22:14:50 UTC (rev 7912)
@@ -113,10 +113,36 @@
include $(srcdir)/Makefile.gen
-$(srcdir)/Makefile.gen $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC):
$(CODE_GENERATOR)
+# Ensure parallel does the right thing.
+# http://sources.redhat.com/automake/automake.html#Multiple-Outputs
+
+generate-stamp: $(CODE_GENERATOR)
+ @rm -f generate-tmp
+ @touch generate-tmp
PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python srcdir=$(srcdir)
$(PYTHON) $(srcdir)/generate_all.py
touch $(srcdir)/Makefile.in
+ @mv -f generate-tmp $@
+
+$(srcdir)/Makefile.gen $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC):
generate-stamp
+## Recover from the removal of $@
+ @if test -f $@; then :; else \
+ trap 'rm -rf generate-lock generate-stamp' 1 2 13 15; \
+ if mkdir generate-lock 2>/dev/null; then \
+## This code is being executed by the first process.
+ rm -f generate-stamp; \
+ $(MAKE) $(AM_MAKEFLAGS) generate-stamp; \
+ rmdir generate-lock; \
+ else \
+## This code is being executed by the follower processes.
+## Wait until the first process is done.
+ while test -d generate-lock; do sleep 1; done; \
+## Succeed if and only if the first process succeeded.
+ test -f generate-stamp; exit $$?; \
+ fi; \
+ fi
+
+
BUILT_SOURCES = $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC)
# ----------------------------------------------------------------
Modified: gnuradio/trunk/gr-trellis/src/lib/Makefile.am
===================================================================
--- gnuradio/trunk/gr-trellis/src/lib/Makefile.am 2008-03-03 22:08:34 UTC
(rev 7911)
+++ gnuradio/trunk/gr-trellis/src/lib/Makefile.am 2008-03-03 22:14:50 UTC
(rev 7912)
@@ -54,11 +54,36 @@
include $(srcdir)/Makefile.gen
-$(srcdir)/Makefile.gen $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC):
$(CODE_GENERATOR)
- PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python \
- srcdir=$(srcdir) $(PYTHON) $(srcdir)/generate_all.py
+
+# Ensure parallel does the right thing.
+# http://sources.redhat.com/automake/automake.html#Multiple-Outputs
+
+generate-stamp: $(CODE_GENERATOR)
+ @rm -f generate-tmp
+ @touch generate-tmp
+ PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python srcdir=$(srcdir)
$(PYTHON) $(srcdir)/generate_all.py
touch $(srcdir)/Makefile.in
+ @mv -f generate-tmp $@
+$(srcdir)/Makefile.gen $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC):
generate-stamp
+## Recover from the removal of $@
+ @if test -f $@; then :; else \
+ trap 'rm -rf generate-lock generate-stamp' 1 2 13 15; \
+ if mkdir generate-lock 2>/dev/null; then \
+## This code is being executed by the first process.
+ rm -f generate-stamp; \
+ $(MAKE) $(AM_MAKEFLAGS) generate-stamp; \
+ rmdir generate-lock; \
+ else \
+## This code is being executed by the follower processes.
+## Wait until the first process is done.
+ while test -d generate-lock; do sleep 1; done; \
+## Succeed if and only if the first process succeeded.
+ test -f generate-stamp; exit $$?; \
+ fi; \
+ fi
+
+
# These files are built by SWIG. The first is the C++ glue.
# The second is the python wrapper that loads the _trellis shared library
# and knows how to call our extensions.
Modified: gnuradio/trunk/pmt/src/lib/Makefile.am
===================================================================
--- gnuradio/trunk/pmt/src/lib/Makefile.am 2008-03-03 22:08:34 UTC (rev
7911)
+++ gnuradio/trunk/pmt/src/lib/Makefile.am 2008-03-03 22:14:50 UTC (rev
7912)
@@ -46,9 +46,35 @@
qa_pmt_unv.cc
-$(GENERATED_H) $(GENERATED_I) $(GENERATED_CC): $(CODE_GENERATOR)
+
+# Ensure parallel does the right thing.
+# http://sources.redhat.com/automake/automake.html#Multiple-Outputs
+
+generate-stamp: $(CODE_GENERATOR)
+ @rm -f generate-tmp
+ @touch generate-tmp
PYTHONPATH=$(top_srcdir)/pmt/src/lib srcdir=$(srcdir) $(PYTHON)
$(srcdir)/generate_unv.py
+ @mv -f generate-tmp $@
+$(GENERATED_H) $(GENERATED_I) $(GENERATED_CC): generate-stamp
+## Recover from the removal of $@
+ @if test -f $@; then :; else \
+ trap 'rm -rf generate-lock generate-stamp' 1 2 13 15; \
+ if mkdir generate-lock 2>/dev/null; then \
+## This code is being executed by the first process.
+ rm -f generate-stamp; \
+ $(MAKE) $(AM_MAKEFLAGS) generate-stamp; \
+ rmdir generate-lock; \
+ else \
+## This code is being executed by the follower processes.
+## Wait until the first process is done.
+ while test -d generate-lock; do sleep 1; done; \
+## Succeed if and only if the first process succeeded.
+ test -f generate-stamp; exit $$?; \
+ fi; \
+ fi
+
+
pmt_serial_tags.h: $(srcdir)/../scheme/gnuradio/gen-serial-tags.scm
$(srcdir)/../scheme/gnuradio/pmt-serial-tags.scm
$(RUN_GUILE) $(srcdir)/../scheme/gnuradio/gen-serial-tags.scm
$(srcdir)/../scheme/gnuradio/pmt-serial-tags.scm pmt_serial_tags.h
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Commit-gnuradio] r7912 - in gnuradio/trunk: gnuradio-core/src/lib/filter gnuradio-core/src/lib/gengen gr-trellis/src/lib pmt/src/lib,
eb <=