Add --target support for Windows and Linux (#34660)

- Adds desktop projects to ApplicationPackageStore
- Plumbs target overrides through the desktop builds
diff --git a/packages/flutter_tools/lib/src/commands/build_windows.dart b/packages/flutter_tools/lib/src/commands/build_windows.dart
index 2f59aec..884d26f 100644
--- a/packages/flutter_tools/lib/src/commands/build_windows.dart
+++ b/packages/flutter_tools/lib/src/commands/build_windows.dart
@@ -16,6 +16,7 @@
 /// A command to build a windows desktop target through a build shell script.
 class BuildWindowsCommand extends BuildSubCommand {
   BuildWindowsCommand() {
+    usesTargetOption();
     argParser.addFlag('debug',
       negatable: false,
       help: 'Build a debug version of your app.',
@@ -59,7 +60,7 @@
     if (!flutterProject.windows.existsSync()) {
       throwToolExit('No Windows desktop project configured.');
     }
-    await buildWindows(flutterProject.windows, buildInfo);
+    await buildWindows(flutterProject.windows, buildInfo, target: targetFile);
     return null;
   }
 }