# # This file and its contents are supplied under the terms of the # Common Development and Distribution License ("CDDL"), version 1.0. # You may only use this file in accordance with the terms of version # 1.0 of the CDDL. # # A full copy of the text of the CDDL should have accompanied this # source. A copy of the CDDL is also available via the Internet at # http://www.illumos.org/license/CDDL. # # # Copyright 2015 Toomas Soome # .KEEP_STATE: include $(SRC)/Makefile.master # Hammerhead: amd64-only, removed i386 (32-bit BIOS bootloader) # Keep efi for UEFI boot, forth for Forth interpreter SUBDIRS = libsa libficl efi forth all : TARGET = all clean : TARGET = clean clobber : TARGET = clobber install : TARGET = install all clean clobber: $(SUBDIRS) # NOTE: Do NOT use "install: all .WAIT $(SUBDIRS)" — GNU Make dispatch bug. # When 'all' builds efi/forth, GNU Make considers them "already built" and # won't re-dispatch them with TARGET=install. Instead, dispatch install to # all SUBDIRS directly. Each subdirectory's own install target handles # building first (e.g. loader's "install: all $(ROOTBOOTFILES)"). install: $(SUBDIRS) # efi and forth depend on support libraries being built first efi: libsa libficl .PARALLEL: libsa libficl $(SUBDIRS): FRC @cd $@; pwd; $(MAKE) $(TARGET) FRC: