build.rs 4.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. // Copyright 2019-2021 Tauri Programme within The Commons Conservancy
  2. // SPDX-License-Identifier: Apache-2.0
  3. // SPDX-License-Identifier: MIT
  4. use cfg_aliases::cfg_aliases;
  5. fn main() {
  6. cfg_aliases! {
  7. custom_protocol: { feature = "custom-protocol" },
  8. dev: { not(feature = "custom-protocol") },
  9. api_all: { feature = "api-all" },
  10. // fs
  11. fs_all: { any(api_all, feature = "fs-all") },
  12. fs_read_text_file: { any(fs_all, feature = "fs-read-text-file") },
  13. fs_read_binary_file: { any(fs_all, feature = "fs-read-binary-file") },
  14. fs_write_file: { any(fs_all, feature = "fs-write-file") },
  15. fs_write_binary_file: { any(fs_all, feature = "fs-write-binary-file") },
  16. fs_read_dir: { any(fs_all, feature = "fs-read-dir") },
  17. fs_copy_file: { any(fs_all, feature = "fs-copy-file") },
  18. fs_create_dir: { any(fs_all, feature = "fs-create_dir") },
  19. fs_remove_dir: { any(fs_all, feature = "fs-remove-dir") },
  20. fs_remove_file: { any(fs_all, feature = "fs-remove-file") },
  21. fs_rename_file: { any(fs_all, feature = "fs-rename-file") },
  22. // window
  23. window_all: { any(api_all, feature = "window-all") },
  24. window_create: { any(window_all, feature = "window-create") },
  25. window_center: { any(window_all, feature = "window-center") },
  26. window_request_user_attention: { any(window_all, feature = "window-request-user-attention") },
  27. window_set_resizable: { any(window_all, feature = "window-set-resizable") },
  28. window_set_title: { any(window_all, feature = "window-set-title") },
  29. window_maximize: { any(window_all, feature = "window-maximize") },
  30. window_unmaximize: { any(window_all, feature = "window-unmaximize") },
  31. window_show: { any(window_all, feature = "window-show") },
  32. window_hide: { any(window_all, feature = "window-hide") },
  33. window_close: { any(window_all, feature = "window-close") },
  34. window_set_decorations: { any(window_all, feature = "window-set-decorations") },
  35. window_set_always_on_top: { any(window_all, feature = "window-set-always-on-top") },
  36. window_set_size: { any(window_all, feature = "window-set-size") },
  37. window_set_min_size: { any(window_all, feature = "window-set-min-size") },
  38. window_set_max_size: { any(window_all, feature = "window-set-max-size") },
  39. window_set_position: { any(window_all, feature = "window-set-position") },
  40. window_set_fullscreen: { any(window_all, feature = "window-set-fullscreen") },
  41. window_set_focus: { any(window_all, feature = "window-set-focus") },
  42. window_set_icon: { any(window_all, feature = "window-set-icon") },
  43. window_set_skip_taskbar: { any(window_all, feature = "window-set-skip-taskbar") },
  44. window_start_dragging: { any(window_all, feature = "window-start-dragging") },
  45. window_print: { any(window_all, feature = "window-print") },
  46. // shell
  47. shell_all: { any(api_all, feature = "shell-all") },
  48. shell_open: { any(shell_all, feature = "shell-open") },
  49. shell_execute: { any(shell_all, feature = "shell-execute") },
  50. // dialog
  51. dialog_all: { any(api_all, feature = "dialog-all") },
  52. dialog_open: { any(dialog_all, feature = "dialog-open") },
  53. dialog_save: { any(dialog_all, feature = "dialog-save") },
  54. dialog_message: { any(dialog_all, feature = "dialog-message") },
  55. dialog_ask: { any(dialog_all, feature = "dialog-ask") },
  56. dialog_confirm: { any(dialog_all, feature = "dialog-confirm") },
  57. // http
  58. http_all: { any(api_all, feature = "http-all") },
  59. http_request: { any(http_all, feature = "http-request") },
  60. // cli
  61. cli: { feature = "cli" },
  62. // notification
  63. notification_all: { any(api_all, feature = "notification-all") },
  64. // global shortcut
  65. global_shortcut_all: { any(api_all, feature = "global_shortcut-all") },
  66. // os
  67. os_all: { any(api_all, feature = "os-all") },
  68. // path
  69. path_all: { any(api_all, feature = "path-all") },
  70. // protocol
  71. protocol_all: { any(api_all, feature = "protocol-all") },
  72. protocol_asset: { any(protocol_all, feature = "protocol-asset") },
  73. // process
  74. process_all: { any(api_all, feature = "process-all") },
  75. process_relaunch: { any(protocol_all, feature = "process-relaunch") },
  76. process_exit: { any(protocol_all, feature = "process-exit") },
  77. // clipboard
  78. clipboard_all: { any(api_all, feature = "clipboard-all") },
  79. clipboard_write_text: { any(protocol_all, feature = "clipboard-write-text") },
  80. clipboard_read_text: { any(protocol_all, feature = "clipboard-read-text") },
  81. }
  82. }