From e2281f4f9d892ba7fcd17ea21b3dc1b28e402401 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=96=E7=95=8C?= Date: Tue, 19 Aug 2025 21:34:15 +0800 Subject: [PATCH] Remove use of ldflags `-checklinkname=0` on darwin --- .github/workflows/build.yml | 19 +------------------ cmd/internal/build_libbox/main.go | 18 ++++++++++-------- 2 files changed, 11 insertions(+), 26 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 19643014..25114dff 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -149,7 +149,7 @@ jobs: TAGS='with_gvisor,with_quic,with_dhcp,with_wireguard,with_utls,with_acme,with_clash_api,with_tailscale' echo "BUILD_TAGS=${TAGS}" >> "${GITHUB_ENV}" - name: Build - if: matrix.os != 'darwin' && matrix.os != 'android' + if: matrix.os != 'android' run: | set -xeuo pipefail mkdir -p dist @@ -165,23 +165,6 @@ jobs: GOMIPS: ${{ matrix.gomips }} GOMIPS64: ${{ matrix.gomips }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Build darwin - if: matrix.os == 'darwin' - run: | - set -xeuo pipefail - mkdir -p dist - go build -v -trimpath -o dist/sing-box -tags "${BUILD_TAGS}" \ - -ldflags '-s -buildid= -X github.com/sagernet/sing-box/constant.Version=${{ needs.calculate_version.outputs.version }} -checklinkname=0' \ - ./cmd/sing-box - env: - CGO_ENABLED: "0" - GOOS: ${{ matrix.os }} - GOARCH: ${{ matrix.arch }} - GO386: ${{ matrix.go386 }} - GOARM: ${{ matrix.goarm }} - GOMIPS: ${{ matrix.gomips }} - GOMIPS64: ${{ matrix.gomips }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Build Android if: matrix.os == 'android' run: | diff --git a/cmd/internal/build_libbox/main.go b/cmd/internal/build_libbox/main.go index 71df1ae4..c7bdf6cf 100644 --- a/cmd/internal/build_libbox/main.go +++ b/cmd/internal/build_libbox/main.go @@ -59,8 +59,8 @@ func init() { if err != nil { currentTag = "unknown" } - sharedFlags = append(sharedFlags, "-ldflags", "-X github.com/sagernet/sing-box/constant.Version="+currentTag+" -s -w -buildid= -checklinkname=0") - debugFlags = append(debugFlags, "-ldflags", "-X github.com/sagernet/sing-box/constant.Version="+currentTag+"-s -w -buildid= -checklinkname=0") + sharedFlags = append(sharedFlags, "-ldflags", "-X github.com/sagernet/sing-box/constant.Version="+currentTag+" -s -w -buildid=") + debugFlags = append(debugFlags, "-ldflags", "-X github.com/sagernet/sing-box/constant.Version="+currentTag) sharedTags = append(sharedTags, "with_gvisor", "with_quic", "with_wireguard", "with_utls", "with_clash_api", "with_conntrack") darwinTags = append(darwinTags, "with_dhcp") @@ -106,17 +106,19 @@ func buildAndroid() { "-libname=box", } + if !debugEnabled { + sharedFlags[3] = sharedFlags[3] + " -checklinkname=0" + args = append(args, sharedFlags...) + } else { + debugFlags[1] = debugFlags[1] + " -checklinkname=0" + args = append(args, debugFlags...) + } + tags := append(sharedTags, memcTags...) if debugEnabled { tags = append(tags, debugTags...) } - if !debugEnabled { - args = append(args, sharedFlags...) - } else { - args = append(args, debugFlags...) - } - args = append(args, "-tags", strings.Join(tags, ",")) args = append(args, "./experimental/libbox")