Merge pull request #1023 from cpunion/toggle-rpath-change

link: don't run install_name_tool -change by default
This commit is contained in:
xushiwei
2025-03-13 23:15:47 +08:00
committed by GitHub

View File

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