From ad440120798c9850a1ab5c2da729a8f046712e94 Mon Sep 17 00:00:00 2001 From: Vicente Eduardo Ferrer Garcia Date: Wed, 13 Oct 2021 10:17:58 +0200 Subject: [PATCH] Enabled netcore and print dotnet --info while building. --- scripts/deps.sh | 2 +- source/metacall.scm | 273 ++++++++++++++++++++++---------------------- 2 files changed, 138 insertions(+), 137 deletions(-) diff --git a/scripts/deps.sh b/scripts/deps.sh index 8c7d887..841222c 100755 --- a/scripts/deps.sh +++ b/scripts/deps.sh @@ -29,7 +29,7 @@ export GUILE_WARN_DEPRECATED='detailed' && apk del git-deps \ `# Build` && guix build --fallback \ glibc-utf8-locales nss-certs \ - `# dotnet codeanalysis-csharp codeanalysis-common codeanalysis-analyzers` \ + dotnet codeanalysis-csharp codeanalysis-common codeanalysis-analyzers \ cherow typescript libnode-lts \ -L /metacall/nonguix -L /metacall/source \ `# Exit` && exit 0 || exit 1 diff --git a/source/metacall.scm b/source/metacall.scm index ca843b5..89c8a56 100644 --- a/source/metacall.scm +++ b/source/metacall.scm @@ -65,9 +65,9 @@ ; RapidJSON #:use-module (gnu packages web) - ; NetCore Dependencies (TODO) - ; #:use-module (nongnu packages dotnet) - ; #:use-module (nonguix build-system binary) + ; NetCore Dependencies + #:use-module (nongnu packages dotnet) + #:use-module (nonguix build-system binary) ; Cobol Dependencies #:use-module (gnu packages cobol) @@ -152,96 +152,96 @@ for any host, on any OS. TypeScript compiles to readable, standards-based JavaSc ) ) -; NetCore Loader Dependencies (TODO) -; (define-public codeanalysis-csharp -; (package -; (name "codeanalysis-csharp") -; (version "3.2.1") -; (source -; (origin -; (method url-fetch) -; (uri (string-append "https://globalcdn.nuget.org/packages/microsoft.codeanalysis.csharp." version ".nupkg")) -; (sha256 (base32 "02kyh5xsr3ciw71afzyis91m18iys1kpndl6h6ykayg9w36z9rz7")) -; ) -; ) -; (build-system binary-build-system) -; (arguments -; `(#:phases -; (modify-phases %standard-phases -; (replace 'unpack -; (lambda* (#:key source #:allow-other-keys) -; (invoke "cp" source (string-append (getcwd) "/microsoft.codeanalysis.csharp.3.2.1.nupkg")) -; ) -; ) -; ) -; ) -; ) -; (home-page "https://www.nuget.org/packages/Microsoft.CodeAnalysis.CSharp") -; (synopsis ".NET Compiler Platform (Roslyn).") -; (description ".NET Compiler Platform (Roslyn).") -; (license license:expat) -; ) -; ) - -; (define-public codeanalysis-common -; (package -; (name "codeanalysis-common") -; (version "3.2.1") -; (source -; (origin -; (method url-fetch) -; (uri (string-append "https://globalcdn.nuget.org/packages/microsoft.codeanalysis.common." version ".nupkg")) -; (sha256 (base32 "1n3jc5fz78f7smzjanmq00iv3pdifnhkgmmsb9czrfbzc3v4c3d2")) -; ) -; ) -; (build-system binary-build-system) -; (arguments -; `(#:phases -; (modify-phases %standard-phases -; (replace 'unpack -; (lambda* (#:key source #:allow-other-keys) -; (invoke "cp" source (string-append (getcwd) "/microsoft.codeanalysis.common.3.2.1.nupkg")) -; ) -; ) -; ) -; ) -; ) -; (home-page "https://www.nuget.org/packages/Microsoft.CodeAnalysis.Common") -; (synopsis ".NET Compiler Platform (Roslyn).") -; (description ".NET Compiler Platform (Roslyn).") -; (license license:expat) -; ) -; ) - -; (define-public codeanalysis-analyzers -; (package -; (name "codeanalysis-analyzers") -; (version "2.9.3") -; (source -; (origin -; (method url-fetch) -; (uri (string-append "https://globalcdn.nuget.org/packages/microsoft.codeanalysis.analyzers." version ".nupkg")) -; (sha256 (base32 "1kskwc9gyd2sx3zwx52qwfsl7s0xhaclmlnxvjsb4jgvpydv3xii")) -; ) -; ) -; (build-system binary-build-system) -; (arguments -; `(#:phases -; (modify-phases %standard-phases -; (replace 'unpack -; (lambda* (#:key source #:allow-other-keys) -; (invoke "cp" source (string-append (getcwd) "/microsoft.codeanalysis.analyzers.2.9.3.nupkg")) -; ) -; ) -; ) -; ) -; ) -; (home-page "https://www.nuget.org/packages/Microsoft.CodeAnalysis.Analyzers") -; (synopsis ".NET Compiler Platform (Roslyn).") -; (description ".NET Compiler Platform (Roslyn).") -; (license license:expat) -; ) -; ) +; NetCore Loader Dependencies +(define-public codeanalysis-csharp + (package + (name "codeanalysis-csharp") + (version "3.2.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://globalcdn.nuget.org/packages/microsoft.codeanalysis.csharp." version ".nupkg")) + (sha256 (base32 "02kyh5xsr3ciw71afzyis91m18iys1kpndl6h6ykayg9w36z9rz7")) + ) + ) + (build-system binary-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'unpack + (lambda* (#:key source #:allow-other-keys) + (invoke "cp" source (string-append (getcwd) "/microsoft.codeanalysis.csharp.3.2.1.nupkg")) + ) + ) + ) + ) + ) + (home-page "https://www.nuget.org/packages/Microsoft.CodeAnalysis.CSharp") + (synopsis ".NET Compiler Platform (Roslyn).") + (description ".NET Compiler Platform (Roslyn).") + (license license:expat) + ) +) + +(define-public codeanalysis-common + (package + (name "codeanalysis-common") + (version "3.2.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://globalcdn.nuget.org/packages/microsoft.codeanalysis.common." version ".nupkg")) + (sha256 (base32 "1n3jc5fz78f7smzjanmq00iv3pdifnhkgmmsb9czrfbzc3v4c3d2")) + ) + ) + (build-system binary-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'unpack + (lambda* (#:key source #:allow-other-keys) + (invoke "cp" source (string-append (getcwd) "/microsoft.codeanalysis.common.3.2.1.nupkg")) + ) + ) + ) + ) + ) + (home-page "https://www.nuget.org/packages/Microsoft.CodeAnalysis.Common") + (synopsis ".NET Compiler Platform (Roslyn).") + (description ".NET Compiler Platform (Roslyn).") + (license license:expat) + ) +) + +(define-public codeanalysis-analyzers + (package + (name "codeanalysis-analyzers") + (version "2.9.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://globalcdn.nuget.org/packages/microsoft.codeanalysis.analyzers." version ".nupkg")) + (sha256 (base32 "1kskwc9gyd2sx3zwx52qwfsl7s0xhaclmlnxvjsb4jgvpydv3xii")) + ) + ) + (build-system binary-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'unpack + (lambda* (#:key source #:allow-other-keys) + (invoke "cp" source (string-append (getcwd) "/microsoft.codeanalysis.analyzers.2.9.3.nupkg")) + ) + ) + ) + ) + ) + (home-page "https://www.nuget.org/packages/Microsoft.CodeAnalysis.Analyzers") + (synopsis ".NET Compiler Platform (Roslyn).") + (description ".NET Compiler Platform (Roslyn).") + (license license:expat) + ) +) ; TODO: MetaCall CLI should set some enviroment variables in order to make it work for Guixers ; See metacall/install CLI script for knowing the needed variables and paths @@ -286,39 +286,42 @@ for any host, on any OS. TypeScript compiles to readable, standards-based JavaSc (("\\$\\{Ruby_LIBRARY\\}") (string-append (assoc-ref inputs "ruby") "/lib/libruby.so"))) #t)) -; TODO -; (add-before 'configure 'dotnet-packages -; (lambda* (#:key inputs #:allow-other-keys) -; (let ( -; (global-pkgs "/tmp/.nuget/packages") -; (additional-pkgs "/tmp/.nuget/nupkgs") -; ) -; (setenv "NUGET_PACKAGES" global-pkgs) -; (setenv "DOTNET_SKIP_FIRST_TIME_EXPERIENCE" "true") -; (setenv "HOME" "/tmp") -; (setenv "DOTNET_ROOT" (string-append (assoc-ref inputs "dotnet") "/share/dotnet")) -; (mkdir-p global-pkgs) -; (mkdir-p additional-pkgs) -; ; TODO: Avoid harcoded versions of CodeAnalysis -; (invoke "cp" (string-append (assoc-ref inputs "codeanalysis-csharp") "/microsoft.codeanalysis.csharp.3.2.1.nupkg") additional-pkgs) -; (invoke "cp" (string-append (assoc-ref inputs "codeanalysis-common") "/microsoft.codeanalysis.common.3.2.1.nupkg") additional-pkgs) -; (invoke "cp" (string-append (assoc-ref inputs "codeanalysis-analyzers") "/microsoft.codeanalysis.analyzers.2.9.3.nupkg") additional-pkgs) -; (with-output-to-file "source/loaders/cs_loader/netcore/source/NuGet.Config" -; (lambda () -; (format #t " -; -; -; -; -; -; -; -; -; -; -; -; " (string-append (assoc-ref inputs "dotnet") "/share/dotnet/shared/Microsoft.NETCore.App/5.0.4/")))) -; #t))) + (add-before 'configure 'dotnet-packages + (lambda* (#:key inputs #:allow-other-keys) + (let ( + (global-pkgs "/tmp/.nuget/packages") + (additional-pkgs "/tmp/.nuget/nupkgs") + ) + (setenv "NUGET_PACKAGES" global-pkgs) + (setenv "DOTNET_SKIP_FIRST_TIME_EXPERIENCE" "true") + (setenv "HOME" "/tmp") + (setenv "DOTNET_ROOT" (string-append (assoc-ref inputs "dotnet") "/share/dotnet")) + (mkdir-p global-pkgs) + (mkdir-p additional-pkgs) + ; Debug DotNet info + (display "-------------------------------------------------------------\n") + (invoke (string-append (assoc-ref inputs "dotnet") "/share/dotnet/dotnet") "--info") + (display "-------------------------------------------------------------\n") + ; TODO: Avoid harcoded versions of CodeAnalysis + (invoke "cp" (string-append (assoc-ref inputs "codeanalysis-csharp") "/microsoft.codeanalysis.csharp.3.2.1.nupkg") additional-pkgs) + (invoke "cp" (string-append (assoc-ref inputs "codeanalysis-common") "/microsoft.codeanalysis.common.3.2.1.nupkg") additional-pkgs) + (invoke "cp" (string-append (assoc-ref inputs "codeanalysis-analyzers") "/microsoft.codeanalysis.analyzers.2.9.3.nupkg") additional-pkgs) + (with-output-to-file "source/loaders/cs_loader/netcore/source/NuGet.Config" + (lambda () + (format #t " + + + + + + + + + + + +" (string-append (assoc-ref inputs "dotnet") "/share/dotnet/shared/Microsoft.NETCore.App/5.0.4/")))) + #t))) (add-after 'build 'build-node-loader-bootstrap-cherow (lambda* (#:key inputs #:allow-other-keys) (let* ((output (string-append (getcwd) "/node_modules/cherow")) @@ -379,7 +382,7 @@ for any host, on any OS. TypeScript compiles to readable, standards-based JavaSc "-DOPTION_BUILD_LOADERS_FILE=ON" "-DOPTION_BUILD_LOADERS_NODE=ON" "-DOPTION_BUILD_LOADERS_TS=ON" - "-DOPTION_BUILD_LOADERS_CS=OFF" ; TODO: ON + "-DOPTION_BUILD_LOADERS_CS=ON" "-DOPTION_BUILD_LOADERS_JS=OFF" ; TODO: Implement V8 Loader "-DOPTION_BUILD_LOADERS_COB=ON" "-DOPTION_BUILD_LOADERS_RPC=ON" @@ -396,10 +399,9 @@ for any host, on any OS. TypeScript compiles to readable, standards-based JavaSc "-DNODEJS_CMAKE_DEBUG=ON" "-DNODEJS_SHARED_UV=ON" - ; TODO - ; (string-append "-DDOTNET_COMMAND=" (assoc-ref %build-inputs "dotnet") "/share/dotnet/dotnet") - ; (string-append "-DDOTNET_CORE_PATH=" (assoc-ref %build-inputs "dotnet") "/share/dotnet/shared/Microsoft.NETCore.App/5.0.4/") - ; "-DDOTNET_ADDITIONAL_PACKAGES=/tmp/.nuget/nupkgs/" + (string-append "-DDOTNET_COMMAND=" (assoc-ref %build-inputs "dotnet") "/share/dotnet/dotnet") + (string-append "-DDOTNET_CORE_PATH=" (assoc-ref %build-inputs "dotnet") "/share/dotnet/shared/Microsoft.NETCore.App/5.0.4/") + "-DDOTNET_ADDITIONAL_PACKAGES=/tmp/.nuget/nupkgs/" (string-append "-DCOBOL_EXECUTABLE=" (assoc-ref %build-inputs "gnucobol") "/bin/cobc") (string-append "-DCOBOL_INCLUDE_DIR=" (assoc-ref %build-inputs "gnucobol") "/include") @@ -438,11 +440,10 @@ for any host, on any OS. TypeScript compiles to readable, standards-based JavaSc ("typescript" ,typescript) ; TypeScript Loader dependency ("gnucobol" ,gnucobol) ; Cobol Loader dependency ("gmp" ,gmp) ; Cobol Loader dependency - ; TODO - ; ("dotnet" ,dotnet) ; NetCore Loader dependency - ; ("codeanalysis-csharp" ,codeanalysis-csharp) ; NetCore Loader dependency - ; ("codeanalysis-common" ,codeanalysis-common) ; NetCore Loader dependency - ; ("codeanalysis-analyzers" ,codeanalysis-analyzers) ; NetCore Loader dependency + ("dotnet" ,dotnet) ; NetCore Loader dependency + ("codeanalysis-csharp" ,codeanalysis-csharp) ; NetCore Loader dependency + ("codeanalysis-common" ,codeanalysis-common) ; NetCore Loader dependency + ("codeanalysis-analyzers" ,codeanalysis-analyzers) ; NetCore Loader dependency ("libcurl" ,curl-minimal) ; RPC Loader Dependency ) )