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# 22cc22b130SRich Burridge# Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. 237c478bd9Sstevel@tonic-gate# 247c478bd9Sstevel@tonic-gate# Definitions common to command source. 257c478bd9Sstevel@tonic-gate# 267c478bd9Sstevel@tonic-gate# include global definitions; SRC should be defined in the shell. 277c478bd9Sstevel@tonic-gate# SRC is needed until RFE 1026993 is implemented. 287c478bd9Sstevel@tonic-gate 297c478bd9Sstevel@tonic-gateinclude $(SRC)/Makefile.master 307c478bd9Sstevel@tonic-gate 317c478bd9Sstevel@tonic-gateFILEMODE= 0555 327c478bd9Sstevel@tonic-gateLIBFILEMODE= 0444 337c478bd9Sstevel@tonic-gateXPG4= $(XPG4PROG:%=%.xpg4) 347c478bd9Sstevel@tonic-gateXPG6= $(XPG6PROG:%=%.xpg6) 357c478bd9Sstevel@tonic-gate 367c478bd9Sstevel@tonic-gateKRB5DIR= $(ROOT)/usr 377c478bd9Sstevel@tonic-gateKRB5BIN= $(KRB5DIR)/bin 387c478bd9Sstevel@tonic-gateKRB5SBIN= $(KRB5DIR)/sbin 397c478bd9Sstevel@tonic-gateKRB5LIB= $(KRB5DIR)/lib/krb5 407c478bd9Sstevel@tonic-gateKRB5RUNPATH= /usr/lib/krb5 417c478bd9Sstevel@tonic-gateGSSRUNPATH= /usr/lib/gss 427c478bd9Sstevel@tonic-gate 437c478bd9Sstevel@tonic-gate 447c478bd9Sstevel@tonic-gateROOTBIN= $(ROOT)/usr/bin 457c478bd9Sstevel@tonic-gateROOTLIB= $(ROOT)/usr/lib 467c478bd9Sstevel@tonic-gateROOTLIBSVCBIN= $(ROOT)/lib/svc/bin 477c478bd9Sstevel@tonic-gateROOTLIBSVCMETHOD= $(ROOT)/lib/svc/method 4899ba4d70SRussell BlaineROOTLIBXEN= $(ROOT)/usr/lib/xen/bin 49f875b4ebSricaROOTLIBZONES= $(ROOT)/lib/zones 507c478bd9Sstevel@tonic-gate 517c478bd9Sstevel@tonic-gateROOTSHLIB= $(ROOT)/usr/share/lib 525c51f124SMoriah WaterlandROOTPKGBIN= $(ROOT)/usr/sadm/install/bin 535c51f124SMoriah WaterlandROOTCLASS_SCR_DIR= $(ROOT)/usr/sadm/install/scripts 545c51f124SMoriah WaterlandROOTADMIN_SRC_DIR= $(ROOT)/var/sadm/install/admin 555c51f124SMoriah Waterland 5667298654SdamicoROOTSHLIBCCS= $(ROOTSHLIB)/ccs 577c478bd9Sstevel@tonic-gateROOTSBIN= $(ROOT)/sbin 587c478bd9Sstevel@tonic-gateROOTUSRSBIN= $(ROOT)/usr/sbin 597c478bd9Sstevel@tonic-gateROOTETC= $(ROOT)/etc 60f875b4ebSrica 61f875b4ebSricaROOTETCSECURITY= $(ROOTETC)/security 62f875b4ebSricaROOTETCTSOL= $(ROOTETCSECURITY)/tsol 63f875b4ebSricaROOTETCSECLIB= $(ROOTETCSECURITY)/lib 64f875b4ebSricaROOTETCZONES= $(ROOTETC)/zones 65f875b4ebSrica 664e762ae7SAlexander PyhalovROOTETCFTPD= $(ROOT)/etc/ftpd 67da14cebeSEric ChengROOTETCINET= $(ROOT)/etc/inet 687c478bd9Sstevel@tonic-gateROOTCCSBIN= $(ROOT)/usr/ccs/bin 6967298654SdamicoROOTCCSBIN64= $(ROOTCCSBIN)/$(MACH64) 7067298654SdamicoROOTCCSBINLINKDIR= $(ROOT)/../../bin 7167298654SdamicoROOTCCSBINLINKDIR64= $(ROOT)../../../bin/$(MACH) 7210d63b7dSRichard LoweROOTCCSLIB= $(ROOT)/usr/ccs/lib 737c478bd9Sstevel@tonic-gateROOTUSRKVM= $(ROOT)/usr/kvm 74ead1f93eSLiane PrazaROOTHAS= $(ROOT)/usr/has 75ead1f93eSLiane PrazaROOTHASBIN= $(ROOT)/usr/has/bin 76ead1f93eSLiane PrazaROOTHASLIB= $(ROOT)/usr/has/lib 777c478bd9Sstevel@tonic-gateROOTXPG4= $(ROOT)/usr/xpg4 787c478bd9Sstevel@tonic-gateROOTXPG4BIN= $(ROOT)/usr/xpg4/bin 797c478bd9Sstevel@tonic-gateROOTXPG4BIN32= $(ROOTXPG4BIN)/$(MACH32) 807c478bd9Sstevel@tonic-gateROOTXPG4BIN64= $(ROOTXPG4BIN)/$(MACH64) 817c478bd9Sstevel@tonic-gateROOTXPG6= $(ROOT)/usr/xpg6 827c478bd9Sstevel@tonic-gateROOTXPG6BIN= $(ROOT)/usr/xpg6/bin 837c478bd9Sstevel@tonic-gateROOTLOCALEDEF= $(ROOT)/usr/lib/localedef 847c478bd9Sstevel@tonic-gateROOTCHARMAP= $(ROOTLOCALEDEF)/charmap 857c478bd9Sstevel@tonic-gateROOTI18NEXT= $(ROOTLOCALEDEF)/extensions 867c478bd9Sstevel@tonic-gateROOTI18NEXT64= $(ROOTLOCALEDEF)/extensions/$(MACH64) 877c478bd9Sstevel@tonic-gateROOTBIN32= $(ROOTBIN)/$(MACH32) 887c478bd9Sstevel@tonic-gateROOTBIN64= $(ROOTBIN)/$(MACH64) 897c478bd9Sstevel@tonic-gateROOTCMDDIR64= $(ROOTCMDDIR)/$(MACH64) 907c478bd9Sstevel@tonic-gateROOTLIB64= $(ROOTLIB)/$(MACH64) 917c478bd9Sstevel@tonic-gateROOTUSRSBIN32= $(ROOTUSRSBIN)/$(MACH32) 927c478bd9Sstevel@tonic-gateROOTUSRSBIN64= $(ROOTUSRSBIN)/$(MACH64) 93da6c28aaSamwROOTVARSMB= $(ROOT)/var/smb 947c478bd9Sstevel@tonic-gate 957c478bd9Sstevel@tonic-gate 965c51f124SMoriah Waterland# 977c478bd9Sstevel@tonic-gate# Like ROOTLIBDIR in $(SRC)/Makefile.lib, any lower-level Makefiles that 987c478bd9Sstevel@tonic-gate# put their binaries in a non-standard location should reset this and use 997c478bd9Sstevel@tonic-gate# $(ROOTCMD) in their `install' target. By default we set this to a bogus 1007c478bd9Sstevel@tonic-gate# value so that it will not conflict with any of the other values already 1017c478bd9Sstevel@tonic-gate# defined in this Makefile. 1027c478bd9Sstevel@tonic-gate# 1037c478bd9Sstevel@tonic-gateROOTCMDDIR= $(ROOT)/__nonexistent_directory__ 1047c478bd9Sstevel@tonic-gate 1057c478bd9Sstevel@tonic-gateROOTSHAUDIO= $(ROOT)/usr/share/audio 1067c478bd9Sstevel@tonic-gateROOTAUDIOSAMP= $(ROOTSHAUDIO)/samples 1077c478bd9Sstevel@tonic-gateROOTAUDIOSAMPAU=$(ROOTAUDIOSAMP)/au 1087c478bd9Sstevel@tonic-gate 1097c478bd9Sstevel@tonic-gateISAEXEC= $(ROOT)/usr/lib/isaexec 1107c478bd9Sstevel@tonic-gatePLATEXEC= $(ROOT)/usr/lib/platexec 1117c478bd9Sstevel@tonic-gate 1125a0af816SRobert Mustacchi# 1135a0af816SRobert Mustacchi# Enable the stack protector by default. 1145a0af816SRobert Mustacchi# 1155a0af816SRobert MustacchiCFLAGS += $(CCSTACKPROTECT) 1165a0af816SRobert MustacchiCFLAGS64 += $(CCSTACKPROTECT) 1175a0af816SRobert Mustacchi 1185a0af816SRobert MustacchiLDLIBS = $(LDLIBS.cmd) $(LDSTACKPROTECT) 1197c478bd9Sstevel@tonic-gate 1207c478bd9Sstevel@tonic-gateLDFLAGS.cmd = \ 121f6acbf7cSrie $(BDIRECT) $(ENVLDFLAGS1) $(ENVLDFLAGS2) $(ENVLDFLAGS3) \ 12285f4cb87SRichard Lowe $(MAPFILE.NES:%=-Wl,-M%) $(MAPFILE.PGA:%=-Wl,-M%) $(MAPFILE.NED:%=-Wl,-M%) 1237c478bd9Sstevel@tonic-gate 1247c478bd9Sstevel@tonic-gateLDFLAGS = $(LDFLAGS.cmd) 1257c478bd9Sstevel@tonic-gate 1267c478bd9Sstevel@tonic-gateKRB5PROG= $(PROG:%=$(KRB5BIN)/%) 1277c478bd9Sstevel@tonic-gateKRB5SBINPROG= $(PROG:%=$(KRB5SBIN)/%) 1287c478bd9Sstevel@tonic-gateKRB5LIBPROG= $(PROG:%=$(KRB5LIB)/%) 1297c478bd9Sstevel@tonic-gate 1307c478bd9Sstevel@tonic-gateROOTPROG= $(PROG:%=$(ROOTBIN)/%) 1317c478bd9Sstevel@tonic-gateROOTCMD= $(PROG:%=$(ROOTCMDDIR)/%) 1327c478bd9Sstevel@tonic-gateROOTSHFILES= $(SHFILES:%=$(ROOTBIN)/%) 1337c478bd9Sstevel@tonic-gateROOTLIBPROG= $(PROG:%=$(ROOTLIB)/%) 1347c478bd9Sstevel@tonic-gateROOTLIBSHFILES= $(SHFILES:%=$(ROOTLIB)/%) 1357c478bd9Sstevel@tonic-gateROOTSHLIBPROG= $(PROG:%=$(ROOTSHLIB)/%) 1367c478bd9Sstevel@tonic-gateROOTSBINPROG= $(PROG:%=$(ROOTSBIN)/%) 1375c51f124SMoriah WaterlandROOTPKGBINPROG= $(PROG:%=$(ROOTPKGBIN)/%) 1385c51f124SMoriah WaterlandROOTCLASS_SCR_FILES= $(SCRIPTS:%=$(ROOTCLASS_SCR_DIR)/%) 1397c478bd9Sstevel@tonic-gateROOTUSRSBINPROG=$(PROG:%=$(ROOTUSRSBIN)/%) 140f875b4ebSricaROOTUSRSBINSCRIPT=$(SCRIPT:%=$(ROOTUSRSBIN)/%) 1417c478bd9Sstevel@tonic-gateROOTETCPROG= $(PROG:%=$(ROOTETC)/%) 142ead1f93eSLiane PrazaROOTHASBINPROG= $(PROG:%=$(ROOTHASBIN)/%) 143ead1f93eSLiane PrazaROOTHASLIBPROG= $(PROG:%=$(ROOTHASLIB)/%) 1447c478bd9Sstevel@tonic-gateROOTCCSBINPROG= $(PROG:%=$(ROOTCCSBIN)/%) 14567298654SdamicoROOTCCSBINPROG64= $(PROG:%=$(ROOTCCSBIN64)/%) 14667298654SdamicoROOTCCSBINLINK=$(PROG:%= $(ROOTCCSBINLINKDIR)/%) 14767298654SdamicoROOTCCSBINLINK64=$(PROG:%=$(ROOTCCSBINLINKDIR64)/%) 1487c478bd9Sstevel@tonic-gateROOTUSRKVMPROG= $(PROG:%=$(ROOTUSRKVM)/%) 1497c478bd9Sstevel@tonic-gateROOTXPG4PROG= $(XPG4PROG:%=$(ROOTXPG4BIN)/%) 1507c478bd9Sstevel@tonic-gateROOTXPG4PROG32= $(XPG4PROG:%=$(ROOTXPG4BIN32)/%) 1517c478bd9Sstevel@tonic-gateROOTXPG4PROG64= $(XPG4PROG:%=$(ROOTXPG4BIN64)/%) 1527c478bd9Sstevel@tonic-gateROOTXPG6PROG= $(XPG6PROG:%=$(ROOTXPG6BIN)/%) 1537c478bd9Sstevel@tonic-gateROOTLOCALEPROG= $(PROG:%=$(ROOTLOCALEDEF)/%) 1547c478bd9Sstevel@tonic-gateROOTPROG64= $(PROG:%=$(ROOTBIN64)/%) 1557c478bd9Sstevel@tonic-gateROOTPROG32= $(PROG:%=$(ROOTBIN32)/%) 1567c478bd9Sstevel@tonic-gateROOTCMD64= $(PROG:%=$(ROOTCMDDIR64)/%) 1577c478bd9Sstevel@tonic-gateROOTUSRSBINPROG32= $(PROG:%=$(ROOTUSRSBIN32)/%) 1587c478bd9Sstevel@tonic-gateROOTUSRSBINPROG64= $(PROG:%=$(ROOTUSRSBIN64)/%) 159f6c47fdeSJoshua M. ClulowROOTLIBSVCBINPROG= $(PROG:%=$(ROOTLIBSVCBIN)/%) 1607c478bd9Sstevel@tonic-gate 161*e9db39ceSRichard Lowe# Note that commands in usr/src/cmd/sgs have separate targets for this 16267298654SdamicoINS.ccsbinlink= \ 16367298654Sdamico $(RM) $(ROOTCCSBINPROG); \ 16467298654Sdamico $(SYMLINK) ../../bin/$(PROG) $(ROOTCCSBINPROG) 16567298654Sdamico 16667298654SdamicoINS.ccsbinlink64= \ 16767298654Sdamico $(RM) $(ROOTCCSBINPROG64); \ 16867298654Sdamico $(SYMLINK) ../../../bin/$(MACH64)/$(PROG) $(ROOTCCSBINPROG64) 16967298654Sdamico 1707c478bd9Sstevel@tonic-gateROOTETCDEFAULT= $(ROOTETC)/default 171a7872406SmeemROOTETCDEFAULTFILES= $(DEFAULTFILES:%.dfl=$(ROOTETCDEFAULT)/%) 172a7872406Smeem$(ROOTETCDEFAULTFILES) := FILEMODE = 0644 1737c478bd9Sstevel@tonic-gate 174f875b4ebSricaROOTETCSECFILES= $(ETCSECFILES:%=$(ROOTETCSECURITY)/%) 175f875b4ebSrica$(ROOTETCSECFILES) := FILEMODE = 0644 176f875b4ebSrica 177f875b4ebSricaROOTETCTSOLFILES= $(ETCTSOLFILES:%=$(ROOTETCTSOL)/%) 178f875b4ebSrica$(ROOTETCTSOLFILES) := FILEMODE = 0644 179f875b4ebSrica 180f875b4ebSricaROOTETCSECLIBFILES= $(ETCSECLIBFILES:%=$(ROOTETCSECLIB)/%) 181f875b4ebSrica 182f875b4ebSricaROOTETCZONESFILES= $(ETCZONESFILES:%=$(ROOTETCZONES)/%) 183f875b4ebSrica$(ROOTETCZONESFILES) := FILEMODE = 0444 184f875b4ebSrica 185f875b4ebSricaROOTLIBZONESFILES= $(LIBZONESFILES:%=$(ROOTLIBZONES)/%) 186f875b4ebSrica$(ROOTLIBZONESFILES) := FILEMODE = 0555 187f875b4ebSrica 1885c51f124SMoriah WaterlandROOTADMIN_SRC_FILE= $(ADMINFILE:%=$(ROOTADMIN_SRC_DIR)/%) 1895c51f124SMoriah Waterland$(ROOTADMIN_SRC_FILE) := FILEMODE = 0444 190f875b4ebSrica 1917c478bd9Sstevel@tonic-gate# 192bbf21555SRichard Lowe# Directories for smf(7) service manifests and profiles. 1937c478bd9Sstevel@tonic-gate# 1949444c26fSTom WhittenROOTSVC= $(ROOT)/lib/svc 1959444c26fSTom WhittenROOTETCSVC= $(ROOT)/etc/svc 1967c478bd9Sstevel@tonic-gate 1979444c26fSTom WhittenROOTSVCMANIFEST= $(ROOTSVC)/manifest 1989444c26fSTom WhittenROOTSVCPROFILE= $(ROOTETCSVC)/profile 1997c478bd9Sstevel@tonic-gate 2009444c26fSTom WhittenROOTSVCMILESTONE= $(ROOTSVCMANIFEST)/milestone 2019444c26fSTom WhittenROOTSVCDEVICE= $(ROOTSVCMANIFEST)/device 2029444c26fSTom WhittenROOTSVCSYSTEM= $(ROOTSVCMANIFEST)/system 2037c478bd9Sstevel@tonic-gateROOTSVCSYSTEMDEVICE= $(ROOTSVCSYSTEM)/device 2047c478bd9Sstevel@tonic-gateROOTSVCSYSTEMFILESYSTEM= $(ROOTSVCSYSTEM)/filesystem 2057c478bd9Sstevel@tonic-gateROOTSVCSYSTEMSECURITY= $(ROOTSVCSYSTEM)/security 2069444c26fSTom WhittenROOTSVCNETWORK= $(ROOTSVCMANIFEST)/network 2074b22b933SrsROOTSVCNETWORKDNS= $(ROOTSVCNETWORK)/dns 208a6d42e7dSPeter DunlapROOTSVCNETWORKISCSI= $(ROOTSVCNETWORK)/iscsi 2097c478bd9Sstevel@tonic-gateROOTSVCNETWORKLDAP= $(ROOTSVCNETWORK)/ldap 2107c478bd9Sstevel@tonic-gateROOTSVCNETWORKNFS= $(ROOTSVCNETWORK)/nfs 2117c478bd9Sstevel@tonic-gateROOTSVCNETWORKNIS= $(ROOTSVCNETWORK)/nis 212a192e900SamaguireROOTSVCNETWORKROUTING= $(ROOTSVCNETWORK)/routing 2137c478bd9Sstevel@tonic-gateROOTSVCNETWORKRPC= $(ROOTSVCNETWORK)/rpc 2144bff34e3SthurlowROOTSVCNETWORKSMB= $(ROOTSVCNETWORK)/smb 2157c478bd9Sstevel@tonic-gateROOTSVCNETWORKSECURITY= $(ROOTSVCNETWORK)/security 216abf1b5ddSkaisROOTSVCNETWORKSSL= $(ROOTSVCNETWORK)/ssl 217e3320f40SmarkfenROOTSVCNETWORKIPSEC= $(ROOTSVCNETWORK)/ipsec 2186185db85SdougmROOTSVCNETWORKSHARES= $(ROOTSVCNETWORK)/shares 219da6c28aaSamwROOTSVCSMB= $(ROOTSVCNETWORK)/smb 2209444c26fSTom WhittenROOTSVCPLATFORM= $(ROOTSVCMANIFEST)/platform 2217c478bd9Sstevel@tonic-gateROOTSVCPLATFORMSUN4U= $(ROOTSVCPLATFORM)/sun4u 2221ae08745SheppoROOTSVCPLATFORMSUN4V= $(ROOTSVCPLATFORM)/sun4v 2239444c26fSTom WhittenROOTSVCAPPLICATION= $(ROOTSVCMANIFEST)/application 2247c478bd9Sstevel@tonic-gateROOTSVCAPPLICATIONMANAGEMENT= $(ROOTSVCAPPLICATION)/management 2257c478bd9Sstevel@tonic-gateROOTSVCAPPLICATIONSECURITY= $(ROOTSVCAPPLICATION)/security 2267c478bd9Sstevel@tonic-gateROOTSVCAPPLICATIONPRINT= $(ROOTSVCAPPLICATION)/print 2277c478bd9Sstevel@tonic-gate 2287c478bd9Sstevel@tonic-gate# 2297c478bd9Sstevel@tonic-gate# Commands Makefiles delivering a manifest are expected to define MANIFEST. 2307c478bd9Sstevel@tonic-gate# 2317c478bd9Sstevel@tonic-gate# Like ROOTCMDDIR, any lower-level Makefiles that put their manifests in a 2327c478bd9Sstevel@tonic-gate# subdirectory of the manifest directories listed above should reset 2337c478bd9Sstevel@tonic-gate# ROOTMANIFESTDIR and use it in their `install' target. By default we set this 2347c478bd9Sstevel@tonic-gate# to a bogus value so that it will not conflict with any of the other values 2357c478bd9Sstevel@tonic-gate# already defined in this Makefile. 2367c478bd9Sstevel@tonic-gate# 2377c478bd9Sstevel@tonic-gate# The manifest validation of the $SRC/cmd check target is also derived from a 2387c478bd9Sstevel@tonic-gate# valid MANIFEST setting. 2397c478bd9Sstevel@tonic-gate# 2409444c26fSTom WhittenROOTMANIFESTDIR= $(ROOTSVCMANIFEST)/__nonexistent_directory__ 2417c478bd9Sstevel@tonic-gateROOTMANIFEST= $(MANIFEST:%=$(ROOTMANIFESTDIR)/%) 2427c478bd9Sstevel@tonic-gateCHKMANIFEST= $(MANIFEST:%.xml=%.xmlchk) 2437c478bd9Sstevel@tonic-gate 2441f6eb021SLiane Praza# Manifests cannot be checked in parallel, because we are using the global 2451f6eb021SLiane Praza# repository that is in $(SRC)/cmd/svc/seed/global.db. This is a 2461f6eb021SLiane Praza# repository that is built from the manifests in this workspace, whereas 2471f6eb021SLiane Praza# the build machine's repository may be out of sync with these manifests. 2481f6eb021SLiane Praza# Because we are using a private repository, svccfg-native must start up a 2491f6eb021SLiane Praza# private copy of configd-native. We cannot have multiple copies of 2501f6eb021SLiane Praza# configd-native trying to access global.db simultaneously. 2511f6eb021SLiane Praza 2521f6eb021SLiane Praza.NO_PARALLEL: $(CHKMANIFEST) 2531f6eb021SLiane Praza 2547c478bd9Sstevel@tonic-gate# 2557c478bd9Sstevel@tonic-gate# For installing "starter scripts" of services 2567c478bd9Sstevel@tonic-gate# 2577c478bd9Sstevel@tonic-gate 2587c478bd9Sstevel@tonic-gateROOTSVCMETHOD= $(SVCMETHOD:%=$(ROOTLIBSVCMETHOD)/%) 2597c478bd9Sstevel@tonic-gate 2607c478bd9Sstevel@tonic-gateROOTSVCBINDIR= $(ROOTLIBSVCBIN)/__nonexistent_directory__ 26185f4cb87SRichard LoweROOTSVCBIN= $(SVCBIN:%=$(ROOTSVCBINDIR)/%) 2627c478bd9Sstevel@tonic-gate 2637c478bd9Sstevel@tonic-gate# 2647c478bd9Sstevel@tonic-gate 2657c478bd9Sstevel@tonic-gate$(KRB5BIN)/%: % 2667c478bd9Sstevel@tonic-gate $(INS.file) 2677c478bd9Sstevel@tonic-gate 2687c478bd9Sstevel@tonic-gate$(KRB5SBIN)/%: % 2697c478bd9Sstevel@tonic-gate $(INS.file) 2707c478bd9Sstevel@tonic-gate 2717c478bd9Sstevel@tonic-gate$(KRB5LIB)/%: % 2727c478bd9Sstevel@tonic-gate $(INS.file) 2737c478bd9Sstevel@tonic-gate 2747c478bd9Sstevel@tonic-gate$(ROOTBIN)/%: % 2757c478bd9Sstevel@tonic-gate $(INS.file) 2767c478bd9Sstevel@tonic-gate 2777c478bd9Sstevel@tonic-gate$(ROOTLIB)/%: % 2787c478bd9Sstevel@tonic-gate $(INS.file) 2797c478bd9Sstevel@tonic-gate 2807c478bd9Sstevel@tonic-gate$(ROOTBIN64)/%: % 2817c478bd9Sstevel@tonic-gate $(INS.file) 2827c478bd9Sstevel@tonic-gate 2837c478bd9Sstevel@tonic-gate$(ROOTLIB64)/%: % 2847c478bd9Sstevel@tonic-gate $(INS.file) 2857c478bd9Sstevel@tonic-gate 2867c478bd9Sstevel@tonic-gate$(ROOTBIN32)/%: % 2877c478bd9Sstevel@tonic-gate $(INS.file) 2887c478bd9Sstevel@tonic-gate 2897c478bd9Sstevel@tonic-gate$(ROOTSHLIB)/%: % 2907c478bd9Sstevel@tonic-gate $(INS.file) 2917c478bd9Sstevel@tonic-gate 2925c51f124SMoriah Waterland$(ROOTPKGBIN)/%: % 2935c51f124SMoriah Waterland $(INS.file) 2945c51f124SMoriah Waterland 2955c51f124SMoriah Waterland$(ROOTCLASS_SCR_DIR)/%: % 2965c51f124SMoriah Waterland $(INS.file) 2975c51f124SMoriah Waterland 2985c51f124SMoriah Waterland$(ROOTADMIN_SRC_DIR)/%: % 2995c51f124SMoriah Waterland $(INS.file) 3005c51f124SMoriah Waterland 3017c478bd9Sstevel@tonic-gate$(ROOTSBIN)/%: % 3027c478bd9Sstevel@tonic-gate $(INS.file) 3037c478bd9Sstevel@tonic-gate 3047c478bd9Sstevel@tonic-gate$(ROOTUSRSBIN)/%: % 3057c478bd9Sstevel@tonic-gate $(INS.file) 3067c478bd9Sstevel@tonic-gate 3077c478bd9Sstevel@tonic-gate$(ROOTUSRSBIN32)/%: % 3087c478bd9Sstevel@tonic-gate $(INS.file) 3097c478bd9Sstevel@tonic-gate 3107c478bd9Sstevel@tonic-gate$(ROOTUSRSBIN64)/%: % 3117c478bd9Sstevel@tonic-gate $(INS.file) 3127c478bd9Sstevel@tonic-gate 3137c478bd9Sstevel@tonic-gate$(ROOTETC)/%: % 3147c478bd9Sstevel@tonic-gate $(INS.file) 3157c478bd9Sstevel@tonic-gate 3164e762ae7SAlexander Pyhalov$(ROOTETCFTPD)/%: % 3174e762ae7SAlexander Pyhalov $(INS.file) 3184e762ae7SAlexander Pyhalov 319da14cebeSEric Cheng$(ROOTETCINET)/%: % 320da14cebeSEric Cheng $(INS.file) 321da14cebeSEric Cheng 322a7872406Smeem$(ROOTETCDEFAULT)/%: %.dfl 323a7872406Smeem $(INS.rename) 324a7872406Smeem 325f875b4ebSrica$(ROOTETCTSOL)/%: % 326f875b4ebSrica $(INS.file) 327f875b4ebSrica 328f875b4ebSrica$(ROOTETCSECLIB)/%: % 329f875b4ebSrica $(INS.file) 330f875b4ebSrica 331f875b4ebSrica$(ROOTETCZONES)/%: % 332f875b4ebSrica $(INS.file) 333f875b4ebSrica 334f875b4ebSrica$(ROOTLIBZONES)/%: % 335f875b4ebSrica $(INS.file) 336f875b4ebSrica 33799ba4d70SRussell Blaine$(ROOTLIBXEN)/%: % 33899ba4d70SRussell Blaine $(INS.file) 33999ba4d70SRussell Blaine 340ead1f93eSLiane Praza$(ROOTHASBIN)/%: % 341ead1f93eSLiane Praza $(INS.file) 342ead1f93eSLiane Praza 343ead1f93eSLiane Praza$(ROOTHASLIB)/%: % 344ead1f93eSLiane Praza $(INS.file) 345ead1f93eSLiane Praza 3467c478bd9Sstevel@tonic-gate$(ROOTUSRKVM)/%: % 3477c478bd9Sstevel@tonic-gate $(INS.file) 3487c478bd9Sstevel@tonic-gate 3497c478bd9Sstevel@tonic-gate$(ROOTXPG4BIN)/%: %.xpg4 3507c478bd9Sstevel@tonic-gate $(INS.rename) 3517c478bd9Sstevel@tonic-gate 3527c478bd9Sstevel@tonic-gate$(ROOTXPG4BIN32)/%: %.xpg4 3537c478bd9Sstevel@tonic-gate $(INS.rename) 3547c478bd9Sstevel@tonic-gate 3557c478bd9Sstevel@tonic-gate$(ROOTXPG4BIN64)/%: %.xpg4 3567c478bd9Sstevel@tonic-gate $(INS.rename) 3577c478bd9Sstevel@tonic-gate 3587c478bd9Sstevel@tonic-gate$(ROOTXPG6BIN)/%: %.xpg6 3597c478bd9Sstevel@tonic-gate $(INS.rename) 3607c478bd9Sstevel@tonic-gate 3617c478bd9Sstevel@tonic-gate$(ROOTLOCALEDEF)/%: % 3627c478bd9Sstevel@tonic-gate $(INS.file) 3637c478bd9Sstevel@tonic-gate 3647c478bd9Sstevel@tonic-gate$(ROOTCHARMAP)/%: % 3657c478bd9Sstevel@tonic-gate $(INS.file) 3667c478bd9Sstevel@tonic-gate 3677c478bd9Sstevel@tonic-gate$(ROOTI18NEXT)/%: % 3687c478bd9Sstevel@tonic-gate $(INS.file) 3697c478bd9Sstevel@tonic-gate 3707c478bd9Sstevel@tonic-gate$(ROOTI18NEXT64)/%: % 3717c478bd9Sstevel@tonic-gate $(INS.file) 3727c478bd9Sstevel@tonic-gate 3737c478bd9Sstevel@tonic-gate$(ROOTLIBSVCMETHOD)/%: % 3747c478bd9Sstevel@tonic-gate $(INS.file) 3757c478bd9Sstevel@tonic-gate 3767c478bd9Sstevel@tonic-gate$(ROOTLIBSVCBIN)/%: % 3777c478bd9Sstevel@tonic-gate $(INS.file) 3787c478bd9Sstevel@tonic-gate 3797c478bd9Sstevel@tonic-gate$(ROOTSVCMILESTONE)/%: % 3807c478bd9Sstevel@tonic-gate $(INS.file) 3817c478bd9Sstevel@tonic-gate 3827c478bd9Sstevel@tonic-gate$(ROOTSVCDEVICE)/%: % 3837c478bd9Sstevel@tonic-gate $(INS.file) 3847c478bd9Sstevel@tonic-gate 3857c478bd9Sstevel@tonic-gate$(ROOTSVCSYSTEM)/%: % 3867c478bd9Sstevel@tonic-gate $(INS.file) 3877c478bd9Sstevel@tonic-gate 3887c478bd9Sstevel@tonic-gate$(ROOTSVCSYSTEMDEVICE)/%: % 3897c478bd9Sstevel@tonic-gate $(INS.file) 3907c478bd9Sstevel@tonic-gate 3917c478bd9Sstevel@tonic-gate$(ROOTSVCSYSTEMFILESYSTEM)/%: % 3927c478bd9Sstevel@tonic-gate $(INS.file) 3937c478bd9Sstevel@tonic-gate 3947c478bd9Sstevel@tonic-gate$(ROOTSVCSYSTEMSECURITY)/%: % 3957c478bd9Sstevel@tonic-gate $(INS.file) 3967c478bd9Sstevel@tonic-gate 3977c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORK)/%: % 3987c478bd9Sstevel@tonic-gate $(INS.file) 3997c478bd9Sstevel@tonic-gate 4007c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORKLDAP)/%: % 4017c478bd9Sstevel@tonic-gate $(INS.file) 4027c478bd9Sstevel@tonic-gate 4037c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORKNFS)/%: % 4047c478bd9Sstevel@tonic-gate $(INS.file) 4057c478bd9Sstevel@tonic-gate 4067c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORKNIS)/%: % 4077c478bd9Sstevel@tonic-gate $(INS.file) 4087c478bd9Sstevel@tonic-gate 4097c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORKRPC)/%: % 4107c478bd9Sstevel@tonic-gate $(INS.file) 4117c478bd9Sstevel@tonic-gate 4127c478bd9Sstevel@tonic-gate$(ROOTSVCNETWORKSECURITY)/%: % 4137c478bd9Sstevel@tonic-gate $(INS.file) 4147c478bd9Sstevel@tonic-gate 415abf1b5ddSkais$(ROOTSVCNETWORKSSL)/%: % 416abf1b5ddSkais $(INS.file) 417abf1b5ddSkais 418e3320f40Smarkfen$(ROOTSVCNETWORKIPSEC)/%: % 419e3320f40Smarkfen $(INS.file) 420e3320f40Smarkfen 4216185db85Sdougm$(ROOTSVCNETWORKSHARES)/%: % 4226185db85Sdougm $(INS.file) 4236185db85Sdougm 4244bff34e3Sthurlow$(ROOTSVCNETWORKSMB)/%: % 4254bff34e3Sthurlow $(INS.file) 4264bff34e3Sthurlow 4277c478bd9Sstevel@tonic-gate$(ROOTSVCAPPLICATION)/%: % 4287c478bd9Sstevel@tonic-gate $(INS.file) 4297c478bd9Sstevel@tonic-gate 4307c478bd9Sstevel@tonic-gate$(ROOTSVCAPPLICATIONMANAGEMENT)/%: % 4317c478bd9Sstevel@tonic-gate $(INS.file) 4327c478bd9Sstevel@tonic-gate 4337c478bd9Sstevel@tonic-gate$(ROOTSVCAPPLICATIONSECURITY)/%: % 4347c478bd9Sstevel@tonic-gate $(INS.file) 4357c478bd9Sstevel@tonic-gate 4367c478bd9Sstevel@tonic-gate$(ROOTSVCAPPLICATIONPRINT)/%: % 4377c478bd9Sstevel@tonic-gate $(INS.file) 4387c478bd9Sstevel@tonic-gate 4397c478bd9Sstevel@tonic-gate$(ROOTSVCPLATFORM)/%: % 4407c478bd9Sstevel@tonic-gate $(INS.file) 4417c478bd9Sstevel@tonic-gate 4427c478bd9Sstevel@tonic-gate$(ROOTSVCPLATFORMSUN4U)/%: % 4437c478bd9Sstevel@tonic-gate $(INS.file) 4447c478bd9Sstevel@tonic-gate 4451ae08745Sheppo$(ROOTSVCPLATFORMSUN4V)/%: % 4461ae08745Sheppo $(INS.file) 4471ae08745Sheppo 44867298654Sdamico# Install rule for gprof, yacc, and lex dependency files 44967298654Sdamico$(ROOTSHLIBCCS)/%: ../common/% 45067298654Sdamico $(INS.file) 45167298654Sdamico 45267298654Sdamico$(ROOTCCSBINLINKDIR)/%: % 45367298654Sdamico $(INS.ccsbinlink) 45467298654Sdamico 45567298654Sdamico$(ROOTCCSBINLINKDIR64)/%: % 45667298654Sdamico $(INS.ccsbinlink64) 45767298654Sdamico 458da6c28aaSamw$(ROOTVARSMB)/%: % 459da6c28aaSamw $(INS.file) 460da6c28aaSamw 4617c478bd9Sstevel@tonic-gate# build rule for statically linked programs with single source file. 4627c478bd9Sstevel@tonic-gate%.static: %.c 4637c478bd9Sstevel@tonic-gate $(LINK.c) -o $@ $< $(LDLIBS) 4647c478bd9Sstevel@tonic-gate $(POST_PROCESS) 4657c478bd9Sstevel@tonic-gate 4667c478bd9Sstevel@tonic-gate%.xpg4: %.c 4677c478bd9Sstevel@tonic-gate $(LINK.c) -o $@ $< $(LDLIBS) 4687c478bd9Sstevel@tonic-gate $(POST_PROCESS) 4697c478bd9Sstevel@tonic-gate 4707c478bd9Sstevel@tonic-gate%.xpg6: %.c 4717c478bd9Sstevel@tonic-gate $(LINK.c) -o $@ $< $(LDLIBS) 4727c478bd9Sstevel@tonic-gate $(POST_PROCESS) 4737c478bd9Sstevel@tonic-gate 4747c478bd9Sstevel@tonic-gate# Define the majority text domain in this directory. 47585f4cb87SRichard LoweTEXT_DOMAIN= SUNW_OST_OSCMD 4767c478bd9Sstevel@tonic-gate 4777c478bd9Sstevel@tonic-gateCLOBBERFILES += $(XPG4) $(XPG6) $(DCFILE) 4787c478bd9Sstevel@tonic-gate 4797c478bd9Sstevel@tonic-gate# This flag is for programs which should not build a 32-bit binary 4807c478bd9Sstevel@tonic-gatesparc_64ONLY= $(POUND_SIGN) 4817c478bd9Sstevel@tonic-gate64ONLY= $($(MACH)_64ONLY) 4828fe4436bSHans Rosenfeld 4838fe4436bSHans Rosenfeld# For programs that are installed in the root filesystem, 4848fe4436bSHans Rosenfeld# build $(ROOTFS_PROG) rather than $(PROG) 4858fe4436bSHans Rosenfeld$(64ONLY)$(ROOTFS_PROG) := LDFLAGS += -Wl,-I/lib/ld.so.1 486