components/Makefile
changeset 1416 a87a9e85090e
parent 1188 d563dccb5adb
child 1558 6cdada0dd56a
--- a/components/Makefile	Wed Jul 31 09:36:35 2013 -0600
+++ b/components/Makefile	Thu Aug 01 10:53:56 2013 -0700
@@ -66,6 +66,13 @@
 publish:		MAKEFLAGS += PKGLINT=/bin/true
 endif
 
+# In order to work around an IPS simultaneous publication issue and to improve
+# top level build performance, we postpone catalog and index updates until the
+# end of the build.  Individual component builds postpone the updates until
+# they have published all of their packages.
+publish:		MAKEFLAGS += DISABLE_IPS_CATALOG_AND_INDEX_UPDATES=yes
+
+
 .DEFAULT:	publish
 
 build install publish test: $(COMPONENT_DIRS)
@@ -125,7 +132,7 @@
 			 $(@:%=--component %) --make $(TARGET) $(LOG)
 
 publish:
-	$(PKGREPO) rebuild -s $(PKG_REPO)
+	$(PKGREPO) refresh -s $(PKG_REPO)
 	$(WS_TOOLS)/userland-incorporator --repository $(PKG_REPO) \
 	  -p pkg:/consolidation/$(CONSOLIDATION)/$(CONSOLIDATION)-incorporation@0.$(OS_VERSION),$(BUILD_VERSION) \
 	  -s "$(CONSOLIDATION) consolidation incorporation" \
@@ -133,6 +140,7 @@
 	  -c $(CONSOLIDATION) >$(WS_LOGS)/$(CONSOLIDATION)-incorporation.p5m
 	$(PKGSEND) -s $(PKG_REPO) publish --fmri-in-manifest \
 	  $(WS_LOGS)/$(CONSOLIDATION)-incorporation.p5m
+	$(PKGREPO) refresh -s $(PKG_REPO)
 # pkglint all of the published manifests in one batch.
 ifdef CANONICAL_REPO
 	@echo 'pkglinting all package manifests...'