#1194: 7 config steps improperly rely on Perl 5 %Config 'OSNAME' element
-----------------------+----------------------------------------------------
Reporter: jkeenan | Owner: jkeenan
Type: bug | Status: assigned
Priority: normal | Milestone:
Component: configure | Version: 1.7.0
Severity: medium | Keywords:
Lang: | Patch:
Platform: |
-----------------------+----------------------------------------------------
Comment(by jkeenan):
Of the configuration steps which follow `auto::arch`, only `gen::platform`
still calls `$conf->data->get_p5('OSNAME')`. Eliminating this last call
is, however, a bit tricky, as it is bound up with that step's internal
method `_get_platform()`, which is used to set a value for a `$platform`
used in path names and header file content. `_get_platform()` also
depends on the value of Parrot::Configure attribute `archname`, which, in
most cases, is ultimately dependent on what is read in the Perl 5
`%Config`.
IMO, it would be better if a value for this `$platform` were determined
much earlier in the configuration process -- most likely in
`config/auto/arch.pm`, at the same time that the values for `cpuarch` and
`osname` are finalized. I believe that the `gen` configuration step
classes should not be making determinations about important configuration
data such as the platform descriptor. Rather, they should be doing only
what their name implies, ''i.e.,'' '''generating''' files from data
accumulated earlier in the Parrot::Configure object.
That, however, is a bit too much scope creep for one ticket. I will keep
this ticket open for a few more days to allow for any complaints or test
failures. Then, after I've applied a patch dealing with a similar issue
in ''config/auto/format.pm'' (see TT #1236), I will open a new TT which
moves determination of the platform descriptor out of `gen::platform` and
into (in all likelihood) `auto::arch`.
Thank you very much.
kid51
--
Ticket URL: <https://trac.parrot.org/parrot/ticket/1194#comment:8>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets