Ticket #694: work on 'make install':

- adhere to --prefix
 - header and lib files installation
 - pkgconfig creation
 - also added version.mak to fill in with the correct version


git-svn-id: https://svn.pjsip.org/repos/pjproject/trunk@3063 74dad513-b988-da41-8d7b-12977e46ad98
This commit is contained in:
Benny Prijono 2010-01-15 15:06:20 +00:00
parent 8a9b3b272c
commit ddd4714f1e
7 changed files with 38 additions and 18 deletions

View File

@ -35,7 +35,7 @@ LIBS = pjlib/lib/libpj-$(TARGET_NAME).a \
pjmedia/lib/libpjmedia-$(TARGET_NAME).a \
pjmedia/lib/libpjmedia-audiodev-$(TARGET_NAME).a \
pjmedia/lib/libpjmedia-codec-$(TARGET_NAME).a \
pjsip/lib/libpjsip-$(TARGET_NAME).a \
pjsip/lib/libpjsip-$(TARGET_NAME).a \
pjsip/lib/libpjsip-ua-$(TARGET_NAME).a \
pjsip/lib/libpjsip-simple-$(TARGET_NAME).a \
pjsip/lib/libpjsua-$(TARGET_NAME).a
@ -90,14 +90,18 @@ pjsip-test: pjsip/bin/pjsip-test-$(TARGET_NAME)
pjsua-test:
cd tests/pjsua && python runall.py
prefix = /usr/local
prefix = $(ac_prefix)
include version.mak
install:
mkdir -p $(DESTDIR)$(prefix)/lib
cp -L $$(find . -name '*.a') $(DESTDIR)$(prefix)/lib
cp -f $(APP_LIB_FILES) $(DESTDIR)$(prefix)/lib/
mkdir -p $(DESTDIR)$(prefix)/include
cp -RL $$(find . -name include) $(DESTDIR)$(prefix)
cd $(DESTDIR)$(prefix)/lib && for i in $$(find . -name 'libpj*a'); do\
ln -s $$i $$(echo $$i | sed -e "s/-$(TARGET_NAME)//");\
for d in pjlib pjlib-util pjnath pjmedia pjsip; do \
cp -RLf $$d/include/* $(DESTDIR)$(prefix)/include/; \
done
mkdir -p $(DESTDIR)$(prefix)/lib/pkgconfig
sed -e "s!@PREFIX@!$(DESTDIR)$(prefix)!" libpj.pc.in > $(DESTDIR)/$(prefix)/lib/pkgconfig/libpj.pc
sed -e "s!@PREFIX@!$(DESTDIR)$(prefix)!" libpjproject.pc.in | \
sed -e "s/@PJ_VERSION@/$(PJ_VERSION)/" | \
sed -e "s!@PJ_LDLIBS@!$(PJ_LDLIBS)!" | \
sed -e "s!@PJ_INSTALL_CFLAGS@!$(PJ_INSTALL_CFLAGS)!" > $(DESTDIR)/$(prefix)/lib/pkgconfig/libpjproject.pc

View File

@ -7,17 +7,19 @@ export TARGET_NAME := @target@
export CROSS_COMPILE := @ac_cross_compile@
export LINUX_POLL := @ac_linux_poll@
export ac_prefix := @prefix@
LIB_SUFFIX = $(TARGET_NAME).a
# Determine which party libraries to use
export APP_THIRD_PARTY_LIBS := -lresample-$(TARGET_NAME) -lmilenage-$(TARGET_NAME) -lsrtp-$(TARGET_NAME)
export APP_THIRD_PARTY_EXT :=
export APP_THIRD_PARTY_LIB_FILES = $(PJ_DIR)/third_party/lib/libresample-$(LIB_SUFFIX) $(PJ_DIR)/third_party/lib/libmilenage-$(LIB_SUFFIX) $(PJ_DIR)/third_party/lib/libsrtp-$(LIB_SUFFIX)
ifneq (@ac_no_gsm_codec@,1)
ifeq (@ac_external_gsm@,1)
# External GSM library
APP_THIRD_PARTY_LIBS += -lgsm
APP_THIRD_PARTY_LIB_FILES +=
APP_THIRD_PARTY_EXT += -lgsm
else
APP_THIRD_PARTY_LIBS += -lgsmcodec-$(TARGET_NAME)
APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libgsmcodec-$(LIB_SUFFIX)
@ -26,8 +28,7 @@ endif
ifneq (@ac_no_speex_codec@,1)
ifeq (@ac_external_speex@,1)
APP_THIRD_PARTY_LIBS += -lspeex -lspeexdsp
APP_THIRD_PARTY_LIB_FILES +=
APP_THIRD_PARTY_EXT += -lspeex -lspeexdsp
else
APP_THIRD_PARTY_LIBS += -lspeex-$(TARGET_NAME)
APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libspeex-$(LIB_SUFFIX)
@ -46,8 +47,8 @@ endif
ifneq ($(findstring pa,@ac_pjmedia_snd@),)
ifeq (@ac_external_pa@,1)
APP_THIRD_PARTY_LIBS += -lportaudio
APP_THIRD_PARTY_LIB_FILES +=
# External PA
APP_THIRD_PARTY_EXT += -lportaudio
else
APP_THIRD_PARTY_LIBS += -lportaudio-$(TARGET_NAME)
APP_THIRD_PARTY_LIB_FILES += $(PJ_DIR)/third_party/lib/libportaudio-$(LIB_SUFFIX)
@ -85,6 +86,7 @@ export APP_LDLIBS := -lpjsua-$(TARGET_NAME)\
-lpjnath-$(TARGET_NAME)\
-lpjlib-util-$(TARGET_NAME)\
$(APP_THIRD_PARTY_LIBS)\
$(APP_THIRD_PARTY_EXT)\
-lpj-$(TARGET_NAME)\
@LIBS@
export APP_LIB_FILES = $(PJ_DIR)/pjsip/lib/libpjsua-$(LIB_SUFFIX) \
@ -99,6 +101,8 @@ export APP_LIB_FILES = $(PJ_DIR)/pjsip/lib/libpjsua-$(LIB_SUFFIX) \
$(APP_THIRD_PARTY_LIB_FILES) \
$(PJ_DIR)/pjlib/lib/libpj-$(LIB_SUFFIX)
# Here are the variabels to use if application is using the library
# from within the source distribution
export PJ_DIR := $(PJDIR)
export PJ_CC := $(APP_CC)
export PJ_CFLAGS := $(APP_CFLAGS)
@ -107,3 +111,11 @@ export PJ_LDFLAGS := $(APP_LDFLAGS)
export PJ_LDLIBS := $(APP_LDLIBS)
export PJ_LIB_FILES := $(APP_LIB_FILES)
# And here are the variables to use if application is using the
# library from the install location (i.e. --prefix)
export PJ_INSTALL_DIR := @prefix@
export PJ_INSTALL_INC_DIR := $(PJ_INSTALL_DIR)/include
export PJ_INSTALL_LIB_DIR := $(PJ_INSTALL_DIR)/lib
export PJ_INSTALL_CFLAGS := -I$(PJ_INSTALL_INC_DIR) -DPJ_AUTOCONF=1 @CFLAGS@
export PJ_INSTALL_CXXFLAGS := $(PJ_INSTALL_CFLAGS)
export PJ_INSTALL_LDFLAGS := -L$(PJ_INSTALL_LIB_DIR) $(APP_LDLIBS)

View File

@ -124,7 +124,7 @@ export APP_CXXFLAGS = \$(APP_CFLAGS)
export APP_LDFLAGS = -L\$(PJDIR)/pjlib/lib -L\$(PJDIR)/pjlib-util/lib -L\$(PJDIR)/pjnath/lib -L\$(PJDIR)/pjmedia/lib -L\$(PJDIR)/pjsip/lib -L\$(PJDIR)/third_party/lib
export APP_LDLIBS = -lpjsua-\$(TARGET_NAME) -lpjsip-ua-\$(TARGET_NAME) -lpjsip-simple-\$(TARGET_NAME) -lpjsip-\$(TARGET_NAME) -lpjmedia-codec-\$(TARGET_NAME) -lpjmedia-\$(TARGET_NAME) -lpjnath-\$(TARGET_NAME) -lpjlib-util-\$(TARGET_NAME) \$(APP_THIRD_PARTY_LIBS) -lpj-\$(TARGET_NAME) \$(CC_LDFLAGS) \$(OS_LDFLAGS) \$(M_LDFLAGS) \$(HOST_LDFLAGS) \$(LDFLAGS)
export APP_LDLIBS = -lpjsua-\$(TARGET_NAME) -lpjsip-ua-\$(TARGET_NAME) -lpjsip-simple-\$(TARGET_NAME) -lpjsip-\$(TARGET_NAME) -lpjmedia-codec-\$(TARGET_NAME) -lpjmedia-\$(TARGET_NAME) -lpjnath-\$(TARGET_NAME) -lpjlib-util-\$(TARGET_NAME) \$(APP_THIRD_PARTY_LIBS) \$(APP_THIRD_PARTY_EXT) -lpj-\$(TARGET_NAME) \$(CC_LDFLAGS) \$(OS_LDFLAGS) \$(M_LDFLAGS) \$(HOST_LDFLAGS) \$(LDFLAGS)
export PJ_DIR = \$(PJDIR)
export PJ_CC = \$(APP_CC)

View File

@ -5,8 +5,9 @@ exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: libpj
Name: libpjproject
Description: Multimedia communication library
Version: 0.5.10.3
Libs: -L${libdir} -lpjsua -lpjsip -lpjmedia -lpjsip-ua -lpjsip-simple -lpjsip-ua -lpjmedia-codec -lpjlib-util -lpj
Cflags: -I${includedir}
URL: http://www.pjsip.org
Version: @PJ_VERSION@
Libs: -L${libdir} @PJ_LDLIBS@
Cflags: -I${includedir} @PJ_INSTALL_CFLAGS@

View File

@ -40,6 +40,7 @@ export _LDFLAGS := $(subst /,$(HOST_PSEP),$(PJMEDIA_LIB)) \
$(subst /,$(HOST_PSEP),$(PJNATH_LIB)) \
-L$(PJDIR)/third_party/lib \
$(APP_THIRD_PARTY_LIBS) \
$(APP_THIRD_PARTY_EXT) \
$(CC_LDFLAGS) $(OS_LDFLAGS) $(M_LDFLAGS) $(HOST_LDFLAGS) \
$(LDFLAGS)

1
pjsip/include/pjsua.h Normal file
View File

@ -0,0 +1 @@
#include <pjsua-lib/pjsua.h>

1
version.mak Normal file
View File

@ -0,0 +1 @@
export PJ_VERSION := 1.5.5-trunk