pjsip: configuration fixes
v2 cover pjsip: configuration fixes
Hello All!
This two-patch series cleanups and fixes our pjsip configuration options:
- ensure everything is explictly disabled and not left auto-detected,
- except for the epoll support that needs a quirk,
- fix an option value
Cahnges v1 -> v2:
- fix the epoll mess (Luca)
- add tested and acked tags by Luca on second patch
Regards,
Yann E. MORIN.
The following changes since commit 231b317dd3cf2b4b05737231b67f87c529985fef
libgtk3: bump to version 3.22.6 (2017-01-05 16:19:26 +0100)
are available in the git repository at:
git://git.buildroot.org/~ymorin/git/buildroot.git
for you to fetch changes up to c1748115da6b3cd0269388e78450d97df370d387
package/libpjsip: drop path to staging to find libsrtp (2017-01-05 22:06:09 +0100)
----------------------------------------------------------------
Yann E. MORIN (2):
package/libpjsip: disable remaining unspecified options package/libpjsip: drop path to staging to find libsrtp
package/libpjsip/libpjsip.mk | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-)
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH v2 1/2 package/libpjsip: disable remaining unspecified options
There are a bunch of options that are left unspecified; explicitly disable them.
The epoll case is special: the configure script is broken, and will enable it whether we pass --enable-epoll or --disable-epoll. But that's OK because we prefer epoll over the alternative (select). So we do not need to fix it. Which is nice becasue the configure.ac is named aconfigure.ac (yes, with a leading 'a'), so it does not autoreconf nicely... :-/
---
Changes v1 -> v2;
- fix and comment the epoll mess (Luca)
--- package/libpjsip/libpjsip.mk | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+)
package/libpjsip/libpjsip.mk +21 -0
@@ -36,8 +36,29 @@ LIBPJSIP_CONF_OPTS = \ --disable-ilbc-codec \ --disable-webrtc \ --disable-opus \ + --disable-oss \ + --disable-ext-sound \ + --disable-small-filter \ + --disable-large-filter \ + --disable-g711-codec \ + --disable-l16-codec \ + --disable-g722-codec \ + --disable-libsamplerate \ + --disable-sdl \ + --disable-ffmpeg \ + --disable-v4l2 \ + --disable-openh264 \ + --disable-libyuv \ + --disable-ipp \ + --disable-ssl \ + --disable-silk \ --with-external-srtp=$(STAGING_DIR)/usr +# Note: aconfigure.ac is broken: --enable-epoll or --disable-epoll will +# both enable it. But that's OK, epoll is better than the alternative, +# so we want to use it. +LIBPJSIP_CONF_OPTS += --enable-epoll + ifeq ($(BR2_PACKAGE_OPENSSL),y) LIBPJSIP_DEPENDENCIES += openssl LIBPJSIP_CONF_OPTS += --with-ssl=$(STAGING_DIR)/usr
Signature · 1 line
2.7.4
PATCH 1/2 package/libpjsip: disable remaining unspecified options
Hi,
Quoted 34 lines · Yann E. MORIN
There are a bunch of options that are left unspecified; explicitly disable them.
The epoll case is special: the configure script is broken, and will enable it whether we pass --enable-epoll or --disable-epoll. But that's OK because we prefer epoll over the alternative (select). So we do not need to fix it. Which is nice becasue the configure.ac is named aconfigure.ac (yes, with a leading 'a'), so it does not autoreconf nicely... :-/
Signed-off-by Yann E. MORIN <[email protected]>Cc Luca Ceresoli <[email protected]>---
Changes v1 -> v2;
- fix and comment the epoll mess (Luca)--- package/libpjsip/libpjsip.mk | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+)package/libpjsip/libpjsip.mk +6
-0@@ -36,8 +36,29 @@ LIBPJSIP_CONF_OPTS = \ --disable-ilbc-codec \ --disable-webrtc \ --disable-opus \ + --disable-oss \ + --disable-ext-sound \ + --disable-small-filter \ + --disable-large-filter \ + --disable-g711-codec \ + --disable-l16-codec \
package/libpjsip/libpjsip.mk LIBPJSIP_CONF_OPTS = \ · line 54
Quoted 10 lines
package/libpjsip/libpjsip.mk +10
-0+ --disable-g722-codec \ + --disable-libsamplerate \ + --disable-sdl \ + --disable-ffmpeg \ + --disable-v4l2 \ + --disable-openh264 \ + --disable-libyuv \ + --disable-ipp \ + --disable-ssl \ + --disable-silk \
Some of these added lines actually disable something that was previously enabled, as I detailed in [0], and the other ones don't hurt anyway.
package/libpjsip/libpjsip.mk LIBPJSIP_CONF_OPTS = \ · line 60
Quoted 4 lines
package/libpjsip/libpjsip.mk +4
-0+# Note: aconfigure.ac is broken: --enable-epoll or --disable-epoll will +# both enable it. But that's OK, epoll is better than the alternative, +# so we want to use it. +LIBPJSIP_CONF_OPTS += --enable-epoll
And epoll is in Linux since way over a decade now, that's enough!
[0] http://lists.busybox.net/pipermail/buildroot/2017-January/180926.html
Signature · 1 line
Luca
PATCH v2 1/2 package/libpjsip: disable remaining unspecified options
Luca, All,
On 2017-01-06 00:05 +0100, Luca Ceresoli spake thusly:
Quoted 40 lines · Yann E. MORIN
Quoted 39 lines
There are a bunch of options that are left unspecified; explicitly disable them.
The epoll case is special: the configure script is broken, and will enable it whether we pass --enable-epoll or --disable-epoll. But that's OK because we prefer epoll over the alternative (select). So we do not need to fix it. Which is nice becasue the configure.ac is named aconfigure.ac (yes, with a leading 'a'), so it does not autoreconf nicely... :-/
Signed-off-by Yann E. MORIN <[email protected]>Cc Luca Ceresoli <[email protected]>---
Changes v1 -> v2;
- fix and comment the epoll mess (Luca)--- package/libpjsip/libpjsip.mk | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+)package/libpjsip/libpjsip.mk +11
-0@@ -36,8 +36,29 @@ LIBPJSIP_CONF_OPTS = \ --disable-ilbc-codec \ --disable-webrtc \ --disable-opus \ + --disable-oss \ + --disable-ext-sound \ + --disable-small-filter \ + --disable-large-filter \ + --disable-g711-codec \ + --disable-l16-codec \ + --disable-g722-codec \ + --disable-libsamplerate \ + --disable-sdl \ + --disable-ffmpeg \ + --disable-v4l2 \
Quoted 8 lines
package/libpjsip/libpjsip.mk LIBPJSIP_CONF_OPTS = \ · line 54
Quoted 5 lines
package/libpjsip/libpjsip.mk +5
-0+ --disable-openh264 \ + --disable-libyuv \ + --disable-ipp \ + --disable-ssl \ + --disable-silk \Some of these added lines actually disable something that was previously enabled, as I detailed in [0], and the other ones don't hurt anyway.
Well, it does disable stuff, but most if not all of it is due to build ordering and there is no explicit dependency, like samplerate, ssl etc...
It is better to explicitly disable stuff rather than depend on build ordering.
If people are interested in re-enabling those features, they'll have to send some patches to account for the dependencies.
Something that I already did in the biggish asterisk series, for example:
https://patchwork.ozlabs.org/patch/709763/ https://patchwork.ozlabs.org/patch/709756/
;-)
Quoted 8 lines
package/libpjsip/libpjsip.mk LIBPJSIP_CONF_OPTS = \ · line 60
Quoted 4 lines
package/libpjsip/libpjsip.mk +4
-0+# Note: aconfigure.ac is broken: --enable-epoll or --disable-epoll will +# both enable it. But that's OK, epoll is better than the alternative, +# so we want to use it. +LIBPJSIP_CONF_OPTS += --enable-epollAnd epoll is in Linux since way over a decade now, that's enough!
Reviewed-by Luca Ceresoli <[email protected]>
Thanks! :-)
Regards,
Yann E. MORIN.
Quoted 4 lines
[0] http://lists.busybox.net/pipermail/buildroot/2017-January/180926.html
Signature · 1 line
Luca
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH v2 2/2 package/libpjsip: drop path to staging to find libsrtp
In reply to Yann E. MORINAs it happens, specifying the path where to look for libsrtp is not
needed: pjsip does not use the argument to --with-external-srtp as a search path at all; it only checks whether it is 'no' or something else.
--- package/libpjsip/libpjsip.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
package/libpjsip/libpjsip.mk +1 -1
@@ -52,7 +52,7 @@ LIBPJSIP_CONF_OPTS = \ --disable-ipp \ --disable-ssl \ --disable-silk \ - --with-external-srtp=$(STAGING_DIR)/usr + --with-external-srtp # Note: aconfigure.ac is broken: --enable-epoll or --disable-epoll will # both enable it. But that's OK, epoll is better than the alternative,
Signature · 1 line
2.7.4
v2 cover pjsip: configuration fixes
In reply to Yann E. MORINHello,
Quoted 3 lines · Yann E. MORIN
Yann E. MORIN (2):
package/libpjsip: disable remaining unspecified options package/libpjsip: drop path to staging to find libsrtp
Both applied to master. Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com