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

Add new build system #724

Draft
wants to merge 19 commits into
base: main
Choose a base branch
from
Draft

Commits on Aug 9, 2024

  1. mtx: remove lapack quad

    No code in MESA makes use of this
    VincentVanlaer committed Aug 9, 2024
    Configuration menu
    Copy the full SHA
    b6c0693 View commit details
    Browse the repository at this point in the history
  2. mtx: eliminate all quad precision code

    None of this code is used in the other parts of MESA.
    VincentVanlaer committed Aug 9, 2024
    Configuration menu
    Copy the full SHA
    73096b3 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e75260f View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2024

  1. mtx: don't vendor lapack

    It is only used for non-sdk builds, and other required libraries (such
    as HDF5) are not included for non-sdk builds as well. Furthermore, this
    prevents the vendored version from being out of date with the SDK
    version.
    VincentVanlaer committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    d85c99a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1117217 View commit details
    Browse the repository at this point in the history
  3. build: add new build system

    This commit introduces a new build system (still based on make files).
    Reasons for replacing the previous build system were:
    
    - the previous build system had a lot of duplication between the
      modules, both in terms of make files and shell scripts.
    - parallelisation was limited. The new build system parallelises better
      within a module, and between modules.
    - build scripts and output from the build ended up in the same folder.
      With the new system, all build output files are stored in the folder
      ``build`` in the repository root, making cleaning build files
      equivalent to deleting this folder
    
    For the details of the implementation, see the newly added documentation
    (Developing -> Build system).
    
    Some further notable changes:
    
    - makedepf90 has been replaced by a perl script that scans the fortran
      source files. This allows for better flexibility in construction the
      make files.
    - Currently, `pymesa` does not work with the new build system, as the
      new system does not provide a way to build shared libraries for every
      module.
    - Dependencies are being discovered using pkg-config. This change
      makes it easier to build MESA without the SDK, as linux distributions
      typically ship with pkg-config files.
    VincentVanlaer committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    523ced3 View commit details
    Browse the repository at this point in the history
  4. build: support current SDK version

    This commit adds the necessary pkg-config files until the SDK ships
    them.
    VincentVanlaer committed Aug 26, 2024
    Configuration menu
    Copy the full SHA
    8017306 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f312827 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    188c5ad View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    6a3303f View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    3058c83 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d4fb7db View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    1893108 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    2cf15e1 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    c9a0716 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    b90d68a View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    aedf100 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    dbd8063 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    3369f7a View commit details
    Browse the repository at this point in the history