~ubuntu-branches/ubuntu/wily/openttd-opensfx/wily

« back to all changes in this revision

Viewing changes to .pc/install-mkdir.patch/Makefile

  • Committer: Bazaar Package Importer
  • Author(s): Matthijs Kooijman
  • Date: 2010-02-23 22:09:04 UTC
  • Revision ID: james.westby@ubuntu.com-20100223220904-vhwut6vr5fbu6hj3
Tags: 0.2.1-1
Initial release (Closes: #571144)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# Makefile for OpenSFX set
 
2
 
 
3
MAKEFILELOCAL=Makefile.local
 
4
MAKEFILECONFIG=Makefile.config
 
5
 
 
6
SHELL = /bin/sh
 
7
 
 
8
# Add some OS detection and guess an install path (use the system's default)
 
9
OSTYPE=$(shell uname -s)
 
10
ifeq ($(OSTYPE),Linux)
 
11
INSTALLDIR=$(HOME)/.openttd/data
 
12
else
 
13
ifeq ($(OSTYPE),Darwin)
 
14
INSTALLDIR=$(HOME)/Documents/OpenTTD/data
 
15
else
 
16
ifeq ($(shell echo "$(OSTYPE)" | cut -d_ -f1),MINGW32)
 
17
INSTALLDIR=C:\Documents and Settings\$(USERNAME)\My Documents\OpenTTD\data
 
18
else
 
19
INSTALLDIR=
 
20
endif
 
21
endif
 
22
endif
 
23
 
 
24
# define a few repository references used also in makefile.config
 
25
CAT_REVISION = $(shell hg parent --template="{rev}\n")
 
26
CAT_MODIFIED = $(shell [ -n "`hg status '.' | grep -v '^?'`" ] && echo "M" || echo "")
 
27
REPO_TAGS    = $(shell hg parent --template="{tags}" | grep -v "tip" | cut -d\  -f1)
 
28
 
 
29
include ${MAKEFILECONFIG}
 
30
 
 
31
# OS detection: Cygwin vs Linux
 
32
ISCYGWIN = $(shell [ ! -d /cygdrive/ ]; echo $$?)
 
33
CATCODEC = $(shell [ \( $(ISCYGWIN) -eq 1 \) ] && echo catcodec.exe || echo catcodec)
 
34
 
 
35
# this overrides definitions from above:
 
36
-include ${MAKEFILELOCAL}
 
37
 
 
38
CAT_FILENAME   = $(addsuffix .$(CAT_SUFFIX),$(FILENAME))
 
39
SFO_FILENAME   = $(addsuffix .$(SFO_SUFFIX),$(FILENAME))
 
40
DIR_BASE       = $(FILENAME)-
 
41
VERSION_STRING = $(shell [ -n "$(REPO_TAGS)" ] && echo $(REPO_TAGS)$(CAT_MODIFIED) || echo $(CAT_NIGHTLYNAME)-r$(CAT_REVISION)$(CAT_MODIFIED))
 
42
DIR_NAME       = $(shell [ -n "$(REPO_TAGS)" ] && echo $(DIR_BASE)$(VERSION_STRING) || echo $(DIR_BASE)$(CAT_NIGHTLYNAME))
 
43
DIR_NAME_SRC   = $(DIR_BASE)$(VERSION_STRING)-source
 
44
# Tarname has no version: overwrite for make install
 
45
TAR_FILENAME   = $(DIR_NAME).$(TAR_SUFFIX)
 
46
# The release filenames bear the version being built.
 
47
ZIP_FILENAME   = $(DIR_BASE)$(VERSION_STRING).$(ZIP_SUFFIX)
 
48
BZIP_FILENAME  = $(DIR_BASE)$(VERSION_STRING).$(BZIP2_SUFFIX)
 
49
 
 
50
REPO_DIRS    = $(dir $(BUNDLE_FILES))
 
51
 
 
52
-include ${MAKEFILELOCAL}
 
53
 
 
54
vpath
 
55
vpath %.pfno $(SRCDIR)
 
56
vpath %.nfo $(SRCDIR)
 
57
 
 
58
.PHONY: clean all bundle bundle_tar bundle_zip bundle_bzip install release release_zip remake test
 
59
 
 
60
# Now, the fun stuff:
 
61
 
 
62
# Target for all:
 
63
all : $(OBS_FILE)
 
64
 
 
65
test :
 
66
        $(_E) "Call of catcodec:             $(CATCODEC) $(CATCODEC_FLAGS)"
 
67
        $(_E) "Local installation directory: $(INSTALLDIR)"
 
68
        $(_E) "Repository revision:          r$(CAT_REVISION)"
 
69
        $(_E) "CAT title:                    $(CAT_TITLE)"
 
70
        $(_E) "CAT filenames:                $(CAT_FILENAME)"
 
71
        $(_E) "Documentation filenames:      $(DOC_FILENAMES)"
 
72
        $(_E) "sfo files:                    $(SFO_FILENAME)"
 
73
        $(_E) "dep files:                    $(DEP_FILENAMES)"
 
74
        $(_E) "Bundle files:                 $(BUNDLE_FILES)"
 
75
        $(_E) "Bundle filenames:             Tar=$(TAR_FILENAME) Zip=$(ZIP_FILENAME) Bz2=$(BZIP_FILENAME)"
 
76
        $(_E) "Dirs (base and full):         $(DIR_BASE) / $(DIR_NAME)"
 
77
        $(_E) "Path to Unix2Dos:             $(UNIX2DOS)"
 
78
        $(_E) "===="
 
79
 
 
80
$(OBS_FILE) : $(SRCDIR)/$(CAT_FILENAME) $(DESC_FILENAME) $(README_FILENAME) $(CHANGELOG_FILENAME) $(LICENSE_FILENAME)
 
81
        $(_E) "[Generating:] $(OBS_FILE)"
 
82
        @echo "[metadata]" > $(OBS_FILE)
 
83
        @echo "name        = $(CAT_NAME)" >> $(OBS_FILE)
 
84
        @echo "shortname   = $(CAT_SHORTNAME)" >> $(OBS_FILE)
 
85
        @echo "version     = $(CAT_REVISION)" >> $(OBS_FILE)
 
86
        @echo "description = $(CAT_DESCRIPTION) [$(CAT_TITLE)]" >> $(OBS_FILE)
 
87
 
 
88
        @echo "" >> $(OBS_FILE)
 
89
        @echo "[files]" >> $(OBS_FILE)
 
90
        @echo "samples     = $(CAT_FILENAME)" >> $(OBS_FILE)
 
91
 
 
92
        @echo "" >> $(OBS_FILE)
 
93
        @echo "[md5s]" >> $(OBS_FILE)
 
94
        @echo "$(CAT_FILENAME) = "`$(MD5SUM) $(SRCDIR)/$(CAT_FILENAME) | cut -f1 -d\  ` >> $(OBS_FILE)
 
95
 
 
96
        @echo "" >> $(OBS_FILE)
 
97
        @echo "[origin]" >> $(OBS_FILE)
 
98
        @echo "$(CAT_ORIGIN)" >> $(OBS_FILE)
 
99
        $(_E) "[Done] Basesound successfully generated."
 
100
        $(_E) ""
 
101
 
 
102
%.$(DEP_SUFFIX) : $(SRCDIR)/%.$(SFO_SUFFIX)
 
103
        $(_E) "[Depend] $(@:$(DEP_SUFFIX)=$(CAT_SUFFIX))"
 
104
        $(_V) grep "wav" $< | cut -f1 -d\  | sed 's@"@@g;s@^@$(<) $(@:%.$(DEP_SUFFIX)=$(SRCDIR)/%.$(CAT_SUFFIX)) : @' | sort | uniq > $@
 
105
 
 
106
#"
 
107
# Compile CAT
 
108
%.$(CAT_SUFFIX) : %.$(SFO_SUFFIX)
 
109
        $(_E) "[Generating] $@"
 
110
        $(_V)$(CATCODEC) $(CATCODEC_FLAGS) $@
 
111
        $(_E)
 
112
 
 
113
# NFORENUM process copy of the NFO
 
114
.SECONDARY: %.$(SFO_SUFFIX)
 
115
.PRECIOUS: %.$(SFO_SUFFIX)
 
116
 
 
117
# Clean the source tree
 
118
clean:
 
119
        $(_E) "[Cleaning]"
 
120
        $(_V)-rm -rf *.orig *.pre *.bak *.cat *~ $(FILENAME).* $(DEP_FILENAMES) $(SRCDIR)/$(CAT_FILENAME) $(SRCDIR)/*.bak
 
121
 
 
122
mrproper: clean
 
123
        $(_V)-rm -rf $(DIR_BASE)* $(SRCDIR)/$(CAT_FILENAME) $(OBS_FILE) $(DIR_NAME_SRC)
 
124
 
 
125
$(DIR_NAME) : $(BUNDLE_FILES)
 
126
        $(_E) "[BUNDLE]"
 
127
        $(_E) "[Generating:] $@/."
 
128
        $(_V)if [ -e $@ ]; then rm -rf $@; fi
 
129
        $(_V)mkdir $@
 
130
        $(_V)-for i in $(BUNDLE_FILES); do cp $$i $@; done
 
131
bundle: $(DIR_NAME)
 
132
 
 
133
#%.$(TXT_SUFFIX): %.$(PTXT_SUFFIX)
 
134
#       $(_E) "[Generating:] $@"
 
135
#       $(_V) cat $< \
 
136
#               | sed -e "s/$(CAT_TITLE_DUMMY)/$(CAT_TITLE)/" \
 
137
#               | sed -e "s/$(OBS_FILE_DUMMY)/$(OBS_FILE)/" \
 
138
#               | sed -e "s/$(REVISION_DUMMY)/$(CAT_REVISION)/" \
 
139
#               > $@
 
140
 
 
141
%.$(TAR_SUFFIX): % $(BUNDLE_FILES)
 
142
# Create the release bundle with all files in one tar
 
143
        $(_E) "[Generating:] $@"
 
144
        $(_V)$(TAR) $(TAR_FLAGS) $@ $(basename $@)
 
145
        $(_E)
 
146
 
 
147
bundle_tar: $(TAR_FILENAME)
 
148
bundle_zip: $(ZIP_FILENAME)
 
149
$(ZIP_FILENAME): $(DIR_NAME)
 
150
        $(_E) "[Generating:] $@"
 
151
        $(_V)$(ZIP) $(ZIP_FLAGS) $@ $^
 
152
bundle_bzip: $(BZIP_FILENAME)
 
153
$(BZIP_FILENAME): $(TAR_FILENAME)
 
154
        $(_E) "[Generating:] $@"
 
155
        $(_V)$(BZIP) $(BZIP_FLAGS) $^
 
156
 
 
157
# Installation process
 
158
install: $(TAR_FILENAME) $(INSTALLDIR)
 
159
        $(_E) "[INSTALL] to $(INSTALLDIR)"
 
160
        $(_V)-cp $(TAR_FILENAME) $(INSTALLDIR)
 
161
        $(_E)
 
162
 
 
163
bundle_src:
 
164
        $(_V) rm -rf $(DIR_NAME_SRC)
 
165
        $(_V) mkdir -p $(DIR_NAME_SRC)
 
166
        $(_V) cp -R $(SRCDIR) $(DOCDIR) Makefile Makefile.config $(DIR_NAME_SRC)
 
167
        $(_V) cp Makefile.local.sample $(DIR_NAME_SRC)/Makefile.local
 
168
        $(_V) echo 'CAT_REVISION = $(CAT_REVISION)' >> $(DIR_NAME_SRC)/Makefile.local
 
169
        $(_V) echo 'CAT_MODIFIED = $(CAT_MODIFIED)' >> $(DIR_NAME_SRC)/Makefile.local
 
170
        $(_V) echo 'REPO_TAGS    = $(REPO_TAGS)'    >> $(DIR_NAME_SRC)/Makefile.local
 
171
        $(_V) $(MAKE) -C $(DIR_NAME_SRC) mrproper
 
172
        $(_V) $(TAR) --gzip -cf $(DIR_NAME_SRC).tar.gz $(DIR_NAME_SRC)
 
173
        $(_V) rm -rf $(DIR_NAME_SRC)
 
174
 
 
175
 
 
176
$(INSTALLDIR):
 
177
        $(_E) "$(error Installation dir does not exist. Check your makefile.local)"
 
178
 
 
179
release-install:
 
180
        $(_E) "Target is obsolete. Use 'install' instead."
 
181
release-source:
 
182
        $(_E) "Target is obsolete. Use 'bundle_src' instead."
 
183
release_zip:
 
184
        $(_E) "Target is obsolete. Use 'bundle_zip' instead."
 
185
 
 
186
remake: clean all