77 lines
2.2 KiB
Bash
Executable File
77 lines
2.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -euo pipefail
|
|
|
|
if [ $# -eq 1 ]; then
|
|
which_bin="$1"
|
|
else
|
|
echo "Usage: $0 [stable|preview|nightly|target/debug/zed|target/debug/zed]"
|
|
exit 1
|
|
fi
|
|
case "${which_bin}_$(uname)" in
|
|
stable_Darwin) BINARY="/Applications/Zed.app/Contents/MacOS/zed" ;;
|
|
preview_Darwin) BINARY="/Applications/Zed Preview.app/Contents/MacOS/zed";;
|
|
nightly_Darwin) BINARY="/Applications/Zed Nightly.app/Contents/MacOS/zed";;
|
|
stable_Linux) BINARY="$HOME/.local/zed.app/bin/zed";;
|
|
preview_Linux) BINARY="$HOME/.local/zed-preview.app/bin/zed";;
|
|
nightly_Linux) BINARY="$HOME/.local/zed-nightly.app/bin/zed";;
|
|
*) BINARY="$which_bin";;
|
|
esac
|
|
if [ ! -x "$BINARY" ]; then
|
|
echo "Binary not found: $BINARY"
|
|
exit 1
|
|
fi
|
|
echo "-------Zed Library Report-------"
|
|
echo "$BINARY" | sed "s|$HOME|~|g"
|
|
echo "-------------System-------------"
|
|
uname -s -m -r
|
|
case "$(uname -s)" in
|
|
Darwin*)
|
|
echo "macOS $(sw_vers -productVersion) ($(sw_vers -buildVersion))"
|
|
xcodebuild -version | awk '{printf "%s ", $0} END {print ""}'
|
|
;;
|
|
Linux*)
|
|
grep "PRETTY_NAME=" /etc/os-release | sed 's/PRETTY_NAME=//'
|
|
gcc --version |head -1
|
|
g++ --version |head -1
|
|
;;
|
|
CYGWIN*|MINGW32*|MSYS*|MINGW*)
|
|
echo "TODO: Add windows-specific tooling versions."
|
|
;;
|
|
*)
|
|
echo "Other OS detected: $(uname -s)"
|
|
;;
|
|
esac
|
|
|
|
clang --version | head -1
|
|
cmake --version | grep version
|
|
make --version | grep Make
|
|
rustc --version
|
|
cargo --version
|
|
mold --version || echo "no mold"
|
|
|
|
echo "-----------Libraries-----------"
|
|
case "$(uname -s)" in
|
|
Linux*)
|
|
# TODO: Make this work with target/debug/zed
|
|
echo "$BINARY" | sed "s|$HOME|~|g"
|
|
ldd "$BINARY" |sort
|
|
ZED_LIB="$(dirname $BINARY)/../lib"
|
|
for lib in $(ls $ZED_LIB); do
|
|
echo "$ZED_LIB/$lib" | sed "s|$HOME|~|g"
|
|
ldd "$ZED_LIB/$lib" |sort
|
|
done
|
|
;;
|
|
Darwin*)
|
|
# TODO: Make this work with target/debug/zed
|
|
echo "$BINARY" | sed "s|$HOME|~|g"
|
|
otool -L "$BINARY" |tail -n +3 |sort
|
|
ZED_LIB="$(dirname $BINARY)/../Frameworks"
|
|
for lib in $(ls -d $ZED_LIB); do
|
|
echo "$ZED_LIB/$lib"
|
|
ldd "$ZED_LIB/$lib" |sort
|
|
done
|
|
|
|
;;
|
|
esac
|