Makefile revision a192e900f6d2b0e1a822e3252c0dfd795ed49d76
0N/A#
0N/A# CDDL HEADER START
0N/A#
0N/A# The contents of this file are subject to the terms of the
935N/A# Common Development and Distribution License (the "License").
0N/A# You may not use this file except in compliance with the License.
0N/A#
919N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
919N/A# or http://www.opensolaris.org/os/licensing.
919N/A# See the License for the specific language governing permissions
919N/A# and limitations under the License.
919N/A#
919N/A# When distributing Covered Code, include this CDDL HEADER in each
919N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
919N/A# If applicable, add the following below this CDDL HEADER, with the
919N/A# fields enclosed by brackets "[]" replaced with your own identifying
919N/A# information: Portions Copyright [yyyy] [name of copyright owner]
919N/A#
919N/A# CDDL HEADER END
919N/A#
919N/A#
919N/A# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
919N/A# Use is subject to license terms.
919N/A#
0N/A# ident "%Z%%M% %I% %E% SMI"
0N/A#
0N/A
156N/ABINPROG = ypmatch ypwhich ypcat
493N/ASBINPROG = makedbm ypalias ypinit yppoll ypset
0N/ANETYPPROG = ypbind ypxfr yppush udpublickey mkalias \
0N/A multi multi.awk stdethers stdhosts \
950N/A ypxfr_1perday ypxfr_1perhour ypxfr_2perday \
0N/A ypstart ypstop
911N/ANIS2LDAPPROG = ypxfrd ypserv ypxfr
950N/ASVCMETHOD = yp
950N/APROG= $(BINPROG) $(SBINPROG) $(NETYPPROG) $(NIS2LDAPPROG) $(METHOD)
911N/A
0N/AMANIFEST = server.xml client.xml xfr.xml
493N/A
493N/Ainclude ../Makefile.cmd
156N/A
0N/AROOTMANIFESTDIR = $(ROOTSVCNETWORKNIS)
0N/A
156N/A# installed directories
156N/ANETSVC = $(ROOTLIB)/netsvc
0N/ANETYP = $(NETSVC)/yp
0N/A
950N/AROOTVAR_YP = $(ROOT)/var/yp
950N/AROOTBINDING = $(ROOTVAR_YP)/binding
950N/AROOTDIRS = $(ROOT) $(ROOTUSR) $(ROOTLIB) $(ROOTETC) $(ROOTVAR) \
950N/A $(NETSVC) $(NETYP) $(ROOTVAR_YP) $(ROOTBINDING) \
950N/A $(ROOTUSRSBIN) $(ROOTBIN)
950N/A
950N/A$(BINPROG) := LDLIBS += -lnsl
364N/A$(NETYPPROG) := LDLIBS += -lnsl
156N/A$(NIS2LDAPPROG) := LDLIBS += -lc -lnsl -lnisdb
156N/Aypinit := LDLIBS += -lnsl
0N/Ayppoll := LDLIBS += -lnsl
591N/Aypset := LDLIBS += -lnsl
947N/A
947N/A$(ROOTVAR_YP)/aliases := GROUP=bin
591N/A$(ROOTVAR_YP)/aliases := FILEMODE=555
591N/A
591N/AYPFILES = Makefile aliases nicknames updaters
591N/AETCFILES = publickey
947N/AROOTYPFILES= $(YPFILES:%=$(ROOTVAR_YP)/%)
947N/AROOTETCFILE= $(ETCFILES:%=$(ROOTETC)/%)
947N/A
947N/ATXTS= $(ETCFILES:%=net_files/%) $(YPFILES:%=net_files/%)
947N/ASUBDIRS = yppasswd mknetid revnetgroup ypupdated yp2lscripts
947N/A
947N/AYPBINDOBJ= yp_b_svc.o yp_b_subr.o rpc_bootstrap.o getlist.o
947N/A#
947N/A# Some sort of obsolete idea of common files which are only now used by a
947N/A# few minor utilities
947N/A#
947N/ACOMMONOBJ= getlist.o yp_getalias.o
947N/A
947N/A#
947N/A# Objects shared between all the major components
947N/A#
0N/ASHARED_DIR= ./shared
156N/ASHAREDOBJ= $(SHARED_DIR)/utils.o $(SHARED_DIR)/lockmap.o $(SHARED_DIR)/ancil.o
493N/ASHARESRC = $(SHAREOBJ:.o=.c)
493N/A
156N/AYPXFROBJ = ypxfr.o ypxfrd_client.o ypxfrd_xdr.o
493N/AYPMATOBJ = ypmatch.o nick.o
493N/AYPWHIOBJ = ypwhich.o nick.o
837N/AYPCATOBJ = ypcat.o nick.o
837N/AUDPUBLICKEYOBJ = udpublickey.o
846N/AMKALIASOBJ = mkalias.o
493N/ASTDETHERSOBJ = stdethers.o
493N/ASTDHOSTSOBJ = stdhosts.o
156N/A#COMMONCLNTOBJ = clnt_create_rsvd.o
493N/AYPSERVOBJ = ypserv.o ypserv_map.o \
493N/A ypserv_proc.o ypserv_ancil.o \
493N/A ypserv_resolv.o ypserv_resolv_common.o \
364N/A ypv1_xdr.o ypserv_net_secure.o
0N/AYPPUSHOBJ = yppush.o
493N/AYPXFRDOBJ = ypxfrd_svc.o ypxfrd_xdr.o ypxfrd_server.o \
493N/A ypserv_net_secure.o
156N/A
493N/ANETYPOBJ = $(YPXFROBJ) $(YPXFRDOBJ) $(YPSERVOBJ) $(YPPUSHOBJ) \
493N/A $(YPBINDOBJ) $(UDPUBLICKEYOBJ)
0N/AOBJS = $(NETYPOBJ) $(MKALIASOBJ) $(COMMONOBJ) $(SHAREDOBJ) \
339N/A $(YPPUSHOBJ) $(YPMATOBJ) $(YPWHIOBJ) $(YPCATOBJ) \
0N/A $(STDETHERSOBJ) $(STDHOSTSOBJ) makedbm.o ypalias.o pong.o
0N/A
339N/ABINSRC = $(BINPROG:=.c)
339N/A
0N/ASBINSRC = $(SBINPROG:=.c)
837N/A
837N/ANETYPSRC = $(NETYPOBJ:.o=.c)
838N/A
837N/AYPBINDSRC = $(YPBINSOBJ:.o=.c)
837N/A
591N/AYPXFRSRC = $(YPXFROBJ:.o=.c)
591N/A
779N/AYPSERVSRC = $(YPSERVOBJ:.o=.c)
838N/A
591N/AYPPUSHSRC = $(YPPUSHOBJ:.o=.c)
493N/A
493N/AYPXFRDSRC = $(YPXFRDOBJ:.o=.c)
0N/A
0N/AYPMASTERSRC = $(YPMASTEROBJ:.o=.c)
0N/A
0N/AYPALLSRC = $(YPALLOBJ:.o=.c)
591N/A
0N/ACOMMONSRC = $(COMMONOBJ:.o=.c)
339N/A
339N/A#COMMONCLNTSRC = $(COMMONCLNTOBJ:.o=.c)
591N/A
493N/ASRCS = $(BINSRC) $(SBINSRC) $(NETYPSRC) \
837N/A $(COMMONSRC) $(SHAREDSRC)
837N/A
837N/ACLEANFILES = ypxfrd.h ypxfrd_xdr.c
837N/A
837N/AIBINPROG= $(BINPROG:%=$(ROOTBIN)/%)
848N/AISBINPROG= $(SBINPROG:%=$(ROOTUSRSBIN)/%)
779N/AINETYPPROG= $(NETYPPROG:%=$(NETYP)/%)
156N/AINIS2LDAPPROG = $(NIS2LDAPPROG:%=$(NETYP)/%)
156N/A
810N/ANIS2LDAPINC = -I$(SRC)/lib/libnisdb/yptol
591N/A
591N/A#conditional assignments
591N/Aypalias.o := CPPFLAGS= -DMAIN $(CPPFLAGS.master)
591N/Amakedbm.o := CPPFLAGS= $(CPPFLAGS.master)
591N/Ayp_b_svc.o := CPPFLAGS += -DINIT_DEFAULT
935N/Aypxfrd_svc.o := CPPFLAGS += -Dmain=_main
591N/Aypxfr.o := CPPFLAGS += $(NIS2LDAPINC)
591N/Ayppush.o := CPPFLAGS += $(NIS2LDAPINC)
591N/A$(NIS2LDAPPROG) := CPPFLAGS += $(NIS2LDAPINC)
591N/A$(SHAREDOBJ) := CPPFLAGS += -I$(SRC)/lib/libnisdb/yptol
591N/A$(IBINPROG) := GROUP= other
0N/A$(ROOTVAR_YP)/Makefile := FILEMODE= 555
0N/A$(ROOTVAR_YP)/nicknames := FILEMODE= 644
$(ROOTVAR_YP)/updaters := FILEMODE= 500
$(ROOTETC)/publickey := FILEMODE= 644
# non-default file attributes to avoid conflict with rpcsrc
$(NETSVC) := GROUP= sys
NETYP = $(NETSVC)/yp
$(NETYP) := GROUP=bin
all:= TARGET= all
install:= TARGET= install
clean:= TARGET= clean
clobber:= TARGET= clobber
lint:= TARGET= lint
cstyle := TARGET= cstyle
all: $(SHAREDOBJ) $(SUBDIRS) $(PROG) $(TXTS)
# install rules
$(ROOTVAR_YP)/% \
$(ROOTETC)/%: net_files/%
$(INS.file)
$(ROOTVAR_YP)/% : net_files/%
$(INS.file)
$(NETYP)/%: %
$(INS.file)
.KEEP_STATE:
$(SHAREDOBJ): $(SHAREDSRC)
$(COMPILE.c) $(SHAREDSRC) -o $@ $<
ypbind: $(YPBINDOBJ)
$(LINK.c) $(YPBINDOBJ) -o $@ $(LDLIBS)
$(POST_PROCESS)
makedbm ypalias: $$@.o $(COMMONOBJ)
$(LINK.c) -o $@ $@.o $(COMMONOBJ) $(LDLIBS)
$(POST_PROCESS)
ypmatch: $(YPMATOBJ)
$(LINK.c) -o $@ $(YPMATOBJ) $(LDLIBS)
$(POST_PROCESS)
ypwhich: $(YPWHIOBJ)
$(LINK.c) -o $@ $(YPWHIOBJ) $(LDLIBS)
$(POST_PROCESS)
ypcat: $(YPCATOBJ)
$(LINK.c) -o $@ $(YPCATOBJ) $(LDLIBS)
$(POST_PROCESS)
ypxfrd_xdr.c: ypxfrd.x
$(RM) ypxfrd_xdr.c; $(RPCGEN) -C -c ypxfrd.x -o ypxfrd_xdr.c
ypxfrd.h: ypxfrd.x
$(RM) ypxfrd.h; $(RPCGEN) -C -h ypxfrd.x -o ypxfrd.h
ypxfrd_xdr.o ypxfrd_client.o: ypxfrd.h
#clnt_create_rsvd.o ypxfr.o: clnt_create_rsvd.h
ypxfrd: $(YPXFRDOBJ) $(SHAREDOBJ)
$(LINK.cc) $(YPXFRDOBJ) $(SHAREDOBJ) \
-o $@ $(LDLIBS) -lc
$(POST_PROCESS)
ypxfr: $(YPXFROBJ) $(COMMONOBJ) $(YPMASTEROBJ) $(SHAREDOBJ)
$(LINK.cc) -o $@ $(YPXFROBJ) $(YPMASTEROBJ) $(COMMONOBJ) \
$(SHAREDOBJ) $(LDLIBS)
$(POST_PROCESS)
ypserv: $(YPSERVOBJ) $(COMMONOBJ) $(SHAREDOBJ)
$(LINK.cc) $(YPSERVOBJ) $(COMMONOBJ) \
$(SHAREDOBJ) -o $@ $(LDLIBS)
$(POST_PROCESS)
yppush: $(YPPUSHOBJ) $(COMMONOBJ)
$(LINK.c) $(YPPUSHOBJ) $(COMMONOBJ) -o $@ $(LDLIBS)
$(POST_PROCESS)
udpublickey: $(UDPUBLICKEYOBJ)
$(LINK.c) $(UDPUBLICKEYOBJ) -o $@
$(POST_PROCESS)
mkalias: $(MKALIASOBJ)
$(LINK.c) $(MKALIASOBJ) -o $@ -lnsl
$(POST_PROCESS)
stdethers: $(STDETHERSOBJ)
$(LINK.c) $(STDETHERSOBJ) -o $@ -lsocket
$(POST_PROCESS)
stdhosts: $(STDHOSTSOBJ)
$(LINK.c) $(STDHOSTSOBJ) -o $@ $(LDLIBS)
$(POST_PROCESS)
install: all $(PROG) $(ROOTDIRS) $(ROOTETCFILE) $(ROOTYPFILES) $(IBINPROG) \
$(ISBINPROG) $(INETYPPROG) $(INIS2LDAPPROG) $(SUBDIRS) $(ROOTMANIFEST) \
$(ROOTSVCMETHOD)
$(ROOTDIRS):
$(INS.dir)
$(SUBDIRS): FRC
@cd $@; pwd; $(MAKE) $(TARGET)
lint := CPPFLAGS += -I$(SRC)/lib/libnisdb/yptol
lint: $(SUBDIRS)
$(LINT.c) ypmatch.c nick.c -lnsl
$(LINT.c) ypwhich.c nick.c -lnsl
$(LINT.c) ypcat.c nick.c -lnsl
$(LINT.c) makedbm.c getlist.c yp_getalias.c
$(LINT.c) ypalias.c getlist.c yp_getalias.c
$(LINT.c) yp_b_svc.c yp_b_subr.c rpc_bootstrap.c getlist.c -lnsl
$(LINT.c) ypxfr.c ypxfrd_client.c ypxfrd_xdr.c getlist.c yp_getalias.c \
./shared/utils.c ./shared/lockmap.c ./shared/ancil.c -lnsl
$(LINT.c) yppush.c getlist.c yp_getalias.c -lnsl
$(LINT.c) udpublickey.c
$(LINT.c) mkalias.c -lnsl
$(LINT.c) stdethers.c -lsocket
$(LINT.c) stdhosts.c -lnsl
$(LINT.c) ypxfrd_svc.c ypxfrd_xdr.c ypxfrd_server.c \
ypserv_net_secure.c \
./shared/utils.c ./shared/lockmap.c ./shared/ancil.c \
-lnsl -lnisdb
$(LINT.c) ypserv.c ypserv_map.c ypserv_proc.c ypserv_ancil.c \
ypserv_resolv.c ypserv_resolv_common.c ypv1_xdr.c \
ypserv_net_secure.c getlist.c yp_getalias.c \
./shared/utils.c ./shared/lockmap.c ./shared/ancil.c \
-lnsl -lnisdb
check: $(CHKMANIFEST)
cstyle: $(SUBDIRS)
${CSTYLE} `echo $(SRCS) | sed 's/ypinit.c//'`
clean: $(SUBDIRS)
$(RM) $(OBJS) $(CLEANFILES)
clobber: clean $(SUBDIRS)
FRC:
include ../Makefile.targ