|
| 1 | +#!/usr/bin/env bash |
| 2 | +# |
| 3 | +# Create compatibility symbolic links for narrow ncurses libraries |
| 4 | +# These link libncurses.so -> libncursesw.so if libncurses.so doesn't exist |
| 5 | +# |
| 6 | +# This is needed because some packages (like readline) need narrow version, |
| 7 | +# but we only build wide version. Other packages (like Python's curses module) |
| 8 | +# work better with wide version. |
| 9 | + |
| 10 | +cd "$SAGE_LOCAL/lib" || exit 1 |
| 11 | + |
| 12 | +echo "Creating compatibility symbolic links..." |
| 13 | + |
| 14 | +# Create symlinks for libraries (only if narrow version doesn't exist) |
| 15 | +if [ ! -e libncurses.so ] && [ -e libncursesw.so ]; then |
| 16 | + ln -sf libncursesw.so libncurses.so |
| 17 | + echo "Created libncurses.so -> libncursesw.so" |
| 18 | +fi |
| 19 | + |
| 20 | +if [ ! -e libtinfo.so ] && [ -e libtinfow.so ]; then |
| 21 | + ln -sf libtinfow.so libtinfo.so |
| 22 | + echo "Created libtinfo.so -> libtinfow.so" |
| 23 | +fi |
| 24 | + |
| 25 | +# Create versioned symlinks |
| 26 | +for ver in 6 5; do |
| 27 | + if [ ! -e libncurses.so.$ver ] && [ -e libncursesw.so.$ver ]; then |
| 28 | + ln -sf libncursesw.so.$ver libncurses.so.$ver |
| 29 | + echo "Created libncurses.so.$ver -> libncursesw.so.$ver" |
| 30 | + fi |
| 31 | + |
| 32 | + if [ ! -e libtinfo.so.$ver ] && [ -e libtinfow.so.$ver ]; then |
| 33 | + ln -sf libtinfow.so.$ver libtinfo.so.$ver |
| 34 | + echo "Created libtinfo.so.$ver -> libtinfow.so.$ver" |
| 35 | + fi |
| 36 | +done |
| 37 | + |
| 38 | +# Create symlinks for pkg-config files |
| 39 | +cd "$SAGE_LOCAL/lib/pkgconfig" || exit 1 |
| 40 | + |
| 41 | +if [ ! -e ncurses.pc ] && [ -e ncursesw.pc ]; then |
| 42 | + ln -sf ncursesw.pc ncurses.pc |
| 43 | + echo "Created ncurses.pc -> ncursesw.pc" |
| 44 | +fi |
| 45 | + |
| 46 | +if [ ! -e tinfo.pc ] && [ -e tinfow.pc ]; then |
| 47 | + ln -sf tinfow.pc tinfo.pc |
| 48 | + echo "Created tinfo.pc -> tinfow.pc" |
| 49 | +fi |
| 50 | + |
| 51 | +echo "Symbolic links created successfully." |
0 commit comments