Skip to content

Commit b49cc73

Browse files
committed
Try --linker=gold on macos
1 parent ef0669f commit b49cc73

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

.github/workflows/ci.yml

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,15 @@ jobs:
4040
- os: ubuntu-latest
4141
EXE: vox
4242
PLATFORM: linux-x64
43+
FLAGS: -flto=full --defaultlib=phobos2-ldc-lto,druntime-ldc-lto
4344
- os: macos-13
4445
EXE: vox
4546
PLATFORM: macos-x64
47+
FLAGS: -L-arch -Lx86_64 -L-platform_version -Lmacos -L11.0.0 -L11.7
4648
- os: windows-latest
4749
EXE: vox.exe
4850
PLATFORM: windows-x64
51+
FLAGS: -flto=full --defaultlib=phobos2-ldc-lto,druntime-ldc-lto
4952
steps:
5053
- uses: actions/checkout@v4
5154
- uses: dlang-community/setup-dlang@v1
@@ -58,7 +61,7 @@ jobs:
5861
ldc2 -d-version=test -m64 -release -fprofile-instr-generate -i main.d -of=vox_instrumented.exe
5962
./vox_instrumented.exe
6063
ldc-profdata merge default.profraw -output vox.profdata
61-
ldc2 -m64 -O3 -mcpu=x86-64-v3 -release -boundscheck=off -enable-inlining -flto=full -linkonce-templates --defaultlib=phobos2-ldc-lto,druntime-ldc-lto -d-version=cli -fprofile-instr-use=vox.profdata -of=../bin/${{matrix.EXE}} -i main.d
64+
ldc2 -m64 -O3 -mcpu=x86-64-v3 -release -boundscheck=off -enable-inlining ${{matrix.FLAGS}} -d-version=cli -fprofile-instr-use=vox.profdata -of=../bin/${{matrix.EXE}} -i main.d
6265
cd ../bin
6366
7z a -mx9 vox-${{matrix.PLATFORM}}.zip ${{matrix.EXE}}
6467
- uses: actions/upload-artifact@v4
@@ -75,13 +78,16 @@ jobs:
7578
- os: ubuntu-latest
7679
EXE: vox
7780
PLATFORM: linux-x64
81+
FLAGS: -flto=full --defaultlib=phobos2-ldc-lto,druntime-ldc-lto
7882
- os: macos-13
7983
EXE: vox
8084
PLATFORM: macos-x64
85+
FLAGS: -L-arch -Lx86_64 -L-platform_version -Lmacos -L11.0.0 -L11.7
8186
- os: windows-latest
8287
EXE: vox.exe
8388
DBG_FILE: vox.pdb
8489
PLATFORM: windows-x64
90+
FLAGS: -flto=full --defaultlib=phobos2-ldc-lto,druntime-ldc-lto
8591
steps:
8692
- uses: actions/checkout@v4
8793
- uses: dlang-community/setup-dlang@v1
@@ -94,7 +100,7 @@ jobs:
94100
ldc2 -d-version=test -m64 -release -fprofile-instr-generate -i main.d -of=vox_instrumented.exe
95101
./vox_instrumented.exe
96102
ldc-profdata merge default.profraw -output vox.profdata
97-
ldc2 -m64 -O3 -mcpu=x86-64-v3 --d-debug -g -boundscheck=off -enable-inlining -flto=full -linkonce-templates --defaultlib=phobos2-ldc-lto,druntime-ldc-lto -d-version=cli -fprofile-instr-use=vox.profdata -of=../bin/${{matrix.EXE}} -i main.d
103+
ldc2 -m64 -O3 -mcpu=x86-64-v3 --d-debug -g -boundscheck=off -enable-inlining ${{matrix.FLAGS}} -d-version=cli -fprofile-instr-use=vox.profdata -of=../bin/${{matrix.EXE}} -i main.d
98104
cd ../bin
99105
7z a -mx9 vox-${{matrix.PLATFORM}}-dbg.zip ${{matrix.EXE}} ${{matrix.DBG_FILE}}
100106
- uses: actions/upload-artifact@v4
@@ -111,13 +117,16 @@ jobs:
111117
- os: ubuntu-latest
112118
DLL: libvox.so
113119
PLATFORM: linux-x64
120+
FLAGS: -flto=full --defaultlib=phobos2-ldc-lto,druntime-ldc-lto
114121
- os: macos-13
115122
DLL: libvox.dylib
116123
PLATFORM: macos-x64
124+
FLAGS: -L-arch -Lx86_64 -L-platform_version -Lmacos -L11.0.0 -L11.7
117125
- os: windows-latest
118126
DLL: libvox.dll
119127
LIB: libvox.lib
120128
PLATFORM: windows-x64
129+
FLAGS: -flto=full --defaultlib=phobos2-ldc-lto,druntime-ldc-lto
121130
steps:
122131
- uses: actions/checkout@v4
123132
- uses: dlang-community/setup-dlang@v1
@@ -127,7 +136,7 @@ jobs:
127136
run: |
128137
mkdir -p bin
129138
cd source
130-
ldc2 -m64 -shared -O3 -mcpu=x86-64-v3 -release -boundscheck=off -enable-inlining -flto=full -linkonce-templates --defaultlib=phobos2-ldc-lto,druntime-ldc-lto -fvisibility=hidden -link-defaultlib-shared=false -i c_api.d -of=../bin/${{matrix.DLL}}
139+
ldc2 -m64 -shared -O3 -mcpu=x86-64-v3 -release -boundscheck=off -enable-inlining ${{matrix.FLAGS}} -fvisibility=hidden -link-defaultlib-shared=false -i c_api.d -of=../bin/${{matrix.DLL}}
131140
cd ../bin
132141
7z a -mx9 libvox-${{matrix.PLATFORM}}.zip ${{matrix.DLL}} ${{matrix.LIB}}
133142
- uses: actions/upload-artifact@v4
@@ -144,14 +153,17 @@ jobs:
144153
- os: ubuntu-latest
145154
DLL: libvox.so
146155
PLATFORM: linux-x64
156+
FLAGS: -flto=full --defaultlib=phobos2-ldc-lto,druntime-ldc-lto
147157
- os: macos-13
148158
DLL: libvox.dylib
149159
PLATFORM: macos-x64
160+
FLAGS: -L-arch -Lx86_64 -L-platform_version -Lmacos -L11.0.0 -L11.7
150161
- os: windows-latest
151162
DLL: libvox.dll
152163
LIB: libvox.lib
153164
DBG_FILE: libvox.pdb
154165
PLATFORM: windows-x64
166+
FLAGS: -flto=full --defaultlib=phobos2-ldc-lto,druntime-ldc-lto
155167
steps:
156168
- uses: actions/checkout@v4
157169
- uses: dlang-community/setup-dlang@v1
@@ -161,7 +173,7 @@ jobs:
161173
run: |
162174
mkdir -p bin
163175
cd source
164-
ldc2 -m64 -shared -O3 -mcpu=x86-64-v3 --d-debug -g -boundscheck=off -enable-inlining -flto=full -linkonce-templates --defaultlib=phobos2-ldc-lto,druntime-ldc-lto -fvisibility=hidden -link-defaultlib-shared=false -i c_api.d -of=../bin/${{matrix.DLL}}
176+
ldc2 -m64 -shared -O3 -mcpu=x86-64-v3 --d-debug -g -boundscheck=off -enable-inlining ${{matrix.FLAGS}} -fvisibility=hidden -link-defaultlib-shared=false -i c_api.d -of=../bin/${{matrix.DLL}}
165177
cd ../bin
166178
7z a -mx9 libvox-${{matrix.PLATFORM}}-dbg.zip ${{matrix.DLL}} ${{matrix.LIB}} ${{matrix.DBG_FILE}}
167179
- uses: actions/upload-artifact@v4

0 commit comments

Comments
 (0)