Subversion Repositories Kolibri OS

Rev

Rev 1764 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1764 Rev 1766
Line 189... Line 189...
189
 fonts/trip.chr:FONTS/TRIP.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/TRIP.CHR \
189
 fonts/trip.chr:FONTS/TRIP.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/TRIP.CHR \
190
 fonts/tscr.chr:FONTS/TSCR.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/TSCR.CHR \
190
 fonts/tscr.chr:FONTS/TSCR.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/TSCR.CHR \
191
 games/snake.ini:GAMES/SNAKE.INI:$(PROGS)/games/snake/trunk/snake.ini
191
 games/snake.ini:GAMES/SNAKE.INI:$(PROGS)/games/snake/trunk/snake.ini
Line 192... Line 192...
192
 
192
 
193
# The list of all C-- programs with one main C-- file.
193
# The list of all C-- programs with one main C-- file.
-
 
194
# Format of an item is exactly the same as in the previous list,
194
# Format of an item is exactly the same as in the previous list.
195
# except that there can be fourth field with parameters for a compiler.
195
CMM_PROGRAMS:=\
196
CMM_PROGRAMS:=\
196
 File|Managers/eolite:File|Managers/EOLITE:$(PROGS)/fs/Eolite/trunk/Eolite.c-- \
197
 File|Managers/eolite:File|Managers/EOLITE:$(PROGS)/fs/Eolite/trunk/Eolite.c-- \
-
 
198
 games/clicks:GAMES/CLICKS:$(PROGS)/games/clicks/trunk/clicks.c-- \
197
 games/clicks:GAMES/CLICKS:$(PROGS)/games/clicks/trunk/clicks.c-- \
199
 games/mine:GAMES/MINE:$(PROGS)/games/mine/trunk/mine.c--:/MEOS \
198
# end if list
-
 
199
# mine is not compilable
-
 
Line 200... Line 200...
200
# games/mine:GAMES/MINE:$(PROGS)/games/mine/trunk/mine.c--
200
# end if list
201
 
201
 
202
# List of other files to be included in the image file.
202
# List of other files to be included in the image file.
203
# Some of them are auto-built with special rules, some just exist before build.
203
# Some of them are auto-built with special rules, some just exist before build.
Line 233... Line 233...
233
 games/bnc:GAMES/BNC \
233
 games/bnc:GAMES/BNC \
234
 games/checkers:GAMES/CHECKERS \
234
 games/checkers:GAMES/CHECKERS \
235
 games/FindNumbers:GAMES/FindNumbers games/gomoku:GAMES/GOMOKU \
235
 games/FindNumbers:GAMES/FindNumbers games/gomoku:GAMES/GOMOKU \
236
 games/klavisha:GAMES/KLAVISHA games/kosilka:GAMES/KOSILKA \
236
 games/klavisha:GAMES/KLAVISHA games/kosilka:GAMES/KOSILKA \
237
 games/kosskin.gfx:GAMES/KOSSKIN.GFX games/kox:GAMES/KOX \
237
 games/kosskin.gfx:GAMES/KOSSKIN.GFX games/kox:GAMES/KOX \
238
 games/lights:GAMES/LIGHTS games/megamaze:GAMES/MEGAMAZE games/mine:GAMES/MINE \
238
 games/lights:GAMES/LIGHTS games/megamaze:GAMES/MEGAMAZE \
239
 games/msquare:GAMES/MSQUARE \
239
 games/msquare:GAMES/MSQUARE \
240
 games/reversi:GAMES/REVERSI games/rforces:GAMES/RFORCES \
240
 games/reversi:GAMES/REVERSI games/rforces:GAMES/RFORCES \
241
 games/sq_game:GAMES/SQ_GAME \
241
 games/sq_game:GAMES/SQ_GAME \
242
 games/sudoku:GAMES/SUDOKU games/sw:GAMES/SW \
242
 games/sudoku:GAMES/SUDOKU games/sw:GAMES/SW \
243
 games/xonix:GAMES/XONIX \
243
 games/xonix:GAMES/XONIX \
