1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 22# Copyright 2015, Nexenta Systems, Inc. 23# Copyright (c) 2018, Joyent, Inc. 24 25PROG= installgrub 26 27PCFS_SRC= $(SRC)/common/fs/pcfs.c 28EINFO_SRC= ./../common/bblk_einfo.c 29UTILS_SRC =./../common/boot_utils.c 30EXTRA_SRC =./../common/mboot_extra.c 31 32OBJS= installgrub.o pcfs_glue.o pcfs.o bblk_einfo.o boot_utils.o mboot_extra.o \ 33 getresponse.o 34SRCS= installgrub.c pcfs_glue.c $(PCFS_SRC) $(UTILS_SRC) $(EINFO_SRC) \ 35 $(EXTRA_SRC) $(SRC)/common/util/getresponse.c 36SBINLINKS= $(PROG) 37 38include ../Makefile.com 39 40CPPFLAGS += -I$(SRC)/uts/i86pc -I$(SRC)/uts/intel -I$(SRC)/uts/common 41CPPFLAGS += -I$(SRC)/common/util 42 43# not linted 44SMATCH=off 45 46LDLIBS += -lmd5 47 48i386_CFLAGS += -D_LARGEFILE64_SOURCE 49i386_CFLAGS += -D_FILE_OFFSET_BITS=64 50 51LDLIBS += -lfdisk -lefi -lfstyp 52 53LINTFLAGS += \ 54 -erroff=E_BAD_PTR_CAST_ALIGN \ 55 -erroff=E_STATIC_UNUSED \ 56 -erroff=E_FUNC_RET_MAYBE_IGNORED \ 57 -erroff=E_FUNC_RET_MAYBE_IGNORED2 \ 58 -xerroff=E_NAME_DEF_NOT_USED2 59 60 61CSTD= $(CSTD_GNU99) 62 63.KEEP_STATE: 64 65all: $(PROG) 66 67$(PROG): $(OBJS) 68 $(LINK.c) -o $@ $(OBJS) $(LDLIBS) 69 $(POST_PROCESS) 70 71 72# pick pcfs from usr/src/common/fs 73pcfs.o: $(PCFS_SRC) 74 $(COMPILE.c) -o $@ $(PCFS_SRC) 75 76boot_utils.o: $(UTILS_SRC) 77 $(COMPILE.c) -o $@ $(UTILS_SRC) 78 79mboot_extra.o: $(EXTRA_SRC) 80 $(COMPILE.c) -o $@ $(EXTRA_SRC) 81 82bblk_einfo.o: $(EINFO_SRC) 83 $(COMPILE.c) -o $@ $(EINFO_SRC) 84 85%.o: $(SRC)/common/util/%.c 86 $(COMPILE.c) $(OUTPUT_OPTION) $< 87 88install: all $(ROOTSBINPROG) .WAIT $(ROOTUSRSBINLINKS) 89 90clean: 91 $(RM) $(OBJS) 92 93lint: lint_SRCS 94 95include ../Makefile.targ 96