2009-02-09 Felix Zielcke <fzielcke@z-51.de>
[grub2/phcoder.git] / conf / powerpc-ieee1275.rmk
blobb48f303d50a0401f182769786734e51053f0bfa5
2 # -*- makefile -*-
4 COMMON_ASFLAGS = -nostdinc -D__ASSEMBLY__
5 COMMON_CFLAGS = -ffreestanding
6 COMMON_LDFLAGS += -nostdlib
8 # Used by various components.  These rules need to precede them.
9 normal/lexer.c_DEPENDENCIES = grub_script.tab.h
11 # Images.
13 MOSTLYCLEANFILES += symlist.c kernel_syms.lst
14 DEFSYMFILES += kernel_syms.lst
16 kernel_elf_HEADERS = arg.h boot.h cache.h device.h disk.h dl.h elf.h elfload.h \
17         env.h err.h file.h fs.h kernel.h misc.h mm.h net.h parser.h rescue.h \
18         symbol.h term.h time.h types.h powerpc/libgcc.h loader.h partition.h \
19         pc_partition.h ieee1275/ieee1275.h machine/kernel.h
21 symlist.c: $(addprefix include/grub/,$(kernel_elf_HEADERS)) config.h gensymlist.sh
22         /bin/sh gensymlist.sh $(filter %.h,$^) > $@ || (rm -f $@; exit 1)
24 kernel_syms.lst: $(addprefix include/grub/,$(kernel_elf_HEADERS)) config.h genkernsyms.sh
25         /bin/sh genkernsyms.sh $(filter %.h,$^) > $@ || (rm -f $@; exit 1)
27 # Programs
28 pkglib_PROGRAMS = kernel.elf
30 # Utilities.
31 sbin_UTILITIES = grub-mkdevicemap
32 ifeq ($(enable_grub_emu), yes)
33 sbin_UTILITIES += grub-emu
34 endif
36 # For grub-mkdevicemap.
37 grub_mkdevicemap_SOURCES = util/grub-mkdevicemap.c util/misc.c
39 # For grub-emu
40 util/grub-emu.c_DEPENDENCIES = grub_emu_init.h
41 grub_emu_SOURCES = commands/boot.c commands/cat.c commands/cmp.c        \
42         commands/configfile.c commands/help.c                           \
43         commands/search.c commands/terminal.c commands/test.c           \
44         commands/ls.c commands/blocklist.c commands/hexdump.c           \
45         lib/hexdump.c commands/halt.c commands/reboot.c                 \
46         disk/loopback.c                                                 \
47         \
48         fs/affs.c fs/cpio.c fs/ext2.c fs/fat.c fs/ext2.c fs/hfs.c       \
49         fs/hfsplus.c fs/iso9660.c fs/udf.c fs/jfs.c fs/minix.c          \
50         fs/ntfs.c fs/ntfscomp.c fs/reiserfs.c fs/sfs.c                  \
51         fs/ufs.c fs/xfs.c fs/afs.c fs/tar.c                             \
52         \
53         io/gzio.c                                                       \
54         kern/device.c kern/disk.c kern/dl.c kern/elf.c kern/env.c       \
55         kern/err.c kern/file.c kern/fs.c kern/loader.c kern/main.c      \
56         kern/misc.c kern/parser.c kern/partition.c kern/rescue.c        \
57         kern/term.c fs/fshelp.c                                         \
58         normal/arg.c normal/cmdline.c normal/command.c                  \
59         normal/completion.c normal/execute.c                            \
60         normal/function.c normal/lexer.c normal/main.c normal/menu.c    \
61         normal/menu_entry.c normal/menu_viewer.c normal/misc.c          \
62         normal/script.c                                                 \
63         normal/color.c                                                  \
64         partmap/amiga.c partmap/apple.c partmap/pc.c partmap/sun.c      \
65         partmap/acorn.c                                                 \
66         util/console.c util/hostfs.c util/grub-emu.c util/misc.c        \
67         util/hostdisk.c util/getroot.c                                  \
68         util/powerpc/ieee1275/misc.c                                    \
69         \
70         disk/raid.c disk/raid5_recover.c disk/raid6_recover.c           \
71         disk/mdraid_linux.c disk/dmraid_nvidia.c disk/lvm.c             \
72         grub_script.tab.c grub_emu_init.c
74 grub_emu_LDFLAGS = $(LIBCURSES)
76 kernel_elf_SOURCES = kern/powerpc/ieee1275/startup.S kern/ieee1275/cmain.c \
77         kern/ieee1275/ieee1275.c kern/main.c kern/device.c              \
78         kern/disk.c kern/dl.c kern/err.c kern/file.c kern/fs.c          \
79         kern/misc.c kern/mm.c kern/loader.c kern/rescue.c kern/term.c   \
80         kern/ieee1275/init.c                                            \
81         kern/ieee1275/mmap.c                                            \
82         term/ieee1275/ofconsole.c               \
83         kern/ieee1275/openfw.c disk/ieee1275/ofdisk.c           \
84         kern/parser.c kern/partition.c kern/env.c kern/powerpc/dl.c     \
85         kern/generic/millisleep.c kern/time.c                            \
86         symlist.c kern/powerpc/cache.S
87 kernel_elf_HEADERS = grub/powerpc/ieee1275/ieee1275.h
88 kernel_elf_CFLAGS = $(COMMON_CFLAGS)
89 kernel_elf_ASFLAGS = $(COMMON_ASFLAGS)
90 kernel_elf_LDFLAGS = $(COMMON_LDFLAGS) -static-libgcc -lgcc \
91         -Wl,-N,-S,-Ttext,0x200000,-Bstatic
93 # Scripts.
94 sbin_SCRIPTS = grub-install
95 bin_SCRIPTS = grub-mkrescue
97 # For grub-install.
98 grub_install_SOURCES = util/ieee1275/grub-install.in
100 # For grub-mkrescue.
101 grub_mkrescue_SOURCES = util/powerpc/ieee1275/grub-mkrescue.in
103 # Modules.
104 pkglib_MODULES = halt.mod \
105         _linux.mod \
106         linux.mod \
107         normal.mod \
108         reboot.mod \
109         suspend.mod \
110         _multiboot.mod \
111         multiboot.mod \
112         memdisk.mod \
113         lsmmap.mod
115 # For _linux.mod.
116 _linux_mod_SOURCES = loader/powerpc/ieee1275/linux.c
117 _linux_mod_CFLAGS = $(COMMON_CFLAGS)
118 _linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
120 # For linux.mod.
121 linux_mod_SOURCES = loader/powerpc/ieee1275/linux_normal.c
122 linux_mod_CFLAGS = $(COMMON_CFLAGS)
123 linux_mod_LDFLAGS = $(COMMON_LDFLAGS)
126 # Only arch dependant part of normal.mod will be here. Common part for
127 # all architecures of normal.mod is at start and should be kept at sync
128 # with other makefiles.
130 # Please put arch dependant part of normal.mod at the end of list to
131 # keep it simpler to update to different architectures.
133 normal_mod_SOURCES = normal/arg.c normal/cmdline.c normal/command.c     \
134         normal/completion.c normal/execute.c                            \
135         normal/function.c normal/lexer.c normal/main.c normal/menu.c    \
136         normal/color.c                                                  \
137         normal/menu_viewer.c normal/menu_entry.c                        \
138         normal/misc.c grub_script.tab.c                                 \
139         normal/script.c                                                 \
140         normal/powerpc/setjmp.S
141 normal_mod_CFLAGS = $(COMMON_CFLAGS)
142 normal_mod_ASFLAGS = $(COMMON_ASFLAGS)
143 normal_mod_LDFLAGS = $(COMMON_LDFLAGS)
145 # For suspend.mod
146 suspend_mod_SOURCES = commands/ieee1275/suspend.c
147 suspend_mod_CFLAGS = $(COMMON_CFLAGS)
148 suspend_mod_LDFLAGS = $(COMMON_LDFLAGS)
150 # For reboot.mod
151 reboot_mod_SOURCES = commands/reboot.c
152 reboot_mod_CFLAGS = $(COMMON_CFLAGS)
153 reboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
155 # For halt.mod
156 halt_mod_SOURCES = commands/halt.c
157 halt_mod_CFLAGS = $(COMMON_CFLAGS)
158 halt_mod_LDFLAGS = $(COMMON_LDFLAGS)
160 # For _multiboot.mod
161 _multiboot_mod_SOURCES = loader/ieee1275/multiboot2.c \
162                          loader/multiboot2.c \
163                          loader/multiboot_loader.c
164 _multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
165 _multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS)
167 # For multiboot.mod
168 multiboot_mod_SOURCES = loader/multiboot_loader_normal.c
169 multiboot_mod_CFLAGS = $(COMMON_CFLAGS)
170 multiboot_mod_LDFLAGS = $(COMMON_LDFLAGS) 
172 # For memdisk.mod.
173 memdisk_mod_SOURCES = disk/memdisk.c
174 memdisk_mod_CFLAGS = $(COMMON_CFLAGS)
175 memdisk_mod_LDFLAGS = $(COMMON_LDFLAGS)
177 # For lsmmap.mod
178 lsmmap_mod_SOURCES = commands/lsmmap.c
179 lsmmap_mod_CFLAGS = $(COMMON_CFLAGS)
180 lsmmap_mod_LDFLAGS = $(COMMON_LDFLAGS)
182 include $(srcdir)/conf/common.mk