forked from kiibohd/controller
-
Notifications
You must be signed in to change notification settings - Fork 0
/
appveyor.yml
88 lines (73 loc) · 3.26 KB
/
appveyor.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# appveyor file for kiibohd/controller
# Used to test out the Cygwin builds
# Jacob Alexander 2016-2018
# System Build Architecture
platform:
- x64
# Dependency Cache
cache:
# Cache gcc arm compiler (it's pruned to be under 100 MB)
# Invalidate whenever this file is changed
- c:/gcc-arm-none-eabi.zip -> appveyor.yml
# Build Matrix + Environment Variables
# NOTE: Only building using 32-bit on a 64-bit system. 64-bit Cygwin should also work fine (no reason to test atm)
environment:
global:
CYG_MIRROR: http://cygwin.uib.no
CYG_CACHE: C:/cygwin/var/cache/setup
CYG_ARCH: x86
CYG_ROOT: C:/cygwin
WIN_CMAKE: "/cygdrive/c/Program Files (x86)/CMake/bin"
ARM_COMPILER_URL: http://launchpad.net/gcc-arm-embedded/5.0/5-2016-q2-update/+download/gcc-arm-none-eabi-5_4-2016q2-20160622-win32.zip
PYTHON: "/cygdrive/c/Python36/python.exe"
WIN_PYTHON: C:/Python36/python.exe
PYTHON_SCRIPT_PATH: "/cygdrive/c/Python36/Scripts"
matrix:
# Input Club Keyboard Tests
- SCRIPT_DIR: Keyboards
SCRIPT: ic_keyboards.bash
- SCRIPT_DIR: Keyboards/Others
SCRIPT: others.bash
# Debug Build Tests
- SCRIPT_DIR: Keyboards/Testing
SCRIPT: all_tests.bash
# Bootloader Build Tests
- SCRIPT_DIR: Bootloader/Builds
SCRIPT: all.bash
# Commands run before cloning git repo
init:
- git config --global core.autocrlf input
- git config --global core.symlinks true
# Setup Build Instance
install:
- 'appveyor DownloadFile http://cygwin.com/setup-%CYG_ARCH%.exe -FileName setup.exe'
- 'setup.exe -qnNdO -R "%CYG_ROOT%" -s "%CYG_MIRROR%" -l "%CYG_CACHE%" -P ctags -P tree -P p7zip'
- '%CYG_ROOT%/bin/bash -lc "cygcheck -dc cygwin"'
- '%CYG_ROOT%/bin/bash -lc "ls -l /cygdrive/c"'
# Only download if cache is missing
- if not exist c:/gcc-arm-none-eabi.zip appveyor DownloadFile %ARM_COMPILER_URL% -FileName c:/gcc-arm-none-eabi.zip
# Always try to strip out the unnecessary binaries
# Necessary, so we can fit gcc-arm-none-eabi.zip into the dependency cache
# For ARM Cortex-M4 we only need armv7e-m (also supports Cortex-M7)
# https://en.wikipedia.org/wiki/ARM_architecture#Cores
- 7z d c:/gcc-arm-none-eabi.zip "armv6*" -r
- 7z d c:/gcc-arm-none-eabi.zip "armv7-m*" -r
- 7z d c:/gcc-arm-none-eabi.zip "armv7-ar*" -r
- 7z d c:/gcc-arm-none-eabi.zip "armv8*" -r
- 7z d c:/gcc-arm-none-eabi.zip "*.html" -r
- dir
# Build Commands
build_script:
- '%CYG_ROOT%/bin/bash -lc "cd \"$OLDPWD\" && du -sh /cygdrive/c/gcc-arm-none-eabi.zip"'
- '%CYG_ROOT%/bin/bash -lc "cd \"$OLDPWD\" && 7z x -o/usr/local /cygdrive/c/gcc-arm-none-eabi.zip"'
- '%CYG_ROOT%/bin/bash -lc "cd \"$OLDPWD\" && pwd"'
- '%CYG_ROOT%/bin/bash -lc "cd \"$OLDPWD\" && which cmake"'
- '%CYG_ROOT%/bin/bash -lc "cd \"$OLDPWD\" && cmake --version"'
- '%CYG_ROOT%/bin/bash -lc "cd \"$OLDPWD\" && git --version"'
- '%CYG_ROOT%/bin/bash -lc "cd \"$OLDPWD\" && arm-none-eabi-gcc --version"'
- c:\python36\python.exe -m pip install --upgrade pip
- c:\python36\python.exe -m pip install kll
- '%CYG_ROOT%/bin/bash -lc "cd \"$OLDPWD\" && cd %SCRIPT_DIR% && PATH=%PYTHON_SCRIPT_PATH%:$PATH PIPENV_ACTIVE=1 wincmake_path=\"%WIN_CMAKE%\" COMPILER=gcc CMakeExtraArgs=\"-DPYTHON_EXECUTABLE=%WIN_PYTHON%\" ./%SCRIPT% win"'
# Post Build Commands
on_finish:
- dir