Browse Source

Update Travis integration

pull/256/head
Anders Jenbo 7 years ago
parent
commit
267181464d
  1. 37
      .travis.yml
  2. 9
      .travis/are-we-d1-yet.sh
  3. 21
      MakefileVC

37
.travis.yml

@ -21,17 +21,10 @@ env:
- MAKE_BUILD=make
- MAKE_BUILD=debug
before_script:
- touch storm.dll
- touch diabloui.dll
script:
- if [ $MAKE_BUILD = make ]; then make; fi
- if [ $MAKE_BUILD = debug ]; then make debug; fi
after_script:
- make clean
stages:
- Riivaaja
- test
@ -39,15 +32,15 @@ stages:
jobs:
include:
- stage: Riivaaja
name: "Build using Riivaaja (original toolset)"
name: "Diablo 1.09b: original toolchain"
language: minimal
sudo: required
services:
- docker
addons: {}
script: docker run -v $(pwd):/root/devilution diasurgical/riivaaja:stable
- stage: test
name: "Riivaaja: Calculate binary accuracy"
- stage: Riivaaja
name: "Diablo 1.09b: Calculate binary accuracy"
language: minimal
sudo: required
services:
@ -63,10 +56,28 @@ jobs:
echo '#!/bin/sh' | sudo tee /bin/wine
echo 'docker run -v $(pwd):/root/devilution --entrypoint "/usr/bin/wine" diasurgical/riivaaja:stable $(basename $1) $2 $3' | sudo tee --append /bin/wine
sudo chmod +x /bin/wine
docker run -v $(pwd):/root/devilution -e MAKE_BUILD=pdb -e COPYPROT=1 diasurgical/riivaaja:stable
docker run -v $(pwd):/root/devilution -e MAKE_BUILD=pdb diasurgical/riivaaja:stable
./devilution-comparer generate-full Diablo.exe --no-mem-disp --truncate-to-original
docker run -v $(pwd):/root/devilution diasurgical/riivaaja:stable ../status.sh
after_success:
.travis/are-we-d1-yet.sh "$(< accuracy.txt)" $DISCORD_WEBHOOK "Diablo 1.09b"
- stage: Riivaaja
name: "Spawn 1.09: Calculate binary accuracy"
language: minimal
sudo: required
services:
- docker
addons: {}
script:
- |
set -e
.travis/are-we-d1-yet.sh "$(< accuracy.txt)" $DISCORD_WEBHOOK
wget https://github.com/diasurgical/devilution-comparer/releases/download/v0.4.0/devilution-comparer-v0.4.0-x86_64-unknown-linux-gnu.tar.xz
tar xf devilution-comparer-v0.4.0-x86_64-unknown-linux-gnu.tar.xz
rm comparer-config.toml
wget https://raw.githubusercontent.com/diasurgical/devilution-comparer/master/shareware-comparer-config.toml -O comparer-config.toml
echo '#!/bin/sh' | sudo tee /bin/wine
echo 'docker run -v $(pwd):/root/devilution --entrypoint "/usr/bin/wine" diasurgical/riivaaja:stable $(basename $1) $2 $3' | sudo tee --append /bin/wine
sudo chmod +x /bin/wine
docker run -v $(pwd):/root/devilution -e MAKE_BUILD=pdb -e SPAWN=1 diasurgical/riivaaja:stable
./devilution-comparer generate-full Diablo.exe --no-mem-disp --truncate-to-original
docker run -v $(pwd):/root/devilution diasurgical/riivaaja:stable ../spawn-status.sh
.travis/are-we-d1-yet.sh "$(< accuracy.txt)" $DISCORD_WEBHOOK "Spawn 1.09b"

9
.travis/are-we-d1-yet.sh

