From 2a7130b8b09358744a7b75f17285b5d4ea01d650 Mon Sep 17 00:00:00 2001 From: George Joseph Date: Sun, 8 May 2016 19:19:50 -0600 Subject: pjproject_bundled: Check for python-dev and TEST_FRAMEWORK The pjsua and pjsystest apps are now built only if TEST_FRAMEWORK is set. The python bindings are now built only if TEST_FRAMEWORK is set and a python development package is installed. libresample was also disabled. ASTERISK-25993 #close Reported-by: Joshua Colp Change-Id: If4e91c503a02f113d5b71bc8b972081fa3ff6f03 --- third-party/pjproject/Makefile | 20 +++++++++++++++----- third-party/pjproject/Makefile.rules | 2 +- 2 files changed, 16 insertions(+), 6 deletions(-) (limited to 'third-party') diff --git a/third-party/pjproject/Makefile b/third-party/pjproject/Makefile index 7fa3902ba..7349db62f 100644 --- a/third-party/pjproject/Makefile +++ b/third-party/pjproject/Makefile @@ -45,6 +45,13 @@ ifeq ($(SPECIAL_TARGETS),) CF := $(filter-out -I%,$(CF)) export CFLAGS += $(CF) export LDFLAGS += $(CC_LDFLAGS) + TARGETS := pjproject.symbols + ifeq ($(findstring TEST_FRAMEWORK,$(MENUSELECT_CFLAGS)),TEST_FRAMEWORK) + TARGETS += source/pjsip-apps/bin/pjsua-$(TARGET_NAME) + ifneq ($(PYTHONDEV_LIB),) + TARGETS += source/pjsip-apps/src/python/build/_pjsua.so + endif + endif else all install: endif @@ -95,12 +102,10 @@ source/pjlib/build/.pjlib-$(TARGET_NAME).depend: build.mak $(ECHO_PREFIX) "Making dependencies" +$(CMD_PREFIX) $(SUBMAKE) -C source dep - menuselect: ../../menuselect.makeopts ../../makeopts -$(CMD_PREFIX) test -d source && ($(SUBMAKE) -C source clean ; find source -name *.a -delete ; rm -rf source/pjsip-apps/src/python/build) || : -$(CMD_PREFIX) rm -rf pjproject.symbols - source/pjlib/lib/libpj-$(TARGET_NAME).a: menuselect source/pjlib/build/.pjlib-$(TARGET_NAME).depend $(ECHO_PREFIX) Compiling libs +$(CMD_PREFIX) $(SUBMAKE) -C source lib $(REALLY_QUIET) @@ -117,17 +122,22 @@ source/pjsip-apps/src/python/build/_pjsua.so: source/pjlib/lib/libpj-$(TARGET_NA $(ECHO_PREFIX) Compiling python bindings $(CMD_PREFIX) (cd source/pjsip-apps/src/python ; MAKE=$(MAKE) python setup.py build --build-platlib=./build $(REALLY_QUIET)) -_all: pjproject.symbols source/pjsip-apps/bin/pjsua-$(TARGET_NAME) source/pjsip-apps/src/python/build/_pjsua.so +_all: $(TARGETS) _install: _all - $(ECHO_PREFIX) Installing apps and python bindings @if [ ! -d "$(DESTDIR)$(ASTDATADIR)/third-party/pjproject" ]; then \ $(INSTALL) -d "$(DESTDIR)$(ASTDATADIR)/third-party/pjproject"; \ fi; +ifneq ($(findstring source/pjsip-apps/bin/pjsua-$(TARGET_NAME),$(TARGETS)),) + $(ECHO_PREFIX) Installing apps $(CMD_PREFIX) $(INSTALL) -m 755 source/pjsip-apps/bin/pjsua-$(TARGET_NAME) "$(DESTDIR)$(ASTDATADIR)/third-party/pjproject/pjsua" $(CMD_PREFIX) $(INSTALL) -m 755 source/pjsip-apps/bin/pjsystest-$(TARGET_NAME) "$(DESTDIR)$(ASTDATADIR)/third-party/pjproject/pjsystest" +endif +ifneq ($(findstring source/pjsip-apps/src/python/build/_pjsua.so,$(TARGETS)),) + $(ECHO_PREFIX) Installing python bindings $(CMD_PREFIX) $(INSTALL) -m 755 source/pjsip-apps/src/python/build/_pjsua.so "$(DESTDIR)$(ASTDATADIR)/third-party/pjproject/" $(CMD_PREFIX) $(INSTALL) -m 644 source/pjsip-apps/src/python/build/pjsua.py "$(DESTDIR)$(ASTDATADIR)/third-party/pjproject/" +endif uninstall: $(ECHO_PREFIX) Uninstalling apps and python bindings @@ -135,7 +145,7 @@ uninstall: clean: $(ECHO_PREFIX) Cleaning - -$(CMD_PREFIX) test -d source && ($(SUBMAKE) -C source clean ; find source -name *.a -delete ; rm -rf source/pjsip-apps/src/python/build) || : + -$(CMD_PREFIX) test -d source && ($(SUBMAKE) -C source clean ; find source -name *.a -delete ; rm -rf source/pjsip-apps/src/python/build ; rm -rf source/pjsip-apps/bin/* ) || : -$(CMD_PREFIX) rm -rf pjproject.symbols distclean: diff --git a/third-party/pjproject/Makefile.rules b/third-party/pjproject/Makefile.rules index 6b51c2f2a..d2e7d25a4 100644 --- a/third-party/pjproject/Makefile.rules +++ b/third-party/pjproject/Makefile.rules @@ -3,7 +3,7 @@ PJPROJECT_URL = http://www.pjsip.org/release/$(PJPROJECT_VERSION) # Even though we're not installing pjproject, we're setting prefix to /opt/pjproject to be safe PJPROJECT_CONFIG_OPTS = --prefix=/opt/pjproject --disable-speex-codec --disable-speex-aec \ --disable-gsm-codec --disable-video --disable-v4l2 --disable-sound --disable-opencore-amr \ - --disable-ilbc-codec --without-libyuv --disable-g7221-codec + --disable-ilbc-codec --without-libyuv --disable-g7221-codec --disable-resample ifeq ($(shell uname -s),Linux) PJPROJECT_CONFIG_OPTS += --enable-epoll -- cgit v1.2.3