Fix lists of paths in posix environment (#7034)
Empty paths in a colon separated list would be considered as the current directory, so have to ensure $PATH and $LD_LIBRARY_PATH are not empty before separating it with :
This commit is contained in:
parent
e23ea64c41
commit
5492190bc6
6 changed files with 7 additions and 7 deletions
|
|
@ -8,7 +8,7 @@ stages:
|
||||||
|
|
||||||
.linux_set_path: &linux_set_path_def
|
.linux_set_path: &linux_set_path_def
|
||||||
before_script:
|
before_script:
|
||||||
- export PATH=$(pwd)/bin:$PATH
|
- export PATH=$(pwd)/bin${PATH:+:$PATH}
|
||||||
tags:
|
tags:
|
||||||
- linux
|
- linux
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ before_script:
|
||||||
- sh build.sh
|
- sh build.sh
|
||||||
- cd ..
|
- cd ..
|
||||||
- sed -i -e 's,cc = gcc,cc = clang,' config/nim.cfg
|
- sed -i -e 's,cc = gcc,cc = clang,' config/nim.cfg
|
||||||
- export PATH=$(pwd)/bin:$PATH
|
- export PATH=$(pwd)/bin${PATH:+:$PATH}
|
||||||
script:
|
script:
|
||||||
- nim c koch
|
- nim c koch
|
||||||
- ./koch boot
|
- ./koch boot
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ cd csources
|
||||||
sh build.sh
|
sh build.sh
|
||||||
cd ..
|
cd ..
|
||||||
# Add Nim to the PATH
|
# Add Nim to the PATH
|
||||||
export PATH=$(pwd)/bin:$PATH
|
export PATH=$(pwd)/bin${PATH:+:$PATH}
|
||||||
# Bootstrap.
|
# Bootstrap.
|
||||||
nim -v
|
nim -v
|
||||||
nim c koch
|
nim c koch
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,7 @@ apt-get install -y -qq build-essential git libcurl4-openssl-dev libsdl1.2-dev li
|
||||||
|
|
||||||
gcc -v
|
gcc -v
|
||||||
|
|
||||||
export PATH=$(pwd)/bin:$PATH
|
export PATH=$(pwd)/bin${PATH:+:$PATH}
|
||||||
|
|
||||||
# Nimble deps
|
# Nimble deps
|
||||||
nim e install_nimble.nims
|
nim e install_nimble.nims
|
||||||
|
|
|
||||||
4
koch.nim
4
koch.nim
|
|
@ -97,7 +97,7 @@ proc exec(cmd: string, errorcode: int = QuitFailure, additionalPath = "") =
|
||||||
if not absolute.isAbsolute:
|
if not absolute.isAbsolute:
|
||||||
absolute = getCurrentDir() / absolute
|
absolute = getCurrentDir() / absolute
|
||||||
echo("Adding to $PATH: ", absolute)
|
echo("Adding to $PATH: ", absolute)
|
||||||
putEnv("PATH", prevPath & PathSep & absolute)
|
putEnv("PATH", (if prevPath.len > 0: prevPath & PathSep else: "") & absolute)
|
||||||
echo(cmd)
|
echo(cmd)
|
||||||
if execShellCmd(cmd) != 0: quit("FAILURE", errorcode)
|
if execShellCmd(cmd) != 0: quit("FAILURE", errorcode)
|
||||||
putEnv("PATH", prevPath)
|
putEnv("PATH", prevPath)
|
||||||
|
|
@ -402,7 +402,7 @@ proc winReleaseArch(arch: string) =
|
||||||
|
|
||||||
template withMingw(path, body) =
|
template withMingw(path, body) =
|
||||||
let prevPath = getEnv("PATH")
|
let prevPath = getEnv("PATH")
|
||||||
putEnv("PATH", path & PathSep & prevPath)
|
putEnv("PATH", (if path.len > 0: path & PathSep else: "") & prevPath)
|
||||||
try:
|
try:
|
||||||
body
|
body
|
||||||
finally:
|
finally:
|
||||||
|
|
|
||||||
|
|
@ -90,7 +90,7 @@ proc runBasicDLLTest(c, r: var TResults, cat: Category, options: string) =
|
||||||
# posix relies on crappy LD_LIBRARY_PATH (ugh!):
|
# posix relies on crappy LD_LIBRARY_PATH (ugh!):
|
||||||
var libpath = getEnv"LD_LIBRARY_PATH".string
|
var libpath = getEnv"LD_LIBRARY_PATH".string
|
||||||
# Temporarily add the lib directory to LD_LIBRARY_PATH:
|
# Temporarily add the lib directory to LD_LIBRARY_PATH:
|
||||||
putEnv("LD_LIBRARY_PATH", "tests/dll:" & libpath)
|
putEnv("LD_LIBRARY_PATH", "tests/dll" & (if libpath.len > 0: ":" & libpath else: ""))
|
||||||
defer: putEnv("LD_LIBRARY_PATH", libpath)
|
defer: putEnv("LD_LIBRARY_PATH", libpath)
|
||||||
var nimrtlDll = DynlibFormat % "nimrtl"
|
var nimrtlDll = DynlibFormat % "nimrtl"
|
||||||
safeCopyFile("lib" / nimrtlDll, "tests/dll" / nimrtlDll)
|
safeCopyFile("lib" / nimrtlDll, "tests/dll" / nimrtlDll)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue