mirror of
https://github.com/nim-lang/Nim.git
synced 2026-02-11 22:08:54 +00:00
fix compilation on Debian 7 (no git -C) (#18427)
* fix compilation on Debian 7 (no git -C) * address review * allow specify branch for testing unmerged csources * temporarily change csources checkout parameters for testing * Update tools/deps.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * fix failure * Update config/build_config.txt * set proper git branch/hash Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
This commit is contained in:
@@ -10,7 +10,7 @@ SET nim_csources=bin\nim_csources_%nim_csourcesHash%.exe
|
||||
echo "building from csources: %nim_csources%"
|
||||
|
||||
if not exist %nim_csourcesDir% (
|
||||
git clone -q --depth 1 %nim_csourcesUrl% %nim_csourcesDir%
|
||||
git clone -q --depth 1 -b %nim_csourcesBranch% %nim_csourcesUrl% %nim_csourcesDir%
|
||||
)
|
||||
|
||||
if not exist %nim_csources% (
|
||||
|
||||
@@ -10,7 +10,7 @@ SET nim_csources=bin\nim_csources_%nim_csourcesHash%.exe
|
||||
echo "building from csources: %nim_csources%"
|
||||
|
||||
if not exist %nim_csourcesDir% (
|
||||
git clone -q --depth 1 %nim_csourcesUrl% %nim_csourcesDir%
|
||||
git clone -q --depth 1 -b %nim_csourcesBranch% %nim_csourcesUrl% %nim_csourcesDir%
|
||||
)
|
||||
|
||||
if not exist %nim_csources% (
|
||||
|
||||
@@ -120,8 +120,12 @@ nimBuildCsourcesIfNeeded(){
|
||||
else
|
||||
# Note: using git tags would allow fetching just what's needed, unlike git hashes, e.g.
|
||||
# via `git clone -q --depth 1 --branch $tag $nim_csourcesUrl`.
|
||||
echo_run git clone -q --depth 1 $nim_csourcesUrl "$nim_csourcesDir"
|
||||
echo_run git -C "$nim_csourcesDir" checkout $nim_csourcesHash
|
||||
echo_run git clone -q --depth 1 -b $nim_csourcesBranch \
|
||||
$nim_csourcesUrl "$nim_csourcesDir"
|
||||
# old `git` versions don't support -C option, using `cd` explicitly:
|
||||
echo_run cd "$nim_csourcesDir"
|
||||
echo_run git checkout $nim_csourcesHash
|
||||
echo_run cd "$OLDPWD"
|
||||
# if needed we could also add: `git reset --hard $nim_csourcesHash`
|
||||
fi
|
||||
_nimBuildCsourcesIfNeeded "$@"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
nim_comment="key-value pairs for windows/posix bootstrapping build scripts"
|
||||
nim_csourcesDir=csources_v1
|
||||
nim_csourcesUrl=https://github.com/nim-lang/csources_v1.git
|
||||
nim_csourcesHash=a8a5241f9475099c823cfe1a5e0ca4022ac201ff
|
||||
nim_csourcesBranch=master
|
||||
nim_csourcesHash=9a7f751d23c49c75a0b6f63a234c575dc0df7231
|
||||
|
||||
@@ -61,7 +61,7 @@ SET nim_csources=bin\nim_csources_%nim_csourcesHash%.exe
|
||||
echo "building from csources: %nim_csources%"
|
||||
|
||||
if not exist %nim_csourcesDir% (
|
||||
git clone -q --depth 1 %nim_csourcesUrl% %nim_csourcesDir%
|
||||
git clone -q --depth 1 -b %nim_csourcesBranch% %nim_csourcesUrl% %nim_csourcesDir%
|
||||
)
|
||||
|
||||
if not exist %nim_csources% (
|
||||
|
||||
@@ -28,8 +28,13 @@ proc cloneDependency*(destDirBase: string, url: string, commit = commitHead,
|
||||
# from failing
|
||||
execRetry fmt"git clone -q {url} {destDir2}"
|
||||
if isGitRepo(destDir):
|
||||
execRetry fmt"git -C {destDir2} fetch -q"
|
||||
exec fmt"git -C {destDir2} checkout -q {commit}"
|
||||
let oldDir = getCurrentDir()
|
||||
setCurrentDir(destDir2)
|
||||
try:
|
||||
execRetry "git fetch -q"
|
||||
exec fmt"git checkout -q {commit}"
|
||||
finally:
|
||||
setCurrentDir(oldDir)
|
||||
elif allowBundled:
|
||||
discard "this dependency was bundled with Nim, don't do anything"
|
||||
else:
|
||||
|
||||
@@ -25,7 +25,8 @@ endif
|
||||
|
||||
ifeq ($(uos),linux)
|
||||
myos = linux
|
||||
LDFLAGS += -ldl -lm
|
||||
# add -lrt to avoid "undefined reference to `clock_gettime'" with glibc<2.17
|
||||
LDFLAGS += -ldl -lm -lrt
|
||||
endif
|
||||
ifeq ($(uos),dragonfly)
|
||||
myos = freebsd
|
||||
|
||||
Reference in New Issue
Block a user