[OE-core] [PATCH] automake 1.12.3: fix warnings
Saul Wold
sgw at linux.intel.com
Thu Sep 6 18:49:47 UTC 2012
On 09/06/2012 02:49 AM, Constantin Musca wrote:
> - don't fail when an autoconf tool tries to pass "--warning=cross"
> to automake
> - don't show a warning when the configure.in file exists
>
> Signed-off-by: Constantin Musca <constantinx.musca at intel.com>
> ---
> .../automake/automake/add-cross-warning.patch | 91 ++++++++++++++++++++
> .../automake/automake/no-configure.in-warn.patch | 19 ++++
> meta/recipes-devtools/automake/automake_1.12.3.bb | 2 +
> 3 files changed, 112 insertions(+)
> create mode 100644 meta/recipes-devtools/automake/automake/add-cross-warning.patch
> create mode 100644 meta/recipes-devtools/automake/automake/no-configure.in-warn.patch
>
> diff --git a/meta/recipes-devtools/automake/automake/add-cross-warning.patch b/meta/recipes-devtools/automake/automake/add-cross-warning.patch
> new file mode 100644
> index 0000000..db0871e
> --- /dev/null
> +++ b/meta/recipes-devtools/automake/automake/add-cross-warning.patch
> @@ -0,0 +1,91 @@
> +Add cross compilation warning option
> +
While the below patch is one solution, maybe it would be better to see
how it's getting called and fix it at the caller level (autoconf?)
I assigned a bug to you that address this.
> +Upstream-Status: Inappropriate [embedded specific]
> +
> +Signed-off-by: Constantin Musca <constantinx.musca at intel.com>
> +
> +--- a/aclocal.in
> ++++ b/aclocal.in
> +@@ -942,6 +942,7 @@ Options:
> + -W, --warnings=CATEGORY report the warnings falling in CATEGORY
> +
> + Warning categories include:
> ++ cross cross compilation issues
> + syntax dubious syntactic constructs (default)
> + unsupported unknown macros (default)
> + all all the warnings (default)
> +--- a/doc/automake.info-1
> ++++ b/doc/automake.info-1
> +@@ -2291,6 +2291,9 @@ misunderstand this paragraph: `automake'
> + extra portability issues related to obscure tools. One
> + example of such a tool is the Microsoft `lib' archiver.
> +
> ++ `cross'
> ++ cross compilation issues
> ++
> + `syntax'
> + weird syntax, unused variables, typos
> +
> +@@ -2821,6 +2824,9 @@ File: automake.info, Node: aclocal Opti
> +
> + `--warnings=CATEGORY'
> + Output warnings falling in CATEGORY. CATEGORY can be one of:
> ++ `cross'
> ++ cross compilation issues
> ++
> + `syntax'
> + dubious syntactic constructs, underquoted macros, unused
> + macros, etc.
> +--- a/lib/Automake/ChannelDefs.pm
> ++++ b/lib/Automake/ChannelDefs.pm
> +@@ -97,6 +97,10 @@ Errors related to GNITS Standards (silen
> +
> + Internal errors. Use C<&prog_error> to send messages over this channel.
> +
> ++=item C<cross>
> ++
> ++cross compilation issues
> ++
> + =item C<gnu>
> +
> + Warnings related to GNU Coding Standards.
> +@@ -155,6 +159,7 @@ register_channel 'automake', type => 'fa
> + uniq_part => UP_NONE, ordered => 0;
> +
> + register_channel 'extra-portability', type => 'warning', silent => 1;
> ++register_channel 'cross', type => 'warning';
> + register_channel 'gnu', type => 'warning';
> + register_channel 'obsolete', type => 'warning', silent => 1;
> + register_channel 'override', type => 'warning', silent => 1;
> +@@ -185,6 +190,7 @@ sub usage ()
> + {
> + print <<EOF;
> + Warning categories include:
> ++ cross cross compilation issues
> + gnu GNU coding standards (default in gnu and gnits modes)
> + obsolete obsolete features or constructions
> + override user redefinitions of Automake rules or variables
> +@@ -273,7 +279,11 @@ sub switch_warning ($)
> + $has_no = 1;
> + }
> +
> +- if ($cat eq 'all')
> ++ if ($cat eq 'cross')
> ++ {
> ++ setup_channel_type 'warning', silent => $has_no;
> ++ }
> ++ elsif ($cat eq 'all')
> + {
> + setup_channel_type 'warning', silent => $has_no;
> + }
> +--- a/doc/automake.texi
> ++++ b/doc/automake.texi
> +@@ -2681,6 +2681,8 @@ Print the version number of Automake and
> + Output warnings falling in @var{category}. @var{category} can be
> + one of:
> + @table @code
> ++ at item cross
> ++warnings related to cross compilation issues
> + @item gnu
> + warnings related to the GNU Coding Standards
> + (@pxref{Top, , , standards, The GNU Coding Standards}).
> diff --git a/meta/recipes-devtools/automake/automake/no-configure.in-warn.patch b/meta/recipes-devtools/automake/automake/no-configure.in-warn.patch
> new file mode 100644
> index 0000000..46329a5
> --- /dev/null
> +++ b/meta/recipes-devtools/automake/automake/no-configure.in-warn.patch
> @@ -0,0 +1,19 @@
> +Don't show a warning if configure.in exists
> +
> +Upstream-Status: Inappropriate [embedded specific]
> +
> +Signed-off-by: Constantin Musca <constantinx.musca at intel.com>
> +
> +--- a/lib/Automake/Configure_ac.pm
> ++++ b/lib/Automake/Configure_ac.pm
> +@@ -77,8 +77,8 @@ sub find_configure_ac (;@)
> +
> + if (-f $configure_in)
> + {
> +- msg ('obsolete', "autoconf input should be named 'configure.ac'," .
> +- " not 'configure.in'");
> ++# msg ('obsolete', "autoconf input should be named 'configure.ac'," .
> ++# " not 'configure.in'");
I think this is an important warning.
I am not sure about this change, where is it occuring from? It might be
better to fix the packages that use configure.in for automake instead of
working around this.
> + if (-f $configure_ac)
> + {
> + msg ('unsupported',
> diff --git a/meta/recipes-devtools/automake/automake_1.12.3.bb b/meta/recipes-devtools/automake/automake_1.12.3.bb
> index 25069d7..c10adaf 100644
> --- a/meta/recipes-devtools/automake/automake_1.12.3.bb
> +++ b/meta/recipes-devtools/automake/automake_1.12.3.bb
> @@ -37,6 +37,8 @@ PATHFIXPATCH_virtclass-nativesdk = ""
> SRC_URI += "${PATHFIXPATCH} \
> file://prefer-cpio-over-pax-for-ustar-archives.patch \
> file://python-libdir.patch \
> + file://add-cross-warning.patch \
> + file://no-configure.in-warn.patch \
> file://py-compile-compile-only-optimized-byte-code.patch"
>
> SRC_URI[md5sum] = "d2af8484de94cdee16d89c50aaa1c729"
>
More information about the Openembedded-core
mailing list