google / sandboxed-api

Generate sandboxes for C/C++ libraries automatically
https://developers.google.com/sandboxed-api/
Apache License 2.0
1.65k stars 189 forks source link

Cannot use libtooling-based generator with CMake #132

Closed DemiMarie closed 2 years ago

DemiMarie commented 2 years ago
[user@sandboxed-api]~/sandboxed-api% ./build.sh  --configure
-- LLVM FileCheck Found: /usr/bin/FileCheck
-- git version: v1.6.0-47-g3b3de694 normalized to 1.6.0.47
-- Version: 1.6.0.47
-- Performing Test HAVE_THREAD_SAFETY_ATTRIBUTES -- failed to compile
-- Performing Test HAVE_STD_REGEX -- success
-- Performing Test HAVE_GNU_POSIX_REGEX -- failed to compile
-- Performing Test HAVE_POSIX_REGEX -- success
-- Performing Test HAVE_STEADY_CLOCK -- success
-- 
-- 3.15.8.0
CMake Warning at /usr/share/cmake/Modules/FindProtobuf.cmake:524 (message):
  Protobuf compiler version 3.14.0 doesn't match library version 3.15.8
Call Stack (most recent call first):
  cmake/SapiDeps.cmake:100 (find_package)
  CMakeLists.txt:66 (include)

