firasuke / cross / slibtool

Forked from cross/slibtool 3 months ago
Clone

Blame aux/slibtool.sh

c34891
#!/bin/sh
c34891
c34891
#####################################################################
c34891
##  slibtool: a strong libtool implementation, written in C        ##
c34891
##  Copyright (C) 2016--2024  SysDeer Technologies, LLC            ##
c34891
##  Released under the Standard MIT License; see COPYING.SLIBTOOL. ##
c34891
#####################################################################
c34891
c34891
#####################################################################
c34891
## slibtool.sh: a backward compatible slibtool wrapper script      ##
c34891
## ----------------------------------------------------------      ##
c34891
## This script only exists to satisfy build-time requirements in   ##
c34891
## projects that directly invoke the generated libtool script at   ##
c34891
## configure time (bad practice to beging with, should never be    ##
c34891
## necessary in the first place).                                  ##
c34891
##                                                                 ##
c34891
## By default, slibtool.sh is _NOT_ copied to a project's build    ##
c34891
## directory. If found by configure, however (either as a symlink  ##
c34891
## to the system installed slibtool.sh or as a physical copy of    ##
c34891
## the above, configure shall create ``libtool'' as a symlink to   ##
c34891
## this script.                                                    ##
c34891
#####################################################################
c34891
c34891
set -eu
c34891
c34891
mb_escaped_arg=
c34891
mb_escaped_args=
c34891
mb_escaped_space=
c34891
c34891
for arg ; do
c34891
	mb_escaped_arg=\'$(printf '%s\n' "$arg" | sed -e "s/'/'\\\\''/g")\'
c34891
	mb_escaped_arg="$mb_escaped_space$mb_escaped_arg"
c34891
	mb_escaped_args="$mb_escaped_args$mb_escaped_arg"
c34891
	mb_escaped_space=' '
c34891
done
c34891
c34891
eval ${SLIBTOOL:-slibtool} "$mb_escaped_args"