commit-gnuradio
[Top][All Lists]
Advanced

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

[Commit-gnuradio] r7920 - in gnuradio/branches/developers/michaelld/fix_


From: michaelld
Subject: [Commit-gnuradio] r7920 - in gnuradio/branches/developers/michaelld/fix_gen: gnuradio-core/src/lib/filter gnuradio-core/src/lib/general gnuradio-core/src/lib/gengen gnuradio-core/src/python gr-trellis/src/lib
Date: Tue, 4 Mar 2008 08:33:57 -0700 (MST)

Author: michaelld
Date: 2008-03-04 08:33:43 -0700 (Tue, 04 Mar 2008)
New Revision: 7920

Removed:
   
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/lib/general/Makefile.gen
Modified:
   
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/lib/filter/Makefile.am
   
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/lib/gengen/Makefile.am
   
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/python/build_utils.py
   gnuradio/branches/developers/michaelld/fix_gen/gr-trellis/src/lib/Makefile.am
Log:
Better fix for allowing "make distcheck" without first requiring "make".

* Removed unneeded Makefile.gen from gnuradio-core/src/lib/general

* For those directories that generate files (via generate_all.py),
split the GENERATED_CODE into two parts: Python scripts for
regenerating Makefile.gen (in $srcdir only), and files to be compiled
(as found in Makefile.gen; in $builddir only).

* Added a hook (environment variable "what") in the build_utils to
allow for rebuilding just the Makefile.gen file, creating just the
files, or doing both.

* Hopefully integrated correctly with Eric's "fix for indeterminate
parallel makes".



Modified: 
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/lib/filter/Makefile.am
===================================================================
--- 
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/lib/filter/Makefile.am
     2008-03-04 13:23:41 UTC (rev 7919)
+++ 
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/lib/filter/Makefile.am
     2008-03-04 15:33:43 UTC (rev 7920)
@@ -34,7 +34,7 @@
 # these scripts generate FIR code
 #
 
-CODE_GENERATOR =                                       \
+code_generator_python =                                \
        generate_all.py                                 \
        generate_gr_fir_XXX.py                          \
        generate_gr_fir_filter_XXX.py                   \
@@ -44,7 +44,9 @@
        generate_gr_fir_sysconfig_generic.py            \
        generate_gr_fir_util.py                         \
        generate_gr_freq_xlating_fir_filter_XXX.py      \
-       generate_utils.py                               \
+       generate_utils.py
+
+code_generator_files =                                         \
        gr_fir_XXX.cc.t                                 \
        gr_fir_XXX.h.t                                  \
        gr_fir_XXX_generic.cc.t                         \
@@ -64,18 +66,20 @@
 
 include $(srcdir)/Makefile.gen
 
+$(srcdir)/Makefile.gen: $(code_generator_python)
+       @rm -f generate-stamp
+       PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python srcdir=$(srcdir) 
what=Makefile $(PYTHON) $(srcdir)/generate_all.py
+
 # Ensure parallel does the right thing.
 # http://sources.redhat.com/automake/automake.html#Multiple-Outputs
 
-generate-stamp: $(CODE_GENERATOR)
+generate-stamp: $(code_generator_files) $(srcdir)/Makefile.gen
        @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
+       PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python srcdir=$(srcdir) 
what=files $(PYTHON) $(srcdir)/generate_all.py
        @mv -f generate-tmp $@
 
-
-$(srcdir)/Makefile.gen $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC): 
generate-stamp
+$(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; \
@@ -93,10 +97,8 @@
                fi; \
              fi
 
-
 BUILT_SOURCES = $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC)
 
-
 # ----------------------------------------------------------------
 # MD_CPU and MD_SUBCPU are set at configure time by way of 
 #   gnuradio/config/gr_set_md_cpu.m4.  
@@ -180,9 +182,9 @@
 EXTRA_DIST =                                   \
        3dnow_float_dotprod_really_simple.S     \
        3dnow_float_dotprod_simple.S            \
-       $(CODE_GENERATOR)
+       $(code_generator_files)                 \
+       $(code_generator_python)
 
-
 # work around automake deficiency
 libfilter_la_common_SOURCES =          \
        $(GENERATED_CC)                 \
@@ -315,4 +317,4 @@
        $(GENERATED_I)
 
 
-CLEANFILES = $(BUILT_SOURCES) *.pyc
+CLEANFILES = $(BUILT_SOURCES) *.pyc generate-stamp

Deleted: 
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/lib/general/Makefile.gen

Modified: 
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/lib/gengen/Makefile.am
===================================================================
--- 
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/lib/gengen/Makefile.am
     2008-03-04 13:23:41 UTC (rev 7919)
+++ 
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/lib/gengen/Makefile.am
     2008-03-04 15:33:43 UTC (rev 7920)
@@ -29,9 +29,11 @@
 # ----------------------------------------------------------------
 # these scripts generate code
 
-CODE_GENERATOR =                       \
+code_generator_python =                \
        generate_all.py                 \
-       generate_common.py              \
+       generate_common.py
+
+code_generator_files =                         \
        gr_add_XX.cc.t                  \
        gr_add_XX.h.t                   \
        gr_add_XX.i.t                   \
@@ -113,18 +115,20 @@
 
 include $(srcdir)/Makefile.gen
 
+$(srcdir)/Makefile.gen: $(code_generator_python)
+       @rm -f generate-stamp
+       PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python srcdir=$(srcdir) 
what=Makefile $(PYTHON) $(srcdir)/generate_all.py
+
 # Ensure parallel does the right thing.
 # http://sources.redhat.com/automake/automake.html#Multiple-Outputs
 
