From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= Subject: Re: New build system: copy-build-system Date: Wed, 29 Jan 2020 00:04:52 +0100 Message-ID: <87mua7b2sr.fsf@gnu.org> References: <87sgk2dkuv.fsf@ambrevar.xyz> <871rrkvi0p.fsf@elephly.net> <874kwfj2hk.fsf@gnu.org> <87v9ovbsym.fsf@ambrevar.xyz> 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]:37861) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iwZuh-0000WD-CF for guix-devel@gnu.org; Tue, 28 Jan 2020 18:04:56 -0500 In-Reply-To: <87v9ovbsym.fsf@ambrevar.xyz> (Pierre Neidhardt's message of "Tue, 28 Jan 2020 14:39:45 +0100") 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-mx.org@gnu.org Sender: "Guix-devel" To: Pierre Neidhardt Cc: guix-devel@gnu.org Hi Pierre, Pierre Neidhardt skribis: > Examples: > > - `("foo/bar" "share/my-app/")`: Install bar to "share/my-app/bar". > - `("foo/bar" "share/my-app/baz")`: Install bar to "share/my-app/baz". > - `("foo/" "share/my-app")`: Install the content of foo inside "share/my-= app", > e.g. install "foo/sub/file" to "share/my-app/sub/file". > - `("foo/" "share/my-app" #:include ("sub/file"))`: Install only "foo/sub= /file" to "share/my-app/sub/file". > - `("foo/sub" "share/my-app" #:include ("file"))`: Install "foo/sub/file"= to "share/my-app/file". Looks like it could work. I think the general approach should be: pick a handful of packages that you=E2=80=99d like to rewrite to the new build system, provide the options = that support it (but not more), and verify that the resulting package definitions are indeed shorter. > Maybe instead of having two #:include and #:include-regexp we could have = just > one #:include in which the list elements have a "marker" that tells wheth= er they > are regexps or not. Probably the former, so that strings are either always or never interpreted as regexps. (Guile doesn=E2=80=99t have special =E2=80=9Cmarke= rs=E2=80=9D for regexps.) Ludo=E2=80=99.