40 export DOWNLOAD_SEARCH_PATH += $(INTERNAL_ARCHIVE_MIRROR) |
40 export DOWNLOAD_SEARCH_PATH += $(INTERNAL_ARCHIVE_MIRROR) |
41 export DOWNLOAD_SEARCH_PATH += $(EXTERNAL_ARCHIVE_MIRROR) |
41 export DOWNLOAD_SEARCH_PATH += $(EXTERNAL_ARCHIVE_MIRROR) |
42 |
42 |
43 # The workspace starts at the mercurial root |
43 # The workspace starts at the mercurial root |
44 export WS_TOP ?= $(shell hg root) |
44 export WS_TOP ?= $(shell hg root) |
|
45 |
|
46 WS_LOGS = $(WS_TOP)/$(MACH)/logs |
|
47 WS_REPO = $(WS_TOP)/$(MACH)/repo |
|
48 WS_TOOLS = $(WS_TOP)/tools |
|
49 WS_MAKE_RULES = $(WS_TOP)/make-rules |
|
50 WS_COMPONENTS = $(WS_TOP)/components |
|
51 WS_INCORPORATIONS = $(WS_TOP)/incorporations |
|
52 WS_LINT_CACHE = $(WS_TOP)/$(MACH)/pkglint-cache |
45 |
53 |
46 # we want our pkg piplines to fail if there is an error |
54 # we want our pkg piplines to fail if there is an error |
47 # (like if pkgdepend fails in the middle of a pipe), but |
55 # (like if pkgdepend fails in the middle of a pipe), but |
48 # we don't want the builds or ./configure's failing as well. |
56 # we don't want the builds or ./configure's failing as well. |
49 # so we only set pipefail for the publish target and have |
57 # so we only set pipefail for the publish target and have |
60 CONSOLIDATION = userland |
68 CONSOLIDATION = userland |
61 PUBLISHER ?= $(CONSOLIDATION) |
69 PUBLISHER ?= $(CONSOLIDATION) |
62 |
70 |
63 ROOT = / |
71 ROOT = / |
64 |
72 |
65 # The package branch version scheme is: |
|
66 # |
|
67 # trunk_id.update.SRU.platform.buildid.nightlyid |
|
68 # |
|
69 # where |
|
70 # trunk_id : build number for tip development gate, with leading 0 |
|
71 # update : 0 for FCS, 1 for update 1, etc. |
|
72 # SRU : SRU (support repository update) number for this update |
|
73 # platform : reserved for future use. |
|
74 # buildid : the build number of the last non-zero element from above |
|
75 # nightlyid: nightly build identifier |
|
76 |
|
77 # get the most recent build number from the last mercurial tag |
|
78 LAST_HG_TAG = $(shell hg tags -q | grep build- | head -1) |
|
79 LAST_BUILD_NUM = $(LAST_HG_TAG:build-%=%) |
|
80 |
|
81 OS_VERSION = $(shell uname -r) |
73 OS_VERSION = $(shell uname -r) |
82 SOLARIS_VERSION = $(OS_VERSION:5.%=2.%) |
74 SOLARIS_VERSION = $(OS_VERSION:5.%=2.%) |
83 BUILD_NUM ?= 0.$(shell expr $(LAST_BUILD_NUM) + 1) |
75 |
84 |
76 include $(WS_MAKE_RULES)/ips-buildinfo.mk |
85 # |
|
86 # The Solaris Update number. This will be set by the gatekeepers. |
|
87 # The value must match the update number of the release. |
|
88 # |
|
89 UPDATENUM ?= 0 |
|
90 |
|
91 # |
|
92 # Support Respository Update number. This is here to reserve space within the |
|
93 # version string. Typically it should not be set unless all the packages |
|
94 # are being delivered within an SRU. |
|
95 # |
|
96 SRUNUM ?= 0 |
|
97 |
|
98 # |
|
99 # Platform number. This is here to reserve space within the version |
|
100 # string. It should not be set unless there is a specific need to |
|
101 # release a platform update while the Solaris Update is being built. |
|
102 # |
|
103 PLATNUM ?= 0 |
|
104 |
|
105 # |
|
106 # Build Identifier. Used to indicate which build (or respin for |
|
107 # the development build) of the Solaris Update is being built. |
|
108 # This is set by the gatekeepers. |
|
109 # |
|
110 BUILDID ?= 0 |
|
111 |
|
112 # Each (nightly) build of the code that produces packages needs to |
|
113 # be uniquely identified so that packages produced by different |
|
114 # builds can't be mixed. Mixing packages from different builds can |
|
115 # easily result in broken global and nonglobal zones. |
|
116 # |
|
117 NIGHTLYID ?= $(shell hg tip --template '{rev}\n') |
|
118 |
|
119 BUILD_VERSION ?= \ |
|
120 $(OS_VERSION)-$(BUILD_NUM).$(UPDATENUM).$(SRUNUM).$(PLATNUM).$(BUILDID).$(NIGHTLYID) |
|
121 |
77 |
122 COMPILER = studio |
78 COMPILER = studio |
123 BITS = 32 |
79 BITS = 32 |
124 PYTHON_VERSION = 2.6 |
80 PYTHON_VERSION = 2.6 |
125 PYTHON_VERSIONS = 2.6 |
81 PYTHON_VERSIONS = 2.6 |
126 |
|
127 WS_LOGS = $(WS_TOP)/$(MACH)/logs |
|
128 WS_REPO = $(WS_TOP)/$(MACH)/repo |
|
129 WS_TOOLS = $(WS_TOP)/tools |
|
130 WS_MAKE_RULES = $(WS_TOP)/make-rules |
|
131 WS_COMPONENTS = $(WS_TOP)/components |
|
132 WS_INCORPORATIONS = $(WS_TOP)/incorporations |
|
133 WS_LINT_CACHE = $(WS_TOP)/$(MACH)/pkglint-cache |
|
134 |
82 |
135 BASS_O_MATIC = $(WS_TOOLS)/bass-o-matic |
83 BASS_O_MATIC = $(WS_TOOLS)/bass-o-matic |
136 |
84 |
137 CLONEY = $(WS_TOOLS)/cloney |
85 CLONEY = $(WS_TOOLS)/cloney |
138 |
86 |