1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-12 05:14:10 +02:00

Added 'not supported' build type for friendlier "won't built" marking

This commit is contained in:
Brian Fiete 2020-05-15 06:28:01 -07:00
parent c334761aaa
commit 2f33b193bd
3 changed files with 40 additions and 2 deletions

View file

@ -150,6 +150,11 @@ namespace IDE.Compiler
public BfPassInstance mPassInstance; public BfPassInstance mPassInstance;
} }
class DeletePassInstanceCommand : Command
{
public BfPassInstance mPassInstance;
}
class SetupProjectSettingsCommand : Command class SetupProjectSettingsCommand : Command
{ {
public Project mProject; public Project mProject;
@ -265,6 +270,13 @@ namespace IDE.Compiler
QueueCommand(command); QueueCommand(command);
} }
public void QueueDeletePassInstance(BfPassInstance passInstance)
{
DeletePassInstanceCommand command = new DeletePassInstanceCommand();
command.mPassInstance = passInstance;
QueueCommand(command);
}
public void QueueSetupProjectSettings(Project project) public void QueueSetupProjectSettings(Project project)
{ {
SetupProjectSettingsCommand command = new SetupProjectSettingsCommand(); SetupProjectSettingsCommand command = new SetupProjectSettingsCommand();
@ -338,6 +350,13 @@ namespace IDE.Compiler
{ {
var setPassInstanceCommand = (SetPassInstanceCommand)command; var setPassInstanceCommand = (SetPassInstanceCommand)command;
passInstance = setPassInstanceCommand.mPassInstance; passInstance = setPassInstanceCommand.mPassInstance;
}
else if (command is DeletePassInstanceCommand)
{
var deletePassInstanceCommand = (DeletePassInstanceCommand)command;
if (passInstance == deletePassInstanceCommand.mPassInstance)
passInstance = null;
delete deletePassInstanceCommand.mPassInstance;
} }
else if (passInstance == null) else if (passInstance == null)
{ {

View file

@ -8272,7 +8272,12 @@ namespace IDE
if (bfSystem != mBfResolveSystem) if (bfSystem != mBfResolveSystem)
{ {
if (options.mBuildOptions.mBuildKind == .Test) if (options.mBuildOptions.mBuildKind == .NotSupported)
{
OutputErrorLine("Project '{0}' is marked as 'not supported' for this platform/configuration", project.mProjectName);
success = false;
}
else if (options.mBuildOptions.mBuildKind == .Test)
{ {
if (workspaceOptions.mBuildKind == .Test) if (workspaceOptions.mBuildKind == .Test)
{ {
@ -8575,7 +8580,10 @@ namespace IDE
} }
if (!success) if (!success)
{
bfCompiler.QueueDeletePassInstance(passInstance);
return null; return null;
}
for (var project in mWorkspace.mProjects) for (var project in mWorkspace.mProjects)
{ {
@ -9824,8 +9832,18 @@ namespace IDE
canCompile = false; canCompile = false;
} }
//TODO:
canCompile = true; canCompile = true;
switch (platform)
{
case .iOS:
canCompile = hostPlatform == .macOS;
case .Android:
canCompile = true;
case .Unknown:
canCompile = true;
default:
canCompile = platform == hostPlatform;
}
if (!canCompile) if (!canCompile)
{ {

View file

@ -818,6 +818,7 @@ namespace IDE
case Test; case Test;
case StaticLib; case StaticLib;
case DynamicLib; case DynamicLib;
case NotSupported;
public bool IsApplicationLib public bool IsApplicationLib
{ {