diff --git a/azure-pipelines.yml b/azure-pipelines.yml index dab8b98b..85b585d7 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -4,59 +4,58 @@ variables: releaseExamples: 'controlgallery cpp-multithread datetime drawtext histogram tester timer' strategy: - matrix: -# targetname: -# os: 'fill this in' -# arch: 'fill this in' -# toolchain: 'fill this in' -# libtype: 'fill this in' -# vmImage: 'fill this in' -# python3Template: 'fill filename' -# depsAndNinjaTemplate: 'fill filename' -# beforeConfigure: 'fill this in' -# beforeBuild: 'fill this in' -# afterBuild: 'fill this in' -# artifactTemplate: 'fill filename' -# libfiles: 'fill this in' -# osHeader: 'fill this in' - linux_386_shared: - os: 'linux' - arch: '386' - libtype: 'shared' - vmImage: 'ubuntu-16.04' - python3Template: 'azure-pipelines/setup-python3.yml' - depsAndNinjaTemplate: 'azure-pipelines/linux-386-install-gtk-dev-ninja.yml' - beforeConfigure: 'export CFLAGS=-m32 CXXFLAGS=-m32 PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig' - artifactTemplate: 'azure-pipelines/artifacts.yml' - libfiles: 'libui.so.0' - osHeader: 'ui_unix.h' +# targetname: +# os: 'fill this in' +# arch: 'fill this in' +# toolchain: 'fill this in' +# libtype: 'fill this in' +# vmImage: 'fill this in' +# python3Template: 'fill filename' +# depsAndNinjaTemplate: 'fill filename' +# beforeConfigure: 'fill this in' +# beforeBuild: 'fill this in' +# afterBuild: 'fill this in' +# artifactTemplate: 'fill filename' +# libfiles: 'fill this in' +# osHeader: 'fill this in' + linux_386_shared: + os: 'linux' + arch: '386' + libtype: 'shared' + vmImage: 'ubuntu-16.04' + python3Template: 'setup-python3.yml' + depsAndNinjaTemplate: 'linux-386-install-gtk-dev-ninja.yml' + beforeConfigure: 'export CFLAGS=-m32 CXXFLAGS=-m32 PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig' + artifactTemplate: 'artifacts.yml' + libfiles: 'libui.so.0' + osHeader: 'ui_unix.h' -pool: - vmImage: $(vmImage) - -workspace: - clean: all - -steps: -- template: $(variables.python3Template) -- template: azure-pipelines/install-latest-meson.yml -- template: $(variables.depsAndNinjaTemplate) -- template: azure-pipelines/configure.yml - parameters: - beforeConfigure: $(beforeConfigure) - defaultLibrary: $(libtype) -- template: azure-pipelines/build.yml - parameters: - beforeBuild: $(beforeBuild) - afterBuild: $(afterBuild) -- template: $(variables.artifactTemplate) - parameters: - os: $(os) - arch: $(arch) - toolchain: $(toolchain) - libtype: $(libtype) - libfiles: $(libfiles) - osHeader: $(osHeader) +jobs: +- job: $(join('_', [os, arch] + coalesce(toolchain, []) + [libtype])) + displayName: $(join(' ', [os, arch] + coalesce(toolchain, []) + [libtype])) + pool: + vmImage: $(vmImage) + workspace: + clean: all + steps: + - template: azure-pipelines/$(python3Template) + - template: azure-pipelines/install-latest-meson.yml + - template: azure-pipelines/$(depsAndNinjaTemplate) + - template: azure-pipelines/configure.yml + beforeConfigure: $(beforeConfigure) + defaultLibrary: $(libtype) + - template: azure-pipelines/build.yml + parameters: + beforeBuild: $(beforeBuild) + afterBuild: $(afterBuild) + - template: azure-pipelines/$(artifactTemplate) + parameters: + os: $(os) + arch: $(arch) + toolchain: $(toolchain) + libtype: $(libtype) + libfiles: $(libfiles) + osHeader: $(osHeader) ## linux { #- job: linux_386_static diff --git a/azure-pipelines/TODOMatrix b/azure-pipelines/TODOMatrix new file mode 100644 index 00000000..dab8b98b --- /dev/null +++ b/azure-pipelines/TODOMatrix @@ -0,0 +1,399 @@ +# 31 march 2019 + +variables: + releaseExamples: 'controlgallery cpp-multithread datetime drawtext histogram tester timer' + +strategy: + matrix: +# targetname: +# os: 'fill this in' +# arch: 'fill this in' +# toolchain: 'fill this in' +# libtype: 'fill this in' +# vmImage: 'fill this in' +# python3Template: 'fill filename' +# depsAndNinjaTemplate: 'fill filename' +# beforeConfigure: 'fill this in' +# beforeBuild: 'fill this in' +# afterBuild: 'fill this in' +# artifactTemplate: 'fill filename' +# libfiles: 'fill this in' +# osHeader: 'fill this in' + linux_386_shared: + os: 'linux' + arch: '386' + libtype: 'shared' + vmImage: 'ubuntu-16.04' + python3Template: 'azure-pipelines/setup-python3.yml' + depsAndNinjaTemplate: 'azure-pipelines/linux-386-install-gtk-dev-ninja.yml' + beforeConfigure: 'export CFLAGS=-m32 CXXFLAGS=-m32 PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig' + artifactTemplate: 'azure-pipelines/artifacts.yml' + libfiles: 'libui.so.0' + osHeader: 'ui_unix.h' + +pool: + vmImage: $(vmImage) + +workspace: + clean: all + +steps: +- template: $(variables.python3Template) +- template: azure-pipelines/install-latest-meson.yml +- template: $(variables.depsAndNinjaTemplate) +- template: azure-pipelines/configure.yml + parameters: + beforeConfigure: $(beforeConfigure) + defaultLibrary: $(libtype) +- template: azure-pipelines/build.yml + parameters: + beforeBuild: $(beforeBuild) + afterBuild: $(afterBuild) +- template: $(variables.artifactTemplate) + parameters: + os: $(os) + arch: $(arch) + toolchain: $(toolchain) + libtype: $(libtype) + libfiles: $(libfiles) + osHeader: $(osHeader) + +## linux { +#- job: linux_386_static +# displayName: 'Linux 386 Static' +# pool: +# vmImage: 'ubuntu-16.04' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/setup-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/linux-386-install-gtk-dev-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# beforeConfigure: export CFLAGS=-m32 CXXFLAGS=-m32 PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig +# defaultLibrary: static +# - template: azure-pipelines/build.yml +# - template: azure-pipelines/artifacts.yml +# parameters: +# os: linux +# arch: 386 +# libtype: static +# libfiles: libui.a +# osHeader: ui_unix.h +# +#- job: linux_amd64_shared +# displayName: 'Linux amd64 Shared' +# pool: +# vmImage: 'ubuntu-16.04' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/setup-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/linux-install-gtk-dev-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# defaultLibrary: shared +# - template: azure-pipelines/build.yml +# - template: azure-pipelines/artifacts.yml +# parameters: +# os: linux +# arch: amd64 +# libtype: shared +# libfiles: libui.so.0 +# osHeader: ui_unix.h +# +#- job: linux_amd64_static +# displayName: 'Linux amd64 Static' +# pool: +# vmImage: 'ubuntu-16.04' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/setup-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/linux-install-gtk-dev-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# defaultLibrary: static +# - template: azure-pipelines/build.yml +# - template: azure-pipelines/artifacts.yml +# parameters: +# os: linux +# arch: amd64 +# libtype: static +# libfiles: libui.a +# osHeader: ui_unix.h +# +## } +# +## windows vs2015 { +# +#- job: windows_386_msvc2015_shared +# displayName: 'Windows 386 MSVC2015 Shared' +# pool: +# vmImage: 'vs2015-win2012r2' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/vs2015-install-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/windows-install-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# beforeConfigure: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86 +# defaultLibrary: shared +# - template: azure-pipelines/build.yml +# parameters: +# beforeBuild: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86 +# - template: azure-pipelines/windows-artifacts.yml +# parameters: +# os: windows +# arch: 386 +# toolchain: msvc2015 +# libtype: shared +# libfiles: libui.dll libui.exp libui.lib +# osHeader: ui_windows.h +# +#- job: windows_386_msvc2015_static +# displayName: 'Windows 386 MSVC2015 Static' +# pool: +# vmImage: 'vs2015-win2012r2' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/vs2015-install-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/windows-install-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# beforeConfigure: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86 +# defaultLibrary: static +# - template: azure-pipelines/build.yml +# parameters: +# beforeBuild: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86 +# afterBuild: ren build\meson-out\libui.a libui.lib +# - template: azure-pipelines/windows-artifacts.yml +# parameters: +# os: windows +# arch: 386 +# toolchain: msvc2015 +# libtype: static +# libfiles: libui.lib +# osHeader: ui_windows.h +# +#- job: windows_amd64_msvc2015_shared +# displayName: 'Windows amd64 MSVC2015 Shared' +# pool: +# vmImage: 'vs2015-win2012r2' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/vs2015-install-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/windows-install-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# beforeConfigure: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64 +# defaultLibrary: shared +# - template: azure-pipelines/build.yml +# parameters: +# beforeBuild: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64 +# - template: azure-pipelines/windows-artifacts.yml +# parameters: +# os: windows +# arch: amd64 +# toolchain: msvc2015 +# libtype: shared +# libfiles: libui.dll libui.exp libui.lib +# osHeader: ui_windows.h +# +#- job: windows_amd64_msvc2015_static +# displayName: 'Windows amd64 MSVC2015 Static' +# pool: +# vmImage: 'vs2015-win2012r2' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/vs2015-install-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/windows-install-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# beforeConfigure: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64 +# defaultLibrary: static +# - template: azure-pipelines/build.yml +# parameters: +# beforeBuild: call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64 +# afterBuild: ren build\meson-out\libui.a libui.lib +# - template: azure-pipelines/windows-artifacts.yml +# parameters: +# os: windows +# arch: amd64 +# toolchain: msvc2015 +# libtype: static +# libfiles: libui.lib +# osHeader: ui_windows.h +# +## } +# +## windows vs2017 { +# +#- job: windows_386_msvc2017_shared +# displayName: 'Windows 386 MSVC2017 Shared' +# pool: +# vmImage: 'vs2017-win2016' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/setup-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/windows-install-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# beforeConfigure: call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x86 +# defaultLibrary: shared +# - template: azure-pipelines/build.yml +# parameters: +# beforeBuild: call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x86 +# - template: azure-pipelines/windows-artifacts.yml +# parameters: +# os: windows +# arch: 386 +# toolchain: msvc2017 +# libtype: shared +# libfiles: libui.dll libui.exp libui.lib +# osHeader: ui_windows.h +# +#- job: windows_386_msvc2017_static +# displayName: 'Windows 386 MSVC2017 Static' +# pool: +# vmImage: 'vs2017-win2016' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/setup-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/windows-install-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# beforeConfigure: call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x86 +# defaultLibrary: static +# - template: azure-pipelines/build.yml +# parameters: +# beforeBuild: call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" x86 +# afterBuild: ren build\meson-out\libui.a libui.lib +# - template: azure-pipelines/windows-artifacts.yml +# parameters: +# os: windows +# arch: 386 +# toolchain: msvc2017 +# libtype: static +# libfiles: libui.lib +# osHeader: ui_windows.h +# +#- job: windows_amd64_msvc2017_shared +# displayName: 'Windows amd64 MSVC2017 Shared' +# pool: +# vmImage: 'vs2017-win2016' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/setup-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/windows-install-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# beforeConfigure: call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" amd64 +# defaultLibrary: shared +# - template: azure-pipelines/build.yml +# parameters: +# beforeBuild: call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" amd64 +# - template: azure-pipelines/windows-artifacts.yml +# parameters: +# os: windows +# arch: amd64 +# toolchain: msvc2017 +# libtype: shared +# libfiles: libui.dll libui.exp libui.lib +# osHeader: ui_windows.h +# +#- job: windows_amd64_msvc2017_static +# displayName: 'Windows amd64 MSVC2017 Static' +# pool: +# vmImage: 'vs2017-win2016' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/setup-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/windows-install-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# beforeConfigure: call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" amd64 +# defaultLibrary: static +# - template: azure-pipelines/build.yml +# parameters: +# beforeBuild: call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build\vcvarsall.bat" amd64 +# afterBuild: ren build\meson-out\libui.a libui.lib +# - template: azure-pipelines/windows-artifacts.yml +# parameters: +# os: windows +# arch: amd64 +# toolchain: msvc2017 +# libtype: static +# libfiles: libui.lib +# osHeader: ui_windows.h +# +## } +# +## mac { +# +## TODO beforeConfigure/beforeBuild: export SDKROOT=$(xcodebuild -version -sdk macosx10.13 Path)? +# +#- job: darwin_amd64_shared +# displayName: 'Darwin amd64 Shared' +# pool: +# vmImage: 'macos-10.13' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/setup-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/darwin-install-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# defaultLibrary: shared +# - template: azure-pipelines/build.yml +# - template: azure-pipelines/artifacts.yml +# parameters: +# os: darwin +# arch: amd64 +# libtype: shared +# libfiles: libui.A.dylib +# osHeader: ui_darwin.h +# +#- job: darwin_amd64_static +# displayName: 'Darwin amd64 Static' +# pool: +# vmImage: 'macos-10.13' +# workspace: +# clean: all +# steps: +# - template: azure-pipelines/setup-python3.yml +# - template: azure-pipelines/install-latest-meson.yml +# - template: azure-pipelines/darwin-install-ninja.yml +# - template: azure-pipelines/configure.yml +# parameters: +# defaultLibrary: static +# - template: azure-pipelines/build.yml +# - template: azure-pipelines/artifacts.yml +# parameters: +# os: darwin +# arch: amd64 +# libtype: static +# libfiles: libui.a +# osHeader: ui_darwin.h +# +## } diff --git a/collapse.awk b/azure-pipelines/collapse.awk similarity index 100% rename from collapse.awk rename to azure-pipelines/collapse.awk diff --git a/collapsed b/azure-pipelines/collapsed similarity index 100% rename from collapsed rename to azure-pipelines/collapsed