1# rumor has it that this yaml file works for the standard edition of the 2# hitech PICC18 compiler, but not the pro version. 3# 4compiler: 5 path: cd build && picc18 6 source_path: '..\src\' 7 unit_tests_path: &unit_tests_path 'tests\' 8 build_path: &build_path 'build\' 9 options: 10 - --chip=18F87J10 11 - --ide=hitide 12 - --q #quiet please 13 - --asmlist 14 - --codeoffset=0 15 - --emi=wordwrite # External memory interface protocol 16 - --warn=0 # allow all normal warning messages 17 - --errors=10 # Number of errors before aborting compile 18 - --char=unsigned 19 - -Bl # Large memory model 20 - -G # generate symbol file 21 - --cp=16 # 16-bit pointers 22 - --double=24 23 - -N255 # 255-char symbol names 24 - --opt=none # Do not use any compiler optimziations 25 - -c # compile only 26 - -M 27 includes: 28 prefix: '-I' 29 items: 30 - 'c:/Projects/NexGen/Prototypes/CMockTest/src/' 31 - 'c:/Projects/NexGen/Prototypes/CMockTest/mocks/' 32 - 'c:/CMock/src/' 33 - 'c:/CMock/examples/src/' 34 - 'c:/CMock/vendor/unity/src/' 35 - 'c:/CMock/vendor/unity/examples/helper/' 36 - *unit_tests_path 37 defines: 38 prefix: '-D' 39 items: 40 - UNITY_INT_WIDTH=16 41 - UNITY_POINTER_WIDTH=16 42 - CMOCK_MEM_STATIC 43 - CMOCK_MEM_SIZE=3000 44 - UNITY_SUPPORT_TEST_CASES 45 - _PICC18 46 object_files: 47 # prefix: '-O' # Hi-Tech doesn't want a prefix. They key off of filename .extensions, instead 48 extension: '.obj' 49 destination: *build_path 50 51linker: 52 path: cd build && picc18 53 options: 54 - --chip=18F87J10 55 - --ide=hitide 56 - --cp=24 # 24-bit pointers. Is this needed for linker?? 57 - --double=24 # Is this needed for linker?? 58 - -Lw # Scan the pic87*w.lib in the lib/ of the compiler installation directory 59 - --summary=mem,file # info listing 60 - --summary=+psect 61 - --summary=+hex 62 - --output=+intel 63 - --output=+mcof 64 - --runtime=+init # Directs startup code to copy idata, ibigdata and ifardata psects from ROM to RAM. 65 - --runtime=+clear # Directs startup code to clear bss, bigbss, rbss and farbss psects 66 - --runtime=+clib # link in the c-runtime 67 - --runtime=+keep # Keep the generated startup src after its obj is linked 68 - -G # Generate src-level symbol file 69 - -MIWasTheLastToBuild.map 70 - --warn=0 # allow all normal warning messages 71 - -Bl # Large memory model (probably not needed for linking) 72 includes: 73 prefix: '-I' 74 object_files: 75 path: *build_path 76 extension: '.obj' 77 bin_files: 78 prefix: '-O' 79 extension: '.hex' 80 destination: *build_path 81 82simulator: 83 path: 84 pre_support: 85 - 'java -client -jar ' # note space 86 - ['C:\Program Files\HI-TECH Software\HI-TIDE\3.15\lib\', 'simpic18.jar'] 87 - 18F87J10 88 post_support: 89 90:cmock: 91 :plugins: [] 92 :includes: 93 - Types.h 94 :suite_teardown: | 95 if (num_failures) 96 _FAILED_TEST(); 97 else 98 _PASSED_TESTS(); 99 return 0; 100 101colour: true 102