Print this page
6574 Package print/lp/ipp/ipp-listener disappears when ENABLE_IPP_PRINTING is undefined


   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 #
  23 # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
  24 # Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved.

  25 #
  26 
  27 include $(SRC)/Makefile.master
  28 include $(SRC)/Makefile.buildnum
  29 
  30 #
  31 # Make sure we're getting a consistent execution environment for the
  32 # embedded scripts.
  33 #
  34 SHELL= /usr/bin/ksh93
  35 
  36 #
  37 # To suppress package dependency generation on any system, regardless
  38 # of how it was installed, set SUPPRESSPKGDEP=true in the build
  39 # environment.
  40 #
  41 SUPPRESSPKGDEP= false
  42 
  43 #
  44 # Comment this line out or set "PKGDEBUG=" in your build environment


 193         'ISALIST=sparcv9' \
 194         'ISALIST=sparc'
 195 PKGDEP_TOKENS= $(PKGDEP_TOKENS_$(PKGMACH))
 196 
 197 #
 198 # The package lists are generated with $(PKGDEP_TYPE) as their
 199 # dependency types, so that they can be included by either an
 200 # incorporation or a group package.
 201 #
 202 $(PDIR)/osnet-redist.mog := PKGDEP_TYPE= require
 203 $(PDIR)/osnet-incorporation.mog:= PKGDEP_TYPE= incorporate
 204 
 205 PKGDEP_INCORP= \
 206         depend fmri=consolidation/osnet/osnet-incorporation type=require
 207 
 208 #
 209 # All packaging build products should go into $(PDIR), so they don't
 210 # need to be included separately in CLOBBERFILES.
 211 #
 212 CLOBBERFILES= $(PDIR) proto_list_$(PKGMACH) install-$(PKGMACH).out \
 213         license-list
 214 
 215 #
 216 # By default, PKGS will list all manifests.  To build and/or publish a
 217 # subset of packages, override this on the command line or in the
 218 # build environment and then reference (implicitly or explicitly) the all
 219 # or install targets.  Using ls -1 (that's a one) or print or echo to
 220 # get the list of manifests is a little hackish, but avoids having a
 221 # 900+ line file to explicitly list them all.
 222 #
 223 # We want some manifests to optionally built based on environment
 224 # options, so those are excluded and optionally added back in.
 225 # We also want a relatively easy way to add files to the list of
 226 # manifests given special treatment.  Add any other special ones
 227 # to the SPECIAL_MANIFESTS vaiable.  It can contain wildcards in
 228 # regexp form, i.e. SUNW.* as one useful example.
 229 #
 230 SPECIAL_MANIFESTS = print-lp-ipp-ipp-listener.mf








 231 LIST_MANIFESTS_CMD = (cd manifests ; /usr/bin/ls -1 *.mf |\
 232         $(SED) $(SPECIAL_MANIFESTS:%=-e '/^%$$/d') )
 233 MANIFESTS = $(LIST_MANIFESTS_CMD:sh)

 234 
 235 # Conditionally add back lp-ipp
 236 $(ENABLE_IPP_PRINTING) MANIFESTS += print-lp-ipp-ipp-listener.mf
 237 
 238 PKGS= $(MANIFESTS:%.mf=%)
 239 DEP_PKGS= $(PKGS:%=$(PDIR)/%.dep)
 240 PROC_PKGS= $(PKGS:%=$(PDIR)/%.mog)
 241 
 242 #
 243 # Track the synthetic manifests separately so we can properly express
 244 # build rules and dependencies.  The synthetic and real packages use
 245 # different sets of transforms and macros for pkgmogrify.
 246 #
 247 SYNTH_PKGS= osnet-incorporation osnet-redist
 248 DEP_SYNTH_PKGS= $(SYNTH_PKGS:%=$(PDIR)/%.dep)
 249 PROC_SYNTH_PKGS= $(SYNTH_PKGS:%=$(PDIR)/%.mog)
 250 
 251 #
 252 # Root of pkg image to use for dependency resolution
 253 # Normally / on the machine used to build the binaries
 254 #
 255 PKGDEP_RESOLVE_IMAGE = /
 256 
 257 #


 348 #
 349 #               repository metadata (catalogs and search indices)
 350 #                       |
 351 #                       | pkgrepo refresh
 352 #                       |
 353 #               published packages
 354 #                |              |
 355 #                |              | pkgsend publish
 356 #                |              |
 357 #         repositories      resolved dependencies
 358 #                |                      |
 359 # pkgsend        |                      | pkgdepend resolve
 360 # create-repository                     |
 361 #                |              generated dependencies
 362 #        repo directories               |
 363 #                                       | pkgdepend
 364 #                                       |
 365 #                               processed manifests
 366 # 
 367 
 368 ALL_TARGETS= $(PROC_SYNTH_PKGS) proto_list_$(PKGMACH)
 369 
 370 all: $(ALL_TARGETS)
 371 
 372 #










 373 # This will build the directory to contain the processed manifests
 374 # and the metadata symlinks.
 375 #
 376 $(PDIR):
 377         @print "Creating $(@)"
 378         $(PKGDEBUG)$(INS.dir)
 379 
 380 #
 381 # This rule resolves dependencies across all published manifests.
 382 #
 383 # We shouldn't have to ignore the error from pkgdepend, but until
 384 # 16012 and its dependencies are resolved, pkgdepend will always exit
 385 # with an error.
 386 #
 387 $(PDIR)/gendeps: $(DEP_SYNTH_PKGS) $(DEP_PKGS)
 388         -$(PKGDEBUG)if [ "$(SUPPRESSPKGDEP)" = "true" ]; then \
 389                 print "Suppressing dependency resolution"; \
 390                 for p in $(DEP_PKGS:%.dep=%); do \
 391                         $(CP) $$p.dep $$p.res; \
 392                 done; \




   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 #
  23 # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
  24 # Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved.
  25 # Copyright 2016 Gary Mills
  26 #
  27 
  28 include $(SRC)/Makefile.master
  29 include $(SRC)/Makefile.buildnum
  30 
  31 #
  32 # Make sure we're getting a consistent execution environment for the
  33 # embedded scripts.
  34 #
  35 SHELL= /usr/bin/ksh93
  36 
  37 #
  38 # To suppress package dependency generation on any system, regardless
  39 # of how it was installed, set SUPPRESSPKGDEP=true in the build
  40 # environment.
  41 #
  42 SUPPRESSPKGDEP= false
  43 
  44 #
  45 # Comment this line out or set "PKGDEBUG=" in your build environment


 194         'ISALIST=sparcv9' \
 195         'ISALIST=sparc'
 196 PKGDEP_TOKENS= $(PKGDEP_TOKENS_$(PKGMACH))
 197 
 198 #
 199 # The package lists are generated with $(PKGDEP_TYPE) as their
 200 # dependency types, so that they can be included by either an
 201 # incorporation or a group package.
 202 #
 203 $(PDIR)/osnet-redist.mog := PKGDEP_TYPE= require
 204 $(PDIR)/osnet-incorporation.mog:= PKGDEP_TYPE= incorporate
 205 
 206 PKGDEP_INCORP= \
 207         depend fmri=consolidation/osnet/osnet-incorporation type=require
 208 
 209 #
 210 # All packaging build products should go into $(PDIR), so they don't
 211 # need to be included separately in CLOBBERFILES.
 212 #
 213 CLOBBERFILES= $(PDIR) proto_list_$(PKGMACH) install-$(PKGMACH).out \
 214         $(DYN_MANI) license-list
 215 
 216 #
 217 # By default, PKGS will list all manifests.  To build and/or publish a
 218 # subset of packages, override this on the command line or in the
 219 # build environment and then reference (implicitly or explicitly) the all
 220 # or install targets.  Using ls -1 (that's a one) or print or echo to
 221 # get the list of manifests is a little hackish, but avoids having a
 222 # 900+ line file to explicitly list them all.
 223 #
 224 





 225 #
 226 # Special manifests are symbolic links to real manifests with
 227 # either *.mf.obs or *.mf.cur names, depending on the value of
 228 # the ENABLE_IPP_PRINTING macro.  They are excluded from the
 229 # MANIFESTS macro because they may not exist when it is set,
 230 # but are added unconditionally on the next line.
 231 #
 232 
 233 SPECIAL_MANIFESTS = SUNWippl.mf print-lp-ipp-ipp-listener.mf
 234 DYN_MANI = $(SPECIAL_MANIFESTS:%=manifests/%)
 235 LIST_MANIFESTS_CMD = (cd manifests ; /usr/bin/ls -1 *.mf |\
 236         $(SED) $(SPECIAL_MANIFESTS:%=-e '/^%$$/d') )
 237 MANIFESTS = $(LIST_MANIFESTS_CMD:sh)
 238 MANIFESTS += $(SPECIAL_MANIFESTS)
 239 



 240 PKGS= $(MANIFESTS:%.mf=%)
 241 DEP_PKGS= $(PKGS:%=$(PDIR)/%.dep)
 242 PROC_PKGS= $(PKGS:%=$(PDIR)/%.mog)
 243 
 244 #
 245 # Track the synthetic manifests separately so we can properly express
 246 # build rules and dependencies.  The synthetic and real packages use
 247 # different sets of transforms and macros for pkgmogrify.
 248 #
 249 SYNTH_PKGS= osnet-incorporation osnet-redist
 250 DEP_SYNTH_PKGS= $(SYNTH_PKGS:%=$(PDIR)/%.dep)
 251 PROC_SYNTH_PKGS= $(SYNTH_PKGS:%=$(PDIR)/%.mog)
 252 
 253 #
 254 # Root of pkg image to use for dependency resolution
 255 # Normally / on the machine used to build the binaries
 256 #
 257 PKGDEP_RESOLVE_IMAGE = /
 258 
 259 #


 350 #
 351 #               repository metadata (catalogs and search indices)
 352 #                       |
 353 #                       | pkgrepo refresh
 354 #                       |
 355 #               published packages
 356 #                |              |
 357 #                |              | pkgsend publish
 358 #                |              |
 359 #         repositories      resolved dependencies
 360 #                |                      |
 361 # pkgsend        |                      | pkgdepend resolve
 362 # create-repository                     |
 363 #                |              generated dependencies
 364 #        repo directories               |
 365 #                                       | pkgdepend
 366 #                                       |
 367 #                               processed manifests
 368 # 
 369 
 370 ALL_TARGETS= $(DYN_MANI) $(PROC_SYNTH_PKGS) proto_list_$(PKGMACH)
 371 
 372 all: $(ALL_TARGETS)
 373 
 374 #
 375 # Rule to create symlinks to *.mf.obs or *.mf.cur for special manifests
 376 # Also removes the previous special manifest
 377 #
 378 DYN_TYP = obs
 379 $(ENABLE_IPP_PRINTING) DYN_TYP = cur
 380 $(DYN_MANI): $$(@).$(DYN_TYP)
 381         $(RM) $(@)
 382         $(SYMLINK) $(@F).$(DYN_TYP) $(@)
 383 
 384 #
 385 # This will build the directory to contain the processed manifests
 386 # and the metadata symlinks.
 387 #
 388 $(PDIR):
 389         @print "Creating $(@)"
 390         $(PKGDEBUG)$(INS.dir)
 391 
 392 #
 393 # This rule resolves dependencies across all published manifests.
 394 #
 395 # We shouldn't have to ignore the error from pkgdepend, but until
 396 # 16012 and its dependencies are resolved, pkgdepend will always exit
 397 # with an error.
 398 #
 399 $(PDIR)/gendeps: $(DEP_SYNTH_PKGS) $(DEP_PKGS)
 400         -$(PKGDEBUG)if [ "$(SUPPRESSPKGDEP)" = "true" ]; then \
 401                 print "Suppressing dependency resolution"; \
 402                 for p in $(DEP_PKGS:%.dep=%); do \
 403                         $(CP) $$p.dep $$p.res; \
 404                 done; \