-- Configuring done
-- Generating done
-- Build files have been written to: /home/user/sandboxed-api/build
[81/258] Linking CXX executable sandboxed_api/sandbox2/testcases/add_policy_on_syscalls
clang-13: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument]
[85/258] Linking CXX executable sandboxed_api/sandbox2/testcases/personality
clang-13: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument]
[88/258] Linking CXX executable sandboxed_api/sandbox2/testcases/malloc_system
clang-13: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument]
[89/258] Linking CXX executable sandboxed_api/sandbox2/testcases/minimal
clang-13: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument]
[91/258] Linking CXX executable sandboxed_api/sandbox2/testcases/policy
clang-13: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument]
[93/258] Linking CXX executable sandboxed_api/sandbox2/testcases/sleep
clang-13: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument]
[97/258] Linking CXX executable sandboxed_api/sandbox2/testcases/hostname
clang-13: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument]
[98/258] Linking CXX executable sandboxed_api/sandbox2/testcases/namespace
clang-13: warning: argument unused during compilation: '-pie' [-Wunused-command-line-argument]
[135/258] Building CXX object sandboxed_api/sandbox2/CMakeFiles/sandbox2_namespace.dir/namespace.cc.o
/home/user/sandboxed-api/sandboxed_api/sandbox2/namespace.cc:214:17: warning: stack frame size (76264) exceeds limit (40960) in function 'sandbox2::Namespace::InitializeNamespaces' [-Wframe-larger-than]
void Namespace::InitializeNamespaces(uid_t uid, gid_t gid, int32_t clone_flags,
                ^
1 warning generated.
[245/258] Generating interface
FAILED: sandboxed_api/examples/stringop/stringop-sapi.sapi.h sandboxed_api/examples/stringop/stringop-sapi.isystem /home/user/sandboxed-api/build/sandboxed_api/examples/stringop/stringop-sapi.sapi.h /home/user/sandboxed-api/build/sandboxed_api/examples/stringop/stringop-sapi.isystem 
cd /home/user/sandboxed-api/build/sandboxed_api/examples/stringop && sh -c "/usr/bin/clang++ -E -x c++ -v /dev/null 2>&1 |              awk '/> search starts here:/{f=1;next}/^End of search/{f=0}f{print \$1}'              > \"stringop-sapi.isystem\"" && /home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool -p /home/user/sandboxed-api/build/sandboxed_api/examples/stringop --sapi_name=Stringop --sapi_out=stringop-sapi.sapi.h --sapi_embed_dir=/home/user/sandboxed-api/build/sandboxed_api/examples/stringop --sapi_embed_name=stringop-sapi --sapi_functions=duplicate_string,reverse_string,pb_duplicate_string,pb_reverse_string,nop,violate,get_raw_c_string --sapi_ns= --sapi_isystem=stringop-sapi.isystem /home/user/sandboxed-api/sandboxed_api/examples/stringop/stringop.cc
Failure value returned from cantFail wrapped call
sapi_generator_tool: Unknown command line argument '--sapi_name=Stringop'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--p=Stringop'?
sapi_generator_tool: Unknown command line argument '--sapi_out=stringop-sapi.sapi.h'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--p=stringop-sapi.sapi.h'?
sapi_generator_tool: Unknown command line argument '--sapi_embed_dir=/home/user/sandboxed-api/build/sandboxed_api/examples/stringop'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--p=/home/user/sandboxed-api/build/sandboxed_api/examples/stringop'?
sapi_generator_tool: Unknown command line argument '--sapi_embed_name=stringop-sapi'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--extra-arg=stringop-sapi'?
sapi_generator_tool: Unknown command line argument '--sapi_functions=duplicate_string,reverse_string,pb_duplicate_string,pb_reverse_string,nop,violate,get_raw_c_string'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--print-options=duplicate_string,reverse_string,pb_duplicate_string,pb_reverse_string,nop,violate,get_raw_c_string'?
sapi_generator_tool: Unknown command line argument '--sapi_ns='.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '-p'?
sapi_generator_tool: Unknown command line argument '--sapi_isystem=stringop-sapi.isystem'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--p=stringop-sapi.isystem'?

UNREACHABLE executed at /usr/include/llvm/Support/Error.h:751!
[252/258] Generating interface
FAILED: sandboxed_api/examples/sum/sum-sapi.sapi.h sandboxed_api/examples/sum/sum-sapi.isystem /home/user/sandboxed-api/build/sandboxed_api/examples/sum/sum-sapi.sapi.h /home/user/sandboxed-api/build/sandboxed_api/examples/sum/sum-sapi.isystem 
cd /home/user/sandboxed-api/build/sandboxed_api/examples/sum && sh -c "/usr/bin/clang++ -E -x c++ -v /dev/null 2>&1 |              awk '/> search starts here:/{f=1;next}/^End of search/{f=0}f{print \$1}'              > \"sum-sapi.isystem\"" && /home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool -p /home/user/sandboxed-api/build/sandboxed_api/examples/sum --sapi_name=Sum --sapi_out=sum-sapi.sapi.h --sapi_embed_dir=/home/user/sandboxed-api/build/sandboxed_api/examples/sum --sapi_embed_name=sum-sapi --sapi_functions=sum,sums,addf,sub,mul,divs,muld,crash,violate,sumarr,testptr,read_int,sleep_for_sec,sumproto --sapi_ns= --sapi_isystem=sum-sapi.isystem /home/user/sandboxed-api/sandboxed_api/examples/sum/sum.c /home/user/sandboxed-api/sandboxed_api/examples/sum/sum_cpp.cc
Failure value returned from cantFail wrapped call
sapi_generator_tool: Unknown command line argument '--sapi_name=Sum'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--p=Sum'?
sapi_generator_tool: Unknown command line argument '--sapi_out=sum-sapi.sapi.h'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--p=sum-sapi.sapi.h'?
sapi_generator_tool: Unknown command line argument '--sapi_embed_dir=/home/user/sandboxed-api/build/sandboxed_api/examples/sum'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--p=/home/user/sandboxed-api/build/sandboxed_api/examples/sum'?
sapi_generator_tool: Unknown command line argument '--sapi_embed_name=sum-sapi'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--extra-arg=sum-sapi'?
sapi_generator_tool: Unknown command line argument '--sapi_functions=sum,sums,addf,sub,mul,divs,muld,crash,violate,sumarr,testptr,read_int,sleep_for_sec,sumproto'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--print-options=sum,sums,addf,sub,mul,divs,muld,crash,violate,sumarr,testptr,read_int,sleep_for_sec,sumproto'?
sapi_generator_tool: Unknown command line argument '--sapi_ns='.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '-p'?
sapi_generator_tool: Unknown command line argument '--sapi_isystem=sum-sapi.isystem'.  Try: '/home/user/sandboxed-api/build/sandboxed_api/tools/clang_generator/sapi_generator_tool --help'
sapi_generator_tool: Did you mean '--p=sum-sapi.isystem'?

UNREACHABLE executed at /usr/include/llvm/Support/Error.h:751!
ninja: build stopped: cannot make progress due to previous errors.
DemiMarie commented 2 years ago

Fixed