author | Alan Coopersmith <Alan.Coopersmith@Oracle.COM> |
Mon, 15 Aug 2011 14:54:19 -0700 | |
changeset 1190 | faa50483142d |
parent 1154 | 941fbafb8c39 |
child 1207 | 996eb6e88a18 |
permissions | -rw-r--r-- |
970
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
1 |
# |
1153
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
2 |
# Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved. |
970
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
3 |
# |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
4 |
# Permission is hereby granted, free of charge, to any person obtaining a |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
5 |
# copy of this software and associated documentation files (the "Software"), |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
6 |
# to deal in the Software without restriction, including without limitation |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
7 |
# the rights to use, copy, modify, merge, publish, distribute, sublicense, |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
8 |
# and/or sell copies of the Software, and to permit persons to whom the |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
9 |
# Software is furnished to do so, subject to the following conditions: |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
10 |
# |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
11 |
# The above copyright notice and this permission notice (including the next |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
12 |
# paragraph) shall be included in all copies or substantial portions of the |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
13 |
# Software. |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
14 |
# |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
15 |
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
16 |
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
17 |
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
18 |
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
19 |
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
20 |
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
21 |
# DEALINGS IN THE SOFTWARE. |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
22 |
# |
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
23 |
|
1153
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
24 |
<transform pkg -> default pkg.obsolete false> |
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
25 |
<transform pkg -> default pkg.renamed false> |
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
26 |
|
1190
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
27 |
# |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
28 |
# Generate a short package name for use in facet.version-lock |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
29 |
# |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
30 |
<transform pkg pkg.fmri=(pkg:/)?([^@]*) -> default pkg.name %<2>> |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
31 |
|
1153
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
32 |
# |
1190
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
33 |
# All packages should be included in the consolidation |
1153
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
34 |
# incorporation, unless marked otherwise |
970
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
35 |
# |
1153
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
36 |
<transform pkg -> default org.opensolaris.noincorp false> |
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
37 |
<transform pkg -> default org.opensolaris.incorporation \ |
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
38 |
pkg:/consolidation/X/X-incorporation> |
1190
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
39 |
|
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
40 |
# |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
41 |
# Most packages should have a version-lock facet named after the package |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
42 |
# in order to allow an escape hatch for systems which need a different |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
43 |
# version of the package and are willing to accept the risk of using an |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
44 |
# untested combination. Renamed packages do not need this facet. |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
45 |
# |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
46 |
|
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
47 |
<transform pkg pkg.renamed=true -> \ |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
48 |
default org.opensolaris.version-lock-facet false> |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
49 |
<transform pkg -> \ |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
50 |
default org.opensolaris.version-lock-facet true> |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
51 |
|
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
52 |
<transform pkg org.opensolaris.noincorp=false \ |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
53 |
org.opensolaris.version-lock-facet=true -> print \ |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
54 |
%(org.opensolaris.incorporation): depend fmri=%(pkg.fmri) type=incorporate \ |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
55 |
facet.version-lock.%(pkg.name)=%(org.opensolaris.version-lock-facet)> |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
56 |
<transform pkg org.opensolaris.noincorp=false \ |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
57 |
org.opensolaris.version-lock-facet=false -> print \ |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
58 |
%(org.opensolaris.incorporation): depend fmri=%(pkg.fmri) type=incorporate> |
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
59 |
|
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
60 |
# Add dependency on the incorporation to each non-obsolete package in it |
1153
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
61 |
<transform pkg pkg.obsolete=false org.opensolaris.noincorp=false -> emit \ |
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
62 |
depend fmri=%(org.opensolaris.incorporation) type=require> |
1190
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
63 |
|
970
272328fe1b4a
6941932 X should be able to build IPS packages natively
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
diff
changeset
|
64 |
<transform set name=org.opensolaris.noincorp -> drop> |
1153
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
65 |
<transform set name=org.opensolaris.incorporation -> drop> |
1190
faa50483142d
7072864 X needs to implement the 'unlock' facet feature
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1154
diff
changeset
|
66 |
<transform set name=org.opensolaris.version-lock-facet -> drop> |
1153
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
67 |
|
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
68 |
# |
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
69 |
# Packages that are neither obsolete nor renamed should be included in |
1154
941fbafb8c39
7034214 X-redistributable should become X-all and use depend type=group
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1153
diff
changeset
|
70 |
# the X-all group package, unless marked otherwise |
1153
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
71 |
# |
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
72 |
<transform pkg -> default org.opensolaris.nogroup false> |
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
73 |
<transform pkg pkg.renamed=false pkg.obsolete=false \ |
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
74 |
org.opensolaris.nogroup=false pkg.fmri=^(.*)@.* -> print \ |
1154
941fbafb8c39
7034214 X-redistributable should become X-all and use depend type=group
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
1153
diff
changeset
|
75 |
pkg:/consolidation/X/X-all: depend fmri=%<1> type=group> |
1153
912dd58dfc72
7059188 simplify and mogrify X meta-package synthesis
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents:
982
diff
changeset
|
76 |
<transform set name=org.opensolaris.nogroup -> drop> |