Keep downloaded files in a separate directory
As a side effect, this re-enables building the Windows installer on Linux hosts.
This commit is contained in:
18
.gitignore
vendored
18
.gitignore
vendored
@@ -28,23 +28,7 @@ mods/*/*.mdb
|
|||||||
/*.pdb
|
/*.pdb
|
||||||
/*.mdb
|
/*.mdb
|
||||||
/*.exe
|
/*.exe
|
||||||
thirdparty/StyleCop*
|
thirdparty/download/*
|
||||||
thirdparty/ICSharpCode.SharpZipLib.dll*
|
|
||||||
thirdparty/MaxMind*
|
|
||||||
thirdparty/RestSharp*
|
|
||||||
thirdparty/Newtonsoft.Json*
|
|
||||||
thirdparty/SharpFont*
|
|
||||||
thirdparty/windows/freetype6.dll
|
|
||||||
thirdparty/nunit*
|
|
||||||
thirdparty/windows/SDL2.dll
|
|
||||||
thirdparty/Mono.Nat.dll
|
|
||||||
thirdparty/Moq.dll
|
|
||||||
thirdparty/nuget.exe
|
|
||||||
thirdparty/windows/lua51.dll
|
|
||||||
thirdparty/windows/soft_oal.dll
|
|
||||||
thirdparty/FuzzyLogicLibrary.dll
|
|
||||||
thirdparty/SDL2-CS.dll
|
|
||||||
thirdparty/Eluant.dll
|
|
||||||
|
|
||||||
# backup files by various editors
|
# backup files by various editors
|
||||||
*~
|
*~
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ env:
|
|||||||
# Run the build script
|
# Run the build script
|
||||||
# call RALint to check for YAML errors
|
# call RALint to check for YAML errors
|
||||||
script:
|
script:
|
||||||
- travis_retry make cli-dependencies
|
- travis_retry make all-dependencies
|
||||||
- make all
|
- make all
|
||||||
- make check
|
- make check
|
||||||
- make test
|
- make test
|
||||||
|
|||||||
57
Makefile
57
Makefile
@@ -40,7 +40,7 @@
|
|||||||
CSC = dmcs
|
CSC = dmcs
|
||||||
CSFLAGS = -nologo -warn:4 -debug:full -optimize- -codepage:utf8 -unsafe -warnaserror
|
CSFLAGS = -nologo -warn:4 -debug:full -optimize- -codepage:utf8 -unsafe -warnaserror
|
||||||
DEFINE = DEBUG;TRACE
|
DEFINE = DEBUG;TRACE
|
||||||
COMMON_LIBS = System.dll System.Core.dll System.Data.dll System.Data.DataSetExtensions.dll System.Drawing.dll System.Xml.dll thirdparty/ICSharpCode.SharpZipLib.dll thirdparty/FuzzyLogicLibrary.dll thirdparty/Mono.Nat.dll thirdparty/MaxMind.Db.dll thirdparty/MaxMind.GeoIP2.dll thirdparty/Eluant.dll
|
COMMON_LIBS = System.dll System.Core.dll System.Data.dll System.Data.DataSetExtensions.dll System.Drawing.dll System.Xml.dll thirdparty/download/ICSharpCode.SharpZipLib.dll thirdparty/download/FuzzyLogicLibrary.dll thirdparty/download/Mono.Nat.dll thirdparty/download/MaxMind.Db.dll thirdparty/download/MaxMind.GeoIP2.dll thirdparty/download/Eluant.dll
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -74,6 +74,14 @@ CORE = rsdl2 rnull game utility
|
|||||||
TOOLS = editor crashdialog
|
TOOLS = editor crashdialog
|
||||||
VERSION = $(shell git name-rev --name-only --tags --no-undefined HEAD 2>/dev/null || echo git-`git rev-parse --short HEAD`)
|
VERSION = $(shell git name-rev --name-only --tags --no-undefined HEAD 2>/dev/null || echo git-`git rev-parse --short HEAD`)
|
||||||
|
|
||||||
|
# dependencies
|
||||||
|
UNAME_S := $(shell uname -s)
|
||||||
|
ifeq ($(UNAME_S),Linux)
|
||||||
|
os-dependencies = linux-dependencies
|
||||||
|
else ifeq ($(UNAME_S),Darwin)
|
||||||
|
os-dependencies = osx-dependencies
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
######################## PROGRAM TARGET RULES ##########################
|
######################## PROGRAM TARGET RULES ##########################
|
||||||
@@ -83,7 +91,7 @@ VERSION = $(shell git name-rev --name-only --tags --no-undefined HEAD 2>/dev
|
|||||||
game_SRCS := $(shell find OpenRA.Game/ -iname '*.cs')
|
game_SRCS := $(shell find OpenRA.Game/ -iname '*.cs')
|
||||||
game_TARGET = OpenRA.Game.exe
|
game_TARGET = OpenRA.Game.exe
|
||||||
game_KIND = winexe
|
game_KIND = winexe
|
||||||
game_LIBS = $(COMMON_LIBS) $(game_DEPS) thirdparty/SDL2-CS.dll thirdparty/SharpFont.dll
|
game_LIBS = $(COMMON_LIBS) $(game_DEPS) thirdparty/download/SDL2-CS.dll thirdparty/download/SharpFont.dll
|
||||||
game_FLAGS = -win32icon:OpenRA.Game/OpenRA.ico
|
game_FLAGS = -win32icon:OpenRA.Game/OpenRA.ico
|
||||||
PROGRAMS += game
|
PROGRAMS += game
|
||||||
game: $(game_TARGET)
|
game: $(game_TARGET)
|
||||||
@@ -93,7 +101,7 @@ rsdl2_SRCS := $(shell find OpenRA.Renderer.Sdl2/ -iname '*.cs')
|
|||||||
rsdl2_TARGET = OpenRA.Renderer.Sdl2.dll
|
rsdl2_TARGET = OpenRA.Renderer.Sdl2.dll
|
||||||
rsdl2_KIND = library
|
rsdl2_KIND = library
|
||||||
rsdl2_DEPS = $(game_TARGET)
|
rsdl2_DEPS = $(game_TARGET)
|
||||||
rsdl2_LIBS = $(COMMON_LIBS) thirdparty/SDL2-CS.dll $(rsdl2_DEPS)
|
rsdl2_LIBS = $(COMMON_LIBS) thirdparty/download/SDL2-CS.dll $(rsdl2_DEPS)
|
||||||
|
|
||||||
rnull_SRCS := $(shell find OpenRA.Renderer.Null/ -iname '*.cs')
|
rnull_SRCS := $(shell find OpenRA.Renderer.Null/ -iname '*.cs')
|
||||||
rnull_TARGET = OpenRA.Renderer.Null.dll
|
rnull_TARGET = OpenRA.Renderer.Null.dll
|
||||||
@@ -108,7 +116,7 @@ mod_common_SRCS := $(shell find OpenRA.Mods.Common/ -iname '*.cs')
|
|||||||
mod_common_TARGET = mods/common/OpenRA.Mods.Common.dll
|
mod_common_TARGET = mods/common/OpenRA.Mods.Common.dll
|
||||||
mod_common_KIND = library
|
mod_common_KIND = library
|
||||||
mod_common_DEPS = $(game_TARGET)
|
mod_common_DEPS = $(game_TARGET)
|
||||||
mod_common_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) thirdparty/StyleCop.dll thirdparty/StyleCop.CSharp.dll thirdparty/StyleCop.CSharp.Rules.dll
|
mod_common_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) thirdparty/download/StyleCop.dll thirdparty/download/StyleCop.CSharp.dll thirdparty/download/StyleCop.CSharp.Rules.dll
|
||||||
PROGRAMS += mod_common
|
PROGRAMS += mod_common
|
||||||
mod_common: $(mod_common_TARGET)
|
mod_common: $(mod_common_TARGET)
|
||||||
|
|
||||||
@@ -160,7 +168,7 @@ editor_SRCS := $(shell find OpenRA.Editor/ -iname '*.cs')
|
|||||||
editor_TARGET = OpenRA.Editor.exe
|
editor_TARGET = OpenRA.Editor.exe
|
||||||
editor_KIND = winexe
|
editor_KIND = winexe
|
||||||
editor_DEPS = $(game_TARGET) $(mod_common_TARGET)
|
editor_DEPS = $(game_TARGET) $(mod_common_TARGET)
|
||||||
editor_LIBS = System.Windows.Forms.dll System.Data.dll System.Drawing.dll $(editor_DEPS) thirdparty/Eluant.dll
|
editor_LIBS = System.Windows.Forms.dll System.Data.dll System.Drawing.dll $(editor_DEPS) thirdparty/download/Eluant.dll
|
||||||
editor_EXTRA = -resource:OpenRA.Editor.Form1.resources -resource:OpenRA.Editor.MapSelect.resources
|
editor_EXTRA = -resource:OpenRA.Editor.Form1.resources -resource:OpenRA.Editor.MapSelect.resources
|
||||||
editor_FLAGS = -win32icon:OpenRA.Editor/OpenRA.Editor.Icon.ico
|
editor_FLAGS = -win32icon:OpenRA.Editor/OpenRA.Editor.Icon.ico
|
||||||
|
|
||||||
@@ -240,7 +248,7 @@ utility_SRCS := $(shell find OpenRA.Utility/ -iname '*.cs')
|
|||||||
utility_TARGET = OpenRA.Utility.exe
|
utility_TARGET = OpenRA.Utility.exe
|
||||||
utility_KIND = exe
|
utility_KIND = exe
|
||||||
utility_DEPS = $(game_TARGET)
|
utility_DEPS = $(game_TARGET)
|
||||||
utility_LIBS = $(COMMON_LIBS) $(utility_DEPS) thirdparty/ICSharpCode.SharpZipLib.dll
|
utility_LIBS = $(COMMON_LIBS) $(utility_DEPS) thirdparty/download/ICSharpCode.SharpZipLib.dll
|
||||||
PROGRAMS += utility
|
PROGRAMS += utility
|
||||||
utility: $(utility_TARGET)
|
utility: $(utility_TARGET)
|
||||||
|
|
||||||
@@ -271,38 +279,47 @@ $(foreach prog,$(PROGRAMS),$(eval $(call BUILD_ASSEMBLY,$(prog))))
|
|||||||
|
|
||||||
########################## MAKE/INSTALL RULES ##########################
|
########################## MAKE/INSTALL RULES ##########################
|
||||||
#
|
#
|
||||||
default: dependencies core
|
default: core
|
||||||
|
|
||||||
core: game renderers mods utility
|
core: game renderers mods utility
|
||||||
|
|
||||||
tools: editor gamemonitor
|
tools: editor gamemonitor
|
||||||
|
|
||||||
package: cli-dependencies core editor gamemonitor docs version
|
package: all-dependencies core tools docs version
|
||||||
|
|
||||||
mods: mod_common mod_ra mod_cnc mod_d2k mod_ts
|
mods: mod_common mod_ra mod_cnc mod_d2k mod_ts
|
||||||
|
|
||||||
all: cli-dependencies core tools
|
all: dependencies core tools
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
@-$(RM_F) *.exe *.dll ./OpenRA*/*.dll ./OpenRA*/*.mdb *.mdb mods/**/*.dll mods/**/*.mdb *.resources
|
@-$(RM_F) *.exe *.dll *.dylib *.config ./OpenRA*/*.dll ./OpenRA*/*.mdb *.mdb mods/**/*.dll mods/**/*.mdb *.resources
|
||||||
@-$(RM_RF) ./*/bin ./*/obj
|
@-$(RM_RF) ./*/bin ./*/obj
|
||||||
@-$(RM_F) ./thirdparty/*.dll
|
@-$(RM_RF) ./thirdparty/download
|
||||||
@-$(RM_RF) ./thirdparty/windows
|
|
||||||
|
|
||||||
distclean: clean
|
distclean: clean
|
||||||
|
|
||||||
dependencies: cli-dependencies native-dependencies
|
cli-dependencies:
|
||||||
|
@./thirdparty/fetch-thirdparty-deps.sh
|
||||||
|
@ $(CP_R) thirdparty/download/*.dll .
|
||||||
|
@ $(CP_R) thirdparty/download/*.dll.config .
|
||||||
|
@ $(CP) thirdparty/SDL2-CS.dll.config .
|
||||||
|
|
||||||
|
linux-dependencies: cli-dependencies linux-native-dependencies
|
||||||
|
|
||||||
|
linux-native-dependencies:
|
||||||
|
@./thirdparty/configure-linux-native-deps.sh
|
||||||
|
|
||||||
windows-dependencies:
|
windows-dependencies:
|
||||||
cd thirdparty && ./fetch-thirdparty-deps-windows.sh && cd ..
|
@./thirdparty/fetch-thirdparty-deps-windows.sh
|
||||||
|
|
||||||
cli-dependencies:
|
osx-dependencies: cli-dependencies
|
||||||
cd thirdparty && ./fetch-thirdparty-deps.sh && cd ..
|
@./thirdparty/fetch-thirdparty-deps-osx.sh
|
||||||
@ $(CP_R) thirdparty/*.dll .
|
@ $(CP_R) thirdparty/download/osx/*.dylib .
|
||||||
@ $(CP_R) thirdparty/*.dll.config .
|
@ $(CP_R) thirdparty/download/osx/*.dll.config .
|
||||||
|
|
||||||
native-dependencies:
|
dependencies: $(os-dependencies)
|
||||||
@./thirdparty/configure-native-deps.sh
|
|
||||||
|
all-dependencies: cli-dependencies windows-dependencies osx-dependencies
|
||||||
|
|
||||||
version: mods/ra/mod.yaml mods/cnc/mod.yaml mods/d2k/mod.yaml mods/modchooser/mod.yaml
|
version: mods/ra/mod.yaml mods/cnc/mod.yaml mods/d2k/mod.yaml mods/modchooser/mod.yaml
|
||||||
@for i in $? ; do \
|
@for i in $? ; do \
|
||||||
|
|||||||
@@ -59,7 +59,7 @@
|
|||||||
<Reference Include="System.Windows.Forms" />
|
<Reference Include="System.Windows.Forms" />
|
||||||
<Reference Include="System.Xml" />
|
<Reference Include="System.Xml" />
|
||||||
<Reference Include="Eluant">
|
<Reference Include="Eluant">
|
||||||
<HintPath>..\thirdparty\Eluant.dll</HintPath>
|
<HintPath>..\thirdparty\download\Eluant.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -48,33 +48,33 @@
|
|||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
<Reference Include="SharpFont">
|
<Reference Include="SharpFont">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\thirdparty\SharpFont.dll</HintPath>
|
<HintPath>..\thirdparty\download\SharpFont.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Mono.Nat">
|
<Reference Include="Mono.Nat">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
<Package>mono.nat</Package>
|
<Package>mono.nat</Package>
|
||||||
<HintPath>..\thirdparty\Mono.Nat.dll</HintPath>
|
<HintPath>..\thirdparty\download\Mono.Nat.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Eluant">
|
<Reference Include="Eluant">
|
||||||
<HintPath>..\thirdparty\Eluant.dll</HintPath>
|
<HintPath>..\thirdparty\download\Eluant.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="ICSharpCode.SharpZipLib">
|
<Reference Include="ICSharpCode.SharpZipLib">
|
||||||
<HintPath>..\thirdparty\ICSharpCode.SharpZipLib.dll</HintPath>
|
<HintPath>..\thirdparty\download\ICSharpCode.SharpZipLib.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="MaxMind.GeoIP2">
|
<Reference Include="MaxMind.GeoIP2">
|
||||||
<HintPath>..\thirdparty\MaxMind.GeoIP2.dll</HintPath>
|
<HintPath>..\thirdparty\download\MaxMind.GeoIP2.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="MaxMind.Db">
|
<Reference Include="MaxMind.Db">
|
||||||
<HintPath>..\thirdparty\MaxMind.Db.dll</HintPath>
|
<HintPath>..\thirdparty\download\MaxMind.Db.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="SDL2-CS">
|
<Reference Include="SDL2-CS">
|
||||||
<HintPath>..\thirdparty\SDL2-CS.dll</HintPath>
|
<HintPath>..\thirdparty\download\SDL2-CS.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -54,7 +54,7 @@
|
|||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
<Reference Include="Eluant">
|
<Reference Include="Eluant">
|
||||||
<HintPath>..\thirdparty\Eluant.dll</HintPath>
|
<HintPath>..\thirdparty\download\Eluant.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="FuzzyLogicLibrary">
|
<Reference Include="FuzzyLogicLibrary">
|
||||||
<HintPath>..\thirdparty\FuzzyLogicLibrary.dll</HintPath>
|
<HintPath>..\thirdparty\download\FuzzyLogicLibrary.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
@@ -42,22 +42,22 @@
|
|||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
<Reference Include="System.Xml" />
|
<Reference Include="System.Xml" />
|
||||||
<Reference Include="Eluant">
|
<Reference Include="Eluant">
|
||||||
<HintPath>..\thirdparty\Eluant.dll</HintPath>
|
<HintPath>..\thirdparty\download\Eluant.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="StyleCop">
|
<Reference Include="StyleCop">
|
||||||
<HintPath>..\thirdparty\StyleCop.dll</HintPath>
|
<HintPath>..\thirdparty\download\StyleCop.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="MaxMind.GeoIP2">
|
<Reference Include="MaxMind.GeoIP2">
|
||||||
<HintPath>..\thirdparty\MaxMind.GeoIP2.dll</HintPath>
|
<HintPath>..\thirdparty\download\MaxMind.GeoIP2.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="Mono.Nat">
|
<Reference Include="Mono.Nat">
|
||||||
<HintPath>..\thirdparty\Mono.Nat.dll</HintPath>
|
<HintPath>..\thirdparty\download\Mono.Nat.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="ICSharpCode.SharpZipLib">
|
<Reference Include="ICSharpCode.SharpZipLib">
|
||||||
<HintPath>..\thirdparty\ICSharpCode.SharpZipLib.dll</HintPath>
|
<HintPath>..\thirdparty\download\ICSharpCode.SharpZipLib.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -55,7 +55,7 @@
|
|||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
<Reference Include="Eluant">
|
<Reference Include="Eluant">
|
||||||
<HintPath>..\thirdparty\Eluant.dll</HintPath>
|
<HintPath>..\thirdparty\download\Eluant.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -52,7 +52,7 @@
|
|||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
<Reference Include="Eluant">
|
<Reference Include="Eluant">
|
||||||
<HintPath>..\thirdparty\Eluant.dll</HintPath>
|
<HintPath>..\thirdparty\download\Eluant.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
<Reference Include="System.Core" />
|
<Reference Include="System.Core" />
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
<Reference Include="Eluant">
|
<Reference Include="Eluant">
|
||||||
<HintPath>..\thirdparty\Eluant.dll</HintPath>
|
<HintPath>..\thirdparty\download\Eluant.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -24,7 +24,7 @@
|
|||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.Drawing" />
|
<Reference Include="System.Drawing" />
|
||||||
<Reference Include="SDL2-CS">
|
<Reference Include="SDL2-CS">
|
||||||
<HintPath>..\thirdparty\SDL2-CS.dll</HintPath>
|
<HintPath>..\thirdparty\download\SDL2-CS.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|||||||
@@ -24,12 +24,12 @@
|
|||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Reference Include="Eluant, Version=1.0.5229.27703, Culture=neutral, processorArchitecture=MSIL">
|
<Reference Include="Eluant, Version=1.0.5229.27703, Culture=neutral, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\thirdparty\Eluant.dll</HintPath>
|
<HintPath>..\thirdparty\download\Eluant.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="nunit.framework, Version=2.6.3.13283, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
|
<Reference Include="nunit.framework, Version=2.6.3.13283, Culture=neutral, PublicKeyToken=96d09a1eb7f44a77, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\thirdparty\nunit.framework.dll</HintPath>
|
<HintPath>..\thirdparty\download\nunit.framework.dll</HintPath>
|
||||||
<Private>False</Private>
|
<Private>False</Private>
|
||||||
</Reference>
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
|
|||||||
@@ -8,8 +8,7 @@ install:
|
|||||||
cache:
|
cache:
|
||||||
- nsissetup.exe -> appveyor.yaml
|
- nsissetup.exe -> appveyor.yaml
|
||||||
- NsProcess.zip -> appveyor.yaml
|
- NsProcess.zip -> appveyor.yaml
|
||||||
- thirdparty -> thirdparty\fetch-thirdparty-deps.ps1
|
- thirdparty\download -> thirdparty\fetch-thirdparty-deps.ps1
|
||||||
- thirdparty\windows -> thirdparty\fetch-thirdparty-deps.ps1
|
|
||||||
|
|
||||||
before_build:
|
before_build:
|
||||||
- make dependencies
|
- make dependencies
|
||||||
@@ -36,7 +35,7 @@ after_test:
|
|||||||
- if not exist NsProcess.zip appveyor DownloadFile "http://nsis.sourceforge.net/mediawiki/images/archive/1/18/20140806212030!NsProcess.zip" -FileName NsProcess.zip
|
- if not exist NsProcess.zip appveyor DownloadFile "http://nsis.sourceforge.net/mediawiki/images/archive/1/18/20140806212030!NsProcess.zip" -FileName NsProcess.zip
|
||||||
- 7z x NsProcess.zip -o%NSIS_ROOT% -y
|
- 7z x NsProcess.zip -o%NSIS_ROOT% -y
|
||||||
- move /Y %NSIS_ROOT%\Plugin\nsProcess.dll %NSIS_ROOT%\Plugins\nsProcess.dll
|
- move /Y %NSIS_ROOT%\Plugin\nsProcess.dll %NSIS_ROOT%\Plugins\nsProcess.dll
|
||||||
- '%NSIS_ROOT%\makensis /DSRCDIR="%APPVEYOR_BUILD_FOLDER%" /DDEPSDIR="%APPVEYOR_BUILD_FOLDER%\thirdparty\windows" /V3 packaging/windows/OpenRA.nsi'
|
- '%NSIS_ROOT%\makensis /DSRCDIR="%APPVEYOR_BUILD_FOLDER%" /DDEPSDIR="%APPVEYOR_BUILD_FOLDER%\thirdparty\download\windows" /V3 packaging/windows/OpenRA.nsi'
|
||||||
- move /Y %APPVEYOR_BUILD_FOLDER%\packaging\windows\OpenRA.Setup.exe %APPVEYOR_BUILD_FOLDER%\OpenRA-%APPVEYOR_REPO_TAG_NAME%.exe
|
- move /Y %APPVEYOR_BUILD_FOLDER%\packaging\windows\OpenRA.Setup.exe %APPVEYOR_BUILD_FOLDER%\OpenRA-%APPVEYOR_REPO_TAG_NAME%.exe
|
||||||
|
|
||||||
artifacts:
|
artifacts:
|
||||||
|
|||||||
9
make.ps1
9
make.ps1
@@ -74,10 +74,9 @@ elseif ($command -eq "clean")
|
|||||||
rm *.dll
|
rm *.dll
|
||||||
rm *.config
|
rm *.config
|
||||||
rm mods/*/*.dll
|
rm mods/*/*.dll
|
||||||
rm thirdparty/*.dll
|
if (Test-Path -Path thirdparty/download/)
|
||||||
if(Test-Path -Path thirdparty/windows/)
|
|
||||||
{
|
{
|
||||||
rmdir thirdparty/windows/ -Recurse
|
rmdir thirdparty/download -Recurse -Force
|
||||||
}
|
}
|
||||||
echo "Clean complete."
|
echo "Clean complete."
|
||||||
}
|
}
|
||||||
@@ -116,8 +115,8 @@ elseif ($command -eq "dependencies")
|
|||||||
{
|
{
|
||||||
cd thirdparty
|
cd thirdparty
|
||||||
./fetch-thirdparty-deps.ps1
|
./fetch-thirdparty-deps.ps1
|
||||||
cp *.dll ..
|
cp download/*.dll ..
|
||||||
cp windows/*.dll ..
|
cp download/windows/*.dll ..
|
||||||
cd ..
|
cd ..
|
||||||
echo "Dependencies copied."
|
echo "Dependencies copied."
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,28 +47,29 @@ for i in "${FILES[@]}"; do
|
|||||||
done
|
done
|
||||||
|
|
||||||
# SharpZipLib for zip file support
|
# SharpZipLib for zip file support
|
||||||
cp thirdparty/ICSharpCode.SharpZipLib.dll packaging/built
|
cp thirdparty/download/ICSharpCode.SharpZipLib.dll packaging/built
|
||||||
|
|
||||||
# FuzzyLogicLibrary for improved AI
|
# FuzzyLogicLibrary for improved AI
|
||||||
cp thirdparty/FuzzyLogicLibrary.dll packaging/built
|
cp thirdparty/download/FuzzyLogicLibrary.dll packaging/built
|
||||||
|
|
||||||
# SharpFont for FreeType support
|
# SharpFont for FreeType support
|
||||||
cp thirdparty/SharpFont* packaging/built
|
cp thirdparty/download/SharpFont* packaging/built
|
||||||
|
|
||||||
# SDL2-CS
|
# SDL2-CS
|
||||||
|
cp thirdparty/download/SDL2-CS* packaging/built
|
||||||
cp thirdparty/SDL2-CS* packaging/built
|
cp thirdparty/SDL2-CS* packaging/built
|
||||||
|
|
||||||
# Mono.NAT for UPnP support
|
# Mono.NAT for UPnP support
|
||||||
cp thirdparty/Mono.Nat.dll packaging/built
|
cp thirdparty/download/Mono.Nat.dll packaging/built
|
||||||
|
|
||||||
# Eluant (Lua integration)
|
# Eluant (Lua integration)
|
||||||
cp thirdparty/Eluant* packaging/built
|
cp thirdparty/download/Eluant* packaging/built
|
||||||
|
|
||||||
# GeoIP database access
|
# GeoIP database access
|
||||||
cp thirdparty/MaxMind.Db.dll packaging/built
|
cp thirdparty/download/MaxMind.Db.dll packaging/built
|
||||||
cp thirdparty/MaxMind.GeoIP2.dll packaging/built
|
cp thirdparty/download/MaxMind.GeoIP2.dll packaging/built
|
||||||
cp thirdparty/Newtonsoft.Json.dll packaging/built
|
cp thirdparty/download/Newtonsoft.Json.dll packaging/built
|
||||||
cp thirdparty/RestSharp.dll packaging/built
|
cp thirdparty/download/RestSharp.dll packaging/built
|
||||||
|
|
||||||
# Copy game icon for windows package
|
# Copy game icon for windows package
|
||||||
cp OpenRA.Game/OpenRA.ico packaging/built
|
cp OpenRA.Game/OpenRA.ico packaging/built
|
||||||
@@ -79,23 +80,16 @@ cp OpenRA.exe packaging/built
|
|||||||
cd packaging
|
cd packaging
|
||||||
echo "Creating packages..."
|
echo "Creating packages..."
|
||||||
|
|
||||||
if [ -x /usr/bin/makensis ]; then
|
pushd windows
|
||||||
pushd windows
|
./buildpackage.sh "$TAG" "$BUILTDIR" "$SRCDIR" "$OUTPUTDIR"
|
||||||
echo "Building Windows setup.exe"
|
if [ $? -ne 0 ]; then
|
||||||
makensis -V2 -DSRCDIR="$BUILTDIR" -DDEPSDIR="${SRCDIR}/thirdparty/windows" OpenRA.nsi
|
echo "Windows package build failed."
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
mv OpenRA.Setup.exe "$OUTPUTDIR"/OpenRA-$TAG.exe
|
|
||||||
else
|
|
||||||
echo "Windows package build failed."
|
|
||||||
fi
|
|
||||||
popd
|
|
||||||
else
|
|
||||||
echo "Skipping Windows setup.exe build due to missing NSIS"
|
|
||||||
fi
|
fi
|
||||||
|
popd
|
||||||
|
|
||||||
pushd osx
|
pushd osx
|
||||||
echo "Zipping OS X package"
|
echo "Zipping OS X package"
|
||||||
bash buildpackage.sh "$TAG" "$BUILTDIR" "$OUTPUTDIR"
|
./buildpackage.sh "$TAG" "$BUILTDIR" "$OUTPUTDIR"
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
echo "OS X package build failed."
|
echo "OS X package build failed."
|
||||||
fi
|
fi
|
||||||
@@ -103,7 +97,7 @@ popd
|
|||||||
|
|
||||||
pushd linux
|
pushd linux
|
||||||
echo "Building Linux packages"
|
echo "Building Linux packages"
|
||||||
bash buildpackage.sh "$TAG" "$BUILTDIR" "$OUTPUTDIR"
|
./buildpackage.sh "$TAG" "$BUILTDIR" "$OUTPUTDIR"
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
echo "Linux package build failed."
|
echo "Linux package build failed."
|
||||||
fi
|
fi
|
||||||
|
|||||||
25
packaging/windows/buildpackage.sh
Executable file
25
packaging/windows/buildpackage.sh
Executable file
@@ -0,0 +1,25 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
TAG="$1"
|
||||||
|
BUILTDIR="$2"
|
||||||
|
SRCDIR="$3"
|
||||||
|
OUTPUTDIR="$4"
|
||||||
|
|
||||||
|
if [ -x /usr/bin/makensis ]; then
|
||||||
|
pushd "$SRCDIR" >/dev/null
|
||||||
|
popd >/dev/null
|
||||||
|
if [[ ! -f /usr/share/nsis/Include/nsProcess.nsh && ! -f /usr/share/nsis/Plugin/nsProcess.dll ]]; then
|
||||||
|
echo "Installing NsProcess NSIS plugin in /usr/share/nsis"
|
||||||
|
sudo unzip -qq -o ${SRCDIR}/thirdparty/download/NsProcess.zip 'Include/*' -d /usr/share/nsis
|
||||||
|
sudo unzip -qq -j -o ${SRCDIR}/thirdparty/download/NsProcess.zip 'Plugin/*' -d /usr/share/nsis/Plugins
|
||||||
|
fi
|
||||||
|
echo "Building Windows setup.exe"
|
||||||
|
makensis -V2 -DSRCDIR="$BUILTDIR" -DDEPSDIR="${SRCDIR}/thirdparty/download/windows" OpenRA.nsi
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
mv OpenRA.Setup.exe "$OUTPUTDIR"/OpenRA-$TAG.exe
|
||||||
|
else
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
echo "Skipping Windows setup.exe build due to missing NSIS"
|
||||||
|
fi
|
||||||
@@ -27,19 +27,4 @@ if [ "$os" == 'Linux' ]; then
|
|||||||
sed "s/@LIBLUA51@/${liblua51}/" thirdparty/Eluant.dll.config.in > Eluant.dll.config
|
sed "s/@LIBLUA51@/${liblua51}/" thirdparty/Eluant.dll.config.in > Eluant.dll.config
|
||||||
echo "Eluant.dll.config has been created successfully."
|
echo "Eluant.dll.config has been created successfully."
|
||||||
fi
|
fi
|
||||||
elif [ "$os" == 'Darwin' ]; then
|
|
||||||
if [ ! -f libSDL2.dylib ]; then
|
|
||||||
echo "Fetching OS X SDL2 library from GitHub."
|
|
||||||
curl -LOs https://raw.githubusercontent.com/OpenRA/OpenRALauncherOSX/master/dependencies/libSDL2.dylib
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -f liblua.5.1.dylib ]; then
|
|
||||||
echo "Fetching OS X Lua 5.1 library from GitHub."
|
|
||||||
curl -LOs https://raw.githubusercontent.com/OpenRA/OpenRALauncherOSX/master/dependencies/liblua.5.1.dylib
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -f Eluant.dll.config ]; then
|
|
||||||
echo "Fetching OS X Lua configuration file from GitHub."
|
|
||||||
curl -LOs https://raw.githubusercontent.com/OpenRA/OpenRALauncherOSX/master/dependencies/Eluant.dll.config
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
20
thirdparty/fetch-thirdparty-deps-osx.sh
vendored
Executable file
20
thirdparty/fetch-thirdparty-deps-osx.sh
vendored
Executable file
@@ -0,0 +1,20 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
download_dir="${0%/*}/download/osx"
|
||||||
|
mkdir -p "$download_dir"
|
||||||
|
cd "$download_dir"
|
||||||
|
|
||||||
|
if [ ! -f libSDL2.dylib ]; then
|
||||||
|
echo "Fetching OS X SDL2 library from GitHub."
|
||||||
|
curl -LOs https://raw.githubusercontent.com/OpenRA/OpenRALauncherOSX/master/dependencies/libSDL2.dylib
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f liblua.5.1.dylib ]; then
|
||||||
|
echo "Fetching OS X Lua 5.1 library from GitHub."
|
||||||
|
curl -LOs https://raw.githubusercontent.com/OpenRA/OpenRALauncherOSX/master/dependencies/liblua.5.1.dylib
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f Eluant.dll.config ]; then
|
||||||
|
echo "Fetching OS X Lua configuration file from GitHub."
|
||||||
|
curl -LOs https://raw.githubusercontent.com/OpenRA/OpenRALauncherOSX/master/dependencies/Eluant.dll.config
|
||||||
|
fi
|
||||||
27
thirdparty/fetch-thirdparty-deps-windows.sh
vendored
27
thirdparty/fetch-thirdparty-deps-windows.sh
vendored
@@ -3,34 +3,39 @@
|
|||||||
# Die on any error for Travis CI to automatically retry:
|
# Die on any error for Travis CI to automatically retry:
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
if [ ! -d windows ]; then
|
download_dir="${0%/*}/download/windows"
|
||||||
mkdir windows
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ ! -f windows/SDL2.dll ]; then
|
mkdir -p "${download_dir}"
|
||||||
|
cd "${download_dir}"
|
||||||
|
|
||||||
|
if [ ! -f SDL2.dll ]; then
|
||||||
echo "Fetching SDL2 from nuget"
|
echo "Fetching SDL2 from nuget"
|
||||||
nuget install sdl2 -Version 2.0.3 -ExcludeVersion
|
nuget install sdl2 -Version 2.0.3 -ExcludeVersion
|
||||||
cp ./sdl2.redist/build/native/bin/Win32/dynamic/SDL2.dll ./windows/
|
cp ./sdl2.redist/build/native/bin/Win32/dynamic/SDL2.dll .
|
||||||
rm -rf sdl2 sdl2.redist
|
rm -rf sdl2 sdl2.redist
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -f windows/freetype6.dll ]; then
|
if [ ! -f freetype6.dll ]; then
|
||||||
echo "Fetching FreeType2 from nuget"
|
echo "Fetching FreeType2 from nuget"
|
||||||
nuget install SharpFont.Dependencies -Version 2.5.5.1 -ExcludeVersion
|
nuget install SharpFont.Dependencies -Version 2.5.5.1 -ExcludeVersion
|
||||||
cp ./SharpFont.Dependencies/bin/msvc10/x86/freetype6.dll ./windows/
|
cp ./SharpFont.Dependencies/bin/msvc10/x86/freetype6.dll .
|
||||||
rm -rf SharpFont.Dependencies
|
rm -rf SharpFont.Dependencies
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -f windows/lua51.dll ]; then
|
if [ ! -f lua51.dll ]; then
|
||||||
echo "Fetching Lua 5.1 from nuget"
|
echo "Fetching Lua 5.1 from nuget"
|
||||||
nuget install lua.binaries -Version 5.1.5 -ExcludeVersion
|
nuget install lua.binaries -Version 5.1.5 -ExcludeVersion
|
||||||
cp ./lua.binaries/bin/win32/dll8/lua5.1.dll ./windows/lua51.dll
|
cp ./lua.binaries/bin/win32/dll8/lua5.1.dll ./lua51.dll
|
||||||
rm -rf lua.binaries
|
rm -rf lua.binaries
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -f windows/soft_oal.dll ]; then
|
if [ ! -f soft_oal.dll ]; then
|
||||||
echo "Fetching OpenAL Soft from nuget"
|
echo "Fetching OpenAL Soft from nuget"
|
||||||
nuget install OpenAL-Soft -Version 1.16.0 -ExcludeVersion
|
nuget install OpenAL-Soft -Version 1.16.0 -ExcludeVersion
|
||||||
cp ./OpenAL-Soft/bin/Win32/soft_oal.dll windows/soft_oal.dll
|
cp ./OpenAL-Soft/bin/Win32/soft_oal.dll ./soft_oal.dll
|
||||||
rm -rf OpenAL-Soft
|
rm -rf OpenAL-Soft
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ ! -f ../NsProcess.zip ]; then
|
||||||
|
curl -s -L -o ../NsProcess.zip http://nsis.sourceforge.net/mediawiki/images/archive/1/18/20140806212030!NsProcess.zip
|
||||||
|
fi
|
||||||
|
|||||||
6
thirdparty/fetch-thirdparty-deps.ps1
vendored
6
thirdparty/fetch-thirdparty-deps.ps1
vendored
@@ -1,4 +1,6 @@
|
|||||||
mkdir windows -Force >$null
|
mkdir download/windows -Force >$null
|
||||||
|
|
||||||
|
cd download
|
||||||
|
|
||||||
if (!(Test-Path "nuget.exe"))
|
if (!(Test-Path "nuget.exe"))
|
||||||
{
|
{
|
||||||
@@ -127,3 +129,5 @@ if (!(Test-Path "Eluant.dll"))
|
|||||||
$target = Join-Path $pwd.ToString() "Eluant.dll"
|
$target = Join-Path $pwd.ToString() "Eluant.dll"
|
||||||
(New-Object System.Net.WebClient).DownloadFile("https://github.com/OpenRA/Eluant/releases/download/20140425/Eluant.dll", $target)
|
(New-Object System.Net.WebClient).DownloadFile("https://github.com/OpenRA/Eluant/releases/download/20140425/Eluant.dll", $target)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cd ..
|
||||||
|
|||||||
5
thirdparty/fetch-thirdparty-deps.sh
vendored
5
thirdparty/fetch-thirdparty-deps.sh
vendored
@@ -3,6 +3,11 @@
|
|||||||
# Die on any error for Travis CI to automatically retry:
|
# Die on any error for Travis CI to automatically retry:
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
|
download_dir="${0%/*}/download"
|
||||||
|
|
||||||
|
mkdir -p "${download_dir}"
|
||||||
|
cd "${download_dir}"
|
||||||
|
|
||||||
if [ ! -f StyleCopPlus.dll ]; then
|
if [ ! -f StyleCopPlus.dll ]; then
|
||||||
echo "Fetching StyleCopPlus from nuget"
|
echo "Fetching StyleCopPlus from nuget"
|
||||||
nuget install StyleCopPlus.MSBuild -Version 4.7.49.5 -ExcludeVersion
|
nuget install StyleCopPlus.MSBuild -Version 4.7.49.5 -ExcludeVersion
|
||||||
|
|||||||
Reference in New Issue
Block a user