diff options
author | 2021-12-06 14:56:25 -0500 | |
---|---|---|
committer | 2021-12-07 10:25:11 -0500 | |
commit | eb2d6d1ffdb884bc498fe2aa703b96ec845aa105 (patch) | |
tree | 8db2d3a04a937f4d68152626feaafd18881aff44 /cc/library_test.go | |
parent | b0d167cb43cbf093a701f7471b01df9ac2a60739 (diff) |
Propagate headers from bazel to mixed builds
Bug: 208503274
Test: mixed_libc.sh
Change-Id: I0be57f2a22f48be3a919208db4034d2bd03c18c0
Diffstat (limited to 'cc/library_test.go')
-rw-r--r-- | cc/library_test.go | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/cc/library_test.go b/cc/library_test.go index 7427b5974..d220e19f8 100644 --- a/cc/library_test.go +++ b/cc/library_test.go @@ -257,12 +257,14 @@ cc_library { CcObjectFiles: []string{"foo.o"}, Includes: []string{"include"}, SystemIncludes: []string{"system_include"}, + Headers: []string{"foo.h"}, RootDynamicLibraries: []string{"foo.so"}, }, "//foo/bar:bar_bp2build_cc_library_static": cquery.CcInfo{ CcObjectFiles: []string{"foo.o"}, Includes: []string{"include"}, SystemIncludes: []string{"system_include"}, + Headers: []string{"foo.h"}, RootStaticArchives: []string{"foo.a"}, }, }, @@ -278,18 +280,25 @@ cc_library { expectedOutputFiles := []string{"outputbase/execroot/__main__/foo.a"} android.AssertDeepEquals(t, "output files", expectedOutputFiles, outputFiles.Strings()) + flagExporter := ctx.ModuleProvider(staticFoo, FlagExporterInfoProvider).(FlagExporterInfo) + android.AssertPathsRelativeToTopEquals(t, "exported include dirs", []string{"outputbase/execroot/__main__/include"}, flagExporter.IncludeDirs) + android.AssertPathsRelativeToTopEquals(t, "exported system include dirs", []string{"outputbase/execroot/__main__/system_include"}, flagExporter.SystemIncludeDirs) + android.AssertPathsRelativeToTopEquals(t, "exported headers", []string{"outputbase/execroot/__main__/foo.h"}, flagExporter.GeneratedHeaders) + android.AssertPathsRelativeToTopEquals(t, "deps", []string{"outputbase/execroot/__main__/foo.h"}, flagExporter.Deps) + sharedFoo := ctx.ModuleForTests("foo", "android_arm_armv7-a-neon_shared").Module() outputFiles, err = sharedFoo.(android.OutputFileProducer).OutputFiles("") if err != nil { - t.Errorf("Unexpected error getting cc_object outputfiles %s", err) + t.Errorf("Unexpected error getting cc_library outputfiles %s", err) } expectedOutputFiles = []string{"outputbase/execroot/__main__/foo.so"} android.AssertDeepEquals(t, "output files", expectedOutputFiles, outputFiles.Strings()) - entries := android.AndroidMkEntriesForTest(t, ctx, sharedFoo)[0] - expectedFlags := []string{"-Ioutputbase/execroot/__main__/include", "-isystem outputbase/execroot/__main__/system_include"} - gotFlags := entries.EntryMap["LOCAL_EXPORT_CFLAGS"] - android.AssertDeepEquals(t, "androidmk exported cflags", expectedFlags, gotFlags) + flagExporter = ctx.ModuleProvider(sharedFoo, FlagExporterInfoProvider).(FlagExporterInfo) + android.AssertPathsRelativeToTopEquals(t, "exported include dirs", []string{"outputbase/execroot/__main__/include"}, flagExporter.IncludeDirs) + android.AssertPathsRelativeToTopEquals(t, "exported system include dirs", []string{"outputbase/execroot/__main__/system_include"}, flagExporter.SystemIncludeDirs) + android.AssertPathsRelativeToTopEquals(t, "exported headers", []string{"outputbase/execroot/__main__/foo.h"}, flagExporter.GeneratedHeaders) + android.AssertPathsRelativeToTopEquals(t, "deps", []string{"outputbase/execroot/__main__/foo.h"}, flagExporter.Deps) } func TestLibraryVersionScript(t *testing.T) { |