-generate-stamp: $(CODE_GENERATOR)
+generate-stamp: $(CODE_GENERATOR_FILES) $(srcdir)/Makefile.gen 
        @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
+       PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python srcdir=$(srcdir) 
what=files $(PYTHON) $(srcdir)/generate_all.py
        @mv -f generate-tmp $@
 
-
-$(srcdir)/Makefile.gen $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC): 
generate-stamp
+$(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; \
@@ -142,13 +146,13 @@
                fi; \
              fi
 
-
 BUILT_SOURCES = $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC)
 
 # ----------------------------------------------------------------
 
 EXTRA_DIST =                           \
-       $(CODE_GENERATOR)               
+       $(code_generator_files)         \
+       $(code_generator_python)
 
 libgengen_la_SOURCES =                         \
        $(GENERATED_CC)                 
@@ -169,4 +173,4 @@
        gengen.i                        \
        gengen_generated.i              
 
-CLEANFILES = $(BUILT_SOURCES) *.pyc
+CLEANFILES = $(BUILT_SOURCES) *.pyc generate-stamp

Modified: 
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/python/build_utils.py
===================================================================
--- 
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/python/build_utils.py
      2008-03-04 13:23:41 UTC (rev 7919)
+++ 
gnuradio/branches/developers/michaelld/fix_gen/gnuradio-core/src/python/build_utils.py
      2008-03-04 15:33:43 UTC (rev 7920)
@@ -1,5 +1,5 @@
 #
-# Copyright 2004 Free Software Foundation, Inc.
+# Copyright 2004, 2008 Free Software Foundation, Inc.
 # 
 # This file is part of GNU Radio
 # 
@@ -61,11 +61,18 @@
     output.close ()
 
 def output_glue (dirname):
-    output_makefile_fragment ()
-    output_ifile_include (dirname)
+    try:
+        what = os.environ['what']
+    except:
+        # by default, just build files
+        what = 'files'
+    if what == 'both' or what == 'Makefile':
+        output_makefile_fragment ()
+    else:
+        output_ifile_include (dirname)
     
 def output_makefile_fragment ():
-    f = open ('Makefile.gen', 'w')
+    f = open_src ('Makefile.gen', 'w')
     f.write ('#\n# This file is machine generated.  All edits will be 
overwritten\n#\n')
     output_subfrag (f, 'h')
     output_subfrag (f, 'i')

Modified: 
gnuradio/branches/developers/michaelld/fix_gen/gr-trellis/src/lib/Makefile.am
===================================================================
--- 
gnuradio/branches/developers/michaelld/fix_gen/gr-trellis/src/lib/Makefile.am   
    2008-03-04 13:23:41 UTC (rev 7919)
+++ 
gnuradio/branches/developers/michaelld/fix_gen/gr-trellis/src/lib/Makefile.am   
    2008-03-04 15:33:43 UTC (rev 7920)
@@ -36,16 +36,18 @@
 # ----------------------------------------------------------------
 # these scripts generate trellis codes from template files
 
-CODE_GENERATOR =                               \
+code_generator_python =                                \
        generate_all.py                         \
-       generate_trellis.py                     \
+       generate_trellis.py
+
+code_generator_files =                                 \
        trellis_encoder_XX.cc.t                 \
        trellis_encoder_XX.h.t                  \
        trellis_encoder_XX.i.t                  \
        trellis_metrics_X.cc.t                  \
        trellis_metrics_X.h.t                   \
        trellis_metrics_X.i.t                   \
-       trellis_viterbi_combined_XX.cc.t                \
+       trellis_viterbi_combined_XX.cc.t        \
        trellis_viterbi_combined_XX.h.t         \
        trellis_viterbi_combined_XX.i.t         \
        trellis_viterbi_X.cc.t                  \
@@ -54,18 +56,20 @@
 
 include $(srcdir)/Makefile.gen
 
+$(srcdir)/Makefile.gen: $(code_generator_python)
+       @rm -f generate-stamp
+       PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python srcdir=$(srcdir) 
what=Makefile $(PYTHON) $(srcdir)/generate_all.py
 
 # Ensure parallel does the right thing.
 # http://sources.redhat.com/automake/automake.html#Multiple-Outputs
 
-generate-stamp: $(CODE_GENERATOR)
+generate-stamp: $(code_generator_files) $(srcdir)/Makefile.gen
        @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
+       PYTHONPATH=$(top_srcdir)/gnuradio-core/src/python srcdir=$(srcdir) 
what=files $(PYTHON) $(srcdir)/generate_all.py
        @mv -f generate-tmp $@
 
-$(srcdir)/Makefile.gen $(GENERATED_H) $(GENERATED_I) $(GENERATED_CC): 
generate-stamp
+$(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; \
@@ -83,7 +87,6 @@
                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.
@@ -108,8 +111,9 @@
 LOCAL_IFILES =                         \
        $(top_srcdir)/gr-trellis/src/lib/trellis.i                      
 
-EXTRA_DIST =                   \
-       $(CODE_GENERATOR)
+EXTRA_DIST =                           \
+       $(code_generator_files)         \
+       $(code_generator_python)
 
 # This gets trellis.py installed in the right place
 ourpython_PYTHON =             \
@@ -168,7 +172,7 @@
        trellis_siso_combined_f.i       \
        trellis_generated.i
 
-CLEANFILES = $(BUILT_SOURCES) *.pyc
+CLEANFILES = $(BUILT_SOURCES) *.pyc generate-stamp trellis_generated.i
 
 # Don't distribute output of swig
 dist-hook:





reply via email to

[Prev in Thread] Current Thread [Next in Thread]