aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuy Harris <gharris@sonic.net>2023-07-01 15:24:55 -0700
committerGuy Harris <gharris@sonic.net>2023-07-01 15:24:55 -0700
commita63bce3323473290b98b91a4209053e6b339e07c (patch)
tree167ffd4154fe832a154049d487467bcf6d6654ac
parent9c41f66a08b74f67d539fbd93adc0c3a797ae466 (diff)
Cirrus CI: try overwriting /etc/profile and adding a debug emssage.
-rw-r--r--.cirrus.yml1
-rw-r--r--msys2-profile178
2 files changed, 179 insertions, 0 deletions
diff --git a/.cirrus.yml b/.cirrus.yml
index 3b958d45..e70183cc 100644
--- a/.cirrus.yml
+++ b/.cirrus.yml
@@ -73,6 +73,7 @@ windows_task:
MATRIX_CMAKE: yes
MSYSTEM: MINGW64
install_script:
+ - sh -c "cp msys2-profile /etc/profile"
- choco install --no-progress -y winflexbison
- win_flex --version
- win_bison --version
diff --git a/msys2-profile b/msys2-profile
new file mode 100644
index 00000000..e09c9de4
--- /dev/null
+++ b/msys2-profile
@@ -0,0 +1,178 @@
+# To the extent possible under law, the author(s) have dedicated all
+# copyright and related and neighboring rights to this software to the
+# public domain worldwide. This software is distributed without any warranty.
+# You should have received a copy of the CC0 Public Domain Dedication along
+# with this software.
+# If not, see <https://creativecommons.org/publicdomain/zero/1.0/>.
+
+
+# System-wide profile file
+
+# Some resources...
+# Customizing Your Shell: http://www.dsl.org/cookbook/cookbook_5.html#SEC69
+# Consistent BackSpace and Delete Configuration:
+# http://www.ibb.net/~anne/keyboard.html
+# The Linux Documentation Project: https://www.tldp.org/
+# The Linux Cookbook: https://www.tldp.org/LDP/linuxcookbook/html/
+# Greg's Wiki https://mywiki.wooledge.org/
+
+# Setup some default paths. Note that this order will allow user installed
+# software to override 'system' software.
+# Modifying these default path settings can be done in different ways.
+# To learn more about startup files, refer to your shell's man page.
+
+echo "Starting /etc/profile; PATH is ${PATH}"
+
+MSYS2_PATH="/usr/local/bin:/usr/bin:/bin"
+MANPATH='/usr/local/man:/usr/share/man:/usr/man:/share/man'
+INFOPATH='/usr/local/info:/usr/share/info:/usr/info:/share/info'
+
+case "${MSYS2_PATH_TYPE:-inherit}" in
+ strict)
+ # Do not inherit any path configuration, and allow for full customization
+ # of external path. This is supposed to be used in special cases such as
+ # debugging without need to change this file, but not daily usage.
+ unset ORIGINAL_PATH
+ ;;
+ inherit)
+ # Inherit previous path. Note that this will make all of the Windows path
+ # available in current shell, with possible interference in project builds.
+ ORIGINAL_PATH="${ORIGINAL_PATH:-${PATH}}"
+ ;;
+ *)
+ # Do not inherit any path configuration but configure a default Windows path
+ # suitable for normal usage with minimal external interference.
+ WIN_ROOT="$(PATH=${MSYS2_PATH} exec cygpath -Wu)"
+ ORIGINAL_PATH="${WIN_ROOT}/System32:${WIN_ROOT}:${WIN_ROOT}/System32/Wbem:${WIN_ROOT}/System32/WindowsPowerShell/v1.0/"
+esac
+
+unset MINGW_MOUNT_POINT
+. '/etc/msystem'
+case "${MSYSTEM}" in
+MINGW*|CLANG*|UCRT*)
+ MINGW_MOUNT_POINT="${MINGW_PREFIX}"
+ PATH="${MINGW_MOUNT_POINT}/bin:${MSYS2_PATH}${ORIGINAL_PATH:+:${ORIGINAL_PATH}}"
+ PKG_CONFIG_PATH="${MINGW_MOUNT_POINT}/lib/pkgconfig:${MINGW_MOUNT_POINT}/share/pkgconfig"
+ ACLOCAL_PATH="${MINGW_MOUNT_POINT}/share/aclocal:/usr/share/aclocal"
+ MANPATH="${MINGW_MOUNT_POINT}/local/man:${MINGW_MOUNT_POINT}/share/man:${MANPATH}"
+ ;;
+*)
+ PATH="${MSYS2_PATH}:/opt/bin${ORIGINAL_PATH:+:${ORIGINAL_PATH}}"
+ PKG_CONFIG_PATH="/usr/lib/pkgconfig:/usr/share/pkgconfig:/lib/pkgconfig"
+esac
+
+CONFIG_SITE="/etc/config.site"
+
+MAYBE_FIRST_START=false
+SYSCONFDIR="${SYSCONFDIR:=/etc}"
+
+# TMP and TEMP as defined in the Windows environment must be kept
+# for windows apps, even if started from msys2. However, leaving
+# them set to the default Windows temporary directory or unset
+# can have unexpected consequences for msys2 apps, so we define
+# our own to match GNU/Linux behaviour.
+#
+# Note: this uppercase/lowercase workaround does not seem to work.
+# In fact, it has been removed from Cygwin some years ago. See:
+#
+# * https://cygwin.com/git/gitweb.cgi?p=cygwin-apps/base-files.git;a=commitdiff;h=3e54b07
+# * https://cygwin.com/git/gitweb.cgi?p=cygwin-apps/base-files.git;a=commitdiff;h=7f09aef
+#
+ORIGINAL_TMP="${ORIGINAL_TMP:-${TMP}}"
+ORIGINAL_TEMP="${ORIGINAL_TEMP:-${TEMP}}"
+#unset TMP TEMP
+#tmp=$(exec cygpath -w "$ORIGINAL_TMP" 2> /dev/null)
+#temp=$(exec cygpath -w "$ORIGINAL_TEMP" 2> /dev/null)
+#TMP="/tmp"
+#TEMP="/tmp"
+case "$TMP" in *\\*) TMP="$(cygpath -m "$TMP")";; esac
+case "$TEMP" in *\\*) TEMP="$(cygpath -m "$TEMP")";; esac
+test -d "$TMPDIR" || test ! -d "$TMP" || {
+ TMPDIR="$TMP"
+ export TMPDIR
+}
+
+
+print_flags ()
+{
+ (( $1 & 0x0002 )) && echo -n "binary" || echo -n "text"
+ (( $1 & 0x0010 )) && echo -n ",exec"
+ (( $1 & 0x0040 )) && echo -n ",cygexec"
+ (( $1 & 0x0100 )) && echo -n ",notexec"
+}
+
+# Shell dependent settings
+profile_d ()
+{
+ local file=
+ for file in $(export LC_COLLATE=C; echo /etc/profile.d/*.$1); do
+ [ -e "${file}" ] && . "${file}"
+ done
+
+ if [ -n "${MINGW_MOUNT_POINT}" ]; then
+ for file in $(export LC_COLLATE=C; echo ${MINGW_MOUNT_POINT}/etc/profile.d/*.$1); do
+ [ -e "${file}" ] && . "${file}"
+ done
+ fi
+}
+
+for postinst in $(export LC_COLLATE=C; echo /etc/post-install/*.post); do
+ [ -e "${postinst}" ] && . "${postinst}"
+done
+
+if [ ! "x${BASH_VERSION}" = "x" ]; then
+ HOSTNAME="$(exec /usr/bin/hostname)"
+ SHELL=`which bash`
+ profile_d sh
+ [ -f "/etc/bash.bashrc" ] && . "/etc/bash.bashrc"
+elif [ ! "x${KSH_VERSION}" = "x" ]; then
+ typeset -l HOSTNAME="$(exec /usr/bin/hostname)"
+ profile_d sh
+ PS1=$(print '\033]0;${PWD}\n\033[32m${USER}@${HOSTNAME} \033[33m${PWD/${HOME}/~}\033[0m\n$ ')
+elif [ ! "x${ZSH_VERSION}" = "x" ]; then
+ HOSTNAME="$(exec /usr/bin/hostname)"
+ profile_d sh
+ profile_d zsh
+ PS1='(%n@%m)[%h] %~ %% '
+ SHELL=`which zsh`
+elif [ ! "x${POSH_VERSION}" = "x" ]; then
+ HOSTNAME="$(exec /usr/bin/hostname)"
+ PS1="$ "
+else
+ HOSTNAME="$(exec /usr/bin/hostname)"
+ profile_d sh
+ PS1="$ "
+fi
+
+if [ -n "$ACLOCAL_PATH" ]
+then
+ export ACLOCAL_PATH
+fi
+
+export PATH MANPATH INFOPATH PKG_CONFIG_PATH USER TMP TEMP HOSTNAME PS1 SHELL tmp temp ORIGINAL_TMP ORIGINAL_TEMP ORIGINAL_PATH CONFIG_SITE
+unset PATH_SEPARATOR
+
+if [ "$MAYBE_FIRST_START" = "true" ]; then
+
+ if [ -f "/usr/bin/update-ca-trust" ]
+ then
+ sh /usr/bin/update-ca-trust
+ fi
+
+ clear
+ echo
+ echo
+ echo "###################################################################"
+ echo "# #"
+ echo "# #"
+ echo "# C A U T I O N #"
+ echo "# #"
+ echo "# This is first start of MSYS2. #"
+ echo "# You MUST restart shell to apply necessary actions. #"
+ echo "# #"
+ echo "# #"
+ echo "###################################################################"
+ echo
+ echo
+fi
+unset MAYBE_FIRST_START