Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

at least ext/* should be built with the full warning flags #14069

Open
p5pRT opened this issue Sep 3, 2014 · 6 comments
Open

at least ext/* should be built with the full warning flags #14069

p5pRT opened this issue Sep 3, 2014 · 6 comments

Comments

@p5pRT
Copy link

p5pRT commented Sep 3, 2014

Migrated from rt.perl.org#122694 (status was 'open')

Searchable as RT122694$

@p5pRT
Copy link
Author

p5pRT commented Sep 3, 2014

From @jhi

Currently the C compiler warning flags are not propagated to the ext/* builds. They should be.

The flags can be grabbed from the "cflags" script generated from the "cflags.SH". (If there's no such script at the top level, the UNIXy build process was probably not involved, and never mind.)

(Though, in Win32, there are probably some VC warning flags we could deploy. The more compilers the merrier.)

I tried looking at make_ext.pl and EU​::MM but for some reason got this hammering migraine.

(Possibly also include dist/*, since the core "half-controls" those)

(If we get crazy enough, also cpan/*, to raise the robustness level of at least those CPAN modules that have been deemed important enough to be in the core)

@p5pRT
Copy link
Author

p5pRT commented Sep 3, 2014

From @Leont

On Wed, Sep 3, 2014 at 4​:46 PM, Jarkko Hietaniemi <perlbug-followup@​perl.org

wrote​:

Currently the C compiler warning flags are not propagated to the ext/*
builds. They should be.

The flags can be grabbed from the "cflags" script generated from the
"cflags.SH". (If there's no such script at the top level, the UNIXy build
process was probably not involved, and never mind.)

(Though, in Win32, there are probably some VC warning flags we could
deploy. The more compilers the merrier.)

I tried looking at make_ext.pl and EU​::MM but for some reason got this
hammering migraine.

(Possibly also include dist/*, since the core "half-controls" those)

(If we get crazy enough, also cpan/*, to raise the robustness level of at
least those CPAN modules that have been deemed important enough to be in
the core)

I would guess the obvious way to do this is to add a %Config option with
those arguments, and a MakeMaker option to add them to the compile commands.

Leon

@p5pRT
Copy link
Author

p5pRT commented Sep 3, 2014

The RT System itself - Status changed from 'new' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Sep 4, 2014

From @jhi

On Wednesday-201409-03, 19​:15, Leon Timmermans wrote​:

I would guess the obvious way to do this is to add a %Config option with
those arguments, and a MakeMaker option to add them to the compile commands.

Not so obvious because currently those warning options are selected
completely outside (or after) Configure.

@p5pRT
Copy link
Author

p5pRT commented Sep 4, 2014

From @greerga

On Wed, 3 Sep 2014, Jarkko Hietaniemi wrote​:

# New Ticket Created by Jarkko Hietaniemi
# Please include the string​: [perl #122694]
# in the subject line of all future correspondence about this issue.
# <URL​: https://rt-archive.perl.org/perl5/Ticket/Display.html?id=122694 >

Currently the C compiler warning flags are not propagated to the ext/* builds. They should be.

The flags can be grabbed from the "cflags" script generated from the "cflags.SH". (If there's no such script at the top level, the UNIXy build process was probably not involved, and never mind.)

(Though, in Win32, there are probably some VC warning flags we could deploy. The more compilers the merrier.)

I tried looking at make_ext.pl and EU​::MM but for some reason got this hammering migraine.

(Possibly also include dist/*, since the core "half-controls" those)

(If we get crazy enough, also cpan/*, to raise the robustness level of at least those CPAN modules that have been deemed important enough to be in the core)

Doing "cpan/*" with at least enforcing C89 variable declarations might
have prevented the Scalar-List-Utils update from failing on Win32, so that
would be a good first step.

--
George Greer

@p5pRT
Copy link
Author

p5pRT commented Sep 4, 2014

From @jhi

(If we get crazy enough, also cpan/*, to raise the robustness level of at

least those CPAN modules that have been deemed important enough to be in
the core)

I would guess the obvious way to do this is to add a %Config option with
those arguments, and a MakeMaker option to add them to the compile commands.

http​://perl5.git.perl.org/perl.git/commit/2313e9ca3be65223d835c40b25c76765e8c35547

now grabs the extra flags during configpm and propagates them as
$Config{ccwarnflags} and $Config{ccstdflags}.

Now how do we get them used by MM, say, if PERL_CORE=1?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants