Add support for automatically building libgccjit from source

Đang mở
#719 6 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
30/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
rust, shell
Lĩnh vực
build-system, cli, compilers

Hướng nghiên cứu

Bắt đầu với cơ chế dispatch lệnh hiện có của y.sh và logic phân phối/build libgccjit hiện tại. Xem xét cách ./y.sh rustc --gcc chọn libgccjit, sau đó xác định phạm vi cho một lệnh y.sh gcc, việc tích hợp cross-ng và các bản build theo cấu hình trong build/libgccjit. Công việc được xem là hoàn tất khi các workflow được đề xuất cho việc build từ mã nguồn và lựa chọn đã được định nghĩa và triển khai.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Currently, we only distribute a pre-built libgccjit for x86_64, requiring people to build it from scatch on other platforms.

We could add a y.sh gcc command, allowing people to easily clone GCC and build it from source with one command.

Doing so would reduce the barier to entry, and simplify testing on other platforms.

Furthermore, we could integrate this command with cross-ng, allowing people to build cross compilers more easily. We could provide some default configs for common platforms, and allow people to load custom ones.

With a bit more effort(particularly regarding the sysroot), we could even allow people to have multiple builds of libgccjit, stored somewhere like build/libgccjit/config_name. People could then select the libgccjit version they are using(for other commands), like this:

./y.sh rustc --gcc x86_64-linux test.rs # build for x86_64 Linux
./y.sh rustc --gcc dec-alpha-linux test.rs # build for Dec ALPHA Linux
./y.sh rustc --gcc my_config_for_a_very_specific_system # Build with a custom version of `libgccjit`, with some special configs / patches.

This feature could also be useful with Rustup distribution. Providing an easy way to build libgccjit for other platforms would make doing so automatically easier.

Ngôn ngữ chính
Rust
Star
1.2k
Fork
106
Merge trung bình
11 giờ 14 phút
Pull request đã merge (30 ngày)
25

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của rust-lang/rustc_codegen_gcc

Tất cả issue của rust-lang/rustc_codegen_gcc

Issue tương tự

Thêm issue về Rust

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.