d73492a662b857a3fd18ae6cbc94ac4531d7bc54
[reactos.git] / reactos / tools / wrc / wrc.mak
1 WRC_BASE = $(TOOLS_BASE_)wrc
2 WRC_BASE_ = $(WRC_BASE)$(SEP)
3 WRC_INT = $(INTERMEDIATE_)$(WRC_BASE)
4 WRC_INT_ = $(WRC_INT)$(SEP)
5 WRC_OUT = $(TOOLS_OUT_)$(WRC_BASE)
6 WRC_OUT_ = $(WRC_OUT)$(SEP)
7
8 $(WRC_INT): | $(TOOLS_INT)
9 $(ECHO_MKDIR)
10 ${mkdir} $@
11
12 ifneq ($(INTERMEDIATE),$(OUTPUT))
13 $(WRC_OUT): | $(TOOLS_OUT)
14 $(ECHO_MKDIR)
15 ${mkdir} $@
16 endif
17
18 WRC_PORT_BASE = $(WRC_BASE)$(SEP)port
19 WRC_PORT_BASE_ = $(WRC_PORT_BASE)$(SEP)
20 WRC_PORT_INT = $(INTERMEDIATE_)$(WRC_PORT_BASE)
21 WRC_PORT_INT_ = $(WRC_PORT_INT)$(SEP)
22 WRC_PORT_OUT = $(OUTPUT_)$(WRC_PORT_BASE)
23 WRC_PORT_OUT_ = $(WRC_PORT_OUT)$(SEP)
24
25 $(WRC_PORT_INT): | $(WRC_INT)
26 $(ECHO_MKDIR)
27 ${mkdir} $@
28
29 ifneq ($(INTERMEDIATE),$(OUTPUT))
30 $(WRC_PORT_OUT): | $(WRC_OUT)
31 $(ECHO_MKDIR)
32 ${mkdir} $@
33 endif
34
35 WRC_TARGET = \
36 $(EXEPREFIX)$(WRC_OUT_)wrc$(EXEPOSTFIX)
37
38 WRC_SOURCES = $(addprefix $(WRC_BASE_), \
39 dumpres.c \
40 genres.c \
41 newstruc.c \
42 readres.c \
43 translation.c \
44 utils.c \
45 wrc.c \
46 writeres.c \
47 parser.tab.c \
48 lex.yy.c \
49 port$(SEP)mkstemps.c \
50 )
51
52 WRC_OBJECTS = \
53 $(addprefix $(INTERMEDIATE_), $(WRC_SOURCES:.c=.o))
54
55 WRC_HOST_CFLAGS = -I$(WRC_BASE) $(TOOLS_CFLAGS) \
56 -D__USE_W32API -DWINE_UNICODE_API= \
57 -DDWORD="unsigned int" -DDWORD_DEFINED \
58 -DLONG="int" -DULONG="unsigned int" \
59 -DPULONG="unsigned int *" -DLONG_DEFINED \
60 -Dwchar_t="unsigned short" -D_WCHAR_T_DEFINED \
61 -I$(UNICODE_BASE) -I$(WPP_BASE) \
62 -Iinclude/reactos/wine -Iinclude/reactos -Iinclude -Iinclude/psdk
63
64 WRC_HOST_LFLAGS = $(TOOLS_LFLAGS)
65
66 WRC_LIBS = $(UNICODE_TARGET) $(WPP_TARGET)
67
68 .PHONY: wrc
69 wrc: $(WRC_TARGET)
70
71 $(WRC_TARGET): $(WRC_OBJECTS) $(WRC_LIBS) | $(WRC_OUT)
72 $(ECHO_LD)
73 ${host_gcc} $(WRC_OBJECTS) $(WRC_LIBS) $(WRC_HOST_LFLAGS) -o $@
74
75 $(WRC_INT_)dumpres.o: $(WRC_BASE_)dumpres.c | $(WRC_INT)
76 $(ECHO_CC)
77 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
78
79 $(WRC_INT_)genres.o: $(WRC_BASE_)genres.c | $(WRC_INT)
80 $(ECHO_CC)
81 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
82
83 $(WRC_INT_)newstruc.o: $(WRC_BASE_)newstruc.c | $(WRC_INT)
84 $(ECHO_CC)
85 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
86
87 $(WRC_INT_)readres.o: $(WRC_BASE_)readres.c | $(WRC_INT)
88 $(ECHO_CC)
89 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
90
91 $(WRC_INT_)translation.o: $(WRC_BASE_)translation.c | $(WRC_INT)
92 $(ECHO_CC)
93 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
94
95 $(WRC_INT_)utils.o: $(WRC_BASE_)utils.c | $(WRC_INT)
96 $(ECHO_CC)
97 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
98
99 $(WRC_INT_)wrc.o: $(WRC_BASE_)wrc.c | $(WRC_INT)
100 $(ECHO_CC)
101 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
102
103 $(WRC_INT_)writeres.o: $(WRC_BASE_)writeres.c | $(WRC_INT)
104 $(ECHO_CC)
105 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
106
107 $(WRC_INT_)parser.tab.o: $(WRC_BASE_)parser.tab.c | $(WRC_INT)
108 $(ECHO_CC)
109 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
110
111 $(WRC_INT_)lex.yy.o: $(WRC_BASE_)lex.yy.c | $(WRC_INT)
112 $(ECHO_CC)
113 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
114
115 $(WRC_PORT_INT_)mkstemps.o: $(WRC_PORT_BASE_)mkstemps.c | $(WRC_PORT_INT)
116 $(ECHO_CC)
117 ${host_gcc} $(WRC_HOST_CFLAGS) -c $< -o $@
118
119 .PHONY: wrc_clean
120 wrc_clean:
121 -@$(rm) $(WRC_TARGET) $(WRC_OBJECTS) 2>$(NUL)
122 clean: wrc_clean