on iko/ghcjs-patch-master help sign in
improve keepSource cleanup (#1080)
commit93ab4310e9e9846af8780dcaf829d1cd7212793d authorRichard Wallace <richard.wallace@simspace.com> dateWed 24 Mar 2021, 18:07 (6 years ago) parent20b2328
1 file changed+16−14
builder/comp-builder.nix+16−14
builder/comp-builder.nix+16−14
@@ -30,7 +30,7 @@ let self =
3030 ( haskellLib.isTest componentId &&
3131 lib.any (x: x.identifier.name or "" == "cabal-doctest") package.setup-depends
3232 )
33−, allComponent # Used when `configureAllComponents` is set to get a suitable configuration.
33+, allComponent # Used when `configureAllComponents` is set to get a suitable configuration.
3434
3535, build-tools ? component.build-tools
3636, pkgconfig ? component.pkgconfig
@@ -259,7 +259,7 @@ let
259259 (lib.optionalString (cleanSrc.subDir != "") ''
260260 cd ${lib.removePrefix "/" cleanSrc.subDir}
261261 ''
262− ) +
262+ ) +
263263 (if cabalFile != null
264264 then ''cat ${cabalFile} > ${package.identifier.name}.cabal''
265265 else
@@ -485,19 +485,21 @@ let
485485 # DB (probably empty unless this is a library component).
486486 # We also have to remove any refernces to $out to avoid
487487 # circular references.
488− if configureAllComponents
489− then ''
490− mv dist dist-tmp-dir
491− mkdir -p dist/build
488+ lib.optionalString (configureAllComponents || keepSource) ''
489+ mv dist dist-tmp-dir
490+ mkdir -p dist/build
491+ if [ -d dist-tmp-dir/build/${componentId.cname} ]; then
492492 mv dist-tmp-dir/build/${componentId.cname}/autogen dist/build/
493− mv dist-tmp-dir/package.conf.inplace dist/
494− remove-references-to -t $out dist/build/autogen/*
495− rm -rf dist-tmp-dir
496− ''
497− else lib.optionalString keepSource ''
498− rm -rf dist
499− ''
500− ) + (lib.optionalString (haskellLib.isTest componentId) ''
493+ else
494+ mv dist-tmp-dir/build/autogen dist/build/
495+ fi
496+ mv dist-tmp-dir/package.conf.inplace dist/
497+ remove-references-to -t $out dist/build/autogen/*
498+ rm -rf dist-tmp-dir
499+ ''
500+ ) + (lib.optionalString (keepSource && haskellLib.isLibrary componentId) ''
501+ remove-references-to -t $out ${name}.conf
502+ '') + (lib.optionalString (haskellLib.isTest componentId) ''
501503 echo The test ${package.identifier.name}.components.tests.${componentId.cname} was built. To run the test build ${package.identifier.name}.checks.${componentId.cname}.
502504 '');
503505