From 7637d0675ba810ae7c7f567532c8ed69790e6fa8 Mon Sep 17 00:00:00 2001
From: "Edward Z. Yang" <ezyang@cs.stanford.edu>
Date: Mon, 3 Oct 2016 06:20:19 +0100
Subject: [PATCH] A minor improvement to convenience libraries

We force convenience libraries to NOT be exposed (they're private,
after all.)  This will help us on some of our test cases.
---
 Cabal/Distribution/PackageDescription/Configuration.hs | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/Cabal/Distribution/PackageDescription/Configuration.hs b/Cabal/Distribution/PackageDescription/Configuration.hs
index 45589b2dd6..eb13d5dea5 100644
--- a/Cabal/Distribution/PackageDescription/Configuration.hs
+++ b/Cabal/Distribution/PackageDescription/Configuration.hs
@@ -609,7 +609,8 @@ finalizePD userflags enabled satisfyDep
           Right (targetSet, fs) ->
               let (mb_lib, sub_libs, exes, tests, bms) = flattenTaggedTargets targetSet in
               Right ( (fmap (\l -> (libFillInDefaults l) { libName = Nothing }) mb_lib,
-                       map (\(n,l) -> (libFillInDefaults l) { libName = Just n }) sub_libs,
+                       map (\(n,l) -> (libFillInDefaults l) { libName = Just n
+                                                            , libExposed = False }) sub_libs,
                        map (\(n,e) -> (exeFillInDefaults e) { exeName = n }) exes,
                        map (\(n,t) -> (testFillInDefaults t) { testName = n }) tests,
                        map (\(n,b) -> (benchFillInDefaults b) { benchmarkName = n }) bms),
@@ -685,7 +686,7 @@ flattenPackageDescription (GenericPackageDescription pkg _ mlib0 sub_libs0 exes0
     (bms, bdeps) = foldr flattenBm ([],[]) bms0
     flattenLib (n, t) (es, ds) =
         let (e, ds') = ignoreConditions t in
-        ( (libFillInDefaults $ e { libName = Just n }) : es, ds' ++ ds )
+        ( (libFillInDefaults $ e { libName = Just n, libExposed = False }) : es, ds' ++ ds )
     flattenExe (n, t) (es, ds) =
         let (e, ds') = ignoreConditions t in
         ( (exeFillInDefaults $ e { exeName = n }) : es, ds' ++ ds )
-- 
GitLab