-
- Downloads
Add Tools/fix_headers.sh
Running this script will parse the top of all source files that are not submodules, examples or test cases, to find all #include's and then do basically two things: 1) Reorder and group the headers so that px4_* headers are included first, then local headers (headers of the project that aren't submodules) then C++ headers if any, then C headers if any, then system headers (which includes submodules) and finally any #includes that are inside #if*...#endif constructs. 2) Fix the use of "" or <> in a consistent manner. Afterwards few fixes might be necessary for compile errors that pop up. Most of those are already fixed in my previous commits. However, I was not able to test a compilation for ros (with __PX4_ROS defined) -- so some more fixes might be necessary because of the header reordering. The script comes with a progress counter and an error summary (if any) at the end (so no scrolling back is necessary). It is highly recommended to only run this script in a clean project with no outstanding changes that need to be committed. In fact, the script enforces this (unless you pass --force). Reverting a run of the script is then easy with 'git checkout .'. It is also possible to run the script on a single file by passing that on the command line. In that case it might make sense to pass --debug too, though that was really meant for just me, while developing the script. This will write debug output into the file that is passed, so you don't want to commit that! ;)
Loading
Please register or sign in to comment