| 1 | # This file is used when building the Configure script from the metaconfig |
| 2 | # units. Ordinarily, if any *.c or *.h or *.sh file mentions a symbol that can |
| 3 | # be provided by a metaconfig unit, the generated Configure will include the |
| 4 | # relevant probe. But in some cases, that's inappropriate: we have symbols that |
| 5 | # we no longer need to probe for, but must define in perl.h for backwards |
| 6 | # compatibilty with XS modules. Also, our C files contain tokens like "index" |
| 7 | # that are used as the names of Perl builtins, but would be treated by |
| 8 | # metaconfig as implicit requests for a particular unit that we don't need. |
| 9 | # |
| 10 | # Previously, we've used customised "stub" versions of metaconfig units to |
| 11 | # handle this situation, but that doesn't scale (and, in particular, requires |
| 12 | # us to maintain those customised units for as long as the relevant symbols are |
| 13 | # defined by the units in the upstream dist package). |
| 14 | # |
| 15 | # A better approach is to list those symbols here (and invoke metaconfig with |
| 16 | # the "-X .metaconf-exclusions.txt" option when generating Configure); that |
| 17 | # will prevent the relevant units from being used. |
| 18 | # |
| 19 | # See also metaconfig.h, which works in the other direction — it forces units |
| 20 | # to be included, even before specific code using the relevant symbols has been |
| 21 | # written. |
| 22 | |
| 23 | I_LIMITS |
| 24 | I_STDARG |
| 25 | index |
| 26 | rindex |