diff --git a/.travis.yml b/.travis.yml index 02949f0030..343cfb7dc5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,8 +11,8 @@ cache: apt # Run the build script # call RALint to check for YAML errors -# Test run the packaging scripts for all platforms script: + - make dependencies - make all - make test diff --git a/INSTALL.md b/INSTALL.md index e32f2633d5..ba01f4329d 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -15,7 +15,7 @@ Windows To compile OpenRA, open the `OpenRA.sln` solution in the main folder, or build it from the command-line with MSBuild. -Copy both the native DLLs from `.\packaging\windows` +Copy both the native DLLs from `.\thirdparty\windows` and the CLI images from `.\thirdparty` to the main folder. Run the game with `OpenRA.Game.exe Game.Mod=ra` for Red Alert @@ -24,7 +24,7 @@ or `OpenRA.Game.exe Game.Mod=cnc` for Tiberian Dawn. Linux ===== -To grab the bundled CLI DLLs type `make dependencies`. +Run `./configure` to map the native libraries to your system. To compile OpenRA, run `make all` from the command line. Run with either `launch-game.sh' or `mono --debug OpenRA.Game.exe'. diff --git a/Makefile b/Makefile index b1a07b2c03..a69c456d09 100644 --- a/Makefile +++ b/Makefile @@ -251,7 +251,7 @@ $(foreach prog,$(PROGRAMS),$(eval $(call BUILD_ASSEMBLY,$(prog)))) ########################## MAKE/INSTALL RULES ########################## # -default: dependencies core +default: cli-dependencies core core: game renderers mods utility ralint @@ -261,7 +261,7 @@ package: dependencies core editor crashdialog docs version mods: mod_ra mod_cnc mod_d2k mod_ts -all: dependencies core tools +all: cli-dependencies core tools clean: @-$(RM_F) *.exe *.dll ./OpenRA*/*.dll ./OpenRA*/*.mdb *.mdb mods/**/*.dll mods/**/*.mdb *.resources @@ -274,8 +274,13 @@ ifeq ($(shell uname),Darwin) platformdeps = "osx" endif -dependencies: - @ $(CP_R) thirdparty/*.dl* . +dependencies: cli-dependencies native-dependencies + +cli-dependencies: + @ $(CP_R) thirdparty/*.dll . + @ $(CP_R) thirdparty/*.dll.config . + +native-dependencies: @ $(CP_R) thirdparty/${platformdeps}/* . version: mods/ra/mod.yaml mods/cnc/mod.yaml mods/d2k/mod.yaml mods/modchooser/mod.yaml @@ -314,20 +319,19 @@ install-core: default @$(CP_R) glsl "$(DATA_INSTALL_DIR)" @$(CP_R) lua "$(DATA_INSTALL_DIR)" @$(CP) *.ttf "$(DATA_INSTALL_DIR)" - @$(CP) thirdparty/SDL2-CS* "$(DATA_INSTALL_DIR)" - @$(CP) thirdparty/Eluant* "$(DATA_INSTALL_DIR)" - @$(INSTALL_PROGRAM) thirdparty/ICSharpCode.SharpZipLib.dll "$(DATA_INSTALL_DIR)" - @$(INSTALL_PROGRAM) thirdparty/FuzzyLogicLibrary.dll "$(DATA_INSTALL_DIR)" - @$(INSTALL_PROGRAM) thirdparty/SharpFont.dll "$(DATA_INSTALL_DIR)" - @$(CP) thirdparty/SharpFont.dll.config "$(DATA_INSTALL_DIR)" - @$(INSTALL_PROGRAM) thirdparty/Mono.Nat.dll "$(DATA_INSTALL_DIR)" - @$(INSTALL_PROGRAM) thirdparty/KopiLua.dll "$(DATA_INSTALL_DIR)" - @$(INSTALL_PROGRAM) thirdparty/NLua.dll "$(DATA_INSTALL_DIR)" - @$(INSTALL_PROGRAM) thirdparty/MaxMind.Db.dll "$(DATA_INSTALL_DIR)" - @$(INSTALL_PROGRAM) thirdparty/MaxMind.GeoIP2.dll "$(DATA_INSTALL_DIR)" - @$(INSTALL_PROGRAM) thirdparty/Newtonsoft.Json.dll "$(DATA_INSTALL_DIR)" - @$(INSTALL_PROGRAM) thirdparty/RestSharp.dll "$(DATA_INSTALL_DIR)" - @$(CP) thirdparty/${platformdeps}/* "$(DATA_INSTALL_DIR)" + @$(CP) SDL2-CS* "$(DATA_INSTALL_DIR)" + @$(CP) Eluant* "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) ICSharpCode.SharpZipLib.dll "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) FuzzyLogicLibrary.dll "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) SharpFont.dll "$(DATA_INSTALL_DIR)" + @$(CP) SharpFont.dll.config "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) Mono.Nat.dll "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) KopiLua.dll "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) NLua.dll "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) MaxMind.Db.dll "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) MaxMind.GeoIP2.dll "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) Newtonsoft.Json.dll "$(DATA_INSTALL_DIR)" + @$(INSTALL_PROGRAM) RestSharp.dll "$(DATA_INSTALL_DIR)" ifeq ($(shell uname),Linux) @$(CP) *.sh "$(DATA_INSTALL_DIR)" diff --git a/packaging/linux/buildpackage.sh b/packaging/linux/buildpackage.sh index cc38f3f577..870949f36f 100755 --- a/packaging/linux/buildpackage.sh +++ b/packaging/linux/buildpackage.sh @@ -21,6 +21,8 @@ cd ../.. # Copy files for OpenRA.Game.exe and OpenRA.Editor.exe as well as all dependencies. make install-all prefix="/usr" DESTDIR="$PWD/packaging/linux/$ROOTDIR" +cp $DEPSDIR/* $PWD/packaging/linux/$ROOTDIR/usr/lib/openra/ + # Icons and .desktop files make install-shortcuts prefix="/usr" DESTDIR="$PWD/packaging/linux/$ROOTDIR"