Permalink
Browse files

[GH #867] icu 4.4 uses a wrong uset_openEmpty(); function declaration

Since we cannot check icu in auto::warnings (it comes later), remove
-Werror=strict-prototypes from src/string/encoding/shared.c.

Note that I noticed an apprently wrong -I$(@D) macro in the suffix override rules, which looks wrong, but does no harm.
  • Loading branch information...
1 parent 80b4ecd commit 1cc9caa17a19545df0cecf3800edf01f8e351fe5 Reini Urban committed Nov 14, 2012
Showing with 11 additions and 4 deletions.
  1. +5 −0 config/auto/warnings.pm
  2. +6 −4 config/gen/makefiles/root.in
View
@@ -327,6 +327,11 @@ sub runstep {
push @{$self->{'warnings'}{$compiler}{'basic'}},
'-fvisibility=hidden';
};
+
+ # icu4.4 has a uset_openEmpty() declaration without (void)
+ $self->{'warnings'}{$compiler}{'never'}{'-Werror=strict-prototypes'} =
+ [ 'src/string/encoding/shared.c' ];
+
if ($conf->data->get('clang') and $compiler eq 'g++') { # clang++
$self->{'warnings'}{'g++'}{'override'} = {
'-Wno-parentheses-equality' => [ qw(
@@ -1959,11 +1959,13 @@ src/string/encoding/tables$(O) : \
src/string/encoding/tables.h \
src/string/encoding/tables.c
+## SUFFIX OVERRIDE
src/string/encoding/shared$(O) : \
- $(PARROT_H_HEADERS) \
- src/string/encoding/shared.h \
- src/string/encoding/shared.c \
- src/string/encoding/tables.h
+ $(PARROT_H_HEADERS) \
+ src/string/encoding/shared.h \
+ src/string/encoding/shared.c \
+ src/string/encoding/tables.h
+ $(CC) $(CFLAGS) @optimize::src/string/encoding/shared.c@ @ccwarn::src/string/encoding/shared.c@ @cc_shared@ -I$(@D) @cc_o_out@$@ -c src/string/encoding/shared.c
src/string/encoding/null$(O) : \
$(PARROT_H_HEADERS) \

1 comment on commit 1cc9caa

Contributor

gerdr commented on 1cc9caa Nov 15, 2012

see also #747 - imo the proper fix is to use -isystem for 3rd party headers

Please sign in to comment.