[RTL]
[reactos.git] / reactos / tools / ofw_interface / ofw_interface.mak
1 OFW_INTERFACE_BASE = $(TOOLS_BASE_)ofw_interface
2 OFW_INTERFACE_BASE_ = $(OFW_INTERFACE_BASE)$(SEP)
3 OFW_INTERFACE_INT = $(INTERMEDIATE_)$(OFW_INTERFACE_BASE)
4 OFW_INTERFACE_INT_ = $(OFW_INTERFACE_INT)$(SEP)
5 OFW_INTERFACE_OUT = $(OUTPUT_)$(OFW_INTERFACE_BASE)
6 OFW_INTERFACE_OUT_ = $(OFW_INTERFACE_OUT)$(SEP)
7
8 OFW_INTERFACE_OUTPUT = boot/freeldr/freeldr/arch/powerpc/ofw_calls.s
9 OFW_INTERFACE_SOURCE = boot/freeldr/freeldr/arch/powerpc/ofw.c
10 OFW_INTERFACE_HEADER = boot/freeldr/freeldr/include/of_call.h
11 OFW_INTERFACE_INPUT = $(OFW_INTERFACE_BASE_)calls.ofw
12 OFW_INTERFACE_SERVICE_FILES = \
13 $(OFW_INTERFACE_OUTPUT) \
14 $(OFW_INTERFACE_SOURCE) \
15 $(OFW_INTERFACE_HEADER)
16
17 $(OFW_INTERFACE_INT): | $(TOOLS_INT)
18 $(ECHO_MKDIR)
19 ${mkdir} $@
20
21 ifneq ($(INTERMEDIATE),$(OUTPUT))
22 $(OFW_INTERFACE_OUT): | $(TOOLS_OUT)
23 $(ECHO_MKDIR)
24 ${mkdir} $@
25 endif
26
27 OFW_INTERFACE_TARGET = \
28 $(OFW_INTERFACE_OUT_)ofw_interface$(EXEPOSTFIX)
29
30 OFW_INTERFACE_SOURCES = $(addprefix $(OFW_INTERFACE_BASE_), \
31 ofw_interface.cpp \
32 )
33
34 OFW_INTERFACE_OBJECTS = \
35 $(addprefix $(INTERMEDIATE_), $(OFW_INTERFACE_SOURCES:.cpp=.o))
36
37 OFW_INTERFACE_HOST_CFLAGS = $(TOOLS_CFLAGS)
38
39 OFW_INTERFACE_HOST_LFLAGS = $(TOOLS_LFLAGS)
40
41 $(OFW_INTERFACE_TARGET): $(OFW_INTERFACE_OBJECTS) | $(OFW_INTERFACE_OUT)
42 $(ECHO_HOSTLD)
43 ${host_gpp} $(OFW_INTERFACE_OBJECTS) $(OFW_INTERFACE_HOST_LFLAGS) -o $@
44
45 $(OFW_INTERFACE_INT_)ofw_interface.o: $(OFW_INTERFACE_BASE_)ofw_interface.cpp | $(OFW_INTERFACE_INT)
46 $(ECHO_HOSTCC)
47 ${host_gpp} $(OFW_INTERFACE_HOST_CFLAGS) -c $< -o $@
48
49 $(OFW_INTERFACE_SERVICE_FILES): $(OFW_INTERFACE_TARGET) $(OFW_INTERFACE_INPUT)
50 $(ECHO_OFW)
51 $(Q)$(OFW_INTERFACE_TARGET) \
52 $(OFW_INTERFACE_INPUT) \
53 $(OFW_INTERFACE_OUTPUT) \
54 $(OFW_INTERFACE_SOURCE) \
55 $(OFW_INTERFACE_HEADER)
56
57 .PHONY: ofw_interface
58 ofw_interface: $(OFW_INTERFACE_TARGET)
59
60 .PHONY: ofw_interface_clean
61 ofw_interface_clean:
62 -@$(rm) $(OFW_INTERFACE_TARGET) $(OFW_INTERFACE_OBJECTS) 2>$(NUL)
63 clean: ofw_interface_clean