From 7ebf7320c9122cd6e20f79b01c8673030cf09c1f Mon Sep 17 00:00:00 2001 From: Denbeigh Stevens Date: Mon, 6 Apr 2026 20:21:06 +0000 Subject: [PATCH] plumb config srcs through to mix_compile --- private/mix_library.bzl | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/private/mix_library.bzl b/private/mix_library.bzl index 4cd4be0..74696aa 100644 --- a/private/mix_library.bzl +++ b/private/mix_library.bzl @@ -188,7 +188,7 @@ cp _output/{mix_env}/lib/{app_name}/ebin/*.beam _output/{mix_env}/lib/{app_name} ) inputs = depset( - direct = ctx.files.srcs + ctx.files.data + ctx.files.include + ctx.files.priv + erl_libs_files + [ctx.file.mix_config], + direct = ctx.files.srcs + ctx.files.config + ctx.files.data + ctx.files.include + ctx.files.priv + erl_libs_files + [ctx.file.mix_config], transitive = [ erlang_runfiles.files, elixir_runfiles.files, @@ -221,6 +221,9 @@ _mix_compile = rule( "srcs": attr.label_list( allow_files = [".ex", ".erl", ".xrl", ".hrl", ".app.src"], ), + "config": attr.label_list( + allow_files = [".ex", ".exs"], + ), "data": attr.label_list( allow_files = True, ), @@ -322,7 +325,7 @@ def _mix_library_info_impl(ctx): app_name = ctx.attr.app_name, # direct_deps = ctx.attr.deps, deps = all_deps, - srcs = ctx.attr.srcs, + srcs = ctx.attr.srcs + ctx.attr.config, # TODO: beam? beam = compile_files, # Priv files with preserved directory structure @@ -344,6 +347,9 @@ _mix_library_info = rule( allow_single_file = [".exs"], default = ":mix.exs", ), + "config": attr.label_list( + allow_files = [".ex", ".exs"], + ), "compile": attr.label(mandatory = True), "priv_target": attr.label(), "data": attr.label_list( @@ -376,6 +382,7 @@ def mix_library(name, app_name, priv = [], visibility = None, **kwargs): "env", "mix_config", "srcs", + "config", "data", "deps", "include", @@ -386,6 +393,7 @@ def mix_library(name, app_name, priv = [], visibility = None, **kwargs): info_kwargs = {k: v for k, v in kwargs.items() if k in ( "mix_env", "mix_config", + "config", "data", "deps", "srcs",