261 |
|
|
262 |
mlibdir() |
mlibdir() |
263 |
{ |
{ |
264 |
local libdir=lib |
local libdir="${ABI_DEFAULT_LIBDIR}" |
265 |
[[ ${ARCH} = x86_64 ]] && libdir=lib64 |
[[ ${ARCH} = i686 ]] && libdir="${ABI_X86_LIBDIR}" |
266 |
|
[[ ${ARCH} = x86_64 ]] && libdir="${ABI_X86_64_LIBDIR}" |
267 |
|
[[ -n ${ABI_LIBDIR} ]] && libdir="${ABI_LIBDIR}" |
268 |
|
|
269 |
echo "${libdir}" |
echo "${libdir}" |
270 |
} |
} |
393 |
popd > /dev/null |
popd > /dev/null |
394 |
fi |
fi |
395 |
;; |
;; |
396 |
|
lz) |
397 |
|
IFTAR="$(basename $SRCFILE .lz)" |
398 |
|
IFTAR="${IFTAR##*.}" |
399 |
|
if [[ ${IFTAR} = tar ]] |
400 |
|
then |
401 |
|
tar --no-same-owner -xvf --lzip ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".tar.lz unpack failed." |
402 |
|
else |
403 |
|
pushd ${DEST} > /dev/null |
404 |
|
lzip -dc ${SOURCEDIR}/${PNAME}/${SRCFILE} > ${DEST}/$(basename ${SRCFILE} .xz) || die ".lz unpack failed." |
405 |
|
popd > /dev/null |
406 |
|
fi |
407 |
|
;; |
408 |
tbz2|mpks|mpk) |
tbz2|mpks|mpk) |
409 |
tar --no-same-owner -xvjf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".tbz2 unpack failed." |
tar --no-same-owner -xvjf ${SOURCEDIR}/${PNAME}/${SRCFILE} -C ${DEST} || die ".tbz2 unpack failed." |
410 |
;; |
;; |
512 |
|
|
513 |
[[ -z ${stripdir} ]] && stripdir="${BINDIR}" |
[[ -z ${stripdir} ]] && stripdir="${BINDIR}" |
514 |
[[ -z ${STRIP_DYN_LIB} ]] && STRIP_DYN_LIB="--strip-debug" |
[[ -z ${STRIP_DYN_LIB} ]] && STRIP_DYN_LIB="--strip-debug" |
515 |
find ${stripdir} ! -type d | xargs --no-run-if-empty file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs --no-run-if-empty strip ${STRIP_DYN_LIB} 2> /dev/null |
find ${stripdir} ! -type d | xargs --no-run-if-empty file | grep "[shared object|pie executable]" | grep ELF | cut -f 1 -d : | xargs --no-run-if-empty strip ${STRIP_DYN_LIB} 2> /dev/null |
516 |
} |
} |
517 |
|
|
518 |
mstripbins() |
mstripbins() |
521 |
|
|
522 |
[[ -z ${stripdir} ]] && stripdir="${BINDIR}" |
[[ -z ${stripdir} ]] && stripdir="${BINDIR}" |
523 |
[[ -z ${STRIP_DYN_BIN} ]] && STRIP_DYN_BIN="--strip-debug" |
[[ -z ${STRIP_DYN_BIN} ]] && STRIP_DYN_BIN="--strip-debug" |
524 |
find ${stripdir} ! -type d | xargs --no-run-if-empty file | grep "executable" | grep ELF | cut -f 1 -d : | xargs --no-run-if-empty strip ${STRIP_DYN_BIN} 2> /dev/null |
find ${stripdir} ! -type d | xargs --no-run-if-empty file | grep -v "pie executable" | grep "executable" | grep ELF | cut -f 1 -d : | xargs --no-run-if-empty strip ${STRIP_DYN_BIN} 2> /dev/null |
525 |
} |
} |
526 |
|
|
527 |
mstripstatic() |
mstripstatic() |
609 |
return "${retval}" |
return "${retval}" |
610 |
} |
} |
611 |
|
|
612 |
marchsrcfile() |
marchvariable() |
613 |
{ |
{ |
614 |
local retval |
local retval |
615 |
local var="$1" |
local var="$1" |
616 |
|
|
617 |
[[ -z ${var} ]] && var="SRCFILE" |
[[ -n ${var} ]] || die "marchvariable(): missing variable" |
618 |
|
|
619 |
if [[ ! -z $(eval echo \$${var}_${ARCH/i*86/x86}) ]] |
if [[ ! -z $(eval echo \$${var}_${ARCH/i*86/x86}) ]] |
620 |
then |
then |
627 |
return "${retval}" |
return "${retval}" |
628 |
} |
} |
629 |
|
|
630 |
|
marchsrcfile() |
631 |
|
{ |
632 |
|
local retval |
633 |
|
local var="$1" |
634 |
|
|
635 |
|
[[ -z ${var} ]] && var="SRCFILE" |
636 |
|
|
637 |
|
marchvariable "${var}" || die |
638 |
|
} |
639 |
|
|
640 |
marchsrcdir() |
marchsrcdir() |
641 |
{ |
{ |
642 |
local retval |
local retval |
644 |
|
|
645 |
[[ -z ${var} ]] && var="SRCDIR" |
[[ -z ${var} ]] && var="SRCDIR" |
646 |
|
|
647 |
if [[ ! -z $(eval echo \$${var}_${ARCH/i*86/x86}) ]] |
marchvariable "${var}" || die |
|
then |
|
|
eval echo \$${var}_${ARCH/i*86/x86} | tr ';' '\n' |
|
|
retval=0 |
|
|
else |
|
|
retval=1 |
|
|
fi |
|
|
|
|
|
return "${retval}" |
|
648 |
} |
} |
649 |
|
|
650 |
marchdepend() |
marchdepend() |
654 |
|
|
655 |
[[ -z ${var} ]] && var="DEPEND" |
[[ -z ${var} ]] && var="DEPEND" |
656 |
|
|
657 |
if [[ ! -z $(eval echo \$${var}_${ARCH/i*86/x86}) ]] |
if [[ ! -z $(eval echo \"\$${var}_${ARCH/i*86/x86}\") ]] |
658 |
then |
then |
659 |
# evaluate with escape strings for the magefile if called by smage |
# evaluate with escape strings for the magefile if called by smage |
660 |
# but do not escape if the smagefile was called by depwalker directly |
# but do not escape if the smagefile was called by depwalker directly |
661 |
if [[ ${SMAGE_DEPEND} = 1 ]] |
if [[ ${SMAGE_DEPEND} = 1 ]] |
662 |
then |
then |
663 |
eval echo \$${var}_${ARCH/i*86/x86} | tr ';' '\n' |
eval echo \"\$${var}_${ARCH/i*86/x86}\" | tr ';' '\n' |
664 |
else |
else |
665 |
echo "\$(eval echo \\\$${var}_\${ARCH/i*86/x86} | tr ';' '\n')" |
echo "\$(eval echo \\\"\\\$${var}_\${ARCH/i*86/x86}\\\" | tr ';' '\n')" |
666 |
fi |
fi |
667 |
retval=0 |
retval=0 |
668 |
else |
else |
679 |
|
|
680 |
[[ -z ${var} ]] && var="SDEPEND" |
[[ -z ${var} ]] && var="SDEPEND" |
681 |
|
|
682 |
if [[ ! -z $(eval echo \$${var}_${ARCH/i*86/x86}) ]] |
if [[ ! -z $(eval echo \"\$${var}_${ARCH/i*86/x86}\") ]] |
683 |
then |
then |
684 |
# evaluate with escape strings for the magefile if called by smage |
# evaluate with escape strings for the magefile if called by smage |
685 |
# but do not escape if the smagefile was called by depwalker directly |
# but do not escape if the smagefile was called by depwalker directly |
686 |
if [[ ${SMAGE_DEPEND} = 1 ]] |
if [[ ${SMAGE_DEPEND} = 1 ]] |
687 |
then |
then |
688 |
eval echo \$${var}_${ARCH/i*86/x86} | tr ';' '\n' |
eval echo \"\$${var}_${ARCH/i*86/x86}\" | tr ';' '\n' |
689 |
else |
else |
690 |
echo "\$(eval echo \\\$${var}_\${ARCH/i*86/x86} | tr ';' '\n')" |
echo "\$(eval echo \\\"\\\$${var}_\${ARCH/i*86/x86}\\\" | tr ';' '\n')" |
691 |
fi |
fi |
692 |
retval=0 |
retval=0 |
693 |
else |
else |
813 |
for i in ${SPECIAL_VARS} |
for i in ${SPECIAL_VARS} |
814 |
do |
do |
815 |
# being tricky here :) |
# being tricky here :) |
816 |
echo "${i}=\"$(eval echo \$${i})\"" >> ${dest} |
echo "${i}=\"$(eval echo \"\$${i}\")\"" >> ${dest} |
817 |
done |
done |
818 |
fi |
fi |
819 |
|
|