From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= Subject: Re: Overhauling the cargo-build-system Date: Fri, 11 Oct 2019 00:33:18 +0200 Message-ID: <87d0f4p6xd.fsf@gnu.org> References: <20191010155056.GD1301@E5400> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:33806) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iIgzx-0003pK-Ih for guix-devel@gnu.org; Thu, 10 Oct 2019 18:33:30 -0400 In-Reply-To: <20191010155056.GD1301@E5400> (Efraim Flashner's message of "Thu, 10 Oct 2019 18:50:56 +0300") 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" To: Efraim Flashner Cc: guix-devel@gnu.org Hello! Efraim Flashner skribis: > I'd like to challenge the assumption that packages are both libraries > and source. A 'library' in rust compiles into one of three types: a > static library (libfoo.a), a shared library (libfoo.so), or a > 'rust-library' (libfoo.rlib). Why don=E2=80=99t we create .so files, then? They have NEEDED and RUNPATH,= so that could work like for C, no? > Let me repeat that. We have 192 rust packages that no one needs or > wants, except in source form. Ouch! So the rlib file is never actually used?! You said =E2=80=9Cit is not possible to link an rlib to another rlib=E2=80= =9D, but that=E2=80=99s not necessarily a problem, it=E2=80=99s like .a libraries, n= o? > PROPOSAL: > Change all the rust packages we have now to be source-only. Rename them > from rust-foo to rust-foo-src or rust-src-foo. In the current scheme, can you actually do, say: guix environment --ad-hoc rust rust-foo rust-bar and then (pseudo syntax): rustc mystuff.rust -lfoo -lbar ? Thanks, Ludo=E2=80=99.