Skip to content

Commit 749968c

Browse files
committed
Separate list_exposed_modules from compile_library
These are two completely separate steps. Furthermore, only the non-profiled version would actually perform list_exposed_modules.
1 parent 8b76582 commit 749968c

File tree

2 files changed

+13
-15
lines changed

2 files changed

+13
-15
lines changed

haskell/private/actions/compile.bzl

-11
Original file line numberDiff line numberDiff line change
@@ -464,9 +464,6 @@ def compile_library(
464464
dep_info,
465465
plugin_dep_info,
466466
srcs,
467-
ls_modules,
468-
other_modules,
469-
exposed_modules_reexports,
470467
import_dir_map,
471468
extra_srcs,
472469
user_compile_flags,
@@ -512,21 +509,13 @@ def compile_library(
512509
arguments = c.args,
513510
)
514511

515-
if with_profiling:
516-
exposed_modules_file = None
517-
else:
518-
exposed_modules_file = list_exposed_modules(
519-
hs, ls_modules, other_modules, exposed_modules_reexports, c.interfaces_dir
520-
)
521-
522512
return struct(
523513
interfaces_dir = c.interfaces_dir,
524514
objects_dir = c.objects_dir,
525515
compile_flags = c.compile_flags,
526516
source_files = c.source_files,
527517
extra_source_files = c.extra_source_files,
528518
import_dirs = c.import_dirs,
529-
exposed_modules_file = exposed_modules_file,
530519
coverage_data = coverage_data,
531520
)
532521

haskell/private/haskell_impl.bzl

+13-4
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ load(
99
"empty_HaskellCcInfo",
1010
)
1111
load(":cc.bzl", "cc_interop_info")
12+
load(
13+
":private/actions/compile.bzl",
14+
"list_exposed_modules",
15+
)
1216
load(
1317
":private/actions/link.bzl",
1418
"link_binary",
@@ -337,9 +341,6 @@ def haskell_library_impl(ctx):
337341
dep_info,
338342
plugin_dep_info,
339343
srcs = srcs_files,
340-
ls_modules = ctx.executable._ls_modules,
341-
other_modules = other_modules,
342-
exposed_modules_reexports = exposed_modules_reexports,
343344
import_dir_map = import_dir_map,
344345
extra_srcs = depset(ctx.files.extra_srcs),
345346
user_compile_flags = ctx.attr.compiler_flags,
@@ -349,6 +350,14 @@ def haskell_library_impl(ctx):
349350
plugins = ctx.attr.plugins,
350351
)
351352

353+
exposed_modules_file = list_exposed_modules(
354+
hs,
355+
ls_modules = ctx.executable._ls_modules,
356+
other_modules = other_modules,
357+
exposed_modules_reexports = exposed_modules_reexports,
358+
interfaces_dir = c.interfaces_dir,
359+
)
360+
352361
c_p = None
353362

354363
if with_profiling:
@@ -424,7 +433,7 @@ def haskell_library_impl(ctx):
424433
c_p.interfaces_dir if c_p != None else None,
425434
static_library,
426435
dynamic_library,
427-
c.exposed_modules_file,
436+
exposed_modules_file,
428437
other_modules,
429438
my_pkg_id,
430439
static_library_prof = static_library_prof,

0 commit comments

Comments
 (0)