Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple files with the same name exists #849

Open
Detailscool opened this issue Mar 9, 2024 · 1 comment
Open

Multiple files with the same name exists #849

Detailscool opened this issue Mar 9, 2024 · 1 comment

Comments

@Detailscool
Copy link

Detailscool commented Mar 9, 2024

/Users/aaa/bbb/IntegrationTests/DevelopmentPods/FFmpeg/BUILD.bazel:36:16: in apple_framework_packaging rule //IntegrationTests/DevelopmentPods/FFmpeg:FFmpeg_ios:
Traceback (most recent call last):
File "/Users/aaa/bbb/bazel-output-base/rules_xcodeproj.noindex/build_output_base/external/build_bazel_rules_ios/rules/framework.bzl", line 995, column 43, in _apple_framework_packaging_impl
framework_files = _get_framework_files(ctx, deps)
File "/Users/aaa/bbb/bazel-output-base/rules_xcodeproj.noindex/build_output_base/external/build_bazel_rules_ios/rules/framework.bzl", line 441, column 45, in _get_framework_files
headers_out = _framework_packaging_multi(ctx, "header", headers_in, headers_out, framework_manifest)
File "/Users/aaa/bbb/bazel-output-base/rules_xcodeproj.noindex/build_output_base/external/build_bazel_rules_ios/rules/framework.bzl", line 240, column 45, in _framework_packaging_multi
_framework_packaging_symlink_headers(ctx, inputs, outputs)
File "/Users/aaa/bbb/bazel-output-base/rules_xcodeproj.noindex/build_output_base/external/build_bazel_rules_ios/rules/framework.bzl", line 200, column 17, in _framework_packaging_symlink_headers
fail("""
Error in fail:
[Error] Multiple files with the same name exists.

See below for the list of paths found for each basename:

{"log.h": ("IntegrationTests/DevelopmentPods/FFmpeg/FFmpeg/FFmpeg/include/librtmp/log.h", "IntegrationTests/DevelopmentPods/FFmpeg/FFmpeg/FFmpeg/include/libavutil/log.h"), "version.h": ("IntegrationTests/DevelopmentPods/FFmpeg/FFmpeg/FFmpeg/include/libavformat/version.h", "IntegrationTests/DevelopmentPods/FFmpeg/FFmpeg/FFmpeg/include/libswresample/version.h")}

how to handle same files like FFmpeg, modify .h's name makes no sense

@lumpidu
Copy link

lumpidu commented Jun 6, 2024

Yes, stumbled upon the same problem. Looking at the source code of rules/framework.bzl, it seems the framework rule cannot handle hierarchically organized header files. It assumes, that all header files of a framework are a flat structure. This is nothing that Apple xcodebuild requires.

Actually this is a real bug, as header hierarchies must stay intact.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants