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: Suppressing native compilation (short and long term) Date: Wed, 05 Oct 2022 22:38:46 +0300 Message-ID: <83czb6rrg9.fsf@gnu.org> References: <83sfk6ahty.fsf@gnu.org> <87v8p1aiof.fsf@melete.silentflame.com> <87v8p01lbu.fsf@yahoo.com> <83lepwvzxq.fsf@gnu.org> <871qroyog9.fsf@yahoo.com> <837d1gvt35.fsf@gnu.org> <87sfk3yl10.fsf@yahoo.com> <87o7uqtlsl.fsf@yahoo.com> <878rlu48kq.fsf@gnus.org> <83r0zmrzcx.fsf@gnu.org> <83lepuruoo.fsf@gnu.org> <92d8fa67a9a90c046b0c@heytings.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="34433"; mail-complaints-to="usenet@ciao.gmane.io" Cc: tomas@tuxteam.de, emacs-devel@gnu.org To: Gregory Heytings Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Oct 05 21:42:35 2022 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 1ogAHr-0008nn-Ez for ged-emacs-devel@m.gmane-mx.org; Wed, 05 Oct 2022 21:42:35 +0200 Original-Received: from localhost ([::1]:40210 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ogAHp-0002K8-U1 for ged-emacs-devel@m.gmane-mx.org; Wed, 05 Oct 2022 15:42:33 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:42734) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ogAEI-0008T8-7p for emacs-devel@gnu.org; Wed, 05 Oct 2022 15:38:54 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:52468) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ogAEH-0008VC-5J; Wed, 05 Oct 2022 15:38:53 -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=5UgEjEoqsruyGrus/JQrEVDB2pX87GDU1RKqp9e2GSM=; b=sLbO1CH2tL5o MTgiy+uxaQfMAnBk6JNuCaFGOBsm7MR9x1f0tnFXGMefDIED+yGuuRdLvKiHytv8EviaKod2CjrUT ulAD46em88yWQ/P3+DvoC2Ck+9PmLNPo80yRi3Fy56P//oaVvBTDoQuCZED8Y/M/cOygezrQDs3l+ /IvQsVgqDKbMqjP+VQyxOQdX6QVSqGCCUNHZPU5p8FFNwDWAEjcikXob+UCYvGCrM2Pk1uo28x7dd RYmEKUvPs2X9hYS1lpkqZRH+tVaAjmNVLLSTqcSel52auHC4iJdzqBEa3FzFpHqbpBAM5diTETVMV jszOKaGLWVTiDUrQqiSexw==; Original-Received: from [87.69.77.57] (port=2336 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ogAEB-0006y5-LY; Wed, 05 Oct 2022 15:38:51 -0400 In-Reply-To: <92d8fa67a9a90c046b0c@heytings.org> (message from Gregory Heytings on Wed, 05 Oct 2022 19:29:45 +0000) 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" Xref: news.gmane.io gmane.emacs.devel:297009 Archived-At: > Date: Wed, 05 Oct 2022 19:29:45 +0000 > From: Gregory Heytings > cc: tomas@tuxteam.de, emacs-devel@gnu.org > > > I think the Debian case is not relevant, because they provide all the > > *.eln files with the package you install (or so I understand). > > I'm not 100% sure what they will do (the version of Emacs distributed by > Emacs is at the moment still 27.1), but my guess is that this is not what > they will do. There are, in fact, two cases: > > 1. When a user does "apt install emacs", this actually installs (by > default) the "emacs-gtk" package, which contains only the "emacs" binary, > and triggers the installation of two other packages: "emacs-common", which > contains the precompiled elc files (and the files in etc), and > "emacs-bin-common", which contains the emacsclient, etags, ctags and > ebrowse binaries. I would guess that in this case, when the user chooses > to install an emacs with native compilation enabled (say > "emacs-gtk-native"), a third package will be installed, say > "emacs-common-native", containing the precompiled eln files. > > 2. When a user does "apt install elpa-magit" (for example), the package > only contains el files. These files are compiled to elc files during > installation (and stored in a shared directory, namely > /usr/share/emacs/site-lisp). I would guess that, when the installed emacs > binary is one with native compilation enabled, these el files will be > compiled to eln files during installation, and stored in a shared > directory, too. I agree with the above. But then why did you say that my description was inaccurate? What you described matches what I wrote perfectly: the end result, after installing Emacs and elpa-magit, is that the *.eln files are available for all the *.el files and stored in shared directories. Whether those *.eln files are produced on the system where the package is packaged or as part of the installation is not important; the important part is that all the *.eln files are there after the installation, and therefore there's no need to disable JIT compilation. And yet Rob says that he thinks there _is_ a need for disabling it.