From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 121AC138010 for ; Fri, 21 Sep 2012 23:48:25 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 0394E21C028; Fri, 21 Sep 2012 23:48:06 +0000 (UTC) Received: from mail-we0-f181.google.com (mail-we0-f181.google.com [74.125.82.181]) by pigeon.gentoo.org (Postfix) with ESMTP id B7DF3E0486 for ; Fri, 21 Sep 2012 23:47:19 +0000 (UTC) Received: by weyu54 with SMTP id u54so2375194wey.40 for ; Fri, 21 Sep 2012 16:47:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:date:user-agent:references:in-reply-to :disposition-notification-to:mime-version:content-type :content-transfer-encoding:message-id; bh=A2yS8CrCtb9XiusRJ8qoBpcblvZBFovNyZXqt4BONjM=; b=zYrw6z3J3px4Eb9+kTwj2L7P1EgZQiM0zWGfD+aEc+EqUiNrfXZbzEYUTA1Do3FDFJ EJ890dj6kMRb2/itYZvemCdbfFfTtk7knDm/1mZvv4IJx8zXzcNy5KOReKM8yCA90aFs FqEb84obwYSHydNex8Xy3m3tZOGz1MbFq68xzw2QfYpg+wD1BsBso32mgMoxvv8y+S7V 3iMfBen2RbuH9eolYz19Q7HMmFjm/DUkyxmaOIfm//SJfjFWiIZcGeyS/nhheNu8oF6r 6hqC63TpRaQhfswfLqsGCqQO0wT4oBjHyz0cPUjPSyL2+GjxoT2KZf+u49ZjP/lEyT+K tOJQ== Received: by 10.180.95.97 with SMTP id dj1mr908613wib.3.1348271238770; Fri, 21 Sep 2012 16:47:18 -0700 (PDT) Received: from lebrodyl.localnet (89-76-9-72.dynamic.chello.pl. [89.76.9.72]) by mx.google.com with ESMTPS id q7sm622852wiy.11.2012.09.21.16.47.16 (version=SSLv3 cipher=OTHER); Fri, 21 Sep 2012 16:47:17 -0700 (PDT) From: Maciej Mrozowski To: gentoo-dev@lists.gentoo.org Subject: Re: [gentoo-dev] supporting static-libs Date: Sat, 22 Sep 2012 01:47:00 +0200 User-Agent: KMail/1.13.7 (Linux/3.4.9-gentoo; KDE/4.8.5; x86_64; ; ) References: <503C0DAC.8050207@gentoo.org> <201209032254.15788.reavertm@gmail.com> <20120906081834.GD18495@localhost> In-Reply-To: <20120906081834.GD18495@localhost> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Content-Type: multipart/signed; boundary="nextPart6551083.KoLMS1Bq4b"; protocol="application/pgp-signature"; micalg=pgp-sha1 Content-Transfer-Encoding: 7bit Message-Id: <201209220147.01070.reavertm@gmail.com> X-Archives-Salt: 471a18b3-d4b2-49be-a1e7-20f7749e054b X-Archives-Hash: 52292602ab3c7ecfa3a1ef1d52186cad --nextPart6551083.KoLMS1Bq4b Content-Type: Text/Plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable On Thursday 06 of September 2012 10:18:34 Brian Harring wrote: > On Mon, Sep 03, 2012 at 10:54:15PM +0200, Maciej Mrozowski wrote: > > On Tuesday 28 of August 2012 02:15:40 hasufell wrote: > > > Is there a reason not to support static-libs in an ebuild if the > > > package supports it? > > >=20 > > > It seems some developers don't care about this option. What's the > > > gentoo policy on this? Isn't this actually a bug? > >=20 > > A little remark. > > For CMake controlled buildsystem (as you're coming here from latest dev- > > games/simgear), there's no automatic way of building both static and > > shared libs (simgear allows to choose just one). > > This is why I removed static libs support that you proposed for dev- > > games/simgear (similar to ruby eclass abi handling - manually calling > > phases twice to build package 1st as shared, 2nd time as static). > > This is what I called "not worth the effort" in private discussion with > > you, not quite "I don't care for static libs" :) >=20 > Guessing in the worst case, you can do a double compile to get around > this, no? And yes, that's freaking horrible, just verifying cmake > isn't doing something special that blocks it. Not sure why they would need to block it, one build dir for static, second = one=20 for shared. All safely separated (still stinks as a hack). > Is upstream doing anything about this, or is it not on their > radar/list-of-things-they-care-about ? Off the radar. CMake provides equivalent of '--enable-static --disable-shared' and '-- disable-static --enable-shared' by the means of BUIlLD_SHARED_LIBS and not= =20 specifying linkage when defining library: add_library(foo src1 src2) It doesn't automatically provide both at the same time however. CMake is=20 cross-platform (meaning it support different generators: GNU Make, NMake,=20 Visual Studio Project, XCode etc) so their main audience aren't "distros",= =20 also on Windows for instance when shared .dll is created, also import .lib = is=20 created. If static .lib was to be created as well, they would need to have= =20 separate build subdir for it (and a bit more complex library resolution=20 algorithm). Still, if developer bothers enough to provide them both, he can easily=20 implement it in buildsystem with explicitly given linkage (and separate tar= get=20 names): set(foo_SRC src1 src2) add_library(foo SHARED ${foo_SRC}) if (ENABLE_STATIC) add_library(foo_static STATIC ${foo_SRC}) endif () That being said I can understand why it's off the radar - technically=20 everything is already available, likely not worth the effort and in many ca= ses=20 building both static/shared is actually not needed. =2D-=20 regards MM --nextPart6551083.KoLMS1Bq4b Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) iEYEABECAAYFAlBc/HUACgkQFuHa/bHpVduGuACdEqNyslZZjd/cqyBW8vBtTTCM 2ncAn0akAGuBQVG6Jjm6AT6FbjVCIaZY =8Oai -----END PGP SIGNATURE----- --nextPart6551083.KoLMS1Bq4b--