forked from mikke89/RmlUi
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.appveyor.yml
152 lines (120 loc) · 6.36 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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
version: build.{build}
# We run MinGW on the Visual Studio 2019 image and MSVC on the Visual Studio 2017 image.
image:
- Visual Studio 2019
- Visual Studio 2017
environment:
FREETYPE_VER: 2.10.1
VS_SHORTNAME: vs2017
matrix:
- VS_GENERATOR: Visual Studio 15 2017 Win64
PLATFORM_NAME: win64
- VS_GENERATOR: Visual Studio 15 2017
PLATFORM_NAME: win32
matrix:
exclude:
- image: Visual Studio 2019
PLATFORM_NAME: win32
install:
- cmd: |-
cd Dependencies
appveyor DownloadFile https://github.com/ubawurinna/freetype-windows-binaries/releases/download/v%FREETYPE_VER%/freetype.zip
unzip -o freetype.zip -d freetype_tmp
mv freetype_tmp/include include
mv freetype_tmp/%PLATFORM_NAME% lib
git clone --depth 1 --branch v0.2 https://github.com/Samsung/rlottie.git
cd rlottie
mkdir build
cd build
cmake -G "%VS_GENERATOR%" -DBUILD_SHARED_LIBS=OFF -DLOTTIE_MODULE=OFF ..
cmake --build . --target rlottie --config Debug -- "/clp:ErrorsOnly"
cmake --build . --target rlottie --config Release -- "/clp:ErrorsOnly"
cd ../../../
mkdir Build-Dynamic, Build-Static, Build-Samples
cd Build-Dynamic
cmake -G "%VS_GENERATOR%" -DBUILD_SHARED_LIBS=ON -DBUILD_SAMPLES=OFF -DWARNINGS_AS_ERRORS=ON ..
cd ../Build-Static
cmake -G "%VS_GENERATOR%" -DBUILD_SHARED_LIBS=OFF -DBUILD_SAMPLES=OFF -DWARNINGS_AS_ERRORS=ON ..
cd ../Build-Samples
cmake -G "%VS_GENERATOR%" -DBUILD_SHARED_LIBS=ON -DENABLE_LOTTIE_PLUGIN=ON -DBUILD_SAMPLES=ON -DWARNINGS_AS_ERRORS=ON ..
cd ..
build_script:
- cmd: |-
msbuild Build-Dynamic/RmlUi.sln /p:configuration=debug /verbosity:minimal /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
msbuild Build-Dynamic/RmlUi.sln /p:configuration=release /verbosity:minimal /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
msbuild Build-Static/RmlUi.sln /p:configuration=debug /verbosity:minimal /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
msbuild Build-Static/RmlUi.sln /p:configuration=release /verbosity:minimal /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
msbuild Build-Samples/RmlUi.sln /p:configuration=release /verbosity:minimal /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
after_build:
- cmd: |-
mkdir Bin
cd Bin
mkdir Dynamic-Debug, Dynamic-Release, Static-Debug, Static-Release
cp ../Build-Dynamic/Debug/Rml*.{lib,dll,pdb} Dynamic-Debug
cp ../Build-Dynamic/Release/Rml*.{lib,dll} Dynamic-Release
cp ../Build-Static/Debug/Rml*.{lib,pdb} Static-Debug
cp ../Build-Static/Release/Rml*.lib Static-Release
cd ..
cp Build-Samples/Release/*.exe Samples
cp Build-Samples/Release/Rml*.dll Samples
cp Dependencies/lib/*.dll Samples
mv Dependencies/lib/ Dependencies/freetype-%FREETYPE_VER%
cp Dependencies/freetype_tmp/*.TXT Dependencies/freetype-%FREETYPE_VER%
IF NOT "%APPVEYOR_REPO_TAG_NAME%"=="" SET RMLUI_VERSION= %APPVEYOR_REPO_TAG_NAME%
echo RmlUi%RMLUI_VERSION% library and sample binaries for %PLATFORM_NAME%.> Build.txt& echo.>>Build.txt
echo https://github.com/mikke89/RmlUi>> Build.txt& echo.>>Build.txt
echo Built using %VS_GENERATOR% on %APPVEYOR_REPO_COMMIT_TIMESTAMP:~0,10% (build %APPVEYOR_BUILD_NUMBER%).>> Build.txt
echo Commit id: %APPVEYOR_REPO_COMMIT%.>> Build.txt
cd Dependencies/rlottie/
echo The rlottie library includes source code licensed under Mozilla Public License Version 2.0.> MPL_SOURCE.txt
echo The source for this code can be found in the rlottie library at the following URL:>> MPL_SOURCE.txt
echo https://github.com/Samsung/rlottie/blob/29b391b95913877b7234543da8b4a9ec6d8175d0/src/vector/vinterpolator.cpp>> MPL_SOURCE.txt
cd ../..
7z a RmlUi-%VS_SHORTNAME%-%PLATFORM_NAME%.zip Bin/ Include/ Samples/ Build.txt readme.md changelog.md LICENSE.txt Dependencies/freetype-%FREETYPE_VER%/ Dependencies/rlottie/COPYING Dependencies/rlottie/MPL_SOURCE.txt Dependencies/rlottie/licenses/
mkdir Samples\Dependencies\freetype-%FREETYPE_VER%, Samples\Dependencies\rlottie, Samples\Dependencies\rlottie\licenses
cp LICENSE.txt Samples/LICENSE.txt
cp Include/RmlUi/Core/Containers/LICENSE.txt Samples/LICENSE.Core.ThirdParty.txt
cp Source/Debugger/LICENSE.txt Samples/LICENSE.Debugger.ThirdParty.txt
cp Dependencies/freetype-%FREETYPE_VER%/*.TXT Samples/Dependencies/freetype-%FREETYPE_VER%
cp Dependencies/rlottie/COPYING Samples/Dependencies/rlottie
cp Dependencies/rlottie/MPL_SOURCE.txt Samples/Dependencies/rlottie
cp Dependencies/rlottie/licenses/* Samples/Dependencies/rlottie/licenses
IF "%PLATFORM_NAME%"=="win64" 7z a RmlUi-%PLATFORM_NAME%-samples-only.zip .\Samples\* -r -xr!src\ -x!shell\ -x!luainvaders\
for:
-
matrix:
only:
- image: Visual Studio 2019
install:
- cmd: |-
C:\msys64\usr\bin\bash -lc "pacman --needed --noconfirm -S mingw-w64-x86_64-gcc mingw-w64-x86_64-make mingw-w64-x86_64-freetype mingw-w64-x86_64-lua"
C:\msys64\usr\bin\bash -lc "pacman --needed --noconfirm -S mingw-w64-x86_64-sfml mingw-w64-x86_64-SDL2 mingw-w64-x86_64-SDL2_image mingw-w64-x86_64-glew"
mkdir Build
cd Build
set PATH=%PATH:C:\Program Files\Git\usr\bin;=%
set PATH=C:\msys64\mingw64\bin;C:\msys64\usr\bin;%PATH%
set GLEW_INCLUDE_DIR=C:/msys64/mingw64/include/GL
set GLEW_LIBRARIES=C:/msys64/mingw64/lib/libglew32.dll.a
cmake -G "MinGW Makefiles" -DBUILD_SHARED_LIBS=ON -DENABLE_PRECOMPILED_HEADERS=OFF -DBUILD_SAMPLES=ON -DBUILD_LUA_BINDINGS=ON -DWARNINGS_AS_ERRORS=ON -DCMAKE_C_COMPILER=gcc.exe -DCMAKE_CXX_COMPILER=g++.exe -DCMAKE_MAKE_PROGRAM=mingw32-make.exe -DGLEW_INCLUDE_DIR=%GLEW_INCLUDE_DIR% -DGLEW_LIBRARIES=%GLEW_LIBRARIES% ..
set CHERE_INVOKING=yes
set MSYSTEM=MINGW64
build_script:
- cmd: |-
C:\msys64\usr\bin\bash -lc "mingw32-make.exe -j4"
after_build:
- cmd: |-
ls {*.exe,*.dll} -s -h -X
artifacts:
- path: RmlUi-*.zip
deploy:
release: RmlUi $(APPVEYOR_REPO_TAG_NAME)
description: 'Release description'
provider: GitHub
auth_token:
secure: g/WlXrOszpqKYC++IvUvNOPhuEeHbMm+2/TWzcgQko+nIGKmjvfAWUxouNhgsUy9
artifact: /.*\.zip/
draft: true
prerelease: false
on:
APPVEYOR_REPO_TAG: true
RUN_MINGW: false