#!/bin/sh # Sourced from https://stackoverflow.com/a/29835459/1975049 rreadlink() ( target=$1 fname= targetDir= CDPATH= { \unalias command; \unset -f command; } >/dev/null 2>&1 [ -n "$ZSH_VERSION" ] && options[POSIX_BUILTINS]=on while :; do [ -L "$target" ] || [ -e "$target" ] || { command printf '%s\n' "ERROR: '$target' does not exist." >&2; return 1; } command cd "$(command dirname -- "$target")" fname=$(command basename -- "$target") [ "$fname" = '/' ] && fname='' if [ -L "$fname" ]; then target=$(command ls -l "$fname") target=${target#* -> } continue fi break done targetDir=$(command pwd -P) if [ "$fname" = '.' ]; then command printf '%s\n' "${targetDir%/}" elif [ "$fname" = '..' ]; then command printf '%s\n' "$(command dirname -- "${targetDir}")" else command printf '%s\n' "${targetDir%/}/$fname" fi ) EXEC=$(rreadlink "$0") DIR=$(dirname -- "$EXEC") "/friends/.rakubrew/versions/moar-main/install/bin/moar" --execname="$EXEC" --libpath="$DIR" --libpath="$DIR/blib" --libpath="" "$DIR/perl6.moarvm" -e ' say "=" x 96; say "This is Rakudo running in the debugger, which often allows the user to generate useful back-\ntraces to debug or report issues in Rakudo, the MoarVM backend or the currently running code.\n"; unless $*VM.config { say "The currently used MoarVM backend is not compiled with debugging symbols, you might want to\nreconfigure and reinstall MoarVM with --debug enabled.\n" } say "This Rakudo version is $*RAKU.compiler.version() built on MoarVM version $*VM.version(),"; say "running on $*DISTRO.gist() / $*KERNEL.gist()\n"; say "Type `bt full` to generate a backtrace if applicable, type `q` to quit or `help` for help."; say "-" x 96; ' LLDB="lldb" if [ -n "$RAKUDO_LLDB" ]; then LLDB="$RAKUDO_LLDB" fi "$LLDB" -o run "/friends/.rakubrew/versions/moar-main/install/bin/moar" -- --execname="$EXEC" --libpath="$DIR" --libpath="$DIR/blib" --libpath="" "$DIR/perl6.moarvm" "$@"