Skip to content

Commit 24925f9

Browse files
authored
Add macOS minimum version flags to build process
Fixes MonoGame/MonoGame#9013
1 parent 8a85a87 commit 24925f9

1 file changed

Lines changed: 10 additions & 8 deletions

File tree

build/BuildMacOSTask.cs

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ private static void BuildArm64(BuildContext context)
6868
{
6969
EnvironmentVariables = envVariables
7070
};
71+
var extraFlags = "--extra-cflags='-mmacosx-version-min=10.9' --extra-ldflags='-mmacosx-version-min=10.9'";
7172

7273
var shellCommandPath = "zsh";
7374

@@ -77,7 +78,7 @@ private static void BuildArm64(BuildContext context)
7778
context.StartProcess(shellCommandPath, processSettings);
7879
processSettings.Arguments = $"-c \"./autogen.sh\"";
7980
context.StartProcess(shellCommandPath, processSettings);
80-
processSettings.Arguments = $"-c \"./configure --disable-shared {prefixFlag} {hostFlag}\"";
81+
processSettings.Arguments = $"-c \"./configure --disable-shared {extraFlags} {prefixFlag} {hostFlag}\"";
8182
context.StartProcess(shellCommandPath, processSettings);
8283
processSettings.Arguments = $"-c \"make -j{Environment.ProcessorCount}\"";
8384
context.StartProcess(shellCommandPath, processSettings);
@@ -90,7 +91,7 @@ private static void BuildArm64(BuildContext context)
9091
context.StartProcess(shellCommandPath, processSettings);
9192
processSettings.Arguments = $"-c \"./autogen.sh\"";
9293
context.StartProcess(shellCommandPath, processSettings);
93-
processSettings.Arguments = $"-c \"./configure --disable-examples --disable-docs --disable-shared {prefixFlag} {hostFlag}\"";
94+
processSettings.Arguments = $"-c \"./configure --disable-examples --disable-docs --disable-shared {extraFlags} {prefixFlag} {hostFlag}\"";
9495
context.StartProcess(shellCommandPath, processSettings);
9596
processSettings.Arguments = $"-c \"make -j{Environment.ProcessorCount}\"";
9697
context.StartProcess(shellCommandPath, processSettings);
@@ -101,7 +102,7 @@ private static void BuildArm64(BuildContext context)
101102
processSettings.WorkingDirectory = "./lame";
102103
processSettings.Arguments = $"-c \"make distclean\"";
103104
context.StartProcess(shellCommandPath, processSettings);
104-
processSettings.Arguments = $"-c \"./configure --disable-frontend --disable-decoder --disable-shared {prefixFlag} {hostFlag}\"";
105+
processSettings.Arguments = $"-c \"./configure --disable-frontend --disable-decoder --disable-shared {extraFlags} {prefixFlag} {hostFlag}\"";
105106
context.StartProcess(shellCommandPath, processSettings);
106107
processSettings.Arguments = $"-c \"make -j{Environment.ProcessorCount}\"";
107108
context.StartProcess(shellCommandPath, processSettings);
@@ -112,7 +113,7 @@ private static void BuildArm64(BuildContext context)
112113
processSettings.WorkingDirectory = "./ffmpeg";
113114
processSettings.Arguments = $"-c \"make distclean\"";
114115
context.StartProcess(shellCommandPath, processSettings);
115-
processSettings.Arguments = $"-c \"./configure {binDirFlag} {configureFlags} {progsSuffixFlag}\"";
116+
processSettings.Arguments = $"-c \"./configure {binDirFlag} {configureFlags} {extraFlags} {progsSuffixFlag}\"";
116117
context.StartProcess(shellCommandPath, processSettings);
117118
processSettings.Arguments = $"-c \"make -j{Environment.ProcessorCount}\"";
118119
context.StartProcess(shellCommandPath, processSettings);
@@ -144,6 +145,7 @@ private static void BuildX64(BuildContext context)
144145
{
145146
EnvironmentVariables = envVariables
146147
};
148+
var extraFlags = "--extra-cflags='-mmacosx-version-min=10.9' --extra-ldflags='-mmacosx-version-min=10.9'";
147149

148150
var shellCommandPath = "zsh";
149151

@@ -153,7 +155,7 @@ private static void BuildX64(BuildContext context)
153155
context.StartProcess(shellCommandPath, processSettings);
154156
processSettings.Arguments = $"-c \"./autogen.sh\"";
155157
context.StartProcess(shellCommandPath, processSettings);
156-
processSettings.Arguments = $"-c \"./configure --disable-shared {prefixFlag} {hostFlag}\"";
158+
processSettings.Arguments = $"-c \"./configure --disable-shared {extraFlags} {prefixFlag} {hostFlag}\"";
157159
context.StartProcess(shellCommandPath, processSettings);
158160
processSettings.Arguments = $"-c \"make -j{Environment.ProcessorCount}\"";
159161
context.StartProcess(shellCommandPath, processSettings);
@@ -166,7 +168,7 @@ private static void BuildX64(BuildContext context)
166168
context.StartProcess(shellCommandPath, processSettings);
167169
processSettings.Arguments = $"-c \"./autogen.sh\"";
168170
context.StartProcess(shellCommandPath, processSettings);
169-
processSettings.Arguments = $"-c \"./configure --disable-examples --disable-docs --disable-shared {prefixFlag} {hostFlag}\"";
171+
processSettings.Arguments = $"-c \"./configure --disable-examples --disable-docs --disable-shared {extraFlags} {prefixFlag} {hostFlag}\"";
170172
context.StartProcess(shellCommandPath, processSettings);
171173
processSettings.Arguments = $"-c \"make -j{Environment.ProcessorCount}\"";
172174
context.StartProcess(shellCommandPath, processSettings);
@@ -177,7 +179,7 @@ private static void BuildX64(BuildContext context)
177179
processSettings.WorkingDirectory = "./lame";
178180
processSettings.Arguments = $"-c \"make distclean\"";
179181
context.StartProcess(shellCommandPath, processSettings);
180-
processSettings.Arguments = $"-c \"./configure --disable-frontend --disable-decoder --disable-shared {prefixFlag} {hostFlag}\"";
182+
processSettings.Arguments = $"-c \"./configure --disable-frontend --disable-decoder --disable-shared {extraFlags} {prefixFlag} {hostFlag}\"";
181183
context.StartProcess(shellCommandPath, processSettings);
182184
processSettings.Arguments = $"-c \"make -j{Environment.ProcessorCount}\"";
183185
context.StartProcess(shellCommandPath, processSettings);
@@ -188,7 +190,7 @@ private static void BuildX64(BuildContext context)
188190
processSettings.WorkingDirectory = "./ffmpeg";
189191
processSettings.Arguments = $"-c \"make distclean\"";
190192
context.StartProcess(shellCommandPath, processSettings);
191-
processSettings.Arguments = $"-c \"./configure {binDirFlag} {configureFlags} {progsSuffixFlag}\"";
193+
processSettings.Arguments = $"-c \"./configure {binDirFlag} {configureFlags} {extraFlags} {progsSuffixFlag}\"";
192194
context.StartProcess(shellCommandPath, processSettings);
193195
processSettings.Arguments = $"-c \"make -j{Environment.ProcessorCount}\"";
194196
context.StartProcess(shellCommandPath, processSettings);

0 commit comments

Comments
 (0)