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

Corey Farrell (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 ]

Corey Farrell updated ASTERISK-27563:
-------------------------------------

    Comment: was deleted

(was: The {{-g3}} option is always correct and we should never strip symbols.  If we did GDB would only be able to find global symbols.  Standard build process is for us to create binaries which include debug symbols, then the person who runs make && make install can strip if they want.  We absolutely should not change this or even create a menuselect option such as STRIP_DEBUG.  I don't know about Debian but rpmbuild will copy the symbols to asterisk-debuginfo RPM before stripping them from the binaries.  So when you build an RPM you get a huge asterisk-debuginfo package but your /usr/sbin/asterisk will be 3MB instead of 14MB.

I haven't tested to confirm this issue but if we are using {{-O3}} when DONT_OPTIMIZE is set that is an important bug.  Do you know what version this started in?  This is important enough to strongly consider dealing with it as a regression (posting to 13.19 and 15.2).  When people post backtraces from optimized binaries we ask them to recompile with DONT_OPTIMIZE, it's very important for that to work properly.

About your build, please confirm you did not use {{./configure --enable-coverage}}.)

> 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
>
>  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  -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  
> notice that pjsip modules get -O2 because it's in the PJPROJECT_CFLAGS variable even though DONT_OPTIMIZE is set.



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



More information about the asterisk-bugs mailing list