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 #
  22 # Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
  23 # Use is subject to license terms.
  24 #
  25 # Copyright 2015 Nexenta Systems, Inc. All rights reserved.
  26 # Copyright (c) 2018, Joyent, Inc.
  27 
  28 PROG= format
  29 
  30 COBJS=  add_definition.o analyze.o checkdev.o ctlr_scsi.o \
  31         defect.o init_menus.o io.o label.o main.o \
  32         menu.o menu_analyze.o menu_cache.o menu_command.o menu_defect.o \
  33         menu_partition.o misc.o modify_partition.o partition.o \
  34         prompts.o startup.o menu_scsi.o auto_sense.o disk_generic.o \
  35         menu_developer.o menu_fdisk.o
  36 
  37 OBJS_sparc=   init_csparc.o ctlr_ata.o
  38 
  39 OBJS_i386=    init_ci386.o ctlr_ata.o ix_altsctr.o
  40 
  41 OBJS_=                non-existent
  42 
  43 OBJS=  $(OBJS_$(MACH))  $(COBJS)
  44 
  45 DATA= format.dat
  46 
  47 include ../Makefile.cmd
  48 
  49 CERRWARN += -_gcc=-Wno-uninitialized
  50 CERRWARN += -_gcc=-Wno-parentheses
  51 CERRWARN += -_gcc=-Wno-unused-label
  52 CERRWARN += -_gcc=-Wno-clobbered
  53 
  54 # not linted
  55 SMATCH=off
  56 
  57 SRCS= $(OBJS:.o=.c)
  58 
  59 ROOTSYMLINK= $(ROOTETCPROG)
  60 ROOTETCDATA= $(ROOTETC)/$(DATA)
  61 
  62 $(ROOTETCDATA) := FILEMODE = 0644
  63 
  64 LDLIBS_i386= -lfdisk 
  65 LDLIBS_sparc=
  66 LDLIBS +=       -ladm -lefi -ldiskmgt -lnvpair -ldevid -ldevinfo $(LDLIBS_$(MACH))
  67 
  68 LINTFLAGS += -xerroff=E_NAME_DEF_NOT_USED2
  69 CPPFLAGS    += -D_EXTVTOC
  70 
  71 .KEEP_STATE:
  72 
  73 all: $(PROG) $(DATA)
  74 
  75 .PARALLEL: $(OBJS)
  76 
  77 $(PROG): $(OBJS)
  78         $(LINK.c) -o $(PROG) $(OBJS) $(LDLIBS)
  79         $(POST_PROCESS)
  80 
  81 #
  82 # Install format as /usr/sbin/format, with link from /etc/format
  83 #
  84 install: $(ROOTUSRSBINPROG) $(ROOTSYMLINK) $(ROOTETCDATA)
  85 
  86 $(ROOTSYMLINK):
  87         $(RM) $@; $(SYMLINK) ../usr/sbin/$(PROG) $@
  88 
  89 clean:
  90         $(RM) $(OBJS)
  91 
  92 lint: lint_SRCS
  93 
  94 sb: $(SRCS)
  95         $(COMPILE.c) -xsbfast $(SRCS)
  96 
  97 include ../Makefile.targ