| #!/bin/sh |
| ## Copyright (c) 2016, Alliance for Open Media. All rights reserved |
| ## |
| ## This source code is subject to the terms of the BSD 2 Clause License and |
| ## the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License |
| ## was not distributed with this source code in the LICENSE file, you can |
| ## obtain it at www.aomedia.org/license/software. If the Alliance for Open |
| ## Media Patent License 1.0 was not distributed with this source code in the |
| ## PATENTS file, you can obtain it at www.aomedia.org/license/patent. |
| ## |
| |
| verbose=0 |
| set -- $* |
| for i; do |
| if [ "$i" = "-o" ]; then |
| on_of=1 |
| elif [ "$i" = "-v" ]; then |
| verbose=1 |
| elif [ "$i" = "-g" ]; then |
| args="${args} --debug" |
| elif [ "$on_of" = "1" ]; then |
| outfile=$i |
| on_of=0 |
| elif [ -f "$i" ]; then |
| infiles="$infiles $i" |
| elif [ "${i#-l}" != "$i" ]; then |
| libs="$libs ${i#-l}" |
| elif [ "${i#-L}" != "$i" ]; then |
| libpaths="${libpaths} ${i#-L}" |
| else |
| args="${args} ${i}" |
| fi |
| shift |
| done |
| |
| # Absolutize library file names |
| for f in $libs; do |
| found=0 |
| for d in $libpaths; do |
| [ -f "$d/$f" ] && infiles="$infiles $d/$f" && found=1 && break |
| [ -f "$d/lib${f}.so" ] && infiles="$infiles $d/lib${f}.so" && found=1 && break |
| [ -f "$d/lib${f}.a" ] && infiles="$infiles $d/lib${f}.a" && found=1 && break |
| done |
| [ $found -eq 0 ] && infiles="$infiles $f" |
| done |
| for d in $libpaths; do |
| [ -n "$libsearchpath" ] && libsearchpath="${libsearchpath}," |
| libsearchpath="${libsearchpath}$d" |
| done |
| |
| cmd="armlink $args --userlibpath=$libsearchpath --output=$outfile $infiles" |
| [ $verbose -eq 1 ] && echo $cmd |
| $cmd |