makefile 更新
@@ -146,8 +146,17 @@ | ||
146 | 146 | |
147 | 147 | else |
148 | 148 | |
149 | +ifdef USE_LIB | |
150 | +CXXFLAGS += -DIUTEST_USE_LIB=1 -L../lib | |
149 | 151 | $(TARGETS) : $(SRCS) $(IUTEST_HEADERS) Makefile |
152 | + $(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ $@.cpp -liutest | |
153 | + | |
154 | +else | |
155 | + | |
156 | +$(TARGETS) : $(SRCS) $(IUTEST_HEADERS) Makefile | |
150 | 157 | $(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ $@.cpp |
151 | 158 | |
152 | 159 | endif |
153 | 160 | |
161 | +endif | |
162 | + |
@@ -65,7 +65,9 @@ | ||
65 | 65 | TESTS = sample |
66 | 66 | |
67 | 67 | # lib |
68 | -LIBS = iutest.a iutest_main.a | |
68 | +LIBRARY_INSTALL_PATH=$(IUTEST_DIR)/lib | |
69 | +LIBS_ = iutest.a iutest_main.a | |
70 | +LIBS = $(LIBS_:%=$(LIBRARY_INSTALL_PATH)/lib%) | |
69 | 71 | |
70 | 72 | # All iutest headers. Usually you shouldn't change this |
71 | 73 | # definition. |
@@ -93,10 +95,10 @@ | ||
93 | 95 | |
94 | 96 | # Builds a library |
95 | 97 | .o.a : $(IUTEST_SRCS) |
96 | - $(AR) $(ARFLAGS) $@ $^ | |
98 | + $(AR) $(ARFLAGS) $(LIBRARY_INSTALL_PATH)/lib$@ $^ | |
97 | 99 | |
98 | 100 | iutest.a : iutest_all.o |
99 | - $(AR) $(ARFLAGS) $@ $^ | |
101 | + $(AR) $(ARFLAGS) $(LIBRARY_INSTALL_PATH)/lib$@ $^ | |
100 | 102 | |
101 | 103 | iutest_all.o : $(IUTEST_DIR)/src/iutest_all.cpp $(IUTEST_SRCS) |
102 | 104 | $(CXX) $(CPPFLAGS) -I$(IUTEST_DIR) $(CXXFLAGS) -c $(IUTEST_DIR)/src/iutest_all.cpp |
@@ -104,6 +106,13 @@ | ||
104 | 106 | iutest_main.o : $(IUTEST_DIR)/src/iutest_main.cpp $(IUTEST_SRCS) |
105 | 107 | $(CXX) $(CPPFLAGS) -I$(IUTEST_DIR) $(CXXFLAGS) -c $(IUTEST_DIR)/src/iutest_main.cpp |
106 | 108 | |
109 | +$(LIBRARY_INSTALL_PATH): | |
110 | + @if [ ! -d $(IUTEST_DIR)/libs ]; then \ | |
111 | + mkdir -p $@; \ | |
112 | + fi | |
113 | + | |
114 | +$(LIBS) : $(LIBRARY_INSTALL_PATH) $(LIBS_) | |
115 | + | |
107 | 116 | # Builds a sample test. |
108 | 117 | |
109 | 118 | main.o : $(USER_DIR)/main.cpp $(IUTEST_HEADERS) Makefile |