id summary reporter owner description type status priority milestone component resolution keywords cc merged author reviewer upstream work_issues branch commit dependencies stopgaps
21559 Move sage-the-distribution scripts from src/bin to build/bin; install remaining src/bin scripts by setup.py, not make mkoeppe "This ticket cleans up `src/bin` and how its contents are installed. One of its goals is to make the `sagelib` installation done by `src/setup.py` self-contained regarding the scripts that it needs at runtime.
Move to `build/bin` (no longer installed in SAGE_LOCAL):
{{{
# Used only by some build/pkgs/SPKG/spkg-install scripts, not by anything in src
testcc.sh
testcflags.sh
testcxx.sh
# Only used by build/make/deps
sage-starts
}}}
Obsolete, delete:
{{{
sage-README-osx.txt # see #25995, #21570
sage-pkg # a script to create old-style spkgs
sage-unzip # unused
}}}
Install by a script package `sage-distribution-scripts`? These would be scripts that only sage-the-distribution would install in SAGE_LOCAL, but would not be in OS packages:
{{{
sage-list-experimental
sage-list-optional
sage-list-packages
sage-list-standard
}}}
Left in `src/bin`, installation changed to be done by `src/setup.py` using the `scripts` feature, instead of by `build/make/Makefile` (after scanning them in `configure`) (this used to be ticket #21569). All of these scripts must be useful in OS packaging of sagelib as well:
{{{
sage
sage-eval #??
}}}
Helper scripts that have no business of being in the user's PATH. They belong to something like libexec. Perhaps `src/sage/ext_data/libexec`?
{{{
sage-version.sh
}}}
In follow-up tickets, `src/bin` could be cleaned up more. See the list of files added on this ticket to `src/setup.py`.
Not an executable script, move elsewhere (#21570):
{{{
}}}
To be determined (see list):
{{{
math-readline
sage-cleaner
sage-clone-source
sage-coverage
sage-coverageall
sage-cython
sage-download-upstream # -> build?
sage-env
sage-env-config
sage-env-config.in
sage-fix-pkg-checksums # -> build?
sage-fixdoctests
sage-gdb-commands
sage-grep
sage-grepdoc
sage-inline-fortran
sage-ipynb2rst
sage-ipython
sage-location
sage-maxima.lisp
sage-native-execute
sage-notebook
sage-num-threads.py
sage-open
sage-preparse
sage-pypkg-location
sage-python
sage-rebase.bat
sage-rebase.sh
sage-rebaseall.bat
sage-rebaseall.sh
sage-rst2sws
sage-rst2txt
sage-rsyncdist
sage-run
sage-run-cython
sage-runtests
sage-sdist
sage-startuptime.py
sage-sws2rst
sage-update-src
sage-update-version
sage-upgrade
}}}
(Based on the full list of `src/bin` as of 9.1.beta4.)
See also
- #21707: Split sage-env into sage-build-env and sage-env" enhancement needs_work major sage-9.2 build jdemeyer vbraun embray isuruf jhpalmieri fbissey kcrisman mjo arojas Matthias Koeppe N/A u/mkoeppe/change-src-bin-installation 9825799e82c8201359faf2e7db103b9f52ba2aef #23769, #29381, #29383