Never export LD_LIBRARY_PATH

It's been made redundant by the RPATH changes

The only platform that gets the dubious honor of actually needing an
LD_LIBRARY_PATH is PocketBook, because of InkView.

Co-authored-by: Benoit Pierre <benoit.pierre@gmail.com>

Bump base to pull in the aforementioned RPATH changes ;).

https://github.com/koreader/koreader-base/pull/1638
This commit is contained in:
NiLuJe
2023-07-16 03:51:57 +02:00
parent 8a240dd635
commit 17bdd56e02
16 changed files with 21 additions and 49 deletions

2
base

Submodule base updated: a938d082ba...b0f7e99845

View File

@@ -27,8 +27,7 @@ local function isCommand(s)
end
local function runCommand(command)
local env = jit.os ~= "OSX" and 'env -u LD_LIBRARY_PATH ' or ""
return os.execute(env..command) == 0
return os.execute(command) == 0
end
local function getDesktopDicts()

20
kodev
View File

@@ -136,9 +136,6 @@ function setup_env() {
fi
EMU_DIR="${files[${idx}]}/koreader"
export EMU_DIR
KO_LD_LIBRARY_PATH="$(realpath "${EMU_DIR}")/libs:${LD_LIBRARY_PATH}"
# Don't export it to avoid messing with tools (e.g., debuggers).
# We'll pass it to LuaJIT via env
}
function kodev-fetch-thirdparty() {
@@ -818,7 +815,7 @@ TARGET:
fi
KOREADER_ARGS="-d"
KOREADER_COMMAND="env LD_LIBRARY_PATH=${KO_LD_LIBRARY_PATH} ./reader.lua ${KOREADER_ARGS}"
KOREADER_COMMAND="./reader.lua ${KOREADER_ARGS}"
# run with catchsegv by default when it is available (unless no-catchsegv is enabled, c.f., #7036)
# see https://github.com/koreader/koreader/issues/2878#issuecomment-326796777
@@ -829,7 +826,7 @@ TARGET:
fi
if [ -n "${valgrind}" ]; then
KOREADER_COMMAND="${valgrind} env LD_LIBRARY_PATH=${KO_LD_LIBRARY_PATH} ./luajit reader.lua ${KOREADER_ARGS}"
KOREADER_COMMAND="${valgrind} ./luajit reader.lua ${KOREADER_ARGS}"
fi
echo "[*] Running KOReader with arguments: $* ..."
@@ -843,9 +840,9 @@ TARGET:
# We don't want to stack valgrind/catchsegv on top of GDB ;).
if [[ "${gdb}" == gdb* ]]; then
# The standard CLI needs a little hand holding to properly pass arguments to the process it'll monitor
KOREADER_COMMAND="${gdb} --args env LD_LIBRARY_PATH=${KO_LD_LIBRARY_PATH} ./luajit reader.lua ${KOREADER_ARGS} ${args}"
KOREADER_COMMAND="${gdb} --args ./luajit reader.lua ${KOREADER_ARGS} ${args}"
else
KOREADER_COMMAND="${gdb} env LD_LIBRARY_PATH=${KO_LD_LIBRARY_PATH} ./luajit reader.lua ${KOREADER_ARGS} ${args}"
KOREADER_COMMAND="${gdb} ./luajit reader.lua ${KOREADER_ARGS} ${args}"
fi
else
KOREADER_COMMAND="${KOREADER_COMMAND} ${args}"
@@ -952,8 +949,7 @@ OPTIONS:
fi
echo "Running tests in" "${test_path}"
env LD_LIBRARY_PATH="${KO_LD_LIBRARY_PATH}" \
busted --lua="./luajit" "${opts}" \
busted --lua="./luajit" "${opts}" \
--output=gtest \
--lpath="${test_path_basedir}/?.lua" \
--exclude-tags=notest "${test_path}"
@@ -1091,8 +1087,7 @@ OPTIONS:
test_path="./spec/${target}/unit"
if [ "${show_previous}" -eq 0 ]; then
echo "Running tests in" ${test_path}
env LD_LIBRARY_PATH="${KO_LD_LIBRARY_PATH}" \
busted --lua="./luajit" \
busted --lua="./luajit" \
--sort-files \
-o "./spec/${target}/unit/verbose_print" \
--coverage \
@@ -1260,8 +1255,7 @@ case "${1}" in
prompt)
kodev-build
pushd "${EMU_DIR}" && {
env LD_LIBRARY_PATH="${KO_LD_LIBRARY_PATH}" \
./luajit -i setupkoenv.lua
./luajit -i setupkoenv.lua
} && popd || exit
;;
log)

