1#!/bin/sh 2# SPDX-License-Identifier: GPL-2.0 3# 4# Usage: $ ./scripts/lld-version.sh ld.lld 5# 6# Print the linker version of `ld.lld' in a 5 or 6-digit form 7# such as `100001' for ld.lld 10.0.1 etc. 8 9set -e 10 11# Convert the version string x.y.z to a canonical 5 or 6-digit form. 12get_canonical_version() 13{ 14 IFS=. 15 set -- $1 16 17 # If the 2nd or 3rd field is missing, fill it with a zero. 18 echo $((10000 * $1 + 100 * ${2:-0} + ${3:-0})) 19} 20 21# Get the first line of the --version output. 22IFS=' 23' 24set -- $(LC_ALL=C "$@" --version) 25 26# Split the line on spaces. 27IFS=' ' 28set -- $1 29 30while [ $# -gt 1 -a "$1" != "LLD" ]; do 31 shift 32done 33if [ "$1" = LLD ]; then 34 echo $(get_canonical_version ${2%-*}) 35else 36 echo 0 37fi 38