• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1package cc
2
3import (
4	"github.com/google/blueprint"
5
6	"android/soong/android"
7)
8
9type LinkableInterface interface {
10	Module() android.Module
11	CcLibrary() bool
12	CcLibraryInterface() bool
13
14	OutputFile() android.OptionalPath
15
16	IncludeDirs() android.Paths
17	SetDepsInLinkOrder([]android.Path)
18	GetDepsInLinkOrder() []android.Path
19
20	HasStaticVariant() bool
21	GetStaticVariant() LinkableInterface
22
23	NonCcVariants() bool
24
25	StubsVersions() []string
26	BuildStubs() bool
27	SetBuildStubs()
28	SetStubsVersions(string)
29	StubsVersion() string
30	HasStubsVariants() bool
31	SelectedStl() string
32	ApiLevel() string
33
34	BuildStaticVariant() bool
35	BuildSharedVariant() bool
36	SetStatic()
37	SetShared()
38	Static() bool
39	Shared() bool
40	Toc() android.OptionalPath
41
42	Host() bool
43
44	InRamdisk() bool
45	OnlyInRamdisk() bool
46
47	InRecovery() bool
48	OnlyInRecovery() bool
49
50	UseSdk() bool
51	UseVndk() bool
52	MustUseVendorVariant() bool
53	IsVndk() bool
54	HasVendorVariant() bool
55
56	SdkVersion() string
57	AlwaysSdk() bool
58
59	ToolchainLibrary() bool
60	NdkPrebuiltStl() bool
61	StubDecorator() bool
62}
63
64type DependencyTag struct {
65	blueprint.BaseDependencyTag
66	Name    string
67	Library bool
68	Shared  bool
69
70	ReexportFlags bool
71
72	ExplicitlyVersioned bool
73
74	FromStatic bool
75}
76
77var (
78	SharedDepTag = DependencyTag{Name: "shared", Library: true, Shared: true}
79	StaticDepTag = DependencyTag{Name: "static", Library: true}
80
81	// Same as SharedDepTag, but from a static lib
82	SharedFromStaticDepTag = DependencyTag{Name: "shared from static", Library: true, Shared: true, FromStatic: true}
83
84	CrtBeginDepTag = DependencyTag{Name: "crtbegin"}
85	CrtEndDepTag   = DependencyTag{Name: "crtend"}
86)
87