Autobuild (eng): create also a folder for the distribution kit

git-svn-id: svn://kolibrios.org@3237 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
CleverMouse 2013-02-11 15:33:52 +00:00
parent 07024de5e6
commit 3a7eb7b633
4 changed files with 43 additions and 7 deletions

View File

@ -9,8 +9,8 @@ REPOSITORY:=../..
KERNEL:=$(REPOSITORY)/kernel/trunk KERNEL:=$(REPOSITORY)/kernel/trunk
PROGS:=$(REPOSITORY)/programs PROGS:=$(REPOSITORY)/programs
# The main goal: build kolibri.img and kolibri.iso # The main goal: build kolibri.img, kolibri.iso and list for creating a distribution kit
all: $(BUILD_DIR)/kolibri.img $(BUILD_DIR)/kolibri.iso all: $(BUILD_DIR)/kolibri.img $(BUILD_DIR)/kolibri.iso $(BUILD_DIR)/distr.lst
# Docpak requires some documents; we place them # Docpak requires some documents; we place them
# into 'docs' subdir and communicate with FASM # into 'docs' subdir and communicate with FASM
@ -302,15 +302,14 @@ Makefile.skins: $(REPOSITORY)/skins/authors.txt $(REPOSITORY)/data/generate_make
cut -f1 $< | $(SHELL) $(REPOSITORY)/data/generate_makefile_skins.sh > $@ cut -f1 $< | $(SHELL) $(REPOSITORY)/data/generate_makefile_skins.sh > $@
include Makefile.skins include Makefile.skins
# Extra targets for LiveCD image in the syntax of mkisofs # Extra targets for the distribution kit and LiveCD image in the syntax of mkisofs
MKISOFS_EXTRA:=\ EXTRA:=\
emu/e80/e80=e80 \ emu/e80/e80=e80 \
emu/dosbox/=$(PROGS)/emulator/DosBox/dosbox \ emu/dosbox/=$(PROGS)/emulator/DosBox/dosbox \
emu/dosbox/=$(PROGS)/emulator/DosBox/dosbox.conf \ emu/dosbox/=$(PROGS)/emulator/DosBox/dosbox.conf \
emu/dosbox/=$(PROGS)/emulator/DosBox/readme.txt \ emu/dosbox/=$(PROGS)/emulator/DosBox/readme.txt \
/=distr_data/autorun.inf \ /=distr_data/autorun.inf \
/=distr_data/KolibriOS_icon.ico \ /=distr_data/KolibriOS_icon.ico \
/=distr_data/readme.txt \
Skins/=$(REPOSITORY)/skins/authors.txt \ Skins/=$(REPOSITORY)/skins/authors.txt \
Docs/config.txt=docs/CONFIG.TXT \ Docs/config.txt=docs/CONFIG.TXT \
Docs/copying.txt=docs/COPYING.TXT \ Docs/copying.txt=docs/COPYING.TXT \
@ -347,6 +346,14 @@ MKISOFS_EXTRA:=\
games/fara=games/fara \ games/fara=games/fara \
games/soko/soko=games/soko \ games/soko/soko=games/soko \
#end of list #end of list
DISTRIBUTION_EXTRA:=\
$(EXTRA) \
/readme.txt=distr_data/readme_distr.txt \
#end of list
MKISOFS_EXTRA:=\
$(EXTRA) \
/=distr_data/readme.txt \
#end of list
# Some macro for convenient work. # Some macro for convenient work.
# Macros for replacing '|' to escaped space '\ '. # Macros for replacing '|' to escaped space '\ '.
@ -390,11 +397,23 @@ define newline
endef endef
mcopy_all_items:=$(foreach f,$(targets_full),$(mcopy_item_command)$(newline)) mcopy_all_items:=$(foreach f,$(targets_full),$(mcopy_item_command)$(newline))
# add skins to MKISOFS_EXTRA # add skins to MKISOFS_EXTRA and DISTRIBUTION_EXTRA
MKISOFS_EXTRA:=$(MKISOFS_EXTRA) $(foreach f,$(SKIN_SOURCES),$(call imagepart,$(f))=$(call binarypart,$(f))) allskins:=$(foreach f,$(SKIN_SOURCES),$(call imagepart,$(f))=$(call binarypart,$(f)))
MKISOFS_EXTRA:=$(MKISOFS_EXTRA) $(allskins)
DISTRIBUTION_EXTRA:=$(DISTRIBUTION_EXTRA) $(allskins)
# dependencies of MKISOFS_EXTRA; we iterate through $(MKISOFS_EXTRA), # dependencies of MKISOFS_EXTRA; we iterate through $(MKISOFS_EXTRA),
# substitute "=" with space, get the 2nd word and join all results # substitute "=" with space, get the 2nd word and join all results
mkisofs_extra_targets:=$(call respace,$(foreach f,$(MKISOFS_EXTRA),$(word 2,$(subst =, ,$(f))))) mkisofs_extra_targets:=$(call respace,$(foreach f,$(MKISOFS_EXTRA),$(word 2,$(subst =, ,$(f)))))
distribution_extra_targets:=$(call respace,$(foreach f,$(DISTRIBUTION_EXTRA),$(word 2,$(subst =, ,$(f)))))
# Define a command for creating a symlink for an item in DISTRIBUTION_EXTRA.
makelink_item_command=ln -sr $(word 2,$(subst =, ,$(f))) distribution_kit/$(word 1,$(subst =, ,$(f)))
# Join all $(makelink_command) for all items from DISTRIBUTION_EXTRA.
make_distribution_links:=$(foreach f,$(DISTRIBUTION_EXTRA),$(makelink_item_command)$(newline))
# Define a command for creating all directories for DISTRIBUTION_EXTRA.
# Note that $(sort) removes duplicate entries.
distribution_dirs:=$(sort $(foreach f,$(DISTRIBUTION_EXTRA),$(dir distribution_kit/$(word 1,$(subst =, ,$(f))))))
make_distribution_dirs:=$(foreach f,$(distribution_dirs),mkdir -p $(f)$(newline))
# The first goal: floppy image. # The first goal: floppy image.
$(BUILD_DIR)/kolibri.img: $(BUILD_DIR)/.dir \ $(BUILD_DIR)/kolibri.img: $(BUILD_DIR)/.dir \
@ -427,6 +446,13 @@ $(BUILD_DIR)/kolibri.iso: $(BUILD_DIR)/kolibri.img $(mkisofs_extra_targets)
-A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "KolibriOS r$(REV)" -sysid "KOLIBRI" \ -A "KolibriOS AutoBuilder" -p "CleverMouse" -publisher "KolibriOS Team" -V "KolibriOS r$(REV)" -sysid "KOLIBRI" \
-iso-level 3 -o $(BUILD_DIR)/kolibri.iso $(BUILD_DIR)/kolibri.img $(call respace,$(MKISOFS_EXTRA)) 2>&1 -iso-level 3 -o $(BUILD_DIR)/kolibri.iso $(BUILD_DIR)/kolibri.img $(call respace,$(MKISOFS_EXTRA)) 2>&1
# The third goal: distribution list.
$(BUILD_DIR)/distr.lst: $(BUILD_DIR)/kolibri.img $(distribution_extra_targets)
rm -rf distribution_kit
$(call respace,$(make_distribution_dirs))
ln -sr $(BUILD_DIR)/kolibri.img distribution_kit/kolibri.img
$(call respace,$(make_distribution_links))
# Special targets to modify behaviour of make. # Special targets to modify behaviour of make.
.DELETE_ON_ERROR: .DELETE_ON_ERROR:
.SUFFIXES: # delete all predefined rules .SUFFIXES: # delete all predefined rules

View File

@ -0,0 +1,9 @@
Kolibri OS 0.7.7.0+ night build.
Changes and revisions compared with Kolibri 0.7.7.0 are described in file
readme.txt, which is placed in Docs folder. And also in OS in the application
docpak.
Instructions for install to other information mediums and minimal system
requirements can be found in file install.txt.
Instructions for configuring can be found in file config.txt.

Binary file not shown.

View File

@ -472,6 +472,7 @@ $(BUILD_DIR)/kolibri.iso: $(BUILD_DIR)/kolibri.img $(mkisofs_extra_targets)
$(BUILD_DIR)/distr.lst: $(BUILD_DIR)/kolibri.img $(distribution_extra_targets) $(BUILD_DIR)/distr.lst: $(BUILD_DIR)/kolibri.img $(distribution_extra_targets)
rm -rf distribution_kit rm -rf distribution_kit
$(call respace,$(make_distribution_dirs)) $(call respace,$(make_distribution_dirs))
ln -sr $(BUILD_DIR)/kolibri.img distribution_kit/kolibri.img
$(call respace,$(make_distribution_links)) $(call respace,$(make_distribution_links))
# Special targets to modify behaviour of make. # Special targets to modify behaviour of make.