blob: ed724f5af1b530b9f83c5c2b9693d14d811b94b8 [file] [log] [blame]
Colin Crosse3fee342021-06-21 17:28:25 -07001// Copyright 2015 Google Inc. All rights reserved.
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package config
16
17type toolchainBionic struct {
Colin Crossfc3b0642022-09-01 11:02:15 -070018 toolchainBase
Colin Crosse3fee342021-06-21 17:28:25 -070019}
20
Colin Crossc8544682021-06-21 17:31:50 -070021var (
22 bionicDefaultSharedLibraries = []string{"libc", "libm", "libdl"}
Colin Crossd1a28132021-06-21 17:34:47 -070023
24 bionicCrtBeginStaticBinary, bionicCrtEndStaticBinary = []string{"crtbegin_static"}, []string{"crtend_android"}
25 bionicCrtBeginSharedBinary, bionicCrtEndSharedBinary = []string{"crtbegin_dynamic"}, []string{"crtend_android"}
26 bionicCrtBeginSharedLibrary, bionicCrtEndSharedLibrary = []string{"crtbegin_so"}, []string{"crtend_so"}
Kalesh Singhf4ffe0a2024-01-29 13:01:51 -080027 bionicCrtPadSegmentSharedLibrary = []string{"crt_pad_segment"}
Colin Crossc8544682021-06-21 17:31:50 -070028)
29
Colin Crosse3fee342021-06-21 17:28:25 -070030func (toolchainBionic) Bionic() bool { return true }
Colin Crossc8544682021-06-21 17:31:50 -070031
32func (toolchainBionic) DefaultSharedLibraries() []string { return bionicDefaultSharedLibraries }
Colin Crossd1a28132021-06-21 17:34:47 -070033
Colin Crossfc3b0642022-09-01 11:02:15 -070034func (toolchainBionic) ShlibSuffix() string { return ".so" }
35
36func (toolchainBionic) ExecutableSuffix() string { return "" }
37
38func (toolchainBionic) AvailableLibraries() []string { return nil }
39
Kalesh Singhf4ffe0a2024-01-29 13:01:51 -080040func (toolchainBionic) CrtBeginStaticBinary() []string { return bionicCrtBeginStaticBinary }
41func (toolchainBionic) CrtBeginSharedBinary() []string { return bionicCrtBeginSharedBinary }
42func (toolchainBionic) CrtBeginSharedLibrary() []string { return bionicCrtBeginSharedLibrary }
43func (toolchainBionic) CrtEndStaticBinary() []string { return bionicCrtEndStaticBinary }
44func (toolchainBionic) CrtEndSharedBinary() []string { return bionicCrtEndSharedBinary }
45func (toolchainBionic) CrtEndSharedLibrary() []string { return bionicCrtEndSharedLibrary }
46func (toolchainBionic) CrtPadSegmentSharedLibrary() []string { return bionicCrtPadSegmentSharedLibrary }