From 4b42b4740963eac694fedff2d4aa9e580a3984f7 Mon Sep 17 00:00:00 2001 From: Hamish Mackenzie Date: Tue, 15 Oct 2024 13:11:46 +1300 Subject: [PATCH 1/2] Add test for literate-haskell --- test/default.nix | 1 + test/literate-haskell/default.nix | 19 +++++++++++++++++++ test/literate-haskell/literate-haskell.cabal | 16 ++++++++++++++++ test/literate-haskell/src/MyLib.lhs | 7 +++++++ 4 files changed, 43 insertions(+) create mode 100644 test/literate-haskell/default.nix create mode 100644 test/literate-haskell/literate-haskell.cabal create mode 100644 test/literate-haskell/src/MyLib.lhs diff --git a/test/default.nix b/test/default.nix index 925276c007..9ca3cbb580 100644 --- a/test/default.nix +++ b/test/default.nix @@ -234,6 +234,7 @@ let supported-languages = callTest ./supported-langauges {}; js-template-haskell = callTest ./js-template-haskell {}; gi-gtk = callTest ./gi-gtk { inherit util; }; + literate-haskell = callTest ./literate-haskell {}; unit = unitTests; }; diff --git a/test/literate-haskell/default.nix b/test/literate-haskell/default.nix new file mode 100644 index 0000000000..572bd08540 --- /dev/null +++ b/test/literate-haskell/default.nix @@ -0,0 +1,19 @@ +{ stdenv, lib, project', haskellLib, recurseIntoAttrs, testSrc, compiler-nix-name, evalPackages }: + +with lib; + +let + project = project' { + inherit compiler-nix-name evalPackages; + src = testSrc "literate-haskell"; + }; + + packages = project.hsPkgs; + +in recurseIntoAttrs { + ifdInputs = { + inherit (project) plan-nix; + }; + + build = packages.literate-haskell.components.library; +} diff --git a/test/literate-haskell/literate-haskell.cabal b/test/literate-haskell/literate-haskell.cabal new file mode 100644 index 0000000000..9dccd2aa7a --- /dev/null +++ b/test/literate-haskell/literate-haskell.cabal @@ -0,0 +1,16 @@ +cabal-version: 3.0 +name: literate-haskell +version: 0.1.0.0 +category: Repro +build-type: Simple + +common warnings + ghc-options: -Wall + +library + import: warnings + exposed-modules: MyLib + build-depends: base + hs-source-dirs: src + default-language: Haskell2010 + diff --git a/test/literate-haskell/src/MyLib.lhs b/test/literate-haskell/src/MyLib.lhs new file mode 100644 index 0000000000..ede42bcdd0 --- /dev/null +++ b/test/literate-haskell/src/MyLib.lhs @@ -0,0 +1,7 @@ +\begin{code} + +module MyLib (x) where + +x=1 + +\end{code} From d3b4fe3f64493a98de755e3af6dd08cae0e2961a Mon Sep 17 00:00:00 2001 From: Hamish Mackenzie Date: Tue, 15 Oct 2024 14:24:53 +1300 Subject: [PATCH 2/2] Fix literate haskell for musl64 and ghc 9.10 --- builder/ghc-for-component-wrapper.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/builder/ghc-for-component-wrapper.nix b/builder/ghc-for-component-wrapper.nix index 454b946b27..8afb44d761 100644 --- a/builder/ghc-for-component-wrapper.nix +++ b/builder/ghc-for-component-wrapper.nix @@ -126,6 +126,7 @@ let '' + lib.optionalString (stdenv.targetPlatform.isMusl && !haskellLib.isNativeMusl && builtins.compareVersions ghc.version "9.9" >0) '' + ln -s $wrappedGhc/bin/${targetPrefix}unlit $wrappedGhc/bin/unlit ln -s $wrappedGhc/bin/${ghcCommand}-iserv $wrappedGhc/bin/ghc-iserv ln -s $wrappedGhc/bin/${ghcCommand}-iserv-prof $wrappedGhc/bin/ghc-iserv-prof ''