anchor.diff:  , buildWithClang ? false
   , verboseBuild ? false
   , debugSymbols ? false
  -, useBoost ? false
   }:
   
   let
  
positive.code:         EXTRA_C_SOURCES = collectSources ".c";
          EXTRA_CXX_SOURCES = collectSources ".cpp";
          EXTRA_ASM_SOURCES = collectSources ".S";
          EXTRA_COMPILE_FLAGS =
              (map (f: "-I${f}") (extraIncludes ++ boostIncludes)) ++
              (map (define: "-D${define.name}=${define.value}") defines);
          EXTRA_LINK_FLAGS = (map (sym: "-Wl,--defsym,${sym.name}=${sym.value}") linkerSymbols);
      };
      
  
negative.code:  */
  
  { stdenv, writeText, bash, gcc-arm-embedded, clang-arm-embedded, avrgcclibc
  , clang, asf, stm32cubef4, teensyCores
  , aprinterSource, buildVars, extraSources
  , extraIncludes, defines, linkerSymbols
  , mainText, boardName, buildName, desiredOutputs
  