Subversion Repositories Kolibri OS

Rev

Rev 1749 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1749 Rev 1752
Line 162... Line 162...
162
 network/VNCclient:NETWORK/VNCclient:$(PROGS)/network/VNCclient/VNCclient.asm \
162
 network/VNCclient:NETWORK/VNCclient:$(PROGS)/network/VNCclient/VNCclient.asm \
163
 network/ym:NETWORK/YM:$(PROGS)/network/ym/trunk/ym.asm \
163
 network/ym:NETWORK/YM:$(PROGS)/network/ym/trunk/ym.asm \
164
 network/zeroconf:NETWORK/ZEROCONF:$(PROGS)/network/zeroconf/trunk/zeroconf.asm \
164
 network/zeroconf:NETWORK/ZEROCONF:$(PROGS)/network/zeroconf/trunk/zeroconf.asm \
165
# end of list
165
# end of list
Line -... Line 166...
-
 
166
 
-
 
167
# The list of all NASM programs with one main NASM file.
-
 
168
# Format of an item is exactly the same as in the previous list.
-
 
169
NASM_PROGRAMS:=\
-
 
170
 demos/aclock:DEMOS/ACLOCK:$(PROGS)/demos/aclock/trunk/aclock.asm \
-
 
171
 games/c4:GAMES/C4:$(PROGS)/games/c4/trunk/c4.asm \
-
 
172
# end of list
166
 
173
 
167
# The list of files which should be copied from somewhere.
174
# The list of files which should be copied from somewhere.
168
# Format of an item is exactly the same as in the previous list.
175
# Format of an item is exactly the same as in the previous list.
169
COPY_FILES:=\
176
COPY_FILES:=\
170
 macros.inc:MACROS.INC:$(PROGS)/macros.inc \
177
 macros.inc:MACROS.INC:$(PROGS)/macros.inc \
Line 196... Line 203...
196
 panel.dat:PANEL.DAT pipetka:PIPETKA setup.dat:SETUP.DAT \
203
 panel.dat:PANEL.DAT pipetka:PIPETKA setup.dat:SETUP.DAT \
197
 shell:SHELL spanel:SPANEL table:TABLE test:TEST \
204
 shell:SHELL spanel:SPANEL table:TABLE test:TEST \
198
 vmode:VMODE \
205
 vmode:VMODE \
199
 3d/3dsheart:3D/3DSHEART 3d/3dspiral:3D/3DSPIRAL 3d/cubeline:3D/CUBELINE \
206
 3d/3dsheart:3D/3DSHEART 3d/3dspiral:3D/3DSPIRAL 3d/cubeline:3D/CUBELINE \
200
 3d/flatwav:3D/FLATWAV 3d/gears:3D/GEARS 3d/house.3ds:3D/HOUSE.3DS \
207
 3d/flatwav:3D/FLATWAV 3d/gears:3D/GEARS 3d/house.3ds:3D/HOUSE.3DS \
201
 demos/aclock:DEMOS/ACLOCK demos/ak47.lif:DEMOS/AK47.LIF \
208
 demos/ak47.lif:DEMOS/AK47.LIF \
202
 demos/barge.lif:DEMOS/BARGE.LIF demos/life2:DEMOS/LIFE2 \
209
 demos/barge.lif:DEMOS/BARGE.LIF demos/life2:DEMOS/LIFE2 \
203
 demos/relay.lif:DEMOS/RELAY.LIF demos/rpento.lif:DEMOS/RPENTO.LIF \
210
 demos/relay.lif:DEMOS/RELAY.LIF demos/rpento.lif:DEMOS/RPENTO.LIF \
204
 demos/use_mb:DEMOS/USE_MB demos/web:DEMOS/WEB \
211
 demos/use_mb:DEMOS/USE_MB demos/web:DEMOS/WEB \
205
 drivers/atikms.dll:DRIVERS/ATIKMS.DLL \
212
 drivers/atikms.dll:DRIVERS/ATIKMS.DLL \
206
 File|Managers/buttons.bmp:File|Managers/BUTTONS.BMP \
213
 File|Managers/buttons.bmp:File|Managers/BUTTONS.BMP \
Line 213... Line 220...
213
 File|Managers/kfm.ini:File|Managers/KFM.INI \
220
 File|Managers/kfm.ini:File|Managers/KFM.INI \
214
 File|Managers/kfm_keys.txt:File|Managers/KFM_KEYS.TXT \
221
 File|Managers/kfm_keys.txt:File|Managers/KFM_KEYS.TXT \
215
 fonts/bold.chr:FONTS/BOLD.CHR fonts/char2.mt:FONTS/CHAR2.MT \
222
 fonts/bold.chr:FONTS/BOLD.CHR fonts/char2.mt:FONTS/CHAR2.MT \
216
 fonts/char.mt:FONTS/CHAR.MT \
