Skip to content

Build failure on macOS due to "urlapi.h" #8112

@jmillikin-stripe

Description

@jmillikin-stripe

Building Envoy at current HEAD (678bf8c) on macOS fails with an error in cURL, trying include some header:

-- Build files have been written to: /var/folders/bd/0cbzdsgs2lq1dtg56xn8c07c0000gn/T/tmp.CrEs6yMT
[1/138] Building C object lib/CMakeFiles/libcurl.dir/telnet.c.o
[2/138] Building C object lib/CMakeFiles/libcurl.dir/security.c.o
[3/138] Building C object lib/CMakeFiles/libcurl.dir/curl_fnmatch.c.o
[4/138] Building C object lib/CMakeFiles/libcurl.dir/transfer.c.o
FAILED: lib/CMakeFiles/libcurl.dir/transfer.c.o 
/var/tmp/_bazel_jmillikin/df6d9e9870af11598b93741d67d15d4c/sandbox/darwin-sandbox/1178/execroot/envoy/external/local_config_cc/wrapped_clang -DBUILDING_LIBCURL -DHAVE_CONFIG_H -I/var/tmp/_bazel_jmillikin/df6d9e9870af11598b93741d67d15d4c/sandbox/darwin-sandbox/1178/execroot/envoy/external/com_github_curl/include -Ilib/../include -I/var/tmp/_bazel_jmillikin/df6d9e9870af11598b93741d67d15d4c/sandbox/darwin-sandbox/1178/execroot/envoy/external/com_github_curl/lib/.. -I/var/tmp/_bazel_jmillikin/df6d9e9870af11598b93741d67d15d4c/sandbox/darwin-sandbox/1178/execroot/envoy/external/com_github_curl/lib/../include -Ilib/.. -I/var/tmp/_bazel_jmillikin/df6d9e9870af11598b93741d67d15d4c/sandbox/darwin-sandbox/1178/execroot/envoy/external/com_github_curl/lib -Ilib -D_FORTIFY_SOURCE=1 -fstack-protector -fcolor-diagnostics -Wall -Wthread-safety -Wself-assign -fno-omit-frame-pointer -O0 -DDEBUG -isysroot __BAZEL_XCODE_SDKROOT__ -F__BAZEL_XCODE_SDKROOT__/System/Library/Frameworks -F__BAZEL_XCODE_DEVELOPER_DIR__/Platforms/MacOSX.platform/Developer/Library/Frameworks -mmacosx-version-min=10.14 -no-canonical-prefixes -Wno-builtin-macro-redefined -D__DATE__="redacted" -D__TIMESTAMP__="redacted" -D__TIME__="redacted" -O2 -g -DNDEBUG -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -MD -MT lib/CMakeFiles/libcurl.dir/transfer.c.o -MF lib/CMakeFiles/libcurl.dir/transfer.c.o.d -o lib/CMakeFiles/libcurl.dir/transfer.c.o   -c /var/tmp/_bazel_jmillikin/df6d9e9870af11598b93741d67d15d4c/sandbox/darwin-sandbox/1178/execroot/envoy/external/com_github_curl/lib/transfer.c
In file included from /var/tmp/_bazel_jmillikin/df6d9e9870af11598b93741d67d15d4c/sandbox/darwin-sandbox/1178/execroot/envoy/external/com_github_curl/lib/transfer.c:23:
In file included from /var/tmp/_bazel_jmillikin/df6d9e9870af11598b93741d67d15d4c/sandbox/darwin-sandbox/1178/execroot/envoy/external/com_github_curl/lib/curl_setup.h:145:
/var/tmp/_bazel_jmillikin/df6d9e9870af11598b93741d67d15d4c/sandbox/darwin-sandbox/1178/execroot/envoy/external/com_github_curl/include/curl/curl.h:2852:10: fatal error: 'urlapi.h' file not found
#include "urlapi.h"
         ^~~~~~~~~~
1 error generated.

This file does exist at com_github_curl/include/curl/urlapi.h so it's probably some weird -iquote assumption baked in, but not satisfied by how rules_foreign_cc is invoking cmake.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions