430 lines
15 KiB
Makefile
430 lines
15 KiB
Makefile
############################# INSTRUCTIONS #############################
|
|
#
|
|
# to compile, run:
|
|
# make
|
|
#
|
|
# to compile with development tools, run:
|
|
# make all
|
|
#
|
|
# to check the official mods for erroneous yaml files, run:
|
|
# make test
|
|
#
|
|
# to generate documentation aimed at modders, run:
|
|
# make docs
|
|
#
|
|
# to install, run:
|
|
# make [prefix=/foo] [bindir=/bar/bin] install
|
|
#
|
|
# to install with development tools, run:
|
|
# make [prefix=/foo] [bindir=/bar/bin] install-all
|
|
#
|
|
# to install Linux desktop files and icons:
|
|
# make install-shortcuts
|
|
#
|
|
# to uninstall, run:
|
|
# make uninstall
|
|
#
|
|
# for help, run:
|
|
# make help
|
|
#
|
|
# to start the game, run:
|
|
# openra
|
|
|
|
|
|
|
|
############################## TOOLCHAIN ###############################
|
|
#
|
|
CSC = gmcs
|
|
CSFLAGS = -nologo -warn:4 -debug:full -optimize- -codepage:utf8 -unsafe -warnaserror
|
|
DEFINE = DEBUG;TRACE
|
|
COMMON_LIBS = System.dll System.Core.dll System.Drawing.dll System.Xml.dll thirdparty/ICSharpCode.SharpZipLib.dll thirdparty/FuzzyLogicLibrary.dll thirdparty/Mono.Nat.dll
|
|
|
|
|
|
|
|
######################### UTILITIES/SETTINGS ###########################
|
|
#
|
|
# install locations
|
|
prefix ?= /usr/local
|
|
datarootdir ?= $(prefix)/share
|
|
datadir ?= $(datarootdir)
|
|
bindir ?= $(prefix)/bin
|
|
libexecdir ?= $(prefix)/lib
|
|
BIN_INSTALL_DIR = $(DESTDIR)$(bindir)
|
|
# TODO: separate data and binaries properly
|
|
DATA_INSTALL_DIR = $(DESTDIR)$(libexecdir)/openra
|
|
|
|
# install tools
|
|
RM = rm
|
|
RM_R = $(RM) -r
|
|
RM_F = $(RM) -f
|
|
CP = cp
|
|
CP_R = $(CP) -r
|
|
INSTALL = install
|
|
INSTALL_DIR = $(INSTALL) -d
|
|
INSTALL_PROGRAM = $(INSTALL) -m755
|
|
INSTALL_DATA = $(INSTALL) -m644
|
|
|
|
# program targets
|
|
CORE = fileformats rcg rgl rsdl rsdl2 rnull game utility geoip irc
|
|
TOOLS = editor tsbuild ralint
|
|
|
|
VERSION = $(shell git name-rev --name-only --tags --no-undefined HEAD 2>/dev/null || echo git-`git rev-parse --short HEAD`)
|
|
|
|
|
|
|
|
######################## PROGRAM TARGET RULES ##########################
|
|
#
|
|
# Core binaries
|
|
fileformats_SRCS := $(shell find OpenRA.FileFormats/ -iname '*.cs')
|
|
fileformats_TARGET = OpenRA.FileFormats.dll
|
|
fileformats_KIND = library
|
|
fileformats_LIBS = $(COMMON_LIBS) thirdparty/Tao/Tao.Sdl.dll System.Windows.Forms.dll
|
|
PROGRAMS = fileformats
|
|
fileformats: $(fileformats_TARGET)
|
|
|
|
geoip_SRCS := $(shell find GeoIP/ -iname '*.cs')
|
|
geoip_TARGET = GeoIP.dll
|
|
geoip_KIND = library
|
|
geoip_LIBS = $(COMMON_LIBS)
|
|
PROGRAMS += geoip
|
|
geoip: $(geoip_TARGET)
|
|
|
|
game_SRCS := $(shell find OpenRA.Game/ -iname '*.cs')
|
|
game_TARGET = OpenRA.Game.exe
|
|
game_KIND = winexe
|
|
game_DEPS = $(fileformats_TARGET)
|
|
game_LIBS = $(COMMON_LIBS) System.Windows.Forms.dll $(game_DEPS) thirdparty/Tao/Tao.OpenAl.dll thirdparty/SharpFont.dll
|
|
game_FLAGS = -win32icon:OpenRA.Game/OpenRA.ico
|
|
PROGRAMS += game
|
|
game: $(game_TARGET)
|
|
|
|
irc_SRCS := $(shell find OpenRA.Irc/ -iname '*.cs')
|
|
irc_TARGET = OpenRA.Irc.dll
|
|
irc_KIND = library
|
|
irc_DEPS = $(fileformats_TARGET) $(game_TARGET)
|
|
irc_LIBS = $(COMMON_LIBS) $(irc_DEPS)
|
|
PROGRAMS += irc
|
|
irc: $(irc_TARGET)
|
|
|
|
# Renderer dlls
|
|
rsdl_SRCS := $(shell find OpenRA.Renderer.SdlCommon/ -iname '*.cs')
|
|
rsdl_TARGET = OpenRA.Renderer.SdlCommon.dll
|
|
rsdl_KIND = library
|
|
rsdl_DEPS = $(fileformats_TARGET) $(game_TARGET)
|
|
rsdl_LIBS = $(COMMON_LIBS) thirdparty/Tao/Tao.OpenGl.dll thirdparty/Tao/Tao.Sdl.dll $(rsdl_DEPS)
|
|
|
|
rcg_SRCS := $(shell find OpenRA.Renderer.Cg/ -iname '*.cs')
|
|
rcg_TARGET = OpenRA.Renderer.Cg.dll
|
|
rcg_KIND = library
|
|
rcg_DEPS = $(fileformats_TARGET) $(game_TARGET) $(rsdl_TARGET)
|
|
rcg_LIBS = $(COMMON_LIBS) thirdparty/Tao/Tao.Cg.dll thirdparty/Tao/Tao.OpenGl.dll $(rcg_DEPS)
|
|
|
|
rgl_SRCS := $(shell find OpenRA.Renderer.Gl/ -iname '*.cs')
|
|
rgl_TARGET = OpenRA.Renderer.Gl.dll
|
|
rgl_KIND = library
|
|
rgl_DEPS = $(fileformats_TARGET) $(game_TARGET) $(rsdl_TARGET)
|
|
rgl_LIBS = $(COMMON_LIBS) thirdparty/Tao/Tao.OpenGl.dll $(rgl_DEPS)
|
|
|
|
rsdl2_SRCS := $(shell find OpenRA.Renderer.Sdl2/ -iname '*.cs')
|
|
rsdl2_TARGET = OpenRA.Renderer.Sdl2.dll
|
|
rsdl2_KIND = library
|
|
rsdl2_DEPS = $(fileformats_TARGET) $(game_TARGET) $(rsdl_TARGET) $(rgl_TARGET)
|
|
rsdl2_LIBS = $(COMMON_LIBS) thirdparty/Tao/Tao.OpenGl.dll thirdparty/SDL2\#.dll $(rsdl2_DEPS)
|
|
|
|
rnull_SRCS := $(shell find OpenRA.Renderer.Null/ -iname '*.cs')
|
|
rnull_TARGET = OpenRA.Renderer.Null.dll
|
|
rnull_KIND = library
|
|
rnull_DEPS = $(fileformats_TARGET) $(game_TARGET)
|
|
rnull_LIBS = $(COMMON_LIBS) $(rnull_DEPS)
|
|
PROGRAMS += rcg rgl rsdl2 rnull rsdl
|
|
renderers: $(rcg_TARGET) $(rgl_TARGET) $(rsdl2_TARGET) $(rnull_TARGET) $(rsdl_TARGET)
|
|
|
|
|
|
##### Official Mods #####
|
|
|
|
STD_MOD_LIBS = $(fileformats_TARGET) $(game_TARGET) thirdparty/KopiLua.dll thirdparty/NLua.dll
|
|
STD_MOD_DEPS = $(STD_MOD_LIBS) $(ralint_TARGET)
|
|
|
|
# Red Alert
|
|
mod_ra_SRCS := $(shell find OpenRA.Mods.RA/ -iname '*.cs')
|
|
mod_ra_TARGET = mods/ra/OpenRA.Mods.RA.dll
|
|
mod_ra_KIND = library
|
|
mod_ra_DEPS = $(STD_MOD_DEPS) $(geoip_TARGET) $(irc_TARGET)
|
|
mod_ra_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) $(geoip_TARGET) $(irc_TARGET)
|
|
PROGRAMS += mod_ra
|
|
mod_ra: $(mod_ra_TARGET)
|
|
|
|
# Command and Conquer
|
|
mod_cnc_SRCS := $(shell find OpenRA.Mods.Cnc/ -iname '*.cs')
|
|
mod_cnc_TARGET = mods/cnc/OpenRA.Mods.Cnc.dll
|
|
mod_cnc_KIND = library
|
|
mod_cnc_DEPS = $(STD_MOD_DEPS) $(mod_ra_TARGET)
|
|
mod_cnc_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) $(mod_ra_TARGET)
|
|
PROGRAMS += mod_cnc
|
|
mod_cnc: $(mod_cnc_TARGET)
|
|
|
|
# Dune 2000
|
|
mod_d2k_SRCS := $(shell find OpenRA.Mods.D2k/ -iname '*.cs')
|
|
mod_d2k_TARGET = mods/d2k/OpenRA.Mods.D2k.dll
|
|
mod_d2k_KIND = library
|
|
mod_d2k_DEPS = $(STD_MOD_DEPS) $(mod_ra_TARGET) $(mod_cnc_TARGET)
|
|
mod_d2k_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) $(mod_ra_TARGET)
|
|
PROGRAMS += mod_d2k
|
|
mod_d2k: $(mod_d2k_TARGET)
|
|
|
|
# Tiberian Sun
|
|
mod_ts_SRCS := $(shell find OpenRA.Mods.TS/ -iname '*.cs')
|
|
mod_ts_TARGET = mods/ts/OpenRA.Mods.TS.dll
|
|
mod_ts_KIND = library
|
|
mod_ts_DEPS = $(STD_MOD_DEPS) $(mod_ra_TARGET)
|
|
mod_ts_LIBS = $(COMMON_LIBS) $(STD_MOD_LIBS) $(mod_ra_TARGET)
|
|
PROGRAMS += mod_ts
|
|
mod_ts: $(mod_ts_TARGET)
|
|
|
|
##### Tools #####
|
|
|
|
# Map Editor
|
|
editor_SRCS := $(shell find OpenRA.Editor/ -iname '*.cs')
|
|
editor_TARGET = OpenRA.Editor.exe
|
|
editor_KIND = winexe
|
|
editor_DEPS = $(fileformats_TARGET) $(game_TARGET)
|
|
editor_LIBS = $(COMMON_LIBS) System.Windows.Forms.dll System.Data.dll $(editor_DEPS)
|
|
editor_EXTRA = -resource:OpenRA.Editor.Form1.resources -resource:OpenRA.Editor.MapSelect.resources
|
|
editor_FLAGS = -win32icon:OpenRA.Editor/OpenRA.Editor.Icon.ico
|
|
|
|
PROGRAMS += editor
|
|
OpenRA.Editor.MapSelect.resources:
|
|
resgen2 OpenRA.Editor/MapSelect.resx OpenRA.Editor.MapSelect.resources 1> /dev/null
|
|
OpenRA.Editor.Form1.resources:
|
|
resgen2 OpenRA.Editor/Form1.resx OpenRA.Editor.Form1.resources 1> /dev/null
|
|
editor: OpenRA.Editor.MapSelect.resources OpenRA.Editor.Form1.resources $(editor_TARGET)
|
|
|
|
# Analyses mod yaml for easy to detect errors
|
|
ralint_SRCS := $(shell find OpenRA.Lint/ -iname '*.cs')
|
|
ralint_TARGET = OpenRA.Lint.exe
|
|
ralint_KIND = exe
|
|
ralint_DEPS = $(fileformats_TARGET) $(game_TARGET)
|
|
ralint_LIBS = $(COMMON_LIBS) $(ralint_DEPS)
|
|
PROGRAMS += ralint
|
|
ralint: $(ralint_TARGET)
|
|
|
|
test:
|
|
@echo "OpenRA.Lint: checking Red Alert mod MiniYAML..."
|
|
@mono --debug OpenRA.Lint.exe --verbose ra
|
|
@echo "OpenRA.Lint: checking Tiberian Dawn mod MiniYAML..."
|
|
@mono --debug OpenRA.Lint.exe --verbose cnc
|
|
@echo "OpenRA.Lint: checking Dune 2000 mod MiniYAML..."
|
|
@mono --debug OpenRA.Lint.exe --verbose d2k
|
|
@echo "OpenRA.Lint: checking Tiberian Sun mod MiniYAML..."
|
|
@mono --debug OpenRA.Lint.exe --verbose ts
|
|
|
|
# Builds and exports tilesets from a bitmap
|
|
tsbuild_SRCS := $(shell find OpenRA.TilesetBuilder/ -iname '*.cs')
|
|
tsbuild_TARGET = OpenRA.TilesetBuilder.exe
|
|
tsbuild_KIND = winexe
|
|
tsbuild_DEPS = $(fileformats_TARGET) $(game_TARGET)
|
|
tsbuild_LIBS = $(COMMON_LIBS) $(tsbuild_DEPS) System.Windows.Forms.dll
|
|
tsbuild_EXTRA = -resource:OpenRA.TilesetBuilder.FormBuilder.resources -resource:OpenRA.TilesetBuilder.FormNew.resources -resource:OpenRA.TilesetBuilder.Surface.resources
|
|
PROGRAMS += tsbuild
|
|
OpenRA.TilesetBuilder.FormBuilder.resources:
|
|
resgen2 OpenRA.TilesetBuilder/FormBuilder.resx OpenRA.TilesetBuilder.FormBuilder.resources 1> /dev/null
|
|
OpenRA.TilesetBuilder.FormNew.resources:
|
|
resgen2 OpenRA.TilesetBuilder/frmNew.resx OpenRA.TilesetBuilder.FormNew.resources 1> /dev/null
|
|
OpenRA.TilesetBuilder.Surface.resources:
|
|
resgen2 OpenRA.TilesetBuilder/Surface.resx OpenRA.TilesetBuilder.Surface.resources 1> /dev/null
|
|
tsbuild: OpenRA.TilesetBuilder.FormBuilder.resources OpenRA.TilesetBuilder.FormNew.resources OpenRA.TilesetBuilder.Surface.resources $(tsbuild_TARGET)
|
|
|
|
|
|
##### Launchers / Utilities #####
|
|
|
|
# Backend for the launcher apps - queries game/mod info and applies actions to an install
|
|
utility_SRCS := $(shell find OpenRA.Utility/ -iname '*.cs')
|
|
utility_TARGET = OpenRA.Utility.exe
|
|
utility_KIND = exe
|
|
utility_DEPS = $(fileformats_TARGET) $(game_TARGET)
|
|
utility_LIBS = $(COMMON_LIBS) $(utility_DEPS) thirdparty/ICSharpCode.SharpZipLib.dll System.Windows.Forms.dll
|
|
PROGRAMS += utility
|
|
utility: $(utility_TARGET)
|
|
|
|
|
|
# Patches binary headers to work around a mono bug
|
|
fixheader.exe: packaging/fixheader.cs
|
|
@echo CSC fixheader.exe
|
|
@$(CSC) packaging/fixheader.cs $(CSFLAGS) -out:fixheader.exe -t:exe $(COMMON_LIBS:%=-r:%)
|
|
|
|
# Generate build rules for each target defined above in PROGRAMS
|
|
define BUILD_ASSEMBLY
|
|
|
|
$$($(1)_TARGET): $$($(1)_SRCS) Makefile $$($(1)_DEPS) fixheader.exe
|
|
@echo CSC $$(@)
|
|
@$(CSC) $$($(1)_LIBS:%=-r:%) \
|
|
-out:$$(@) $(CSFLAGS) $$($(1)_FLAGS) \
|
|
-define:"$(DEFINE)" \
|
|
-t:"$$($(1)_KIND)" \
|
|
$$($(1)_EXTRA) \
|
|
$$($(1)_SRCS)
|
|
@mono fixheader.exe $$(@) > /dev/null
|
|
@test `echo $$(@) | sed 's/^.*\.//'` = "dll" && chmod a-x $$(@) || ``
|
|
@$$($(1)_EXTRA_CMDS)
|
|
endef
|
|
|
|
$(foreach prog,$(PROGRAMS),$(eval $(call BUILD_ASSEMBLY,$(prog))))
|
|
|
|
|
|
|
|
########################## MAKE/INSTALL RULES ##########################
|
|
#
|
|
default: dependencies core
|
|
|
|
core: game renderers mods utility
|
|
|
|
tools: editor tsbuild ralint
|
|
|
|
package: dependencies core editor docs version
|
|
|
|
mods: mod_ra mod_cnc mod_d2k mod_ts
|
|
|
|
all: dependencies core tools
|
|
|
|
clean:
|
|
@-$(RM_F) *.exe *.dll *.mdb mods/**/*.dll mods/**/*.mdb *.resources
|
|
|
|
distclean: clean
|
|
|
|
dependencies:
|
|
@ $(CP_R) thirdparty/*.dl* .
|
|
@ $(CP_R) thirdparty/Tao/* .
|
|
|
|
version: mods/ra/mod.yaml mods/cnc/mod.yaml mods/d2k/mod.yaml
|
|
@for i in $? ; do \
|
|
awk '{sub("Version:.*$$","Version: $(VERSION)"); print $0}' $${i} > $${i}.tmp && \
|
|
mv -f $${i}.tmp $${i} ; \
|
|
done
|
|
|
|
# Documentation (d2k depends on all mod libraries)
|
|
docs: utility
|
|
@mono --debug OpenRA.Utility.exe --docs d2k > DOCUMENTATION.md
|
|
|
|
install: install-core
|
|
|
|
install-all: install-core install-tools
|
|
|
|
install-core: default
|
|
@-echo "Installing OpenRA to $(DATA_INSTALL_DIR)"
|
|
@$(INSTALL_DIR) "$(DATA_INSTALL_DIR)"
|
|
@$(INSTALL_PROGRAM) $(foreach prog,$(CORE),$($(prog)_TARGET)) "$(DATA_INSTALL_DIR)"
|
|
@$(INSTALL_DIR) "$(DATA_INSTALL_DIR)/mods"
|
|
@$(CP_R) mods/cnc "$(DATA_INSTALL_DIR)/mods/"
|
|
@$(INSTALL_PROGRAM) $(mod_cnc_TARGET) "$(DATA_INSTALL_DIR)/mods/cnc"
|
|
@$(CP_R) mods/ra "$(DATA_INSTALL_DIR)/mods/"
|
|
@$(INSTALL_PROGRAM) $(mod_ra_TARGET) "$(DATA_INSTALL_DIR)/mods/ra"
|
|
@$(CP_R) mods/d2k "$(DATA_INSTALL_DIR)/mods/"
|
|
@$(INSTALL_PROGRAM) $(mod_d2k_TARGET) "$(DATA_INSTALL_DIR)/mods/d2k"
|
|
|
|
@$(INSTALL_DATA) "global mix database.dat" "$(DATA_INSTALL_DIR)/global mix database.dat"
|
|
@$(INSTALL_DATA) "GeoIP.dat" "$(DATA_INSTALL_DIR)/GeoIP.dat"
|
|
@$(INSTALL_DATA) AUTHORS "$(DATA_INSTALL_DIR)/AUTHORS"
|
|
@$(INSTALL_DATA) CHANGELOG "$(DATA_INSTALL_DIR)/CHANGELOG"
|
|
@$(INSTALL_DATA) COPYING "$(DATA_INSTALL_DIR)/COPYING"
|
|
|
|
@$(CP_R) glsl "$(DATA_INSTALL_DIR)"
|
|
@$(CP_R) cg "$(DATA_INSTALL_DIR)"
|
|
@$(CP) *.ttf "$(DATA_INSTALL_DIR)"
|
|
@$(CP) thirdparty/Tao/* "$(DATA_INSTALL_DIR)"
|
|
@$(CP) thirdparty/SDL2\#* "$(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)"
|
|
|
|
@echo "#!/bin/sh" > openra
|
|
@echo 'BINDIR=$$(dirname $$(readlink -f $$0))' >> openra
|
|
@echo 'ROOTDIR="$${BINDIR%'"$(bindir)"'}"' >> openra
|
|
@echo 'EXECDIR="$${ROOTDIR}'"$(libexecdir)"'"' >> openra
|
|
@echo 'cd "$${EXECDIR}/openra"' >> openra
|
|
@echo 'exec mono OpenRA.Game.exe "$$@"' >> openra
|
|
@$(INSTALL_DIR) "$(BIN_INSTALL_DIR)"
|
|
@$(INSTALL_PROGRAM) -m +rx openra "$(BIN_INSTALL_DIR)"
|
|
@-$(RM) openra
|
|
|
|
install-tools: tools
|
|
@-echo "Installing OpenRA tools to $(DATA_INSTALL_DIR)"
|
|
@$(INSTALL_DIR) "$(DATA_INSTALL_DIR)"
|
|
@$(INSTALL_PROGRAM) $(foreach prog,$(TOOLS),$($(prog)_TARGET)) "$(DATA_INSTALL_DIR)"
|
|
|
|
@echo "#!/bin/sh" > openra-editor
|
|
@echo 'BINDIR=$$(dirname $$(readlink -f $$0))' >> openra-editor
|
|
@echo 'ROOTDIR="$${BINDIR%'"$(bindir)"'}"' >> openra-editor
|
|
@echo 'EXECDIR="$${ROOTDIR}'"$(libexecdir)"'"' >> openra-editor
|
|
@echo 'cd "$${EXECDIR}/openra"' >> openra-editor
|
|
@echo 'exec mono OpenRA.Editor.exe "$$@"' >> openra-editor
|
|
@$(INSTALL_DIR) "$(BIN_INSTALL_DIR)"
|
|
@$(INSTALL_PROGRAM) -m +rx openra-editor "$(BIN_INSTALL_DIR)"
|
|
@-$(RM) openra-editor
|
|
|
|
install-shortcuts:
|
|
@$(INSTALL_DIR) "$(DESTDIR)$(datadir)/icons/"
|
|
@$(CP_R) packaging/linux/hicolor/ "$(DESTDIR)$(datadir)/icons"
|
|
|
|
@$(INSTALL_DIR) "$(DESTDIR)$(datadir)/applications"
|
|
@$(INSTALL_DATA) packaging/linux/openra.desktop "$(DESTDIR)$(datadir)/applications"
|
|
|
|
@$(INSTALL_DIR) "$(DESTDIR)$(datadir)/applications"
|
|
@$(INSTALL_DATA) packaging/linux/openra-editor.desktop "$(DESTDIR)$(datadir)/applications"
|
|
|
|
uninstall:
|
|
@-$(RM_R) "$(DATA_INSTALL_DIR)"
|
|
@-$(RM_F) "$(BIN_INSTALL_DIR)/openra"
|
|
@-$(RM_F) "$(BIN_INSTALL_DIR)/openra-editor"
|
|
@-$(RM_F) "$(DESTDIR)$(datadir)/applications/openra.desktop"
|
|
@-$(RM_F) "$(DESTDIR)$(datadir)/applications/openra-editor.desktop"
|
|
@-$(RM_F) "$(DESTDIR)$(datadir)/icons/hicolor/16x16/apps/openra.png"
|
|
@-$(RM_F) "$(DESTDIR)$(datadir)/icons/hicolor/32x32/apps/openra.png"
|
|
@-$(RM_F) "$(DESTDIR)$(datadir)/icons/hicolor/32x32/apps/openra-editor.png"
|
|
@-$(RM_F) "$(DESTDIR)$(datadir)/icons/hicolor/48x48/apps/openra.png"
|
|
@-$(RM_F) "$(DESTDIR)$(datadir)/icons/hicolor/48x48/apps/openra-editor.png"
|
|
@-$(RM_F) "$(DESTDIR)$(datadir)/icons/hicolor/64x64/apps/openra.png"
|
|
@-$(RM_F) "$(DESTDIR)$(datadir)/icons/hicolor/128x128/apps/openra.png"
|
|
|
|
help:
|
|
@echo to compile, run:
|
|
@echo \ \ make
|
|
@echo
|
|
@echo to compile with development tools, run:
|
|
@echo \ \ make all
|
|
@echo
|
|
@echo to check the official mods for erroneous yaml files, run:
|
|
@echo \ \ make test
|
|
@echo
|
|
@echo to generate documentation aimed at modders, run:
|
|
@echo \ \ make docs
|
|
@echo
|
|
@echo to install, run:
|
|
@echo \ \ make \[prefix=/foo\] \[bindir=/bar/bin\] install
|
|
@echo
|
|
@echo to install with development tools, run:
|
|
@echo \ \ make \[prefix=/foo\] \[bindir=/bar/bin\] install-all
|
|
@echo
|
|
@echo to install Linux desktop files and icons
|
|
@echo \ \ make install-shortcuts
|
|
@echo
|
|
@echo to uninstall, run:
|
|
@echo \ \ make uninstall
|
|
@echo
|
|
@echo to start the game, run:
|
|
@echo \ \ openra
|
|
|
|
|
|
|
|
|
|
########################### MAKEFILE SETTINGS ##########################
|
|
#
|
|
.DEFAULT_GOAL := default
|
|
|
|
.SUFFIXES:
|
|
|
|
.PHONY: core tools package all mods clean distclean dependencies version $(PROGRAMS)
|