title: Recommended Buildroot external tree structure
body: <p>just looking for a little advice on my buildroot project structure. At the moment I have this:</p>
  
  <pre><code>projectRoot:
  +---projectOS
      +---BuildRoot
      +---BuildRootExternalTree
          +---External board/config/package etc.
          ----in/desc/mk
      +---BuildRootOutput
          ---Images etc.
      ----Makefile
  +---projectApp1
      +---src
      ---- CMakeLists.txt
  +---projectApp2
      +---src
      ---- CMakeLists.txt
  </code></pre>
  
  <p>To actually build my rootfs+image I run the make file within ProjectOS, which calls make in BuildRoot with the BR2_EXTERNAL path set to BuildRootExternalTree.</p>
  
  <p>I would like projectApp[1..N] to be external packages. They are currently  built out of source via CMake/Make. I have set up all my Config.in within the external tree to be recognised by buildroot, so now I have to decide how the Make files within these packages access the source / pass the cross compile toolchain paths along. </p>
  
  <p>It seems with buidlroot that the standard is to download package source files from some repo, which seems like a nice idea to me. Should I be looking at making projectApp[1..N] git submodules and then cloning their master branches into the relevant directories with the package Make files? Or can I simply point the Make files to the prexisting directories - this doesn't seem like a good idea if these projects are under development and I forget to switch to the master branch etc.</p>
  
  <p>If anyone has any suggestions that would be great. The team working on this is actually very small but I would like to get a robust system going,especially for eventual distribution.</p>