View File

@@ -7,9 +7,6 @@ KOREADER_DIR="${0%/*}"
# we're always starting from our working directory
cd "${KOREADER_DIR}" || exit
# export load library path
export LD_LIBRARY_PATH="${KOREADER_DIR}/libs":"${LD_LIBRARY_PATH}"
RETURN_VALUE=85
while [ ${RETURN_VALUE} -eq 85 ]; do

View File

@@ -53,9 +53,6 @@ if [ -n "${fail}" ] && [ "${fail}" -eq 0 ]; then
exec ./koreader.sh "$@"
fi
# load our own shared libraries if possible
export LD_LIBRARY_PATH="${KOREADER_DIR}/libs"
# export trained OCR data directory
export TESSDATA_PREFIX="data"

View File

@@ -16,9 +16,6 @@ KOREADER_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/../lib/koreader"
# we're always starting from our working directory
cd "${KOREADER_DIR}" || exit
# export load library path
export LD_LIBRARY_PATH=${KOREADER_DIR}/libs:${LD_LIBRARY_PATH}
RETURN_VALUE=85
while [ ${RETURN_VALUE} -eq 85 ]; do
./reader.lua "${ARGS}"

View File

@@ -177,9 +177,6 @@ if [ -n "${fail}" ] && [ "${fail}" -eq 0 ]; then
exec ./koreader.sh ${REEXEC_FLAGS} "${@}"
fi
# load our own shared libraries if possible
export LD_LIBRARY_PATH="${KOREADER_DIR}/libs:${LD_LIBRARY_PATH}"
# export trained OCR data directory
export TESSDATA_PREFIX="data"
@@ -355,9 +352,9 @@ fi
if [ "${STOP_FRAMEWORK}" = "yes" ]; then
logmsg "Restarting framework . . ."
if [ "${INIT_TYPE}" = "sysv" ]; then
cd / && env -u LD_LIBRARY_PATH /etc/init.d/framework start
cd / && /etc/init.d/framework start
else
cd / && env -u LD_LIBRARY_PATH start lab126_gui
cd / && start lab126_gui
fi
fi

View File

@@ -6,7 +6,7 @@ cp -a "/etc/resolv.conf" "/tmp/resolv.ko"
old_hash="$(md5sum "/etc/resolv.conf" | cut -f1 -d' ')"
if [ -x "/sbin/dhcpcd" ]; then
env -u LD_LIBRARY_PATH dhcpcd -d -k "${INTERFACE}"
dhcpcd -d -k "${INTERFACE}"
killall -q -TERM udhcpc default.script
else
killall -q -TERM udhcpc default.script dhcpcd

View File

@@ -136,5 +136,4 @@ ifconfig "${INTERFACE}" up
[ "${WIFI_MODULE}" = "dhd" ] && wlarm_le -i "${INTERFACE}" up
pkill -0 wpa_supplicant ||
env -u LD_LIBRARY_PATH \
wpa_supplicant -D "${WPA_SUPPLICANT_DRIVER}" -s -i "${INTERFACE}" -c /etc/wpa_supplicant/wpa_supplicant.conf -C /var/run/wpa_supplicant -B
wpa_supplicant -D "${WPA_SUPPLICANT_DRIVER}" -s -i "${INTERFACE}" -c /etc/wpa_supplicant/wpa_supplicant.conf -C /var/run/wpa_supplicant -B

View File

