1# 2# Copyright 2005 Sun Microsystems, Inc. All rights reserved. 3# Use is subject to license terms. 4# Copyright (c) 2013 by Saso Kiselkov. All rights reserved. 5# Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved. 6# 7include ../../Makefile.grub 8include ../Makefile.solaris.defs 9 10.SUFFIXES: 11.SUFFIXES: .exec $(SUFFIXES) 12 13.exec: 14 $(OBJCOPY) -O binary $< $@ 15 16 17INCLUDES = -I. -I.. -I../stage1 -I../netboot 18LIBS = 19 20FSYS_CFLAGS = -DFSYS_UFS=1 -DFSYS_FAT=1 \ 21 -DFSYS_ZFS=1 -DFSYS_ISO9660=1 \ 22 -DUSE_MD5_PASSWORDS=1 23$(STAGE2_NETBOOT)TFTP_CFLAGS = -DFSYS_TFTP=1 24$(OPTION_FS)FSYS_CFLAGS += -DFSYS_MINIX=1 -DFSYS_JFS=1 -DFSYS_XFS=1 \ 25 -DSYS_VSTAFS=1 -DFSYS_FFS=1 -DFSYS_REISERFS=1 \ 26 -DFSYS_EXT2FS=1 -DFSYS_UFS2=1 27GRAPHICS_CFLAGS = -DSUPPORT_GRAPHICS=1 28# HERCULES_CFLAGS = -DSUPPORT_HERCULES=1 29NETBOOT_CFLAGS = -DSUPPORT_NETBOOT=1 30SERIAL_CFLAGS = -DSUPPORT_SERIAL=1 31GRUB_CFLAGS = -O2 -I../lib -DGRUB_UTIL=1 \ 32 -DFSYS_ISO9660=1 -DFSYS_ZFS=1 -DFSYS_FAT=1 \ 33 -DFSYS_UFS=1 \ 34 -DUSE_MD5_PASSWORDS=1 -DSUPPORT_SERIAL=1 35$(OPTION_FS)GRUB_CFLAGS += -DFSYS_MINIX=1 -DFSYS_JFS=1 -DFSYS_XFS=1 \ 36 -DSYS_VSTAFS=1 -DFSYS_FFS=1 -DFSYS_REISERFS=1 \ 37 -DFSYS_EXT2FS=1 -DFSYS_UFS2=1 38# GRUB_CFLAGS += -DSUPPORT_HERCULES=1 39STAGE1_5_CFLAGS = $(STAGE2_CFLAGS) -DNO_DECOMPRESSION=1 -DSTAGE1_5=1 40STAGE2_CFLAGS = -Os -fno-builtin -nostdinc \ 41 $(SERIAL_CFLAGS) $(GRAPHICS_CFLAGS) 42$(STAGE2_NETBOOT)STAGE2_CFLAGS += $(NETBOOT_CFLAGS) 43#STAGE2_CFLAGS += $(HERCULES_CFLAGS) 44 45NBLOADER_LINK = -nostdlib -N -Ttext 0 46PRE_STAGE2_LINK = -nostdlib -N -Ttext 8200 47PXELOADER_LINK = -nostdlib -N -Ttext 7C00 48STAGE1_5_LINK = -nostdlib -N -Ttext 2000 49START_ELTORITO_LINK = -nostdlib -N -Ttext 7C00 50START_LINK = -nostdlib -N -Ttext 8000 51 52LIBDRIVERS = ../netboot/libdrivers.a 53 54 55BUILT_SOURCES = stage2_size.h 56BUILT_SOURCES += diskless_size.h 57 58 59LIBRARIES = $(LIBGRUB) 60 61LIBGRUB = libgrub.a 62LIBGRUB_OBJS = libgrub_a-boot.o \ 63 libgrub_a-builtins.o \ 64 libgrub_a-char_io.o \ 65 libgrub_a-cmdline.o \ 66 libgrub_a-common.o \ 67 libgrub_a-disk_io.o \ 68 libgrub_a-expand.o \ 69 libgrub_a-fsys_ext2fs.o \ 70 libgrub_a-fsys_fat.o \ 71 libgrub_a-fsys_ffs.o \ 72 libgrub_a-fsys_iso9660.o \ 73 libgrub_a-fsys_jfs.o \ 74 libgrub_a-fsys_minix.o \ 75 libgrub_a-fsys_reiserfs.o \ 76 libgrub_a-zfs_sha256.o \ 77 libgrub_a-zfs_lzjb.o \ 78 libgrub_a-zfs_lz4.o \ 79 libgrub_a-zfs_fletcher.o \ 80 libgrub_a-fsys_zfs.o \ 81 libgrub_a-fsys_ufs.o \ 82 libgrub_a-fsys_ufs2.o \ 83 libgrub_a-fsys_vstafs.o \ 84 libgrub_a-fsys_xfs.o \ 85 libgrub_a-graphics.o \ 86 libgrub_a-gunzip.o \ 87 libgrub_a-md5.o \ 88 libgrub_a-serial.o \ 89 libgrub_a-stage2.o \ 90 libgrub_a-terminfo.o \ 91 libgrub_a-tparm.o 92$(LIBGRUB_OBJS) := CFLAGS = $(BASE_CFLAGS) $(GRUB_CFLAGS) 93 94 95# Will be installed in $(ROOT_BOOT_GRUB). 96INSTALL_DATA = $(E2FS_STAGE1_5_DATA) \ 97 $(FAT_STAGE1_5_DATA) \ 98 $(FFS_STAGE1_5_DATA) \ 99 $(ISO9660_STAGE1_5_DATA) \ 100 $(JFS_STAGE1_5_DATA) \ 101 $(MINIX_STAGE1_5_DATA) \ 102 $(NBGRUB_DATA) \ 103 $(PXEGRUB_DATA) \ 104 $(REISERFS_STAGE1_5_DATA) \ 105 $(STAGE2_DATA) \ 106 $(STAGE2_ELTORITO_DATA) \ 107 $(UFS2_STAGE1_5_DATA) \ 108 $(UFS_STAGE1_5_DATA) \ 109 $(ZFS_STAGE1_5_DATA) \ 110 $(VSTAFS_STAGE1_5_DATA) \ 111 $(XFS_STAGE1_5_DATA) 112 113# Won't be installed. 114NOINSTALL_DATA = $(DISKLESS_DATA) \ 115 $(NBLOADER_DATA) \ 116 $(PRE_STAGE2_DATA) \ 117 $(PXELOADER_DATA) \ 118 $(START_DATA) \ 119 $(START_ELTORITO_DATA) 120 121DATA = $(INSTALL_DATA) $(NOINSTALL_DATA) 122 123 124PROGRAMS = $(DISKLESS_EXEC) \ 125 $(E2FS_STAGE1_5_EXEC) \ 126 $(FAT_STAGE1_5_EXEC) \ 127 $(FFS_STAGE1_5_EXEC) \ 128 $(ISO9660_STAGE1_5_EXEC) \ 129 $(JFS_STAGE1_5_EXEC) \ 130 $(MINIX_STAGE1_5_EXEC) \ 131 $(NBLOADER_EXEC) \ 132 $(PRE_STAGE2_EXEC) \ 133 $(PXELOADER_EXEC) \ 134 $(REISERFS_STAGE1_5_EXEC) \ 135 $(START_EXEC) \ 136 $(START_ELTORITO_EXEC) \ 137 $(UFS2_STAGE1_5_EXEC) \ 138 $(UFS_STAGE1_5_EXEC) \ 139 $(ZFS_STAGE1_5_EXEC) \ 140 $(VSTAFS_STAGE1_5_EXEC) \ 141 $(XFS_STAGE1_5_EXEC) 142 143 144# 145# diskless 146# 147DISKLESS_DATA = diskless 148DISKLESS_EXEC = diskless.exec 149DISKLESS_ASMOBJS = diskless_exec-asm.o 150 151DISKLESS_OBJS = diskless_exec-bios.o \ 152 diskless_exec-boot.o \ 153 diskless_exec-builtins.o \ 154 diskless_exec-char_io.o \ 155 diskless_exec-cmdline.o \ 156 diskless_exec-common.o \ 157 diskless_exec-console.o \ 158 diskless_exec-disk_io.o \ 159 diskless_exec-expand.o \ 160 diskless_exec-fsys_ext2fs.o \ 161 diskless_exec-fsys_fat.o \ 162 diskless_exec-fsys_ffs.o \ 163 diskless_exec-fsys_iso9660.o \ 164 diskless_exec-fsys_jfs.o \ 165 diskless_exec-fsys_minix.o \ 166 diskless_exec-fsys_reiserfs.o \ 167 diskless_exec-zfs_sha256.o \ 168 diskless_exec-zfs_lzjb.o \ 169 diskless_exec-zfs_lz4.o \ 170 diskless_exec-zfs_fletcher.o \ 171 diskless_exec-fsys_zfs.o \ 172 diskless_exec-fsys_ufs.o \ 173 diskless_exec-fsys_ufs2.o \ 174 diskless_exec-fsys_vstafs.o \ 175 diskless_exec-fsys_xfs.o \ 176 diskless_exec-graphics.o \ 177 diskless_exec-gunzip.o \ 178 diskless_exec-hercules.o \ 179 diskless_exec-md5.o \ 180 diskless_exec-serial.o \ 181 diskless_exec-smp-imps.o \ 182 diskless_exec-stage2.o \ 183 diskless_exec-terminfo.o \ 184 diskless_exec-tparm.o 185 186$(DISKLESS_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(PRE_STAGE2_LINK) 187$(DISKLESS_EXEC) := LIBS = $(LIBDRIVERS) 188 189$(DISKLESS_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE2_CFLAGS) \ 190 $(FSYS_CFLAGS) -DFSYS_TFTP=1 \ 191 -DSUPPORT_DISKLESS=1 192 193$(DISKLESS_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE2_CFLAGS) \ 194 $(FSYS_CFLAGS) -DFSYS_TFTP=1 \ 195 -DSUPPORT_DISKLESS=1 196 197# 198# ext2fs stage 1.5 199# 200E2FS_STAGE1_5_DATA = e2fs_stage1_5 201E2FS_STAGE1_5_EXEC = e2fs_stage1_5.exec 202 203E2FS_STAGE1_5_ASMOBJS = e2fs_stage1_5_exec-start.o \ 204 e2fs_stage1_5_exec-asm.o 205 206E2FS_STAGE1_5_OBJS = e2fs_stage1_5_exec-bios.o \ 207 e2fs_stage1_5_exec-char_io.o \ 208 e2fs_stage1_5_exec-common.o \ 209 e2fs_stage1_5_exec-disk_io.o \ 210 e2fs_stage1_5_exec-fsys_ext2fs.o \ 211 e2fs_stage1_5_exec-stage1_5.o 212 213$(E2FS_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 214 215$(E2FS_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE1_5_CFLAGS) \ 216 -DFSYS_EXT2FS=1 -DNO_BLOCK_FILES=1 217 218$(E2FS_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 219 -DFSYS_EXT2FS=1 -DNO_BLOCK_FILES=1 220 221# 222# FAT stage 1.5 223# 224FAT_STAGE1_5_DATA = fat_stage1_5 225FAT_STAGE1_5_EXEC = fat_stage1_5.exec 226 227FAT_STAGE1_5_ASMOBJS = fat_stage1_5_exec-start.o \ 228 fat_stage1_5_exec-asm.o 229 230FAT_STAGE1_5_OBJS = fat_stage1_5_exec-bios.o \ 231 fat_stage1_5_exec-char_io.o \ 232 fat_stage1_5_exec-common.o \ 233 fat_stage1_5_exec-disk_io.o \ 234 fat_stage1_5_exec-fsys_fat.o \ 235 fat_stage1_5_exec-stage1_5.o 236 237$(FAT_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 238 239$(FAT_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE1_5_CFLAGS) \ 240 -DFSYS_FAT=1 -DNO_BLOCK_FILES=1 241 242$(FAT_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 243 -DFSYS_FAT=1 -DNO_BLOCK_FILES=1 244 245# 246# FFS stage 1.5 247# 248FFS_STAGE1_5_DATA = ffs_stage1_5 249FFS_STAGE1_5_EXEC = ffs_stage1_5.exec 250 251FFS_STAGE1_5_ASMOBJS = ffs_stage1_5_exec-start.o \ 252 ffs_stage1_5_exec-asm.o 253 254FFS_STAGE1_5_OBJS = ffs_stage1_5_exec-bios.o \ 255 ffs_stage1_5_exec-char_io.o \ 256 ffs_stage1_5_exec-common.o \ 257 ffs_stage1_5_exec-disk_io.o \ 258 ffs_stage1_5_exec-fsys_ffs.o \ 259 ffs_stage1_5_exec-stage1_5.o 260 261$(FFS_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 262 263$(FFS_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE1_5_CFLAGS) \ 264 -DFSYS_FFS=1 -DNO_BLOCK_FILES=1 265 266$(FFS_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 267 -DFSYS_FFS=1 -DNO_BLOCK_FILES=1 268 269# 270# ISO9660 stage 1.5 271# 272ISO9660_STAGE1_5_DATA = iso9660_stage1_5 273ISO9660_STAGE1_5_EXEC = iso9660_stage1_5.exec 274 275ISO9660_STAGE1_5_ASMOBJS = iso9660_stage1_5_exec-start_eltorito.o \ 276 iso9660_stage1_5_exec-asm.o 277 278ISO9660_STAGE1_5_OBJS = iso9660_stage1_5_exec-bios.o \ 279 iso9660_stage1_5_exec-char_io.o \ 280 iso9660_stage1_5_exec-common.o \ 281 iso9660_stage1_5_exec-disk_io.o \ 282 iso9660_stage1_5_exec-fsys_iso9660.o \ 283 iso9660_stage1_5_exec-stage1_5.o 284 285$(ISO9660_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 286 287$(ISO9660_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) \ 288 $(STAGE1_5_CFLAGS) \ 289 -DFSYS_ISO9660=1 -DNO_BLOCK_FILES=1 290 291$(ISO9660_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 292 -DFSYS_ISO9660=1 -DNO_BLOCK_FILES=1 293 294# 295# IBM JFS stage 1.5 296# 297JFS_STAGE1_5_DATA = jfs_stage1_5 298JFS_STAGE1_5_EXEC = jfs_stage1_5.exec 299 300JFS_STAGE1_5_ASMOBJS = jfs_stage1_5_exec-start.o \ 301 jfs_stage1_5_exec-asm.o 302 303JFS_STAGE1_5_OBJS = jfs_stage1_5_exec-bios.o \ 304 jfs_stage1_5_exec-char_io.o \ 305 jfs_stage1_5_exec-common.o \ 306 jfs_stage1_5_exec-disk_io.o \ 307 jfs_stage1_5_exec-fsys_jfs.o \ 308 jfs_stage1_5_exec-stage1_5.o 309 310$(JFS_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 311 312$(JFS_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE1_5_CFLAGS) \ 313 -DFSYS_JFS=1 -DNO_BLOCK_FILES=1 314 315$(JFS_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 316 -DFSYS_JFS=1 -DNO_BLOCK_FILES=1 317 318# 319# Minix fs stage 1.5 320# 321MINIX_STAGE1_5_DATA = minix_stage1_5 322MINIX_STAGE1_5_EXEC = minix_stage1_5.exec 323 324MINIX_STAGE1_5_ASMOBJS = minix_stage1_5_exec-start.o \ 325 minix_stage1_5_exec-asm.o 326 327MINIX_STAGE1_5_OBJS = minix_stage1_5_exec-bios.o \ 328 minix_stage1_5_exec-char_io.o \ 329 minix_stage1_5_exec-common.o \ 330 minix_stage1_5_exec-disk_io.o \ 331 minix_stage1_5_exec-fsys_minix.o \ 332 minix_stage1_5_exec-stage1_5.o 333 334$(MINIX_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 335 336$(MINIX_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE1_5_CFLAGS) \ 337 -DFSYS_MINIX=1 -DNO_BLOCK_FILES=1 338 339$(MINIX_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 340 -DFSYS_MINIX=1 -DNO_BLOCK_FILES=1 341 342# 343# nbgrub 344# 345NBGRUB_DATA = nbgrub 346 347# 348# nbloader 349# 350NBLOADER_DATA = nbloader 351NBLOADER_EXEC = nbloader.exec 352NBLOADER_ASMOBJS = nbloader_exec-nbloader.o 353NBLOADER_OBJS = 354$(NBLOADER_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(NBLOADER_LINK) 355$(NBLOADER_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE2_CFLAGS) 356 357# 358# Pre-stage2 359# 360PRE_STAGE2_DATA = pre_stage2 361PRE_STAGE2_EXEC = pre_stage2.exec 362PRE_STAGE2_ASMOBJS = pre_stage2_exec-asm.o 363 364PRE_STAGE2_OBJS = pre_stage2_exec-bios.o \ 365 pre_stage2_exec-boot.o \ 366 pre_stage2_exec-builtins.o \ 367 pre_stage2_exec-char_io.o \ 368 pre_stage2_exec-cmdline.o \ 369 pre_stage2_exec-common.o \ 370 pre_stage2_exec-console.o \ 371 pre_stage2_exec-disk_io.o \ 372 pre_stage2_exec-expand.o \ 373 pre_stage2_exec-fsys_ext2fs.o \ 374 pre_stage2_exec-fsys_fat.o \ 375 pre_stage2_exec-fsys_ffs.o \ 376 pre_stage2_exec-fsys_iso9660.o \ 377 pre_stage2_exec-fsys_jfs.o \ 378 pre_stage2_exec-fsys_minix.o \ 379 pre_stage2_exec-fsys_reiserfs.o \ 380 pre_stage2_exec-zfs_sha256.o \ 381 pre_stage2_exec-zfs_lzjb.o \ 382 pre_stage2_exec-zfs_lz4.o \ 383 pre_stage2_exec-zfs_fletcher.o \ 384 pre_stage2_exec-fsys_zfs.o \ 385 pre_stage2_exec-fsys_ufs.o \ 386 pre_stage2_exec-fsys_ufs2.o \ 387 pre_stage2_exec-fsys_vstafs.o \ 388 pre_stage2_exec-fsys_xfs.o \ 389 pre_stage2_exec-graphics.o \ 390 pre_stage2_exec-gunzip.o \ 391 pre_stage2_exec-hercules.o \ 392 pre_stage2_exec-md5.o \ 393 pre_stage2_exec-serial.o \ 394 pre_stage2_exec-smp-imps.o \ 395 pre_stage2_exec-stage2.o \ 396 pre_stage2_exec-terminfo.o \ 397 pre_stage2_exec-tparm.o 398 399$(PRE_STAGE2_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(PRE_STAGE2_LINK) 400$(STAGE2_NETBOOT)$(PRE_STAGE2_EXEC) := LIBS = $(LIBDRIVERS) 401 402$(PRE_STAGE2_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE2_CFLAGS) \ 403 $(FSYS_CFLAGS) $(TFTP_CFLAGS) 404 405$(PRE_STAGE2_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE2_CFLAGS) \ 406 $(FSYS_CFLAGS) $(TFTP_CFLAGS) 407 408# 409# pxegrub 410# 411PXEGRUB_DATA = pxegrub 412 413# 414# pxeloader 415# 416PXELOADER_DATA = pxeloader 417PXELOADER_EXEC = pxeloader.exec 418PXELOADER_ASMOBJS = pxeloader_exec-pxeloader.o 419PXELOADER_OBJS = 420$(PXELOADER_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(PXELOADER_LINK) 421$(PXELOADER_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE2_CFLAGS) 422 423# 424# ReiserFS stage 1.5 425# 426REISERFS_STAGE1_5_DATA = reiserfs_stage1_5 427REISERFS_STAGE1_5_EXEC = reiserfs_stage1_5.exec 428 429REISERFS_STAGE1_5_ASMOBJS = reiserfs_stage1_5_exec-start.o \ 430 reiserfs_stage1_5_exec-asm.o 431 432REISERFS_STAGE1_5_OBJS = reiserfs_stage1_5_exec-bios.o \ 433 reiserfs_stage1_5_exec-char_io.o \ 434 reiserfs_stage1_5_exec-common.o \ 435 reiserfs_stage1_5_exec-disk_io.o \ 436 reiserfs_stage1_5_exec-fsys_reiserfs.o \ 437 reiserfs_stage1_5_exec-stage1_5.o 438 439$(REISERFS_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 440 441$(REISERFS_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) \ 442 $(STAGE1_5_CFLAGS) \ 443 -DFSYS_REISERFS=1 -DNO_BLOCK_FILES=1 444 445$(REISERFS_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 446 -DFSYS_REISERFS=1 -DNO_BLOCK_FILES=1 447 448# 449# stage2 450# 451STAGE2_DATA = stage2 452 453# 454# Eltorito stage2 455# 456STAGE2_ELTORITO_DATA = stage2_eltorito 457 458# 459# start 460# 461START_DATA = start 462START_EXEC = start.exec 463START_ASMOBJS = start_exec-start.o 464START_OBJS = 465$(START_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(START_LINK) 466$(START_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE2_CFLAGS) 467 468# 469# Eltorito start 470# 471START_ELTORITO_DATA = start_eltorito 472START_ELTORITO_EXEC = start_eltorito.exec 473START_ELTORITO_ASMOBJS = start_eltorito_exec-start_eltorito.o 474START_ELTORITO_OBJS = 475$(START_ELTORITO_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(START_ELTORITO_LINK) 476$(START_ELTORITO_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE2_CFLAGS) 477 478# 479# UFS2 stage 1.5 480# 481UFS2_STAGE1_5_DATA = ufs2_stage1_5 482UFS2_STAGE1_5_EXEC = ufs2_stage1_5.exec 483 484UFS2_STAGE1_5_ASMOBJS = ufs2_stage1_5_exec-start.o \ 485 ufs2_stage1_5_exec-asm.o 486 487UFS2_STAGE1_5_OBJS = ufs2_stage1_5_exec-bios.o \ 488 ufs2_stage1_5_exec-char_io.o \ 489 ufs2_stage1_5_exec-common.o \ 490 ufs2_stage1_5_exec-disk_io.o \ 491 ufs2_stage1_5_exec-fsys_ufs2.o \ 492 ufs2_stage1_5_exec-stage1_5.o 493 494$(UFS2_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 495 496$(UFS2_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE1_5_CFLAGS) \ 497 -DFSYS_UFS2=1 -DNO_BLOCK_FILES=1 498 499$(UFS2_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 500 -DFSYS_UFS2=1 -DNO_BLOCK_FILES=1 501 502# 503# UFS stage 1.5 504# 505UFS_STAGE1_5_DATA = ufs_stage1_5 506UFS_STAGE1_5_EXEC = ufs_stage1_5.exec 507 508UFS_STAGE1_5_ASMOBJS = ufs_stage1_5_exec-start.o \ 509 ufs_stage1_5_exec-asm.o 510 511UFS_STAGE1_5_OBJS = ufs_stage1_5_exec-bios.o \ 512 ufs_stage1_5_exec-char_io.o \ 513 ufs_stage1_5_exec-common.o \ 514 ufs_stage1_5_exec-disk_io.o \ 515 ufs_stage1_5_exec-fsys_ufs.o \ 516 ufs_stage1_5_exec-stage1_5.o 517 518$(UFS_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 519 520$(UFS_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE1_5_CFLAGS) \ 521 -DFSYS_UFS=1 -DNO_BLOCK_FILES=1 522 523$(UFS_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 524 -DFSYS_UFS=1 -DNO_BLOCK_FILES=1 525 526# 527# ZFS stage 1.5 528# 529ZFS_STAGE1_5_DATA = zfs_stage1_5 530ZFS_STAGE1_5_EXEC = zfs_stage1_5.exec 531 532ZFS_STAGE1_5_ASMOBJS = zfs_stage1_5_exec-start.o \ 533 zfs_stage1_5_exec-asm.o 534 535ZFS_STAGE1_5_OBJS = zfs_stage1_5_exec-bios.o \ 536 zfs_stage1_5_exec-char_io.o \ 537 zfs_stage1_5_exec-common.o \ 538 zfs_stage1_5_exec-disk_io.o \ 539 zfs_stage1_5_exec-zfs_sha256.o \ 540 zfs_stage1_5_exec-zfs_lzjb.o \ 541 zfs_stage1_5_exec-zfs_lz4.o \ 542 zfs_stage1_5_exec-zfs_fletcher.o \ 543 zfs_stage1_5_exec-fsys_zfs.o \ 544 zfs_stage1_5_exec-stage1_5.o 545 546$(ZFS_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 547 548$(ZFS_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE1_5_CFLAGS) \ 549 -DFSYS_ZFS=1 -DNO_BLOCK_FILES=1 550 551$(ZFS_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 552 -DFSYS_ZFS=1 -DNO_BLOCK_FILES=1 553 554# 555# VSTa FS 556# 557VSTAFS_STAGE1_5_DATA = vstafs_stage1_5 558VSTAFS_STAGE1_5_EXEC = vstafs_stage1_5.exec 559 560VSTAFS_STAGE1_5_ASMOBJS = vstafs_stage1_5_exec-start.o \ 561 vstafs_stage1_5_exec-asm.o 562 563VSTAFS_STAGE1_5_OBJS = vstafs_stage1_5_exec-bios.o \ 564 vstafs_stage1_5_exec-char_io.o \ 565 vstafs_stage1_5_exec-common.o \ 566 vstafs_stage1_5_exec-disk_io.o \ 567 vstafs_stage1_5_exec-fsys_vstafs.o \ 568 vstafs_stage1_5_exec-stage1_5.o 569 570$(VSTAFS_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 571 572$(VSTAFS_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE1_5_CFLAGS) \ 573 -DFSYS_VSTAFS=1 -DNO_BLOCK_FILES=1 574 575$(VSTAFS_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 576 -DFSYS_VSTAFS=1 -DNO_BLOCK_FILES=1 577 578# 579# SGI XFS stage 1.5 580# 581XFS_STAGE1_5_DATA = xfs_stage1_5 582XFS_STAGE1_5_EXEC = xfs_stage1_5.exec 583 584XFS_STAGE1_5_ASMOBJS = xfs_stage1_5_exec-start.o \ 585 xfs_stage1_5_exec-asm.o 586 587XFS_STAGE1_5_OBJS = xfs_stage1_5_exec-bios.o \ 588 xfs_stage1_5_exec-char_io.o \ 589 xfs_stage1_5_exec-common.o \ 590 xfs_stage1_5_exec-disk_io.o \ 591 xfs_stage1_5_exec-fsys_xfs.o \ 592 xfs_stage1_5_exec-stage1_5.o 593 594$(XFS_STAGE1_5_EXEC) := LDFLAGS = $(BASE_LDFLAGS) $(STAGE1_5_LINK) 595 596$(XFS_STAGE1_5_ASMOBJS) := CCASFLAGS = $(BASE_CCASFLAGS) $(STAGE1_5_CFLAGS) \ 597 -DFSYS_XFS=1 -DNO_BLOCK_FILES=1 598 599$(XFS_STAGE1_5_OBJS) := CFLAGS = $(BASE_CFLAGS) $(STAGE1_5_CFLAGS) \ 600 -DFSYS_XFS=1 -DNO_BLOCK_FILES=1 601 602 603INSTALL_TARGETS = $(INSTALL_DATA:%=$(ROOT_BOOT_GRUB)/%) \ 604 $(SRC_ZFSINC_DIR) 605 606# 607# Source files to be installed in $(ROOT_SRC). 608# 609SRC_DIR = $(ROOT_SRC)/stage2 610SRC_ZFSINC_DIR = $(SRC_DIR)/zfs-include 611SRC_FILES = Makefile.am Makefile.in apic.h apm.S asm.S bios.c boot.c \ 612 builtins.c char_io.c cmdline.c common.c console.c defs.h \ 613 dir.h disk_inode.h disk_inode_ffs.h disk_io.c expand.c \ 614 expand.h fat.h \ 615 filesys.h freebsd.h fs.h fsys_ext2fs.c fsys_fat.c \ 616 fsys_ffs.c fsys_iso9660.c fsys_jfs.c fsys_minix.c \ 617 zfs_sha256.c zfs_lzjb.c zfs_lz4.c zfs_fletcher.c fsys_zfs.c \ 618 fsys_reiserfs.c fsys_ufs.c fsys_ufs2.c fsys_vstafs.c \ 619 fsys_xfs.c graphics.c graphics.h gunzip.c hercules.c \ 620 hercules.h i386-elf.h imgact_aout.h iso9660.h jfs.h \ 621 mb_header.h mb_info.h md5.c md5.h nbi.h nbloader.S \ 622 pc_slice.h pxeloader.S serial.c serial.h setjmp.S shared.h \ 623 size_test smp-imps.c smp-imps.h stage1_5.c stage2.c \ 624 start.S start_eltorito.S term.h terminfo.c terminfo.h \ 625 tparm.c tparm.h fsys_zfs.h ufs.h ufs2.h vstafs.h xfs.h 626SRC_ZFSINC_FILES = dmu.h dmu_objset.h dnode.h dsl_dataset.h dsl_dir.h spa.h \ 627 uberblock_impl.h vdev_impl.h zap_impl.h zap_leaf.h zfs.h \ 628 zfs_acl.h zfs_znode.h zil.h zio.h zio_checksum.h 629 630INSTALL_TARGETS += $(SRC_FILES:%=$(SRC_DIR)/%) \ 631 $(SRC_ZFSINC_FILES:%=$(SRC_ZFSINC_DIR)/%) 632 633 634############################################################################### 635all: $(BUILT_SOURCES) .WAIT $(LIBRARIES) $(PROGRAMS) $(DATA) 636 637# 638# BUILT_SOURCES 639# 640stage2_size.h: $(PRE_STAGE2_DATA) 641 $(RM) $@ 642 set dummy `ls -l $(PRE_STAGE2_DATA)`; \ 643 echo "#define STAGE2_SIZE $$6" > $@ 644 645diskless_size.h: $(DISKLESS_DATA) 646 $(RM) $@ 647 set dummy `ls -l $(DISKLESS_DATA)`; \ 648 echo "#define DISKLESS_SIZE $$6" > $@ 649 650# 651# LIBRARIES 652# 653$(LIBGRUB): $(LIBGRUB_OBJS) 654 $(RM) $@ 655 $(AR) cru $@ $(LIBGRUB_OBJS) 656 $(RANLIB) $@ 657 658$(LIBGRUB_OBJS): $$(@:libgrub_a-%.o=%.c) 659 $(CC) $(CFLAGS) -c -o $@ $(@:libgrub_a-%.o=%.c) 660 661 662# 663# Diskless 664# 665$(DISKLESS_EXEC): $(DISKLESS_ASMOBJS) $(DISKLESS_OBJS) 666 $(RM) $@ 667 $(LINK) -o $@ $(DISKLESS_ASMOBJS) $(DISKLESS_OBJS) $(LIBS) 668 669$(DISKLESS_ASMOBJS): $$(@:diskless_exec-%.o=%.S) 670 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:diskless_exec-%.o=%.S) 671 672$(DISKLESS_OBJS): $$(@:diskless_exec-%.o=%.c) 673 $(CC) $(CFLAGS) -c -o $@ $(@:diskless_exec-%.o=%.c) 674 675# 676# ext2fs stage 1.5 677# 678$(E2FS_STAGE1_5_EXEC): $(E2FS_STAGE1_5_ASMOBJS) $(E2FS_STAGE1_5_OBJS) 679 $(RM) $@ 680 $(LINK) -o $@ $(E2FS_STAGE1_5_ASMOBJS) $(E2FS_STAGE1_5_OBJS) $(LIBS) 681 682$(E2FS_STAGE1_5_ASMOBJS): $$(@:e2fs_stage1_5_exec-%.o=%.S) 683 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:e2fs_stage1_5_exec-%.o=%.S) 684 685$(E2FS_STAGE1_5_OBJS): $$(@:e2fs_stage1_5_exec-%.o=%.c) 686 $(CC) $(CFLAGS) -c -o $@ $(@:e2fs_stage1_5_exec-%.o=%.c) 687 688# 689# FAT stage 1.5 690# 691$(FAT_STAGE1_5_EXEC): $(FAT_STAGE1_5_ASMOBJS) $(FAT_STAGE1_5_OBJS) 692 $(RM) $@ 693 $(LINK) -o $@ $(FAT_STAGE1_5_ASMOBJS) $(FAT_STAGE1_5_OBJS) $(LIBS) 694 695$(FAT_STAGE1_5_ASMOBJS): $$(@:fat_stage1_5_exec-%.o=%.S) 696 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:fat_stage1_5_exec-%.o=%.S) 697 698$(FAT_STAGE1_5_OBJS): $$(@:fat_stage1_5_exec-%.o=%.c) 699 $(CC) $(CFLAGS) -c -o $@ $(@:fat_stage1_5_exec-%.o=%.c) 700 701# 702# FFS stage 1.5 703# 704$(FFS_STAGE1_5_EXEC): $(FFS_STAGE1_5_ASMOBJS) $(FFS_STAGE1_5_OBJS) 705 $(RM) $@ 706 $(LINK) -o $@ $(FFS_STAGE1_5_ASMOBJS) $(FFS_STAGE1_5_OBJS) $(LIBS) 707 708$(FFS_STAGE1_5_ASMOBJS): $$(@:ffs_stage1_5_exec-%.o=%.S) 709 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:ffs_stage1_5_exec-%.o=%.S) 710 711$(FFS_STAGE1_5_OBJS): $$(@:ffs_stage1_5_exec-%.o=%.c) 712 $(CC) $(CFLAGS) -c -o $@ $(@:ffs_stage1_5_exec-%.o=%.c) 713 714# 715# ISO9660 stage 1.5 716# 717$(ISO9660_STAGE1_5_EXEC): $(ISO9660_STAGE1_5_ASMOBJS) $(ISO9660_STAGE1_5_OBJS) 718 $(RM) $@ 719 $(LINK) -o $@ $(ISO9660_STAGE1_5_ASMOBJS) $(ISO9660_STAGE1_5_OBJS) \ 720 $(LIBS) 721 722$(ISO9660_STAGE1_5_ASMOBJS): $$(@:iso9660_stage1_5_exec-%.o=%.S) 723 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:iso9660_stage1_5_exec-%.o=%.S) 724 725$(ISO9660_STAGE1_5_OBJS): $$(@:iso9660_stage1_5_exec-%.o=%.c) 726 $(CC) $(CFLAGS) -c -o $@ $(@:iso9660_stage1_5_exec-%.o=%.c) 727 728# 729# JFS stage 1.5 730# 731$(JFS_STAGE1_5_EXEC): $(JFS_STAGE1_5_ASMOBJS) $(JFS_STAGE1_5_OBJS) 732 $(RM) $@ 733 $(LINK) -o $@ $(JFS_STAGE1_5_ASMOBJS) $(JFS_STAGE1_5_OBJS) $(LIBS) 734 735$(JFS_STAGE1_5_ASMOBJS): $$(@:jfs_stage1_5_exec-%.o=%.S) 736 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:jfs_stage1_5_exec-%.o=%.S) 737 738$(JFS_STAGE1_5_OBJS): $$(@:jfs_stage1_5_exec-%.o=%.c) 739 $(CC) $(CFLAGS) -c -o $@ $(@:jfs_stage1_5_exec-%.o=%.c) 740 741# 742# Minix stage 1.5 743# 744$(MINIX_STAGE1_5_EXEC): $(MINIX_STAGE1_5_ASMOBJS) $(MINIX_STAGE1_5_OBJS) 745 $(RM) $@ 746 $(LINK) -o $@ $(MINIX_STAGE1_5_ASMOBJS) $(MINIX_STAGE1_5_OBJS) $(LIBS) 747 748$(MINIX_STAGE1_5_ASMOBJS): $$(@:minix_stage1_5_exec-%.o=%.S) 749 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:minix_stage1_5_exec-%.o=%.S) 750 751$(MINIX_STAGE1_5_OBJS): $$(@:minix_stage1_5_exec-%.o=%.c) 752 $(CC) $(CFLAGS) -c -o $@ $(@:minix_stage1_5_exec-%.o=%.c) 753 754# 755# nbgrub 756# 757$(NBGRUB_DATA): $(NBLOADER_DATA) $(DISKLESS_DATA) 758 $(RM) $@ 759 cat $(NBLOADER_DATA) $(DISKLESS_DATA) > $@ 760 761# 762# nbloader 763# 764$(NBLOADER_EXEC): $(NBLOADER_ASMOBJS) $(NBLOADER_OBJS) 765 $(RM) $@ 766 $(LINK) -o $@ $(NBLOADER_ASMOBJS) $(NBLOADER_OBJS) $(LIBS) 767 768$(NBLOADER_ASMOBJS): $$(@:nbloader_exec-%.o=%.S) diskless_size.h 769 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:nbloader_exec-%.o=%.S) 770 771$(NBLOADER_OBJS): $$(@:nbloader_exec-%.o=%.c) 772 $(CC) $(CFLAGS) -c -o $@ $(@:nbloader_exec-%.o=%.c) 773 774# 775# Pre-stage2 776# 777$(PRE_STAGE2_EXEC): $(PRE_STAGE2_ASMOBJS) $(PRE_STAGE2_OBJS) 778 $(RM) $@ 779 $(LINK) -o $@ $(PRE_STAGE2_ASMOBJS) $(PRE_STAGE2_OBJS) $(LIBS) 780 781$(PRE_STAGE2_ASMOBJS): $$(@:pre_stage2_exec-%.o=%.S) 782 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:pre_stage2_exec-%.o=%.S) 783 784$(PRE_STAGE2_OBJS): $$(@:pre_stage2_exec-%.o=%.c) 785 $(CC) $(CFLAGS) -c -o $@ $(@:pre_stage2_exec-%.o=%.c) 786 787# 788# pxegrub 789# 790$(PXEGRUB_DATA): $(PXELOADER_DATA) $(DISKLESS_DATA) 791 $(RM) $@ 792 cat $(PXELOADER_DATA) $(DISKLESS_DATA) > $@ 793 794# 795# pxeloader 796# 797$(PXELOADER_EXEC): $(PXELOADER_ASMOBJS) $(PXELOADER_OBJS) 798 $(RM) $@ 799 $(LINK) -o $@ $(PXELOADER_ASMOBJS) $(PXELOADER_OBJS) $(LIBS) 800 801$(PXELOADER_ASMOBJS): $$(@:pxeloader_exec-%.o=%.S) diskless_size.h 802 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:pxeloader_exec-%.o=%.S) 803 804$(PXELOADER_OBJS): $$(@:pxeloader_exec-%.o=%.c) 805 $(CC) $(CFLAGS) -c -o $@ $(@:pxeloader_exec-%.o=%.c) 806 807# 808# ReiserFS stage 1.5 809# 810$(REISERFS_STAGE1_5_EXEC): $(REISERFS_STAGE1_5_ASMOBJS) \ 811 $(REISERFS_STAGE1_5_OBJS) 812 $(RM) $@ 813 $(LINK) -o $@ $(REISERFS_STAGE1_5_ASMOBJS) $(REISERFS_STAGE1_5_OBJS) \ 814 $(LIBS) 815 816$(REISERFS_STAGE1_5_ASMOBJS): $$(@:reiserfs_stage1_5_exec-%.o=%.S) 817 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:reiserfs_stage1_5_exec-%.o=%.S) 818 819$(REISERFS_STAGE1_5_OBJS): $$(@:reiserfs_stage1_5_exec-%.o=%.c) 820 $(CC) $(CFLAGS) -c -o $@ $(@:reiserfs_stage1_5_exec-%.o=%.c) 821 822# 823# stage2 824# 825$(STAGE2_DATA): $(START_DATA) $(PRE_STAGE2_DATA) 826 $(RM) $@ 827 cat $(START_DATA) $(PRE_STAGE2_DATA) > $@ 828# 829# Eltorito stage2 830# 831$(STAGE2_ELTORITO_DATA): $(START_ELTORITO_DATA) $(PRE_STAGE2_DATA) 832 $(RM) $@ 833 cat $(START_ELTORITO_DATA) $(PRE_STAGE2_DATA) > $@ 834 835# 836# start 837# 838$(START_EXEC): $(START_ASMOBJS) $(START_OBJS) 839 $(RM) $@ 840 $(LINK) -o $@ $(START_ASMOBJS) $(START_OBJS) $(LIBS) 841 842$(START_ASMOBJS): $$(@:start_exec-%.o=%.S) stage2_size.h 843 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:start_exec-%.o=%.S) 844 845$(START_OBJS): $$(@:start_exec-%.o=%.c) 846 $(CC) $(CFLAGS) -c -o $@ $(@:start_exec-%.o=%.c) 847 848# 849# Eltorito start 850# 851$(START_ELTORITO_EXEC): $(START_ELTORITO_ASMOBJS) $(START_ELTORITO_OBJS) 852 $(RM) $@ 853 $(LINK) -o $@ $(START_ELTORITO_ASMOBJS) $(START_ELTORITO_OBJS) $(LIBS) 854 855$(START_ELTORITO_ASMOBJS): $$(@:start_eltorito_exec-%.o=%.S) stage2_size.h 856 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:start_eltorito_exec-%.o=%.S) 857 858$(START_ELTORITO_OBJS): $$(@:start_eltorito_exec-%.o=%.c) 859 $(CC) $(CFLAGS) -c -o $@ $(@:start_eltorito_exec-%.o=%.c) 860 861# 862# UFS2 stage 1.5 863# 864$(UFS2_STAGE1_5_EXEC): $(UFS2_STAGE1_5_ASMOBJS) $(UFS2_STAGE1_5_OBJS) 865 $(RM) $@ 866 $(LINK) -o $@ $(UFS2_STAGE1_5_ASMOBJS) $(UFS2_STAGE1_5_OBJS) $(LIBS) 867 868$(UFS2_STAGE1_5_ASMOBJS): $$(@:ufs2_stage1_5_exec-%.o=%.S) 869 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:ufs2_stage1_5_exec-%.o=%.S) 870 871$(UFS2_STAGE1_5_OBJS): $$(@:ufs2_stage1_5_exec-%.o=%.c) 872 $(CC) $(CFLAGS) -c -o $@ $(@:ufs2_stage1_5_exec-%.o=%.c) 873 874# 875# UFS stage 1.5 876# 877$(UFS_STAGE1_5_EXEC): $(UFS_STAGE1_5_ASMOBJS) $(UFS_STAGE1_5_OBJS) 878 $(RM) $@ 879 $(LINK) -o $@ $(UFS_STAGE1_5_ASMOBJS) $(UFS_STAGE1_5_OBJS) $(LIBS) 880 881$(UFS_STAGE1_5_ASMOBJS): $$(@:ufs_stage1_5_exec-%.o=%.S) 882 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:ufs_stage1_5_exec-%.o=%.S) 883 884$(UFS_STAGE1_5_OBJS): $$(@:ufs_stage1_5_exec-%.o=%.c) 885 $(CC) $(CFLAGS) -c -o $@ $(@:ufs_stage1_5_exec-%.o=%.c) 886 887# 888# ZFS stage 1.5 889# 890$(ZFS_STAGE1_5_EXEC): $(ZFS_STAGE1_5_ASMOBJS) $(ZFS_STAGE1_5_OBJS) 891 $(RM) $@ 892 $(LINK) -o $@ $(ZFS_STAGE1_5_ASMOBJS) $(ZFS_STAGE1_5_OBJS) $(LIBS) 893 894$(ZFS_STAGE1_5_ASMOBJS): $$(@:zfs_stage1_5_exec-%.o=%.S) 895 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:zfs_stage1_5_exec-%.o=%.S) 896 897$(ZFS_STAGE1_5_OBJS): $$(@:zfs_stage1_5_exec-%.o=%.c) 898 $(CC) $(CFLAGS) -c -o $@ $(@:zfs_stage1_5_exec-%.o=%.c) 899 900# 901# VSTa stage 1.5 902# 903$(VSTAFS_STAGE1_5_EXEC): $(VSTAFS_STAGE1_5_ASMOBJS) $(VSTAFS_STAGE1_5_OBJS) 904 $(RM) $@ 905 $(LINK) -o $@ $(VSTAFS_STAGE1_5_ASMOBJS) $(VSTAFS_STAGE1_5_OBJS) $(LIBS) 906 907$(VSTAFS_STAGE1_5_ASMOBJS): $$(@:vstafs_stage1_5_exec-%.o=%.S) 908 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:vstafs_stage1_5_exec-%.o=%.S) 909 910$(VSTAFS_STAGE1_5_OBJS): $$(@:vstafs_stage1_5_exec-%.o=%.c) 911 $(CC) $(CFLAGS) -c -o $@ $(@:vstafs_stage1_5_exec-%.o=%.c) 912 913# 914# SGI XFS stage 1.5 915# 916$(XFS_STAGE1_5_EXEC): $(XFS_STAGE1_5_ASMOBJS) $(XFS_STAGE1_5_OBJS) 917 $(RM) $@ 918 $(LINK) -o $@ $(XFS_STAGE1_5_ASMOBJS) $(XFS_STAGE1_5_OBJS) $(LIBS) 919 920$(XFS_STAGE1_5_ASMOBJS): $$(@:xfs_stage1_5_exec-%.o=%.S) 921 $(CCAS) $(CCASFLAGS) -c -o $@ $(@:xfs_stage1_5_exec-%.o=%.S) 922 923$(XFS_STAGE1_5_OBJS): $$(@:xfs_stage1_5_exec-%.o=%.c) 924 $(CC) $(CFLAGS) -c -o $@ $(@:xfs_stage1_5_exec-%.o=%.c) 925 926 927 928install: all $(INSTALL_TARGETS) 929 930$(ROOT_BOOT_GRUB)/%: $(ROOT_BOOT_GRUB) % 931 $(INS.file) 932 933$(SRC_DIR)/%: $(SRC_DIR) % 934 $(INS.file) 935 936$(SRC_ZFSINC_DIR)/%: $(SRC_ZFSINC_DIR) % 937 $(INS.file) 938 939$(ROOT_BOOT_GRUB) $(SRC_DIR) $(SRC_ZFSINC_DIR): 940 $(INS.dir) 941 942clean: _FORCE 943 $(RM) *.o $(BUILT_SOURCES) $(LIBRARIES) $(PROGRAMS) $(NOINSTALL_DATA) 944 945clobber: clean 946 $(RM) $(INSTALL_DATA) 947 948_FORCE: 949