msys compatibility fix
[reactos.git] / reactos / tools / rbuild / makefile
1 PATH_TO_TOP = ../..
2
3 TARGET = rbuild$(EXE_POSTFIX)
4
5 all: $(TARGET)
6
7 BACKEND_MINGW_BASE_OBJECTS = \
8 backend/mingw/mingw.o \
9 backend/mingw/modulehandler.o
10
11 BACKEND_BASE_OBJECTS = \
12 $(BACKEND_MINGW_BASE_OBJECTS) \
13 backend/backend.o
14
15 BASE_OBJECTS = \
16 $(BACKEND_BASE_OBJECTS) \
17 define.o \
18 exception.o \
19 include.o \
20 linkerflag.o \
21 module.o \
22 project.o \
23 ssprintf.o \
24 XML.o
25
26 OBJECTS = $(BASE_OBJECTS) rbuild.o
27
28 TESTS = \
29 tests/definetest.o \
30 tests/iftest.o \
31 tests/includetest.o \
32 tests/invoketest.o \
33 tests/linkerflagtest.o \
34 tests/moduletest.o \
35 tests/projecttest.o
36
37 TEST_OBJECTS = $(BASE_OBJECTS) $(TESTS) tests/alltests.o
38
39 HOST_CXXFLAGS = -g -I. -Werror -Wall
40
41 HOST_LFLAGS = -g
42
43 rbuild$(EXE_POSTFIX): $(OBJECTS)
44 $(HOST_CXX) $(OBJECTS) $(HOST_LFLAGS) -o rbuild$(EXE_POSTFIX)
45
46 ifeq ($(HOST),"")
47 echo Please set HOST variable to mingw32-windows or mingw32-linux
48 endif
49 ifeq ($(HOST),mingw32-linux)
50 clean:
51 -rm -f *.o
52 -rm -f rbuild$(EXE_POSTFIX)
53 -rm -f tests/*.o
54 -rm -f rbuild_tests$(EXE_POSTFIX)
55 else
56 clean:
57 -del *.o
58 -del rbuild$(EXE_POSTFIX)
59 -del tests\*.o
60 -del rbuild_tests$(EXE_POSTFIX)
61 endif
62
63 .phony: clean
64
65 %.o: %.cpp
66 $(HALFVERBOSEECHO) [CXX] $<
67 $(HOST_CXX) $(HOST_CXXFLAGS) -c $< -o $@
68
69 test: rbuild_tests$(EXE_POSTFIX)
70 ./$(EXE_PREFIX)rbuild_tests$(EXE_POSTFIX)
71
72 rbuild_tests$(EXE_POSTFIX): $(TEST_OBJECTS)
73 $(HOST_CXX) $(TEST_OBJECTS) $(HOST_LFLAGS) -o rbuild_tests$(EXE_POSTFIX)
74
75 include $(PATH_TO_TOP)/rules.mak