From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mathieu Othacehe Subject: bug#40839: Shepherd activation .GO files are not cross-compiled ... and the Hurd Date: Sat, 25 Apr 2020 14:13:49 +0200 Message-ID: <87wo63u5j6.fsf@gmail.com> References: <87imhnuc8a.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:37276) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jSJh5-0003AT-Ow for bug-guix@gnu.org; Sat, 25 Apr 2020 08:14:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jSJh5-0003zp-Bq for bug-guix@gnu.org; Sat, 25 Apr 2020 08:14:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:47416) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jSJh5-0003z1-07 for bug-guix@gnu.org; Sat, 25 Apr 2020 08:14:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jSJh3-0006ky-Qs for bug-guix@gnu.org; Sat, 25 Apr 2020 08:14:01 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87imhnuc8a.fsf@gnu.org> (Jan Nieuwenhuizen's message of "Sat, 25 Apr 2020 11:49:09 +0200") 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-mx.org@gnu.org Sender: "bug-Guix" To: Jan Nieuwenhuizen Cc: 40839@debbugs.gnu.org Hello Jan, > /gnu/store/dbmj8ls2bwn0vbwi6qzng56rgrza3z0i-shepherd-host-name.go > $ 11:27:25 janneke@dundal:~/src/guix/core-updates [env] > $ file /gnu/store/dbmj8ls2bwn0vbwi6qzng56rgrza3z0i-shepherd-host-name.go > /gnu/store/dbmj8ls2bwn0vbwi6qzng56rgrza3z0i-shepherd-host-name.go: ELF 64-bit LSB shared object no machine, version 1 (embedded), dynamically linked, with debug_info, not stripped I strongly suspect this is because we would need to wrap the "compile-file" call in "scm->go" procedure of (gnu services shepherd) inside a "with-target". That would look like: --8<---------------cut here---------------start------------->8--- (if target (with-target target (compile-file #$file #:output-file #$output #:env env)) (compile-file #$file #:output-file #$output #:env env)) --8<---------------cut here---------------end--------------->8--- Now, the tricky part is the value of target, because #$(%current-target-system) might not be correct in that context. Mathieu