Merge pull request #612 from SoLongAndThanksForAllThePizza/flutter_desktop
Added flutter feature, fixed flutter compilation on windows and removed some auto generated files
This commit is contained in:
		
						commit
						b69080e409
					
				@ -22,7 +22,8 @@ cli = []
 | 
			
		||||
use_samplerate = ["samplerate"]
 | 
			
		||||
use_rubato = ["rubato"]
 | 
			
		||||
use_dasp = ["dasp"]
 | 
			
		||||
default = ["use_dasp"]
 | 
			
		||||
flutter = ["flutter_rust_bridge"]
 | 
			
		||||
default = ["use_dasp","flutter"]
 | 
			
		||||
 | 
			
		||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
 | 
			
		||||
 | 
			
		||||
@ -52,6 +53,7 @@ rpassword = "6.0"
 | 
			
		||||
base64 = "0.13"
 | 
			
		||||
sysinfo = "0.23"
 | 
			
		||||
num_cpus = "1.13"
 | 
			
		||||
flutter_rust_bridge = { version = "1.30.0", optional = true }
 | 
			
		||||
 | 
			
		||||
[target.'cfg(not(target_os = "linux"))'.dependencies]
 | 
			
		||||
reqwest = { version = "0.11", features = ["json", "rustls-tls"], default-features=false }
 | 
			
		||||
@ -99,7 +101,7 @@ async-process = "1.3"
 | 
			
		||||
android_logger = "0.11"
 | 
			
		||||
jni = "0.19.0"
 | 
			
		||||
 | 
			
		||||
[target.'cfg(any(target_os = "android", target_os = "ios", target_os = "linux"))'.dependencies]
 | 
			
		||||
[target.'cfg(any(target_os = "android", target_os = "ios"))'.dependencies]
 | 
			
		||||
flutter_rust_bridge = "1.30.0"
 | 
			
		||||
 | 
			
		||||
[workspace]
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										11
									
								
								flutter/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								flutter/.gitignore
									
									
									
									
										vendored
									
									
								
							@ -44,4 +44,13 @@ jniLibs
 | 
			
		||||
.vscode
 | 
			
		||||
 | 
			
		||||
# flutter rust bridge
 | 
			
		||||
lib/generated_bridge.dart
 | 
			
		||||
lib/generated_bridge.dart
 | 
			
		||||
 | 
			
		||||
# Flutter Generated Files
 | 
			
		||||
linux/flutter/generated_plugin_registrant.cc
 | 
			
		||||
linux/flutter/generated_plugin_registrant.h
 | 
			
		||||
linux/flutter/generated_plugins.cmake
 | 
			
		||||
macos/Flutter/GeneratedPluginRegistrant.swift
 | 
			
		||||
windows/flutter/generated_plugin_registrant.cc
 | 
			
		||||
windows/flutter/generated_plugin_registrant.h
 | 
			
		||||
windows/flutter/generated_plugins.cmake
 | 
			
		||||
@ -1,15 +0,0 @@
 | 
			
		||||
//
 | 
			
		||||
//  Generated file. Do not edit.
 | 
			
		||||
//
 | 
			
		||||
 | 
			
		||||
// clang-format off
 | 
			
		||||
 | 
			
		||||
#include "generated_plugin_registrant.h"
 | 
			
		||||
 | 
			
		||||
#include <url_launcher_linux/url_launcher_plugin.h>
 | 
			
		||||
 | 
			
		||||
void fl_register_plugins(FlPluginRegistry* registry) {
 | 
			
		||||
  g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar =
 | 
			
		||||
      fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin");
 | 
			
		||||
  url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar);
 | 
			
		||||
}
 | 
			
		||||
@ -1,15 +0,0 @@
 | 
			
		||||
//
 | 
			
		||||
//  Generated file. Do not edit.
 | 
			
		||||
//
 | 
			
		||||
 | 
			
		||||
// clang-format off
 | 
			
		||||
 | 
			
		||||
#ifndef GENERATED_PLUGIN_REGISTRANT_
 | 
			
		||||
#define GENERATED_PLUGIN_REGISTRANT_
 | 
			
		||||
 | 
			
		||||
#include <flutter_linux/flutter_linux.h>
 | 
			
		||||
 | 
			
		||||
// Registers Flutter plugins.
 | 
			
		||||
