File: amigaos.mk

package info (click to toggle)
scummvm 2.9.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 450,268 kB
  • sloc: cpp: 4,297,604; asm: 28,322; python: 12,901; sh: 11,219; java: 8,477; xml: 7,843; perl: 2,633; ansic: 2,465; yacc: 1,670; javascript: 1,020; makefile: 933; lex: 578; awk: 275; objc: 82; sed: 11; php: 1
file content (74 lines) | stat: -rw-r--r-- 2,976 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# Special target to create an AmigaOS snapshot installation.
#
# WORKAROUNDS:
#
# 'mkdir' seems to incorrectly set permissions to path/dirs on AmigaOS.
# Once a vanilla installation is created, none of the corresponding subdirs
# are found or accessible (extras, themes, plugins), instead ScummVM will
# report missing theme files and a missing valid translation.dat. Same with
# cross-partition access (which make we wonder if it's a FS bug afterall).
# Switching to AmigaOS' own "makedir" until there is a fix or other solution.
#
amigaosdist: $(EXECUTABLE) $(PLUGINS)
	# Releases should always be completely fresh installs.
	rm -rf $(AMIGAOSPATH)
	makedir all $(AMIGAOSPATH)
	$(CP) ${srcdir}/dists/amigaos/scummvm_drawer.info $(patsubst %/,%,$(AMIGAOSPATH)).info
	$(CP) ${srcdir}/dists/amigaos/scummvm.info $(AMIGAOSPATH)/$(EXECUTABLE).info
ifdef DIST_FILES_DOCS
	makedir all $(AMIGAOSPATH)/doc
	$(CP) $(DIST_FILES_DOCS) $(AMIGAOSPATH)/doc
	$(foreach lang, $(DIST_FILES_DOCS_languages), makedir all $(AMIGAOSPATH)/doc/$(lang); $(CP) $(DIST_FILES_DOCS_$(lang)) $(AMIGAOSPATH)/doc/$(lang);)
	# README.md and corresponding scripts must be in cwd
	# when building out of tree.
	$(CP) ${srcdir}/README.md README.tmp
	$(CP) ${srcdir}/dists/amigaos/md2ag.rexx .
	# (buildbot) LC_ALL is here to work around Debian bug #973647
	LC_ALL=C rx md2ag.rexx README.tmp $(AMIGAOSPATH)/doc/
	rm -f md2ag.rexx README.tmp
endif
	# Copy mandatory installation files.
	makedir all $(AMIGAOSPATH)/extras
ifdef DIST_FILES_ENGINEDATA
	$(CP) $(DIST_FILES_ENGINEDATA) $(AMIGAOSPATH)/extras
endif
ifdef DIST_FILES_NETWORKING
	$(CP) $(DIST_FILES_NETWORKING) $(AMIGAOSPATH)/extras
endif
ifdef DIST_FILES_VKEYBD
	$(CP) $(DIST_FILES_VKEYBD) $(AMIGAOSPATH)/extras
endif
ifdef DIST_FILES_THEMES
	makedir all $(AMIGAOSPATH)/themes
	$(CP) $(DIST_FILES_THEMES) $(AMIGAOSPATH)/themes
endif
ifneq ($(DIST_FILES_SHADERS),)
	makedir all $(AMIGAOSPATH)/extras/shaders
	$(CP) $(DIST_FILES_SHADERS) $(AMIGAOSPATH)/extras/shaders
endif
ifdef DYNAMIC_MODULES
	makedir all $(AMIGAOSPATH)/plugins
	# Catch edge-case when no engines/plugins are compiled
	# otherwise cp/strip will error out due to missing source files.
ifneq ($(PLUGINS),)
ifdef DEBUG_BUILD
		# Preserve all debug information on debug builds
		$(CP) $(PLUGINS) $(AMIGAOSPATH)/plugins/$(plugin)
else
		$(foreach plugin, $(PLUGINS), $(STRIP) $(plugin) -o $(AMIGAOSPATH)/$(plugin);)
endif
endif
	makedir all $(AMIGAOSPATH)/sobjs
	# AmigaOS installations, especially vanilla ones, won't have every
	# mandatory shared library in place, let alone the correct versions.
	# Extract and install compiled-in shared libraries to their own subdir.
	$(CP) ${srcdir}/dists/amigaos/install_deps.rexx .
	rx install_deps.rexx $(EXECUTABLE) $(AMIGAOSPATH)
	rm -f install_deps.rexx
endif
ifdef DEBUG_BUILD
	# Preserve all debug information on debug builds
	$(CP) $(EXECUTABLE) $(AMIGAOSPATH)/$(EXECUTABLE)
else
	$(STRIP) $(EXECUTABLE) -o $(AMIGAOSPATH)/$(EXECUTABLE)
endif