Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
On Monday, 15 January 2024 at 9:47 PM, 小さい猫 wrote: > me too, i have already compiled llvm15, so the next is clang and libc++ > blabla... On Tuesday, 16 January 2024 at 7:14 PM, 小さい猫 via Cygwin-apps wrote: > now updated to 15.0.7 so i have moved back to linux and started to continue trying to cross-compile a host rustc for cygwin and after importing the patches from my 15.0.7 cygport branch, now the cross llvm build is passed and i can finally move on to fixing the rest of the rust part
Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
On Tuesday, 16 January 2024 at 1:41 AM, ASSI via Cygwin-apps wrote: > THanks for letting us know. I can't promise, but I'll try to have a look over > the weekend. <3 On Monday, 15 January 2024 at 6:37 PM, 小さい猫 wrote: > now updated to 14.0.5 now updated to 15.0.7
Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
On Monday, 15 January 2024 at 7:47 PM, Takashi Yano wrote: > I'm really looking forward to Rust running on cygwin. me too, i have already compiled llvm15, so the next is clang and libc++ blabla... > BTW, are you aware of this ITA? > https://cygwin.com/pipermail/cygwin-apps/2024-January/043374.html yes, im glad to see someone decide to adopt Cygwin LLVM packages. > Or would you also like to take over llvm/clang package? i guess no bcs of my skill issues, i am just doing it for myself (including rust), but i would like to share my progress here xd
Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
On Thursday, 14 December 2023 at 2:42 PM, 小さい猫 via Cygwin-apps wrote: > By the way, just now I have updated these cygports to 13.0.1 LLVM release in > my GitHub repo. now updated to 14.0.5
Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
On Wednesday, 2 August 2023 at 12:32 PM, 小さい猫 wrote: > On Monday, July 31st, 2023 at 5:37 AM, Jon Turney jon.tur...@dronecode.org.uk > wrote: > > > why LLVM_CONFIG_PATH needs explicitly setting, in most packages? > > LLVM_CONFIG_PATH is there as a template, when building the next version, i > will manually set them to something like > $HOME/llvm/llvm-x.y.z-a.arch/inst/usr/bin/llvm-config. > > But maybe that is not the correct way to build it. it turned out it's not necessary, the correct build order is (i think): llvm -> clang -> compiler-rt -> libunwind -> libcxx (with the previous version of libcxxabi) -> libcxxabi -> libcxx By the way, just now I have updated these cygports to 13.0.1 LLVM release in my GitHub repo.
Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
Thank you for your hard work <3 On Monday, August 28th, 2023 at 12:28 AM, ASSI via Cygwin-apps wrote: > ASSI via Cygwin-apps writes: > > - [ ] dtc (?) Ah sorry... that device tree compiler cygport repo in the github org is not related to LLVM stuffs. just i happened to need it for building something else and it's adapted from the old cygwinports-extras[1]. [1]: https://github.com/cygwinports-extras/dtc
Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
On Monday, August 14th, 2023 at 12:50 AM, ASSI via Cygwin-apps wrote: > - ocaml-dune > + no longer builds with the original recipe, missing external libraries that > in turn require dune to build > + bootstrapped dune should still be viable > - ocaml-ctype > + would be needed for llvm > + available version is for ocaml-4.10, which is no longer installable > + need to figure out dune build and bootsrap a number of further packages > before getting this updated to 4.14 On Friday, August 18th, 2023 at 12:30 PM, ASSI via Cygwin-apps wrote: > What I was talking about is that while I can use an opam "switch" to > update ocaml and its dependencies in a private installation, I can not > build the Cygwin packages that would need to be distributed or update > the system installation of OCaml. If it exists, any option to update > the system files has eluded me. In particular, I have not yet figured > out how to break the circular dependencies for a bootstrap build. Opam > must know how to do this or it wouldn't suceeed, but doesn't show what > exactly it's doing by default. THere's probably a way to look at that > too… i am not familiar with the ocaml stuffs, and i dont quite understand what is the problem ur currently getting. since i dont want to revive ocaml stuffs, at least for now bcs it looks like a lot of work and i dont really need them. however, i did tried to compile ocaml-dune version 2.9.3 and 3.7.1 (for ocaml 4.14) previously for some other personal reason (not for llvm), and here are the prebuilt binaries of dune 3.7.1 if you need[1], i kinda forgot how i bootstrapped it. i didn't upload the cygport files for this dune and other related/depended pkgs, but i made a dirty tarball at here just now: [2], some of them are still wip. [1]: https://cygwin-llvm-revived-mirror.d0ve.workers.dev/0:/_ocaml/cygwin-ocaml.7z [2]: https://cygwin-llvm-revived-mirror.d0ve.workers.dev/0:/_ocaml/cygports_with_git_history.tgz
Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
On Friday, August 18th, 2023 at 8:59 AM, 小さい猫 via Cygwin-apps wrote: > also starting from llvm 11, libunwind seemed to use some asm and the build > bugged due a cmake bug(?) the cmake issue is about to remove -fPIC from the asmflags. starting from llvm12, msys2/mingw introduced a patch to suppress the error/warning about this flag and it only appear when using MSVC target, so i imported that patch: https://github.com/ookiineko-cygpkg/clang/blob/main/12.0.1-cygming-disable-fpic-errs.patch
Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
On Monday, August 14th, 2023 at 12:50 AM, ASSI via Cygwin-apps wrote: > I've started a local llvm-revival branch… I got sidetracked with OCaml, > but that will need some more time and currently I have just disabled the > OCaml bindings in LLVM instead (not removed: this is controlled by a > variable in the script and another variable to control the LLVM target > list). I am not sure but there is probably some upstream changes are needed in cygport source[1] to get latest ocaml-findlib & ocaml-dune to work properly. the dependency infos in META files seems start to have some pretty printing and the old regex and patterns for finding the depended pkg names are no longer working correctly. also starting from llvm 11, libunwind seemed to use some asm and the build bugged due a cmake bug(?), possible fix is here[2]. [1]: https://gist.github.com/ookiineko/8fc62f16e2cdff587d42d6d8d6cc7067/raw/7e02d879d47f8f074b1cc26ff41a94f7b54fa650/ocamlfind-dune-pretty-print.patch [2]: https://github.com/ookiineko-cygpkg/cmake/commit/c198158965fe3714bf101dda5dedc9fb5778e4d4
Re: [Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
On Monday, July 31st, 2023 at 5:37 AM, Jon Turney wrote: > I would like to ask why you've dropped debuginfo package generation, and > why LLVM_CONFIG_PATH needs explicitly setting, in most packages? just because my laptop doesn't have much storage left for Windows... LLVM_CONFIG_PATH is there as a template, when building the next version, i will manually set them to something like $HOME/llvm/llvm-x.y.z-a.arch/inst/usr/bin/llvm-config. But maybe that is not the correct way to build it.
[Sharing progress] Tried to revive LLVM/Clang/Libc++ pkgs and port Rust
Hello. Recently, for my personal needs, I have been trying to tweak and upgrade the following packages: llvm, compiler-rt, libunwind, libcxxabi, libcxx, clang (upgrading version by version from the original 9.0.1, and currently upgraded to version 12.0.1). I imported some useful patches from Fedora RPMs, MinGW packages from MSYS2, and okuoku's llvm fork[1]. For patches and modified cygport files, the repos are here: https://github.com/orgs/ookiineko-cygpkg/repositories (commit histories are preserved). However, I haven't tried to run the test suite because my laptop is not very good, I just know that helloworld compiles and runs fine (regarding c++, I tested linking against libstdc++ and libc++). I have uploaded the precompiled binary & source packages to here: https://cygwin-llvm-revived-mirror.d0ve.workers.dev/0:/experimental/. For Rust, it needs a lot of patches. I have tried to add the target/libc/STD support to version 1.67.0, and cross-compile from a Fedora host. For now, helloworld works, even some simple programs like ripgrep. But stack unwinding (panicking) is buggy, and no host compiler tools for now (because that requires native LLVM 15+). The Rust port is a bit outdated now, since the latest Rust version is 1.71.0 (7 releases behind I guess), but I believe it should not be too hard to get the patches rebased. I plan to do this after I can get LLVM 15 working. For more info about the Rust port: https://gist.github.com/ookiineko/057eb3a91825313caeaf6d793a33b0b2 [1]: https://github.com/okuoku/llvm-project/tree/cygwin64 Thank you, Ookiineko.