--- old/usr/src/pkg/Makefile	   :: 
+++ new/usr/src/pkg/Makefile	   :: 
@@ -22,6 +22,7 @@
 #
 # Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
 # Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved.
+# Copyright 2016 Gary Mills
 #
 
 include $(SRC)/Makefile.master
@@ -210,7 +211,7 @@
 # need to be included separately in CLOBBERFILES.
 #
 CLOBBERFILES= $(PDIR) proto_list_$(PKGMACH) install-$(PKGMACH).out \
-	license-list
+	$(DYN_MANI) license-list
 
 #
 # By default, PKGS will list all manifests.  To build and/or publish a
@@ -220,21 +221,22 @@
 # get the list of manifests is a little hackish, but avoids having a
 # 900+ line file to explicitly list them all.
 #
-# We want some manifests to optionally built based on environment
-# options, so those are excluded and optionally added back in.
-# We also want a relatively easy way to add files to the list of
-# manifests given special treatment.  Add any other special ones
-# to the SPECIAL_MANIFESTS vaiable.  It can contain wildcards in
-# regexp form, i.e. SUNW.* as one useful example.
+
 #
-SPECIAL_MANIFESTS = print-lp-ipp-ipp-listener.mf
+# Special manifests are symbolic links to real manifests with
+# either *.mf.obs or *.mf.cur names, depending on the value of
+# the ENABLE_IPP_PRINTING macro.  They are excluded from the
+# MANIFESTS macro because they may not exist when it is set,
+# but are added unconditionally on the next line.
+#
+
+SPECIAL_MANIFESTS = SUNWippl.mf print-lp-ipp-ipp-listener.mf
+DYN_MANI = $(SPECIAL_MANIFESTS:%=manifests/%)
 LIST_MANIFESTS_CMD = (cd manifests ; /usr/bin/ls -1 *.mf |\
 	$(SED) $(SPECIAL_MANIFESTS:%=-e '/^%$$/d') )
 MANIFESTS = $(LIST_MANIFESTS_CMD:sh)
+MANIFESTS += $(SPECIAL_MANIFESTS)
 
-# Conditionally add back lp-ipp
-$(ENABLE_IPP_PRINTING) MANIFESTS += print-lp-ipp-ipp-listener.mf
-
 PKGS= $(MANIFESTS:%.mf=%)
 DEP_PKGS= $(PKGS:%=$(PDIR)/%.dep)
 PROC_PKGS= $(PKGS:%=$(PDIR)/%.mog)
@@ -365,11 +367,21 @@
 #				processed manifests
 # 
 
-ALL_TARGETS= $(PROC_SYNTH_PKGS) proto_list_$(PKGMACH)
+ALL_TARGETS= $(DYN_MANI) $(PROC_SYNTH_PKGS) proto_list_$(PKGMACH)
 
 all: $(ALL_TARGETS)
 
 #
+# Rule to create symlinks to *.mf.obs or *.mf.cur for special manifests
+# Also removes the previous special manifest
+#
+DYN_TYP = obs
+$(ENABLE_IPP_PRINTING) DYN_TYP = cur
+$(DYN_MANI): $$(@).$(DYN_TYP)
+	$(RM) $(@)
+	$(SYMLINK) $(@F).$(DYN_TYP) $(@)
+
+#
 # This will build the directory to contain the processed manifests
 # and the metadata symlinks.
 #
