Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Side by Side Diff: Makefile.standalone

Issue 659513005: Allow conditional lit tests in Subzero, based on build flags. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Add -Wno-error=unused-parameter Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « Makefile ('k') | pydir/ifatts.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # The following variables will likely need to be modified, depending on where 1 # The following variables will likely need to be modified, depending on where
2 # and how you built LLVM & Clang. They can be overridden in a command-line 2 # and how you built LLVM & Clang. They can be overridden in a command-line
3 # invocation of make, like: 3 # invocation of make, like:
4 # 4 #
5 # make LLVM_SRC_PATH=<path> LLVM_BIN_PATH=<path> \ 5 # make LLVM_SRC_PATH=<path> LLVM_BIN_PATH=<path> \
6 # LIBCXX_INSTALL_PATH=<path> CLANG_PATH=<path> ... 6 # LIBCXX_INSTALL_PATH=<path> CLANG_PATH=<path> ...
7 # 7 #
8 8
9 # LLVM_SRC_PATH is the path to the root of the checked out source code. This 9 # LLVM_SRC_PATH is the path to the root of the checked out source code. This
10 # directory should contain the configure script, the include/ and lib/ 10 # directory should contain the configure script, the include/ and lib/
(...skipping 27 matching lines...) Expand all
38 endif 38 endif
39 39
40 ifdef DEBUG 40 ifdef DEBUG
41 OBJDIR = build/Debug 41 OBJDIR = build/Debug
42 OPTLEVEL = -O0 42 OPTLEVEL = -O0
43 else 43 else
44 OBJDIR = build/Release 44 OBJDIR = build/Release
45 OPTLEVEL = -O2 45 OPTLEVEL = -O2
46 endif 46 endif
47 47
48 # The list of CXX defines that are dependent on build parameters.
49 CXX_DEFINES =
50
51 ifdef MINIMAL
52 OBJDIR := $(OBJDIR)+Min
53 CXX_DEFINES += -DALLOW_TEXT_ASM=0 -DALLOW_DUMP=0 -DALLOW_LLVM_CL=0 \
54 -DALLOW_LLVM_IR=0 -DALLOW_LLVM_IR_AS_INPUT=0
55 else
56 CXX_DEFINES += -DALLOW_TEXT_ASM=1 -DALLOW_DUMP=1 -DALLOW_LLVM_CL=1 \
57 -DALLOW_LLVM_IR=1 -DALLOW_LLVM_IR_AS_INPUT=1
58 endif
59
48 ifdef NOASSERT 60 ifdef NOASSERT
49 ASSERTIONS = -DNDEBUG 61 ASSERTIONS = -DNDEBUG
50 else 62 else
51 ASSERTIONS = 63 ASSERTIONS =
52 OBJDIR := $(OBJDIR)+Asserts 64 OBJDIR := $(OBJDIR)+Asserts
53 endif 65 endif
54 66
55 $(info -----------------------------------------------) 67 $(info -----------------------------------------------)
56 $(info Using LLVM_SRC_PATH = $(LLVM_SRC_PATH)) 68 $(info Using LLVM_SRC_PATH = $(LLVM_SRC_PATH))
57 $(info Using LLVM_BIN_PATH = $(LLVM_BIN_PATH)) 69 $(info Using LLVM_BIN_PATH = $(LLVM_BIN_PATH))
58 $(info Using LIBCXX_INSTALL_PATH = $(LIBCXX_INSTALL_PATH)) 70 $(info Using LIBCXX_INSTALL_PATH = $(LIBCXX_INSTALL_PATH))
59 $(info Using CLANG_PATH = $(CLANG_PATH)) 71 $(info Using CLANG_PATH = $(CLANG_PATH))
60 $(info Using HOST_ARCH = $(HOST_ARCH)) 72 $(info Using HOST_ARCH = $(HOST_ARCH))
61 $(info -----------------------------------------------) 73 $(info -----------------------------------------------)
62 74
63 LLVM_CXXFLAGS := `$(LLVM_BIN_PATH)/llvm-config --cxxflags` 75 LLVM_CXXFLAGS := `$(LLVM_BIN_PATH)/llvm-config --cxxflags`
64 LLVM_LDFLAGS := `$(LLVM_BIN_PATH)/llvm-config --libs` \ 76 LLVM_LDFLAGS := `$(LLVM_BIN_PATH)/llvm-config --libs` \
65 `$(LLVM_BIN_PATH)/llvm-config --ldflags` 77 `$(LLVM_BIN_PATH)/llvm-config --ldflags`
66 78
67 # It's recommended that CXX matches the compiler you used to build LLVM itself. 79 # It's recommended that CXX matches the compiler you used to build LLVM itself.
68 CCACHE := `command -v ccache` 80 CCACHE := `command -v ccache`
69 CXX := CCACHE_CPP2=yes $(CCACHE) $(CLANG_PATH)/clang++ 81 CXX := CCACHE_CPP2=yes $(CCACHE) $(CLANG_PATH)/clang++
70 82
71 CXXFLAGS := $(LLVM_CXXFLAGS) -std=c++11 -Wall -Wextra -Werror -fno-rtti \ 83 CXXFLAGS := $(LLVM_CXXFLAGS) -std=c++11 -Wall -Wextra -Werror -fno-rtti \
72 » -fno-exceptions $(OPTLEVEL) $(ASSERTIONS) -g $(HOST_FLAGS) \ 84 » -fno-exceptions $(OPTLEVEL) $(ASSERTIONS) $(CXX_DEFINES) -g \
73 » -Wno-error=unused-parameter -I$(LIBCXX_INSTALL_PATH)/include/c++/v1 85 » $(HOST_FLAGS) -Wno-error=unused-parameter \
86 » -I$(LIBCXX_INSTALL_PATH)/include/c++/v1
74 LDFLAGS := $(HOST_FLAGS) -L$(LIBCXX_INSTALL_PATH)/lib 87 LDFLAGS := $(HOST_FLAGS) -L$(LIBCXX_INSTALL_PATH)/lib
75 88
76 SRCS= \ 89 SRCS= \
77 assembler.cpp \ 90 assembler.cpp \
78 assembler_ia32.cpp \ 91 assembler_ia32.cpp \
79 IceCfg.cpp \ 92 IceCfg.cpp \
80 IceCfgNode.cpp \ 93 IceCfgNode.cpp \
81 IceConverter.cpp \ 94 IceConverter.cpp \
82 IceGlobalContext.cpp \ 95 IceGlobalContext.cpp \
83 IceGlobalInits.cpp \ 96 IceGlobalInits.cpp \
(...skipping 12 matching lines...) Expand all
96 IceTypeConverter.cpp \ 109 IceTypeConverter.cpp \
97 IceTypes.cpp \ 110 IceTypes.cpp \
98 llvm2ice.cpp \ 111 llvm2ice.cpp \
99 PNaClTranslator.cpp 112 PNaClTranslator.cpp
100 113
101 OBJS=$(patsubst %.cpp, $(OBJDIR)/%.o, $(SRCS)) 114 OBJS=$(patsubst %.cpp, $(OBJDIR)/%.o, $(SRCS))
102 115
103 # Keep all the first target so it's the default. 116 # Keep all the first target so it's the default.
104 all: $(OBJDIR)/llvm2ice make_symlink 117 all: $(OBJDIR)/llvm2ice make_symlink
105 118
106 make_symlink: $(OBJDIR)/llvm2ice 119 make_symlink: $(OBJDIR)/llvm2ice $(OBJDIR)/llvm2ice.build_atts
107 » rm -f llvm2ice 120 » rm -rf llvm2ice llvm2ice.build_atts
108 ln -s $(OBJDIR)/llvm2ice 121 ln -s $(OBJDIR)/llvm2ice
122 ln -s $(OBJDIR)/llvm2ice.build_atts
109 123
110 .PHONY: all make_symlink 124 .PHONY: all make_symlink
111 125
126 # TODO(kschimpf): Fix python scripts to directly get build attributes
127 # rather than generating $(OBJDIR)/llvm2ice.build_atts.
112 $(OBJDIR)/llvm2ice: $(OBJS) 128 $(OBJDIR)/llvm2ice: $(OBJS)
113 $(CXX) $(LDFLAGS) -o $@ $^ $(LLVM_LDFLAGS) -ldl \ 129 $(CXX) $(LDFLAGS) -o $@ $^ $(LLVM_LDFLAGS) -ldl \
114 -Wl,-rpath=$(abspath $(LIBCXX_INSTALL_PATH)/lib) 130 -Wl,-rpath=$(abspath $(LIBCXX_INSTALL_PATH)/lib)
131 $@ --build-atts > $@.build_atts
115 132
116 # TODO: Be more precise than "*.h" here and elsewhere. 133 # TODO: Be more precise than "*.h" here and elsewhere.
117 $(OBJS): $(OBJDIR)/%.o: src/%.cpp src/*.h src/*.def 134 $(OBJS): $(OBJDIR)/%.o: src/%.cpp src/*.h src/*.def
118 $(CXX) -c $(CXXFLAGS) $< -o $@ 135 $(CXX) -c $(CXXFLAGS) $< -o $@
119 136
120 $(OBJS): | $(OBJDIR) 137 $(OBJS): | $(OBJDIR)
121 138
122 $(OBJDIR): 139 $(OBJDIR):
123 @mkdir -p $@ 140 @mkdir -p $@
124 141
(...skipping 17 matching lines...) Expand all
142 ifeq (,$(wildcard /usr/lib/clang-format/clang-format-diff.py)) 159 ifeq (,$(wildcard /usr/lib/clang-format/clang-format-diff.py))
143 CLANG_FORMAT_DIFF = clang-format-diff.py 160 CLANG_FORMAT_DIFF = clang-format-diff.py
144 else 161 else
145 CLANG_FORMAT_DIFF = /usr/lib/clang-format/clang-format-diff.py 162 CLANG_FORMAT_DIFF = /usr/lib/clang-format/clang-format-diff.py
146 endif 163 endif
147 format-diff: 164 format-diff:
148 git diff -U0 `git merge-base HEAD master` | \ 165 git diff -U0 `git merge-base HEAD master` | \
149 $(CLANG_FORMAT_DIFF) -p1 -style=LLVM -i 166 $(CLANG_FORMAT_DIFF) -p1 -style=LLVM -i
150 167
151 clean: 168 clean:
152 » rm -rf llvm2ice *.o build/ 169 » rm -rf llvm2ice llvm2ice.build_atts *.o $(OBJDIR)
170
171 clean-all: clean
172 » rm -rf build/
OLDNEW
« no previous file with comments | « Makefile ('k') | pydir/ifatts.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698