[SR-Users] [sr-dev] Branch 5.0 created

Juha Heinanen jh at tutpro.com
Fri Feb 10 20:37:37 CET 2017


Daniel-Constantin Mierla writes:

> They were reported in the past, iirc, but apparently only by a specific
> version of compiler, or maybe some specific flags to gcc.
...
> Are you running special gcc or with other flags than the default?

The warnings appear on amd64 architecture (I don't have i386 anymore)
and I'm using the same flags as in official kamailio debian jessie
rules.

The relevant parts of my rules file are below and the dpkg-buildflags
commands produce:

$ dpkg-buildflags --get CPPFLAGS
-D_FORTIFY_SOURCE=2
$ dpkg-buildflags --get CFLAGS
-g -O2 -fstack-protector-strong -Wformat -Werror=format-security
$ dpkg-buildflags --get CXXFLAGS
-g -O2 -fstack-protector-strong -Wformat -Werror=format-security
$ dpkg-buildflags --get LDFLAGS
-Wl,-z,relro

-- Juha

-----------------------------------------------------------------------

# CFLAGS + CPPFLAGS -> CC_EXTRA_OPTS
CC_EXTRA_OPTS := $(shell dpkg-buildflags --get CPPFLAGS)
CC_EXTRA_OPTS += $(shell dpkg-buildflags --get CFLAGS)
CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS)
# LDFLAGS -> LD_EXTRA_OPTS
LD_EXTRA_OPTS := $(shell dpkg-buildflags --get LDFLAGS)

# https://wiki.debian.org/ReproducibleBuilds/
CC_EXTRA_OPTS += -DVERSION_NODATE
...
	$(MAKE) FLAVOUR=kamailio cfg prefix=/usr cfg_prefix=$(BASEDIR) \
			cfg_target=/etc/sip-proxy/ \
			run_target=/var/run/sip-proxy \
			BASEDIR=$(BASEDIR) \
                        FMSTATS=$(FMSTATS) KMSTATS=$(KMSTATS) \
			MAIN_NAME=$(MAIN_NAME) STUN=$(STUN) \
			skip_modules="$(EXCLUDED_MODULES) $(EXTRA_EXCLUDED_MODULES)" \
			CC_EXTRA_OPTS="$(CC_EXTRA_OPTS)" \
			LD_EXTRA_OPTS="$(LD_EXTRA_OPTS)" \
			group_include="opensipg"

> 
> Cheers,
> Daniel
> 
> On 09/02/2017 22:48, Juha Heinanen wrote:
> > Daniel-Constantin Mierla writes:
> >
> >> the GIT branch 5.0 has just been created, it will host the release
> >> series 5.0.x. To get this branch from GIT, you can use:
> >>
> >> git clone https://github.com/kamailio/kamailio.git kamailio
> >> cd kamailio
> >> git checkout -b 5.0 origin/5.0
> >>
> >> Hopefully before the end of the month the full release of 5.0.0 will
> >> be out.
> > Good, I haven't noticed any operational issues with 5.0 in my tests.
> >
> > The only one is the compilation warnings below on Debian Jessie.  It
> > would be nice to get rid of them and get a clean compilation.
> >
> > -- Juha
> >
> > CC (gcc) [sip-proxy]		core/cfg/cfg_ctx.o
> > core/cfg/cfg_ctx.c: In function 'cfg_set_now':
> > core/cfg/cfg_ctx.c:485:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      group_inst = (cfg_group_inst_t *)translate_pointer((char *)new_array,
> >      ^
> > core/cfg/cfg_ctx.c:489:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      CFG_GROUP_META(block, group)->array = new_array;
> >      ^
> > core/cfg/cfg_ctx.c:559:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >     if (block && (CFG_GROUP_META(block, group)->array != CFG_GROUP_META(*cfg_global, group)->array))
> >     ^
> > core/cfg/cfg_ctx.c:559:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> > core/cfg/cfg_ctx.c:560:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      new_array = CFG_GROUP_META(block, group)->array;
> >      ^
> > core/cfg/cfg_ctx.c:579:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      replaced[i] = CFG_GROUP_META(*cfg_global, group)->array;
> >      ^
> > core/cfg/cfg_ctx.c: In function 'cfg_commit':
> > core/cfg/cfg_ctx.c:1120:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      if (!(CFG_GROUP_META(block, group)->array = 
> >      ^
> > core/cfg/cfg_ctx.c:1128:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      replaced[replaced_num] = CFG_GROUP_META(*cfg_global, group)->array;
> >      ^
> > core/cfg/cfg_ctx.c:1180:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      && (CFG_GROUP_META(block, changed->group)->array != CFG_GROUP_META(*cfg_global, changed->group)->array)
> >      ^
> > core/cfg/cfg_ctx.c:1180:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> > core/cfg/cfg_ctx.c:1185:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      replaced[replaced_num] = CFG_GROUP_META(*cfg_global, group)->array;
> >      ^
> > core/cfg/cfg_ctx.c:1220:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >     if (CFG_GROUP_META(block, group)->array
> >     ^
> > core/cfg/cfg_ctx.c:1221:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      && (CFG_GROUP_META(block, group)->array != CFG_GROUP_META(*cfg_global, group)->array)
> >      ^
> > core/cfg/cfg_ctx.c:1221:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> > core/cfg/cfg_ctx.c:1223:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      shm_free(CFG_GROUP_META(block, group)->array);
> >      ^
> > core/cfg/cfg_ctx.c: In function 'cfg_add_group_inst':
> > core/cfg/cfg_ctx.c:1577:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >   CFG_GROUP_META(block, group)->array = new_array;
> >   ^
> > core/cfg/cfg_ctx.c:1578:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >   CFG_GROUP_META(block, group)->num++;
> >   ^
> > core/cfg/cfg_ctx.c:1580:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >   if (CFG_GROUP_META(*cfg_global, group)->array) {
> >   ^
> > core/cfg/cfg_ctx.c:1589:3: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >    replaced[0] = CFG_GROUP_META(*cfg_global, group)->array;
> >    ^
> > core/cfg/cfg_ctx.c: In function 'cfg_del_group_inst':
> > core/cfg/cfg_ctx.c:1673:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >   CFG_GROUP_META(block, group)->array = new_array;
> >   ^
> > core/cfg/cfg_ctx.c:1674:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >   CFG_GROUP_META(block, group)->num--;
> >   ^
> > core/cfg/cfg_ctx.c:1676:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >   if (CFG_GROUP_META(*cfg_global, group)->array) {
> >   ^
> > core/cfg/cfg_ctx.c:1687:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >      && (*(char **)(group_inst->vars + var->offset) != NULL)
> >      ^
> > core/cfg/cfg_ctx.c:1705:6: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >       && (*(char **)(group_inst->vars + var->offset) != NULL)
> >       ^
> > core/cfg/cfg_ctx.c:1707:6: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >       replaced[num] = *(char **)(group_inst->vars + var->offset);
> >       ^
> > core/cfg/cfg_ctx.c:1713:3: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
> >    replaced[num] = CFG_GROUP_META(*cfg_global, group)->array;
> >    ^
> 
> -- 
> Daniel-Constantin Mierla
> www.twitter.com/miconda -- www.linkedin.com/in/miconda
> Kamailio Advanced Training - Mar 6-8 (Europe) and Mar 20-22 (USA) - www.asipto.com
> Kamailio World Conference - May 8-10, 2017 - www.kamailioworld.com



More information about the sr-users mailing list