add force-espclang to force using esp-clang for dev mode
This commit is contained in:
@@ -21,6 +21,7 @@ var AbiMode int
|
|||||||
var CheckLinkArgs bool
|
var CheckLinkArgs bool
|
||||||
var CheckLLFiles bool
|
var CheckLLFiles bool
|
||||||
var GenLLFiles bool
|
var GenLLFiles bool
|
||||||
|
var ForceEspClang bool
|
||||||
|
|
||||||
func AddBuildFlags(fs *flag.FlagSet) {
|
func AddBuildFlags(fs *flag.FlagSet) {
|
||||||
fs.BoolVar(&Verbose, "v", false, "Verbose mode")
|
fs.BoolVar(&Verbose, "v", false, "Verbose mode")
|
||||||
@@ -32,6 +33,7 @@ func AddBuildFlags(fs *flag.FlagSet) {
|
|||||||
fs.BoolVar(&CheckLinkArgs, "check-linkargs", false, "check link args valid")
|
fs.BoolVar(&CheckLinkArgs, "check-linkargs", false, "check link args valid")
|
||||||
fs.BoolVar(&CheckLLFiles, "check-llfiles", false, "check .ll files valid")
|
fs.BoolVar(&CheckLLFiles, "check-llfiles", false, "check .ll files valid")
|
||||||
fs.BoolVar(&GenLLFiles, "gen-llfiles", false, "generate .ll files for pkg export")
|
fs.BoolVar(&GenLLFiles, "gen-llfiles", false, "generate .ll files for pkg export")
|
||||||
|
fs.BoolVar(&ForceEspClang, "force-espclang", false, "force to use esp-clang")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -56,5 +58,6 @@ func UpdateConfig(conf *build.Config) {
|
|||||||
conf.CheckLinkArgs = CheckLinkArgs
|
conf.CheckLinkArgs = CheckLinkArgs
|
||||||
conf.CheckLLFiles = CheckLLFiles
|
conf.CheckLLFiles = CheckLLFiles
|
||||||
conf.GenLL = GenLLFiles
|
conf.GenLL = GenLLFiles
|
||||||
|
conf.ForceEspClang = ForceEspClang
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -86,6 +86,7 @@ type Config struct {
|
|||||||
GenLL bool // generate pkg .ll files
|
GenLL bool // generate pkg .ll files
|
||||||
CheckLLFiles bool // check .ll files valid
|
CheckLLFiles bool // check .ll files valid
|
||||||
CheckLinkArgs bool // check linkargs valid
|
CheckLinkArgs bool // check linkargs valid
|
||||||
|
ForceEspClang bool // force to use esp-clang
|
||||||
Tags string
|
Tags string
|
||||||
GlobalNames map[string][]string // pkg => names
|
GlobalNames map[string][]string // pkg => names
|
||||||
GlobalDatas map[string]string // pkg.name => data
|
GlobalDatas map[string]string // pkg.name => data
|
||||||
@@ -159,7 +160,7 @@ func Do(args []string, conf *Config) ([]Package, error) {
|
|||||||
conf.Goarch = runtime.GOARCH
|
conf.Goarch = runtime.GOARCH
|
||||||
}
|
}
|
||||||
// Handle crosscompile configuration first to set correct GOOS/GOARCH
|
// Handle crosscompile configuration first to set correct GOOS/GOARCH
|
||||||
forceEspClang := conf.Target != ""
|
forceEspClang := conf.ForceEspClang || conf.Target != ""
|
||||||
export, err := crosscompile.Use(conf.Goos, conf.Goarch, conf.Target, IsWasiThreadsEnabled(), forceEspClang)
|
export, err := crosscompile.Use(conf.Goos, conf.Goarch, conf.Target, IsWasiThreadsEnabled(), forceEspClang)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("failed to setup crosscompile: %w", err)
|
return nil, fmt.Errorf("failed to setup crosscompile: %w", err)
|
||||||
|
|||||||
Reference in New Issue
Block a user