From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: "Thompson, David" Newsgroups: gmane.lisp.guile.devel Subject: [EXT] Guile 64-bit Windows support, redux Date: Tue, 6 Jun 2023 17:10:12 -0400 Message-ID: References: <1629803116.370682.1686084646758.ref@mail.yahoo.com> <1629803116.370682.1686084646758@mail.yahoo.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23854"; mail-complaints-to="usenet@ciao.gmane.io" Cc: "guile-devel@gnu.org" To: Mike Gran Original-X-From: guile-devel-bounces+guile-devel=m.gmane-mx.org@gnu.org Tue Jun 06 23:11:00 2023 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 1q6dxD-00060I-O5 for guile-devel@m.gmane-mx.org; Tue, 06 Jun 2023 23:10:59 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1q6dwm-0005IN-Pa; Tue, 06 Jun 2023 17:10:32 -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 1q6dwk-0005IE-BV for guile-devel@gnu.org; Tue, 06 Jun 2023 17:10:30 -0400 Original-Received: from mail-qt1-x834.google.com ([2607:f8b0:4864:20::834]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1q6dwf-00018h-Cw for guile-devel@gnu.org; Tue, 06 Jun 2023 17:10:30 -0400 Original-Received: by mail-qt1-x834.google.com with SMTP id d75a77b69052e-3f80fef8b48so38592951cf.0 for ; Tue, 06 Jun 2023 14:10:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=worcester-edu.20221208.gappssmtp.com; s=20221208; t=1686085824; x=1688677824; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=iLzcYotvm2/4IM4s9M/3yAcG/J4xkkNneXQXHnv49Xk=; b=qNIIYV0h+zw+/mXcL7LM4SlnNZQB9FkTRYnIOcoxUL79ReKMOar4e0qbb+Df0rYCRF PRmLLjxHfN/UEY54W3sN4c80pmDmSLA9QMHp1Q19jYq19xiBKqYJ7LzfY6lceGNBdAb8 CiFfP08Tvll98rrMqo7WQVFyha1A0xD09VPvjQNUkTvLRig3YSiqRV6PIJiQPl4RNPS/ 274fuatSK+uV5AIUVQ++cycMdG1Hq4fK0uoy89hzHK+7Ug9ddCqOqqXtNHqtp8/R9+8P gumGmMat+8vn/2h9UQkJGg5BBf6Ed2p3RAC3SdO8bLBproWRVQPdH0TtDJLQrRrrjXMw 8xng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1686085824; x=1688677824; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=iLzcYotvm2/4IM4s9M/3yAcG/J4xkkNneXQXHnv49Xk=; b=RcnE0c3aNDBQ3slG/fRWz4ZyiPzHZWlBL1RHmetij4rOAW+ssnO2gu0dXDUbbzLq5L x/0nenhUGjwiq9c4Z+9Z/Tqt8UVweIN82SlcrrELCf3tjVj0SbIL+Nh7xK1y3jKuW3nf ActC3SfvQ+BXIfXARlVdqd0j7yYuAhRwndEmMHqh/5z0p7JJVsTicc5Jk5VLKJ8FIrTK ai+ODBbbEy2LFYF9CV3vdjAhJZSjWTfZk8l+9CX28WmFM5y/mRU1Hbwa3TVfP+NK19VR T8hDw3OHkfP5tm9POkzfmsIqp3L7R0SupSi1A048tLDJburKon4e7rOVU4NMg55mgNTf 5umA== X-Gm-Message-State: AC+VfDzQ+zj1ESCu1Xaf5m8pL5nRAwnlotJRSYiTZ68oxu8Hc8+kmJaY 5TrTAu4KEy3xTm1jA1nrON15FahHU5OA8UYIX3zjt8zHT3jzuqqd X-Google-Smtp-Source: ACHHUZ723k6AGpYPm1m6AnEemKI86f6agqonNoenJpIbaOJFqVjk8aQqrbuN0+PhKcMDfdetUXQ6X9qaEHB4/Gksy5o= X-Received: by 2002:ac8:5b96:0:b0:3f9:a731:452d with SMTP id a22-20020ac85b96000000b003f9a731452dmr1161851qta.21.1686085823952; Tue, 06 Jun 2023 14:10:23 -0700 (PDT) In-Reply-To: <1629803116.370682.1686084646758@mail.yahoo.com> Received-SPF: pass client-ip=2607:f8b0:4864:20::834; envelope-from=dthompson2@worcester.edu; helo=mail-qt1-x834.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham 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-bounces+guile-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.lisp.guile.devel:21852 Archived-At: Hi Mike, On Tue, Jun 6, 2023 at 4:51=E2=80=AFPM Mike Gran wrote: > > Hello Guile, > > There have been a few times where I made Guile work on > MinGW -- usually the 32-bit, unthreaded variety -- because I wanted it > for my own entertainment. Often around the time of the Lisp Game Jam. > The Game Jam just happened, so I was poking it again. Although > I never actually delivered my game this year. Game jam time is also when I lament the lack of real Windows support. I'm very interested in being able to provide Windows releases of games built with guile-sdl2 and/or chickadee. The Common Lisp and Fennel folks have no problem shipping things for Windows users. > Janneke has also poked at Windows support a few times as well, and > he actually got it to run on 64-bit Windows. Did JIT work? When I tried this years ago it didn't. Would be a major victory if it works now. > I'd be willing [1] to update the patches for MinGW support for > review and inclusion into the main branch > for 3.0.10 or 3.2 but, only if maintainers are open, in principle, > to committing the most disruptive patch: the one where all > long integers become intptr_t to deal with Window's stupid > 4-byte longs on 64-bit OSs. Without agreeing on that as a > possibility, 64-bit Windows support is DOA. > > There are a couple of slightly outdated versions of janekke's 64-bit patc= h. > Here, for example: > > https://git.savannah.gnu.org/cgit/guile.git/commit/?h=3Dwip-mingw&id=3D76= 950b4281c7dfff78b9ead6d3d62c070bbc1f13 > > Lately, with GitHub providing decent zero-cost Windows images > for their CI/CD actions, it should be possible to do a nightly pull > and 'make distcheck' off the main branch for Windows, Ubuntu, > and MacOS, without requiring the developer to use non-free tools > directly. (But lots of non-free Javascript and who-knows-what on > GitHub's side of things.) I'm obviously not a maintainer but I do want to be vocal in my support for a good Windows story. Despite how much I personally do not want to use Windows, I do want users who do to be able to run my software. > If this could be set up, it might stop the Windows build from getting > stale so quickly. > > Also, it might be that this isn't worth doing. After all, you can run > Guile on Cygwin and Guix on WSL on Windows 10/11 already. > But some projects that depend on Guile do deliver on > Windows using customized versions of 2.2 or 1.8. WSL is cool and all, but personally I want to ship native Windows stuff that "just works" as much as possible. I'm not sure what the graphics story is like on WSL these days, but in the past dealing with X11 compatibility and GPUs was not easy, or so I've heard. So for me, I'd really like to see the MinGW build work acceptably (threads, JIT, etc.) Building with MSVC would be even better but I'll take what I can get. :) I just get jealous whenever I look at some new language implementation (or just some other Scheme) and see that it can do native Windows, Linux, and MacOS builds. - Dave