From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: The 'cross' directory Date: Sun, 13 Aug 2023 08:39:16 +0300 Message-ID: <83pm3rcxh7.fsf@gnu.org> References: <83fs4uok3p.fsf@gnu.org> <877cq61hlq.fsf@yahoo.com> <87jzu4yioy.fsf@yahoo.com> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="6849"; mail-complaints-to="usenet@ciao.gmane.io" Cc: luangruo@yahoo.com, emacs-devel@gnu.org To: rms@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Aug 13 07:40:16 2023 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qV3pn-0001dC-RK for ged-emacs-devel@m.gmane-mx.org; Sun, 13 Aug 2023 07:40:16 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qV3p7-0006mJ-Uh; Sun, 13 Aug 2023 01:39:33 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qV3p6-0006lR-Ce for emacs-devel@gnu.org; Sun, 13 Aug 2023 01:39:32 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qV3p6-0000lG-1S; Sun, 13 Aug 2023 01:39:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=kA9mZEXr9jaJDH1U2l+lxR+oCPN/NOq2Jng/PEjZC8s=; b=ns+hwYCCkFS7 YPE7n2Trg5uEmvEvu6BTBL75OOySfdTK9fHW/q/SP8zODdPLXmD0qsL20We4ev+maK8JZkmiB1Oc0 iM7H59IIw3Giqjcch3tl70Ve0Ocjj1cldoW/1AoxZ+j12zHnHb+V30CF7defVzyXZ1NfQHCo9EDX6 gHNsSrFiI09017ioyaaHhgbSuJkwjpazBfo+JtUQPxwZN0Dc0qne6Svpj04u1orgDdckN0ftpF4vA jGNNYi9nDVFlcYNg0MUzzpjQcskXLkLc6RBs0TyE/JVNB9XzYIO5lkrGAqjDtheyuVcyjz+FGUn4C lQoWFx8CeJxtyzw6y4boMQ==; In-Reply-To: (message from Richard Stallman on Sat, 12 Aug 2023 21:43:31 -0400) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:308650 Archived-At: > From: Richard Stallman > Cc: eliz@gnu.org, emacs-devel@gnu.org > Date: Sat, 12 Aug 2023 21:43:31 -0400 > > > Nothing broke it. Emacs never supported cross compilation in the past, > > since Emacs is needed on the build machine to compile Lisp and dump > > itself. > > In the past, building Emacs was cleanly separated into building > `temacs' and then using it to dump. We included .elc files in the tar > ball so that users did not need to compile any Lisp code unless they > changed Lisp source. (Byte-compiling Lisp code was slow and the .elc > files were portable.) > > So I think it should have worked to make `temacs' cross-compiling > and then run the rest on the target machine. That should have been > easy because it did not need to compile or link any C code. This should still work, although I doubt if anyone tried it lately. Emacs with native-compilation cannot be built that way, because the native-code *.eln files are produced at build time, and cannot be included in the tarball (they depend on the architecture of the target machine and include signatures of the Emacs binary and the location of the source *.el files). But Emacs without native-compilation could be produced in such two steps, except that the target environment still needs some support tools: GNU Make, cp and rm. (Alternatively, they could invoke the final build commands by hand, if they know how.) But I don't believe this is relevant to the Android build, since the Android development tools don't run on Android, and the Android port produces an undumped Emacs anyway.