223
 fonts/char.mt:FONTS/CHAR.MT \
217
 games/appdata.dat:GAMES/APPDATA.DAT games/ataka:GAMES/ATAKA \
224
 games/appdata.dat:GAMES/APPDATA.DAT games/ataka:GAMES/ATAKA \
218
 games/basekurs.kla:GAMES/BASEKURS.KLA games/bnc:GAMES/BNC games/c4:GAMES/C4 \
225
 games/basekurs.kla:GAMES/BASEKURS.KLA games/bnc:GAMES/BNC \
219
 games/checkers:GAMES/CHECKERS games/clicks:GAMES/CLICKS \
226
 games/checkers:GAMES/CHECKERS games/clicks:GAMES/CLICKS \
220
 games/FindNumbers:GAMES/FindNumbers games/gomoku:GAMES/GOMOKU \
227
 games/FindNumbers:GAMES/FindNumbers games/gomoku:GAMES/GOMOKU \
221
 games/klavisha:GAMES/KLAVISHA games/kosilka:GAMES/KOSILKA \
228
 games/klavisha:GAMES/KLAVISHA games/kosilka:GAMES/KOSILKA \
222
 games/kosskin.gfx:GAMES/KOSSKIN.GFX games/kox:GAMES/KOX \
229
 games/kosskin.gfx:GAMES/KOSSKIN.GFX games/kox:GAMES/KOX \
223
 games/lights:GAMES/LIGHTS games/megamaze:GAMES/MEGAMAZE games/mine:GAMES/MINE \
230
 games/lights:GAMES/LIGHTS games/megamaze:GAMES/MEGAMAZE games/mine:GAMES/MINE \
Line 247... Line 254...
247
fbinary=$(call respace,$(call binarypart,$(f)))
254
fbinary=$(call respace,$(call binarypart,$(f)))
248
fimage=$(call respace,$(call imagepart,$(f)))
255
fimage=$(call respace,$(call imagepart,$(f)))
249
fsource=$(call respace,$(call sourcepart,$(f)))
256
fsource=$(call respace,$(call sourcepart,$(f)))
Line 250... Line 257...
250
 
257
 
-
 
258
# Define targets for image file.
251
# Define targets for image file.
259
# Join all the lists above.
252
# Join lists $(FASM_PROGRAMS), $(COPY_FILES) and $(OTHER_FILES);
260
targets_full:=$(COPY_FILES) $(FASM_PROGRAMS) $(NASM_PROGRAMS) $(OTHER_FILES)
253
# for each item in the united list call fbinary.
261
# For each item in the united list call fbinary.
Line 254... Line 262...
254
targets:=$(foreach f,$(COPY_FILES) $(FASM_PROGRAMS) $(OTHER_FILES),$(fbinary))
262
targets:=$(foreach f,$(targets_full),$(fbinary))
255
 
263
 
256
# Define a command for copying a file inside the image.
264
# Define a command for copying a file inside the image.
257
# mcopy_command is a macro with two parameters,
265
# mcopy_command is a macro with two parameters,
Line 269... Line 277...
269
# that is two empty lines, in order to get one in $(newline).
277
# that is two empty lines, in order to get one in $(newline).
270
define newline
278
define newline
Line 271... Line 279...
271
 
279
 
272
 
280
 
Line 273... Line 281...
273
endef
281
endef
274
mcopy_all_items:=$(foreach f,$(FASM_PROGRAMS) $(COPY_FILES) $(OTHER_FILES),$(mcopy_item_command)$(newline))
282
mcopy_all_items:=$(foreach f,$(targets_full),$(mcopy_item_command)$(newline))
275
 
283
 
276
# The main goal: image.
284
# The main goal: image.
Line 312... Line 320...
312
	touch "File Managers/.dir"
320
	touch "File Managers/.dir"
Line 313... Line 321...
313
 
321
 
314
# FASM black magic goes to Makefile.fasm.
322
# FASM black magic goes to Makefile.fasm.
Line 315... Line 323...
315
include Makefile.fasm
323
include Makefile.fasm
316
 
324
 
-
 
325
# Similar for NASM.
317
# Rule for copying files is simpler, but similar to previous.
326
include Makefile.nasm
318
define copy_meta_rule
327
 
319
$(1): $(2) Makefile $$(call respace,$$(addsuffix .dir,$(3)))
-
 
320
	cp $$< "$$@"
-
 
Line 321... Line 328...
321
endef
328
# Similar for copying files.
322
$(foreach f,$(COPY_FILES),$(eval $(call copy_meta_rule,$(fbinary),$(fsource),$(binarydir))))
329
include Makefile.copy
323
 
330
 
324
# Special rules for copying sysfuncr.txt.
331
# Special rules for copying sysfuncr.txt - it isn't directly included in the image.