void fl_register_plugins(FlPluginRegistry* registry);
 | 
			
		||||
 | 
			
		||||
#endif  // GENERATED_PLUGIN_REGISTRANT_
 | 
			
		||||
@ -1,24 +0,0 @@
 | 
			
		||||
#
 | 
			
		||||
# Generated file, do not edit.
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
list(APPEND FLUTTER_PLUGIN_LIST
 | 
			
		||||
  url_launcher_linux
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
list(APPEND FLUTTER_FFI_PLUGIN_LIST
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
set(PLUGIN_BUNDLED_LIBRARIES)
 | 
			
		||||
 | 
			
		||||
foreach(plugin ${FLUTTER_PLUGIN_LIST})
 | 
			
		||||
  add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/linux plugins/${plugin})
 | 
			
		||||
  target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin)
 | 
			
		||||
  list(APPEND PLUGIN_BUNDLED_LIBRARIES $<TARGET_FILE:${plugin}_plugin>)
 | 
			
		||||
  list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries})
 | 
			
		||||
endforeach(plugin)
 | 
			
		||||
 | 
			
		||||
foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST})
 | 
			
		||||
  add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/linux plugins/${ffi_plugin})
 | 
			
		||||
  list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries})
 | 
			
		||||
endforeach(ffi_plugin)
 | 
			
		||||
@ -1,24 +0,0 @@
 | 
			
		||||
//
 | 
			
		||||
//  Generated file. Do not edit.
 | 
			
		||||
//
 | 
			
		||||
 | 
			
		||||
import FlutterMacOS
 | 
			
		||||
import Foundation
 | 
			
		||||
 | 
			
		||||
import firebase_analytics
 | 
			
		||||
import firebase_core
 | 
			
		||||
import package_info_plus_macos
 | 
			
		||||
import path_provider_macos
 | 
			
		||||
import shared_preferences_macos
 | 
			
		||||
import url_launcher_macos
 | 
			
		||||
import wakelock_macos
 | 
			
		||||
 | 
			
		||||
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
 | 
			
		||||
  FLTFirebaseAnalyticsPlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseAnalyticsPlugin"))
 | 
			
		||||
  FLTFirebaseCorePlugin.register(with: registry.registrar(forPlugin: "FLTFirebaseCorePlugin"))
 | 
			
		||||
  FLTPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlusPlugin"))
 | 
			
		||||
  PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
 | 
			
		||||
  SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))
 | 
			
		||||
  UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin"))
 | 
			
		||||
  WakelockMacosPlugin.register(with: registry.registrar(forPlugin: "WakelockMacosPlugin"))
 | 
			
		||||
}
 | 
			
		||||
@ -1,14 +0,0 @@
 | 
			
		||||
//
 | 
			
		||||
//  Generated file. Do not edit.
 | 
			
		||||
//
 | 
			
		||||
 | 
			
		||||
// clang-format off
 | 
			
		||||
 | 
			
		||||
#include "generated_plugin_registrant.h"
 | 
			
		||||
 | 
			
		||||
#include <url_launcher_windows/url_launcher_windows.h>
 | 
			
		||||
 | 
			
		||||
void RegisterPlugins(flutter::PluginRegistry* registry) {
 | 
			
		||||
  UrlLauncherWindowsRegisterWithRegistrar(
 | 
			
		||||
      registry->GetRegistrarForPlugin("UrlLauncherWindows"));
 | 
			
		||||
}
 | 
			
		||||
@ -1,15 +0,0 @@
 | 
			
		||||
//
 | 
			
		||||
//  Generated file. Do not edit.
 | 
			
		||||
//
 | 
			
		||||
 | 
			
		||||
// clang-format off
 | 
			
		||||
 | 
			
		||||
#ifndef GENERATED_PLUGIN_REGISTRANT_
 | 
			
		||||
#define GENERATED_PLUGIN_REGISTRANT_
 | 
			
		||||
 | 
			
		||||
#include <flutter/plugin_registry.h>
 | 
			
		||||
 | 
			
		||||
// Registers Flutter plugins.
 | 
			
		||||
void RegisterPlugins(flutter::PluginRegistry* registry);
 | 
			
		||||
 | 
			
		||||
#endif  // GENERATED_PLUGIN_REGISTRANT_
 | 
			
		||||
