gecko-dev/build/clang-plugin/Makefile.in
Joshua Cranmer f39213113a Bug 929200, part 1: Add MOZ_HEAP_ALLOCATOR to stack-only/non-heap analyses, r=Waldo.
--HG--
extra : rebase_source : 1ea94cf7a8ab7207d238c65877001549f3f828be
2013-12-06 21:23:06 -06:00

58 lines
1.1 KiB
Makefile

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
CXX := @CXX@
CXXFLAGS := @CXXFLAGS@
LDFLAGS := @LDFLAGS@
VPATH := @srcdir@
# Helper for end
NULL :=
CPPSRCS := \
clang-plugin.cpp \
$(NULL)
TESTSRCS := \
TestCustomHeap.cpp \
TestMustOverride.cpp \
TestNonHeapClass.cpp \
TestStackClass.cpp \
$(NULL)
OBJS := $(patsubst %.cpp,%.o,$(CPPSRCS))
TESTS := $(patsubst %.cpp,test-%,$(TESTSRCS))
PLUGIN := libclang-plugin.so
all: $(PLUGIN) $(TESTS)
$(OBJS): %.o: %.cpp Makefile
$(CXX) -o $@ -c $(CXXFLAGS) $<
$(PLUGIN): $(OBJS)
rm -f $@
$(CXX) -shared -o $@ $(CXXFLAGS) $(LDFLAGS) $(OBJS) -lclangASTMatchers
TESTFLAGS := -fsyntax-only -Xclang -verify \
-Xclang -load -Xclang $(CURDIR)/$(PLUGIN) \
-Xclang -add-plugin -Xclang moz-check
$(TESTS): test-%: tests/%.cpp $(PLUGIN)
$(CXX) $(TESTFLAGS) $<
compile libs export tools: all
distclean clean:
rm -f $(OBJS) $(TESTS) $(PLUGIN)
check:
libs: binaries
binaries: all
@touch $@
.PHONY: compile libs export tools distclean clean check