public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
From: William Hu <purplearmadillo77@proton.me>
To: ASSI <Stromeko@nexgo.de>
Cc: cygwin-apps@cygwin.com
Subject: Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
Date: Wed, 30 Aug 2023 02:18:56 +0000	[thread overview]
Message-ID: <6U1KGZ5IipB7z0fLRrYZF_Yv9IbQM3yx8gsZTJu_APmsJJBNsm7tX--zQf9hQImWQvzv_zT3FAtn7uVA4NaVSEVUeU7jyTwttI4cGMhPcA0=@proton.me> (raw)
In-Reply-To: <871qfn3v82.fsf@Rainer.invalid>

Hi All,

Re OCaml compilers: I should be able to package OCaml 4.14.1 (and hopefully an 
alpha version of 5.1.0 as well) for Cygwin in the coming weeks. OCaml 5.0.0 
temporarily dropped Cygwin support so the Cygwin versions will of course skip 
that release.

On Saturday, August 26th, 2023 at 3:40 PM, ASSI wrote:
> + ocaml_config imports stupid flags from the cygport build
> + probably from /usr/lib/ocaml/Makefile.config

Just checked the file and I agree that CFLAGS looks a little funny - are there any 
other stupid flags/variables that you had in mind?

> I can get to that point with a bootstrap build or even a fully
> configured one with opam. If I could figure out how to get opam to
> actually install into the system and not this bloody unexplained thing
> that it calls "switches" (which are maybe a totally cool thing, but I
> neither need nor want them) I could likely bootstrap the whole thing and
> get the packages rebuilt that the OCaml LLVM bindings need.

Re Opam switches: As far as I understand, switches are like "git branch" but for 
different compiler installations instead of different code branches; for example 
you can install ocaml 4.14.0 and 4.12.0 side by side and switch between them 
easily. In addition to some other things, it effectively edits your PATH 
environment variable so when you type "ocamlc" it'll execute the appropriate version.

General comment: I don't know much about LLVM, but is there a reason why the 
other software (dune, ocamlbuild, etc.) must be installed with the system and 
not with opam?

> Cygport package changes are in the Cygwin Packages Git repository in the
> respective playground branch as before.

Re OCaml cygport playground: Thanks for the cygport cleanup and changes.
A couple questions:

src_compile:
1. Adding flambda to a default system installation of OCaml can slow down 
compile times and produce linking incompatibilities with non-flambda code [1]. 
Additionally, there may be value in a vanilla out-of-the-box OCaml distribution.
Let me know if there is some general Cygwin guidance on what features packaged 
language compilers should support. Otherwise, if flambda is necessary for LLVM, 
I could package an flambda and a non-flambda release for each version, and the 
user can pick which one they prefer.

2. What benefit does splitting "cygmake" into the 3-step "cygmake world, opt, 
opt.opt" have? Plain old "make/cygmake" with no target appears to be the 
recommended compilation step.

src_test:
1. I believe "make ocamltest" does not run the testsuite; AFAIU, it builds the 
auxiliary testing software instead. So far the only ways I know of to run the 
testsuite are either "make tests" or cd'ing into the testsuite directory and 
running "make all" (the old method).

Thanks,
William

[1] https://v2.ocaml.org/manual/flambda.html




  reply	other threads:[~2023-08-30  2:19 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-27  6:46 小さい猫
2023-07-30 21:37 ` Jon Turney
2023-08-02  4:32   ` 小さい猫
2023-12-14  6:42     ` 小さい猫
2024-01-15 10:37       ` 小さい猫
2024-01-15 11:47         ` Takashi Yano
2024-01-15 13:47           ` 小さい猫
2024-01-16 16:44             ` 小さい猫
2024-01-15 17:41         ` ASSI
2024-01-16 11:14           ` 小さい猫
2024-01-21 20:37             ` ASSI
2023-08-13 16:50 ` ASSI
2023-08-14 18:39   ` ASSI
2023-08-18  0:59   ` 小さい猫
2023-08-18  1:11     ` 小さい猫
2023-08-18  4:30     ` ASSI
2023-08-18  7:46   ` 小さい猫
2023-08-26 19:40     ` ASSI
2023-08-27 16:28   ` ASSI
2023-08-28  2:26     ` 小さい猫
2023-08-28 17:58       ` ASSI
2023-08-30  2:18         ` William Hu [this message]
2023-08-30 12:16           ` William Hu
2023-08-30 16:31           ` ASSI
2023-09-05 13:47             ` William Hu
2023-09-05 16:11               ` ASSI
2023-09-05 16:13           ` ASSI

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='6U1KGZ5IipB7z0fLRrYZF_Yv9IbQM3yx8gsZTJu_APmsJJBNsm7tX--zQf9hQImWQvzv_zT3FAtn7uVA4NaVSEVUeU7jyTwttI4cGMhPcA0=@proton.me' \
    --to=purplearmadillo77@proton.me \
    --cc=Stromeko@nexgo.de \
    --cc=cygwin-apps@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).