17c478bd9Sstevel@tonic-gate#
27c478bd9Sstevel@tonic-gate# CDDL HEADER START
37c478bd9Sstevel@tonic-gate#
47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
5986fd29aSsetje# Common Development and Distribution License (the "License").
6986fd29aSsetje# You may not use this file except in compliance with the License.
77c478bd9Sstevel@tonic-gate#
87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
117c478bd9Sstevel@tonic-gate# and limitations under the License.
127c478bd9Sstevel@tonic-gate#
137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
187c478bd9Sstevel@tonic-gate#
197c478bd9Sstevel@tonic-gate# CDDL HEADER END
207c478bd9Sstevel@tonic-gate#
21af28f636SEnrico Perla - Sun Microsystems# Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
221a902ef8SHans Rosenfeld# Copyright 2015, Nexenta Systems, Inc.
23*5661bb76SJohn Levon# Copyright (c) 2018, Joyent, Inc.
247c478bd9Sstevel@tonic-gate
257c478bd9Sstevel@tonic-gatePROG= installgrub
267c478bd9Sstevel@tonic-gate
277c478bd9Sstevel@tonic-gatePCFS_SRC= $(SRC)/common/fs/pcfs.c
28af28f636SEnrico Perla - Sun MicrosystemsEINFO_SRC= ./../common/bblk_einfo.c
29af28f636SEnrico Perla - Sun MicrosystemsUTILS_SRC =./../common/boot_utils.c
30af28f636SEnrico Perla - Sun MicrosystemsEXTRA_SRC =./../common/mboot_extra.c
317c478bd9Sstevel@tonic-gate
3221ba817cSToomas SoomeOBJS= installgrub.o pcfs_glue.o pcfs.o bblk_einfo.o boot_utils.o mboot_extra.o \
3321ba817cSToomas Soome	getresponse.o
34af28f636SEnrico Perla - Sun MicrosystemsSRCS= installgrub.c pcfs_glue.c $(PCFS_SRC) $(UTILS_SRC) $(EINFO_SRC) \
3521ba817cSToomas Soome	$(EXTRA_SRC) $(SRC)/common/util/getresponse.c
367c478bd9Sstevel@tonic-gateSBINLINKS= $(PROG)
377c478bd9Sstevel@tonic-gate
387c478bd9Sstevel@tonic-gateinclude ../Makefile.com
397c478bd9Sstevel@tonic-gate
407c478bd9Sstevel@tonic-gateCPPFLAGS += -I$(SRC)/uts/i86pc -I$(SRC)/uts/intel -I$(SRC)/uts/common
4121ba817cSToomas SoomeCPPFLAGS += -I$(SRC)/common/util
427c478bd9Sstevel@tonic-gate
43*5661bb76SJohn Levon# not linted
44*5661bb76SJohn LevonSMATCH=off
45*5661bb76SJohn Levon
467ce76caaSEnrico Perla - Sun MicrosystemsLDLIBS += -lmd5
477ce76caaSEnrico Perla - Sun Microsystems
48aa1b14e7SSheshadri Vasudevani386_CFLAGS += -D_LARGEFILE64_SOURCE
49aa1b14e7SSheshadri Vasudevani386_CFLAGS += -D_FILE_OFFSET_BITS=64
50aa1b14e7SSheshadri Vasudevan
511a902ef8SHans RosenfeldLDLIBS += -lfdisk -lefi -lfstyp
52aa1b14e7SSheshadri Vasudevan
537c478bd9Sstevel@tonic-gateLINTFLAGS += \
547c478bd9Sstevel@tonic-gate	-erroff=E_BAD_PTR_CAST_ALIGN \
557c478bd9Sstevel@tonic-gate	-erroff=E_STATIC_UNUSED \
567c478bd9Sstevel@tonic-gate	-erroff=E_FUNC_RET_MAYBE_IGNORED \
57aa1b14e7SSheshadri Vasudevan	-erroff=E_FUNC_RET_MAYBE_IGNORED2 \
58aa1b14e7SSheshadri Vasudevan	-xerroff=E_NAME_DEF_NOT_USED2
597c478bd9Sstevel@tonic-gate
603bbf88b3SToomas Soome
61bd0ce624SYuri PankovCSTD=	$(CSTD_GNU99)
62af28f636SEnrico Perla - Sun Microsystems
637c478bd9Sstevel@tonic-gate.KEEP_STATE:
647c478bd9Sstevel@tonic-gate
657c478bd9Sstevel@tonic-gateall: $(PROG)
667c478bd9Sstevel@tonic-gate
677c478bd9Sstevel@tonic-gate$(PROG): $(OBJS)
687c478bd9Sstevel@tonic-gate	$(LINK.c) -o $@ $(OBJS) $(LDLIBS)
697c478bd9Sstevel@tonic-gate	$(POST_PROCESS)
707c478bd9Sstevel@tonic-gate
717c478bd9Sstevel@tonic-gate
727c478bd9Sstevel@tonic-gate# pick pcfs from usr/src/common/fs
737c478bd9Sstevel@tonic-gatepcfs.o:	$(PCFS_SRC)
747c478bd9Sstevel@tonic-gate	$(COMPILE.c) -o $@ $(PCFS_SRC)
757c478bd9Sstevel@tonic-gate
76af28f636SEnrico Perla - Sun Microsystemsboot_utils.o:	$(UTILS_SRC)
77af28f636SEnrico Perla - Sun Microsystems		$(COMPILE.c) -o $@ $(UTILS_SRC)
78af28f636SEnrico Perla - Sun Microsystems
79af28f636SEnrico Perla - Sun Microsystemsmboot_extra.o:	$(EXTRA_SRC)
80af28f636SEnrico Perla - Sun Microsystems		$(COMPILE.c) -o $@ $(EXTRA_SRC)
81af28f636SEnrico Perla - Sun Microsystems
82af28f636SEnrico Perla - Sun Microsystemsbblk_einfo.o:	$(EINFO_SRC)
83af28f636SEnrico Perla - Sun Microsystems		$(COMPILE.c) -o $@ $(EINFO_SRC)
84af28f636SEnrico Perla - Sun Microsystems
8521ba817cSToomas Soome%.o:	$(SRC)/common/util/%.c
8621ba817cSToomas Soome		$(COMPILE.c) $(OUTPUT_OPTION) $<
8721ba817cSToomas Soome
887c478bd9Sstevel@tonic-gateinstall: all $(ROOTSBINPROG) .WAIT $(ROOTUSRSBINLINKS)
897c478bd9Sstevel@tonic-gate
907c478bd9Sstevel@tonic-gateclean:
917c478bd9Sstevel@tonic-gate	$(RM) $(OBJS)
927c478bd9Sstevel@tonic-gate
937c478bd9Sstevel@tonic-gatelint:	lint_SRCS
947c478bd9Sstevel@tonic-gate
957c478bd9Sstevel@tonic-gateinclude ../Makefile.targ
96