blob: a83e3544148282491985e58511ad72b9c2d7e2ee (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/eclass/portability.eclass,v 1.1 2005/09/18 17:33:44 flameeyes Exp $
#
# Author: Diego Pettenò <flameeyes@gentoo.org>
#
# This eclass is created to avoid using non-portable GNUisms inside ebuilds
#
# NB: If you add anything, please comment it!
# treecopy orig1 orig2 orig3 .... dest
#
# mimic cp --parents copy, but working on BSD userland as well
treecopy() {
dest=${!#}
files_count=$#
while(( $# > 1 )); do
dirstruct=$(dirname "$1")
mkdir -p "${dest}/${dirstruct}"
cp -pPR "$1" "${dest}/${dirstruct}"
shift
done
}
# seq min max
#
# compatibility function that mimes seq command if not available
seq() {
local p
p=$(type -P seq)
case $# in
1)
min=1
max=$1
step=1
;;
2)
min=$1
max=$2
step=1
;;
3)
min=$1
max=$3
step=$2
;;
*)
die "seq called with wrong parameters number"
esac
if [[ -z "${p}" ]]; then
local reps
# BSD userland
if [[ ${step} != 0 ]]; then
reps=$(( ($max-$min) / $step +1 ))
else
reps=0
fi
jot $reps $min $max $step
else
"${p}" $min $step $max
fi
}
# Gets the linker flag to link to dlopen() function
dlopen_lib() {
if [[ ${ELIBC} != *BSD ]]; then
echo "-ldl"
fi
}
|