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 (c) 1990, 2010, Oracle and/or its affiliates. All rights reserved.
  23 #
  24 # cmd/oamuser/user/Makefile
  25 #
  26 
  27 include ../../Makefile.cmd
  28 
  29 GREP=           grep
  30 
  31 USERADD=        useradd
  32 USERDEL=        userdel
  33 USERMOD=        usermod
  34 ROLEADD=        roleadd
  35 ROLEDEL=        roledel
  36 ROLEMOD=        rolemod
  37 
  38 SBINPROG=       $(USERADD)   $(USERDEL)   $(USERMOD)
  39 #
  40 #       Removing sysadm: deleted $(SYSADMPROG) from this target.
  41 #
  42 PROG=           $(SBINPROG)
  43 PRODUCT=        $(PROG)
  44 
  45 ADD_OBJ=        useradd.o     uid.o        homedir.o \
  46                 groups.o      call_pass.o      userdefs.o   messages.o \
  47                 val_lgrp.o    funcs.o          val_lprj.o   proj.o
  48 
  49 DEL_OBJ=        userdel.o     call_pass.o      rmfiles.o    isbusy.o \
  50                 groups.o      messages.o       funcs.o      proj.o
  51 
  52 MOD_OBJ=        usermod.o     uid.o            movedir.o    groups.o \
  53                 rmfiles.o     call_pass.o      isbusy.o     homedir.o \
  54                 userdefs.o    messages.o       val_lgrp.o   funcs.o \
  55                 val_lprj.o    proj.o
  56 
  57 OBJECTS=        $(ADD_OBJ)     $(DEL_OBJ)    $(MOD_OBJ)
  58 
  59 SRCS=           $(OBJECTS:.o=.c)
  60 
  61 LIBDIR=         ../lib
  62 LIBUSRGRP=      $(LIBDIR)/lib.a
  63 LIBADM=         -ladm
  64 LOCAL=          ../inc
  65 HERE=           .
  66 LINTFLAGS=      -u
  67 
  68 ROOTSKEL=       $(ROOTETC)/skel
  69 INSSBINPROG=    $(SBINPROG:%=$(ROOTUSRSBIN)/%)
  70 INSSKELFILE=    $(SKELFILE:%=$(ROOTSKEL)/%)
  71 
  72 CPPFLAGS=       -I$(HERE) -I$(LOCAL) $(CPPFLAGS.master)
  73 CERRWARN +=     -_gcc=-Wno-implicit-function-declaration
  74 CERRWARN +=     -_gcc=-Wno-type-limits
  75 CERRWARN +=     -_gcc=-Wno-uninitialized
  76 CERRWARN +=     -_gcc=-Wno-parentheses
  77 
  78 $(INSSBINPROG)  := FILEMODE = 0555
  79 $(INSSYSADMPROG):= FILEMODE = 0500
  80 $(INSSKELFILE)  := FILEMODE = 0644
  81 
  82 $(USERADD) :=   OBJS = $(ADD_OBJ)
  83 $(USERADD) :=   LIBS = $(LIBUSRGRP)
  84 
  85 $(USERDEL) :=   OBJS = $(DEL_OBJ)
  86 $(USERDEL) :=   LIBS = $(LIBUSRGRP)
  87 
  88 $(USERMOD) :=   OBJS = $(MOD_OBJ)
  89 $(USERMOD) :=   LIBS = $(LIBUSRGRP)
  90 
  91 LDLIBS +=       -lbsm -lnsl -lsecdb -lproject -ltsol
  92 
  93 .PARALLEL: $(OBJECTS)
  94 
  95 all:            $(PRODUCT)
  96 
  97 $(PROG):        $$(OBJS) $$(LIBS)
  98         $(LINK.c) $(OBJS) -o $@ $(LIBS) $(LDLIBS)
  99         $(POST_PROCESS)
 100 
 101 $(USERADD):     $(ADD_OBJ)
 102 $(USERMOD):     $(MOD_OBJ)
 103 $(USERDEL):     $(DEL_OBJ)
 104 
 105 install:        all .WAIT $(ROOTSKEL) $(INSSBINPROG) $(INSSKELFILE)
 106                 $(RM) $(ROOTUSRSBIN)/$(ROLEADD)
 107                 $(LN) $(ROOTUSRSBIN)/$(USERADD) $(ROOTUSRSBIN)/$(ROLEADD)
 108                 $(RM) $(ROOTUSRSBIN)/$(ROLEDEL)
 109                 $(LN) $(ROOTUSRSBIN)/$(USERDEL) $(ROOTUSRSBIN)/$(ROLEDEL)
 110                 $(RM) $(ROOTUSRSBIN)/$(ROLEMOD)
 111                 $(LN) $(ROOTUSRSBIN)/$(USERMOD) $(ROOTUSRSBIN)/$(ROLEMOD)
 112 
 113 clean:
 114         $(RM) $(OBJECTS)
 115 
 116 lint:   lint_SRCS
 117 
 118 include ../../Makefile.targ