Merge lp:~widelands-dev/widelands/appveyor into lp:widelands
- appveyor
- Merge into trunk
Status: | Merged |
---|---|
Merged at revision: | 7693 |
Proposed branch: | lp:~widelands-dev/widelands/appveyor |
Merge into: | lp:widelands |
Diff against target: |
159 lines (+85/-15) 4 files modified
CMakeLists.txt (+5/-1) appveyor.yml (+34/-0) utils/detect_revision.py (+5/-1) utils/win32/innosetup/Widelands.iss (+41/-13) |
To merge this branch: | bzr merge lp:~widelands-dev/widelands/appveyor |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Tino | Approve | ||
Review via email: mp+281599@code.launchpad.net |
Commit message
Description of the change
Provide a build script for appveyor, the "travis ci" for windows.
Currently a release build is done and a complete inno setup created.
Includes 2 fixes for windows:
- enable static linking glew32 with cmake option on windows
- allow git revision detection in windows (does work on my machine, but atm not an appveyor)
bunnybot (widelandsofficial) wrote : | # |
bunnybot (widelandsofficial) wrote : | # |
Bunnybot encountered an error while working on this merge proposal:
Running 'bzr branch lp:~widelands-dev/widelands/appveyor data/bzr_
bzr: ERROR: Not a branch: "bzr+ssh:
Tino (tino79) wrote : | # |
Ok, no static linking at all for now.
Locally i am able to do a complete static widelands.exe, will have to figure this out for appveyor later.
bunnybot (widelandsofficial) wrote : | # |
Hi, I am bunnybot (https:/
I am keeping the source branch lp:~widelands-dev/widelands/appveyor mirrored to https:/
You can give me commands by starting a line with @bunnybot <command>. I understand:
merge: Merges the source branch into the target branch, closing the merge proposal. I will use the proposed commit message if it is set.
bunnybot (widelandsofficial) wrote : | # |
Travis build 189 has changed state to: passed. Details: https:/
bunnybot (widelandsofficial) wrote : | # |
Travis build 199 has changed state to: canceled. Details: https:/
Tino (tino79) wrote : | # |
Ok, it works now including building a windows setup.
I am going to merge because there are no changes to other than windows related things.
@bunnybot merge
bunnybot (widelandsofficial) wrote : | # |
Travis build 211 has changed state to: passed. Details: https:/
SirVer (sirver) wrote : | # |
Great achievement. Is there an API so that bunnybot can check for the appveyor build state too? (I can search for it myself, but maybe you already know where it is). One inline comment with food for thought.
Preview Diff
1 | === modified file 'CMakeLists.txt' |
2 | --- CMakeLists.txt 2016-01-04 20:58:32 +0000 |
3 | +++ CMakeLists.txt 2016-01-06 18:28:17 +0000 |
4 | @@ -31,7 +31,11 @@ |
5 | |
6 | SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules) |
7 | |
8 | -set (Boost_USE_STATIC_LIBS OFF) |
9 | +if (WIN32) |
10 | + set (Boost_USE_STATIC_LIBS ON) |
11 | +else() |
12 | + set (Boost_USE_STATIC_LIBS OFF) |
13 | +endif() |
14 | set (Boost_USE_MULTITHREADED ON) |
15 | set (Boost_DETAILED_FAILURE_MSG ON) |
16 | find_package(Boost 1.48 |
17 | |
18 | === added file 'appveyor.yml' |
19 | --- appveyor.yml 1970-01-01 00:00:00 +0000 |
20 | +++ appveyor.yml 2016-01-06 18:28:17 +0000 |
21 | @@ -0,0 +1,34 @@ |
22 | +install: |
23 | + # Installing various utilities |
24 | + - choco install -y InnoSetup |
25 | + - set PATH=C:\msys64\mingw64\bin;C:\msys64\usr\bin;"C:\Program Files (x86)\Inno Setup 5";%PATH% |
26 | + # Update complete msys2 distribution |
27 | + # fails most of the time due slow data transfer |
28 | + #- cmd: "bash --login -c \"update-core\"" |
29 | + #- cmd: "bash --login -c \"pacman -Syu --noconfirm\"" |
30 | + - cmd: "bash --login -c \"pacman --noconfirm -S mingw-w64-x86_64-ninja mingw-w64-x86_64-boost mingw-w64-x86_64-SDL2_net mingw-w64-x86_64-SDL2_ttf mingw-w64-x86_64-SDL2_mixer mingw-w64-x86_64-SDL2_image mingw-w64-x86_64-glew\"" |
31 | + # Hack, there are wrong dependencies atm in the msys2 packages (SDL_image, libwebp) |
32 | + #- cmd: copy c:\msys64\mingw64\bin\libwebp-6.dll c:\msys64\mingw64\bin\libwebp-5.dll |
33 | + |
34 | +shallow_clone: true |
35 | + |
36 | +build: |
37 | + verbosity: detailed |
38 | + |
39 | +build_script: |
40 | + - cmd: cd c:\projects |
41 | + - cmd: md build |
42 | + - cmd: cd build |
43 | + - cmd: echo %APPVEYOR_BUILD_VERSION% > c:\projects\widelands\WL_RELEASE |
44 | + - cmd: cmake -G "Ninja" -DCMAKE_BUILD_TYPE=Release ..\widelands |
45 | + - cmd: ninja |
46 | + - cmd: strip -sv src\widelands.exe |
47 | + - cmd: ISCC /q /fWidelands-%APPVEYOR_BUILD_VERSION%-win64 ..\widelands\utils\win32\innosetup\Widelands.iss |
48 | + - appveyor PushArtifact c:\projects\Widelands-%APPVEYOR_BUILD_VERSION%-win64.exe |
49 | + |
50 | +artifacts: |
51 | + - path: Widelands-$(APPVEYOR_BUILD_VERSION)-win64.exe |
52 | + name: Widelands Setup |
53 | + |
54 | +platform: |
55 | + - x64 |
56 | |
57 | === modified file 'utils/detect_revision.py' |
58 | --- utils/detect_revision.py 2015-07-23 10:46:52 +0000 |
59 | +++ utils/detect_revision.py 2016-01-06 18:28:17 +0000 |
60 | @@ -44,7 +44,11 @@ |
61 | def detect_git_revision(): |
62 | if not sys.platform.startswith('linux') and \ |
63 | not sys.platform.startswith('darwin'): |
64 | - return None |
65 | + git_revnum=os.popen('git show --pretty=format:%h | head -n 1').read().rstrip() |
66 | + if git_revnum: |
67 | + return 'unofficial-git-%s' % (git_revnum,) |
68 | + else: |
69 | + return None |
70 | |
71 | is_git_workdir=os.system('git show >/dev/null 2>&1')==0 |
72 | if is_git_workdir: |
73 | |
74 | === modified file 'utils/win32/innosetup/Widelands.iss' |
75 | --- utils/win32/innosetup/Widelands.iss 2015-03-01 09:21:20 +0000 |
76 | +++ utils/win32/innosetup/Widelands.iss 2016-01-06 18:28:17 +0000 |
77 | @@ -22,10 +22,10 @@ |
78 | |
79 | ;Version String |
80 | #define Name "Widelands" |
81 | -#define VerName "Widelands Build18" |
82 | -#define VerNumber "0.18.0.1" |
83 | +#define VerName "Widelands Build19" |
84 | +#define VerNumber "0.19.0.1" |
85 | #define Copyright "Widelands Development Team 2001-2015" |
86 | -#define SetupFileName "Widelands-Build18-win32" |
87 | +#define SetupFileName "Widelands-Build19-win64" |
88 | |
89 | ;General String |
90 | #define Publisher "Widelands Development Team" |
91 | @@ -75,8 +75,6 @@ |
92 | Name: french; MessagesFile: compiler:Languages\French.isl |
93 | Name: german; MessagesFile: compiler:Languages\German.isl |
94 | Name: polish; MessagesFile: compiler:Languages\Polish.isl |
95 | -Name: swedish; MessagesFile: compiler:Languages\Swedish.isl |
96 | -Name: slovak; MessagesFile: compiler:Languages\Slovak.isl |
97 | Name: russian; MessagesFile: compiler:Languages\Russian.isl |
98 | Name: hungarian; MessagesFile: compiler:Languages\Hungarian.isl |
99 | Name: dutch; MessagesFile: compiler:Languages\Dutch.isl |
100 | @@ -92,7 +90,7 @@ |
101 | [Files] |
102 | Source: ..\..\..\campaigns\*; DestDir: {app}\campaigns\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" |
103 | Source: ..\..\..\i18n\*; DestDir: {app}\i18n\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" |
104 | -Source: ..\..\..\locale\*; DestDir: {app}\locale\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" |
105 | +Source: ..\..\..\..\build\locale\*; DestDir: {app}\locale\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" |
106 | Source: ..\..\..\maps\*; DestDir: {app}\maps\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Components: " Maps" |
107 | Source: ..\..\..\music\*; DestDir: {app}\music\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Components: " Music" |
108 | Source: ..\..\..\pics\*; DestDir: {app}\pics\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" |
109 | @@ -100,13 +98,43 @@ |
110 | Source: ..\..\..\tribes\*; DestDir: {app}\tribes\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" |
111 | Source: ..\..\..\txts\*; DestDir: {app}\txts\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" |
112 | Source: ..\..\..\world\*; DestDir: {app}\world\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" |
113 | -Source: ..\..\..\global\*; DestDir: {app}\global\; Flags: recursesubdirs ignoreversion; Tasks: ; Languages: ; Attribs: hidden; Components: " Widelands" |
114 | -Source: ..\..\..\*.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
115 | -Source: ..\..\..\widelands.exe; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
116 | -Source: ..\..\..\ChangeLog; DestDir: {app}; Flags: ignoreversion; DestName: ChangeLog.txt; Components: " Widelands" |
117 | -Source: ..\..\..\COPYING; DestDir: {app}; Flags: ignoreversion; DestName: COPYING.txt; Components: " Widelands" |
118 | -Source: ..\..\..\CREDITS; DestDir: {app}; Flags: ignoreversion; DestName: CREDITS.txt; Components: " Widelands" |
119 | -Source: .\WL-Editor.ico; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
120 | +Source: c:\msys64\mingw64\bin\glew32.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
121 | +Source: c:\msys64\mingw64\bin\libicuuc55.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
122 | +Source: c:\msys64\mingw64\bin\libbz2-1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
123 | +Source: c:\msys64\mingw64\bin\libfreetype-6.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
124 | +Source: c:\msys64\mingw64\bin\libgcc_s_seh-1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
125 | +Source: c:\msys64\mingw64\bin\libglib-2.0-0.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
126 | +Source: c:\msys64\mingw64\bin\libharfbuzz-0.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
127 | +Source: c:\msys64\mingw64\bin\libicudt55.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
128 | +Source: c:\msys64\mingw64\bin\libjpeg-8.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
129 | +Source: c:\msys64\mingw64\bin\liblzma-5.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
130 | +Source: c:\msys64\mingw64\bin\libogg-0.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
131 | +Source: c:\msys64\mingw64\bin\libpng16-16.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
132 | +Source: c:\msys64\mingw64\bin\libstdc++-6.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
133 | +Source: c:\msys64\mingw64\bin\libtiff-5.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
134 | +Source: c:\msys64\mingw64\bin\libvorbis-0.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
135 | +Source: c:\msys64\mingw64\bin\libvorbisfile-3.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
136 | +Source: c:\msys64\mingw64\bin\libwebp-5.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
137 | +Source: c:\msys64\mingw64\bin\libwinpthread-1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
138 | +Source: c:\msys64\mingw64\bin\SDL2.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
139 | +Source: c:\msys64\mingw64\bin\SDL2_image.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
140 | +Source: c:\msys64\mingw64\bin\SDL2_mixer.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
141 | +Source: c:\msys64\mingw64\bin\SDL2_net.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
142 | +Source: c:\msys64\mingw64\bin\SDL2_ttf.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
143 | +Source: c:\msys64\mingw64\bin\zlib1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
144 | +Source: c:\msys64\mingw64\bin\libFLAC-8.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
145 | +Source: c:\msys64\mingw64\bin\libfluidsynth-1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
146 | +Source: c:\msys64\mingw64\bin\libportaudio-2.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
147 | +Source: c:\msys64\mingw64\bin\libsndfile-1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
148 | +Source: c:\msys64\mingw64\bin\libspeex-1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
149 | +Source: c:\msys64\mingw64\bin\libvorbisenc-2.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
150 | +Source: c:\msys64\mingw64\bin\libmodplug-1.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
151 | +Source: c:\msys64\mingw64\bin\smpeg2.dll; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
152 | +Source: ..\..\..\..\build\src\widelands.exe; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
153 | +Source: ..\..\..\ChangeLog; DestDir: {app}; Flags: ignoreversion; DestName: ChangeLog.txt; Components: " Widelands" |
154 | +Source: ..\..\..\COPYING; DestDir: {app}; Flags: ignoreversion; DestName: COPYING.txt; Components: " Widelands" |
155 | +Source: ..\..\..\CREDITS; DestDir: {app}; Flags: ignoreversion; DestName: CREDITS.txt; Components: " Widelands" |
156 | +Source: .\WL-Editor.ico; DestDir: {app}; Flags: ignoreversion; Components: " Widelands" |
157 | |
158 | [INI] |
159 | Filename: {app}\{#UrlName}; Section: InternetShortcut; Key: URL; String: {#URL} |
Bunnybot encountered an error while working on this merge proposal:
Running 'bzr branch lp:~widelands-dev/widelands/appveyor data/bzr_ repo/_widelands _dev_widelands_ appveyor' failed. Output:
bzr: ERROR: Not a branch: "bzr+ssh: //bazaar. launchpad. net/~widelands- dev/widelands/ appveyor data/bzr_ repo/_widelands _dev_widelands_ appveyor/ ".