From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Andy Tai Newsgroups: gmane.lisp.guile.devel Subject: guile Amalgamation Date: Mon, 26 Sep 2022 14:25:21 -0700 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="28170"; mail-complaints-to="usenet@ciao.gmane.io" To: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Mon Sep 26 23:26:31 2022 Return-path: Envelope-to: guile-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 1ocvcV-0007A5-7s for guile-devel@m.gmane-mx.org; Mon, 26 Sep 2022 23:26:31 +0200 Original-Received: from localhost ([::1]:37714 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ocvcT-0006ey-Sw for guile-devel@m.gmane-mx.org; Mon, 26 Sep 2022 17:26:29 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:51474) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ocvc5-0006en-JM for guile-devel@gnu.org; Mon, 26 Sep 2022 17:26:06 -0400 Original-Received: from mail-io1-xd2b.google.com ([2607:f8b0:4864:20::d2b]:41645) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ocvbz-0003Z6-G4 for guile-devel@gnu.org; Mon, 26 Sep 2022 17:26:04 -0400 Original-Received: by mail-io1-xd2b.google.com with SMTP id r134so6326638iod.8 for ; Mon, 26 Sep 2022 14:25:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=atai-org.20210112.gappssmtp.com; s=20210112; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date; bh=UqWVD7NlOpxUDcaan1pFBAr2FnG/gbNV4NeOwjq6eLI=; b=5gRp7DjtazlHNG4NRvQ424RqRyBlB0McZUHMWtaOjEoVry/N7YyJrda3tHEKY2u87s tNQnSrigQ9zNEvgpjU7BPu64Yg8RnlITXk0DzSfC2EeRdTSGZkGUX1IwPKzpygFEKYn8 ZtIZjq25njT3V4W2LV6wSBFKzYJJLTSl8jnYzai3SD32KCHd1zUIZoA6tQHGTSomu6PU xVGHdRSfakV3tBnnmke+r1+nxzENvP0+1rlqM3Au8fD4xYd7e8l2aGiGMnBZ+FSE4v6D 1ZJGjJ3dU1TG3oWYx3TladM8KlIjyXxGymP9wew6X1iEjHgVDvYSLAcBhTjlj1gbyMvF ERdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date; bh=UqWVD7NlOpxUDcaan1pFBAr2FnG/gbNV4NeOwjq6eLI=; b=chek1i3MHCIASR8TJcrOOJ2IOEMJGzSbN/0ulrtqvQvDdvsNjsJUgS7j/FinYuKHxz AogHK/R3T1E1lbfz9JrSkIB3unXxU9wlyO50bdPpIoNpSCdiatYg+wIRRsfbLxxVDw9M GXDuRlS0Nc8J9G1Ro17IZ8GI/23MfZfJQyIr9zoUXd+Muwwh5dLorXxkLAtoTm/c75Vz dIikef0V43pyhhucqiij+uTBNAq9oqVyRJxoi1id4AF2l+FNrgGzjsnMWrfQiPO/PKUL J/s7vYDd/MfIDc6woiDmkePzRW02cw5q1DMpM1OQqqgs3LY13t2VvcNegInrUrGjIqPN WD3A== X-Gm-Message-State: ACrzQf050SBHw9Oe33NTLWt26azeSfYe623QhaPIyBLo0QGvwdEQ6sLZ TJ8H3LiWOjIKPqS682qqzd9iwS37jFL/Uqd/FPdOK/mBm3M= X-Google-Smtp-Source: AMsMyM7Ipy42OC5xuGqYHQzJGL/EJI8CmihUIN92rFwbxwYJ+q+zgCMB8Zb1E5KS3jrlaYw24OHKyTEG75k/eWfcKZ8= X-Received: by 2002:a05:6638:3828:b0:35a:415e:fb8f with SMTP id i40-20020a056638382800b0035a415efb8fmr13217028jav.71.1664227557175; Mon, 26 Sep 2022 14:25:57 -0700 (PDT) Received-SPF: pass client-ip=2607:f8b0:4864:20::d2b; envelope-from=lichengtai@gmail.com; helo=mail-io1-xd2b.google.com X-Spam_score_int: -13 X-Spam_score: -1.4 X-Spam_bar: - X-Spam_report: (-1.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.249, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.25, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.io gmane.lisp.guile.devel:21370 Archived-At: Is it possible for guile to have a "Amalgamation" form? I am thinking of something like Sqlite Amalgamation https://www.sqlite.org/amalgamation.html with that you have a single .c file and can build guile with a single command gcc -o guile guile-amalgamation.c This would be useful to be able to obtain an guile executable without any build tool on any system, which can be then used to implement software engineering tools like autotools or meson, for example. Software tools can be written in guile instead of, say, tcl or python. This guile may contain just a subset of the standard guile (say without the full numerical tower or some libraries, or jit compiler (say if someday gcc jit is integrated with the standard guile) but may be useful for its intended usage context. One would expect guile-amalgamation.c to be an possible output from the standard ./configure && make && make install step of the standard guile distribution, so it can be customized for specific machines letting the configure step doing its normal thing.