1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-19 00:20:25 +02:00

Removed "Dynamic Library" target type, replaced by Build Kind

This commit is contained in:
Brian Fiete 2021-06-28 09:44:47 -07:00
parent 1c1cb1ac49
commit 7ae8599916
8 changed files with 163 additions and 98 deletions

View file

@ -8884,11 +8884,15 @@ namespace IDE
{
if (project.mGeneralOptions.mTargetType.IsBeefApplication)
targetType = .BeefApplication_StaticLib;
else if (project.mGeneralOptions.mTargetType == .BeefLib)
targetType = .BeefLib_Static;
}
else if (options.mBuildOptions.mBuildKind == .DynamicLib)
{
if (project.mGeneralOptions.mTargetType.IsBeefApplication)
targetType = .BeefApplication_DynamicLib;
else if (project.mGeneralOptions.mTargetType == .BeefLib)
targetType = .BeefLib_Dynamic;
}
}
@ -9418,48 +9422,28 @@ namespace IDE
let platformType = Workspace.PlatformType.GetFromName(platformName);
if (options.mBuildOptions.mBuildKind.IsApplicationLib)
switch (platformType)
{
switch (platformType)
{
case .Windows:
case .Windows:
if (options.mBuildOptions.mBuildKind == .DynamicLib)
newString.Append(".dll");
else if ((options.mBuildOptions.mBuildKind == .StaticLib) || (project.mGeneralOptions.mTargetType == .BeefLib))
newString.Append(".lib");
case .iOS:
if (options.mBuildOptions.mBuildKind == .DynamicLib)
newString.Append(".dylib");
else
newString.Append(".a");
case .Wasm:
if (!newString.Contains('.'))
newString.Append(".html");
default:
if (options.mBuildOptions.mBuildKind == .DynamicLib)
newString.Append(".so");
else
newString.Append(".a");
}
}
else
{
switch (platformType)
{
case .Windows:
if (project.mGeneralOptions.mTargetType == .BeefLib)
newString.Append(".lib");
else if (project.mGeneralOptions.mTargetType == .BeefDynLib)
newString.Append(".dll");
else if (project.mGeneralOptions.mTargetType != .CustomBuild)
newString.Append(".exe");
case .macOS:
if (project.mGeneralOptions.mTargetType == .BeefDynLib)
newString.Append(".dylib");
case .Wasm:
if (!newString.Contains('.'))
newString.Append(".html");
default:
if (project.mGeneralOptions.mTargetType == .BeefDynLib)
newString.Append(".so");
}
else if (project.mGeneralOptions.mTargetType != .CustomBuild)
newString.Append(".exe");
case .macOS:
if (options.mBuildOptions.mBuildKind == .DynamicLib)
newString.Append(".dylib");
else if (options.mBuildOptions.mBuildKind == .StaticLib)
newString.Append(".a");
case .Wasm:
if (!newString.Contains('.'))
newString.Append(".html");
default:
if (options.mBuildOptions.mBuildKind == .DynamicLib)
newString.Append(".so");
else if (options.mBuildOptions.mBuildKind == .StaticLib)
newString.Append(".a");
}
}
IDEUtils.FixFilePath(newString);
@ -9480,9 +9464,11 @@ namespace IDE
case "LinkFlags":
newString = scope:ReplaceBlock String();
bool isBeefDynLib = (project.mGeneralOptions.mTargetType == .BeefLib) && (options.mBuildOptions.mBuildKind == .DynamicLib);
if ((project.mGeneralOptions.mTargetType == .BeefConsoleApplication) ||
(project.mGeneralOptions.mTargetType == .BeefGUIApplication) ||
(project.mGeneralOptions.mTargetType == .BeefDynLib) ||
(isBeefDynLib) ||
(options.mBuildOptions.mBuildKind == .Test))
{
let platformType = Workspace.PlatformType.GetFromName(platformName);