From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jakob L. Kreuze" Subject: bug#36813: 'lower-gexp' does not respect 'system' or 'target' keywords Date: Fri, 26 Jul 2019 11:41:20 -0400 Message-ID: <8F7CDE5F-9E4D-463A-A19F-C99EDFCA3791@sdf.org> References: <87imrp3ddy.fsf@sdf.lonestar.org> <87ftmtqk84.fsf@gnu.org> <87muh0lvg1.fsf@sdf.lonestar.org> <87a7d0n7ck.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="----ACQFYBCBHTKO0BHKZQECC2ZLRCL01M" Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:50751) by lists.gnu.org with esmtp (Exim 4.86_2) (envelope-from ) id 1hr2iV-0000mD-0H for bug-guix@gnu.org; Fri, 26 Jul 2019 12:05:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hr2iN-0004lj-0Q for bug-guix@gnu.org; Fri, 26 Jul 2019 12:05:05 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:34429) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hr2iM-0004lO-Tm for bug-guix@gnu.org; Fri, 26 Jul 2019 12:05:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hr2iM-00051d-IJ for bug-guix@gnu.org; Fri, 26 Jul 2019 12:05:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= , zerodaysfordays@sdf.lonestar.org Cc: 36813@debbugs.gnu.org ------ACQFYBCBHTKO0BHKZQECC2ZLRCL01M Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Apologies, I should clarify -- the Guile for the S-Expression appears to be= fine, but the Guile referenced in the shebang of the ungexp'd program-file= does not reflect the system=2E On July 26, 2019 11:37:20 AM EDT, "Jakob L=2E Kreuze" wrote: >Could you please try to reproduce using the example I provided? The >derivation itself is handled appropriately, but its references are not=2E > >On July 26, 2019 11:28:11 AM EDT, "Ludovic Court=C3=A8s" >wrote: >>zerodaysfordays@sdf=2Elonestar=2Eorg (Jakob L=2E Kreuze) skribis: >> >>> Changing it to the following: >>> >>> #+BEGIN_SRC scheme >>> (lower-gexp exp >>> #:system "i686-linux" >>> #:target "i686-unknown-linux-gnu" >>> #:guile-for-build #f) >>> #+END_SRC >>> >>> The Guile used is still a 64-bit LSB executable=2E >> >>I can=E2=80=99t reproduce it on current =E2=80=98master=E2=80=99: >> >>--8<---------------cut here---------------start------------->8--- >>scheme@(guile-user)> ,run-in-store (lower-gexp #~(+ 2 3) >>#:guile-for-build #f #:system "mips64el-linux") >>$6 =3D #< sexp: (+ 2 3) inputs: () sources: () guile: >>#< drv: #>/gnu/store/jsnihqsz6nxwv88pr41i2y3403f959cf-guile-2=2E2=2E4=2Edrv =3D> >>/gnu/store/n2570pg8cahc8k9iqrg5qngyzf6j0xzr-guile-2=2E2=2E4-debug >>/gnu/store/j9a8dx25cj045yl5l32ajkkjf92ib3y1-guile-2=2E2=2E4 46e3230> >>sub-derivations: ("out")> load-path: () load-compiled-path: ()> >>scheme@(guile-user)> (derivation-system (derivation-input-derivation >>(lowered-gexp-guile $6))) >>$7 =3D "mips64el-linux" >>--8<---------------cut here---------------end--------------->8--- >> >>Not even when cross-compiling (BTW, #:target probably doesn=E2=80=99t ma= ke >>sense >>above, since it=E2=80=99s cross-compiling from i686 to i686): >> >>--8<---------------cut here---------------start------------->8--- >>scheme@(guile-user)> ,run-in-store (lower-gexp #~(+ 2 3) >>#:guile-for-build #f #:system "mips64el-linux" #:target "i586-pc-gnu") >>$8 =3D #< sexp: (+ 2 3) inputs: () sources: () guile: >>#< drv: #>/gnu/store/jsnihqsz6nxwv88pr41i2y3403f959cf-guile-2=2E2=2E4=2Edrv =3D> >>/gnu/store/n2570pg8cahc8k9iqrg5qngyzf6j0xzr-guile-2=2E2=2E4-debug >>/gnu/store/j9a8dx25cj045yl5l32ajkkjf92ib3y1-guile-2=2E2=2E4 46e3230> >>sub-derivations: ("out")> load-path: () load-compiled-path: ()> >>scheme@(guile-user)> (derivation-system (derivation-input-derivation >>(lowered-gexp-guile $8))) >>$9 =3D "mips64el-linux" >>--8<---------------cut here---------------end--------------->8--- >> >>Am I missing something? >> >>Thanks, >>Ludo=E2=80=99=2E > >--=20 >Sent from my Android device with K-9 Mail=2E Please excuse my brevity=2E --=20 Sent from my Android device with K-9 Mail=2E Please excuse my brevity=2E ------ACQFYBCBHTKO0BHKZQECC2ZLRCL01M Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable Apologies, I should clarify -- the Guile for the S= -Expression appears to be fine, but the Guile referenced in the shebang of = the ungexp'd program-file does not reflect the system=2E

