64 # turn off pkglint for the individual component builds. |
64 # turn off pkglint for the individual component builds. |
65 ifeq ($(strip $(PKGLINT_COMPONENT)),) |
65 ifeq ($(strip $(PKGLINT_COMPONENT)),) |
66 publish: MAKEFLAGS += PKGLINT=/bin/true |
66 publish: MAKEFLAGS += PKGLINT=/bin/true |
67 endif |
67 endif |
68 |
68 |
|
69 # In order to work around an IPS simultaneous publication issue and to improve |
|
70 # top level build performance, we postpone catalog and index updates until the |
|
71 # end of the build. Individual component builds postpone the updates until |
|
72 # they have published all of their packages. |
|
73 publish: MAKEFLAGS += DISABLE_IPS_CATALOG_AND_INDEX_UPDATES=yes |
|
74 |
|
75 |
69 .DEFAULT: publish |
76 .DEFAULT: publish |
70 |
77 |
71 build install publish test: $(COMPONENT_DIRS) |
78 build install publish test: $(COMPONENT_DIRS) |
72 |
79 |
73 COMPONENT_DIRS.nosetup = $(COMPONENT_DIRS:%=%.nosetup) |
80 COMPONENT_DIRS.nosetup = $(COMPONENT_DIRS:%=%.nosetup) |
123 @cd $@ && echo "$(TARGET) $@" && \ |
130 @cd $@ && echo "$(TARGET) $@" && \ |
124 $(BASS_O_MATIC) $(TEMPLATE_ZONE:%=--template-zone %) \ |
131 $(BASS_O_MATIC) $(TEMPLATE_ZONE:%=--template-zone %) \ |
125 $(@:%=--component %) --make $(TARGET) $(LOG) |
132 $(@:%=--component %) --make $(TARGET) $(LOG) |
126 |
133 |
127 publish: |
134 publish: |
128 $(PKGREPO) rebuild -s $(PKG_REPO) |
135 $(PKGREPO) refresh -s $(PKG_REPO) |
129 $(WS_TOOLS)/userland-incorporator --repository $(PKG_REPO) \ |
136 $(WS_TOOLS)/userland-incorporator --repository $(PKG_REPO) \ |
130 -p pkg:/consolidation/$(CONSOLIDATION)/$(CONSOLIDATION)-incorporation@0.$(OS_VERSION),$(BUILD_VERSION) \ |
137 -p pkg:/consolidation/$(CONSOLIDATION)/$(CONSOLIDATION)-incorporation@0.$(OS_VERSION),$(BUILD_VERSION) \ |
131 -s "$(CONSOLIDATION) consolidation incorporation" \ |
138 -s "$(CONSOLIDATION) consolidation incorporation" \ |
132 -d "This incorporation constrains packages from the $(CONSOLIDATION) consolidation" \ |
139 -d "This incorporation constrains packages from the $(CONSOLIDATION) consolidation" \ |
133 -c $(CONSOLIDATION) >$(WS_LOGS)/$(CONSOLIDATION)-incorporation.p5m |
140 -c $(CONSOLIDATION) >$(WS_LOGS)/$(CONSOLIDATION)-incorporation.p5m |
134 $(PKGSEND) -s $(PKG_REPO) publish --fmri-in-manifest \ |
141 $(PKGSEND) -s $(PKG_REPO) publish --fmri-in-manifest \ |
135 $(WS_LOGS)/$(CONSOLIDATION)-incorporation.p5m |
142 $(WS_LOGS)/$(CONSOLIDATION)-incorporation.p5m |
|
143 $(PKGREPO) refresh -s $(PKG_REPO) |
136 # pkglint all of the published manifests in one batch. |
144 # pkglint all of the published manifests in one batch. |
137 ifdef CANONICAL_REPO |
145 ifdef CANONICAL_REPO |
138 @echo 'pkglinting all package manifests...' |
146 @echo 'pkglinting all package manifests...' |
139 @$(ENV) PYTHONPATH=$(WS_TOOLS)/python $(PKGLINT) \ |
147 @$(ENV) PYTHONPATH=$(WS_TOOLS)/python $(PKGLINT) \ |
140 -c $(WS_LINT_CACHE) -f $(WS_TOOLS)/pkglintrc \ |
148 -c $(WS_LINT_CACHE) -f $(WS_TOOLS)/pkglintrc \ |