Skip to content

Simplify Makefile config generation pipeline

  • Please check this box if this contribution uses AI-generated content (including content generated by GitLab Duo features) as outlined in the GitLab DCO & CLA

What does this merge request do and why?

Tried to make make code independent from rake.

The make code only need GDK config file. But config is for some reason needs rake, which brings a lot of stuff on board imported from required lib/gdk.rb.

As an alternative, generate Makefile config with pure Ruby, and ensure there is no extra code executed for nothing. This will bring bootstrap sequence from:

graph LR
  bash --> ruby --> bundle --> make --> rake --> make

To:

graph LR
  bash --> ruby --> bundle --> make

Main problem: Makefile uses GDK configuration

Why problem?: Makefile are meant to run source code build tasks, not GDK logic, and here we have a mix of "logic to build GDK" and "GDK logic to build GitLab". The latter creates spaghetti code and confusion.

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

Impacted categories

The following categories relate to this merge request:

Merge request checklist

  • This change is backward compatible. If not, please include steps to communicate to our users.
  • Tests added for new functionality. If not, please raise an issue to follow-up.
  • Documentation added/updated, if needed.
  • Announcement added, if change is notable.
  • gdk doctor test added, if needed.
  • Add the ~highlight label if this MR should be included in the CHANGELOG.md.
Edited by Anatoli Babenia

Merge request reports

Loading