A metronome using the FRDM K64F board

Committer:
ram54288
Date:
Sun May 14 18:40:18 2017 +0000
Revision:
0:a7a43371b306
Initial commit

Who changed what in which revision?

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