diff options
author | Thomas Gubler <thomasgubler@gmail.com> | 2015-02-01 11:58:37 +0100 |
---|---|---|
committer | Thomas Gubler <thomasgubler@gmail.com> | 2015-02-01 11:58:37 +0100 |
commit | e547176ba19da5e27b414bbff4a2ac77e6aa2903 (patch) | |
tree | eabdb831e9c8d6c981422715b1e6b5afd0548c51 /Tools/px_generate_uorb_topic_headers.py | |
parent | d74b81ba4f44db0e50e4eb491ca7941bb1aceec2 (diff) | |
parent | 84ff3c671d5c6d00a1b6c9a8062bddfb6875f8f9 (diff) | |
download | px4-firmware-e547176ba19da5e27b414bbff4a2ac77e6aa2903.tar.gz px4-firmware-e547176ba19da5e27b414bbff4a2ac77e6aa2903.tar.bz2 px4-firmware-e547176ba19da5e27b414bbff4a2ac77e6aa2903.zip |
Merge pull request #1734 from PX4/ros_messagelayer_merge_attctrl_posctrl
Ros messagelayer merge attctrl posctrl
Diffstat (limited to 'Tools/px_generate_uorb_topic_headers.py')
-rwxr-xr-x | Tools/px_generate_uorb_topic_headers.py | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/Tools/px_generate_uorb_topic_headers.py b/Tools/px_generate_uorb_topic_headers.py index 2ddbd6984..4bcab4d54 100755 --- a/Tools/px_generate_uorb_topic_headers.py +++ b/Tools/px_generate_uorb_topic_headers.py @@ -60,7 +60,7 @@ def convert_file(filename, outputdir, templatedir, includepath): """ Converts a single .msg file to a uorb header """ - print("Generating uORB headers from {0}".format(filename)) + print("Generating headers from {0}".format(filename)) genmsg.template_tools.generate_from_file(filename, package, outputdir, @@ -85,16 +85,21 @@ def convert_dir(inputdir, outputdir, templatedir): includepath) -def copy_changed(inputdir, outputdir): +def copy_changed(inputdir, outputdir, prefix=''): """ Copies files from inputdir to outputdir if they don't exist in ouputdir or if their content changed """ + + # Make sure output directory exists: + if not os.path.isdir(outputdir): + os.makedirs(outputdir) + for f in os.listdir(inputdir): fni = os.path.join(inputdir, f) if os.path.isfile(fni): # Check if f exists in outpoutdir, copy the file if not - fno = os.path.join(outputdir, f) + fno = os.path.join(outputdir, prefix + f) if not os.path.isfile(fno): shutil.copy(fni, fno) print("{0}: new header file".format(f)) @@ -108,7 +113,8 @@ def copy_changed(inputdir, outputdir): print("{0}: unchanged".format(f)) -def convert_dir_save(inputdir, outputdir, templatedir, temporarydir): + +def convert_dir_save(inputdir, outputdir, templatedir, temporarydir, prefix): """ Converts all .msg files in inputdir to uORB header files Unchanged existing files are not overwritten. @@ -117,7 +123,7 @@ def convert_dir_save(inputdir, outputdir, templatedir, temporarydir): convert_dir(inputdir, temporarydir, templatedir) # Copy changed headers from temporary dir to output dir - copy_changed(temporarydir, outputdir) + copy_changed(temporarydir, outputdir, prefix) if __name__ == "__main__": parser = argparse.ArgumentParser( @@ -132,6 +138,9 @@ if __name__ == "__main__": help='output directory for header files') parser.add_argument('-t', dest='temporarydir', help='temporary directory') + parser.add_argument('-p', dest='prefix', default='', + help='string added as prefix to the output file ' + ' name when converting directories') args = parser.parse_args() if args.file is not None: @@ -146,4 +155,5 @@ if __name__ == "__main__": args.dir, args.outputdir, args.templatedir, - args.temporarydir) + args.temporarydir, + args.prefix) |