Skip to content

[C++] Bundled AWS SDK for C++ can't be built with unity build #46843

@kou

Description

@kou

Describe the enhancement requested

https://github.com/apache/arrow-java/actions/runs/15720875685/job/44301402703#step:12:835

  [12/270] Building C object _deps/aws-c-common-build/CMakeFiles/aws-c-common.dir/Unity/unity_0_c.c.o
  FAILED: _deps/aws-c-common-build/CMakeFiles/aws-c-common.dir/Unity/unity_0_c.c.o 
  /usr/local/bin/ccache /usr/bin/cc -DARROW_HAVE_RUNTIME_AVX2 -DARROW_HAVE_RUNTIME_AVX512 -DARROW_HAVE_RUNTIME_BMI2 -DARROW_HAVE_RUNTIME_SSE4_2 -DARROW_HAVE_SSE4_2 -DARROW_WITH_TIMING_TESTS -DAWS_AFFINITY_METHOD=AWS_AFFINITY_METHOD_NONE -DAWS_PTHREAD_GETNAME_TAKES_3ARGS -DCJSON_HIDE_SYMBOLS -DHAVE_SYSCONF -DINTEL_NO_ITTNOTIFY_API -DUSE_SIMD_ENCODING -I/Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-src/source/external/libcbor -I/Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-src/include -I/Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-build/generated/include -Qunused-arguments -O3 -DNDEBUG -O2  -std=gnu99 -mmacosx-version-min=14.0 -fPIC -fvisibility=hidden -Wall -Wstrict-prototypes -pedantic -Wno-long-long -fPIC -Wgnu -Wno-gnu-zero-variadic-macro-arguments -MD -MT _deps/aws-c-common-build/CMakeFiles/aws-c-common.dir/Unity/unity_0_c.c.o -MF _deps/aws-c-common-build/CMakeFiles/aws-c-common.dir/Unity/unity_0_c.c.o.d -o _deps/aws-c-common-build/CMakeFiles/aws-c-common.dir/Unity/unity_0_c.c.o -c /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-build/CMakeFiles/aws-c-common.dir/Unity/unity_0_c.c
  In file included from /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-build/CMakeFiles/aws-c-common.dir/Unity/unity_0_c.c:7:
  /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-src/source/allocator_sba.c:128:13: error: conflicting types for 's_aligned_free'
  static void s_aligned_free(void *addr) {
              ^
  /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-src/source/allocator.c:65:13: note: previous definition is here
  static void s_aligned_free(struct aws_allocator *allocator, void *ptr) {
              ^
  In file included from /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-build/CMakeFiles/aws-c-common.dir/Unity/unity_0_c.c:7:
  /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-src/source/allocator_sba.c:192:32: error: too few arguments to function call, expected 2, have 1
              s_aligned_free(page);
              ~~~~~~~~~~~~~~     ^
  /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-src/source/allocator.c:65:13: note: 's_aligned_free' declared here
  static void s_aligned_free(struct aws_allocator *allocator, void *ptr) {
              ^
  In file included from /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-build/CMakeFiles/aws-c-common.dir/Unity/unity_0_c.c:7:
  /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-src/source/allocator_sba.c:198:32: error: too few arguments to function call, expected 2, have 1
              s_aligned_free(page);
              ~~~~~~~~~~~~~~     ^
  /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-src/source/allocator.c:65:13: note: 's_aligned_free' declared here
  static void s_aligned_free(struct aws_allocator *allocator, void *ptr) {
              ^
  In file included from /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-build/CMakeFiles/aws-c-common.dir/Unity/unity_0_c.c:7:
  /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-src/source/allocator_sba.c:373:28: error: too few arguments to function call, expected 2, have 1
          s_aligned_free(page);
          ~~~~~~~~~~~~~~     ^
  /Users/runner/work/arrow-java/arrow-java/build/cpp/_deps/aws-c-common-src/source/allocator.c:65:13: note: 's_aligned_free' declared here
  static void s_aligned_free(struct aws_allocator *allocator, void *ptr) {
              ^
  4 errors generated.

Component(s)

C++

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions