Fix XCFramework umbrella header (#1674)

This commit is contained in:
Bart Louwers
2023-09-21 18:53:19 +02:00
committed by GitHub
parent fc73b16a73
commit dd74d1e84a
5 changed files with 34 additions and 28 deletions

View File

@@ -26,6 +26,7 @@ jobs:
- id: skip_check
uses: fkirc/skip-duplicate-actions@v5
with:
do_not_skip: '["workflow_dispatch", "push"]'
paths: |
["CMakeLists.txt",
"platform/ios/**",

View File

@@ -236,7 +236,7 @@ sh_binary(
"//platform/macos:macos_objc_srcs",
"//platform/macos:macos_objcpp_srcs",
"//platform/macos:macos_private_hdrs",
"//platform/macos:macos_public_hdrs",
"//platform/macos:macos_public_hdrs"
] + select({
"//:metal_renderer": [],
"//conditions:default": [

View File

@@ -5,21 +5,20 @@ load(
"@rules_xcodeproj//xcodeproj:defs.bzl",
"top_level_target",
"xcodeproj",
"xcode_schemes",
)
load("//platform/ios/bazel:macros.bzl", "info_plist")
load("//platform/ios/bazel:config.bzl", "BUILD_MODE", "BUNDLE_ID_PREFIX")
load(
"//platform/ios/bazel:files.bzl",
"MLN_IOS_PRIVATE_HEADERS",
"MLN_IOS_PUBLIC_HEADERS",
"MLN_IOS_PUBLIC_OBJCPP_SOURCE",
"MLN_IOS_PUBLIC_OBJCPP_OPENGL_SOURCE",
"MLN_IOS_PUBLIC_OBJCPP_METAL_SOURCE",
"MLN_IOS_PUBLIC_OBJCPP_OPENGL_SOURCE",
"MLN_IOS_PUBLIC_OBJCPP_SOURCE",
"MLN_IOS_PUBLIC_OBJC_SOURCE",
"MLN_IOS_SDK_HEADERS",
"MLN_PUBLIC_IOS_APP_SOPURCE",
)
load("//platform/ios/bazel:macros.bzl", "info_plist")
load("//platform/ios/bazel:provisioning.bzl", "configure_device_profiles")
configure_device_profiles()
@@ -30,9 +29,23 @@ filegroup(
visibility = ["//visibility:public"],
)
# this can be removed once the legacy renderer is removed completely for iOS
genrule(
name = "umbrella_header",
srcs = ["src/Mapbox.template.h"],
outs = ["src/Mapbox.h"],
cmd = select({
"//:metal_renderer": """
echo "#define MLN_RENDER_BACKEND_METAL 1" > $@;
cat $(location src/Mapbox.template.h) >> $@;
""",
"//conditions:default": "cat $(location src/Mapbox.template.h) >> $@"
}),
)
filegroup(
name = "ios_public_hdrs",
srcs = MLN_IOS_PUBLIC_HEADERS,
srcs = MLN_IOS_PUBLIC_HEADERS + [":umbrella_header"],
visibility = ["//visibility:public"],
)
@@ -81,6 +94,15 @@ info_plist(
base_info_plist = "app/Info.plist",
)
public_hdrs = [
":umbrella_header",
":ios_public_hdrs",
":ios_sdk_hdrs",
"//platform/darwin:darwin_objc_hdrs",
"//platform/darwin:darwin_objcpp_hdrs",
"//platform/darwin:generated_style_public_hdrs",
]
apple_static_xcframework(
name = "MapLibre.static",
bundle_name = "MapLibre",
@@ -92,16 +114,8 @@ apple_static_xcframework(
"device": ["arm64"],
},
minimum_os_versions = {"ios": "12.0"},
public_hdrs = [
":ios_public_hdrs",
":ios_sdk_hdrs",
"//platform/darwin:darwin_objc_hdrs",
"//platform/darwin:darwin_objcpp_hdrs",
] + select({
"//:metal_renderer": [],
"//conditions:default": [],
}),
umbrella_header = "src/Mapbox.h",
public_hdrs = public_hdrs,
umbrella_header = "umbrella_header",
visibility = ["//visibility:public"],
deps = ["//platform:ios-sdk"],
)
@@ -123,16 +137,8 @@ apple_xcframework(
"device": ["arm64"],
},
minimum_os_versions = {"ios": "12.0"},
public_hdrs = [
":ios_public_hdrs",
":ios_sdk_hdrs",
"//platform/darwin:darwin_objc_hdrs",
"//platform/darwin:darwin_objcpp_hdrs",
] + select({
"//:metal_renderer": [],
"//conditions:default": [],
}),
umbrella_header = "src/Mapbox.h",
public_hdrs = public_hdrs,
umbrella_header = "umbrella_header",
visibility = ["//visibility:public"],
deps = ["//platform:ios-sdk-dynamic"],
)
@@ -327,5 +333,5 @@ exports_files(
MLN_IOS_PUBLIC_OBJCPP_METAL_SOURCE +
MLN_IOS_PUBLIC_OBJCPP_OPENGL_SOURCE +
MLN_IOS_PUBLIC_OBJC_SOURCE +
MLN_PUBLIC_IOS_APP_SOPURCE
MLN_PUBLIC_IOS_APP_SOPURCE,
)

View File

@@ -25,7 +25,6 @@ MLN_IOS_PUBLIC_HEADERS = [
"src/MLNUserLocationHeadingArrowLayer.h",
"src/MLNUserLocationHeadingBeamLayer.h",
"src/MLNUserLocationHeadingIndicator.h",
"src/Mapbox.h",
"src/NSOrthography+MLNAdditions.h",
"src/UIColor+MLNAdditions.h",
"src/UIDevice+MLNAdditions.h",