guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

branch master updated: gnu: pjproject: Update the pkg-config patch.


From: guix-commits
Subject: branch master updated: gnu: pjproject: Update the pkg-config patch.
Date: Wed, 05 Aug 2020 21:52:38 -0400

This is an automated email from the git hooks/post-receive script.

apteryx pushed a commit to branch master
in repository guix.

The following commit(s) were added to refs/heads/master by this push:
     new e6062b6  gnu: pjproject: Update the pkg-config patch.
e6062b6 is described below

commit e6062b6195c2d100f88bf8a82c45b7e9182ca088
Author: Maxim Cournoyer <maxim.cournoyer@gmail.com>
AuthorDate: Tue Aug 4 23:48:24 2020 -0400

    gnu: pjproject: Update the pkg-config patch.
    
    * gnu/packages/patches/pjproject-fix-pkg-config-ldflags.patch: Update patch.
---
 .../patches/pjproject-fix-pkg-config-ldflags.patch | 77 +++++++++++++++++-----
 1 file changed, 61 insertions(+), 16 deletions(-)

diff --git a/gnu/packages/patches/pjproject-fix-pkg-config-ldflags.patch 
b/gnu/packages/patches/pjproject-fix-pkg-config-ldflags.patch
index a3f2852..1199d82 100644
--- a/gnu/packages/patches/pjproject-fix-pkg-config-ldflags.patch
+++ b/gnu/packages/patches/pjproject-fix-pkg-config-ldflags.patch
@@ -1,34 +1,79 @@
-From 7a86f357ffa2339a67991e5f4f5610a218e80693 Mon Sep 17 00:00:00 2001
+From 9bcba7fb28055550961b134e517b695a8cd05b2a Mon Sep 17 00:00:00 2001
 From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
 Date: Mon, 3 Aug 2020 17:43:19 -0400
-Subject: [PATCH 2/2] build.mak.in: Filter out 3rd party libraries from
- PJ_INSTALL_LDFLAGS.
+Subject: [PATCH] libpjproject.pc: Move external libraries to Libs.private.
 
-This is done so users of the installed pjproject libraries do not get
+This is done so users of a shared pjproject library do not get link
 directives (provided via pkg-config file of pjproject) to link against
 pjproject's own library dependencies.
 
-* build.mak.in (THIRD_PARTY_LIBRARIES): New variable.
-(PJ_INSTALL_LDFLAGS): Filter out THIRD_PARTY_LIBRARIES.
+Static linking with pjproject is preserved by moving the external
+libraries link directives to the Libs.private field, which is
+specifically intended for this purpose, via for example:
+
+  $ pkg-config --static --libs libpjproject
+
+* build.mak.in (PJ_INSTALL_LDFLAGS_PRIVATE): New variable.
+(PJ_INSTALL_LDFLAGS): Filter out PJ_INSTALL_LDFLAGS_PRIVATE entries.
+* libpjproject.pc.in (Libs.private): New field.
+* Makefile: Substitute PJ_INSTALL_LDFLAGS_PRIVATE as the value for the
+Libs.private field.
 ---
- build.mak.in | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
+ Makefile           | 5 +++--
+ build.mak.in       | 3 ++-
+ libpjproject.pc.in | 1 +
+ 3 files changed, 6 insertions(+), 3 deletions(-)
 
+diff --git a/Makefile b/Makefile
+index 3fd5cab40..d67badfa4 100644
+--- a/Makefile
++++ b/Makefile
+@@ -54,14 +54,14 @@ doc:
+                   exit 1; \
+               fi; \
+       done
+-      
++
+ LIBS =        pjlib/lib/libpj-$(TARGET_NAME).a \
+       pjlib-util/lib/libpjlib-util-$(TARGET_NAME).a \
+       pjnath/lib/libpjnath-$(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
+@@ -133,6 +133,7 @@ install:
+               sed -e "s!@LIBDIR@!$(libdir)!" | \
+               sed -e "s/@PJ_VERSION@/$(PJ_VERSION)/" | \
+               sed -e "s!@PJ_INSTALL_LDFLAGS@!$(PJ_INSTALL_LDFLAGS)!" | \
++              sed -e 
"s!@PJ_INSTALL_LDFLAGS_PRIVATE@!$(PJ_INSTALL_LDFLAGS_PRIVATE)!" | \
+               sed -e "s!@PJ_INSTALL_CFLAGS@!$(PJ_INSTALL_CFLAGS)!" > 
$(DESTDIR)/$(libdir)/pkgconfig/libpjproject.pc
+ 
+ uninstall:
 diff --git a/build.mak.in b/build.mak.in
-index a9078bb25..86fd1ec30 100644
+index a9078bb25..1a18a8513 100644
 --- a/build.mak.in
 +++ b/build.mak.in
-@@ -314,8 +314,9 @@ export PJ_LIBXX_FILES := $(APP_LIBXX_FILES)
- 
- # And here are the variables to use if application is using the
- # library from the install location (i.e. --prefix)
-+THIRD_PARTY_LIBRARIES := $(APP_THIRD_PARTY_LIBS) $(APP_THIRD_PARTY_EXT) @LIBS@
- export PJ_INSTALL_DIR := @prefix@
+@@ -318,4 +318,5 @@ export PJ_INSTALL_DIR := @prefix@
  export PJ_INSTALL_INC_DIR := @includedir@
  export PJ_INSTALL_LIB_DIR := @libdir@
  export PJ_INSTALL_CFLAGS := -I$(PJ_INSTALL_INC_DIR) -DPJ_AUTOCONF=1 
@ac_cflags@
 -export PJ_INSTALL_LDFLAGS := -L$(PJ_INSTALL_LIB_DIR) $(APP_LDXXLIBS)
-+export PJ_INSTALL_LDFLAGS := -L$(PJ_INSTALL_LIB_DIR) $(filter-out 
$(THIRD_PARTY_LIBRARIES),$(APP_LDXXLIBS))
++export PJ_INSTALL_LDFLAGS_PRIVATE := $(APP_THIRD_PARTY_LIBS) 
$(APP_THIRD_PARTY_EXT) @LIBS@
++export PJ_INSTALL_LDFLAGS := -L$(PJ_INSTALL_LIB_DIR) $(filter-out 
$(PJ_INSTALL_LDFLAGS_PRIVATE),$(APP_LDXXLIBS))
+diff --git a/libpjproject.pc.in b/libpjproject.pc.in
+index 30ea05c07..4372d5016 100644
+--- a/libpjproject.pc.in
++++ b/libpjproject.pc.in
+@@ -10,4 +10,5 @@ Description: Multimedia communication library
+ URL: http://www.pjsip.org
+ Version: @PJ_VERSION@
+ Libs: @PJ_INSTALL_LDFLAGS@
++Libs.private: @PJ_INSTALL_LDFLAGS_PRIVATE@
+ Cflags: @PJ_INSTALL_CFLAGS@
 -- 
 2.27.0
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]