all repos — min @ f0dcdc3bfce15cd9e320c919112f0700c3e8fc2a

A small but practical concatenative programming language.

Implemented possibility of non-static builds
h3rald h3rald@h3rald.com
Mon, 25 May 2026 06:52:20 +0200
commit

f0dcdc3bfce15cd9e320c919112f0700c3e8fc2a

parent

34e5a54d1442bc2f19c53b568a02f3cb5e8ce1c3

5 files changed, 12 insertions(+), 6 deletions(-)

jump to
M min.nimsmin.nims

@@ -27,7 +27,7 @@ switch("dynlibOverride", "pcre64")

else: switch("dynlibOverride", "pcre") -when defined(ssl): +when defined(ssl) and defined(static): switch("define", "useOpenSsl3") when defined(windows): # TODO", change once issue nim#15220 is resolved
M minpkg/lib/min_crypto.nimminpkg/lib/min_crypto.nim

@@ -13,7 +13,7 @@ ../core/utils

{.compile: "../vendor/aes/libaes.c".} -when defined(ssl): +when defined(ssl) and defined(static): import openssl

@@ -53,7 +53,7 @@ let vals = i.expect("'sym")

let s = vals[0] i.push s.getString.decode.newVal - when defined(ssl): + when defined(ssl) and defined(static): proc hash(s: string, kind: EVP_MD, size: Natural): string = var hash = alloc(size)
M minpkg/lib/min_http.nimminpkg/lib/min_http.nim

@@ -13,7 +13,7 @@ ../core/value,

../core/interpreter, ../core/utils -when defined(ssl): +when defined(ssl) and defined(static): when defined(amd64): when defined(windows) : {.passL: "-static -L"&currentSourcePath().parentDir.parentDir&"/vendor/openssl/windows/x64 -lssl -lcrypto -lws2_32".}
M next-release.mdnext-release.md

@@ -1,6 +1,6 @@

### New Features -tbd +* By default, nimble builds are no longer statically linking other libraries. ### Fixes and Improvements
M tasks/build.mintasks/build.min

@@ -18,7 +18,7 @@ " " :d-variant

"min" :o-variant (variant length 0 >) ( "-d:$# " (variant) =% @d-variant - "$#min" (variant) =% @o-variant + "min" (variant) =% @o-variant ) when "nim" required "Building $# - $# (x64)" (o-variant target-os) =% io.notice!

@@ -113,6 +113,12 @@ ) ::

;; Builds min (dev version) on the current OS. ( symbol default + (==>) + ("release-nopack" "static" sys.os cz) +) :: +;; Builds min (dev version) on the current OS. +( + symbol dynamic (==>) ("release-nopack" "" sys.os cz) ) ::