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 51ae08745Sheppo# Common Development and Distribution License (the "License"). 61ae08745Sheppo# 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# 217c478bd9Sstevel@tonic-gate# 22*9444c26fSTom Whitten# Copyright 2010 Sun Microsystems, Inc. All rights reserved. 237c478bd9Sstevel@tonic-gate# Use is subject to license terms. 247c478bd9Sstevel@tonic-gate# 257c478bd9Sstevel@tonic-gate# Definitions common to command source. 267c478bd9Sstevel@tonic-gate# 277c478bd9Sstevel@tonic-gate# include global definitions; SRC should be defined in the shell. 287c478bd9Sstevel@tonic-gate# SRC is needed until RFE 1026993 is implemented. 297c478bd9Sstevel@tonic-gate 307c478bd9Sstevel@tonic-gateinclude $(SRC)/Makefile.master 317c478bd9Sstevel@tonic-gate 327c478bd9Sstevel@tonic-gateLN= ln 337c478bd9Sstevel@tonic-gateSH= sh 347c478bd9Sstevel@tonic-gateECHO= echo 357c478bd9Sstevel@tonic-gateMKDIR= mkdir 367c478bd9Sstevel@tonic-gateTOUCH= touch 377c478bd9Sstevel@tonic-gate 387c478bd9Sstevel@tonic-gateFILEMODE= 0555 397c478bd9Sstevel@tonic-gateLIBFILEMODE= 0444 407c478bd9Sstevel@tonic-gateXPG4= $(XPG4PROG:%=%.xpg4) 417c478bd9Sstevel@tonic-gateXPG6= $(XPG6PROG:%=%.xpg6) 427c478bd9Sstevel@tonic-gate 437c478bd9Sstevel@tonic-gateKRB5DIR= $(ROOT)/usr 447c478bd9Sstevel@tonic-gateKRB5BIN= $(KRB5DIR)/bin 457c478bd9Sstevel@tonic-gateKRB5SBIN= $(KRB5DIR)/sbin 467c478bd9Sstevel@tonic-gateKRB5LIB= $(KRB5DIR)/lib/krb5 477c478bd9Sstevel@tonic-gateKRB5RUNPATH= /usr/lib/krb5 487c478bd9Sstevel@tonic-gateGSSRUNPATH= /usr/lib/gss 497c478bd9Sstevel@tonic-gate 507c478bd9Sstevel@tonic-gate 517c478bd9Sstevel@tonic-gateROOTBIN= $(ROOT)/usr/bin 527c478bd9Sstevel@tonic-gateROOTLIB= $(ROOT)/usr/lib 537c478bd9Sstevel@tonic-gateROOTLIBSVCBIN= $(ROOT)/lib/svc/bin 547c478bd9Sstevel@tonic-gateROOTLIBSVCMETHOD= $(ROOT)/lib/svc/method 5599ba4d70SRussell BlaineROOTLIBXEN= $(ROOT)/usr/lib/xen/bin 56f875b4ebSricaROOTLIBZONES= $(ROOT)/lib/zones 577c478bd9Sstevel@tonic-gate 587c478bd9Sstevel@tonic-gateROOTSHLIB= $(ROOT)/usr/share/lib 595c51f124SMoriah WaterlandROOTPKGBIN= $(ROOT)/usr/sadm/install/bin 605c51f124SMoriah WaterlandROOTCLASS_SCR_DIR= $(ROOT)/usr/sadm/install/scripts 615c51f124SMoriah WaterlandROOTADMIN_SRC_DIR= $(ROOT)/var/sadm/install/admin 625c51f124SMoriah Waterland 6367298654SdamicoROOTSHLIBCCS= $(ROOTSHLIB)/ccs 647c478bd9Sstevel@tonic-gateROOTSBIN= $(ROOT)/sbin 657c478bd9Sstevel@tonic-gateROOTUSRSBIN= $(ROOT)/usr/sbin 667c478bd9Sstevel@tonic-gateROOTETC= $(ROOT)/etc 67f875b4ebSrica 68f875b4ebSricaROOTETCSECURITY= $(ROOTETC)/security 69f875b4ebSricaROOTETCTSOL= $(ROOTETCSECURITY)/tsol 70f875b4ebSricaROOTETCSECLIB= $(ROOTETCSECURITY)/lib 71f875b4ebSricaROOTETCZONES= $(ROOTETC)/zones 72f875b4ebSrica 73da14cebeSEric ChengROOTETCINET= $(ROOT)/etc/inet 747c478bd9Sstevel@tonic-gateROOTCCSBIN= $(ROOT)/usr/ccs/bin 7567298654SdamicoROOTCCSBIN64= $(ROOTCCSBIN)/$(MACH64) 7667298654SdamicoROOTCCSBINLINKDIR= $(ROOT)/../../bin 7767298654SdamicoROOTCCSBINLINKDIR64= $(ROOT)../../../bin/$(MACH) 787c478bd9Sstevel@tonic-gateROOTUSRKVM= $(ROOT)/usr/kvm 79ead1f93eSLiane PrazaROOTHAS= $(ROOT)/usr/has 80ead1f93eSLiane PrazaROOTHASBIN= $(ROOT)/usr/has/bin 81ead1f93eSLiane PrazaROOTHASLIB= $(ROOT)/usr/has/lib 827c478bd9Sstevel@tonic-gateROOTXPG4= $(ROOT)/usr/xpg4 837c478bd9Sstevel@tonic-gateROOTXPG4BIN= $(ROOT)/usr/xpg4/bin 847c478bd9Sstevel@tonic-gateROOTXPG4BIN32= $(ROOTXPG4BIN)/$(MACH32) 857c478bd9Sstevel@tonic-gateROOTXPG4BIN64= $(ROOTXPG4BIN)/$(MACH64) 867c478bd9Sstevel@tonic-gateROOTXPG6= $(ROOT)/usr/xpg6 877c478bd9Sstevel@tonic-gateROOTXPG6BIN= $(ROOT)/usr/xpg6/bin 887c478bd9Sstevel@tonic-gateROOTLOCALEDEF= $(ROOT)/usr/lib/localedef 897c478bd9Sstevel@tonic-gateROOTCHARMAP= $(ROOTLOCALEDEF)/charmap 907c478bd9Sstevel@tonic-gateROOTI18NEXT= $(ROOTLOCALEDEF)/extensions 917c478bd9Sstevel@tonic-gateROOTI18NEXT64= $(ROOTLOCALEDEF)/extensions/$(MACH64) 927c478bd9Sstevel@tonic-gateROOTBIN32= $(ROOTBIN)/$(MACH32) 937c478bd9Sstevel@tonic-gateROOTBIN64= $(ROOTBIN)/$(MACH64) 947c478bd9Sstevel@tonic-gateROOTCMDDIR64= $(ROOTCMDDIR)/$(MACH64) 957c478bd9Sstevel@tonic-gateROOTLIB64= $(ROOTLIB)/$(MACH64) 967c478bd9Sstevel@tonic-gateROOTUSRSBIN32= $(ROOTUSRSBIN)/$(MACH32) 977c478bd9Sstevel@tonic-gateROOTUSRSBIN64= $(ROOTUSRSBIN)/$(MACH64) 98257873cfSJohn.Zolnowsky@Sun.COMROOTMAN= $(ROOT)/usr/share/man 99257873cfSJohn.Zolnowsky@Sun.COMROOTMAN1= $(ROOTMAN)/man1 100257873cfSJohn.Zolnowsky@Sun.COMROOTMAN1M= $(ROOTMAN)/man1m 101257873cfSJohn.Zolnowsky@Sun.COMROOTMAN3= $(ROOTMAN)/man3 102da6c28aaSamwROOTVARSMB= $(ROOT)/var/smb 1037c478bd9Sstevel@tonic-gate 1047c478bd9Sstevel@tonic-gate 1055c51f124SMoriah Waterland# 1067c478bd9Sstevel@tonic-gate# Like ROOTLIBDIR in $(SRC)/Makefile.lib, any lower-level Makefiles that 1077c478bd9Sstevel@tonic-gate# put their binaries in a non-standard location should reset this and use 1087c478bd9Sstevel@tonic-gate# $(ROOTCMD) in their `install' target. By default we set this to a bogus 1097c478bd9Sstevel@tonic-gate# value so that it will not conflict with any of the other values already 1107c478bd9Sstevel@tonic-gate# defined in this Makefile. 1117c478bd9Sstevel@tonic-gate# 1127c478bd9Sstevel@tonic-gateROOTCMDDIR= $(ROOT)/__nonexistent_directory__ 1137c478bd9Sstevel@tonic-gate 1147c478bd9Sstevel@tonic-gateROOTSHAUDIO= $(ROOT)/usr/share/audio 1157c478bd9Sstevel@tonic-gateROOTAUDIOSAMP= $(ROOTSHAUDIO)/samples 1167c478bd9Sstevel@tonic-gateROOTAUDIOSAMPAU=$(ROOTAUDIOSAMP)/au 1177c478bd9Sstevel@tonic-gate 1187c478bd9Sstevel@tonic-gateISAEXEC= $(ROOT)/usr/lib/isaexec 1197c478bd9Sstevel@tonic-gatePLATEXEC= $(ROOT)/usr/lib/platexec 1207c478bd9Sstevel@tonic-gate 1217c478bd9Sstevel@tonic-gateLDLIBS = $(LDLIBS.cmd) 1227c478bd9Sstevel@tonic-gate 1237c478bd9Sstevel@tonic-gateLDFLAGS.cmd = \ 124f6acbf7cSrie $(BDIRECT) $(ENVLDFLAGS1) $(ENVLDFLAGS2) $(ENVLDFLAGS3) \ 12524da5b34Srie $(MAPFILE.NES:%=-M%) $(MAPFILE.PGA:%=-M%) $(MAPFILE.NED:%=-M%) 1267c478bd9Sstevel@tonic-gate 1277c478bd9Sstevel@tonic-gateLDFLAGS = $(LDFLAGS.cmd) 1287c478bd9Sstevel@tonic-gate 1297c478bd9Sstevel@tonic-gateLINTFLAGS= -axsm 1300bb07399SNick ToddLINTFLAGS64= -axsm -m64 1317c478bd9Sstevel@tonic-gateLINTOUT= lint.out 1327c478bd9Sstevel@tonic-gate 1337c478bd9Sstevel@tonic-gateKRB5PROG= $(PROG:%=$(KRB5BIN)/%) 1347c478bd9Sstevel@tonic-gateKRB5SBINPROG= $(PROG:%=$(KRB5SBIN)/%) 1357c478bd9Sstevel@tonic-gateKRB5LIBPROG= $(PROG:%=$(KRB5LIB)/%) 1367c478bd9Sstevel@tonic-gate 1377c478bd9Sstevel@tonic-gateROOTPROG= $(PROG:%=$(ROOTBIN)/%) 1387c478bd9Sstevel@tonic-gateROOTCMD= $(PROG:%=$(ROOTCMDDIR)/%) 1397c478bd9Sstevel@tonic-gateROOTSHFILES= $(SHFILES:%=$(ROOTBIN)/%) 1407c478bd9Sstevel@tonic-gateROOTLIBPROG= $(PROG:%=$(ROOTLIB)/%) 1417c478bd9Sstevel@tonic-gateROOTLIBSHFILES= $(SHFILES:%=$(ROOTLIB)/%) 1427c478bd9Sstevel@tonic-gateROOTSHLIBPROG= $(PROG:%=$(ROOTSHLIB)/%) 1437c478bd9Sstevel@tonic-gateROOTSBINPROG= $(PROG:%=$(ROOTSBIN)/%) 1445c51f124SMoriah WaterlandROOTPKGBINPROG= $(PROG:%=$(ROOTPKGBIN)/%) 1455c51f124SMoriah WaterlandROOTCLASS_SCR_FILES= $(SCRIPTS:%=$(ROOTCLASS_SCR_DIR)/%) 1467c478bd9Sstevel@tonic-gateROOTUSRSBINPROG=$(PROG:%=$(ROOTUSRSBIN)/%) 147f875b4ebSricaROOTUSRSBINSCRIPT=$(SCRIPT:%=$(ROOTUSRSBIN)/%) 1487c478bd9Sstevel@tonic-gateROOTETCPROG= $(PROG:%=$(ROOTETC)/%) 149ead1f93eSLiane PrazaROOTHASBINPROG= $(PROG:%=$(ROOTHASBIN)/%) 150ead1f93eSLiane PrazaROOTHASLIBPROG= $(PROG:%=$(ROOTHASLIB)/%) 1517c478bd9Sstevel@tonic-gateROOTCCSBINPROG= $(PROG:%=$(ROOTCCSBIN)/%) 15267298654SdamicoROOTCCSBINPROG64= $(PROG:%=$(ROOTCCSBIN64)/%) 15367298654SdamicoROOTCCSBINLINK=$(PROG:%= $(ROOTCCSBINLINKDIR)/%) 15467298654SdamicoROOTCCSBINLINK64=$(PROG:%=$(ROOTCCSBINLINKDIR64)/%) 1557c478bd9Sstevel@tonic-gateROOTUSRKVMPROG= $(PROG:%=$(ROOTUSRKVM)/%) 1567c478bd9Sstevel@tonic-gateROOTXPG4PROG= $(XPG4PROG:%=$(ROOTXPG4BIN)/%) 1577c478bd9Sstevel@tonic-gateROOTXPG4PROG32= $(XPG4PROG:%=$(ROOTXPG4BIN32)/%) 1587c478bd9Sstevel@tonic-gateROOTXPG4PROG64= $(XPG4PROG:%=$(ROOTXPG4BIN64)/%) 1597c478bd9Sstevel@tonic-gateROOTXPG6PROG= $(XPG6PROG:%=$(ROOTXPG6BIN)/%) 1607c478bd9Sstevel@tonic-gateROOTLOCALEPROG= $(PROG:%=$(ROOTLOCALEDEF)/%) 1617c478bd9Sstevel@tonic-gateROOTPROG64= $(PROG:%=$(ROOTBIN64)/%) 1627c478bd9Sstevel@tonic-gateROOTPROG32= $(PROG:%=$(ROOTBIN32)/%) 1637c478bd9Sstevel@tonic-gateROOTCMD64= $(PROG:%=$(ROOTCMDDIR64)/%) 1647c478bd9Sstevel@tonic-gateROOTUSRSBINPROG32= $(PROG:%=$(ROOTUSRSBIN32)/%) 1657c478bd9Sstevel@tonic-gateROOTUSRSBINPROG64= $(PROG:%=$(ROOTUSRSBIN64)/%) 1667c478bd9Sstevel@tonic-gateROOTMAN1FILES= $(MAN1FILES:%=$(ROOTMAN1)/%) 1677c478bd9Sstevel@tonic-gate$(ROOTMAN1FILES) := FILEMODE= 444 1687c478bd9Sstevel@tonic-gateROOTMAN1MFILES= $(MAN1MFILES:%=$(ROOTMAN1M)/%) 1697c478bd9Sstevel@tonic-gate$(ROOTMAN1MFILES) := FILEMODE= 444 1707c478bd9Sstevel@tonic-gateROOTMAN3FILES= $(MAN3FILES:%=$(ROOTMAN3)/%) 1717c478bd9Sstevel@tonic-gate$(ROOTMAN3FILES) := FILEMODE= 444 1727c478bd9Sstevel@tonic-gate 17367298654Sdamico# Symlink rules for /usr/ccs/bin commands. Note, those commands under 17467298654Sdamico# the rule of the linker area, are controlled by a different set of 17567298654Sdamico# rules defined in $(SRC)/cmd/sgs/Makefile.var. 17667298654Sdamico 17767298654SdamicoINS.ccsbinlink= \ 17867298654Sdamico $(RM) $(ROOTCCSBINPROG); \ 17967298654Sdamico $(SYMLINK) ../../bin/$(PROG) $(ROOTCCSBINPROG) 18067298654Sdamico 18167298654SdamicoINS.ccsbinlink64= \ 18267298654Sdamico $(RM) $(ROOTCCSBINPROG64); \ 18367298654Sdamico $(SYMLINK) ../../../bin/$(MACH64)/$(PROG) $(ROOTCCSBINPROG64) 18467298654Sdamico 1857c478bd9Sstevel@tonic-gateROOTETCDEFAULT= $(ROOTETC)/default 186a7872406SmeemROOTETCDEFAULTFILES= $(DEFAULTFILES:%.dfl=$(ROOTETCDEFAULT)/%) 187a7872406Smeem$(ROOTETCDEFAULTFILES) := FILEMODE = 0644 1887c478bd9Sstevel@tonic-gate 189f875b4ebSricaROOTETCSECFILES= $(ETCSECFILES:%=$(ROOTETCSECURITY)/%) 190f875b4ebSrica$(ROOTETCSECFILES) := FILEMODE = 0644 191f875b4ebSrica 192f875b4ebSricaROOTETCTSOLFILES= $(ETCTSOLFILES:%=$(ROOTETCTSOL)/%) 193f875b4ebSrica$(ROOTETCTSOLFILES) := FILEMODE = 0644 194f875b4ebSrica 195f875b4ebSricaROOTETCSECLIBFILES= $(ETCSECLIBFILES:%=$(ROOTETCSECLIB)/%) 196f875b4ebSrica 197f875b4ebSricaROOTETCZONESFILES= $(ETCZONESFILES:%=$(ROOTETCZONES)/%) 198f875b4ebSrica$(ROOTETCZONESFILES) := FILEMODE = 0444 199f875b4ebSrica 200f875b4ebSricaROOTLIBZONESFILES= $(LIBZONESFILES:%=$(ROOTLIBZONES)/%) 201f875b4ebSrica$(ROOTLIBZONESFILES) := FILEMODE = 0555 202f875b4ebSrica 2035c51f124SMoriah WaterlandROOTADMIN_SRC_FILE= $(ADMINFILE:%=$(ROOTADMIN_SRC_DIR)/%) 2045c51f124SMoriah Waterland$(ROOTADMIN_SRC_FILE) := FILEMODE = 0444 205f875b4ebSrica 2067c478bd9Sstevel@tonic-gate# 2077c478bd9Sstevel@tonic-gate# Directories for smf(5) service manifests and profiles. 2087c478bd9Sstevel@tonic-gate# 209*9444c26fSTom WhittenROOTSVC= $(ROOT)/lib/svc 210*9444c26fSTom WhittenROOTETCSVC= $(ROOT)/etc/svc 2117c478bd9Sstevel@tonic-gate 212*9444c26fSTom WhittenROOTSVCMANIFEST= $(ROOTSVC)/manifest 213*9444c26fSTom WhittenROOTSVCPROFILE= $(ROOTETCSVC)/profile 2147c478bd9Sstevel@tonic-gate 215*9444c26fSTom WhittenROOTSVCMILESTONE= $(ROOTSVCMANIFEST)/milestone 216*9444c26fSTom WhittenROOTSVCDEVICE= $(ROOTSVCMANIFEST)/device 217*9444c26fSTom WhittenROOTSVCSYSTEM= $(ROOTSVCMANIFEST)/system 2187c478bd9Sstevel@tonic-gateROOTSVCSYSTEMDEVICE= $(ROOTSVCSYSTEM)/device 2197c478bd9Sstevel@tonic-gateROOTSVCSYSTEMFILESYSTEM= $(ROOTSVCSYSTEM)/filesystem 2207c478bd9Sstevel@tonic-gateROOTSVCSYSTEMSECURITY= $(ROOTSVCSYSTEM)/security 221*9444c26fSTom WhittenROOTSVCNETWORK= $(ROOTSVCMANIFEST)/network 2224b22b933Srs200217ROOTSVCNETWORKDNS= $(ROOTSVCNETWORK)/dns 223a6d42e7dSPeter DunlapROOTSVCNETWORKISCSI= $(ROOTSVCNETWORK)/iscsi 2247c478bd9Sstevel@tonic-gateROOTSVCNETWORKLDAP= $(ROOTSVCNETWORK)/ldap 2257c478bd9Sstevel@tonic-gateROOTSVCNETWORKNFS= $(ROOTSVCNETWORK)/nfs 2267c478bd9Sstevel@tonic-gateROOTSVCNETWORKNIS= $(ROOTSVCNETWORK)/nis 227a192e900SamaguireROOTSVCNETWORKROUTING= $(ROOTSVCNETWORK)/routing 2287c478bd9Sstevel@tonic-gateROOTSVCNETWORKRPC= $(ROOTSVCNETWORK)/rpc 2294bff34e3SthurlowROOTSVCNETWORKSMB= $(ROOTSVCNETWORK)/smb 2307c478bd9Sstevel@tonic-gateROOTSVCNETWORKSECURITY= $(ROOTSVCNETWORK)/security 231abf1b5ddSkaisROOTSVCNETWORKSSL= $(ROOTSVCNETWORK)/ssl 232e3320f40SmarkfenROOTSVCNETWORKIPSEC= $(ROOTSVCNETWORK)/ipsec 2336185db85SdougmROOTSVCNETWORKSHARES= $(ROOTSVCNETWORK)/shares 234da6c28aaSamwROOTSVCSMB= $(ROOTSVCNETWORK)/smb 235*9444c26fSTom WhittenROOTSVCPLATFORM= $(ROOTSVCMANIFEST)/platform 2367c478bd9Sstevel@tonic-gateROOTSVCPLATFORMSUN4U= $(ROOTSVCPLATFORM)/sun4u 2371ae08745SheppoROOTSVCPLATFORMSUN4V= $(ROOTSVCPLATFORM)/sun4v 238*9444c26fSTom WhittenROOTSVCAPPLICATION= $(ROOTSVCMANIFEST)/application 2397c478bd9Sstevel@tonic-gateROOTSVCAPPLICATIONMANAGEMENT= $(ROOTSVCAPPLICATION)/management 2407c478bd9Sstevel@tonic-gateROOTSVCAPPLICATIONSECURITY= $(ROOTSVCAPPLICATION)/security 2417c478bd9Sstevel@tonic-gateROOTSVCAPPLICATIONPRINT= $(ROOTSVCAPPLICATION)/print 2427c478bd9Sstevel@tonic-gate 2437c478bd9Sstevel@tonic-gate# 2447c478bd9Sstevel@tonic-gate# Commands Makefiles delivering a manifest are expected to define MANIFEST. 2457c478bd9Sstevel@tonic-gate# 2467c478bd9Sstevel@tonic-gate# Like ROOTCMDDIR, any lower-level Makefiles that put their manifests in a 2477c478bd9Sstevel@tonic-gate# subdirectory of the manifest directories listed above should reset 2487c478bd9Sstevel@tonic-gate# ROOTMANIFESTDIR and use it in their `install' target. By default we set this 2497c478bd9Sstevel@tonic-gate# to a bogus value so that it will not conflict with any of the other values 2507c478bd9Sstevel@tonic-gate# already defined in this Makefile. 2517c478bd9Sstevel@tonic-gate# 2527c478bd9Sstevel@tonic-gate# The manifest validation of the $SRC/cmd check target is also derived from a 2537c478bd9Sstevel@tonic-gate# valid MANIFEST setting. 2547c478bd9Sstevel@tonic-gate# 255*9444c26fSTom WhittenROOTMANIFESTDIR= $(ROOTSVCMANIFEST)/__nonexistent_directory__ 2567c478bd9Sstevel@tonic-gateROOTMANIFEST= $(MANIFEST:%=$(ROOTMANIFESTDIR)/%) 2577c478bd9Sstevel@tonic-gateCHKMANIFEST= $(MANIFEST:%.xml=%.xmlchk) 2587c478bd9Sstevel@tonic-gate 2591f6eb021SLiane Praza# Manifests cannot be checked in parallel, because we are using the global 2601f6eb021SLiane Praza# repository that is in $(SRC)/cmd/svc/seed/global.db. This is a 2611f6eb021SLiane Praza# repository that is built from the manifests in this workspace, whereas 2621f6eb021SLiane Praza# the build machine's repository may be out of sync with these manifests. 2631f6eb021SLiane Praza# Because we are using a private repository, svccfg-native must start up a 2641f6eb021SLiane Praza# private copy of configd-native. We cannot have multiple copies of 2651f6eb021SLiane Praza# configd-native trying to access global.db simultaneously. 2661f6eb021SLiane Praza 2671f6eb021SLiane Praza.NO_PARALLEL: $(CHKMANIFEST) 2681f6eb021SLiane Praza 2697c478bd9Sstevel@tonic-gate# 2707c478bd9Sstevel@tonic-gate# For installing "starter scripts" of services 2717c478bd9Sstevel@tonic-gate# 2727c478bd9Sstevel@tonic-gate 2737c478bd9Sstevel@tonic-gateROOTSVCMETHOD= $(SVCMETHOD:%=$(ROOTLIBSVCMETHOD)/%) 2747c478bd9Sstevel@tonic-gate 2757c478bd9Sstevel@tonic-gateROOTSVCBINDIR= $(ROOTLIBSVCBIN)/__nonexistent_directory__ 2767c478bd9Sstevel@tonic-gateROOTSVCBIN= $(SVCBIN:%=$(ROOTSVCBINDIR)/%) 2777c478bd9Sstevel@tonic-gate 2787c478bd9Sstevel@tonic-gate# 2797c478bd9Sstevel@tonic-gate 2807c478bd9Sstevel@tonic-gate# For programs that are installed in the root filesystem, 2817c478bd9Sstevel@tonic-gate# build $(ROOTFS_PROG) rather than $(PROG) 2827c478bd9Sstevel@tonic-gate$(ROOTFS_PROG) := LDFLAGS += -Wl,-I/lib/ld.so.1 2837c478bd9Sstevel@tonic-gate 2847c478bd9Sstevel@tonic-gate$(KRB5BIN)/%: % 2857c478bd9Sstevel@tonic-gate $(INS.file) 2867c478bd9Sstevel@tonic-gate 2877c478bd9Sstevel@tonic-gate$(KRB5SBIN)/%: % 2887c478bd9Sstevel@tonic-gate $(INS.file) 2897c478bd9Sstevel@tonic-gate 2907c478bd9Sstevel@tonic-gate$(KRB5LIB)/%: % 2917c478bd9Sstevel@tonic-gate $(INS.file) 2927c478bd9Sstevel@tonic-gate 2937c478bd9Sstevel@tonic-gate$(ROOTBIN)/%: % 2947c478bd9Sstevel@tonic-gate $(INS.file) 2957c478bd9Sstevel@tonic-gate 2967c478bd9Sstevel@tonic-gate$(ROOTLIB)/%: % 2977c478bd9Sstevel@tonic-gate $(INS.file) 2987c478bd9Sstevel@tonic-gate 2997c478bd9Sstevel@tonic-gate$(ROOTBIN64)/%: % 3007c478bd9Sstevel@tonic-gate $(INS.file) 3017c478bd9Sstevel@tonic-gate 3027c478bd9Sstevel@tonic-gate$(ROOTLIB64)/%: % 3037c478bd9Sstevel@tonic-gate $(INS.file) 3047c478bd9Sstevel@tonic-gate 3057c478bd9Sstevel@tonic-gate$(ROOTBIN32)/%: % 3067c478bd9Sstevel@tonic-gate $(INS.file) 3077c478bd9Sstevel@tonic-gate 3087c478bd9Sstevel@tonic-gate$(ROOTSHLIB)/%: % 3097c478bd9Sstevel@tonic-gate $(INS.file) 3107c478bd9Sstevel@tonic-gate 3115c51f124SMoriah Waterland$(ROOTPKGBIN)/%: % 3125c51f124SMoriah Waterland $(INS.file) 3135c51f124SMoriah Waterland 3145c51f124SMoriah Waterland$(ROOTCLASS_SCR_DIR)/%: % 3155c51f124SMoriah Waterland $(INS.file) 3165c51f124SMoriah Waterland 3175c51f124SMoriah Waterland$(ROOTADMIN_SRC_DIR)/%: % 3185c51f124SMoriah Waterland $(INS.file) 3195c51f124SMoriah Waterland 3207c478bd9Sstevel@tonic-gate$(ROOTSBIN)/%: % 3217c478bd9Sstevel@tonic-gate $(INS.file) 3227c478bd9Sstevel@tonic-gate 3237c478bd9Sstevel@tonic-gate$(ROOTUSRSBIN)/%: % 3247c478bd9Sstevel@tonic-gate $(INS.file) 3257c478bd9Sstevel@tonic-gate 3267c478bd9Sstevel@tonic-gate$(ROOTUSRSBIN32)/%: % 3277c478bd9Sstevel@tonic-gate $(INS.file) 3287c478bd9Sstevel@tonic-gate 3297c478bd9Sstevel@tonic-gate$(ROOTUSRSBIN64)/%: % 3307c478bd9Sstevel@tonic-gate $(INS.file) 3317c478bd9Sstevel@tonic-gate 3327c478bd9Sstevel@tonic-gate$(ROOTETC)/%: % 3337c478bd9Sstevel@tonic-gate $(INS.file) 3347c478bd9Sstevel@tonic-gate 335da14cebeSEric Cheng$(ROOTETCINET)/%: % 336da14cebeSEric Cheng $(INS.file) 337da14cebeSEric Cheng 338a7872406Smeem$(ROOTETCDEFAULT)/%: %.dfl 339a7872406Smeem $(INS.rename) 340a7872406Smeem 341f875b4ebSrica$(ROOTETCTSOL)/%: % 342f875b4ebSrica $(INS.file) 343f875b4ebSrica 344f875b4ebSrica$(ROOTETCSECLIB)/%: % 345f875b4ebSrica $(INS.file) 346f875b4ebSrica 347f875b4ebSrica$(ROOTETCZONES)/%: % 348f875b4ebSrica $(INS.file) 349f875b4ebSrica 350f875b4ebSrica$(ROOTLIBZONES)/%: % 351f875b4ebSrica $(INS.file) 352f875b4ebSrica 35399ba4d70SRussell Blaine$(ROOTLIBXEN)/%: % 35499ba4d70SRussell Blaine $(INS.file) 35599ba4d70SRussell Blaine 356ead1f93eSLiane Praza$(ROOTHASBIN)/%: % 357ead1f93eSLiane Praza $(INS.file) 358ead1f93eSLiane Praza 359ead1f93eSLiane Praza$(ROOTHASLIB)/%: % 360ead1f93eSLiane Praza $(INS.file) 361ead1f93eSLiane Praza 3627c478bd9Sstevel@tonic-gate$(ROOTUSRKVM)/%: % 3637c478bd9Sstevel@tonic-gate $(INS.file) 3647c478bd9Sstevel@tonic-gate 3657c478bd9Sstevel@tonic-gate$(ROOTXPG4BIN)/%: %.xpg4 3667c478bd9Sstevel@tonic-gate $(INS.rename) 3677c478bd9Sstevel@tonic-gate 3687c478bd9Sstevel@tonic-gate$(ROOTXPG4BIN32)/%: %.xpg4 3697c478bd9Sstevel@tonic-gate $(INS.rename) 3707c478bd9Sstevel@tonic-gate 3717c478bd9Sstevel@tonic-gate$(ROOTXPG4BIN64)/%: %.xpg4 3727c478bd9Sstevel@tonic-gate $(INS.rename) 3737c478bd9Sstevel@tonic-gate 3747c478bd9Sstevel@tonic-gate$(ROOTXPG6BIN)/%: %.xpg6 3757c478bd9Sstevel@tonic-gate $(INS.rename) 3767c478bd9Sstevel@tonic-gate 3777c478bd9Sstevel@tonic-gate$(ROOTLOCALEDEF)/%: % 3787c478bd9Sstevel@tonic-gate $(INS.file) 3797c478bd9Sstevel@tonic-gate 3807c478bd9Sstevel@tonic-gate$(ROOTCHARMAP)/%: % 3817c478bd9Sstevel@tonic-gate $(INS.file) 3827c478bd9Sstevel@tonic-gate 3837c478bd9Sstevel@tonic-gate$(ROOTI18NEXT)/%: % 3847c478bd9Sstevel@tonic-gate $(INS.file) 3857c478bd9Sstevel@tonic-gate 3867c478bd9Sstevel@tonic-gate$(ROOTI18NEXT64)/%: % 3877c478bd9Sstevel@tonic-gate $(INS.file) 3887c478bd9Sstevel@tonic-gate 3897c478bd9Sstevel@tonic-gate$(ROOTLIBSVCMETHOD)/%: % 3907c478bd9Sstevel@tonic-gate $(INS.file) 3917c478bd9Sstevel@tonic-gate 3927c478bd9Sstevel@tonic-gate$(ROOTLIBSVCBIN)/%: % 3937c478bd9Sstevel@tonic-gate $(INS.file) 3947c478bd9Sstevel@tonic-gate 3957c478bd9Sstevel@tonic-gate$(ROOTSVCMILESTONE)/%: % 3967c478bd9Sstevel@tonic-gate $(INS.file) 3977c478bd9Sstevel@tonic-gate 3987c478bd9Sstevel@tonic-gate$(ROOTSVCDEVICE)/%: % 3997c478bd9Sstevel@tonic-gate $(INS.file) 4007c478bd9Sstevel@tonic-gate 4017c478bd9Sstevel@tonic-gate$(ROOTSVCSYSTEM)/%: % 4027c478bd9Sstevel@tonic-gate $(INS.file) 4037c478bd9Sstevel@tonic-gate 4047c478bd9Sstevel@tonic-gate$(ROOTSVCSYSTEMDEVICE)/%: % 4057c478bd9Sstevel@tonic-gate $(INS.file) 4067c478bd9Sstevel@tonic-gate 4077c478bd9Sstevel@tonic-gate$(ROOTSVCSYSTEMFILESYSTEM)/%: % 4087c478bd9Sstevel@tonic-gate $(INS.file) 4097c478bd9Sstevel@tonic-gate 4107c478bd9Sstevel@tonic-gate$(ROOTSVCSYSTEMSECURITY)/%: % 4117c478bd9Sstevel@tonic-gate $(INS.file) 4127c478bd9Sstevel@tonic-gate 4137c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORK)/%: % 4147c478bd9Sstevel@tonic-gate $(INS.file) 4157c478bd9Sstevel@tonic-gate 4167c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORKLDAP)/%: % 4177c478bd9Sstevel@tonic-gate $(INS.file) 4187c478bd9Sstevel@tonic-gate 4197c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORKNFS)/%: % 4207c478bd9Sstevel@tonic-gate $(INS.file) 4217c478bd9Sstevel@tonic-gate 4227c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORKNIS)/%: % 4237c478bd9Sstevel@tonic-gate $(INS.file) 4247c478bd9Sstevel@tonic-gate 4257c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORKRPC)/%: % 4267c478bd9Sstevel@tonic-gate $(INS.file) 4277c478bd9Sstevel@tonic-gate 4287c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORKSECURITY)/%: % 4297c478bd9Sstevel@tonic-gate $(INS.file) 4307c478bd9Sstevel@tonic-gate 431abf1b5ddSkais$(ROOTSVCNETWORKSSL)/%: % 432abf1b5ddSkais $(INS.file) 433abf1b5ddSkais 434e3320f40Smarkfen$(ROOTSVCNETWORKIPSEC)/%: % 435e3320f40Smarkfen $(INS.file) 436e3320f40Smarkfen 4376185db85Sdougm$(ROOTSVCNETWORKSHARES)/%: % 4386185db85Sdougm $(INS.file) 4396185db85Sdougm 4404bff34e3Sthurlow$(ROOTSVCNETWORKSMB)/%: % 4414bff34e3Sthurlow $(INS.file) 4424bff34e3Sthurlow 4437c478bd9Sstevel@tonic-gate$(ROOTSVCAPPLICATION)/%: % 4447c478bd9Sstevel@tonic-gate $(INS.file) 4457c478bd9Sstevel@tonic-gate 4467c478bd9Sstevel@tonic-gate$(ROOTSVCAPPLICATIONMANAGEMENT)/%: % 4477c478bd9Sstevel@tonic-gate $(INS.file) 4487c478bd9Sstevel@tonic-gate 4497c478bd9Sstevel@tonic-gate$(ROOTSVCAPPLICATIONSECURITY)/%: % 4507c478bd9Sstevel@tonic-gate $(INS.file) 4517c478bd9Sstevel@tonic-gate 4527c478bd9Sstevel@tonic-gate$(ROOTSVCAPPLICATIONPRINT)/%: % 4537c478bd9Sstevel@tonic-gate $(INS.file) 4547c478bd9Sstevel@tonic-gate 4557c478bd9Sstevel@tonic-gate$(ROOTSVCPLATFORM)/%: % 4567c478bd9Sstevel@tonic-gate $(INS.file) 4577c478bd9Sstevel@tonic-gate 4587c478bd9Sstevel@tonic-gate$(ROOTSVCPLATFORMSUN4U)/%: % 4597c478bd9Sstevel@tonic-gate $(INS.file) 4607c478bd9Sstevel@tonic-gate 4611ae08745Sheppo$(ROOTSVCPLATFORMSUN4V)/%: % 4621ae08745Sheppo $(INS.file) 4631ae08745Sheppo 46467298654Sdamico# Install rule for gprof, yacc, and lex dependency files 46567298654Sdamico$(ROOTSHLIBCCS)/%: ../common/% 46667298654Sdamico $(INS.file) 46767298654Sdamico 46867298654Sdamico$(ROOTCCSBINLINKDIR)/%: % 46967298654Sdamico $(INS.ccsbinlink) 47067298654Sdamico 47167298654Sdamico$(ROOTCCSBINLINKDIR64)/%: % 47267298654Sdamico $(INS.ccsbinlink64) 47367298654Sdamico 4747c478bd9Sstevel@tonic-gate$(ROOTMAN1)/%: %.sunman 4757c478bd9Sstevel@tonic-gate $(INS.rename) 4767c478bd9Sstevel@tonic-gate 4777c478bd9Sstevel@tonic-gate$(ROOTMAN1M)/%: %.sunman 4787c478bd9Sstevel@tonic-gate $(INS.rename) 4797c478bd9Sstevel@tonic-gate 4807c478bd9Sstevel@tonic-gate$(ROOTMAN3)/%: %.sunman 4817c478bd9Sstevel@tonic-gate $(INS.rename) 4827c478bd9Sstevel@tonic-gate 483da6c28aaSamw$(ROOTVARSMB)/%: % 484da6c28aaSamw $(INS.file) 485da6c28aaSamw 4867c478bd9Sstevel@tonic-gate# build rule for statically linked programs with single source file. 4877c478bd9Sstevel@tonic-gate%.static: %.c 4887c478bd9Sstevel@tonic-gate $(LINK.c) -o $@ $< $(LDLIBS) 4897c478bd9Sstevel@tonic-gate $(POST_PROCESS) 4907c478bd9Sstevel@tonic-gate 4917c478bd9Sstevel@tonic-gate%.xpg4: %.c 4927c478bd9Sstevel@tonic-gate $(LINK.c) -o $@ $< $(LDLIBS) 4937c478bd9Sstevel@tonic-gate $(POST_PROCESS) 4947c478bd9Sstevel@tonic-gate 4957c478bd9Sstevel@tonic-gate%.xpg6: %.c 4967c478bd9Sstevel@tonic-gate $(LINK.c) -o $@ $< $(LDLIBS) 4977c478bd9Sstevel@tonic-gate $(POST_PROCESS) 4987c478bd9Sstevel@tonic-gate 4997c478bd9Sstevel@tonic-gate# Define the majority text domain in this directory. 5007c478bd9Sstevel@tonic-gateTEXT_DOMAIN= SUNW_OST_OSCMD 5017c478bd9Sstevel@tonic-gate 5027c478bd9Sstevel@tonic-gateCLOBBERFILES += $(XPG4) $(XPG6) $(DCFILE) 5037c478bd9Sstevel@tonic-gate 5047c478bd9Sstevel@tonic-gate# This flag is being added only for SCO (x86) compatibility 5057c478bd9Sstevel@tonic-gatei386_SPFLAG= -D_iBCS2 5067c478bd9Sstevel@tonic-gatesparc_SPFLAG= 5077c478bd9Sstevel@tonic-gate 5087c478bd9Sstevel@tonic-gateiBCS2FLAG = $($(MACH)_SPFLAG) 5097c478bd9Sstevel@tonic-gate 5107c478bd9Sstevel@tonic-gate# This flag is for programs which should not build a 32-bit binary 5117c478bd9Sstevel@tonic-gatesparc_64ONLY= $(POUND_SIGN) 5127c478bd9Sstevel@tonic-gate64ONLY= $($(MACH)_64ONLY) 513