libpjsip.mk 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. ################################################################################
  2. #
  3. # libpjsip
  4. #
  5. ################################################################################
  6. LIBPJSIP_VERSION = 2.14
  7. LIBPJSIP_SOURCE = pjproject-$(LIBPJSIP_VERSION).tar.gz
  8. LIBPJSIP_SITE = $(call github,pjsip,pjproject,$(LIBPJSIP_VERSION))
  9. LIBPJSIP_LICENSE = GPL-2.0+
  10. LIBPJSIP_LICENSE_FILES = COPYING
  11. LIBPJSIP_CPE_ID_VENDOR = teluu
  12. LIBPJSIP_CPE_ID_PRODUCT = pjsip
  13. LIBPJSIP_INSTALL_STAGING = YES
  14. LIBPJSIP_MAKE = $(MAKE1)
  15. LIBPJSIP_CFLAGS = $(TARGET_CFLAGS) -DPJ_HAS_IPV6=1
  16. # relocation truncated to fit: R_68K_GOT16O
  17. ifeq ($(BR2_m68k_cf),y)
  18. LIBPJSIP_CFLAGS += -mxgot
  19. endif
  20. LIBPJSIP_CONF_ENV = \
  21. LD="$(TARGET_CC)" \
  22. CFLAGS="$(LIBPJSIP_CFLAGS)"
  23. LIBPJSIP_CONF_OPTS = \
  24. --disable-resample \
  25. --disable-g7221-codec \
  26. --disable-ilbc-codec \
  27. --disable-libwebrtc \
  28. --disable-ext-sound \
  29. --disable-g711-codec \
  30. --disable-l16-codec \
  31. --disable-g722-codec \
  32. --disable-ipp \
  33. --disable-silk
  34. # Note: aconfigure.ac is broken: --enable-epoll or --disable-epoll will
  35. # both enable it. But that's OK, epoll is better than the alternative,
  36. # so we want to use it.
  37. LIBPJSIP_CONF_OPTS += --enable-epoll
  38. ifeq ($(BR2_PACKAGE_ALSA_LIB_MIXER),y)
  39. LIBPJSIP_DEPENDENCIES += alsa-lib
  40. LIBPJSIP_CONF_OPTS += --enable-sound
  41. else
  42. LIBPJSIP_CONF_OPTS += --disable-sound
  43. endif
  44. ifeq ($(BR2_PACKAGE_BCG729),y)
  45. LIBPJSIP_DEPENDENCIES += bcg729
  46. LIBPJSIP_CONF_OPTS += --with-bcg729=$(STAGING_DIR)/usr
  47. else
  48. LIBPJSIP_CONF_OPTS += --disable-bcg729
  49. endif
  50. ifeq ($(BR2_PACKAGE_FFMPEG),y)
  51. LIBPJSIP_DEPENDENCIES += ffmpeg
  52. LIBPJSIP_CONF_OPTS += --with-ffmpeg=$(STAGING_DIR)/usr
  53. else
  54. LIBPJSIP_CONF_OPTS += --disable-ffmpeg
  55. endif
  56. ifeq ($(BR2_PACKAGE_LIBGSM),y)
  57. LIBPJSIP_CONF_OPTS += \
  58. --enable-gsm-codec \
  59. --with-external-gsm
  60. LIBPJSIP_DEPENDENCIES += libgsm
  61. else
  62. LIBPJSIP_CONF_OPTS += \
  63. --disable-gsm-codec
  64. endif
  65. ifeq ($(BR2_PACKAGE_LIBOPENH264),y)
  66. LIBPJSIP_DEPENDENCIES += libopenh264
  67. LIBPJSIP_CONF_OPTS += --with-openh264=$(STAGING_DIR)/usr
  68. else
  69. LIBPJSIP_CONF_OPTS += --disable-openh264
  70. endif
  71. ifeq ($(BR2_PACKAGE_LIBOPENSSL),y)
  72. LIBPJSIP_DEPENDENCIES += libopenssl
  73. LIBPJSIP_CONF_OPTS += --with-ssl=$(STAGING_DIR)/usr
  74. else ifeq ($(BR2_PACKAGE_GNUTLS),y)
  75. LIBPJSIP_DEPENDENCIES += gnutls
  76. LIBPJSIP_CONF_OPTS += --with-gnutls=$(STAGING_DIR)/usr
  77. else
  78. LIBPJSIP_CONF_OPTS += --disable-ssl
  79. endif
  80. ifeq ($(BR2_PACKAGE_LIBSAMPLERATE),y)
  81. LIBPJSIP_DEPENDENCIES += libsamplerate
  82. LIBPJSIP_CONF_OPTS += --enable-libsamplerate
  83. else
  84. LIBPJSIP_CONF_OPTS += --disable-libsamplerate
  85. endif
  86. ifeq ($(BR2_PACKAGE_LIBSRTP),y)
  87. LIBPJSIP_DEPENDENCIES += libsrtp
  88. LIBPJSIP_CONF_OPTS += \
  89. --enable-libsrtp \
  90. --with-external-srtp
  91. else
  92. LIBPJSIP_CONF_OPTS += --disable-libsrtp
  93. endif
  94. ifeq ($(BR2_PACKAGE_LIBUPNP),y)
  95. LIBPJSIP_DEPENDENCIES += libupnp
  96. LIBPJSIP_CONF_OPTS += --with-upnp=$(STAGING_DIR)/usr
  97. else
  98. LIBPJSIP_CONF_OPTS += --disable-upnp
  99. endif
  100. ifeq ($(BR2_PACKAGE_LIBV4L),y)
  101. # --enable-v4l2 is broken (check for libv4l2 will be omitted)
  102. LIBPJSIP_DEPENDENCIES += libv4l
  103. else
  104. LIBPJSIP_CONF_OPTS += --disable-v4l2
  105. endif
  106. ifeq ($(BR2_PACKAGE_LIBYUV),y)
  107. LIBPJSIP_DEPENDENCIES += libyuv
  108. LIBPJSIP_CONF_OPTS += \
  109. --enable-libyuv \
  110. --with-external-yuv
  111. else
  112. LIBPJSIP_CONF_OPTS += --disable-libyuv
  113. endif
  114. ifeq ($(BR2_PACKAGE_OPENCORE_AMR),y)
  115. LIBPJSIP_DEPENDENCIES += opencore-amr
  116. LIBPJSIP_CONF_OPTS += --with-opencore-amr=$(STAGING_DIR)/usr
  117. else
  118. LIBPJSIP_CONF_OPTS += --disable-opencore-amr
  119. endif
  120. ifeq ($(BR2_PACKAGE_OPUS),y)
  121. LIBPJSIP_DEPENDENCIES += opus
  122. LIBPJSIP_CONF_OPTS += --with-opus=$(STAGING_DIR)/usr
  123. else
  124. LIBPJSIP_CONF_OPTS += --disable-opus
  125. endif
  126. ifeq ($(BR2_PACKAGE_PORTAUDIO),y)
  127. LIBPJSIP_DEPENDENCIES += portaudio
  128. LIBPJSIP_CONF_OPTS += --with-external-pa
  129. else
  130. LIBPJSIP_CONF_OPTS += --without-external-pa
  131. endif
  132. ifeq ($(BR2_PACKAGE_SDL2),y)
  133. LIBPJSIP_DEPENDENCIES += sdl2
  134. LIBPJSIP_CONF_OPTS += --with-sdl=$(STAGING_DIR)/usr
  135. else
  136. LIBPJSIP_CONF_OPTS += --disable-sdl
  137. endif
  138. ifeq ($(BR2_PACKAGE_SPEEX)$(BR2_PACKAGE_SPEEXDSP),yy)
  139. LIBPJSIP_CONF_OPTS += \
  140. --enable-speex-aec \
  141. --enable-speex-codec \
  142. --with-external-speex
  143. LIBPJSIP_DEPENDENCIES += speex speexdsp
  144. else
  145. LIBPJSIP_CONF_OPTS += \
  146. --disable-speex-aec \
  147. --disable-speex-codec
  148. endif
  149. ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y)
  150. LIBPJSIP_DEPENDENCIES += util-linux
  151. LIBPJSIP_CONF_OPTS += --enable-libuuid
  152. else
  153. LIBPJSIP_CONF_OPTS += --disable-libuuid
  154. endif
  155. # disable build of test binaries
  156. LIBPJSIP_MAKE_OPTS = lib
  157. $(eval $(autotools-package))