targets supports code-model, target-abi, relocation-model
This commit is contained in:
@@ -20,6 +20,11 @@ type Config struct {
|
||||
LinkerScript string `json:"linkerscript"`
|
||||
CFlags []string `json:"cflags"`
|
||||
LDFlags []string `json:"ldflags"`
|
||||
|
||||
// Code generation configuration
|
||||
CodeModel string `json:"code-model"`
|
||||
TargetABI string `json:"target-abi"`
|
||||
RelocationModel string `json:"relocation-model"`
|
||||
}
|
||||
|
||||
// RawConfig represents the raw JSON configuration before inheritance resolution
|
||||
|
||||
@@ -137,6 +137,18 @@ func (l *Loader) mergeConfig(dst, src *Config) {
|
||||
if src.Linker != "" {
|
||||
dst.Linker = src.Linker
|
||||
}
|
||||
if src.LinkerScript != "" {
|
||||
dst.LinkerScript = src.LinkerScript
|
||||
}
|
||||
if src.CodeModel != "" {
|
||||
dst.CodeModel = src.CodeModel
|
||||
}
|
||||
if src.TargetABI != "" {
|
||||
dst.TargetABI = src.TargetABI
|
||||
}
|
||||
if src.RelocationModel != "" {
|
||||
dst.RelocationModel = src.RelocationModel
|
||||
}
|
||||
|
||||
// Merge slices (append, don't replace)
|
||||
if len(src.BuildTags) > 0 {
|
||||
@@ -148,9 +160,6 @@ func (l *Loader) mergeConfig(dst, src *Config) {
|
||||
if len(src.LDFlags) > 0 {
|
||||
dst.LDFlags = append(dst.LDFlags, src.LDFlags...)
|
||||
}
|
||||
if src.LinkerScript != "" {
|
||||
dst.LinkerScript = src.LinkerScript
|
||||
}
|
||||
}
|
||||
|
||||
// GetTargetsDir returns the targets directory path
|
||||
|
||||
Reference in New Issue
Block a user