1,3 → 1,9 |
# This Makefile is included by root Makefiles of every build, |
# root Makefiles set BUILD_TYPE correspondingly. |
# Note that the current directory is data/$BUILD_TYPE, not data/common, |
# so relative references like "file" are resolved as data/$BUILD_TYPE/file, |
# not data/common/file. |
|
# General rule for naming: variables with CAPITALIZED names hold settings, |
# you can - and are expected - to modify it; variables with lowercase names |
# are intermediate variables and macroses not to be modified unless you |
73,7 → 79,6 |
madmouse:MADMOUSE:$(PROGS)/other/madmouse/madmouse.asm \ |
mykey:MYKEY:$(PROGS)/system/MyKey/trunk/MyKey.asm \ |
pcidev:PCIDEV:$(PROGS)/system/pcidev/trunk/PCIDEV.ASM \ |
period:PERIOD:$(PROGS)/other/period/trunk/period.asm \ |
rdsave:RDSAVE:$(PROGS)/system/rdsave/trunk/rdsave.asm \ |
rtfread:RTFREAD:$(PROGS)/other/rtfread/trunk/rtfread.asm \ |
run:RUN:$(PROGS)/system/run/trunk/run.asm \ |
113,7 → 118,6 |
develop/scancode:DEVELOP/SCANCODE:$(PROGS)/develop/scancode/trunk/scancode.asm \ |
develop/t_edit:DEVELOP/T_EDIT:$(PROGS)/other/t_edit/t_edit.asm \ |
develop/test_gets:DEVELOP/test_gets:$(PROGS)/develop/libraries/console/examples/test_gets.asm \ |
develop/testcon2:DEVELOP/TESTCON2:$(PROGS)/develop/libraries/console/examples/testcon2_rus.asm \ |
develop/thread:DEVELOP/THREAD:$(PROGS)/develop/examples/thread/trunk/thread.asm \ |
develop/info/asm.syn:DEVELOP/INFO/ASM.SYN:$(PROGS)/other/t_edit/info/asm_syn.asm \ |
develop/info/cpp_kol_cla.syn:DEVELOP/INFO/CPP_KOL_CLA.SYN:$(PROGS)/other/t_edit/info/cpp_kol_cla_syn.asm \ |
135,8 → 139,6 |
drivers/usbstor.obj:DRIVERS/USBSTOR.OBJ:$(KERNEL)/drivers/usbstor.asm \ |
drivers/vt823x.obj:DRIVERS/VT823X.OBJ:$(KERNEL)/drivers/vt823x.asm \ |
drivers/3c59x.obj:DRIVERS/3C59X.OBJ:$(REPOSITORY)/drivers/ethernet/3c59x.asm \ |
drivers/dec21x4x.obj:DRIVERS/DEC21X4X.OBJ:$(REPOSITORY)/drivers/ethernet/dec21x4x.asm \ |
drivers/rtl8139.obj:DRIVERS/RTL8139.OBJ:$(REPOSITORY)/drivers/ethernet/RTL8139.asm \ |
drivers/rtl8169.obj:DRIVERS/RTL8169.OBJ:$(REPOSITORY)/drivers/ethernet/RTL8169.asm \ |
File|Managers/kfar:File|Managers/KFAR:$(PROGS)/fs/kfar/trunk/kfar.asm \ |
File|Managers/kfm:File|Managers/KFM:$(PROGS)/fs/kfm/trunk/kfm.asm \ |
196,9 → 198,22 |
network/ircc:NETWORK/IRCC:$(PROGS)/network/ircc/ircc.asm \ |
network/downloader:NETWORK/DOWNLOADER:$(PROGS)/network/downloader/downloader.asm \ |
# end of list |
# For russian build, add russian-only programs. |
ifeq ($(BUILD_TYPE),rus) |
FASM_PROGRAMS:=$(FASM_PROGRAMS) \ |
period:PERIOD:$(PROGS)/other/period/trunk/period.asm \ |
develop/testcon2:DEVELOP/TESTCON2:$(PROGS)/develop/libraries/console/examples/testcon2_rus.asm \ |
# end of list |
else |
FASM_PROGRAMS:=$(FASM_PROGRAMS) \ |
develop/testcon2:DEVELOP/TESTCON2:$(PROGS)/develop/libraries/console/examples/testcon2_eng.asm \ |
games/soko:GAMES/SOKO:$(PROGS)/games/soko/trunk/SOKO.ASM \ |
# end of list |
endif |
# Same as above with PE stripping as extra step. |
FASM_PROGRAMS_PESTRIP:=\ |
drivers/vidintel.sys:DRIVERS/VIDINTEL.SYS:$(REPOSITORY)/drivers/video/vidintel.asm \ |
drivers/dec21x4x.sys:DRIVERS/DEC21X4X.SYS:$(REPOSITORY)/drivers/ethernet/dec21x4x.asm \ |
drivers/forcedeth.sys:DRIVERS/FORCEDETH.SYS:$(REPOSITORY)/drivers/ethernet/forcedeth.asm \ |
drivers/i8254x.sys:DRIVERS/I8254X.SYS:$(REPOSITORY)/drivers/ethernet/i8254x.asm \ |
drivers/i8255x.sys:DRIVERS/I8255X.SYS:$(REPOSITORY)/drivers/ethernet/i8255x.asm \ |
207,6 → 222,7 |
drivers/r6040.sys:DRIVERS/R6040.SYS:$(REPOSITORY)/drivers/ethernet/R6040.asm \ |
drivers/rhine.sys:DRIVERS/RHINE.SYS:$(REPOSITORY)/drivers/ethernet/rhine.asm \ |
drivers/rtl8029.sys:DRIVERS/RTL8029.SYS:$(REPOSITORY)/drivers/ethernet/RTL8029.asm \ |
drivers/rtl8139.sys:DRIVERS/RTL8139.SYS:$(REPOSITORY)/drivers/ethernet/RTL8139.asm \ |
drivers/sis900.sys:DRIVERS/SIS900.SYS:$(REPOSITORY)/drivers/ethernet/sis900.asm \ |
drivers/uhci.sys:DRIVERS/UHCI.SYS:$(REPOSITORY)/drivers/usb/uhci.asm \ |
drivers/ohci.sys:DRIVERS/OHCI.SYS:$(REPOSITORY)/drivers/usb/ohci.asm \ |
249,6 → 265,8 |
demos/aclock:DEMOS/ACLOCK:$(PROGS)/demos/aclock/trunk/aclock.asm \ |
demos/timer:DEMOS/TIMER:$(PROGS)/other/Timer/Timer.asm \ |
games/c4:GAMES/C4:$(PROGS)/games/c4/trunk/c4.asm \ |
tinfo:TINFO:$(PROGS)/system/tinfo/tinfo.asm \ |
develop/mstate:DEVELOP/MSTATE:$(PROGS)/develop/mstate/mstate.asm \ |
# end of list |
|
# The list of files which should be copied from somewhere. |
262,17 → 280,41 |
develop/tl_sys_16.png:DEVELOP/TL_SYS_16.PNG:$(PROGS)/media/log_el/trunk/tl_sys_16.png \ |
develop/t_edit.ini:DEVELOP/T_EDIT.INI:$(PROGS)/other/t_edit/t_edit.ini \ |
File|Managers/z_icons.png:File|Managers/Z_ICONS.PNG:$(PROGS)/fs/opendial/z_icons.png \ |
File|Managers/kfm_keys.txt:File|Managers/KFM_KEYS.TXT:$(PROGS)/fs/kfm/trunk/docs/russian/dos_kolibri/kfm_keys.txt \ |
File|Managers/buttons.bmp:File|Managers/BUTTONS.BMP:$(PROGS)/fs/kfm/trunk/buttons.bmp \ |
File|Managers/icons.bmp:File|Managers/ICONS.BMP:$(PROGS)/fs/kfm/trunk/icons.bmp \ |
fonts/litt.chr:FONTS/LITT.CHR:$(PROGS)/demos/bgitest/trunk/FONTS/LITT.CHR \ |
games/snake.ini:GAMES/SNAKE.INI:$(PROGS)/games/snake/trunk/snake.ini \ |
media/kiv.ini:MEDIA/KIV.INI:$(PROGS)/media/kiv/trunk/kiv.ini \ |
network/wv_skin.png:NETWORK/WV_SKIN.PNG:$(PROGS)/cmm/browser/wv_skin.png \ |
# end of list |
ifeq ($(BUILD_TYPE),rus) |
COPY_FILES:=$(COPY_FILES) \ |
File|Managers/kfm_keys.txt:File|Managers/KFM_KEYS.TXT:$(PROGS)/fs/kfm/trunk/docs/russian/dos_kolibri/kfm_keys.txt \ |
settings/.shell:SETTINGS/.shell:$(PROGS)/system/shell/bin/rus/.shell \ |
settings/mykey.ini:SETTINGS/MYKEY.INI:$(PROGS)/system/MyKey/trunk/mykey.ini \ |
example.asm:EXAMPLE.ASM:$(PROGS)/develop/examples/example/trunk/rus/example.asm \ |
network/wv_skin.png:NETWORK/WV_SKIN.PNG:$(PROGS)/cmm/browser/wv_skin.png \ |
# end of list |
else |
COPY_FILES:=$(COPY_FILES) \ |
File|Managers/kfm_keys.txt:File|Managers/KFM_KEYS.TXT:$(PROGS)/fs/kfm/trunk/docs/english/kfm_keys.txt \ |
games/skin.raw:GAMES/SKIN.RAW:$(PROGS)/games/soko/trunk/SKIN.RAW \ |
games/soko-4.lev:GAMES/SOKO-4.LEV:$(PROGS)/games/soko/trunk/SOKO-4.LEV \ |
games/soko-5.lev:GAMES/SOKO-5.LEV:$(PROGS)/games/soko/trunk/SOKO-5.LEV \ |
games/soko-6.lev:GAMES/SOKO-6.LEV:$(PROGS)/games/soko/trunk/SOKO-6.LEV \ |
games/soko-7.lev:GAMES/SOKO-7.LEV:$(PROGS)/games/soko/trunk/SOKO-7.LEV \ |
games/soko-8.lev:GAMES/SOKO-8.LEV:$(PROGS)/games/soko/trunk/SOKO-8.LEV \ |
games/soko-9.lev:GAMES/SOKO-9.LEV:$(PROGS)/games/soko/trunk/SOKO-9.LEV \ |
settings/.shell:SETTINGS/.shell:$(PROGS)/system/shell/bin/eng/.shell \ |
example.asm:EXAMPLE.ASM:$(PROGS)/develop/examples/example/trunk/example.asm \ |
# end of list |
ifeq ($(BUILD_TYPE),it) |
COPY_FILES:=$(COPY_FILES) \ |
settings/mykey.ini:SETTINGS/MYKEY.INI:$(PROGS)/system/MyKey/trunk/mykey_it.ini |
else |
COPY_FILES:=$(COPY_FILES) \ |
settings/mykey.ini:SETTINGS/MYKEY.INI:$(PROGS)/system/MyKey/trunk/mykey.ini |
endif |
endif |
|
# The list of all C-- programs with one main C-- file. |
# Format of an item is exactly the same as in the previous list, |
304,7 → 346,7 |
../common/kuzkina.mid:KUZKINA.MID lang.inc:LANG.INC \ |
settings/menu.dat:SETTINGS/MENU.DAT \ |
settings/kolibri.lbl:SETTINGS/KOLIBRI.LBL \ |
settings/panel.ini:SETTINGS/PANEL.INI pipetka:PIPETKA \ |
settings/panel.ini:SETTINGS/PANEL.INI \ |
../common/settings/docky.ini:SETTINGS/DOCKY.INI \ |
../common/notify3.png:NOTIFY3.PNG \ |
settings/setup.dat:SETTINGS/SETUP.DAT \ |
319,13 → 361,11 |
../common/demos/rpento.lif:DEMOS/RPENTO.LIF \ |
../common/File|Managers/eolite.ini:File|Managers/EOLITE.INI \ |
../common/File|Managers/icons.ini:File|Managers/ICONS.INI \ |
File|Managers/kfar.ini:File|Managers/KFAR.INI \ |
../common/File|Managers/kfm.ini:File|Managers/KFM.INI \ |
games/appdata.dat:GAMES/APPDATA.DAT games/ataka:GAMES/ATAKA \ |
games/basekurs.kla:GAMES/BASEKURS.KLA games/checkers:GAMES/CHECKERS \ |
games/megamaze:GAMES/MEGAMAZE games/padenie:GAMES/PADENIE \ |
games/checkers:GAMES/CHECKERS \ |
games/megamaze:GAMES/MEGAMAZE \ |
games/reversi:GAMES/REVERSI games/rforces:GAMES/RFORCES \ |
games/whowtbam:GAMES/WHOWTBAM games/xonix:GAMES/XONIX \ |
games/xonix:GAMES/XONIX \ |
games/kosilka:GAMES/KOSILKA \ |
../common/lib/pixlib.obj:LIB/PIXLIB.OBJ \ |
../common/lib/iconv.obj:LIB/ICONV.OBJ \ |
339,6 → 379,20 |
../common/network/ftpd.ini:NETWORK/FTPD.INI \ |
../common/network/users.ini:NETWORK/USERS.INI \ |
#end of list |
ifeq ($(BUILD_TYPE),rus) |
OTHER_FILES:=$(OTHER_FILES) \ |
pipetka:PIPETKA \ |
File|Managers/kfar.ini:File|Managers/KFAR.INI \ |
games/appdata.dat:GAMES/APPDATA.DAT games/ataka:GAMES/ATAKA \ |
games/basekurs.kla:GAMES/BASEKURS.KLA \ |
games/padenie:GAMES/PADENIE \ |
games/whowtbam:GAMES/WHOWTBAM \ |
#end of list |
else |
OTHER_FILES:=$(OTHER_FILES) \ |
../common/File|Managers/kfar.ini:File|Managers/KFAR.INI \ |
#end of list |
endif |
#3d/logio.bmp:3D/LOGIO.BMP 3d/cubetext:3D/CUBETEXT |
|
# Generate skins list understandable by gnu make |
351,25 → 405,9 |
/=distr_data/autorun.inf \ |
/=distr_data/KolibriOS_icon.ico \ |
Skins/=$(REPOSITORY)/skins/authors.txt \ |
Docs/cp866/config.txt=docs/CONFIG.TXT \ |
Docs/cp866/gnu.txt=docs/GNU.TXT \ |
Docs/cp866/history.txt=docs/HISTORY.TXT \ |
Docs/cp866/hot_keys.txt=docs/HOT_KEYS.TXT \ |
Docs/cp866/install.txt=docs/INSTALL.TXT \ |
Docs/cp866/readme.txt=docs/README.TXT \ |
Docs/cp866/sysfuncr.txt=docs/SYSFUNCR.TXT \ |
Docs/cp1251/config.txt=docs/CONFIG.WIN.TXT \ |
Docs/cp1251/gnu.txt=docs/GNU.WIN.TXT \ |
Docs/cp1251/history.txt=docs/HISTORY.WIN.TXT \ |
Docs/cp1251/hot_keys.txt=docs/HOT_KEYS.WIN.TXT \ |
Docs/cp1251/install.txt=docs/INSTALL.WIN.TXT \ |
Docs/cp1251/readme.txt=docs/README.WIN.TXT \ |
Docs/cp1251/sysfuncr.txt=docs/SYSFUNCR.WIN.TXT \ |
Docs/stack.txt=docs/STACK.TXT \ |
HD_Load/9x2klbr/=distr_data/9x2klbr.exe \ |
HD_Load/9x2klbr/=../common/HD_load/9x2klbr/LDKLBR.VXD \ |
HD_Load/9x2klbr/=$(PROGS)/hd_load/9x2klbr/readme_dos.txt \ |
HD_Load/9x2klbr/=$(PROGS)/hd_load/9x2klbr/readme_win.txt \ |
HD_Load/MeOSLoad/=distr_data/MeOSload.com \ |
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/AUTOEXEC.BAT \ |
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/CONFIG.SYS \ |
376,7 → 414,6 |
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/L_readme.txt \ |
HD_Load/MeOSLoad/=$(PROGS)/hd_load/meosload/L_readme_Win.txt \ |
HD_Load/mtldr/=distr_data/mtldr \ |
HD_Load/mtldr/=$(PROGS)/hd_load/mtldr/install.txt \ |
HD_Load/mtldr/=$(PROGS)/hd_load/mtldr/vista_install.bat \ |
HD_Load/mtldr/=$(PROGS)/hd_load/mtldr/vista_remove.bat \ |
HD_Load/=distr_data/mtldr_install.exe \ |
385,7 → 422,6 |
HD_Load/USB_Boot/=distr_data/MTLD_F32 \ |
HD_Load/USB_Boot/=distr_data/inst.exe \ |
HD_Load/USB_Boot/=distr_data/setmbr.exe \ |
HD_Load/USB_Boot/=$(PROGS)/hd_load/usb_boot/readme.txt \ |
HD_Load/USB_boot_old/=$(PROGS)/hd_load/usb_boot_old/usb_boot.rtf \ |
HD_Load/USB_boot_old/=$(PROGS)/hd_load/usb_boot_old/usb_boot_866.txt \ |
HD_Load/USB_boot_old/=$(PROGS)/hd_load/usb_boot_old/usb_boot_1251.txt \ |
425,22 → 461,64 |
kolibrios/media/zsea/plugins/rotate.obj=distr_data/rotate.obj \ |
kolibrios/media/zsea/plugins/scaling.obj=distr_data/scaling.obj \ |
kolibrios/media/zsea/zsea.ini=$(REPOSITORY)/programs/media/zsea/zSea.ini \ |
kolibrios/media/zsea/zsea_keys.txt=$(REPOSITORY)/programs/media/zsea/Docs/zSea_keys_rus.txt \ |
kolibrios/media/zsea/buttons/buttons.png=$(REPOSITORY)/programs/media/zsea/buttons.png \ |
#end of list |
ifeq ($(BUILD_TYPE),rus) |
EXTRA:=$(EXTRA) \ |
Docs/cp866/config.txt=docs/CONFIG.TXT \ |
Docs/cp866/gnu.txt=docs/GNU.TXT \ |
Docs/cp866/history.txt=docs/HISTORY.TXT \ |
Docs/cp866/hot_keys.txt=docs/HOT_KEYS.TXT \ |
Docs/cp866/install.txt=docs/INSTALL.TXT \ |
Docs/cp866/readme.txt=docs/README.TXT \ |
Docs/cp866/sysfuncr.txt=docs/SYSFUNCR.TXT \ |
Docs/cp1251/config.txt=docs/CONFIG.WIN.TXT \ |
Docs/cp1251/gnu.txt=docs/GNU.WIN.TXT \ |
Docs/cp1251/history.txt=docs/HISTORY.WIN.TXT \ |
Docs/cp1251/hot_keys.txt=docs/HOT_KEYS.WIN.TXT \ |
Docs/cp1251/install.txt=docs/INSTALL.WIN.TXT \ |
Docs/cp1251/readme.txt=docs/README.WIN.TXT \ |
Docs/cp1251/sysfuncr.txt=docs/SYSFUNCR.WIN.TXT \ |
HD_Load/9x2klbr/=$(PROGS)/hd_load/9x2klbr/readme_dos.txt \ |
HD_Load/9x2klbr/=$(PROGS)/hd_load/9x2klbr/readme_win.txt \ |
HD_Load/mtldr/=$(PROGS)/hd_load/mtldr/install.txt \ |
HD_Load/USB_Boot/=$(PROGS)/hd_load/usb_boot/readme.txt \ |
kolibrios/media/zsea/zsea_keys.txt=$(REPOSITORY)/programs/media/zsea/Docs/zSea_keys_rus.txt \ |
#end of list |
else |
EXTRA:=$(EXTRA) \ |
Docs/config.txt=docs/CONFIG.TXT \ |
Docs/copying.txt=docs/COPYING.TXT \ |
Docs/hot_keys.txt=docs/HOT_KEYS.TXT \ |
Docs/install.txt=docs/INSTALL.TXT \ |
Docs/readme.txt=docs/README.TXT \ |
Docs/sysfuncs.txt=docs/SYSFUNCS.TXT \ |
HD_Load/9x2klbr/=$(PROGS)/hd_load/9x2klbr/readme.txt \ |
HD_Load/mtldr/install.txt=$(PROGS)/hd_load/mtldr/install_eng.txt \ |
HD_Load/USB_Boot/readme.txt=$(PROGS)/hd_load/usb_boot/readme_eng.txt \ |
kolibrios/media/zsea/zsea_keys.txt=$(REPOSITORY)/programs/media/zsea/Docs/zSea_keys_eng.txt \ |
#end of list |
endif |
DISTRIBUTION_EXTRA:=\ |
$(EXTRA) \ |
/readme.txt=distr_data/readme_distr.txt \ |
/readme_dos.txt=distr_data/readme_dos_distr.txt \ |
/kolibri.lbl=settings/kolibri.lbl \ |
#end of list |
MKISOFS_EXTRA:=\ |
$(EXTRA) \ |
/=distr_data/readme.txt \ |
/=distr_data/readme_dos.txt \ |
/=settings/kolibri.lbl \ |
#end of list |
ifeq ($(BUILD_TYPE),rus) |
DISTRIBUTION_EXTRA:=$(DISTRIBUTION_EXTRA) \ |
/readme_dos.txt=distr_data/readme_dos_distr.txt \ |
#end of list |
MKISOFS_EXTRA:=$(MKISOFS_EXTRA) \ |
/=distr_data/readme_dos.txt \ |
#end of list |
endif |
|
ifeq ($(BUILD_TYPE),rus) |
# Text files which need to be recoded to cp1251 from native aka cp866 |
RECODE_TEXT_FILES:=\ |
distr_data/readme.txt:distr_data/readme_dos.txt \ |
453,6 → 531,7 |
docs/README.WIN.TXT:docs/README.TXT \ |
docs/SYSFUNCR.WIN.TXT:docs/SYSFUNCR.TXT \ |
#end of list |
endif |
|
# Some macro for convenient work. |
# Macros for replacing '|' to escaped space '\ '. |
471,7 → 550,7 |
fparam=$(call respace,$(call parampart,$(f))) |
|
# Add stripped PE files produced by fasm to FASM_NOKPACK_PROGRAMS. |
include Makefile.pestrip |
include ../common/Makefile.pestrip |
FASM_NOKPACK_PROGRAMS:=$(FASM_NOKPACK_PROGRAMS) \ |
$(foreach f,$(FASM_PROGRAMS_PESTRIP),$(fbinary).full:-:$(fsource)) |
$(foreach f,$(FASM_PROGRAMS_PESTRIP),$(eval $(call pestrip_meta_rule,$(fbinary),$(fbinary).full))) |
527,11 → 606,16 |
|
# The first goal: floppy image. |
$(BUILD_DIR)/kolibri.img: $(BUILD_DIR)/.dir \ |
Makefile \ |
Makefile ../common/Makefile.main \ |
$(BUILD_DIR)/boot_fat12.bin \ |
$(targets) |
ifeq ($(BUILD_TYPE),rus) |
str=`LANG=ru_RU.utf8 date -u +"[автосборка %d %b %Y %R, r$(REV)]"|iconv -f utf8 -t cp866`; \ |
echo -n $$str|dd of=kernel.mnt bs=1 seek=`expr 279 - length "$$str"` conv=notrunc 2>/dev/null |
else |
str=`date -u +"[auto-build %d %b %Y %R, r$(REV)]"`; \ |
echo -n $$str|dd of=kernel.mnt bs=1 seek=`expr 279 - length "$$str"` conv=notrunc 2>/dev/null |
endif |
dd if=/dev/zero of=$(BUILD_DIR)/kolibri.img count=2880 bs=512 2>&1 |
mformat -f 1440 -i $(BUILD_DIR)/kolibri.img :: |
dd if=$(BUILD_DIR)/boot_fat12.bin of=$(BUILD_DIR)/kolibri.img count=1 bs=512 conv=notrunc 2>&1 |
585,24 → 669,32 |
distr_data/mtldr_install.exe: mtldr_for_installer |
|
# FASM black magic goes to Makefile.fasm. |
include Makefile.fasm |
include ../common/Makefile.fasm |
|
# Similar for NASM. |
include Makefile.nasm |
include ../common/Makefile.nasm |
|
# Similar for copying files. |
include Makefile.copy |
include ../common/Makefile.copy |
|
ifeq ($(BUILD_TYPE),rus) |
# Special rules for copying sysfuncr.txt and fasm.txt - they aren't directly included in the image. |
docpack: $(DOCDIR)SYSFUNCR.TXT $(DOCDIR)FASM.TXT |
$(DOCDIR)SYSFUNCR.TXT: $(KERNEL)/docs/sysfuncr.txt |
iconv -f utf-8 -t cp866 $(KERNEL)/docs/sysfuncr.txt > $(DOCDIR)SYSFUNCR.TXT |
else |
# Special rules for copying sysfuncs.txt and fasm.txt - they aren't directly included in the image. |
docpack: $(DOCDIR)SYSFUNCS.TXT $(DOCDIR)FASM.TXT |
$(DOCDIR)SYSFUNCS.TXT: $(KERNEL)/docs/sysfuncs.txt |
cp $(KERNEL)/docs/sysfuncs.txt $(DOCDIR)SYSFUNCS.TXT |
endif |
$(DOCDIR)FASM.TXT: $(PROGS)/develop/fasm/trunk/fasm.txt |
cp $(PROGS)/develop/fasm/trunk/fasm.txt $(DOCDIR)FASM.TXT |
|
# Similar for C--. |
include Makefile.cmm |
include ../common/Makefile.cmm |
|
ifeq ($(BUILD_TYPE),rus) |
# Recode some text files from native encoding aka cp866 to cp1251 |
define recode_meta_rule |
$(1): $(2) |
609,12 → 701,13 |
iconv -f cp866 -t cp1251 "$$<" > "$$@" |
endef |
$(foreach f, $(RECODE_TEXT_FILES), $(eval $(call recode_meta_rule,$(fbinary),$(fimage)))) |
endif |
|
# Sorry, even black magic seems to be insufficient for |
# auto-handling all subtle effects. So we just define |
# command lines for compiling and linking, and |
# maintain the list of sources and objects by hand. |
include Makefile.msvc |
include ../common/Makefile.msvc |
|
# Rules for table |
table: .obj.table/table.exe |
625,7 → 718,7 |
TABLE_H_FILES:=$(wildcard $(PROGS)/other/table/*.h) |
.obj.table/table.exe: $(TABLE_OBJECTS) |
$(msvc_link) |
$(TABLE_OBJECTS): .obj.table/%.obj: $(PROGS)/other/table/%.cpp $(TABLE_H_FILES) Makefile.msvc | .obj.table |
$(TABLE_OBJECTS): .obj.table/%.obj: $(PROGS)/other/table/%.cpp $(TABLE_H_FILES) ../common/Makefile.msvc | .obj.table |
$(msvc_compile) |
.obj.table: |
mkdir -p .obj.table |
641,11 → 734,11 |
GRAPH_FASM_OBJECTS:=.obj.graph/memcpy.obj .obj.graph/memset.obj |
.obj.graph/graph.exe: $(GRAPH_CPP_OBJECTS) $(GRAPH_C_OBJECTS) $(GRAPH_FASM_OBJECTS) |
$(msvc_link) |
$(GRAPH_CPP_OBJECTS): .obj.graph/%.obj: $(PROGS)/other/graph/%.cpp $(GRAPH_H_FILES) Makefile.msvc | .obj.graph |
$(GRAPH_CPP_OBJECTS): .obj.graph/%.obj: $(PROGS)/other/graph/%.cpp $(GRAPH_H_FILES) ../common/Makefile.msvc | .obj.graph |
$(msvc_compile) |
$(GRAPH_C_OBJECTS): .obj.graph/%.obj: $(PROGS)/other/graph/%.c $(GRAPH_H_FILES) Makefile.msvc | .obj.graph |
$(GRAPH_C_OBJECTS): .obj.graph/%.obj: $(PROGS)/other/graph/%.c $(GRAPH_H_FILES) ../common/Makefile.msvc | .obj.graph |
$(msvc_compile) |
$(GRAPH_FASM_OBJECTS): .obj.graph/%.obj: $(PROGS)/other/graph/%.asm Makefile.msvc | .obj.graph |
$(GRAPH_FASM_OBJECTS): .obj.graph/%.obj: $(PROGS)/other/graph/%.asm ../common/Makefile.msvc | .obj.graph |
fasm $< $@ |
.obj.graph: |
mkdir -p .obj.graph |
657,12 → 750,12 |
KOSILKA_H_FILES:=$(PROGS)/games/kosilka/*.h |
.obj.kosilka/kosilka.exe: $(KOSILKA_OBJECTS) |
$(msvc_link) |
$(KOSILKA_OBJECTS): .obj.kosilka/%.obj: $(PROGS)/games/kosilka/%.cpp $(KOSILKA_H_FILES) Makefile.msvc | .obj.kosilka |
$(KOSILKA_OBJECTS): .obj.kosilka/%.obj: $(PROGS)/games/kosilka/%.cpp $(KOSILKA_H_FILES) ../common/Makefile.msvc | .obj.kosilka |
$(msvc_compile) |
.obj.kosilka: |
mkdir -p .obj.kosilka |
|
include Makefile.gcc |
include ../common/Makefile.gcc |
|
# Rules for shell |
shell: .obj.shell/start.o .obj.shell/shell.o .obj.shell/kolibri.o .obj.shell/stdlib.o .obj.shell/string.o .obj.shell/ctype.o \ |
674,11 → 767,11 |
$(PROGS)/system/shell/cmd/*.c \ |
$(PROGS)/system/shell/modules/*.c \ |
$(PROGS)/system/shell/locale/rus/globals.h \ |
Makefile.gcc | .obj.shell |
../common/Makefile.gcc | .obj.shell |
$(gcc_compile) |
.obj.shell/kolibri.o .obj.shell/stdlib.o .obj.shell/string.o .obj.shell/ctype.o: .obj.shell/%.o: \ |
$(PROGS)/system/shell/system/%.c $(PROGS)/system/shell/system/*.h \ |
Makefile.gcc | .obj.shell |
../common/Makefile.gcc | .obj.shell |
$(gcc_compile) |
.obj.shell/start.o: $(PROGS)/system/shell/start.asm | .obj.shell |
fasm $< $@ |
691,10 → 784,10 |
$(call gcc_link,$(E80DIR)/kolibri.ld) |
.obj.e80/e80.o: $(E80DIR)/e80.c $(E80DIR)/48.h \ |
$(E80DIR)/system/*.h $(E80DIR)/system/msgbox.c \ |
$(E80DIR)/z80/z80.h Makefile.gcc | .obj.e80 |
$(E80DIR)/z80/z80.h ../common/Makefile.gcc | .obj.e80 |
$(gcc_compile) |
.obj.e80/kolibri.o .obj.e80/stdlib.o .obj.e80/string.o: .obj.e80/%.o: \ |
$(E80DIR)/system/%.c $(E80DIR)/system/*.h Makefile.gcc | .obj.e80 |
$(E80DIR)/system/%.c $(E80DIR)/system/*.h ../common/Makefile.gcc | .obj.e80 |
$(gcc_compile) |
.obj.e80/z80.o: $(E80DIR)/z80/z80.c $(E80DIR)/z80/* |
$(gcc_compile) |
722,9 → 815,9 |
$(msvc_link) |
.obj.ac97snd/ac97wav.obj: $(AC97DIR)/ac97snd/ac97wav.c \ |
$(AC97DIR)/kolibri.h $(AC97DIR)/ac97snd/ac97wav.h $(AC97DIR)/mpg/mpg123.h \ |
$(AC97DIR)/sound.h $(AC97DIR)/ufmod-codec.h Makefile.msvc | .obj.ac97snd |
$(AC97DIR)/sound.h $(AC97DIR)/ufmod-codec.h ../common/Makefile.msvc | .obj.ac97snd |
$(msvc_compile) |
.obj.ac97snd/crt.obj: $(AC97DIR)/ac97snd/crt.c $(AC97DIR)/ac97snd/crt.h Makefile.msvc | .obj.ac97snd |
.obj.ac97snd/crt.obj: $(AC97DIR)/ac97snd/crt.c $(AC97DIR)/ac97snd/crt.h ../common/Makefile.msvc | .obj.ac97snd |
$(msvc_compile) |
.obj.ac97snd/k_lib.obj: $(AC97DIR)/ac97snd/k_lib.asm $(AC97DIR)/ac97snd/proc32.inc | .obj.ac97snd |
fasm $< $@ |
739,7 → 832,7 |
AC97SND_MPG_C_OBJECTS:=$(patsubst $(AC97DIR)/mpg/%.c,.obj.ac97snd/%.o,$(AC97SND_MPG_C_FILES)) |
.obj.ac97snd/mpg.lib: $(AC97SND_MPG_C_OBJECTS) .obj.ac97snd/pow.obj |
win32-link /lib /ltcg /out:$@ $^ |
$(AC97SND_MPG_C_OBJECTS): .obj.ac97snd/%.o: $(AC97DIR)/mpg/%.c $(AC97SND_MPG_H_FILES) Makefile.msvc | .obj.ac97snd |
$(AC97SND_MPG_C_OBJECTS): .obj.ac97snd/%.o: $(AC97DIR)/mpg/%.c $(AC97SND_MPG_H_FILES) ../common/Makefile.msvc | .obj.ac97snd |
$(msvc_compile) |
.obj.ac97snd/pow.obj: $(AC97DIR)/mpg/pow.asm $(AC97DIR)/mpg/proc32.inc | .obj.ac97snd |
fasm $< $@ |