From mboxrd@z Thu Jan 1 00:00:00 1970 From: taylanbayirli@gmail.com (Taylan Ulrich =?utf-8?Q?Bay=C4=B1rl=C4=B1?= =?utf-8?Q?=2FKammer?=) Subject: Re: pkg-config "Requires" fields and propagated inputs Date: Sun, 03 May 2015 22:57:40 +0200 Message-ID: <87383dl6pn.fsf@taylan.uni.cx> References: <87d2444stf.fsf@taylan.uni.cx> <87iodnh0we.fsf@taylan.uni.cx> <87pp7pcqjg.fsf@gnu.org> <87fv7ieljt.fsf@taylan.uni.cx> <87mw1l1lyg.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:42062) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yp0xN-00089F-Ay for guix-devel@gnu.org; Sun, 03 May 2015 16:57:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Yp0xM-0008Hc-7b for guix-devel@gnu.org; Sun, 03 May 2015 16:57:45 -0400 In-Reply-To: <87mw1l1lyg.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Sun, 03 May 2015 21:48:39 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel@gnu.org ludo@gnu.org (Ludovic Court=C3=A8s) writes: >> portaudio: pkg-config: () libs: ("asound") >> avahi: pkg-config: ("glib-2.0" "gobject-2.0" "glib-2.0") libs: () >> libatomic-ops: pkg-config: () libs: ("atomic_ops") > > So =E2=80=98libs=E2=80=99 means that the .pc has =E2=80=9C-latomic_ops=E2= =80=9D, right? Indeed. There are libatomic_ops.a and .la files in the $prefix/lib of that package, but no .so files. I'm not sure what this means. >> ijs: pkg-config: () libs: ("ijs") >> mesa: pkg-config: ("xcb-dri3" "xcb-dri2" "libudev" "xcb-dri3" "xcb-dri2"= ) libs: () >> dbus-glib: pkg-config: ("gobject-2.0" "glib-2.0" "dbus-1") libs: () >> libcroco: pkg-config: ("libxml-2.0" "glib-2.0") libs: () >> gst-plugins-base: pkg-config: ("gio-2.0" "glib-2.0" "gio-2.0") libs: () >> harfbuzz: pkg-config: ("icu-uc") libs: () >> gtk+: pkg-config: ("gio-2.0" "cairo" "gio-2.0" "cairo" "gio-2.0" "cairo"= ) libs: () >> pango: pkg-config: ("gobject-2.0" "glib-2.0" "gmodule-no-export-2.0" "fo= ntconfig" "freetype2" "xft") libs: () >> cairo: pkg-config: ("xcb-shm" "xcb-render" "xcb-render") libs: ("z" "z") > > delete-duplicates? :-) Indeed. Done. > That looks nice. So where=E2=80=99s the code? ;-) Here's the repo: https://notabug.org/taylanub/guix > What are your thoughts on how to integrate it? Should we make a =E2=80= =98lint=E2=80=99 > pass, or is there something that can be turned into a build phase? It should be possible to make a build phase of it, using 'requires-and-libs-for-path' on the output directories, then using 'missing-packages' and 'missing-libraries' to find any pkg-config packages, and libraries, which wouldn't be satisfied during use of the package/output given its propagated inputs. I'll try implementing this. Taylan