@@ -90,13 +90,13 @@ Attribute names are case sensitive.
9090 with which this version is compatible.
9191 This information is used when a consumer requests a specific version.
9292 If the version requested is equal to or newer
93- than the :attribute: `compat_version `,
93+ than the :attribute: `! compat_version `,
9494 the package may be used.
9595
9696 If not specified,
9797 the package is not compatible with previous versions
98- (i.e. :attribute: `compat_version `
99- is implicitly equal to :attribute: `version `).
98+ (i.e. :attribute: `! compat_version `
99+ is implicitly equal to :attribute: `~package. version `).
100100
101101.. ----------------------------------------------------------------------------
102102 .. cps :attribute :: compile_features
@@ -120,7 +120,7 @@ Attribute names are case sensitive.
120120
121121 A map may be used instead to give different values
122122 depending on the language of the consuming source file.
123- Handling of such shall be the same as for `definitions `_ .
123+ Handling of such shall be the same as for :attribute: `definitions `.
124124
125125.. ----------------------------------------------------------------------------
126126 .. cps :attribute :: compile_requires
@@ -129,7 +129,7 @@ Attribute names are case sensitive.
129129
130130 Specifies additional components required by a component
131131 which are needed only at the compile stage.
132- Unlike ` requires ( component) `_ ,
132+ Unlike :attribute: ` component.requires ` ,
133133 only the required components' compilation-related attributes
134134 should be applied transitively;
135135 link requirements of the required component(s) should be ignored.
@@ -244,7 +244,8 @@ Attribute names are case sensitive.
244244 (which will be known by the tool).
245245 See also `Prefix Determination `_ for details.
246246
247- Exactly **one ** of ``cps_path `` or `prefix `_ is required.
247+ Exactly **one ** of :attribute: `!cps_path ` or :attribute: `prefix `
248+ is required.
248249
249250.. ----------------------------------------------------------------------------
250251 .. cps :attribute :: cps_version
@@ -260,7 +261,7 @@ Attribute names are case sensitive.
260261 CPS version numbering follows |semver |_.
261262 That is, tools that support CPS version ``<X>.<Y> ``
262263 are expected to be able to read files
263- with :attribute: `cps_version ` ``<X>.<Z> ``,
264+ with :attribute: `! cps_version ` ``<X>.<Z> ``,
264265 even for Z > Y
265266 (with the understanding that, in such cases, the tool
266267 may miss non-critical information that the CPS provided).
@@ -314,7 +315,7 @@ Attribute names are case sensitive.
314315
315316 Specifies additional components required by a component
316317 which are needed only by the dynamic library loader.
317- Unlike ` requires ( component) `_ or `link_requires `_ ,
318+ Unlike :attribute: ` component.requires ` or :attribute: `link_requires `,
318319 these are not used to resolve symbol references of the consumer,
319320 but represent "private" implementation requirements
320321 of the component on which this attribute appears.
@@ -367,7 +368,7 @@ Attribute names are case sensitive.
367368
368369 A map may be used instead to give different values
369370 depending on the language of the consuming source file.
370- Handling of such shall be the same as for `definitions `_ .
371+ Handling of such shall be the same as for :attribute: `definitions `.
371372
372373.. ----------------------------------------------------------------------------
373374 .. cps :attribute :: isa
@@ -448,7 +449,7 @@ Attribute names are case sensitive.
448449 :default: ["c"]
449450
450451 Specifies the ABI language or languages of a static library
451- (`type `_ :string: `"archive" `).
452+ (:attribute: `type ` :string: `"archive" `).
452453 Officially supported (case-insensitive) values are
453454 :string: `"c" ` (no special handling required) and
454455 :string: `"cpp" ` (consuming the static library
@@ -462,7 +463,7 @@ Attribute names are case sensitive.
462463 Specifies a list of additional libraries (as paths, not components)
463464 that must be linked against when linking code that consumes the component.
464465 (Note that packages should avoid using this attribute if at all possible.
465- Use ` requires ( component) `_ instead whenever possible.)
466+ Use :attribute: ` component.requires ` instead whenever possible.)
466467
467468.. ----------------------------------------------------------------------------
468469 .. cps :attribute :: link_location
@@ -476,7 +477,7 @@ Attribute names are case sensitive.
476477 on platforms where the library is separated into multiple file components.
477478 For example, on Windows,
478479 this attribute shall give the location of the ``.lib ``,
479- while `location `_ shall give the location of the ``.dll ``.
480+ while :attribute: `location ` shall give the location of the ``.dll ``.
480481
481482 If the path starts with ``@prefix@ ``,
482483 the package's prefix is substituted
@@ -494,7 +495,7 @@ Attribute names are case sensitive.
494495
495496 Specifies additional components required by a component
496497 which are needed only at the link stage.
497- Unlike ` requires ( component) `_ ,
498+ Unlike :attribute: ` component.requires ` ,
498499 only the required components' link dependencies
499500 should be applied transitively;
500501 additional properties such as compile and include attributes
@@ -514,7 +515,7 @@ Attribute names are case sensitive.
514515 such as a ``.so `` or ``.jar ``.
515516 (For Windows DLL components,
516517 this should be the location of the ``.dll ``.
517- See also `link_location `_ .)
518+ See also :attribute: `link_location `.)
518519
519520 If the path starts with ``@prefix@ ``,
520521 the package's prefix is substituted
@@ -535,8 +536,8 @@ Attribute names are case sensitive.
535536 the name of the CPS file
536537 without the ``.cps `` suffix
537538 must exactly match (including case)
538- either :attribute: `name ` as-is,
539- or :attribute: `name ` converted to lower case.
539+ either :attribute: `! name ` as-is,
540+ or :attribute: `! name ` converted to lower case.
540541
541542.. ----------------------------------------------------------------------------
542543 .. cps :attribute :: platform
@@ -568,7 +569,8 @@ Attribute names are case sensitive.
568569 for non-relocatable package.
569570 See also `Prefix Determination `_.
570571
571- Exactly **one ** of `cps_path `_ or ``prefix `` is required.
572+ Exactly **one ** of :attribute: `cps_path ` or :attribute: `!prefix `
573+ is required.
572574
573575.. ----------------------------------------------------------------------------
574576 .. cps :attribute :: requires
@@ -580,12 +582,12 @@ Attribute names are case sensitive.
580582 This is used, for example, to indicate transitive dependencies.
581583 Relative component names are interpreted relative to the current package.
582584 Absolute component names must refer to a package required by this package
583- (see ` requires ( package) `_ ).
585+ (see :attribute: ` package.requires ` ).
584586 Compile and link attributes should be applied transitively,
585587 as if the consuming component also directly consumed the components
586588 required by the component being consumed.
587589
588- See also `link_requires `_ .
590+ See also :attribute: `link_requires `.
589591
590592.. ----------------------------------------------------------------------------
591593 .. cps :attribute :: requires
@@ -650,7 +652,7 @@ Attribute names are case sensitive.
650652 :overload:
651653
652654 Specifies the version of the package.
653- The format of this string is determined by `version_schema `_ .
655+ The format of this string is determined by :attribute: `version_schema `.
654656
655657 If not provided, the CPS will not satisfy any request
656658 for a specific version of the package.
@@ -664,7 +666,7 @@ Attribute names are case sensitive.
664666 Specifies the required version of a package.
665667 If omitted, any version of the required package is acceptable.
666668 Semantics are the same
667- as for the :attribute: `version ` attribute of a |package |.
669+ as for the :attribute: `~package. version ` attribute of a |package |.
668670
669671.. ----------------------------------------------------------------------------
670672 .. cps :attribute :: version_schema
@@ -692,7 +694,7 @@ Attribute names are case sensitive.
692694 It does not imply anything
693695 about the compatibility or incompatibility
694696 of various versions of a package.
695- See also `compat_version `_ .
697+ See also :attribute: `compat_version `.
696698
697699 - :string: `simple `
698700
0 commit comments