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

Side by Side Diff: Makefile.standalone

Issue 644143002: Generate a minimal llvm2ice. (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Created 6 years, 2 months 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 | « no previous file | tests_lit/lit.cfg » ('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 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 IceTargetLoweringX8632.cpp \ 93 IceTargetLoweringX8632.cpp \
94 IceTimerTree.cpp \ 94 IceTimerTree.cpp \
95 IceTranslator.cpp \ 95 IceTranslator.cpp \
96 IceTypeConverter.cpp \ 96 IceTypeConverter.cpp \
97 IceTypes.cpp \ 97 IceTypes.cpp \
98 llvm2ice.cpp \ 98 llvm2ice.cpp \
99 PNaClTranslator.cpp 99 PNaClTranslator.cpp
100 100
101 OBJS=$(patsubst %.cpp, $(OBJDIR)/%.o, $(SRCS)) 101 OBJS=$(patsubst %.cpp, $(OBJDIR)/%.o, $(SRCS))
102 102
103
104 MINOBJDIR=$(OBJDIR)/min
105
106 MINOBJS=$(patsubst %.cpp, $(MINOBJDIR)/%.o, $(SRCS))
107
108 MIN_CXXFLAGS = -DBUILD_MIN_LLVM
Jim Stichnoth 2014/10/13 16:03:58 LLVM? Maybe something like SZ_MINIMAL?
jvoung (off chromium) 2014/10/13 17:05:08 SHAVED_ICE just kidding
Karl 2014/10/14 22:54:12 Done.
109
103 # Keep all the first target so it's the default. 110 # Keep all the first target so it's the default.
104 all: $(OBJDIR)/llvm2ice make_symlink 111 all: $(OBJDIR)/llvm2ice $(MINOBJDIR)/llvm2ice make_symlink
105 112
106 make_symlink: $(OBJDIR)/llvm2ice 113 make_symlink: $(OBJDIR)/llvm2ice $(MINOBJDIR)/llvm2ice
Jim Stichnoth 2014/10/13 16:03:58 I'm not thrilled about the build time doubling. W
jvoung (off chromium) 2014/10/13 17:05:08 If it helps, lit's llvm/utils/lit/lit/TestRunner.p
Karl 2014/10/14 22:54:12 Made code dependent of command-line flag: "MINIMAL
107 rm -f llvm2ice 114 rm -f llvm2ice
108 ln -s $(OBJDIR)/llvm2ice 115 ln -s $(OBJDIR)/llvm2ice
116 rm -f minllvm2ice
117 ln -s $(MINOBJDIR)/llvm2ice minllvm2ice
109 118
110 .PHONY: all make_symlink 119 .PHONY: all make_symlink
111 120
112 $(OBJDIR)/llvm2ice: $(OBJS) 121 $(OBJDIR)/llvm2ice: $(OBJS)
113 $(CXX) $(LDFLAGS) -o $@ $^ $(LLVM_LDFLAGS) -ldl \ 122 $(CXX) $(LDFLAGS) -o $@ $^ $(LLVM_LDFLAGS) -ldl \
114 -Wl,-rpath=$(abspath $(LIBCXX_INSTALL_PATH)/lib) 123 -Wl,-rpath=$(abspath $(LIBCXX_INSTALL_PATH)/lib)
115 124
116 # TODO: Be more precise than "*.h" here and elsewhere. 125 # TODO: Be more precise than "*.h" here and elsewhere.
117 $(OBJS): $(OBJDIR)/%.o: src/%.cpp src/*.h src/*.def 126 $(OBJS): $(OBJDIR)/%.o: src/%.cpp src/*.h src/*.def
118 $(CXX) -c $(CXXFLAGS) $< -o $@ 127 $(CXX) -c $(CXXFLAGS) $< -o $@
119 128
120 $(OBJS): | $(OBJDIR) 129 $(OBJS): | $(OBJDIR)
121 130
122 $(OBJDIR): 131 $(OBJDIR):
123 @mkdir -p $@ 132 @mkdir -p $@
124 133
134 $(MINOBJDIR)/llvm2ice: $(MINOBJS)
135 $(CXX) $(MIN_CXXFLAGS) $(LDFLAGS) -o $@ $^ $(LLVM_LDFLAGS) -ldl \
136 -Wl,-rpath=$(abspath $(LIBCXX_INSTALL_PATH)/lib)
137
138 $(MINOBJS): $(MINOBJDIR)/%.o: src/%.cpp src/*.h src/*.def
139 $(CXX) -c $(MIN_CXXFLAGS) $(CXXFLAGS) $< -o $@
140
141 $(MINOBJS): | $(MINOBJDIR)
142
143 $(MINOBJDIR): $(OBJDIR)
144 @mkdir -p $@
145
125 check-lit: llvm2ice make_symlink 146 check-lit: llvm2ice make_symlink
126 LLVM_BIN_PATH=$(LLVM_BIN_PATH) \ 147 LLVM_BIN_PATH=$(LLVM_BIN_PATH) \
127 $(LLVM_SRC_PATH)/utils/lit/lit.py -sv tests_lit 148 $(LLVM_SRC_PATH)/utils/lit/lit.py -sv tests_lit
128 149
129 check: check-lit 150 check: check-lit
130 (cd crosstest; ./runtests.sh) 151 (cd crosstest; ./runtests.sh)
131 152
132 # TODO: Fix the use of wildcards. 153 # TODO: Fix the use of wildcards.
133 # Assumes clang-format is within $PATH. 154 # Assumes clang-format is within $PATH.
134 format: 155 format:
135 clang-format -style=LLVM -i src/*.h src/*.cpp 156 clang-format -style=LLVM -i src/*.h src/*.cpp
136 157
137 # Assumes clang-format-diff.py is within $PATH, and that the 158 # Assumes clang-format-diff.py is within $PATH, and that the
138 # clang-format it calls is also within $PATH. This may require adding 159 # clang-format it calls is also within $PATH. This may require adding
139 # a component to $PATH, or creating symlinks within some existing 160 # a component to $PATH, or creating symlinks within some existing
140 # $PATH component. Uses the one in /usr/lib/clang-format/ if it 161 # $PATH component. Uses the one in /usr/lib/clang-format/ if it
141 # exists. 162 # exists.
142 ifeq (,$(wildcard /usr/lib/clang-format/clang-format-diff.py)) 163 ifeq (,$(wildcard /usr/lib/clang-format/clang-format-diff.py))
143 CLANG_FORMAT_DIFF = clang-format-diff.py 164 CLANG_FORMAT_DIFF = clang-format-diff.py
144 else 165 else
145 CLANG_FORMAT_DIFF = /usr/lib/clang-format/clang-format-diff.py 166 CLANG_FORMAT_DIFF = /usr/lib/clang-format/clang-format-diff.py
146 endif 167 endif
147 format-diff: 168 format-diff:
148 git diff -U0 `git merge-base HEAD master` | \ 169 git diff -U0 `git merge-base HEAD master` | \
149 $(CLANG_FORMAT_DIFF) -p1 -style=LLVM -i 170 $(CLANG_FORMAT_DIFF) -p1 -style=LLVM -i
150 171
151 clean: 172 clean:
152 » rm -rf llvm2ice *.o build/ 173 » rm -rf llvm2ice minllvm2ice *.o build/
OLDNEW
« no previous file with comments | « no previous file | tests_lit/lit.cfg » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698