Closed zjp closed 2 years ago
Can you minimize the changes and not alter the directory structure? setup.py should not be in the commit, especially not with hard-coded paths in it. The packaging module should not have moved in requirements.txt, it is always needed, not just during builds.
setup.py
needs to be committed. It's responsible for building C extensions and it doesn't contain dynamic data anymore. I removed those hardcoded lines and the Windows logic from the file, it didn't affect builds.
I took those directories out to preempt warnings such as this one:
where the solution to silence the warning was to put mac_util_cpp in src/core and move source files to src/core/src -- the same structure as any other bundle. But they don't seem to bring the warning up, so I wouldn't necessarily be opposed to putting them back in src/core/src, but src/core/src should stay.
Lastly it's fine to move packaging back under that header, but if it's installed in ChimeraX I'm not sure how -- it's not in app_requirements.txt -- and if it should be then let's put it there.
This commit builds the core using pyproject.toml and python -m build with the minimum amount of changes to Makefiles, etc.
Doesn't break the build system; ChimeraX appears to initialize fine. Moves some busywork out of the core Makefile and into setup.py -- we hardcoded some compilations we just did not need to.
Is src/common-libs a good place for the unused libraries in src/core? They all get synchronized to the build directory, so for now where it should go is an aesthetic preference.