Skip to content

Commit

Permalink
Implement a pre-build configuration process and datatype
Browse files Browse the repository at this point in the history
This is intended to be an API-compatible refactor to
make future extensibility and configuration of
PackageCompiler.jl far simpler. The core idea is
to implement a configuration process, and corresponding
output datatype to be consumed by the build process.

This conceptually splits the process of building sysimg/app/libs,
from the high-level logic determining names, build tools, flags,
etc. The benefit of this is that it immediately commonizes
code that was duplicated amongst the three of: `create_sysimage`,
`create_library`, and `create_app`. It will also
make it far simpler to allow for configuration and propagation of flags
like `ldflags` and `cflags` which are currently not
easily exposed in the build process.

This is a rough sketch of the idea, and so far the API seems
to be preserved acceptably. Feedback and design
input would be much appreciated. I suspect the `Conf`
type may need some indication of `mode` since
some terms are overloaded and may not make sense to
define in all contexts.
  • Loading branch information
sjkelly committed Mar 17, 2024
1 parent 8cd96a1 commit 5209a6a
Showing 1 changed file with 437 additions and 202 deletions.
Loading

0 comments on commit 5209a6a

Please sign in to comment.