strategy: matrix: linux_focal_gcc8_minimal: imageName: 'ubuntu-20.04' ccName: gcc-8 cxxName: g++-8 buildMinimalSetting: true linux_focal_clang_all: imageName: 'ubuntu-20.04' ccName: clang cxxName: clang++ buildMinimalSetting: false linux_focal_gcc8_all: imageName: 'ubuntu-20.04' ccName: gcc-8 cxxName: g++-8 buildMinimalSetting: false linux_focal_gcc9_all: imageName: 'ubuntu-20.04' ccName: gcc-9 cxxName: g++-9 buildMinimalSetting: false linux_bionic_gcc7_all: imageName: 'ubuntu-18.04' ccName: gcc-7 cxxName: g++-7 buildMinimalSetting: false # build is currently broken build # mac_catalina_gcc8_all: # imageName: 'macOS-10.15' # ccName: gcc-8 # cxxName: g++-8 # buildMinimalSetting: false mac_catalina_clang_all: imageName: 'macOS-10.15' ccName: clang cxxName: clang++ buildMinimalSetting: false windows: imageName: 'windows-latest' buildMinimalSetting: false pool: vmImage: $(imageName) variables: buildMinimal: $(buildMinimalSetting) ${{ if eq( variables['Agent.OS'], 'Windows_NT') }}: NetHackPath: s\NetHack ${{ if ne( variables['Agent.OS'], 'Windows_NT') }}: NetHackPath: s/NetHack CC: $(ccName) CXX: $(cxxName) steps: - checkout: git://NetHack/NetHack@NetHack-3.7 # $(Agent.BuildDirectory)\s\NetHack submodules: true path: $(NetHackPath) - task: DownloadSecureFile@1 name: storeKey displayName: 'Store Key Download' inputs: secureFile: 'NetHackPackage_StoreKey.pfx' condition: eq( variables['Agent.OS'], 'Windows_NT' ) - task: CopyFiles@2 inputs: contents: NetHackPackage_StoreKey.pfx SourceFolder: $(Agent.TempDirectory) TargetFolder: $(Agent.BuildDirectory)\s\NetHack\win\win32\vs condition: eq( variables['Agent.OS'], 'Windows_NT' ) - task: MSBuild@1 inputs: solution: $(Agent.BuildDirectory)\s\NetHack\win\win32\vs\NetHack.sln platform: Win32 configuration: Debug condition: eq( variables['Agent.OS'], 'Windows_NT' ) - bash: | sudo apt-get -qq -y update sudo apt-get -qq -y install libncurses5-dev sudo apt-get -qq -y install libx11-dev libxaw7-dev xfonts-utils qtbase5-dev qtmultimedia5-dev qtbase5-dev-tools condition: eq( variables['Agent.OS'], 'Linux' ) displayName: 'Getting linux build dependencies' - bash: | cd sys/unix sh setup.sh hints/linux-minimal cd ../.. sed -i '/^#define CLIPPING/d' include/config.h sed -i '/^#define COMPRESS/d' include/config.h #sed -i '/^#define DOAGAIN/d' include/config.h sed -i '/^#define DUMPLOG/d' include/config.h #sed -i '/^#define GDBPATH/d' include/config.h #sed -i '/^#define GREPPATH/d' include/config.h sed -i '/^#define INSURANCE/d' include/config.h sed -i '/^#define LOGFILE/d' include/config.h sed -i '/^#define NEWS/d' include/config.h sed -i '/^#define PANICLOG/d' include/config.h #sed -i '/^#define STATUS_HILITES/d' include/config.h sed -i '/^#define SYSCF/d' include/config.h sed -i '/^#define USER_SOUNDS/d' include/config.h sed -i '/^#define XLOGFILE/d' include/config.h sed -i '/^#define MAIL/d' include/unixconf.h sed -i '/^#define SHELL/d' include/unixconf.h sed -i '/^#define SUSPEND/d' include/unixconf.h sed -i 's/^#define TEXTCOLOR//' include/unixconf.h cat include/config.h make fetch-lua make WANT_WIN_ALL=1 all condition: and(eq( variables['Agent.OS'], 'Linux' ), eq( variables.buildMinimal, true)) displayName: 'Buildig linux minimal build' - bash: | cd sys/unix sh setup.sh hints/linux.2020 cd ../.. make fetch-lua make WANT_WIN_ALL=1 QT_SELECT=5 MOC=moc all condition: and(eq( variables['Agent.OS'], 'Linux' ), eq( variables.buildMinimal, false)) displayName: 'Building linux full build' - bash: | cd sys/unix sh setup.sh hints/macos.2020 cd ../.. make fetch-lua make all condition: eq( variables['Agent.OS'], 'Darwin' ) displayName: 'Mac Build'