@ -2,8 +2,11 @@
# based on https://github.com/k3rn31p4nic/travis-ci-discord-webhook
# Only run for commits/builds on master, not for PRs for now
if [[ "$TRAVIS_BRANCH" != "master" || $TRAVIS_PULL_REQUEST != "false" ]]; then
# Only run for commits/builds on master|hellfire, not for PRs for now
if [[ "$TRAVIS_BRANCH" != "master" && "$TRAVIS_BRANCH" != "hellfire" ]]; then
exit
fi
if [[ $TRAVIS_PULL_REQUEST != "false" ]]; then
exit
fi
@ -30,7 +33,7 @@ WEBHOOK_DATA='{
"avatar_url": "https://travis-ci.com/images/logos/TravisCI-Mascot-1.png",
"embeds": [ {
"author": {
"name": "Job #'"$TRAVIS_JOB_NUMBER"' (Build #'"$TRAVIS_BUILD_NUMBER"')",
"name": "'"$3"' #'"$TRAVIS_JOB_NUMBER"' (Build #'"$TRAVIS_BUILD_NUMBER"')",
"url": "https://travis-ci.org/'"$TRAVIS_REPO_SLUG"'/builds/'"$TRAVIS_BUILD_ID"'",
"icon_url": "https://travis-ci.com/images/logos/TravisCI-Mascot-1.png"
},

21
MakefileVC

@ -1,6 +1,4 @@
VC5_DIR ?= $(HOME)/DevStudio_5.10/VC
# The $(VS6_DIR) directory is a copy of the "Microsoft Visual Studio" directory.
# The $(VC5_DIR)/.. and $(VS6_DIR) directories are copies "Microsoft Visual Studio".
#
# To get a working setup on Linux or other "portable" copies of VS,
# the following DLLs have to be copied to the
@ -20,6 +18,9 @@ VC6_BIN_DIR = $(VC6_DIR)/Bin
VC6_INC_DIR = $(VC6_DIR)/Include
VC6_LIB_DIR = $(VC6_DIR)/Lib
VC5_DIR ?= $(HOME)/DevStudio_5.10/VC
VC5_BIN_DIR = $(VC5_DIR)/bin
VC5_LIB_DIR = $(VC5_DIR)/lib
IDE_DIR ?= $(VS6_DIR)/Common/MSDev98
@ -27,22 +28,18 @@ IDE_BIN_DIR = $(IDE_DIR)/bin
ifeq ($(OS),Windows_NT)
CL = $(VC6_BIN_DIR)/CL.EXE
RC = $(IDE_BIN_DIR)/RC.EXE
VC5_LINK = $(VC5_DIR)/bin/link.exe
VC5_LINK = $(VC5_BIN_DIR)/link.exe
VC6_LINK = $(VC6_BIN_DIR)/link.exe
else
CL = wine $(VC6_BIN_DIR)/CL.EXE
RC = wine $(IDE_BIN_DIR)/RC.EXE
VC5_LINK = wine $(VC5_DIR)/bin/link.exe
VC5_LINK = wine $(VC5_BIN_DIR)/link.exe
VC6_LINK = wine $(VC6_BIN_DIR)/link.exe
endif
CFLAGS=/nologo /c /GX /W3 /O1 /I $(VC6_INC_DIR) /FD /Gr /MT /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /Fp"Diablo.pch" /YX /Gm /Zi /FAs
LINKFLAGS=/nologo /subsystem:windows /machine:I386 /incremental:no
ifeq ($(COPYPROT),1)
CFLAGS += /D "COPYPROT"
endif
ifeq ($(SPAWN),1)
CFLAGS += /D "SPAWN"
endif
@ -51,8 +48,8 @@ ifeq ($(MAKE_BUILD),pdb)
VC_LINK = $(VC6_LINK)
LINKFLAGS += /pdb:"Diablo.pdb" /LIBPATH:$(VC6_LIB_DIR) /debug
else
VC_LINK=$(VC5_LINK)
LINKFLAGS+= /LIBPATH:$(VC5_LIB_DIR)
VC_LINK = $(VC5_LINK)
LINKFLAGS += /LIBPATH:$(VC5_LIB_DIR)
endif
all: Diablo.exe
@ -85,7 +82,7 @@ main_files:
$(CL) $(CFLAGS) /Fo$@ $<
diablo.res: Diablo.rc
$(RC) /i $(VC6_INC_DIR) /i $(VC6_DIR)/MFC/Include /l 0x409 /fo $@ $<
$(RC) /i $(VC6_INC_DIR) /l 0x409 /fo $@ $<
clean:
@$(RM) -v $(OBJS)

Loading…
Cancel
Save