-
-
Notifications
You must be signed in to change notification settings - Fork 654
Description
This configure switch will install sagelib in "develop" ("editable", "in-place") mode instead of using sagelib's custom incremental build system.
This will clutter the source directory with build artifacts (which are .gitignore
'd, of course) but it has the benefit that for changes to Python files, one does not need to run ./sage -b
; restarting Sage is enough.
It may also have benefits in certain develop environments that get confused by sagelib's nonstandard build system.
This ticket is based on a subset of the changes in #30371, which developed a version of setup.py
suitable for the in-place build. This version is src/setup.py
and distinct from build/pkgs/sagelib/src/setup.py
.
The configure switch switches to this version of the build system.
To test:
./bootstrap
./configure --enable-editable
make build
Then use and test as normal. Verify that local/lib/...site-packages/
no longer contains a copy of sage
- instead there is an "egg-link" back to the source directory.
Switching to a standard build system (getting rid of the sage-specific "installation cleaner") will also simplify the next step of the modularization effort (#29705).
Depends on #30770
Depends on #30912
Depends on #31357
Depends on #31365
Depends on #31389
Depends on #31390
CC: @tobiasdiez @jhpalmieri @fchapoton @videlec @isuruf @kliem @tscrim
Component: build
Author: Tobias Diez, Matthias Koeppe
Branch: 8b3f390
Reviewer: Matthias Koeppe, Tobias Diez, Jonathan Kliem
Issue created by migration from https://trac.sagemath.org/ticket/31377