Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

SHMUP: Restructure Makefile

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

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

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
35/100
Loại issue
Tái cấu trúc
Độ rõ ràng
Đặc tả rõ ràng
Mức độ hoạt động
Đình trệ
Lĩnh vực
build-system

Hướng nghiên cứu

Bắt đầu bằng cách đọc Makefile và pull request #57 được liên kết, sau đó so sánh các biến, đường dẫn và các bước build in-tree hoặc out-of-tree của nó với checklist trong issue này. Công việc được xem là hoàn tất khi Makefile đơn giản hơn, sử dụng cú pháp biến được yêu cầu và dự án tutorial vẫn build thành công.

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

Mô tả

Continuing the discussion in https://github.com/gbdev/gb-asm-tutorial/pull/57:

@ISSOtm said:

Regarding the Makefile, I have a few primary suggestions right now. Most of them revolve around making the Makefile drastically simpler, following the theme of introducing new concepts incrementally.

  • Remove the SRCDIR variable. The point of variables like OBJDIR is to allow building out-of-tree in a flexible location; however, it makes imo no sense to allow pointing the Makefile at a different source tree, since it's inherently part of it.
  • Use ${} for variables instead of $(). This helps differentiate them from function calls (which only accept the latter syntax); this is especially useful when both kinds are nested.
  • Remove all of the *DIR and RGB* variables. For a "directed" project like this, it should be fine to hardcode all paths; this will notably remove one layer of indirection, and allow the reader to familiarise themselves with what that layer of indirection will "resolve" to. (There may be a case for keeping all of the RGB* variables, in case someone doesn't have RGBDS in their path, or under different names? Idk.)
  • Build in-tree. Building out-of-tree is better for a lot of reasons, but adds significant complexity (creating output directories, doing more path substitution instead of just extension rewriting, etc.). Again, since this is a "controlled environment", it should be fine to do things slightly dirty if it helps introducing concepts gradually; additionally, I believe experiencing the downsides of in-tree builds should help justify the extra complexity of out-of-tree builds when they're introduced later.
Ngôn ngữ chính
Assembly
Star
179
Fork
64
Merge trung bình
7 ngày 22 giờ
Pull request đã merge (30 ngày)
1

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

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 gbdev/gb-asm-tutorial

Tất cả issue của gbdev/gb-asm-tutorial

Issue tương tự

Thêm issue về Build System

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.