diff options
author | Michael Dickens <mlk@alum.mit.edu> | 2013-12-14 11:08:02 -0500 |
---|---|---|
committer | Michael Dickens <mlk@alum.mit.edu> | 2013-12-14 11:08:02 -0500 |
commit | 6fc200fcba65cc4d18d7b10381da72769c0183c4 (patch) | |
tree | 6d65f5bc4f85eb988464e33960037b2788e18925 /gr-digital/include/gnuradio/digital/CMakeLists.txt | |
parent | 2f455c4a8bab60ff485182e9f19aef80a2695b2d (diff) |
GNU Radio EXPAND macros for template files:
+ move the 3 EXPAND macros to a common place (GrMiscUtils);
+ use them, or remove the unnecessary code when not actually using;
+ modify EXPAND macros to do the expansion at configure time, build time, and any time a dependency has been modified.
Diffstat (limited to 'gr-digital/include/gnuradio/digital/CMakeLists.txt')
-rw-r--r-- | gr-digital/include/gnuradio/digital/CMakeLists.txt | 50 |
1 files changed, 4 insertions, 46 deletions
diff --git a/gr-digital/include/gnuradio/digital/CMakeLists.txt b/gr-digital/include/gnuradio/digital/CMakeLists.txt index 4d50f42ae0..5c4a5c2901 100644 --- a/gr-digital/include/gnuradio/digital/CMakeLists.txt +++ b/gr-digital/include/gnuradio/digital/CMakeLists.txt @@ -17,54 +17,12 @@ # the Free Software Foundation, Inc., 51 Franklin Street, # Boston, MA 02110-1301, USA. +################################################################# ######################################################################## -# generate helper scripts to expand templated files -######################################################################## -include(GrPython) - -file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/generate_helper.py " -#!${PYTHON_EXECUTABLE} - -import sys, os, re -sys.path.append('${GR_RUNTIME_PYTHONPATH}') -os.environ['srcdir'] = '${CMAKE_CURRENT_SOURCE_DIR}' -os.chdir('${CMAKE_CURRENT_BINARY_DIR}') - -if __name__ == '__main__': - import build_utils - root, inp = sys.argv[1:3] - for sig in sys.argv[3:]: - name = re.sub ('X+', sig, root) - d = build_utils.standard_dict2(name, sig, 'digital') - build_utils.expand_template(d, inp) - -") - -macro(expand_h root) - #make a list of all the generated files - unset(expanded_files_h) - foreach(sig ${ARGN}) - string(REGEX REPLACE "X+" ${sig} name ${root}) - list(APPEND expanded_files_h ${CMAKE_CURRENT_BINARY_DIR}/${name}.h) - endforeach(sig) - - #create a command to generate the files - add_custom_command( - OUTPUT ${expanded_files_h} - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${root}.h.t - COMMAND ${PYTHON_EXECUTABLE} ${PYTHON_DASH_B} - ${CMAKE_CURRENT_BINARY_DIR}/generate_helper.py - ${root} ${root}.h.t ${ARGN} - ) - - #install rules for the generated h files - list(APPEND generated_includes ${expanded_files_h}) -endmacro(expand_h) - -######################################################################## -# Invoke macro to generate various sources +# Invoke macro to generate various headers ####################################################################### -expand_h(chunks_to_symbols_XX bf bc sf sc if ic) +include(GrMiscUtils) +GR_EXPAND_X_H(digital chunks_to_symbols_XX bf bc sf sc if ic) add_custom_target(digital_generated_includes DEPENDS ${generated_includes} |