From 4a2aaa07dc6b52247bc0b7d40fac30a1f7eabac0 Mon Sep 17 00:00:00 2001 From: Dominik Picheta Date: Sun, 22 Sep 2019 00:53:52 +0100 Subject: [PATCH] Implements NimblePkgVersion define. Fixes #625. --- src/nimble.nim | 10 ++++++---- .../nimbleVersionDefine.nimble | 14 ++++++++++++++ .../nimbleVersionDefine/src/nimbleVersionDefine | Bin 0 -> 86500 bytes .../src/nimbleVersionDefine.nim | 3 +++ tests/tester.nim | 10 ++++++++++ 5 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 tests/nimbleVersionDefine/nimbleVersionDefine.nimble create mode 100755 tests/nimbleVersionDefine/src/nimbleVersionDefine create mode 100644 tests/nimbleVersionDefine/src/nimbleVersionDefine.nim diff --git a/src/nimble.nim b/src/nimble.nim index 402601a..5cf9652 100644 --- a/src/nimble.nim +++ b/src/nimble.nim @@ -225,6 +225,7 @@ proc buildFromDir( " `bin` key in your .nimble file?") var args = args let realDir = pkgInfo.getRealDir() + let nimblePkgVersion = "-d:NimblePkgVersion=" & pkgInfo.version for path in paths: args.add("--path:\"" & path & "\" ") for bin in pkgInfo.bin: # Check if this is the only binary that we want to build. @@ -242,8 +243,8 @@ proc buildFromDir( createDir(outputDir) try: - doCmd("\"" & getNimBin() & "\" $# --noBabelPath $# $# \"$#\"" % - [pkgInfo.backend, join(args, " "), outputOpt, + doCmd("\"" & getNimBin() & "\" $# --noNimblePath $# $# $# \"$#\"" % + [pkgInfo.backend, nimblePkgVersion, join(args, " "), outputOpt, realDir / bin.changeFileExt("nim")]) except NimbleError: let currentExc = (ref NimbleError)(getCurrentException()) @@ -530,6 +531,7 @@ proc execBackend(options: Options) = nimScriptHint(pkgInfo) let deps = processDeps(pkginfo, options) + let nimblePkgVersion = "-d:NimblePkgVersion=" & pkgInfo.version var args = "" for dep in deps: args.add("--path:\"" & dep.getRealDir() & "\" ") for option in options.getCompilationFlags(): @@ -547,8 +549,8 @@ proc execBackend(options: Options) = else: display("Generating", ("documentation for $1 (from package $2) using $3 " & "backend") % [bin, pkgInfo.name, backend], priority = HighPriority) - doCmd("\"" & getNimBin() & "\" $# --noNimblePath $# \"$#\"" % - [backend, args, bin], showOutput = true) + doCmd("\"" & getNimBin() & "\" $# --noNimblePath $# $# \"$#\"" % + [backend, nimblePkgVersion, args, bin], showOutput = true) display("Success:", "Execution finished", Success, HighPriority) proc search(options: Options) = diff --git a/tests/nimbleVersionDefine/nimbleVersionDefine.nimble b/tests/nimbleVersionDefine/nimbleVersionDefine.nimble new file mode 100644 index 0000000..b47b049 --- /dev/null +++ b/tests/nimbleVersionDefine/nimbleVersionDefine.nimble @@ -0,0 +1,14 @@ +# Package + +version = "0.1.0" +author = "Dominik Picheta" +description = "A new awesome nimble package" +license = "MIT" +srcDir = "src" +bin = @["nimbleVersionDefine"] + + + +# Dependencies + +requires "nim >= 0.16.0" diff --git a/tests/nimbleVersionDefine/src/nimbleVersionDefine b/tests/nimbleVersionDefine/src/nimbleVersionDefine new file mode 100755 index 0000000000000000000000000000000000000000..3b089c01cfe8bed84e2cacb812590f1b97d73f10 GIT binary patch literal 86500 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 PpazRKkMYRB4(R+}iPK7{ literal 0 HcmV?d00001 diff --git a/tests/nimbleVersionDefine/src/nimbleVersionDefine.nim b/tests/nimbleVersionDefine/src/nimbleVersionDefine.nim new file mode 100644 index 0000000..572dab8 --- /dev/null +++ b/tests/nimbleVersionDefine/src/nimbleVersionDefine.nim @@ -0,0 +1,3 @@ +when isMainModule: + const NimblePkgVersion {.strdefine.} = "Unknown" + echo(NimblePkgVersion) diff --git a/tests/tester.nim b/tests/tester.nim index c70c5b7..19c52cf 100644 --- a/tests/tester.nim +++ b/tests/tester.nim @@ -907,6 +907,16 @@ suite "nimble run": check output.contains("tests/run/run --debug check") check output.contains("""Testing `nimble run`: @["--debug", "check"]""") +test "NimbleVersion is defined": + cd "nimbleVersionDefine": + var (output, exitCode) = execNimble("c", "-r", "src/nimbleVersionDefine.nim") + check output.contains("0.1.0") + check exitCode == QuitSuccess + + var (output2, exitCode2) = execNimble("run", "nimbleVersionDefine") + check output2.contains("0.1.0") + check exitCode2 == QuitSuccess + test "compilation without warnings": const buildDir = "./buildDir/" const filesToBuild = [