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