Opened 2 years ago

Closed 2 years ago

Last modified 2 years ago

#23339 closed defect (fixed)

Fixes to the sage-rebaseall.sh script (followup to #20986)

Reported by: embray Owned by:
Priority: blocker Milestone: sage-8.0
Component: porting: Cygwin Keywords: cygwin
Cc: Merged in:
Authors: Erik Bray Reviewers: Emmanuel Charpentier
Report Upstream: N/A Work issues:
Branch: b5dbb48 (Commits) Commit:
Dependencies: Stopgaps:

Description

In #20986 I made some "enhancements" to the sage-rebase*.sh scripts that are used on Cygwin for DLL rebasing. While sage-rebase.sh works fine, the sage-rebaseall.sh script was left with two fatal defects:

  • An outright syntax error in bash
  • Because it is now a wrapper around sage-rebase.sh it will not work unless sage-rebase.sh is invoked with dash as opposed to bash (dash is a stripped-down version of bash with no dependencies on external libraries that is shipped with Cygwin--it is needed when running rebaseall since that updates all DLLs in Cygwin, including the Cygwin DLL itself).

Change History (5)

comment:1 Changed 2 years ago by embray

  • Authors set to Erik Bray
  • Branch set to u/embray/cygwin/ticket-23339
  • Commit set to b5dbb48fbe85b869101eba444a691906e0a4d7ed
  • Keywords cygwin added
  • Status changed from new to needs_review

New commits:

e414a91Fix stray quote in sage-rebaseall.sh
b5dbb48the sage-rebase.sh script should use dash, not full bash; otherwise rebaseall will refuse to run

comment:2 Changed 2 years ago by charpent

  • Reviewers set to Emmanuel Charpentier
  • Status changed from needs_review to positive_review

On a Virtulbox running Windows10 professional, I compiled 8.0.rc0 + #21399 + #23339 (as suggested in the Wiki) + #23097 + #21233 (present ticket) with the options :

export PREREQ_OPTIONS=--with-blas=atlas
export SAGE_ATLAS_LIB=/usr/lib
export MAKE="make -j4"

This passes ptestlong with no failures.

==> positive_review

Note : I have no advice on the contents of the patches (I do not know Cygwin well enough to undetstand what they are supposed to do) ; I just checked that this leads to a functional Sage.

comment:3 Changed 2 years ago by vbraun

  • Branch changed from u/embray/cygwin/ticket-23339 to b5dbb48fbe85b869101eba444a691906e0a4d7ed
  • Resolution set to fixed
  • Status changed from positive_review to closed

comment:4 Changed 2 years ago by chapoton

  • Commit b5dbb48fbe85b869101eba444a691906e0a4d7ed deleted

I now see that every time I build sage:

Cleaning up stale installed files....
Finished cleaning, time: 0.00 seconds.
if [ "$UNAME" = "CYGWIN" ]; then                         \
    sage-rebase.sh "$SAGE_LOCAL" 2>/dev/null;            \
fi

real	0m23,710s
user	0m4,592s
sys	0m0,712s

This is probably harmless, but quite ugly.

comment:5 Changed 2 years ago by embray

That would be from #15423, not this ticket.

I agree, it's ugly. Maybe it should be prefixed with a @.

Note: See TracTickets for help on using tickets.