3434 ;;
3535 --prompt)
3636 PROMPT=' $ '
37+ CONTINUATION=' '
38+ ;;
39+ --continuation=* )
40+ CONTINUATION=" ${1# --continuation=} "
41+ ;;
42+ --wrap)
43+ WRAP=78
44+ ;;
45+ --wrap=* )
46+ WRAP=" ${1# --wrap=} "
3747 ;;
3848 --no-install-recommends)
3949 NO_INSTALL_RECOMMENDS=yes
@@ -79,7 +89,13 @@ function print_shell_command()
7989 echo " .. CODE-BLOCK:: bash"
8090 echo
8191 fi
82- echo " ${PROMPT} $1 "
92+ # shell-quote arguments if necessary
93+ quoted=$( for a in " $@ " ; do printf " %q " $a ; done)
94+ if [ -z " $WRAP " -o $# -lt 6 ]; then
95+ echo " ${PROMPT}${quoted} "
96+ else
97+ sage-bootstrap-python -c " import textwrap; print(' \\\\ \n'.join(textwrap.wrap(r'''${quoted} ''', $WRAP , initial_indent=r'''${PROMPT} ''', subsequent_indent=r'''${CONTINUATION} ''', break_long_words=False, break_on_hyphens=False)))"
98+ fi
8399 if [ -n " $OUTPUT_RST " ]; then
84100 echo
85101 fi
@@ -102,77 +118,90 @@ case $system:$command in
102118 [ -n " $SAGE_ROOT " ] || SAGE_ROOT=.
103119 echo " ${PROMPT} source $SAGE_ROOT /.homebrew-build-env"
104120 ;;
121+ macports* :setup-build-env)
122+ $IF_VERBOSE echo " ${COMMENT} "
123+ $IF_VERBOSE echo " ${COMMENT} WARNING: Use of MacPorts is experimental"
124+ $IF_VERBOSE echo " ${COMMENT} "
125+ $IF_VERBOSE echo " ${COMMENT} MacPorts does not provide unversioned gfortran executables by default"
126+ $IF_VERBOSE echo " ${COMMENT} To make gfortran available (and build with gcc from XCode), use:"
127+ $IF_VERBOSE echo " ${COMMENT} "
128+ $IF_VERBOSE print_shell_command ./configure FC=gfortran-mp-11
129+ ;;
105130 * :setup-build-env)
106131 # Nothing needed
107132 ;;
108133 #
109134 # Verbs handled above are our own inventions. Verbs handled below are apt-get verbs.
110135 #
111136 @ (debian* | ubuntu* ):update)
112- print_shell_command " ${SUDO} apt-get $command $system_packages "
137+ print_shell_command ${SUDO} apt-get $command $system_packages
113138 ;;
114139 @ (debian* | ubuntu* ):* )
115140 [ " $NO_INSTALL_RECOMMENDS " = yes ] && options=" $options --no-install-recommends"
116141 [ " $YES " = yes ] && options=" $options --yes" env=" DEBIAN_FRONTEND=noninteractive "
117- [ -n " $system_packages " ] && print_shell_command " ${SUDO}${env} apt-get $command $options $system_packages "
142+ [ -n " $system_packages " ] && print_shell_command ${SUDO}${env} apt-get $command $options $system_packages
118143 ;;
119144 @ (fedora* | redhat* | centos* ):install)
120145 [ " $YES " = yes ] && options=" $options -y"
121- [ -n " $system_packages " ] && print_shell_command " ${SUDO} yum install $options $system_packages "
146+ [ -n " $system_packages " ] && print_shell_command ${SUDO} yum install $options $system_packages
122147 ;;
123148 gentoo* :install)
124- [ -n " $system_packages " ] && print_shell_command " ${SUDO} emerge $system_packages "
149+ [ -n " $system_packages " ] && print_shell_command ${SUDO} emerge $system_packages
125150 ;;
126151 arch* :update)
127152 print_shell_command " ${SUDO} pacman -Sy"
128153 ;;
129154 arch* :install)
130155 [ " $YES " = yes ] && options=" $options --noconfirm"
131- [ -n " $system_packages " ] && print_shell_command " ${SUDO} pacman -S $options $system_packages "
156+ [ -n " $system_packages " ] && print_shell_command ${SUDO} pacman -S $options $system_packages
132157 ;;
133158 void* :update)
134159 print_shell_command " ${SUDO} xbps-install -Su"
135160 ;;
136161 void* :install)
137162 [ " $YES " = yes ] && options=" $options --yes"
138- [ -n " $system_packages " ] && print_shell_command " ${SUDO} xbps-install $options $system_packages "
163+ [ -n " $system_packages " ] && print_shell_command ${SUDO} xbps-install $options $system_packages
139164 ;;
140165 opensuse* :install)
141- [ -n " $system_packages " ] && print_shell_command " ${SUDO} zypper install $system_packages "
166+ [ -n " $system_packages " ] && print_shell_command ${SUDO} zypper install $system_packages
142167 ;;
143168 * conda* :install)
144169 [ " $YES " = yes ] && options=" $options --yes"
145- [ -n " $system_packages " ] && print_shell_command " conda install $options $system_packages "
170+ [ -n " $system_packages " ] && print_shell_command conda install $options $system_packages
146171 ;;
147172 homebrew* :install)
148- [ -n " $system_packages " ] && print_shell_command " brew install $system_packages "
173+ [ -n " $system_packages " ] && print_shell_command brew install $system_packages
174+ ;;
175+ macports* :install)
176+ [ " $YES " = yes ] && options=" $options -N"
177+ [ -n " $system_packages " ] && print_shell_command ${SUDO} port $options install $system_packages
149178 ;;
150179 slackware* :install)
151- [ -n " $system_packages " ] && print_shell_command " ${SUDO} slackpkg install $system_packages "
180+ [ -n " $system_packages " ] && print_shell_command ${SUDO} slackpkg install $system_packages
152181 ;;
153182 cygwin* :update)
154183 print_comment " first install apt-cyg from https://github.com/transcode-open/apt-cyg"
155184 ;;
156185 cygwin* :install)
157- [ -n " $system_packages " ] && print_shell_command " apt-cyg install $system_packages "
186+ [ -n " $system_packages " ] && print_shell_command apt-cyg install $system_packages
158187 ;;
159188 freebsd* :install)
160- [ -n " $system_packages " ] && print_shell_command " ${SUDO} pkg install $system_packages "
189+ [ -n " $system_packages " ] && print_shell_command ${SUDO} pkg install $system_packages
161190 ;;
162191 nix* :install)
163- [ -n " $system_packages " ] && print_shell_command " nix-env --install $system_packages "
192+ [ -n " $system_packages " ] && print_shell_command nix-env --install $system_packages
164193 ;;
165194 alpine:update)
166195 print_shell_command " apk update"
167196 ;;
168197 alpine:install)
169- [ -n " $system_packages " ] && print_shell_command " apk add $system_packages "
198+ [ -n " $system_packages " ] && print_shell_command apk add $system_packages
170199 ;;
171200 pip:install)
172- [ -n " $system_packages " ] && print_shell_command " sage -pip install $system_packages "
201+ [ -n " $system_packages " ] && print_shell_command sage -pip install $system_packages
173202 ;;
174203 cpan:install)
175- [ -n " $system_packages " ] && print_shell_command " cpan -i $system_packages "
204+ [ -n " $system_packages " ] && print_shell_command cpan -i $system_packages
176205 ;;
177206 repology:install)
178207 if [ -n " $system_packages " ]; then
0 commit comments