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

[Meta issue] List of cpt.py improvements #406

Open
2 of 15 tasks
reikdas opened this issue Apr 8, 2021 · 0 comments
Open
2 of 15 tasks

[Meta issue] List of cpt.py improvements #406

reikdas opened this issue Apr 8, 2021 · 0 comments
Assignees

Comments

@reikdas
Copy link
Contributor

reikdas commented Apr 8, 2021

  • Use a if __name__ == "__main__" block as program execution starting point in cpt.py
  • No mutating global variables in cpt.py
  • Minimize use of subprocess in cpt.py
  • Making cpt.py flake8 compliant (with appropriate error/violation codes)
  • Fix .deb packaging (existing effort: Fix deb creation vgvassilev/cling#214) [Clarify why there is no packages #307]
  • Fix --verbose flag not printing verbose output in CMake build log (using cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON instead of make VERBOSE=1 might fix this)
  • Do not allow users to use currently "known" broken/untested features in cpt.py; comment out relevant parts
  • Revamp argument parser
    • cpt.py is both a Cling installer and a packager. It should be possible to build Cling without packaging it.
    • Enable dependent arguments. Ideally, we should be able to pass some arguments only if some other argument is also passed (for eg. it doesn't make sense to pass --with-llvm-url if LLVM is being installed from system package manager).
    • Fix nomenclature (we have arguments named --with-llvm-tar and --with-binary-llvm; there should be some uniformity)
  • Fix builds using LLVM pre-built binary tarballs (on Linux and macOS) and add it to CI
  • Fix builds using LLVM installed from system package manager (on Linux and macOS) and add it to CI
  • Enable builds using LLVM pre-built binaries on Windows and add it to CI
  • Update cpt.py README, both in root directory as well as in tools/packaging [cpt.py disfunctioning #372]
  • Use homebrew as default package manager on macOS, instead of macports [[cpt.py] --check-requirements doesn't detect Homebrew as a package manager and misdetect libz (zlib) dependecy #404]
  • Check if installed dependencies are always detected by --check-requirements (even if installed by different package manager); also verify list of required dependencies [[cpt.py] --check-requirements doesn't detect Homebrew as a package manager and misdetect libz (zlib) dependecy #404]
  • New flag to specify number of cores to build Cling with [Add option in cpt.py to control the number of cores used during make #391]

(Please check off closed issues and add new improvements by editing this top post)

FonsRademakers pushed a commit that referenced this issue Jun 28, 2022
Added new main block because this was mentioned in the meta issue
list (#406 in cling) as one of the rewrite steps. This also allows for
the main code to be run as opposed to running the main code plus the
function defintions.
This was referenced Jul 16, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants