diff --git a/README.md b/README.md index c561e08ca5..e1939dc312 100644 --- a/README.md +++ b/README.md @@ -21,11 +21,8 @@ repository. ## Quick setup -1. Copy the latest `MODULE.bazel` or `WORKSPACE` snippet from [the releases +Copy the latest `MODULE.bazel` or `WORKSPACE` snippet from [the releases page](https://github.com/bazelbuild/rules_apple/releases). -2. Copy the -[`platform_mappings`](https://github.com/bazelbuild/rules_apple/blob/master/platform_mappings) -file to the root of your repo ## Examples diff --git a/apple/internal/transition_support.bzl b/apple/internal/transition_support.bzl index 80b4235af8..0f1fb79c90 100644 --- a/apple/internal/transition_support.bzl +++ b/apple/internal/transition_support.bzl @@ -44,6 +44,29 @@ _PLATFORM_TYPE_TO_CPUS_FLAG = { "watchos": "//command_line_option:watchos_cpus", } +# Following map provides and ad-hoc platform mapping +# It's no longer needed once --apple_platforms is set everywhere and toolchain resolution enabled +_CPU_TO_PLATFORM = { + "darwin_x86_64": "@build_bazel_apple_support//platforms:macos_x86_64", + "darwin_arm64": "@build_bazel_apple_support//platforms:macos_arm64", + "darwin_arm64e": "@build_bazel_apple_support//platforms:darwin_arm64e", + "ios_x86_64": "@build_bazel_apple_support//platforms:ios_x86_64", + "ios_arm64": "@build_bazel_apple_support//platforms:ios_arm64", + "ios_sim_arm64": "@build_bazel_apple_support//platforms:ios_sim_arm64", + "ios_arm64e": "@build_bazel_apple_support//platforms:ios_arm64e", + "tvos_sim_arm64": "@build_bazel_apple_support//platforms:tvos_sim_arm64", + "tvos_arm64": "@build_bazel_apple_support//platforms:tvos_arm64", + "tvos_x86_64": "@build_bazel_apple_support//platforms:tvos_x86_64", + "visionos_arm64": "@build_bazel_apple_support//platforms:visionos_arm64", + "visionos_sim_arm64": "@build_bazel_apple_support//platforms:visionos_sim_arm64", + "visionos_x86_64": "@build_bazel_apple_support//platforms/simulator:visionos_x86_64", + "watchos_armv7k": "@build_bazel_apple_support//platforms:watchos_armv7k", + "watchos_arm64": "@build_bazel_apple_support//platforms:watchos_arm64", + "watchos_device_arm64": "@build_bazel_apple_support//platforms:watchos_arm64", + "watchos_arm64_32": "@build_bazel_apple_support//platforms:watchos_arm64_32", + "watchos_x86_64": "@build_bazel_apple_support//platforms:watchos_x86_64", +} + def _platform_specific_cpu_setting_name(platform_type): """Returns the name of a platform-specific CPU setting. @@ -217,7 +240,11 @@ def _command_line_options( Returns: A dictionary of `"//command_line_option"`s defined for the current target. """ - + cpu = _cpu_string( + environment_arch = environment_arch, + platform_type = platform_type, + settings = settings, + ) output_dictionary = { "//command_line_option:apple configuration distinguisher": "applebin_" + platform_type, "//command_line_option:apple_platform_type": platform_type, @@ -226,17 +253,13 @@ def _command_line_options( # architecture and environment, therefore we set `environment_arch` when it is available. "//command_line_option:apple_split_cpu": environment_arch if environment_arch else "", "//command_line_option:compiler": None, - "//command_line_option:cpu": _cpu_string( - environment_arch = environment_arch, - platform_type = platform_type, - settings = settings, - ), + "//command_line_option:cpu": cpu, "//command_line_option:crosstool_top": ( settings["//command_line_option:apple_crosstool_top"] ), "//command_line_option:fission": [], "//command_line_option:grte_top": None, - "//command_line_option:platforms": [apple_platforms[0]] if apple_platforms else [], + "//command_line_option:platforms": [apple_platforms[0]] if apple_platforms else [_CPU_TO_PLATFORM[cpu]], "//command_line_option:ios_minimum_os": _min_os_version_or_none( minimum_os_version = minimum_os_version, platform = "ios", diff --git a/platform_mappings b/platform_mappings deleted file mode 100644 index d31b6f1198..0000000000 --- a/platform_mappings +++ /dev/null @@ -1,120 +0,0 @@ -platforms: - @build_bazel_apple_support//platforms:macos_x86_64 - --cpu=darwin_x86_64 - - @build_bazel_apple_support//platforms:macos_arm64 - --cpu=darwin_arm64 - - @build_bazel_apple_support//platforms:darwin_arm64e - --cpu=darwin_arm64e - - @build_bazel_apple_support//platforms:ios_i386 - --cpu=ios_i386 - - @build_bazel_apple_support//platforms:ios_x86_64 - --cpu=ios_x86_64 - - @build_bazel_apple_support//platforms:ios_sim_arm64 - --cpu=ios_sim_arm64 - - @build_bazel_apple_support//platforms:ios_armv7 - --cpu=ios_armv7 - - @build_bazel_apple_support//platforms:ios_arm64 - --cpu=ios_arm64 - - @build_bazel_apple_support//platforms:ios_arm64e - --cpu=ios_arm64e - - @build_bazel_apple_support//platforms:tvos_x86_64 - --cpu=tvos_x86_64 - - @build_bazel_apple_support//platforms:tvos_sim_arm64 - --cpu=tvos_sim_arm64 - - @build_bazel_apple_support//platforms:tvos_arm64 - --cpu=tvos_arm64 - - @build_bazel_apple_support//platforms:watchos_i386 - --cpu=watchos_i386 - - @build_bazel_apple_support//platforms:watchos_x86_64 - --cpu=watchos_x86_64 - - @build_bazel_apple_support//platforms:watchos_arm64 - --cpu=watchos_arm64 - - @build_bazel_apple_support//platforms:watchos_armv7k - --cpu=watchos_armv7k - - @build_bazel_apple_support//platforms:watchos_arm64_32 - --cpu=watchos_arm64_32 - -flags: - --cpu=darwin_x86_64 - --apple_platform_type=macos - @build_bazel_apple_support//platforms:macos_x86_64 - - --cpu=darwin_arm64 - --apple_platform_type=macos - @build_bazel_apple_support//platforms:macos_arm64 - - --cpu=darwin_arm64e - --apple_platform_type=macos - @build_bazel_apple_support//platforms:darwin_arm64e - - --cpu=ios_i386 - --apple_platform_type=ios - @build_bazel_apple_support//platforms:ios_i386 - - --cpu=ios_x86_64 - --apple_platform_type=ios - @build_bazel_apple_support//platforms:ios_x86_64 - - --cpu=ios_sim_arm64 - --apple_platform_type=ios - @build_bazel_apple_support//platforms:ios_sim_arm64 - - --cpu=ios_armv7 - --apple_platform_type=ios - @build_bazel_apple_support//platforms:ios_armv7 - - --cpu=ios_arm64 - --apple_platform_type=ios - @build_bazel_apple_support//platforms:ios_arm64 - - --cpu=ios_arm64e - --apple_platform_type=ios - @build_bazel_apple_support//platforms:ios_arm64e - - --cpu=tvos_x86_64 - --apple_platform_type=tvos - @build_bazel_apple_support//platforms:tvos_x86_64 - - --cpu=tvos_sim_arm64 - --apple_platform_type=tvos - @build_bazel_apple_support//platforms:tvos_sim_arm64 - - --cpu=tvos_arm64 - --apple_platform_type=tvos - @build_bazel_apple_support//platforms:tvos_arm64 - - --cpu=watchos_i386 - --apple_platform_type=watchos - @build_bazel_apple_support//platforms:watchos_i386 - - --cpu=watchos_x86_64 - --apple_platform_type=watchos - @build_bazel_apple_support//platforms:watchos_x86_64 - - --cpu=watchos_arm64 - --apple_platform_type=watchos - @build_bazel_apple_support//platforms:watchos_arm64 - - --cpu=watchos_armv7k - --apple_platform_type=watchos - @build_bazel_apple_support//platforms:watchos_armv7k - - --cpu=watchos_arm64_32 - --apple_platform_type=watchos - @build_bazel_apple_support//platforms:watchos_arm64_32