LEVEL = ..
-DIRS = Feature Regression Programs
+DIRS = Programs
include Makefile.tests
+#
+# Make QMTest the default for testing features and regressions
+#
+all:: qmtest
+
#
# New QMTest functionality:
# The test suite is being transitioned over to QMTest. Eventually, it
# List of the functioning QM Tests
QMTESTS=feature \
- regression.assembler \
- regression.analysis \
- regression.bugpoint \
- regression.cbackend \
- regression.jello \
- regression.linker \
- regression.other
+ regression
# QMTest option specifying the location of the QMTest database.
QMDB= -D $(LLVM_SRC_ROOT)/test/QMTestDB
#
CONTEXT= -c srcroot=$(LLVM_SRC_ROOT) \
-c buildroot=$(LLVM_OBJ_ROOT) \
- -c buildtype=$(CONFIGURATION) \
+ -c buildtype=$(CONFIGURATION) \
-c tmpdir=$(LLVM_OBJ_ROOT)/test/tmp \
- -c cc=$(CC) \
- -c cxx=$(CXX) \
- -c "llvmgcc=$(LLVMGCC)" \
- -c make=$(MAKE)
+ -c coresize=0 \
+ -c cc=$(CC) \
+ -c cxx=$(CXX) \
+ -c "llvmgcc=$(LLVMGCC)" \
+ -c make=$(MAKE)
#
# Location of the QMTest program.
LCCFLAGS += -O2 -Wall
LCXXFLAGS += -O2 -Wall
LLCFLAGS =
-FAILURE = $(LEVEL)/test/Failure.sh
+FAILURE = $(LLVM_SRC_ROOT)/test/Failure.sh
TESTRUNR = @echo Running test: $<; \
- PATH=$(LLVMTOOLCURRENT):$(LEVEL)/test/Scripts:$(PATH) \
- $(LEVEL)/test/TestRunner.sh
+ PATH=$(LLVMTOOLCURRENT):$(LLVM_SRC_ROOT)/test/Scripts:$(PATH) \
+ $(LLVM_SRC_ROOT)/test/TestRunner.sh
# Native Tool Definitions
NATGCC = $(CC)
$(RM) -rf Output/
# Compile from X.c to Output/X.ll
-Output/%.ll: $(SourceDir)%.c $(LCC1) Output/.dir $(INCLUDES)
+Output/%.ll: $(SourceDir)/%.c $(LCC1) Output/.dir $(INCLUDES)
+ $(LCC) $(CPPFLAGS) $(LCCFLAGS) -S $< -o $@
+
+Output/%.ll: %.c $(LCC1) Output/.dir $(INCLUDES)
$(LCC) $(CPPFLAGS) $(LCCFLAGS) -S $< -o $@
# Compile from X.cpp to Output/X.ll
-Output/%.ll: $(SourceDir)%.cpp $(LCC1XX) Output/.dir $(INCLUDES)
+Output/%.ll: $(SourceDir)/%.cpp $(LCC1XX) Output/.dir $(INCLUDES)
+ $(LCXX) $(CPPFLAGS) $(LCXXFLAGS) -S $< -o $@
+
+Output/%.ll: %.cpp $(LCC1XX) Output/.dir $(INCLUDES)
$(LCXX) $(CPPFLAGS) $(LCXXFLAGS) -S $< -o $@
# Compile from X.cc to Output/X.ll
-Output/%.ll: $(SourceDir)%.cc $(LCC1XX) Output/.dir $(INCLUDES)
+Output/%.ll: $(SourceDir)/%.cc $(LCC1XX) Output/.dir $(INCLUDES)
+ $(LCXX) $(CPPFLAGS) $(LCXXFLAGS) -S $< -o $@
+
+Output/%.ll: %.cc $(LCC1XX) Output/.dir $(INCLUDES)
$(LCXX) $(CPPFLAGS) $(LCXXFLAGS) -S $< -o $@
# LLVM Assemble from Output/X.ll to Output/X.bc. Output/X.ll must have come
# LLVM Assemble from X.ll to Output/X.bc. Because we are coming directly from
# LLVM source, use the non-transforming assembler.
#
-Output/%.bc: %.ll $(LAS) Output/.dir
+Output/%.bc: $(SourceDir)/%.ll $(LAS) Output/.dir
$(LAS) -f $< -o $@
#
# Testing versions of provided utilities...
#
+Output/%.tll: $(SourceDir)/%.c $(LCC1) Output/.dir $(INCLUDES)
+ @echo "======== Compiling $<"
+ $(LCC) $(CPPFLAGS) $(LCCFLAGS) -S $< -o $@ || \
+ ( rm -f $@; $(FAILURE) $@ )
+
Output/%.tll: %.c $(LCC1) Output/.dir $(INCLUDES)
@echo "======== Compiling $<"
$(LCC) $(CPPFLAGS) $(LCCFLAGS) -S $< -o $@ || \
( rm -f $@; $(FAILURE) $@ )
+Output/%.tll: $(SourceDir)/%.cpp $(LCC1XX) Output/.dir $(INCLUDES)
+ @echo "======== Compiling $<"
+ $(LCXX) $(CPPFLAGS) $(LCXXFLAGS) -S $< -o $@ || \
+ ( rm -f $@; $(FAILURE) $@ )
+
Output/%.tll: %.cpp $(LCC1XX) Output/.dir $(INCLUDES)
@echo "======== Compiling $<"
$(LCXX) $(CPPFLAGS) $(LCXXFLAGS) -S $< -o $@ || \