Fix floppy build.
[AROS.git] / arch / i386-pc / boot / floppy / mmakefile.src
blob64e926966b355b2346f085e1ada831e004960c55
1 # $Id$
2 include $(TOP)/config/make.cfg
4 .PHONY: $(DISTDIR)/aros-pc-i386.img $(DISTDIR)/system-pc-i386.img
6 #MM bootdisk-pc-i386 : AROS             \
7 #MM                     bootdisk-setup-pc-i386 \
8 #MM                     kernel-package-pc-i386          \
9 #MM                     bootloader-$(AROS_TARGET_BOOTLOADER)-$(AROS_TARGET_ARCH)-$(AROS_TARGET_CPU)
11 #MM systemdisk-pc-i386 : AROS           \
12 #MM                     systemdisk-setup-pc-i386 \
13 #MM                     bootloader-$(AROS_TARGET_BOOTLOADER)-$(AROS_TARGET_ARCH)-$(AROS_TARGET_CPU)
15 SYSTEM_FILES := \
16     C/NewShell \
17     C/Unpack \
18     Libs/locale.library \
19     Libs/iffparse.library \
20     AROS.boot
22 BOOT_EXTRA_FILES :=
24 BOOT_TAR_EXECUTABLES := \
25     C/AddBuffers C/AddDatatypes C/Alias C/Ask C/Assign C/Avail C/Break C/CD \
26     C/ChangeTaskPri C/Copy C/Date C/Delete C/Dir C/DiskChange C/Echo C/Else \
27     C/EndCLI C/EndIf C/EndSkip C/Execute C/FailAt C/Fault C/Filenote System/Format \
28     C/Get C/Getenv C/IPrefs C/If C/Info C/Join C/Lab C/List \
29     C/MakeDir C/MakeLink C/Mount C/NewShell C/Path C/Prompt C/Protect C/Quit \
30     C/Reboot C/Relabel C/Rename C/Resident C/Run C/Search C/Set C/SetClock \
31     C/SetDate C/Setenv C/Skip C/Stack C/Status C/Touch C/Type C/Unalias \
32     C/Unset C/Unsetenv C/Version C/Which C/Why C/install-i386-pc \
33     C/Partition \
34     Classes/Datatypes/ascii.datatype \
35     Classes/Datatypes/binary.datatype \
36     Classes/Datatypes/text.datatype \
37     Classes/Datatypes/picture.datatype \
38     Classes/Datatypes/ilbm.datatype \
39     Classes/Datatypes/png.datatype \
40     Classes/Zune/AboutWindow.mcc \
41     Classes/Zune/Calendar.mcc \
42     Classes/Zune/Clock.mcc \
43     Classes/Zune/IconDrawerList.mui \
44     Classes/Zune/IconImage.mcc \
45     Classes/Zune/IconList.mui \
46     Classes/Zune/IconListview.mui \
47     Classes/Zune/IconDrawerList.mui \
48     Classes/Zune/IconVolumeList.mui Classes/Zune/PrefsWindow.mcc \
49     Classes/Zune/PrefsEditor.mcc Classes/Zune/SystemPrefsWindow.mcc \
50     Devs/clipboard.device \
51     Devs/serial.device \
52     L/pipe-handler \
53     Libs/arosc.library Libs/asl.library Libs/commodities.library \
54     Libs/cybergraphics.library \
55     Libs/datatypes.library Libs/diskfont.library Libs/gadtools.library \
56     Libs/icon.library Libs/workbench.library \
57     Libs/reqtools.library Libs/muimaster.library Libs/coolimages.library \
58     Prefs/Font \
59     Prefs/Time \
60     System/About System/FixFonts \
61     System/Wanderer/Wanderer \
62     System/Wanderer/Tools/Delete System/Wanderer/Tools/DiskInfo \
63     System/Wanderer/Tools/ExecuteCommand \
64     System/Wanderer/Tools/ExecuteStartup \
65     System/Wanderer/Tools/Info System/Wanderer/Tools/WBNewDrawer \
66     System/Wanderer/Tools/WBRename \
67     Tools/HDToolBox \
68     Tools/Debug/sashimi \
69     Utilities/MultiView
72 BOOT_TAR_ICONS := \
73     Devs.info \
74     Fonts.info \
75     Locale.info \
76     Prefs.info \
77     Prefs/Font.info \
78     Prefs/Time.info \
79     System.info \
80     System/FixFonts.info \
81     System/Wanderer/Wanderer.info \
82     System/Wanderer/Tools/Delete.info System/Wanderer/Tools/DiskInfo.info \
83     System/Wanderer/Tools/ExecuteCommand.info System/Wanderer/Tools/Info.info \
84     System/Wanderer/Tools/WBNewDrawer.info System/Wanderer/Tools/WBRename.info \
85     Tools.info \
86     Tools/HDToolBox.info \
87     Tools/Debug.info \
88     Tools/Debug/Sashimi.info \
89     Utilities.info
92 BOOT_TAR_MISC := \
93     Devs/DataTypes/ELF Devs/DataTypes/ELF_EXE Devs/DataTypes/ILBM \
94     Devs/DataTypes/FTXT Devs/DOSDrivers/PIPE \
95     Devs/Keymaps Devs/Mountlist \
96     Fonts/fixed/8 Fonts/arial/13 Fonts/ttcourier/14 \
97     Locale/Countries Locale/Help \
98     Prefs/Env-Archive/hdtoolbox.prefs \
99     Prefs/Env-Archive/SYS/font.prefs Prefs/Env-Archive/SYS/theme.var \
100     Prefs/Env-Archive/SYS/def_Disk.info \
101     Prefs/Env-Archive/SYS/def_Drawer.info \
102     Prefs/Env-Archive/SYS/def_Project.info \
103     Prefs/Env-Archive/SYS/def_RAM.info \
104     Prefs/Env-Archive/SYS/def_Tool.info \
105     S/Shell-Startup S/Startup-Sequence \
106     System/Themes/Mason \
107     System/Themes/$(AROS_GUI_THEME)
110 BOOT_SRC_DIR    := $(AROSDIR)
111 BOOT_DEST_DIR   := $(OSGENDIR)/boot/bootdisk
112 SYSTEM_DEST_DIR := $(OSGENDIR)/boot/systemdisk
114 ifeq ($(AROS_TARGET_BOOTLOADER),grub)
115 BOOT_FILES += boot/grub/stage1
116 BOOT_TAR_MISC += boot/grub/menu.lst.DH0 boot/grub/stage2
117 BOOT_EXTRA_FILES += $(BOOT_DEST_DIR)/boot/grub/stage2
119 $(BOOT_DEST_DIR)/boot/grub/stage2 $(SYSTEM_DEST_DIR)/boot/grub/stage2:
120         @$(CP) $(AROSDIR)/boot/grub/stage2_hdisk $@
121 endif
123 ifeq ($(AROS_TARGET_BOOTLOADER),grub2)
124 BOOT_FILES += boot/grub/grub.cfg
125 BOOT_TAR_MISC += boot/grub/grub.cfg
126 endif
128 BOOT_TAR_FILES := $(BOOT_TAR_EXECUTABLES) $(BOOT_TAR_ICONS) $(BOOT_TAR_MISC)
130 BOOT_DEST_FILES := $(foreach f, $(BOOT_FILES), $(BOOT_DEST_DIR)/$(f))
132 SYSTEM_DEST_FILES := $(foreach f, $(SYSTEM_FILES), $(SYSTEM_DEST_DIR)/$(f))
135 bootdisk-setup-pc-i386 :
136         @$(MKDIR) "$(AROSDIR)/Tools/Boot Disks"
137         -$(RM) $(BOOT_DEST_DIR)
138         %mkdirs_q $(BOOT_DEST_DIR)
139         %mkdirs_q $(BOOT_DEST_DIR)/boot/grub
140         @$(CP) $(SRCDIR)/$(CURDIR)/menu.lst $(BOOT_DEST_DIR)/boot/grub/
143 systemdisk-setup-pc-i386 :
144         @$(MKDIR) "$(AROSDIR)/Tools/Boot Disks"
145         -$(RM) $(SYSTEM_DEST_DIR)
146         %mkdirs_q $(SYSTEM_DEST_DIR)
147         %mkdirs_q $(SYSTEM_DEST_DIR)/C
148         %mkdirs_q $(SYSTEM_DEST_DIR)/Libs
149         %mkdirs_q $(SYSTEM_DEST_DIR)/S
151 #MM workbench-boot-pc-i386
152 workbench-boot-pc-i386:
153         @$(NOP)
155 bootdisk-pc-i386: $(DISTDIR)/aros-pc-i386.img
156 systemdisk-pc-i386: $(DISTDIR)/system-pc-i386.img
158 .PHONY: bootdisk-pc-i386-quick systemdisk-pc-i386-quick
161 bootdisk-pc-i386-quick : bootdisk-pc-i386
164 systemdisk-pc-i386-quick : systemdisk-pc-i386
166 $(DISTDIR)/aros-pc-i386.img: $(BOOT_DEST_FILES) $(BOOT_EXTRA_FILES) \
167  $(BINDIR)/boot/bootstrap-pc-i386.gz \
168  $(GENDIR)/$(CURDIR)/install-$(AROS_HOST_ARCH)-$(AROS_HOST_CPU)
169         @$(MKDIR) -p "$(DISTDIR)"
170         $(RM) $@
171         $(COPYTOAFS) $@ --name "AROS Boot Floppy" --size floppy1440 $(BOOT_DEST_DIR)
172         $(GENDIR)/$(CURDIR)/install-$(AROS_HOST_ARCH)-$(AROS_HOST_CPU) $@
174 $(DISTDIR)/system-pc-i386.img: $(SYSTEM_DEST_FILES) \
175  $(SYSTEM_DEST_DIR)/AROS.pkg $(SYSTEM_DEST_DIR)/S/Startup-Sequence
176         @$(MKDIR) -p "$(DISTDIR)"
177         $(RM) $@
178         $(COPYTOAFS) $@ --name "AROS Live Floppy" --size floppy1440 $(SYSTEM_DEST_DIR)
180 $(SYSTEM_DEST_DIR)/S/Startup-Sequence:
181         @$(CP) $(SRCDIR)/workbench/s/Startup-Sequence.DEMOFLOPPY $@
183 $(GENDIR)/$(CURDIR)/install-$(AROS_HOST_ARCH)-$(AROS_HOST_CPU): $(SRCDIR)/$(CURDIR)/install.c
184         echo $(GENDIR)/$(CURDIR)
185         @$(MKDIR) -p $(GENDIR)/$(CURDIR)
186         @$(HOST_CC) $(HOST_CFLAGS) $(SRCDIR)/$(CURDIR)/install.c -o $(GENDIR)/$(CURDIR)/install-$(AROS_HOST_ARCH)-$(AROS_HOST_CPU)
188 $(SYSTEM_DEST_DIR)/AROS.pkg : $(addprefix $(BOOT_SRC_DIR)/,$(BOOT_TAR_FILES))
189         @$(RM) -rf $(OSGENDIR)/boot/bootdisk.compressed
190         @$(MKDIR) -p $(OSGENDIR)/boot/bootdisk.compressed
191         @$(MKDIR) -p $(OSGENDIR)/boot/bootdisk.compressed/S
192         @$(CP) $(SRCDIR)/workbench/s/Startup-Sequence $(OSGENDIR)/boot/bootdisk.compressed/S/Startup-Sequence
193         @( \
194             oldpwd=$$PWD; \
195             cd $(BOOT_SRC_DIR) && \
196             for path in $(BOOT_TAR_EXECUTABLES); do \
197                 $(SH) $(SRCDIR)/$(CURDIR)/copypath $$path $(OSGENDIR)/boot/bootdisk.compressed ; \
198                                 $(TARGET_STRIP) --strip-unneeded -R .note -R .comment $(OSGENDIR)/boot/bootdisk.compressed/$$path ; \
199             done && \
200             for path in $(BOOT_TAR_ICONS); do \
201                 $(SH) $(SRCDIR)/$(CURDIR)/copypath $$path $(OSGENDIR)/boot/bootdisk.compressed ; \
202             done && \
203             for path in $(BOOT_TAR_MISC); do \
204                 $(SH) $(SRCDIR)/$(CURDIR)/copypath $$path $(OSGENDIR)/boot/bootdisk.compressed ; \
205             done && \
206             cd $(OSGENDIR)/boot/ && \
207             $(RM) AROS.pkg && \
208             $(SRCDIR)/tools/package/pkg c AROS.pkg bootdisk.compressed && \
209             bzip2 -9 AROS.pkg && \
210             mv -f AROS.pkg.bz2 $(SYSTEM_DEST_DIR)/AROS.pkg \
211         )
213 $(BOOT_DEST_DIR)/% : $(BOOT_SRC_DIR)/%
214         @$(CP) $< $@
216 $(SYSTEM_DEST_DIR)/% : $(BOOT_SRC_DIR)/%
217         @$(CP) $< $@
220 install-bootdisk :
221         @$(ECHO) "Insert blank floppy-disk in /dev/fd0 and press enter."
222         @read
223         @$(ECHO) "Writing AROS Boot Image to floppy..."
224         @dd if=$(DISTDIR)/aros-pc-i386.img of=/dev/fd0
227 install-systemdisk :
228         @$(ECHO) "Insert blank floppy-disk in /dev/fd0 and press enter."
229         @read
230         @$(ECHO) "Writing AROS System Image to floppy..."
231         @dd if=$(DISTDIR)/system-pc-i386.img of=/dev/fd0
234 install-pc-i386 :
235         @$(ECHO) -n "Copying AROS kernel to /aros/boot directory... "
236         @cp $(BINDIR)/boot/aros-pc-i386 /aros/boot/
237         @$(ECHO) "Done."
240 clean ::
241         -$(RM) $(TESTS)
243 %common