[compiler-rt] r255032 - [TSan] Remove legacy Makefile.old!

Alexey Samsonov via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 8 09:59:36 PST 2015


Author: samsonov
Date: Tue Dec  8 11:59:33 2015
New Revision: 255032

URL: http://llvm.org/viewvc/llvm-project?rev=255032&view=rev
Log:
[TSan] Remove legacy Makefile.old!

Summary:
It was barely supported for a several years for now, somewhat
rotten and doesn't correspond to the way we build/test TSan runtime
in Clang anymore.

CMake build has proper compile flags, library layout, build
dependencies etc.

Shell scripts that depended on the output of Makefile.old are
either obsolete now (check_cmake.sh), or moved to lit tests
(check_memcpy.sh), or kept as a standalone scripts not suitable
for generic test suite, but invoked on bots (check_analyze.sh).

It is not used on bots anymore: all "interesting" configurations
(gcc/clang as a host compiler; debug/release build types) are now
tested via CMake.

Reviewers: dvyukov, kcc

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D15316

Removed:
    compiler-rt/trunk/lib/tsan/Makefile.old
    compiler-rt/trunk/lib/tsan/rtl/Makefile.old

Removed: compiler-rt/trunk/lib/tsan/Makefile.old
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/Makefile.old?rev=255031&view=auto
==============================================================================
--- compiler-rt/trunk/lib/tsan/Makefile.old (original)
+++ compiler-rt/trunk/lib/tsan/Makefile.old (removed)
@@ -1,103 +0,0 @@
-DEBUG=0
-LDFLAGS=-ldl -lrt -lpthread -pie
-CXXFLAGS = -std=c++11 -fPIE -fno-rtti -g -Wall -Werror \
-					 -DGTEST_HAS_RTTI=0 -DSANITIZER_DEBUG=$(DEBUG) \
-					 -DTSAN_CONTAINS_UBSAN=0
-CLANG=clang
-# Silence warnings that Clang produces for gtest code.
-# Use -Wno-attributes so that gcc doesn't complain about unknown warning types.
-CXXFLAGS += -Wno-attributes
-ifeq ($(DEBUG), 0)
-	CXXFLAGS += -O3
-endif
-ifeq ($(CXX), $(CLANG)++)
-  CXXFLAGS += -Wno-unused-private-field -Wno-static-in-inline -Wgnu
-else
-  CXXFLAGS += -Wno-maybe-uninitialized
-endif
-
-LIBTSAN=rtl/libtsan.a
-GTEST_ROOT=third_party/googletest
-GTEST_INCLUDE=-I$(GTEST_ROOT)/include
-GTEST_BUILD_DIR=$(GTEST_ROOT)/build
-GTEST_LIB_NAME=gtest-all.o
-GTEST_LIB=$(GTEST_BUILD_DIR)/$(GTEST_LIB_NAME)
-
-SANITIZER_TESTS_PATH=../sanitizer_common/tests
-SANITIZER_COMMON_TESTS_SRC=$(wildcard $(SANITIZER_TESTS_PATH)/*_test.cc)
-SANITIZER_COMMON_EXCLUDED_TESTS=$(SANITIZER_TESTS_PATH)/sanitizer_nolibc_test.cc
-SANITIZER_COMMON_GOOD_TESTS=$(filter-out $(SANITIZER_COMMON_EXCLUDED_TESTS), $(SANITIZER_COMMON_TESTS_SRC))
-SANITIZER_COMMON_TESTS_OBJ=$(patsubst %.cc,%.o,$(SANITIZER_COMMON_GOOD_TESTS))
-RTL_TEST_SRC=$(wildcard tests/rtl/*.cc)
-RTL_TEST_OBJ=$(patsubst %.cc,%.o,$(RTL_TEST_SRC))
-UNIT_TEST_SRC=$(wildcard tests/unit/*_test.cc)
-UNIT_TEST_OBJ=$(patsubst %.cc,%.o,$(UNIT_TEST_SRC))
-UNIT_TEST_HDR=$(wildcard rtl/*.h) $(wildcard ../sanitizer_common/*.h)
-
-INCLUDES=-Irtl -I.. -I../../include $(GTEST_INCLUDE)
-
-all: libtsan test
-
-help:
-	@ echo "A little help is always welcome!"
-	@ echo "The most useful targets are:"
-	@ echo "  make install_deps  # Install third-party dependencies required for building"
-	@ echo "  make presubmit     # Run it every time before committing"
-	@ echo
-	@ echo "For more info, see https://github.com/google/sanitizers/wiki/ThreadSanitizerDevelopment"
-
-$(LIBTSAN): libtsan
-
-libtsan:
-	$(MAKE) -C rtl -f Makefile.old DEBUG=$(DEBUG)
-
-%.o: %.cc $(UNIT_TEST_HDR) $(LIBTSAN)
-	$(CXX) $(CXXFLAGS) $(CFLAGS) $(INCLUDES) -o $@ -c $<
-
-tsan_test: $(UNIT_TEST_OBJ) $(RTL_TEST_OBJ) \
-           $(SANITIZER_COMMON_TESTS_OBJ) $(LIBTSAN) $(GTEST_LIB)
-	$(CXX) -Wl,--whole-archive $^ -Wl,--no-whole-archive -o $@ $(LDFLAGS)
-
-test: libtsan tsan_test
-
-run: all
-	(ulimit -s 8192; ./tsan_test)
-
-presubmit:
-	../sanitizer_common/scripts/check_lint.sh
-	# Debug build with clang.
-	$(MAKE) -f Makefile.old clean
-	$(MAKE) -f Makefile.old run DEBUG=1 -j 16 CC=$(CLANG) CXX=$(CLANG)++
-	# Release build with clang.
-	$(MAKE) -f Makefile.old clean
-	$(MAKE) -f Makefile.old run DEBUG=0 -j 16 CC=$(CLANG) CXX=$(CLANG)++
-	# Debug build with gcc
-	$(MAKE) -f Makefile.old clean
-	$(MAKE) -f Makefile.old run DEBUG=1 -j 16 CC=gcc CXX=g++
-	# Release build with gcc
-	$(MAKE) -f Makefile.old clean
-	$(MAKE) -f Makefile.old run DEBUG=0 -j 16 CC=gcc CXX=g++
-	# Sanity check for Go runtime
-	(cd go && ./buildgo.sh)
-	# Check cmake build
-	./check_cmake.sh
-	@ echo PRESUBMIT PASSED
-
-install_deps:
-	rm -rf third_party
-	mkdir third_party
-	(cd third_party && \
-	svn co -r613 http://googletest.googlecode.com/svn/trunk googletest \
-        )
-
-$(GTEST_LIB):
-	mkdir -p $(GTEST_BUILD_DIR) && \
-	cd $(GTEST_BUILD_DIR) && \
-	$(MAKE) -f ../make/Makefile CXXFLAGS="$(CXXFLAGS)" CFLAGS="$(CFLAGS)" CC=$(CC) CXX=$(CXX) $(GTEST_LIB_NAME)
-
-clean:
-	rm -f asm_*.s libtsan.nm libtsan.objdump */*.o tsan_test
-	rm -rf $(GTEST_BUILD_DIR)
-	$(MAKE) clean -C rtl -f Makefile.old
-	rm -f go/*.s
-	rm -rf build

Removed: compiler-rt/trunk/lib/tsan/rtl/Makefile.old
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/rtl/Makefile.old?rev=255031&view=auto
==============================================================================
--- compiler-rt/trunk/lib/tsan/rtl/Makefile.old (original)
+++ compiler-rt/trunk/lib/tsan/rtl/Makefile.old (removed)
@@ -1,63 +0,0 @@
-CXXFLAGS = -std=c++11 -fPIE -g -Wall -Werror -fno-builtin -msse3 -DSANITIZER_DEBUG=$(DEBUG) -DTSAN_CONTAINS_UBSAN=0
-CLANG=clang
-ifeq ($(DEBUG), 0)
-  CXXFLAGS += -O3
-endif
-
-# For interception. FIXME: move interception one level higher.
-INTERCEPTION=../../interception
-COMMON=../../sanitizer_common
-INCLUDES= -I../.. -I../../../include
-EXTRA_CXXFLAGS=-fno-exceptions -fno-rtti
-NO_SYSROOT=--sysroot=.
-CXXFLAGS+=$(EXTRA_CXXFLAGS)
-CXXFLAGS+=$(CFLAGS)
-ifeq ($(DEBUG), 0)
-  CXXFLAGS+=-fomit-frame-pointer
-ifeq ($(CXX), g++)
-  CXXFLAGS+=-Wno-maybe-uninitialized
-  CXXFLAGS+=-Wframe-larger-than=512
-endif  # CXX=g++
-endif  # DEBUG=0
-
-ifeq ($(CXX), $(CLANG)++)
-  # Global constructors are banned.
-  CXXFLAGS+=-Wglobal-constructors
-endif
-
-
-
-all: libtsan.a
-
-LIBTSAN_HEADERS=$(wildcard *.h) \
-		$(wildcard $(INTERCEPTION)/*.h) \
-		$(wildcard $(COMMON)/*.h)
-LIBTSAN_SRC=$(wildcard *.cc)
-LIBTSAN_ASM_SRC=tsan_rtl_amd64.S
-INTERCEPTION_SRC=$(wildcard $(INTERCEPTION)/*.cc)
-COMMON_SRC=$(filter-out $(wildcard $(COMMON)/*_nolibc.cc),$(wildcard $(COMMON)/*.cc))
-
-LIBTSAN_OBJ=$(patsubst %.cc,%.o,$(LIBTSAN_SRC)) \
-	    $(patsubst %.S,%.o,$(LIBTSAN_ASM_SRC)) \
-	    $(patsubst $(INTERCEPTION)/%.cc,%.o,$(INTERCEPTION_SRC)) \
-	    $(patsubst $(COMMON)/%.cc,%.o,$(COMMON_SRC))
-
-%_linux.o: %_linux.cc Makefile.old $(LIBTSAN_HEADERS)
-	$(CXX) $(CXXFLAGS) $(INCLUDES) -c $<
-%.o: %.cc Makefile.old $(LIBTSAN_HEADERS)
-	$(CXX) $(CXXFLAGS) $(INCLUDES) $(NO_SYSROOT) -c $<
-%.o: $(INTERCEPTION)/%.cc Makefile.old $(LIBTSAN_HEADERS)
-	$(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@
-%.o: $(COMMON)/%.cc Makefile.old $(LIBTSAN_HEADERS)
-	$(CXX) $(CXXFLAGS) $(INCLUDES) -c $< -o $@
-tsan_rtl_amd64.o: tsan_rtl_amd64.S
-	$(CXX) $(INCLUDES) -o $@ -c $<
-
-libtsan.a: $(LIBTSAN_OBJ)
-	ar ru $@ $(LIBTSAN_OBJ)
-
-libtsan_dummy.a: tsan_dummy_rtl.o
-	ar ru $@ $<
-
-clean:
-	rm -f *.o *.a




More information about the llvm-commits mailing list