diff --git a/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CMakeBuildConfiguration.java b/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CMakeBuildConfiguration.java index 02c5b7a0bbb..c07e6ab86f4 100644 --- a/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CMakeBuildConfiguration.java +++ b/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CMakeBuildConfiguration.java @@ -33,9 +33,9 @@ import org.eclipse.cdt.cmake.core.ICMakeToolChainManager; import org.eclipse.cdt.cmake.core.ParsingConsoleOutputStream; import org.eclipse.cdt.cmake.core.internal.CommandDescriptorBuilder.CommandDescriptor; +import org.eclipse.cdt.cmake.core.internal.properties.CMakePropertiesBean; import org.eclipse.cdt.cmake.core.properties.CMakeGenerator; import org.eclipse.cdt.cmake.core.properties.ICMakeProperties; -import org.eclipse.cdt.cmake.core.properties.ICMakePropertiesController; import org.eclipse.cdt.cmake.core.properties.IOsOverrides; import org.eclipse.cdt.core.CommandLauncherManager; import org.eclipse.cdt.core.ConsoleOutputStream; @@ -84,9 +84,6 @@ public class CMakeBuildConfiguration extends CBuildConfiguration { private ICMakeToolChainFile toolChainFile; - // lazily instantiated.. - private CMakePropertiesController pc; - private Map infoPerResource; /** * whether one of the CMakeLists.txt files in the project has been modified and saved by the @@ -158,7 +155,7 @@ public IProject[] build(int kind, Map args, IConsole console, IP runCMake = true; } - ICMakeProperties cmakeProperties = getPropertiesController().load(); + ICMakeProperties cmakeProperties = new CMakePropertiesBean(); runCMake |= !Files.exists(buildDir.resolve("CMakeCache.txt")); //$NON-NLS-1$ final SimpleOsOverridesSelector overridesSelector = new SimpleOsOverridesSelector(); @@ -292,7 +289,7 @@ public void clean(IConsole console, IProgressMonitor monitor) throws CoreExcepti project.deleteMarkers(ICModelMarker.C_MODEL_PROBLEM_MARKER, false, IResource.DEPTH_INFINITE); - ICMakeProperties cmakeProperties = getPropertiesController().load(); + ICMakeProperties cmakeProperties = new CMakePropertiesBean(); CommandDescriptorBuilder cmdBuilder = new CommandDescriptorBuilder(cmakeProperties, new SimpleOsOverridesSelector()); CommandDescriptor command = cmdBuilder.makeCMakeBuildCommandline(getCleanCommand()); @@ -375,27 +372,10 @@ public FileVisitResult postVisitDirectory(Path dir, IOException exc) throws IOEx } } - /** Lazily creates the CMakePropertiesController for the project. - */ - private CMakePropertiesController getPropertiesController() { - if (pc == null) { - final Path filePath = Path.of(getProject().getFile(".settings/CDT-cmake.yaml").getLocationURI()); //$NON-NLS-1$ - pc = new CMakePropertiesController(filePath, () -> { - deleteCMakeCache = true; - // TODO delete cache file here for the case a user restarts the workbench - // prior to running a new build - }); - } - return pc; - } - // interface IAdaptable @Override @SuppressWarnings("unchecked") public T getAdapter(Class adapter) { - if (ICMakePropertiesController.class.equals(adapter)) { - return (T) pc; - } return super.getAdapter(adapter); } diff --git a/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CMakePropertiesController.java b/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CMakePropertiesController.java index 27560eec006..d24c87e3f16 100644 --- a/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CMakePropertiesController.java +++ b/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CMakePropertiesController.java @@ -41,6 +41,7 @@ * us to delete file CMakeCache.txt to avoid complaints by cmake. * @author Martin Weber */ +@Deprecated class CMakePropertiesController implements ICMakePropertiesController { private final Path storageFile; diff --git a/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CommandDescriptorBuilder.java b/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CommandDescriptorBuilder.java index 715ce1b8743..459f420623a 100644 --- a/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CommandDescriptorBuilder.java +++ b/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/internal/CommandDescriptorBuilder.java @@ -77,7 +77,6 @@ CommandDescriptor makeCMakeCommandline(Path toolChainFile) throws CoreException args.add(file); } } - CommandDescriptorBuilder.appendCMakeArguments(args, cmakeProperties.getExtraArguments()); /* at last, add our requirements that override extra args specified by the user... */ { diff --git a/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/properties/ICMakePropertiesController.java b/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/properties/ICMakePropertiesController.java index 09a6e717fee..9607e9ab01a 100644 --- a/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/properties/ICMakePropertiesController.java +++ b/cmake/org.eclipse.cdt.cmake.core/src/org/eclipse/cdt/cmake/core/properties/ICMakePropertiesController.java @@ -19,6 +19,7 @@ * @author Martin Weber * @since 1.4 */ +@Deprecated public interface ICMakePropertiesController { /** Creates a new {@code ICMakeProperties} object, initialized from the persistence store.