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) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
  23 # Copyright 2017 RackTop Systems.
  24 #
  25 # Definitions common to command source.
  26 #
  27 # include global definitions; SRC should be defined in the shell.
  28 # SRC is needed until RFE 1026993 is implemented.
  29 
  30 include $(SRC)/Makefile.master
  31 
  32 LN=             ln
  33 SH=             sh
  34 ECHO=           echo
  35 MKDIR=          mkdir
  36 TOUCH=          touch
  37 
  38 FILEMODE=       0555
  39 LIBFILEMODE=    0444
  40 XPG4=           $(XPG4PROG:%=%.xpg4)
  41 XPG6=           $(XPG6PROG:%=%.xpg6)
  42 
  43 KRB5DIR=        $(ROOT)/usr
  44 KRB5BIN=        $(KRB5DIR)/bin
  45 KRB5SBIN=       $(KRB5DIR)/sbin
  46 KRB5LIB=        $(KRB5DIR)/lib/krb5
  47 KRB5RUNPATH=    /usr/lib/krb5
  48 GSSRUNPATH=     /usr/lib/gss
  49 
  50 
  51 ROOTBIN=                $(ROOT)/usr/bin
  52 ROOTLIB=                $(ROOT)/usr/lib
  53 ROOTLIBSVCBIN=          $(ROOT)/lib/svc/bin
  54 ROOTLIBSVCMETHOD=       $(ROOT)/lib/svc/method
  55 ROOTLIBXEN=             $(ROOT)/usr/lib/xen/bin
  56 ROOTLIBZONES=           $(ROOT)/lib/zones
  57 
  58 ROOTSHLIB=      $(ROOT)/usr/share/lib
  59 ROOTPKGBIN=     $(ROOT)/usr/sadm/install/bin
  60 ROOTCLASS_SCR_DIR= $(ROOT)/usr/sadm/install/scripts
  61 ROOTADMIN_SRC_DIR= $(ROOT)/var/sadm/install/admin
  62 
  63 ROOTSHLIBCCS=   $(ROOTSHLIB)/ccs
  64 ROOTSBIN=       $(ROOT)/sbin
  65 ROOTUSRSBIN=    $(ROOT)/usr/sbin
  66 ROOTETC=        $(ROOT)/etc
  67 
  68 ROOTETCSECURITY=        $(ROOTETC)/security
  69 ROOTETCTSOL=    $(ROOTETCSECURITY)/tsol
  70 ROOTETCSECLIB=  $(ROOTETCSECURITY)/lib
  71 ROOTETCZONES=   $(ROOTETC)/zones
  72 
  73 ROOTETCFTPD=    $(ROOT)/etc/ftpd
  74 ROOTETCINET=    $(ROOT)/etc/inet
  75 ROOTCCSBIN=     $(ROOT)/usr/ccs/bin
  76 ROOTCCSBIN64=   $(ROOTCCSBIN)/$(MACH64)
  77 ROOTCCSBINLINKDIR=      $(ROOT)/../../bin
  78 ROOTCCSBINLINKDIR64=    $(ROOT)../../../bin/$(MACH)
  79 ROOTCCSLIB=     $(ROOT)/usr/ccs/lib
  80 ROOTUSRKVM=     $(ROOT)/usr/kvm
  81 ROOTHAS=        $(ROOT)/usr/has
  82 ROOTHASBIN=     $(ROOT)/usr/has/bin
  83 ROOTHASLIB=     $(ROOT)/usr/has/lib
  84 ROOTXPG4=       $(ROOT)/usr/xpg4
  85 ROOTXPG4BIN=    $(ROOT)/usr/xpg4/bin
  86 ROOTXPG4BIN32=  $(ROOTXPG4BIN)/$(MACH32)
  87 ROOTXPG4BIN64=  $(ROOTXPG4BIN)/$(MACH64)
  88 ROOTXPG6=       $(ROOT)/usr/xpg6
  89 ROOTXPG6BIN=    $(ROOT)/usr/xpg6/bin
  90 ROOTLOCALEDEF=  $(ROOT)/usr/lib/localedef
  91 ROOTCHARMAP=    $(ROOTLOCALEDEF)/charmap
  92 ROOTI18NEXT=    $(ROOTLOCALEDEF)/extensions
  93 ROOTI18NEXT64=  $(ROOTLOCALEDEF)/extensions/$(MACH64)
  94 ROOTBIN32=      $(ROOTBIN)/$(MACH32)
  95 ROOTBIN64=      $(ROOTBIN)/$(MACH64)
  96 ROOTCMDDIR64=   $(ROOTCMDDIR)/$(MACH64)
  97 ROOTLIB64=      $(ROOTLIB)/$(MACH64)
  98 ROOTUSRSBIN32=  $(ROOTUSRSBIN)/$(MACH32)
  99 ROOTUSRSBIN64=  $(ROOTUSRSBIN)/$(MACH64)
 100 ROOTMAN=        $(ROOT)/usr/share/man
 101 ROOTMAN1=       $(ROOTMAN)/man1
 102 ROOTMAN1M=      $(ROOTMAN)/man1m
 103 ROOTMAN3=       $(ROOTMAN)/man3
 104 ROOTVARSMB=     $(ROOT)/var/smb
 105 
 106 
 107 #
 108 # Like ROOTLIBDIR in $(SRC)/Makefile.lib, any lower-level Makefiles that
 109 # put their binaries in a non-standard location should reset this and use
 110 # $(ROOTCMD) in their `install' target. By default we set this to a bogus
 111 # value so that it will not conflict with any of the other values already
 112 # defined in this Makefile.
 113 #
 114 ROOTCMDDIR=     $(ROOT)/__nonexistent_directory__
 115 
 116 ROOTSHAUDIO=    $(ROOT)/usr/share/audio
 117 ROOTAUDIOSAMP=  $(ROOTSHAUDIO)/samples
 118 ROOTAUDIOSAMPAU=$(ROOTAUDIOSAMP)/au
 119 
 120 ISAEXEC=        $(ROOT)/usr/lib/isaexec
 121 PLATEXEC=       $(ROOT)/usr/lib/platexec
 122 
 123 LDLIBS =        $(LDLIBS.cmd)
 124 
 125 LDFLAGS.cmd = \
 126         $(BDIRECT) $(ENVLDFLAGS1) $(ENVLDFLAGS2) $(ENVLDFLAGS3) \
 127         $(MAPFILE.NES:%=-M%) $(MAPFILE.PGA:%=-M%) $(MAPFILE.NED:%=-M%) \
 128         $(ZASSERTDEFLIB)
 129 
 130 LDFLAGS =       $(LDFLAGS.cmd)
 131 
 132 LINTFLAGS=      -axsm
 133 LINTFLAGS64=    -axsm -m64
 134 LINTOUT=        lint.out
 135 
 136 KRB5PROG=       $(PROG:%=$(KRB5BIN)/%)
 137 KRB5SBINPROG=   $(PROG:%=$(KRB5SBIN)/%)
 138 KRB5LIBPROG=    $(PROG:%=$(KRB5LIB)/%)
 139 
 140 ROOTPROG=       $(PROG:%=$(ROOTBIN)/%)
 141 ROOTCMD=        $(PROG:%=$(ROOTCMDDIR)/%)
 142 ROOTSHFILES=    $(SHFILES:%=$(ROOTBIN)/%)
 143 ROOTLIBPROG=    $(PROG:%=$(ROOTLIB)/%)
 144 ROOTLIBSHFILES= $(SHFILES:%=$(ROOTLIB)/%)
 145 ROOTSHLIBPROG=  $(PROG:%=$(ROOTSHLIB)/%)
 146 ROOTSBINPROG=   $(PROG:%=$(ROOTSBIN)/%)
 147 ROOTPKGBINPROG= $(PROG:%=$(ROOTPKGBIN)/%)
 148 ROOTCLASS_SCR_FILES= $(SCRIPTS:%=$(ROOTCLASS_SCR_DIR)/%)
 149 ROOTUSRSBINPROG=$(PROG:%=$(ROOTUSRSBIN)/%)
 150 ROOTUSRSBINSCRIPT=$(SCRIPT:%=$(ROOTUSRSBIN)/%)
 151 ROOTETCPROG=    $(PROG:%=$(ROOTETC)/%)
 152 ROOTHASBINPROG= $(PROG:%=$(ROOTHASBIN)/%)
 153 ROOTHASLIBPROG= $(PROG:%=$(ROOTHASLIB)/%)
 154 ROOTCCSBINPROG= $(PROG:%=$(ROOTCCSBIN)/%)
 155 ROOTCCSBINPROG64=         $(PROG:%=$(ROOTCCSBIN64)/%)
 156 ROOTCCSBINLINK=$(PROG:%=  $(ROOTCCSBINLINKDIR)/%)
 157 ROOTCCSBINLINK64=$(PROG:%=$(ROOTCCSBINLINKDIR64)/%)
 158 ROOTUSRKVMPROG= $(PROG:%=$(ROOTUSRKVM)/%)
 159 ROOTXPG4PROG=   $(XPG4PROG:%=$(ROOTXPG4BIN)/%)
 160 ROOTXPG4PROG32= $(XPG4PROG:%=$(ROOTXPG4BIN32)/%)
 161 ROOTXPG4PROG64= $(XPG4PROG:%=$(ROOTXPG4BIN64)/%)
 162 ROOTXPG6PROG=   $(XPG6PROG:%=$(ROOTXPG6BIN)/%)
 163 ROOTLOCALEPROG= $(PROG:%=$(ROOTLOCALEDEF)/%)
 164 ROOTPROG64=     $(PROG:%=$(ROOTBIN64)/%)
 165 ROOTPROG32=     $(PROG:%=$(ROOTBIN32)/%)
 166 ROOTCMD64=      $(PROG:%=$(ROOTCMDDIR64)/%)
 167 ROOTUSRSBINPROG32=      $(PROG:%=$(ROOTUSRSBIN32)/%)
 168 ROOTUSRSBINPROG64=      $(PROG:%=$(ROOTUSRSBIN64)/%)
 169 ROOTMAN1FILES=  $(MAN1FILES:%=$(ROOTMAN1)/%)
 170 $(ROOTMAN1FILES) := FILEMODE= 444
 171 ROOTMAN1MFILES= $(MAN1MFILES:%=$(ROOTMAN1M)/%)
 172 $(ROOTMAN1MFILES) := FILEMODE= 444
 173 ROOTMAN3FILES=  $(MAN3FILES:%=$(ROOTMAN3)/%)
 174 $(ROOTMAN3FILES) := FILEMODE= 444
 175 
 176 # Symlink rules for /usr/ccs/bin commands. Note, those commands under
 177 # the rule of the linker area, are controlled by a different set of 
 178 # rules defined in $(SRC)/cmd/sgs/Makefile.var.
 179 
 180 INS.ccsbinlink= \
 181         $(RM) $(ROOTCCSBINPROG); \
 182         $(SYMLINK) ../../bin/$(PROG) $(ROOTCCSBINPROG)
 183 
 184 INS.ccsbinlink64= \
 185         $(RM) $(ROOTCCSBINPROG64); \
 186         $(SYMLINK) ../../../bin/$(MACH64)/$(PROG) $(ROOTCCSBINPROG64)
 187 
 188 ROOTETCDEFAULT= $(ROOTETC)/default
 189 ROOTETCDEFAULTFILES=    $(DEFAULTFILES:%.dfl=$(ROOTETCDEFAULT)/%)
 190 $(ROOTETCDEFAULTFILES) :=       FILEMODE = 0644
 191 
 192 ROOTETCSECFILES=        $(ETCSECFILES:%=$(ROOTETCSECURITY)/%)
 193 $(ROOTETCSECFILES) :=   FILEMODE = 0644
 194 
 195 ROOTETCTSOLFILES=       $(ETCTSOLFILES:%=$(ROOTETCTSOL)/%)
 196 $(ROOTETCTSOLFILES) :=  FILEMODE = 0644
 197 
 198 ROOTETCSECLIBFILES=     $(ETCSECLIBFILES:%=$(ROOTETCSECLIB)/%)
 199 
 200 ROOTETCZONESFILES=      $(ETCZONESFILES:%=$(ROOTETCZONES)/%)
 201 $(ROOTETCZONESFILES) := FILEMODE = 0444
 202 
 203 ROOTLIBZONESFILES=      $(LIBZONESFILES:%=$(ROOTLIBZONES)/%)
 204 $(ROOTLIBZONESFILES) := FILEMODE = 0555
 205 
 206 ROOTADMIN_SRC_FILE= $(ADMINFILE:%=$(ROOTADMIN_SRC_DIR)/%)
 207 $(ROOTADMIN_SRC_FILE) := FILEMODE = 0444
 208 
 209 #
 210 # Directories for smf(5) service manifests and profiles.
 211 #
 212 ROOTSVC=                        $(ROOT)/lib/svc
 213 ROOTETCSVC=                     $(ROOT)/etc/svc
 214 
 215 ROOTSVCMANIFEST=                $(ROOTSVC)/manifest
 216 ROOTSVCPROFILE=                 $(ROOTETCSVC)/profile
 217 
 218 ROOTSVCMILESTONE=               $(ROOTSVCMANIFEST)/milestone
 219 ROOTSVCDEVICE=                  $(ROOTSVCMANIFEST)/device
 220 ROOTSVCSYSTEM=                  $(ROOTSVCMANIFEST)/system
 221 ROOTSVCSYSTEMDEVICE=            $(ROOTSVCSYSTEM)/device
 222 ROOTSVCSYSTEMFILESYSTEM=        $(ROOTSVCSYSTEM)/filesystem
 223 ROOTSVCSYSTEMSECURITY=          $(ROOTSVCSYSTEM)/security
 224 ROOTSVCNETWORK=                 $(ROOTSVCMANIFEST)/network
 225 ROOTSVCNETWORKDNS=              $(ROOTSVCNETWORK)/dns
 226 ROOTSVCNETWORKISCSI=            $(ROOTSVCNETWORK)/iscsi
 227 ROOTSVCNETWORKLDAP=             $(ROOTSVCNETWORK)/ldap
 228 ROOTSVCNETWORKNFS=              $(ROOTSVCNETWORK)/nfs
 229 ROOTSVCNETWORKNIS=              $(ROOTSVCNETWORK)/nis
 230 ROOTSVCNETWORKROUTING=          $(ROOTSVCNETWORK)/routing
 231 ROOTSVCNETWORKRPC=              $(ROOTSVCNETWORK)/rpc
 232 ROOTSVCNETWORKSMB=              $(ROOTSVCNETWORK)/smb
 233 ROOTSVCNETWORKSECURITY=         $(ROOTSVCNETWORK)/security
 234 ROOTSVCNETWORKSSL=              $(ROOTSVCNETWORK)/ssl
 235 ROOTSVCNETWORKIPSEC=            $(ROOTSVCNETWORK)/ipsec
 236 ROOTSVCNETWORKSHARES=           $(ROOTSVCNETWORK)/shares
 237 ROOTSVCSMB=                     $(ROOTSVCNETWORK)/smb
 238 ROOTSVCPLATFORM=                $(ROOTSVCMANIFEST)/platform
 239 ROOTSVCPLATFORMSUN4U=           $(ROOTSVCPLATFORM)/sun4u
 240 ROOTSVCPLATFORMSUN4V=           $(ROOTSVCPLATFORM)/sun4v
 241 ROOTSVCAPPLICATION=             $(ROOTSVCMANIFEST)/application
 242 ROOTSVCAPPLICATIONMANAGEMENT=   $(ROOTSVCAPPLICATION)/management
 243 ROOTSVCAPPLICATIONSECURITY=     $(ROOTSVCAPPLICATION)/security
 244 ROOTSVCAPPLICATIONPRINT=        $(ROOTSVCAPPLICATION)/print
 245 
 246 #
 247 # Commands Makefiles delivering a manifest are expected to define MANIFEST.
 248 #
 249 # Like ROOTCMDDIR, any lower-level Makefiles that put their manifests in a
 250 # subdirectory of the manifest directories listed above should reset
 251 # ROOTMANIFESTDIR and use it in their `install' target. By default we set this
 252 # to a bogus value so that it will not conflict with any of the other values
 253 # already  defined in this Makefile.
 254 #
 255 # The manifest validation of the $SRC/cmd check target is also derived from a
 256 # valid MANIFEST setting.
 257 #
 258 ROOTMANIFESTDIR=        $(ROOTSVCMANIFEST)/__nonexistent_directory__
 259 ROOTMANIFEST=           $(MANIFEST:%=$(ROOTMANIFESTDIR)/%)
 260 CHKMANIFEST=            $(MANIFEST:%.xml=%.xmlchk)
 261 
 262 # Manifests cannot be checked in parallel, because we are using the global
 263 # repository that is in $(SRC)/cmd/svc/seed/global.db.  This is a
 264 # repository that is built from the manifests in this workspace, whereas
 265 # the build machine's repository may be out of sync with these manifests.
 266 # Because we are using a private repository, svccfg-native must start up a
 267 # private copy of configd-native.  We cannot have multiple copies of
 268 # configd-native trying to access global.db simultaneously.
 269 
 270 .NO_PARALLEL:   $(CHKMANIFEST)
 271 
 272 #
 273 # For installing "starter scripts" of services
 274 #
 275 
 276 ROOTSVCMETHOD=          $(SVCMETHOD:%=$(ROOTLIBSVCMETHOD)/%)
 277 
 278 ROOTSVCBINDIR=          $(ROOTLIBSVCBIN)/__nonexistent_directory__
 279 ROOTSVCBIN=             $(SVCBIN:%=$(ROOTSVCBINDIR)/%)
 280 
 281 #
 282 
 283 # For programs that are installed in the root filesystem,
 284 # build $(ROOTFS_PROG) rather than $(PROG)
 285 $(ROOTFS_PROG) := LDFLAGS += -Wl,-I/lib/ld.so.1
 286 
 287 $(KRB5BIN)/%: %
 288         $(INS.file)
 289 
 290 $(KRB5SBIN)/%: %
 291         $(INS.file)
 292 
 293 $(KRB5LIB)/%: %
 294         $(INS.file)
 295 
 296 $(ROOTBIN)/%: %
 297         $(INS.file)
 298 
 299 $(ROOTLIB)/%: %
 300         $(INS.file)
 301 
 302 $(ROOTBIN64)/%: %
 303         $(INS.file)
 304 
 305 $(ROOTLIB64)/%: %
 306         $(INS.file)
 307 
 308 $(ROOTBIN32)/%: %
 309         $(INS.file)
 310 
 311 $(ROOTSHLIB)/%: %
 312         $(INS.file)
 313 
 314 $(ROOTPKGBIN)/%: %
 315         $(INS.file)
 316 
 317 $(ROOTCLASS_SCR_DIR)/%: %
 318         $(INS.file)
 319 
 320 $(ROOTADMIN_SRC_DIR)/%: %
 321         $(INS.file)
 322 
 323 $(ROOTSBIN)/%: %
 324         $(INS.file)
 325 
 326 $(ROOTUSRSBIN)/%: %
 327         $(INS.file)
 328 
 329 $(ROOTUSRSBIN32)/%: %
 330         $(INS.file)
 331 
 332 $(ROOTUSRSBIN64)/%: %
 333         $(INS.file)
 334 
 335 $(ROOTETC)/%: %
 336         $(INS.file)
 337 
 338 $(ROOTETCFTPD)/%: %
 339         $(INS.file)
 340 
 341 $(ROOTETCINET)/%: %
 342         $(INS.file)
 343 
 344 $(ROOTETCDEFAULT)/%:    %.dfl
 345         $(INS.rename)
 346 
 347 $(ROOTETCTSOL)/%: %
 348         $(INS.file)
 349 
 350 $(ROOTETCSECLIB)/%: %
 351         $(INS.file)
 352 
 353 $(ROOTETCZONES)/%: %
 354         $(INS.file)
 355 
 356 $(ROOTLIBZONES)/%: %
 357         $(INS.file)
 358 
 359 $(ROOTLIBXEN)/%: %
 360         $(INS.file)
 361 
 362 $(ROOTHASBIN)/%: %
 363         $(INS.file)
 364 
 365 $(ROOTHASLIB)/%: %
 366         $(INS.file)
 367 
 368 $(ROOTUSRKVM)/%: %
 369         $(INS.file)
 370 
 371 $(ROOTXPG4BIN)/%: %.xpg4
 372         $(INS.rename)
 373 
 374 $(ROOTXPG4BIN32)/%: %.xpg4
 375         $(INS.rename)
 376 
 377 $(ROOTXPG4BIN64)/%: %.xpg4
 378         $(INS.rename)
 379 
 380 $(ROOTXPG6BIN)/%: %.xpg6
 381         $(INS.rename)
 382 
 383 $(ROOTLOCALEDEF)/%: %
 384         $(INS.file)
 385 
 386 $(ROOTCHARMAP)/%: %
 387         $(INS.file)
 388 
 389 $(ROOTI18NEXT)/%: %
 390         $(INS.file)
 391 
 392 $(ROOTI18NEXT64)/%: %
 393         $(INS.file)
 394 
 395 $(ROOTLIBSVCMETHOD)/%: %
 396         $(INS.file)
 397 
 398 $(ROOTLIBSVCBIN)/%: %
 399         $(INS.file)
 400 
 401 $(ROOTSVCMILESTONE)/%: %
 402         $(INS.file)
 403 
 404 $(ROOTSVCDEVICE)/%: %
 405         $(INS.file)
 406 
 407 $(ROOTSVCSYSTEM)/%: %
 408         $(INS.file)
 409 
 410 $(ROOTSVCSYSTEMDEVICE)/%: %
 411         $(INS.file)
 412 
 413 $(ROOTSVCSYSTEMFILESYSTEM)/%: %
 414         $(INS.file)
 415 
 416 $(ROOTSVCSYSTEMSECURITY)/%: %
 417         $(INS.file)
 418 
 419 $(ROOTSVCNETWORK)/%: %
 420         $(INS.file)
 421 
 422 $(ROOTSVCNETWORKLDAP)/%: %
 423         $(INS.file)
 424 
 425 $(ROOTSVCNETWORKNFS)/%: %
 426         $(INS.file)
 427 
 428 $(ROOTSVCNETWORKNIS)/%: %
 429         $(INS.file)
 430 
 431 $(ROOTSVCNETWORKRPC)/%: %
 432         $(INS.file)
 433 
 434 $(ROOTSVCNETWORKSECURITY)/%: %
 435         $(INS.file)
 436 
 437 $(ROOTSVCNETWORKSSL)/%: %
 438         $(INS.file)
 439 
 440 $(ROOTSVCNETWORKIPSEC)/%: %
 441         $(INS.file)
 442 
 443 $(ROOTSVCNETWORKSHARES)/%: %
 444         $(INS.file)
 445 
 446 $(ROOTSVCNETWORKSMB)/%: %
 447         $(INS.file)
 448 
 449 $(ROOTSVCAPPLICATION)/%: %
 450         $(INS.file)
 451 
 452 $(ROOTSVCAPPLICATIONMANAGEMENT)/%: %
 453         $(INS.file)
 454 
 455 $(ROOTSVCAPPLICATIONSECURITY)/%: %
 456         $(INS.file)
 457 
 458 $(ROOTSVCAPPLICATIONPRINT)/%: %
 459         $(INS.file)
 460 
 461 $(ROOTSVCPLATFORM)/%: %
 462         $(INS.file)
 463 
 464 $(ROOTSVCPLATFORMSUN4U)/%: %
 465         $(INS.file)
 466 
 467 $(ROOTSVCPLATFORMSUN4V)/%: %
 468         $(INS.file)
 469 
 470 # Install rule for gprof, yacc, and lex dependency files
 471 $(ROOTSHLIBCCS)/%: ../common/%
 472         $(INS.file)
 473 
 474 $(ROOTCCSBINLINKDIR)/%: %
 475         $(INS.ccsbinlink)
 476 
 477 $(ROOTCCSBINLINKDIR64)/%: %
 478         $(INS.ccsbinlink64)
 479 
 480 $(ROOTMAN1)/%: %.sunman
 481         $(INS.rename)
 482 
 483 $(ROOTMAN1M)/%: %.sunman
 484         $(INS.rename)
 485 
 486 $(ROOTMAN3)/%: %.sunman
 487         $(INS.rename)
 488 
 489 $(ROOTVARSMB)/%: %
 490         $(INS.file)
 491 
 492 # build rule for statically linked programs with single source file.
 493 %.static: %.c
 494         $(LINK.c) -o $@ $< $(LDLIBS)
 495         $(POST_PROCESS)
 496 
 497 %.xpg4: %.c
 498         $(LINK.c) -o $@ $< $(LDLIBS)
 499         $(POST_PROCESS)
 500 
 501 %.xpg6: %.c
 502         $(LINK.c) -o $@ $< $(LDLIBS)
 503         $(POST_PROCESS)
 504 
 505 # Define the majority text domain in this directory.
 506 TEXT_DOMAIN= SUNW_OST_OSCMD     
 507 
 508 CLOBBERFILES += $(XPG4) $(XPG6) $(DCFILE)
 509 
 510 # This flag is for programs which should not build a 32-bit binary
 511 sparc_64ONLY= $(POUND_SIGN)
 512 64ONLY=  $($(MACH)_64ONLY)