Kiibohd Controller
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

.travis.yml 3.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. # travis-ci integration for the kiibohd controller firmware
  2. sudo:
  3. - false
  4. language:
  5. - c
  6. os:
  7. - linux
  8. - osx
  9. compiler:
  10. - clang
  11. - gcc
  12. addons:
  13. apt:
  14. sources:
  15. - debian-sid
  16. packages:
  17. - binutils-arm-none-eabi
  18. - gcc-arm-none-eabi
  19. - exuberant-ctags
  20. #- libc6-dev-i386 # Needed for clang!?
  21. - libnewlib-arm-none-eabi
  22. - tree
  23. # Build Scripts
  24. env:
  25. # Input Club Keyboard Tests
  26. - DIR=Keyboards SCRIPT=infinity.bash
  27. - DIR=Keyboards SCRIPT=infinity_led.bash
  28. - DIR=Keyboards SCRIPT=ergodox.bash
  29. - DIR=Keyboards SCRIPT=whitefox.bash
  30. # Debug Build Tests
  31. - DIR=Keyboards/Testing SCRIPT=uartout.bash
  32. - DIR=Keyboards/Testing SCRIPT=usbmuxuart.bash
  33. # Bootloader Build Tests
  34. - DIR=Bootloader/Builds SCRIPT=mk20dx128vlf5.bash
  35. - DIR=Bootloader/Builds SCRIPT=mk20dx256vlh7.bash
  36. # Exclusions
  37. matrix:
  38. # TODO - Still some travis clang issues
  39. allow_failures:
  40. - compiler: clang
  41. exclude:
  42. # Bootloader doesn't support clang yet
  43. - compiler: clang
  44. env: DIR=Bootloader/Builds SCRIPT=mk20dx128vlf5.bash
  45. - compiler: clang
  46. env: DIR=Bootloader/Builds SCRIPT=mk20dx256vlh7.bash
  47. # xcode *and* brew don't support clang ARMCCompiler for arm-none-eabi, sigh useless Apple
  48. # Disabling Linux clang builds until Travis has less crappy repos available
  49. - compiler: clang
  50. env: DIR=Keyboards SCRIPT=infinity.bash
  51. - compiler: clang
  52. env: DIR=Keyboards SCRIPT=infinity_led.bash
  53. - compiler: clang
  54. env: DIR=Keyboards SCRIPT=ergodox.bash
  55. - compiler: clang
  56. env: DIR=Keyboards SCRIPT=whitefox.bash
  57. - compiler: clang
  58. env: DIR=Keyboards/Testing SCRIPT=uartout.bash
  59. - compiler: clang
  60. env: DIR=Keyboards/Testing SCRIPT=usbmuxuart.bash
  61. - compiler: clang
  62. env: DIR=Bootloader/Builds SCRIPT=mk20dx128vlf5.bash
  63. - compiler: clang
  64. env: DIR=Bootloader/Builds SCRIPT=mk20dx256vlh7.bash
  65. # Package Setup
  66. before_install:
  67. - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update; fi
  68. - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install python3 ctags dfu-util tree; fi
  69. - if [[ "$TRAVIS_OS_NAME" == "osx" ]] && [[ "$CC" == "gcc" ]]; then brew tap Caskroom/cask; fi
  70. - if [[ "$TRAVIS_OS_NAME" == "osx" ]] && [[ "$CC" == "gcc" ]]; then brew install Caskroom/cask/gcc-arm-embedded; fi
  71. # This may work, but we'd have to compile llvm...
  72. - if [[ "$TRAVIS_OS_NAME" == "osx" ]] && [[ "$CC" == "clang" ]]; then brew tap homebrew/versions; fi
  73. - if [[ "$TRAVIS_OS_NAME" == "osx" ]] && [[ "$CC" == "clang" ]]; then brew install homebrew/versions/llvm38 --with-all-targets --with-asan --with-lld --HEAD; fi
  74. # System setup
  75. install:
  76. # Info about OS
  77. - uname -a
  78. # Pre-clone kll.git to speed-up build
  79. - git clone https://github.com/kiibohd/kll.git
  80. # Directory tree to validate kll.git
  81. - tree
  82. # Compiler Version
  83. - ${CC} --version
  84. # Python Version
  85. - python --version
  86. - python3 --version
  87. # CMake Version
  88. - cmake --version
  89. # Run test script(s)
  90. script:
  91. - (cd ${DIR} && COMPILER=${CC} ./${SCRIPT})
  92. # Post test script commands
  93. after_script:
  94. - tree