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
sdh_configure should use bash #24491
Comments
Commit: |
New commits:
|
comment:3
This doesn't actually work due to way how |
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
comment:5
Shouldn't
rather be
|
comment:7
Replying to @dimpase:
Given that |
comment:9
Replying to @dimpase:
Because the Sage build scripts are always run with |
comment:10
Are there any other packages with non-portable configure scripts, other than the two mentioned in #23451? I think I was able to build all of sage using dash 0.5.9 with only those two "fixed". Using Also, a script that works with several different shells is a script that is less likely to break when bash changes, or with older versions of bash, etc. Anyway, maybe it is a good idea to do
to allow overriding of |
comment:12
Some autotool scripts will also break if you use My experience comes from AIX where |
comment:13
Replying to @dimpase:
I don't mean |
comment:14
Replying to @jdemeyer:
But this does not guarantee that |
comment:15
Replying to @kiwifb:
On some systems,
Given that |
comment:16
Replying to @tornaria:
I disagree completely with this point. It's not the goal of Sage to use our users for testing the portability of configure scripts. We should ensure that Sage can be installed on as many systems as possible. I claim that using |
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
comment:19
And on some system |
comment:20
Replying to @kiwifb:
I always assumed that |
Reviewer: Dima Pasechnik |
comment:21
My experience with FreeBSD (with /bin/sh not being bash at all) tells me that making /bin/sh a link to bash allows Sage to build just fine. It breaks other components of the OS, naturally, but it's beside the point, which is that it's actually safe to use bash everywhere where there is /bin/sh (at least the one on FreeBSD) invocation in Sage. |
comment:22
+1 Related question I've been wondering about for a while (while we're discussing it here): Do we require GNU make for Sage, or should any POSIX-compatible make work? I would very much like to make use of GNU-specific features (e.g. #21524) and I'm not 100% sure if all of Sage's packages will work with a generic make but it's never been clear to me if that's a requirement or not. |
comment:23
Replying to @jdemeyer:
Been there, done that, got the T-shirt. Proof is in the pudding, someone should do a complete build. My experience is that a libtool component will break sooner rather than later. |
comment:24
Replying to @embray:
GNU make is needed. Once upon a time (in 2008) me and a debian developper at the time tried to patch packages to be able to use other |
comment:25
Not much documentation on what bash does when it is invoked as sh. According to the doc it change mainly two things: the files it reads at start up and it is basically run with the |
Changed branch from u/jdemeyer/sdh_configure_should_use_bash to |
comment:27
Replying to @kiwifb:
Good, I'm glad. While this is a problem autotools is supposed to solve that's not a universal solution anyways. |
Changed commit from |
Some
configure
scripts are buggy when they are run with shells other thanbash
. See #23451 for example. Since Sage requiresbash
anyway, we can easily work around this by forcingbash
to runconfigure
.CC: @embray @dimpase
Component: porting
Author: Jeroen Demeyer
Branch:
f0e2bd8
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/24491
The text was updated successfully, but these errors were encountered: