Skip to content

Commit

Permalink
Testing Travis on Windows
Browse files Browse the repository at this point in the history
  • Loading branch information
yancouto committed Jan 13, 2019
1 parent d86c26e commit cc1bfaf
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 11 deletions.
15 changes: 11 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
language: c++
language: cpp
os:
- linux
- osx
- windows

addons:
apt:
Expand All @@ -13,12 +14,18 @@ addons:
packages:
- luajit

# Workaround for travis bug (https://travis-ci.community/t/windows-instances-hanging-before-install/250/15)
filter_secrets: false

install:
- curl -u yancouto:$SDK_TOKEN -sL https://raw.githubusercontent.com/yancouto/private-steamworks-sdk/master/steamworks_sdk_142.zip -o sdk.zip
- unzip -q sdk.zip
- if [[ "$TRAVIS_OS_NAME" == "windows" ]]; then choco install -y visualstudio2017community visualstudio2017-workload-nativedesktop; fi

script:
- mkdir build
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then make osx && mv luasteam.so build/osx_luasteam.so; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then make linux64 && cp luasteam.so build/linux64_luasteam.so; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then make linux32 && cp luasteam.so build/linux32_luasteam.so; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then make osx && mv luasteam.so build/osx_luasteam.so; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then make linux64 && cp luasteam.so build/linux64_luasteam.so; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then make linux32 && cp luasteam.so build/linux32_luasteam.so; fi
- if [[ "$TRAVIS_OS_NAME" == "windows" ]]; then mingw32-make windows64 && cp luasteam.dll build/win64_luasteam.dll; fi
- if [[ "$TRAVIS_OS_NAME" == "windows" ]]; then mingw32-make windows32 && cp luasteam.dll build/win32_luasteam.dll; fi
26 changes: 19 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,6 @@ GNU_OUT=luasteam.so
GNU_IPATHS=-I/usr/include/luajit-2.0
GNU_FLAGS=$(GNU_IPATHS) $(STDLIB_VER) -lluajit-5.1

WINDOWS_LIBS=lua51.lib steam_api.lib
WINDOWS_IPATHS=-I.\luajit

.PHONY: all osx linux32 linux64 windows32 windows64

all:
Expand All @@ -31,8 +28,23 @@ linux32:
linux64:
$(CXX) $(SRC) $(CPP_FLAGS) ${STEAM_LIB}/linux64/libsteam_api.so -o $(GNU_OUT) -shared -fPIC $(GNU_FLAGS)

windows32:
$(CXX) $(SRC) $(CPP_FLAGS) lua51.lib ${STEAM_LIB}/steam_api.lib $(WINDOWS_IPATHS) /LD /EHsc
ifeq ($(OS),Windows_NT)
# Windows stuff
SHELL=cmd
WINDOWS_IPATHS=-I./include
WINDOWS_OPT=-LD -EHsc

lua32.zip:
curl -sL -o lua32.zip https://sourceforge.net/projects/luabinaries/files/5.1.5/Windows%20Libraries/Static/lua-5.1.5_Win32_vc15_lib.zip/download

lua64.zip:
curl -sL -o lua64.zip https://sourceforge.net/projects/luabinaries/files/5.1.5/Windows%20Libraries/Static/lua-5.1.5_Win64_vc15_lib.zip/download

windows32: lua32.zip
unzip -qo lua32.zip
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars32.bat" && cl $(SRC) lua5.1.lib ${STEAM_LIB}/steam_api.lib $(WINDOWS_OPT) $(WINDOWS_IPATHS)

windows64:
$(CXX) $(SRC) $(CPP_FLAGS) lua51.lib ${STEAM_LIB}/win64/steam_api64.lib $(WINDOWS_IPATHS) /LD /EHsc
windows64: lua64.zip
unzip -qo lua64.zip
call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" && cl $(SRC) lua5.1.lib ${STEAM_LIB}/win64/steam_api64.lib $(WINDOWS_OPT) $(WINDOWS_IPATHS)
endif

0 comments on commit cc1bfaf

Please sign in to comment.