You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1.0 KiB
36 lines
1.0 KiB
3 years ago
|
# Copyright (c) Facebook, Inc. and its affiliates.
|
||
|
#
|
||
|
# This source code is licensed under the MIT license found in the
|
||
|
# LICENSE file in the root directory of this source tree.
|
||
|
|
||
|
# additional arguments to pass to clang
|
||
|
OPT_ARGS?=-Os
|
||
|
CLANG_ARGS?=-g $(OPT_ARGS)
|
||
|
|
||
|
ROOT?=..
|
||
|
LIBCXXABI=$(ROOT)/vendor/llvm-dune/llvm-project/libcxxabi
|
||
|
|
||
|
llvm-config=$(shell opam var conf-llvm:config)
|
||
|
LLVM_BIN=$(shell ${llvm-config} --bindir)
|
||
|
LLVM_INCLUDE=$(shell ${llvm-config} --includedir)
|
||
|
LLVM_CFLAGS=$(shell ${llvm-config} --cflags)
|
||
|
LLVM_CXXFLAGS=$(shell ${llvm-config} --cxxflags)
|
||
|
|
||
|
default: cxxabi.bc lib_fuzzer_main.bc
|
||
|
|
||
|
cxxabi.bc : cxxabi.cpp
|
||
|
$(LLVM_BIN)/clang $(LLVM_CXXFLAGS) $(CLANG_ARGS) -D_LIBCXXABI_HAS_NO_THREADS -I$(LIBCXXABI)/include -I$(LIBCXXABI)/src -c -emit-llvm cxxabi.cpp
|
||
|
|
||
|
lib_fuzzer_main.bc : lib_fuzzer_main.c
|
||
|
$(LLVM_BIN)/clang $(LLVM_CFLAGS) $(CLANG_ARGS) -c -emit-llvm -o $@ $<
|
||
|
|
||
|
clean:
|
||
|
rm -f cxxabi.bc lib_fuzzer_main.bc
|
||
|
|
||
|
fmt:
|
||
|
clang-format -i *.h *.c *.cpp
|
||
|
|
||
|
# print any variable for Makefile debugging
|
||
|
print-%:
|
||
|
@printf '$*='; printf '$($*)'; printf '\n'
|