@@ -144,9 +144,6 @@ if [ -n "${fail}" ] && [ "${fail}" -eq 0 ]; then
exec ./koreader.sh "${@}"
fi
# load our own shared libraries if possible
export LD_LIBRARY_PATH="${KOREADER_DIR}/libs:${LD_LIBRARY_PATH}"
# export trained OCR data directory
export TESSDATA_PREFIX="data"

View File

@@ -31,7 +31,7 @@ if grep -q "^${WIFI_MODULE}" "/proc/modules"; then
cp -a "/etc/resolv.conf" "/tmp/resolv.ko"
old_hash="$(md5sum "/etc/resolv.conf" | cut -f1 -d' ')"
if [ -x "/sbin/dhcpcd" ]; then
env -u LD_LIBRARY_PATH dhcpcd -d -k "${INTERFACE}"
dhcpcd -d -k "${INTERFACE}"
killall -q -TERM udhcpc default.script
else
killall -q -TERM udhcpc default.script dhcpcd

View File

@@ -18,7 +18,7 @@ done
# NOTE: Prefer dhcpcd over udhcpc if available. That's what Nickel uses,
# and udhcpc appears to trip some insanely wonky corner cases on current FW (#6421)
if [ -x "/sbin/dhcpcd" ]; then
env -u LD_LIBRARY_PATH dhcpcd -d -t 30 -w "${INTERFACE}"
dhcpcd -d -t 30 -w "${INTERFACE}"
else
env -u LD_LIBRARY_PATH udhcpc -S -i "${INTERFACE}" -s /etc/udhcpc.d/default.script -b -q
udhcpc -S -i "${INTERFACE}" -s /etc/udhcpc.d/default.script -b -q
fi

View File

@@ -6,7 +6,7 @@ cp -a "/etc/resolv.conf" "/tmp/resolv.ko"
old_hash="$(md5sum "/etc/resolv.conf" | cut -f1 -d' ')"
if [ -x "/sbin/dhcpcd" ]; then
env -u LD_LIBRARY_PATH dhcpcd -d -k "${INTERFACE}"
dhcpcd -d -k "${INTERFACE}"
killall -q -TERM udhcpc default.script
else
killall -q -TERM udhcpc default.script dhcpcd

View File

@@ -4,6 +4,10 @@ export LC_ALL="en_US.UTF-8"
# working directory of koreader
KOREADER_DIR="/mnt/ext1/applications/koreader"
# load our own shared libraries if possible, solely because we don't control InkView, and we'd rather not it have load duplicate system libs...
# (We handle this via DT_RPATH for our own stuff).
export LD_LIBRARY_PATH="${KOREADER_DIR}/libs${LD_LIBRARY_PATH+:}${LD_LIBRARY_PATH}"
# file through which we communicate instanced opens
export KO_PATH_OPEN_BOOK="/tmp/.koreader.open"
@@ -74,9 +78,6 @@ ko_update_check() {
# we're always starting from our working directory
cd ${KOREADER_DIR} || exit
# export load library path for some old firmware
export LD_LIBRARY_PATH="${KOREADER_DIR}/libs:${LD_LIBRARY_PATH}"
# export trained OCR data directory
export TESSDATA_PREFIX="data"

View File

@@ -72,9 +72,6 @@ if [ -n "${fail}" ] && [ "${fail}" -eq 0 ]; then
exec ./koreader.sh "${@}"
fi
# load our own shared libraries if possible
export LD_LIBRARY_PATH="${KOREADER_DIR}/libs:${LD_LIBRARY_PATH}"
# export trained OCR data directory
export TESSDATA_PREFIX="data"

View File

@@ -7,9 +7,6 @@ KOREADER_DIR="${0%/*}"
# we're always starting from our working directory
cd "${KOREADER_DIR}" || exit
# export load library path for some old firmware
export LD_LIBRARY_PATH="${KOREADER_DIR}/libs":"${LD_LIBRARY_PATH}"
# export trained OCR data directory
export TESSDATA_PREFIX="data"