... |
... |
@@ -19,46 +19,46 @@ variables: |
19
|
19
|
- '2022'
|
20
|
20
|
- 'gstreamer-windows'
|
21
|
21
|
|
22
|
|
-.build linux common:
|
23
|
|
- # See
|
24
|
|
- # https://gitlab.freedesktop.org/freetype/docker-images/container_registry/20896
|
25
|
|
- image: 'registry.freedesktop.org/freetype/docker-images/debian:latest'
|
26
|
|
- stage: 'build'
|
27
|
|
-
|
28
|
|
-.build macos common:
|
29
|
|
- stage: 'build'
|
30
|
|
- tags:
|
31
|
|
- - 'gst-macos-11.1'
|
|
22
|
+# .build linux common:
|
|
23
|
+# # See
|
|
24
|
+# # https://gitlab.freedesktop.org/freetype/docker-images/container_registry/20896
|
|
25
|
+# image: 'registry.freedesktop.org/freetype/docker-images/debian:latest'
|
|
26
|
+# stage: 'build'
|
|
27
|
+#
|
|
28
|
+# .build macos common:
|
|
29
|
+# stage: 'build'
|
|
30
|
+# tags:
|
|
31
|
+# - 'gst-macos-11.1'
|
32
|
32
|
|
33
|
33
|
.build windows meson:
|
34
|
34
|
extends: '.build windows common'
|
35
|
35
|
variables:
|
36
|
36
|
# Make sure any failure in PowerShell scripts is fatal.
|
37
|
|
- ErrorActionPreference: 'Stop'
|
38
|
|
- WarningPreference: 'Stop'
|
|
37
|
+ # ErrorActionPreference: 'Stop'
|
|
38
|
+ # WarningPreference: 'Stop'
|
39
|
39
|
# Uncomment the following key if you need to pass custom args, as well
|
40
|
40
|
# with the `$env:MESON_ARGS` line in the `script:` blocks.
|
41
|
41
|
# MESON_ARGS: >-
|
42
|
42
|
# -Dfoo=enabled
|
43
|
43
|
# -Dbar=disabled
|
44
|
|
- before_script:
|
45
|
|
- # Update RootCAs in order to access to some sites.
|
46
|
|
- - certutil -generateSSTFromWU "C:\roots.sst"
|
47
|
|
- - Import-Certificate -CertStoreLocation "Cert:\LocalMachine\Root" "C:\roots.sst"
|
48
|
|
- # Make sure meson is up to date so we don't need to rebuild the image
|
49
|
|
- # with each release.
|
50
|
|
- - pip3 install -U 'meson==0.59.*'
|
51
|
|
- - pip3 install --upgrade certifi
|
52
|
|
- - pip3 install -U ninja
|
53
|
|
-
|
54
|
|
- # Generate a UWP cross-file in case it's used
|
55
|
|
- - $PSDefaultParameterValues['Out-File:Encoding'] = 'ASCII'
|
56
|
|
- - echo "[binaries]" > uwp-crossfile.meson
|
57
|
|
- - echo "c = 'cl'" >> uwp-crossfile.meson
|
58
|
|
- - echo "strip = ['true']" >> uwp-crossfile.meson
|
59
|
|
- - echo "[built-in options]" >> uwp-crossfile.meson
|
60
|
|
- - echo "c_args = ['-DWINAPI_FAMILY=WINAPI_FAMILY_APP', '-DUNICODE', '-D_WIN32_WINNT=0x0A00', '-we4013']" >> uwp-crossfile.meson
|
61
|
|
- - echo "c_winlibs = ['windowsapp.lib']" >> uwp-crossfile.meson
|
|
44
|
+ # before_script:
|
|
45
|
+ # # Update RootCAs in order to access to some sites.
|
|
46
|
+ # - certutil -generateSSTFromWU "C:\roots.sst"
|
|
47
|
+ # - Import-Certificate -CertStoreLocation "Cert:\LocalMachine\Root" "C:\roots.sst"
|
|
48
|
+ # # Make sure meson is up to date so we don't need to rebuild the image
|
|
49
|
+ # # with each release.
|
|
50
|
+ # - pip3 install -U 'meson==0.59.*'
|
|
51
|
+ # - pip3 install --upgrade certifi
|
|
52
|
+ # - pip3 install -U ninja
|
|
53
|
+ #
|
|
54
|
+ # # Generate a UWP cross-file in case it's used
|
|
55
|
+ # - $PSDefaultParameterValues['Out-File:Encoding'] = 'ASCII'
|
|
56
|
+ # - echo "[binaries]" > uwp-crossfile.meson
|
|
57
|
+ # - echo "c = 'cl'" >> uwp-crossfile.meson
|
|
58
|
+ # - echo "strip = ['true']" >> uwp-crossfile.meson
|
|
59
|
+ # - echo "[built-in options]" >> uwp-crossfile.meson
|
|
60
|
+ # - echo "c_args = ['-DWINAPI_FAMILY=WINAPI_FAMILY_APP', '-DUNICODE', '-D_WIN32_WINNT=0x0A00', '-we4013']" >> uwp-crossfile.meson
|
|
61
|
+ # - echo "c_winlibs = ['windowsapp.lib']" >> uwp-crossfile.meson
|
62
|
62
|
script:
|
63
|
63
|
# For some reason, options are separated by newlines instead of spaces,
|
64
|
64
|
# so we have to replace them first.
|
... |
... |
@@ -69,10 +69,11 @@ variables: |
69
|
69
|
# script. Environment variables substitutions is done by PowerShell
|
70
|
70
|
# before calling `cmd.exe`, that's why we use `$env:FOO` instead of
|
71
|
71
|
# `%FOO%`.
|
72
|
|
- - cmd.exe /C "C:\BuildTools\Common7\Tools\VsDevCmd.bat -host_arch=amd64 -arch=$env:ARCH $env:VS_UWP &&
|
73
|
|
- meson setup build $env:MESON_ARGS_WINDOWS $env:MESON_ARGS_UWP &&
|
74
|
|
- meson compile --verbose -C build
|
75
|
|
- $env:MESON_WINDOWS_TESTS"
|
|
72
|
+ # - cmd.exe /c "%VS120COMNTOOLS%\vsvars32.bat"
|
|
73
|
+ # - 'call "%VS120COMNTOOLS%\vsvars32.bat"'
|
|
74
|
+ # - call $env:VS120COMNTOOLS
|
|
75
|
+ - "ls env:"
|
|
76
|
+ - msbuild.exe
|
76
|
77
|
|
77
|
78
|
|
78
|
79
|
# Format of job names:
|
... |
... |
@@ -87,144 +88,144 @@ windows meson vs2019 amd64: |
87
|
88
|
ARCH: 'amd64'
|
88
|
89
|
MESON_WINDOWS_TESTS: '&& meson test -C build && meson test -C build --benchmark'
|
89
|
90
|
|
90
|
|
-windows meson vs2019 x86:
|
91
|
|
- extends: '.build windows meson'
|
92
|
|
- variables:
|
93
|
|
- ARCH: 'x86'
|
94
|
|
- MESON_WINDOWS_TESTS: '&& meson test -C build && meson test -C build --benchmark'
|
95
|
|
-
|
96
|
|
-windows meson vs2019 amd64 uwp:
|
97
|
|
- extends: '.build windows meson'
|
98
|
|
- variables:
|
99
|
|
- ARCH: 'amd64'
|
100
|
|
- VS_UWP: '-app_platform=UWP'
|
101
|
|
- MESON_ARGS_UWP: '--cross-file uwp-crossfile.meson -Dc_winlibs="windowsapp.lib"'
|
102
|
|
-
|
103
|
|
-# Linux Jobs.
|
|
91
|
+# windows meson vs2019 x86:
|
|
92
|
+# extends: '.build windows meson'
|
|
93
|
+# variables:
|
|
94
|
+# ARCH: 'x86'
|
|
95
|
+# MESON_WINDOWS_TESTS: '&& meson test -C build && meson test -C build --benchmark'
|
104
|
96
|
#
|
105
|
|
-# Jobs with "libs" in the name force-enable libraries.
|
106
|
|
-# They are disabled for the remaining jobs.
|
107
|
|
-
|
108
|
|
-linux autotools:
|
109
|
|
- extends: '.build linux common'
|
110
|
|
- script: |
|
111
|
|
- ./autogen.sh
|
112
|
|
- ./configure --with-brotli=no \
|
113
|
|
- --with-bzip2=no \
|
114
|
|
- --with-harfbuzz=no \
|
115
|
|
- --with-png=no \
|
116
|
|
- --with-zlib=no \
|
117
|
|
- CC=gcc
|
118
|
|
-
|
119
|
|
- make -j$(nproc) && make install
|
120
|
|
-
|
121
|
|
-linux autotools libs:
|
122
|
|
- extends: '.build linux common'
|
123
|
|
- script: |
|
124
|
|
- ./autogen.sh
|
125
|
|
- ./configure --with-brotli=yes \
|
126
|
|
- --with-bzip2=yes \
|
127
|
|
- --with-harfbuzz=yes \
|
128
|
|
- --with-png=yes \
|
129
|
|
- --with-zlib=yes \
|
130
|
|
- CC=gcc
|
131
|
|
-
|
132
|
|
- make -j$(nproc) && make install
|
133
|
|
-
|
134
|
|
-linux autotools libs clang:
|
135
|
|
- extends: '.build linux common'
|
136
|
|
- script: |
|
137
|
|
- ./autogen.sh
|
138
|
|
- ./configure --with-brotli=yes \
|
139
|
|
- --with-bzip2=yes \
|
140
|
|
- --with-harfbuzz=yes \
|
141
|
|
- --with-png=yes \
|
142
|
|
- --with-zlib=yes \
|
143
|
|
- CC=clang
|
144
|
|
-
|
145
|
|
- make -j$(nproc) && make install
|
146
|
|
-
|
147
|
|
-linux meson:
|
148
|
|
- extends: '.build linux common'
|
149
|
|
- script: |
|
150
|
|
- meson setup build ${MESON_ARGS} \
|
151
|
|
- -Dbrotli=disabled \
|
152
|
|
- -Dbzip2=disabled \
|
153
|
|
- -Dharfbuzz=disabled \
|
154
|
|
- -Dpng=disabled \
|
155
|
|
- -Dzlib=disabled
|
156
|
|
-
|
157
|
|
- meson compile --verbose -C build
|
158
|
|
- meson install -C build
|
159
|
|
-
|
160
|
|
-linux meson libs:
|
161
|
|
- extends: '.build linux common'
|
162
|
|
- script: |
|
163
|
|
- meson setup build ${MESON_ARGS} \
|
164
|
|
- -Dbrotli=enabled \
|
165
|
|
- -Dbzip2=enabled \
|
166
|
|
- -Dharfbuzz=disabled \
|
167
|
|
- -Dpng=disabled \
|
168
|
|
- -Dzlib=disabled
|
169
|
|
-
|
170
|
|
- meson compile --verbose -C build
|
171
|
|
- meson install -C build
|
172
|
|
-
|
173
|
|
-linux cmake:
|
174
|
|
- extends: '.build linux common'
|
175
|
|
- script: |
|
176
|
|
- cmake -B build -D FT_DISABLE_BROTLI=TRUE \
|
177
|
|
- -D FT_DISABLE_BZIP2=TRUE \
|
178
|
|
- -D FT_DISABLE_HARFBUZZ=TRUE \
|
179
|
|
- -D FT_DISABLE_PNG=TRUE \
|
180
|
|
- -D FT_DISABLE_ZLIB=TRUE
|
181
|
|
-
|
182
|
|
- cmake --build build --target install
|
183
|
|
-
|
184
|
|
-linux cmake libs:
|
185
|
|
- extends: '.build linux common'
|
186
|
|
- script: |
|
187
|
|
- cmake -B build -D FT_REQUIRE_BROTLI=TRUE \
|
188
|
|
- -D FT_REQUIRE_BZIP2=TRUE \
|
189
|
|
- -D FT_REQUIRE_HARFBUZZ=TRUE \
|
190
|
|
- -D FT_REQUIRE_PNG=TRUE \
|
191
|
|
- -D FT_REQUIRE_ZLIB=TRUE
|
192
|
|
-
|
193
|
|
- cmake --build build --target install
|
194
|
|
-
|
195
|
|
-
|
196
|
|
-# MacOS jobs.
|
197
|
|
-
|
198
|
|
-macos autotools:
|
199
|
|
- extends: '.build macos common'
|
200
|
|
- before_script:
|
201
|
|
- - '/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"'
|
202
|
|
- script:
|
203
|
|
- - brew install autoconf automake libtool
|
204
|
|
- - ./autogen.sh
|
205
|
|
- - ./configure
|
206
|
|
- - 'make -j$(sysctl -n hw.logicalcpu)'
|
207
|
|
- - make install
|
208
|
|
-
|
209
|
|
-macos autotools clang:
|
210
|
|
- extends: '.build macos common'
|
211
|
|
- before_script:
|
212
|
|
- - '/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"'
|
213
|
|
- script:
|
214
|
|
- - brew install autoconf automake libtool
|
215
|
|
- - ./autogen.sh
|
216
|
|
- - './configure CC=clang'
|
217
|
|
- - 'make -j$(sysctl -n hw.logicalcpu)'
|
218
|
|
- - make install
|
219
|
|
-
|
220
|
|
-macos meson:
|
221
|
|
- extends: '.build macos common'
|
222
|
|
- script:
|
223
|
|
- - pip3 install --upgrade pip
|
224
|
|
- - pip3 install -U meson
|
225
|
|
- - pip3 install --upgrade certifi
|
226
|
|
- - pip3 install -U ninja
|
227
|
|
-
|
228
|
|
- - meson setup build ${MESON_ARGS}
|
229
|
|
- - meson compile --verbose -C build
|
230
|
|
- - sudo meson install -C build |
|
97
|
+# windows meson vs2019 amd64 uwp:
|
|
98
|
+# extends: '.build windows meson'
|
|
99
|
+# variables:
|
|
100
|
+# ARCH: 'amd64'
|
|
101
|
+# VS_UWP: '-app_platform=UWP'
|
|
102
|
+# MESON_ARGS_UWP: '--cross-file uwp-crossfile.meson -Dc_winlibs="windowsapp.lib"'
|
|
103
|
+#
|
|
104
|
+# # Linux Jobs.
|
|
105
|
+# #
|
|
106
|
+# # Jobs with "libs" in the name force-enable libraries.
|
|
107
|
+# # They are disabled for the remaining jobs.
|
|
108
|
+#
|
|
109
|
+# linux autotools:
|
|
110
|
+# extends: '.build linux common'
|
|
111
|
+# script: |
|
|
112
|
+# ./autogen.sh
|
|
113
|
+# ./configure --with-brotli=no \
|
|
114
|
+# --with-bzip2=no \
|
|
115
|
+# --with-harfbuzz=no \
|
|
116
|
+# --with-png=no \
|
|
117
|
+# --with-zlib=no \
|
|
118
|
+# CC=gcc
|
|
119
|
+#
|
|
120
|
+# make -j$(nproc) && make install
|
|
121
|
+#
|
|
122
|
+# linux autotools libs:
|
|
123
|
+# extends: '.build linux common'
|
|
124
|
+# script: |
|
|
125
|
+# ./autogen.sh
|
|
126
|
+# ./configure --with-brotli=yes \
|
|
127
|
+# --with-bzip2=yes \
|
|
128
|
+# --with-harfbuzz=yes \
|
|
129
|
+# --with-png=yes \
|
|
130
|
+# --with-zlib=yes \
|
|
131
|
+# CC=gcc
|
|
132
|
+#
|
|
133
|
+# make -j$(nproc) && make install
|
|
134
|
+#
|
|
135
|
+# linux autotools libs clang:
|
|
136
|
+# extends: '.build linux common'
|
|
137
|
+# script: |
|
|
138
|
+# ./autogen.sh
|
|
139
|
+# ./configure --with-brotli=yes \
|
|
140
|
+# --with-bzip2=yes \
|
|
141
|
+# --with-harfbuzz=yes \
|
|
142
|
+# --with-png=yes \
|
|
143
|
+# --with-zlib=yes \
|
|
144
|
+# CC=clang
|
|
145
|
+#
|
|
146
|
+# make -j$(nproc) && make install
|
|
147
|
+#
|
|
148
|
+# linux meson:
|
|
149
|
+# extends: '.build linux common'
|
|
150
|
+# script: |
|
|
151
|
+# meson setup build ${MESON_ARGS} \
|
|
152
|
+# -Dbrotli=disabled \
|
|
153
|
+# -Dbzip2=disabled \
|
|
154
|
+# -Dharfbuzz=disabled \
|
|
155
|
+# -Dpng=disabled \
|
|
156
|
+# -Dzlib=disabled
|
|
157
|
+#
|
|
158
|
+# meson compile --verbose -C build
|
|
159
|
+# meson install -C build
|
|
160
|
+#
|
|
161
|
+# linux meson libs:
|
|
162
|
+# extends: '.build linux common'
|
|
163
|
+# script: |
|
|
164
|
+# meson setup build ${MESON_ARGS} \
|
|
165
|
+# -Dbrotli=enabled \
|
|
166
|
+# -Dbzip2=enabled \
|
|
167
|
+# -Dharfbuzz=disabled \
|
|
168
|
+# -Dpng=disabled \
|
|
169
|
+# -Dzlib=disabled
|
|
170
|
+#
|
|
171
|
+# meson compile --verbose -C build
|
|
172
|
+# meson install -C build
|
|
173
|
+#
|
|
174
|
+# linux cmake:
|
|
175
|
+# extends: '.build linux common'
|
|
176
|
+# script: |
|
|
177
|
+# cmake -B build -D FT_DISABLE_BROTLI=TRUE \
|
|
178
|
+# -D FT_DISABLE_BZIP2=TRUE \
|
|
179
|
+# -D FT_DISABLE_HARFBUZZ=TRUE \
|
|
180
|
+# -D FT_DISABLE_PNG=TRUE \
|
|
181
|
+# -D FT_DISABLE_ZLIB=TRUE
|
|
182
|
+#
|
|
183
|
+# cmake --build build --target install
|
|
184
|
+#
|
|
185
|
+# linux cmake libs:
|
|
186
|
+# extends: '.build linux common'
|
|
187
|
+# script: |
|
|
188
|
+# cmake -B build -D FT_REQUIRE_BROTLI=TRUE \
|
|
189
|
+# -D FT_REQUIRE_BZIP2=TRUE \
|
|
190
|
+# -D FT_REQUIRE_HARFBUZZ=TRUE \
|
|
191
|
+# -D FT_REQUIRE_PNG=TRUE \
|
|
192
|
+# -D FT_REQUIRE_ZLIB=TRUE
|
|
193
|
+#
|
|
194
|
+# cmake --build build --target install
|
|
195
|
+#
|
|
196
|
+#
|
|
197
|
+# # MacOS jobs.
|
|
198
|
+#
|
|
199
|
+# macos autotools:
|
|
200
|
+# extends: '.build macos common'
|
|
201
|
+# before_script:
|
|
202
|
+# - '/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"'
|
|
203
|
+# script:
|
|
204
|
+# - brew install autoconf automake libtool
|
|
205
|
+# - ./autogen.sh
|
|
206
|
+# - ./configure
|
|
207
|
+# - 'make -j$(sysctl -n hw.logicalcpu)'
|
|
208
|
+# - make install
|
|
209
|
+#
|
|
210
|
+# macos autotools clang:
|
|
211
|
+# extends: '.build macos common'
|
|
212
|
+# before_script:
|
|
213
|
+# - '/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"'
|
|
214
|
+# script:
|
|
215
|
+# - brew install autoconf automake libtool
|
|
216
|
+# - ./autogen.sh
|
|
217
|
+# - './configure CC=clang'
|
|
218
|
+# - 'make -j$(sysctl -n hw.logicalcpu)'
|
|
219
|
+# - make install
|
|
220
|
+#
|
|
221
|
+# macos meson:
|
|
222
|
+# extends: '.build macos common'
|
|
223
|
+# script:
|
|
224
|
+# - pip3 install --upgrade pip
|
|
225
|
+# - pip3 install -U meson
|
|
226
|
+# - pip3 install --upgrade certifi
|
|
227
|
+# - pip3 install -U ninja
|
|
228
|
+#
|
|
229
|
+# - meson setup build ${MESON_ARGS}
|
|
230
|
+# - meson compile --verbose -C build
|
|
231
|
+# - sudo meson install -C build |