@ -1,24 +0,0 @@
 | 
			
		||||
#
 | 
			
		||||
# Generated file, do not edit.
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
list(APPEND FLUTTER_PLUGIN_LIST
 | 
			
		||||
  url_launcher_windows
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
list(APPEND FLUTTER_FFI_PLUGIN_LIST
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
set(PLUGIN_BUNDLED_LIBRARIES)
 | 
			
		||||
 | 
			
		||||
foreach(plugin ${FLUTTER_PLUGIN_LIST})
 | 
			
		||||
  add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/windows plugins/${plugin})
 | 
			
		||||
  target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin)
 | 
			
		||||
  list(APPEND PLUGIN_BUNDLED_LIBRARIES $<TARGET_FILE:${plugin}_plugin>)
 | 
			
		||||
  list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries})
 | 
			
		||||
endforeach(plugin)
 | 
			
		||||
 | 
			
		||||
foreach(ffi_plugin ${FLUTTER_FFI_PLUGIN_LIST})
 | 
			
		||||
  add_subdirectory(flutter/ephemeral/.plugin_symlinks/${ffi_plugin}/windows plugins/${ffi_plugin})
 | 
			
		||||
  list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${ffi_plugin}_bundled_libraries})
 | 
			
		||||
endforeach(ffi_plugin)
 | 
			
		||||
@ -16,6 +16,25 @@ add_executable(${BINARY_NAME} WIN32
 | 
			
		||||
  "runner.exe.manifest"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
# flutter_rust_bridge with Corrosion
 | 
			
		||||
find_package(Corrosion REQUIRED)
 | 
			
		||||
 | 
			
		||||
corrosion_import_crate(MANIFEST_PATH ../../../Cargo.toml
 | 
			
		||||
        # Equivalent to --all-features passed to cargo build
 | 
			
		||||
#        [ALL_FEATURES]
 | 
			
		||||
        # Equivalent to --no-default-features passed to cargo build
 | 
			
		||||
#        [NO_DEFAULT_FEATURES]
 | 
			
		||||
        # Disable linking of standard libraries (required for no_std crates).
 | 
			
		||||
#        [NO_STD]
 | 
			
		||||
        # Specify  cargo build profile (e.g. release or a custom profile)
 | 
			
		||||
#        [PROFILE <cargo-profile>]
 | 
			
		||||
        # Only import the specified crates from a workspace
 | 
			
		||||
#        [CRATES <crate1> ... <crateN>]
 | 
			
		||||
        # Enable the specified features
 | 
			
		||||
#        [FEATURES <feature1> ... <featureN>]
 | 
			
		||||
)
 | 
			
		||||
target_link_libraries(${BINARY_NAME} PRIVATE librustdesk)
 | 
			
		||||
 | 
			
		||||
# Apply the standard set of build settings. This can be removed for applications
 | 
			
		||||
# that need different build settings.
 | 
			
		||||
apply_standard_settings(${BINARY_NAME})
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										10
									
								
								src/lib.rs
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								src/lib.rs
									
									
									
									
									
								
							@ -21,12 +21,12 @@ pub mod ipc;
 | 
			
		||||
pub mod ui;
 | 
			
		||||
mod version;
 | 
			
		||||
pub use version::*;
 | 
			
		||||
// #[cfg(any(target_os = "android", target_os = "ios"))]
 | 
			
		||||
#[cfg(any(target_os = "android", target_os = "ios", feature = "flutter"))]
 | 
			
		||||
mod bridge_generated;
 | 
			
		||||
// #[cfg(any(target_os = "android", target_os = "ios"))]
 | 
			
		||||
pub mod mobile;
 | 
			
		||||
// #[cfg(any(target_os = "android", target_os = "ios"))]
 | 
			
		||||
pub mod mobile_ffi;
 | 
			
		||||
#[cfg(any(target_os = "android", target_os = "ios", feature = "flutter"))]
 | 
			
		||||
pub mod flutter;
 | 
			
		||||
#[cfg(any(target_os = "android", target_os = "ios", feature = "flutter"))]
 | 
			
		||||
pub mod flutter_ffi;
 | 
			
		||||
use common::*;
 | 
			
		||||
#[cfg(feature = "cli")]
 | 
			
		||||
pub mod cli;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user