3 # - Application Template Makefile
10 _BIN := $(OUTPUTDIR)$(DIR)/$(BIN)
11 _OBJPREFIX := obj-$(ARCH)/
13 LDFLAGS += -Map $(_OBJPREFIX)Map.txt
16 LDFLAGS := $(subst -rpath-link ,-Wl$(comma)-rpath-link$(comma),$(LDFLAGS))
17 LDFLAGS := $(subst -Map ,-Wl$(comma)-Map$(comma),$(LDFLAGS))
19 _LIBS := $(filter -l%,$(LIBS))
20 _LIBS := $(patsubst -l%,$(OUTPUTDIR)Libs/lib%.so,$(_LIBS))
28 OBJ := $(addprefix $(_OBJPREFIX),$(OBJ))
30 #LINK_OBJS := $(CRTI) $(CRTBEGIN) $(CRT0) $(OBJ) $(LIBGCC_PATH) $(CRTEND) $(CRTN)
33 DEPFILES := $(OBJ:%.o=%.dep)
35 .PHONY : all clean install
40 @$(RM) $(OBJ) $(DEPFILES) $(_BIN) $(BIN).dsm
41 @$(RM) -r $(_OBJPREFIX)
44 @echo [xCP] $(DISTROOT)/$(DIR)/$(BIN)
45 @$(xMKDIR) $(DISTROOT)/$(DIR); true
46 @$(STRIP) $(_BIN) -o $(_BIN)_
47 @$(xCP) $(_BIN)_ $(DISTROOT)/$(DIR)/$(BIN)
50 $(_BIN): $(_LIBS) $(LINK_OBJS) $(CRT0) $(CRTI) $(CRTN)
51 @mkdir -p $(dir $(_BIN))
53 ifneq ($(USE_CXX_LINK),)
54 $V$(CXX) -g $(LDFLAGS) -o $(_BIN) $(LINK_OBJS) $(LIBS)
56 $V$(CC) -g $(LDFLAGS) -o $(_BIN) $(LINK_OBJS) $(LIBS)
58 $V$(DISASM) $(_BIN) > $(_OBJPREFIX)$(BIN).dsm
62 ifneq ($(_OBJPREFIX),)
65 $V$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ -MQ $@ -MP -MD -MF $(_OBJPREFIX)$*.dep
67 $(_OBJPREFIX)%.o: %.cpp
69 ifneq ($(_OBJPREFIX),)
72 $V$(CXX) $(CXXFLAGS) $(CPPFLAGS) -c $< -o $@ -MQ $@ -MP -MD -MF $(_OBJPREFIX)$*.dep
74 $(OUTPUTDIR)Libs/libld-acess.so:
75 @make -C $(ACESSDIR)/Usermode/Libraries/ld-acess.so_src/
77 @make -C $(ACESSDIR)/Usermode/Libraries/$*_src/