2 # Open \______ \ ____ ____ | | _\_ |__ _______ ___
3 # Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
4 # Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
5 # Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
10 INCLUDES
+= -I
$(ROOTDIR
)/uisimulator
/sdl
-I
$(ROOTDIR
)/uisimulator
/common \
12 SIMINCLUDES
+= -I
$(ROOTDIR
)/uisimulator
/sdl
-I
$(ROOTDIR
)/uisimulator
/common \
13 -I
$(FIRMDIR
)/export $(TARGET_INC
) -I
$(BUILDDIR
) -I
$(APPSDIR
)
15 SIMFLAGS
+= $(SIMINCLUDES
) $(DEFINES
) -DHAVE_CONFIG_H
$(GCCOPTS
)
17 SIMSRC
+= $(call preprocess
, $(ROOTDIR
)/uisimulator
/sdl
/SOURCES
)
18 SIMSRC
+= $(call preprocess
, $(ROOTDIR
)/uisimulator
/common
/SOURCES
)
19 SIMOBJ
= $(call c2obj
,$(SIMSRC
))
20 OTHER_SRC
+= $(SIMSRC
)
22 SIMLIB
= $(BUILDDIR
)/uisimulator
/libuisimulator.a
23 UIBMP
= $(BUILDDIR
)/UI256.bmp
25 .SECONDEXPANSION
: # $$(OBJ) is not populated until after this
27 $(SIMLIB
): $$(SIMOBJ
) $(UIBMP
)
28 $(SILENT
)$(shell rm -f
$@
)
29 $(call PRINTS
,AR
$(@F
))$(AR
) rcs
$@
$^
>/dev
/null
31 # SIMLIB needs to be linked twice for some reason
32 $(BUILDDIR
)/$(BINARY
): $$(OBJ
) $(SIMLIB
) $(VOICESPEEXLIB
) $(FIRMLIB
)
33 $(call PRINTS
,LD
$(BINARY
))$(CC
) -o
$@
$^
$(SIMLIB
) $(LDOPTS
)
35 $(BUILDDIR
)/uisimulator
/%.o
: $(ROOTDIR
)/uisimulator
/%.c
36 $(SILENT
)mkdir
-p
$(dir $@
)
37 $(call PRINTS
,CC
$(subst $(ROOTDIR
)/,,$<))$(CC
) $(SIMFLAGS
) -c
$< -o
$@
39 $(UIBMP
): $(ROOTDIR
)/uisimulator
/sdl
/UI-
$(MODELNAME
).bmp
40 $(call PRINTS
,CP
$(@F
))cp
$< $@