Line 255... Line 255...
255
respace=$(subst |,$(space),$(1))
255
respace=$(subst |,$(space),$(1))
256
# Macro for selecting different parts of ':'-separated items.
256
# Macro for selecting different parts of ':'-separated items.
257
binarypart=$(word 1,$(subst :, ,$(1)))
257
binarypart=$(word 1,$(subst :, ,$(1)))
258
imagepart=$(word 2,$(subst :, ,$(1)))
258
imagepart=$(word 2,$(subst :, ,$(1)))
259
sourcepart=$(word 3,$(subst :, ,$(1)))
259
sourcepart=$(word 3,$(subst :, ,$(1)))
-
 
260
parampart=$(word 4,$(subst :, ,$(1)))
260
# Get file names, possibly with spaces inside, from an item.
261
# Get file names, possibly with spaces inside, from an item.
261
# Here $(f) is an item - in fact, macro argument.
262
# Here $(f) is an item - in fact, macro argument.
262
fbinary=$(call respace,$(call binarypart,$(f)))
263
fbinary=$(call respace,$(call binarypart,$(f)))
263
fimage=$(call respace,$(call imagepart,$(f)))
264
fimage=$(call respace,$(call imagepart,$(f)))
264
fsource=$(call respace,$(call sourcepart,$(f)))
265
fsource=$(call respace,$(call sourcepart,$(f)))
-
 
266
fparam=$(call respace,$(call parampart,$(f)))
Line 265... Line 267...
265
 
267
 
266
# Define targets for image file.
268
# Define targets for image file.
267
# Join all the lists above.
269
# Join all the lists above.
268
targets_full:=$(COPY_FILES) $(FASM_PROGRAMS) $(NASM_PROGRAMS) $(OTHER_FILES) $(CMM_PROGRAMS)
270
targets_full:=$(COPY_FILES) $(FASM_PROGRAMS) $(NASM_PROGRAMS) $(OTHER_FILES) $(CMM_PROGRAMS)
Line 271... Line 273...
271
 
273
 
272
# Define a command for copying a file inside the image.
274
# Define a command for copying a file inside the image.
273
# mcopy_command is a macro with two parameters,
275
# mcopy_command is a macro with two parameters,
274
# local file name $(1) and image file name $(2).
276
# local file name $(1) and image file name $(2).
275
# Note that spaces in these have to be escaped with backslashes.
277
# Note that spaces in these have to be escaped with backslashes.
276
mcopy_command=mcopy -mi $(BUILD_DIR)/kolibri.img $(1) ::$(2)
278
mcopy_command=mcopy -moi $(BUILD_DIR)/kolibri.img $(1) ::$(2)
277
# Specialize a previous command for an item $(f) in one of lists.
279
# Specialize a previous command for an item $(f) in one of lists.
Line 278... Line 280...
278
mcopy_item_command=$(call mcopy_command,$(fbinary),$(fimage))
280
mcopy_item_command=$(call mcopy_command,$(fbinary),$(fimage))
279
 
281
 
Line 310... Line 312...
310
	mmd -i $(BUILD_DIR)/kolibri.img ::LIB
312
	mmd -i $(BUILD_DIR)/kolibri.img ::LIB
311
	mmd -i $(BUILD_DIR)/kolibri.img ::MEDIA
313
	mmd -i $(BUILD_DIR)/kolibri.img ::MEDIA
312
	mmd -i $(BUILD_DIR)/kolibri.img ::NETWORK
314
	mmd -i $(BUILD_DIR)/kolibri.img ::NETWORK
313
	$(mcopy_all_items)
315
	$(mcopy_all_items)
Line 314... Line 316...
314
 
316
 
315
# Special target to modify behaviour of make.
317
# Special targets to modify behaviour of make.
-
 
318
.DELETE_ON_ERROR:
Line 316... Line 319...
316
.DELETE_ON_ERROR:
319
.SUFFIXES: # delete all predefined rules
317
 
320
 
318
# The floppy bootsector.
321
# The floppy bootsector.