--- old/usr/src/pkg/manifests/SUNWippl.mf	   :: 
+++ /dev/null	   :: 
@@ -1,29 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
-#
-
-set name=pkg.fmri value=pkg:/SUNWippl@0.5.11,5.11-0.133
-set name=pkg.renamed value=true
-set name=variant.arch value=$(ARCH)
-depend fmri=pkg:/print/lp/ipp/ipp-listener@0.5.11,5.11-0.133 type=require
--- /dev/null	   :: 
+++ new/usr/src/pkg/manifests/SUNWippl.mf.cur	   :: 
@@ -0,0 +1,24 @@
+#
+# CDDL HEADER START
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source.  A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright 2016 Gary Mills
+# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+#
+
+set name=pkg.fmri value=pkg:/SUNWippl@0.5.11,5.11-0.133
+set name=pkg.renamed value=true
+set name=variant.arch value=$(ARCH)
+depend fmri=pkg:/print/lp/ipp/ipp-listener@$(PKGVERS) type=require
--- /dev/null	   :: 
+++ new/usr/src/pkg/manifests/SUNWippl.mf.obs	   :: 
@@ -0,0 +1,23 @@
+#
+# CDDL HEADER START
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source.  A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright 2016 Gary Mills
+# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+#
+
+set name=pkg.fmri value=pkg:/SUNWippl@0.5.11,5.11-0.133
+set name=pkg.obsolete value=true
+set name=variant.arch value=$(ARCH)
--- old/usr/src/pkg/manifests/print-lp-ipp-ipp-listener.mf	   :: 
+++ /dev/null	   :: 
@@ -1,62 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-
-#
-# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
-#
-
-set name=pkg.fmri value=pkg:/print/lp/ipp/ipp-listener@$(PKGVERS)
-set name=pkg.description \
-    value="Internet Printing Protocol(IPP) Apache module for listening service"
-set name=pkg.summary value="Internet Printing Protocol(IPP) listener module"
-set name=info.classification \
-    value=org.opensolaris.category.2008:System/Printing
-set name=variant.arch value=$(ARCH)
-dir path=etc group=sys
-dir path=etc/lp group=lp mode=0775 owner=lp
-dir path=etc/lp/ipp group=lp mode=0755 owner=lp
-dir path=lib
-dir path=lib/svc
-dir path=lib/svc/manifest group=sys
-dir path=lib/svc/manifest/application group=sys
-dir path=lib/svc/manifest/application/print group=sys
-dir path=usr group=sys
-dir path=usr/lib
-dir path=usr/lib/lp group=lp
-dir path=usr/lib/lp/ipp group=lp
-dir path=var group=sys
-dir path=var/lp group=lp mode=0775 owner=lp
-dir path=var/lp/ipp-listener
-file path=etc/lp/ipp/httpd-standalone-ipp.conf preserve=true
-file path=lib/svc/manifest/application/print/ipp-listener.xml group=sys \
-    mode=0444
-file path=usr/lib/lp/ipp/mod_ipp.so mode=0555
-file path=var/lp/ipp-listener/index.html mode=0444
-legacy pkg=SUNWipplr \
-    desc="Internet Printing Protocol(IPP) Apache configuration for service module" \
-    name="Internet Printing Protocol(IPP) listener, (root)" \
-    version=13.1,REV=2009.11.11
-legacy pkg=SUNWipplu \
-    desc="Internet Printing Protocol(IPP) Apache module for listening service" \
-    name="Internet Printing Protocol(IPP) listener module (/usr)" \
-    version=13.1,REV=2009.11.11
-license cr_Sun license=cr_Sun
-license lic_CDDL license=lic_CDDL
--- /dev/null	   :: 
+++ new/usr/src/pkg/manifests/print-lp-ipp-ipp-listener.mf.cur	   :: 
@@ -0,0 +1,57 @@
+#
+# CDDL HEADER START
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source.  A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright 2016 Gary Mills
+# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+#
+
+set name=pkg.fmri value=pkg:/print/lp/ipp/ipp-listener@$(PKGVERS)
+set name=pkg.description \
+    value="Internet Printing Protocol(IPP) Apache module for listening service"
+set name=pkg.summary value="Internet Printing Protocol(IPP) listener module"
+set name=info.classification \
+    value=org.opensolaris.category.2008:System/Printing
+set name=variant.arch value=$(ARCH)
+dir path=etc group=sys
+dir path=etc/lp group=lp mode=0775 owner=lp
+dir path=etc/lp/ipp group=lp mode=0755 owner=lp
+dir path=lib
+dir path=lib/svc
+dir path=lib/svc/manifest group=sys
+dir path=lib/svc/manifest/application group=sys
+dir path=lib/svc/manifest/application/print group=sys
+dir path=usr group=sys
+dir path=usr/lib
+dir path=usr/lib/lp group=lp
+dir path=usr/lib/lp/ipp group=lp
+dir path=var group=sys
+dir path=var/lp group=lp mode=0775 owner=lp
+dir path=var/lp/ipp-listener
+file path=etc/lp/ipp/httpd-standalone-ipp.conf preserve=true
+file path=lib/svc/manifest/application/print/ipp-listener.xml group=sys \
+    mode=0444
+file path=usr/lib/lp/ipp/mod_ipp.so mode=0555
+file path=var/lp/ipp-listener/index.html mode=0444
+legacy pkg=SUNWipplr \
+    desc="Internet Printing Protocol(IPP) Apache configuration for service module" \
+    name="Internet Printing Protocol(IPP) listener, (root)" \
+    version=13.1,REV=2009.11.11
+legacy pkg=SUNWipplu \
+    desc="Internet Printing Protocol(IPP) Apache module for listening service" \
+    name="Internet Printing Protocol(IPP) listener module (/usr)" \
+    version=13.1,REV=2009.11.11
+license cr_Sun license=cr_Sun
+license lic_CDDL license=lic_CDDL
--- /dev/null	   :: 
+++ new/usr/src/pkg/manifests/print-lp-ipp-ipp-listener.mf.obs	   :: 
@@ -0,0 +1,23 @@
+#
+# CDDL HEADER START
+#
+# This file and its contents are supplied under the terms of the
+# Common Development and Distribution License ("CDDL"), version 1.0.
+# You may only use this file in accordance with the terms of version
+# 1.0 of the CDDL.
+#
+# A full copy of the text of the CDDL should have accompanied this
+# source.  A copy of the CDDL is also available via the Internet at
+# http://www.illumos.org/license/CDDL.
+#
+# CDDL HEADER END
+#
+
+#
+# Copyright 2016 Gary Mills
+# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
+#
+
+set name=pkg.fmri value=pkg:/print/lp/ipp/ipp-listener@$(PKGVERS)
+set name=pkg.obsolete value=true
+set name=variant.arch value=$(ARCH)
