[asterisk-bugs] [JIRA] (ASTERISK-27563) pjsip modules always get -O2 even when DONT_OPTIMIZE is set

George Joseph (JIRA) noreply at issues.asterisk.org
Mon Jan 8 14:16:39 CST 2018


     [ https://issues.asterisk.org/jira/browse/ASTERISK-27563?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

George Joseph updated ASTERISK-27563:
-------------------------------------

    Description: 
{noformat}
 gcc -o res_pjsip_transport_management.o -c res_pjsip_transport_management.c -MD -MT res_pjsip_transport_management.o -MF .res_pjsip_transport_management.o.d -MP -pthread -I/usr/src/asterisk/asterisk/include    -I/usr/include/libxml2  -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations   -g3  -O0  -march=native -fPIC -DAST_MODULE=\"res_pjsip_transport_management\"  -DPJ_AUTOCONF=1 -O2 -DPJ_IS_BIG_ENDIAN=0 
<gtjoseph> -DPJ_IS_LITTLE_ENDIAN=1 -I/usr/src/asterisk/asterisk/third-party/pjproject/source/pjlib/include -I/usr/src/asterisk/asterisk/third-party/pjproject/source/pjlib-util/include -I/usr/src/asterisk/asterisk/third-party/pjproject/source/pjnath/include -I/usr/src/asterisk/asterisk/third-party/pjproject/source/pjmedia/include -I/usr/src/asterisk/asterisk/third-party/pjproject/source/pjsip/include  
{noformat}
notice that pjsip modules get -O2 because it's in the PJPROJECT_CFLAGS variable



  was:
Somehow the DONT_OPTIMIZE process got messed up and we're always setting -g3 on gcc command lines.  -g3 adds a ton of debugging symbols to what should be a production release.
{noformat}
$ ls -al main/asterisk
-rwxrwxr-x. 1 gtjoseph gtjoseph 14615664 Jan  8 06:27 main/asterisk
$ strip -g main/asterisk
$ ls -al main/asterisk
-rwxrwxr-x. 1 gtjoseph gtjoseph 3128432 Jan  8 06:30 main/asterisk
{noformat}

We should also use -ggdb3 instead of just -g3 to get gdb extensions which include macro processing.   Actually, we should ALWAYS compile with -ggdb3 and then do a strip on the binaries during install if DON"T OPTIMIZE wasn't set.  Actually, actually, we should probably change DONT_OPTIMIZE so it only controls -O and create a new option for STRIP_DEBUG that defaults to yes for non-dev-mode builds.



> pjsip modules always get -O2 even when DONT_OPTIMIZE is set
> -----------------------------------------------------------
>
>                 Key: ASTERISK-27563
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-27563
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Core/BuildSystem
>    Affects Versions: 13.18.5, GIT, 15.1.5
>            Reporter: George Joseph
>              Labels: pjsip
>
> {noformat}
>  gcc -o res_pjsip_transport_management.o -c res_pjsip_transport_management.c -MD -MT res_pjsip_transport_management.o -MF .res_pjsip_transport_management.o.d -MP -pthread -I/usr/src/asterisk/asterisk/include    -I/usr/include/libxml2  -pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations   -g3  -O0  -march=native -fPIC -DAST_MODULE=\"res_pjsip_transport_management\"  -DPJ_AUTOCONF=1 -O2 -DPJ_IS_BIG_ENDIAN=0 
> <gtjoseph> -DPJ_IS_LITTLE_ENDIAN=1 -I/usr/src/asterisk/asterisk/third-party/pjproject/source/pjlib/include -I/usr/src/asterisk/asterisk/third-party/pjproject/source/pjlib-util/include -I/usr/src/asterisk/asterisk/third-party/pjproject/source/pjnath/include -I/usr/src/asterisk/asterisk/third-party/pjproject/source/pjmedia/include -I/usr/src/asterisk/asterisk/third-party/pjproject/source/pjsip/include  
> {noformat}
> notice that pjsip modules get -O2 because it's in the PJPROJECT_CFLAGS variable



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list