Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 545006 | Differences between
and this patch

Collapse All | Expand All

(-)ldconfig-0.1 (-23 / +17 lines)
Lines 10-25 Link Here
10
10
11
LDSO_CONF_DIR=$(dirname $LDSO_CONF)
11
LDSO_CONF_DIR=$(dirname $LDSO_CONF)
12
12
13
LDSO_PATH=$(ls /lib/ld-musl-*.so.1)
14
if [[ ! -e $LDSO_PATH ]]; then
15
	echo "$LDSO_PATH not found" >&2
16
	exit 1
17
fi
18
19
LDSO_ARCH=$(basename $LDSO_PATH)
20
LDSO_NAME=${LDSO_ARCH%.so.1}
21
ETC_LDSO_PATH=/etc/${LDSO_NAME}.path
22
23
VERBOSE=0
13
VERBOSE=0
24
14
25
get_options() {
15
get_options() {
Lines 33-39 Link Here
33
			ROOT=$OPTARG
23
			ROOT=$OPTARG
34
			;;
24
			;;
35
		f)
25
		f)
36
			LDSOCONF=$OPTARG
26
			LDSO_CONF=$OPTARG
37
			;;
27
			;;
38
		\?)
28
		\?)
39
			echo "Invalid option: -$opt" >&2
29
			echo "Invalid option: -$opt" >&2
Lines 41-47 Link Here
41
			;;
31
			;;
42
		n|N|X|C)
32
		n|N|X|C)
43
			echo "Unimplemented option: -$opt" >&2
33
			echo "Unimplemented option: -$opt" >&2
44
			exit 1
45
			;;
34
			;;
46
		esac
35
		esac
47
	done
36
	done
Lines 106-112 Link Here
106
				fi
95
				fi
107
			fi
96
			fi
108
		done
97
		done
109
	done < $LDSO_CONF
98
	done < $1
110
99
111
	echo $drs
100
	echo $drs
112
}
101
}
Lines 121-136 Link Here
121
}
110
}
122
111
123
get_options "$@"
112
get_options "$@"
124
drs=$(read_ldso_conf)
113
drs=$(read_ldso_conf "$LDSO_CONF")
114
for f in $LDSO_CONF.d/*; do
115
	drs="$drs $(read_ldso_conf "$f")"
116
done
125
drs=$(sanitize $drs)
117
drs=$(sanitize $drs)
126
118
127
X=$(mktemp --tmpdir=/tmp ${LDSO_NAME}.XXXXXX)
119
for LDSO_PATH in $(find /lib -maxdepth 1 -name "ld-musl-*.so.1"); do
128
cat << EOF > $X
120
	LDSO_ARCH=$(basename $LDSO_PATH)
129
# $ETC_LDSO_PATH autogenerated by env-update; make all changes to
121
	LDSO_NAME=${LDSO_ARCH%.so.1}
130
# contents of /etc/env.d directory
122
	ETC_LDSO_PATH=/etc/${LDSO_NAME}.path
131
EOF
123
132
for d in $drs; do
124
	X=$(mktemp --tmpdir=/tmp ${LDSO_NAME}.XXXXXX)
133
	echo $d >> $X
125
	for d in $drs; do
126
		echo $d >> $X
127
	done
128
	mv $X $ETC_LDSO_PATH
129
	chmod 644 $ETC_LDSO_PATH
134
done
130
done
135
mv $X $ETC_LDSO_PATH
136

Return to bug 545006