diff --git a/go/private/actions/archive.bzl b/go/private/actions/archive.bzl index c518501da..023546f56 100644 --- a/go/private/actions/archive.bzl +++ b/go/private/actions/archive.bzl @@ -39,7 +39,7 @@ load( "cgo_configure", ) -def emit_archive(go, source = None, _recompile_suffix = "", recompile_internal_deps = None): +def emit_archive(go, source = None, _recompile_suffix = "", recompile_internal_deps = None, is_external_pkg = False): """See go/toolchains.rst#archive for full documentation.""" if source == None: @@ -122,6 +122,7 @@ def emit_archive(go, source = None, _recompile_suffix = "", recompile_internal_d objcxxopts = cgo.objcxxopts, clinkopts = cgo.clinkopts, testfilter = testfilter, + is_external_pkg = is_external_pkg, ) else: cgo_deps = depset() @@ -141,6 +142,7 @@ def emit_archive(go, source = None, _recompile_suffix = "", recompile_internal_d cgo = False, testfilter = testfilter, recompile_internal_deps = recompile_internal_deps, + is_external_pkg = is_external_pkg, ) data = GoArchiveData( diff --git a/go/private/actions/compilepkg.bzl b/go/private/actions/compilepkg.bzl index 10fa6970a..815213b38 100644 --- a/go/private/actions/compilepkg.bzl +++ b/go/private/actions/compilepkg.bzl @@ -72,7 +72,8 @@ def emit_compilepkg( out_cgo_export_h = None, gc_goopts = [], testfilter = None, # TODO: remove when test action compiles packages - recompile_internal_deps = []): + recompile_internal_deps = [], + is_external_pkg = False): """Compiles a complete Go package.""" if sources == None: fail("sources is a required parameter") @@ -179,7 +180,7 @@ def emit_compilepkg( go.actions.run( inputs = inputs, outputs = outputs, - mnemonic = "GoCompilePkg", + mnemonic = "GoCompilePkgExternal" if is_external_pkg else "GoCompilePkg", executable = go.toolchain._builder, arguments = [args], env = go.env, diff --git a/go/private/rules/test.bzl b/go/private/rules/test.bzl index 554cd30c5..8da3632de 100644 --- a/go/private/rules/test.bzl +++ b/go/private/rules/test.bzl @@ -80,7 +80,7 @@ def _go_test_impl(ctx): x_defs = ctx.attr.x_defs, ), external_library, ctx.coverage_instrumented()) external_source, internal_archive = _recompile_external_deps(go, external_source, internal_archive, [t.label for t in ctx.attr.embed]) - external_archive = go.archive(go, external_source) + external_archive = go.archive(go, external_source, is_external_pkg = True) # now generate the main function repo_relative_rundir = ctx.attr.rundir or ctx.label.package or "."