On July 26, 2019 11:37:20 AM EDT, "Jakob L=2E Kreuze" <= zerodaysfordays=2Esdf=2Eorg@sdf=2Eorg> wrote:
Could you please try to reproduce using the example I provided? The deriva= tion itself is handled appropriately, but its references are not=2E

=
On July 26, 2019 11:28:11 AM EDT, "Ludovic Court= =C3=A8s" <ludo@gnu=2Eorg> wrote:
zerodaysfordays@sdf=2Elonestar=2Eorg (Jakob L=2E Kre=
uze) skribis:

Chan= ging it to the following:

#+BEGIN_SRC scheme
(lower-gexp exp #:system "i686-linux"
#:target "i686-unknown-= linux-gnu"
#:guile-for-build #f)
#+END_SRC

The = Guile used is still a 64-bit LSB executable=2E

I can=E2= =80=99t reproduce it on current =E2=80=98master=E2=80=99:

--8<---= ------------cut here---------------start------------->8---
scheme@(gu= ile-user)> ,run-in-store (lower-gexp #~(+ 2 3) #:guile-for-build #f #:sy= stem "mips64el-linux")
$6 =3D #<<lowered-gexp> sexp: (+ 2 3) in= puts: () sources: () guile: #<<derivation-input> drv: #<derivat= ion /gnu/store/jsnihqsz6nxwv88pr41i2y3403f959cf-guile-2=2E2=2E4=2Edrv =3D&g= t; /gnu/store/n2570pg8cahc8k9iqrg5qngyzf6j0xzr-guile-2=2E2=2E4-debug /gnu/s= tore/j9a8dx25cj045yl5l32ajkkjf92ib3y1-guile-2=2E2=2E4 46e3230> sub-deriv= ations: ("out")> load-path: () load-compiled-path: ()>
scheme@(gui= le-user)> (derivation-system (derivation-input-derivation (lowered-gexp-= guile $6)))
$7 =3D "mips64el-linux"
--8<---------------cut here---= ------------end--------------->8---

Not even when cross-compiling= (BTW, #:target probably doesn=E2=80=99t make sense
above, since it=E2= =80=99s cross-compiling from i686 to i686):

--8<---------------cu= t here---------------start------------->8---
scheme@(guile-user)> = ,run-in-store (lower-gexp #~(+ 2 3) #:guile-for-build #f #:system "mips64el= -linux" #:target "i586-pc-gnu")
$8 =3D #<<lowered-gexp> sexp: (= + 2 3) inputs: () sources: () guile: #<<derivation-input> drv: #&l= t;derivation /gnu/store/jsnihqsz6nxwv88pr41i2y3403f959cf-guile-2=2E2=2E4=2E= drv =3D> /gnu/store/n2570pg8cahc8k9iqrg5qngyzf6j0xzr-guile-2=2E2=2E4-deb= ug /gnu/store/j9a8dx25cj045yl5l32ajkkjf92ib3y1-guile-2=2E2=2E4 46e3230> = sub-derivations: ("out")> load-path: () load-compiled-path: ()>
sc= heme@(guile-user)> (derivation-system (derivation-input-derivation (lowe= red-gexp-guile $8)))
$9 =3D "mips64el-linux"
--8<---------------cu= t here---------------end--------------->8---

Am I missing somethi= ng?

Thanks,
Ludo=E2=80=99=2E


--
Sent from my Android device with K-9 Mail=2E Plea= se excuse my brevity=2E ------ACQFYBCBHTKO0BHKZQECC2ZLRCL01M--