link: don't run install_name_tool -change by default

This commit is contained in:
Li Jie
2025-03-13 19:55:48 +08:00
parent 02e3a6ae8b
commit eacb5bc6f8

View File

@@ -483,7 +483,7 @@ func linkMainPkg(ctx *context, pkg *packages.Package, pkgs []*aPackage, linkArgs
err = ctx.env.Clang().Exec(args...) err = ctx.env.Clang().Exec(args...)
check(err) check(err)
if runtime.GOOS == "darwin" { if IsRpathChangeEnabled() && runtime.GOOS == "darwin" {
dylibDeps := make([]string, 0, len(libs)) dylibDeps := make([]string, 0, len(libs))
for _, lib := range libs { for _, lib := range libs {
dylibDep := findDylibDep(app, lib) dylibDep := findDylibDep(app, lib)
@@ -746,6 +746,7 @@ const llgoDebug = "LLGO_DEBUG"
const llgoTrace = "LLGO_TRACE" const llgoTrace = "LLGO_TRACE"
const llgoOptimize = "LLGO_OPTIMIZE" const llgoOptimize = "LLGO_OPTIMIZE"
const llgoCheck = "LLGO_CHECK" const llgoCheck = "LLGO_CHECK"
const llgoRpathChange = "LLGO_RPATH_CHANGE"
func isEnvOn(env string, defVal bool) bool { func isEnvOn(env string, defVal bool) bool {
envVal := strings.ToLower(os.Getenv(env)) envVal := strings.ToLower(os.Getenv(env))
@@ -771,6 +772,10 @@ func IsCheckEnable() bool {
return isEnvOn(llgoCheck, false) return isEnvOn(llgoCheck, false)
} }
func IsRpathChangeEnabled() bool {
return isEnvOn(llgoRpathChange, false)
}
func ParseArgs(args []string, swflags map[string]bool) (flags, patterns []string, verbose bool) { func ParseArgs(args []string, swflags map[string]bool) (flags, patterns []string, verbose bool) {
n := len(args) n := len(args)
for i := 0; i < n; i++ { for i := 0; i < n; i++ {