Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: fix the build system #212

Merged
merged 7 commits into from
Apr 7, 2023
Merged

Commits on Apr 2, 2023

  1. build: make the logo a build step

    Currently, the logo is always printed when the build script is executed,
    resulting in the logo being printed twice with `zig build -h` and
    `zig build -l`.
    
    Make the logo a build step, so that the logo is printed to stderr only
    when necessary.
    
    Closes ratfactor#211
    perillo committed Apr 2, 2023
    Configuration menu
    Copy the full SHA
    24478be View commit details
    Browse the repository at this point in the history

Commits on Apr 3, 2023

  1. build: restore support for Zig 0.6.0

    The version check for Zig 0.6.0 was incorrect since commit
    971ab7f (Use a zig build script to run ziglings).
    
    Move compatibility support to a separate file, in order to simplify
    build.zig.
    
    In case of incompatible version, exit with code 3 instead of 0, in order
    to detect the case of failure in a test (to be implemented).
    
    Remove the use of comptime when checking compatibility at the start of
    the build function, since it is not necessary.
    
    Closes ratfactor#210.
    perillo committed Apr 3, 2023
    Configuration menu
    Copy the full SHA
    4bd2b62 View commit details
    Browse the repository at this point in the history

Commits on Apr 4, 2023

  1. build: replace the logo step with the header step

    Remove the logo step, and use PrintStep for the header step.
    
    The logo step was added as a quick fix after the Builder.addLog function
    was removed.
    
    Now the logo is no longer shown when running `zig build -l` or
    `zig build -h`.
    perillo committed Apr 4, 2023
    Configuration menu
    Copy the full SHA
    9354de0 View commit details
    Browse the repository at this point in the history

Commits on Apr 5, 2023

  1. build: fix the description of the named_install step

    Replace the description of the named_install step from
    "Install {s} to zig-cache/bin" to "Copy {s} to prefix path".  The latter
    has been adapded from the description of the builtin install step.
    
    Ad an empty line before the build_step variable, in order to improve
    readability.
    
    Closes ratfactor#213
    perillo committed Apr 5, 2023
    Configuration menu
    Copy the full SHA
    7b793d8 View commit details
    Browse the repository at this point in the history

Commits on Apr 7, 2023

  1. build: restore the exercise chain

    The new parallel build support in Zig broke the exercise chain, so that
    each esercise check is no longer strictly serialized.
    
      1. Add the Dexno option, in order to isolate the chain starting from a
         named exercise from the normal chain, thus simplify the code.
    
         The current code have an additional issue: it added 4 x n steps,
         making reading the help message or the list of steps very hard.
    
         Add only the `install`, `uninstall`, `zigling`, `test` and `start`
         steps.  The last three steps match the old steps `n`, `n_test` and
         `n_start`.
    
         The default step is zigling (note the singular form).
    
         The `install` step override the builtin install step, showing a
         custom description and matches the old `n_install` step.
         The uninstall step was added for consistency, so that the
         description is consistent.
    
         Setup a new chain starting at `zig build -Dexno=n start` so that it
         is stricly serialized.
    
         The behavior should be the same as the old one.
    
      2. Handle the code for all the exercises separately.
    
         Add only the `ziglings step`, making it the default step, in
         addition to the install and uninstall steps.
    
         Setup a new chain starting at the first exercise, to that it is
         strictly serialized.
    
         The behavior should be the same as the old one.
    
    The current code has a know issue: the messages from the ZiglingStep and
    the ones from the compiler compilation progress are interleaved, but each
    message is written atomically, due to the use of `std.debug.getStderrMutex()`.
    
    Update the README.md file.
    
    Closes ratfactor#202
    perillo committed Apr 7, 2023
    Configuration menu
    Copy the full SHA
    0d56ba3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f4408f9 View commit details
    Browse the repository at this point in the history
  3. Insert current zig version for compatiblity!

    This is primarily to make users aware that there has been a change in the call for individual exercises.
    chrboesch committed Apr 7, 2023
    Configuration menu
    Copy the full SHA
    45ccfa7 View commit details
    Browse the repository at this point in the history