2 # Open \______ \ ____ ____ | | _\_ |__ _______ ___
3 # Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
4 # Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
5 # Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
10 # We use the Telechips code available in the Rockbox tools/ directory
12 CFLAGS
:= -O
-g
-W
-Wall
-Wshadow
-pedantic
-I
$(TOOLSDIR
)
17 MKPLATBOOT
=mk
$(PLAT
)boot
18 LIB_MKPLATBOOT
=lib
$(MKPLATBOOT
)
22 APPVERSION
=`$(TOOLSDIR)/version.sh`
29 ifeq ($(findstring CYGWIN
,$(shell uname
)),CYGWIN
)
30 OUTPUT
=$(MKPLATBOOT
).exe
33 ifeq ($(findstring MINGW
,$(shell uname
)),MINGW
)
34 OUTPUT
=$(MKPLATBOOT
).exe
36 ifeq ($(findstring mingw
,$(CC
)),mingw
)
37 OUTPUT
=$(MKPLATBOOT
).exe
45 CFLAGS
+= -arch
$(RBARCH
)
48 OUT
= $(TARGET_DIR
)build
$(RBARCH
)
50 MKPLATBOOT_OBJ
=$(OUT
)/$(MKPLATBOOT
).o
51 LIBMKPLATBOOT_OBJ
=$(OUT
)/$(LIB_MKPLATBOOT
).o
56 TELECHIPS
=$(TOOLSDIR
)/telechips
57 TELECHIPS_OBJ
=$(TELECHIPS
).o
59 $(TELECHIPS_OBJ
): $(TELECHIPS
).
[ch
]
60 make
-C
$(TOOLSDIR
) $(TARGET_DIR
)telechips.o
62 DEPENDANT_OBJS
=$(TELECHIPS_OBJ
)
64 $(MKPLATBOOT_OBJ
): $(MKPLATBOOT
).
[ch
] $(DEPENDANT_OBJS
)
66 $(SILENT
)$(CC
) $(CFLAGS
) -c
-o
$(MKPLATBOOT_OBJ
) -W
-Wall
$(MKPLATBOOT
).c
-DVERSION
=\"$(APPVERSION
)\"
68 $(OUTPUT
): $(OUT
) $(MKPLATBOOT_OBJ
)
70 $(SILENT
)$(CC
) $(CFLAGS
) -o
$(OUTPUT
) $(MKPLATBOOT_OBJ
) $(DEPENDANT_OBJS
)
72 $(LIBMKPLATBOOT_OBJ
): $(MKPLATBOOT_OBJ
)
74 $(SILENT
)$(CC
) $(CFLAGS
) -DLIB
-c
-o
$(LIBMKPLATBOOT_OBJ
) -W
-Wall
$(MKPLATBOOT
).c
76 $(LIB_MKPLATBOOT
)$(RBARCH
).a
: $(OUT
) $(LIBMKPLATBOOT_OBJ
)
78 $(SILENT
)$(AR
) ruc
$(TARGET_DIR
)$(LIB_MKPLATBOOT
)$(RBARCH
).a
$(LIBMKPLATBOOT_OBJ
)
80 # some trickery to build ppc and i386 from a single call
82 $(LIB_MKPLATBOOT
)i386.a
:
83 make RBARCH
=i386 TARGET_DIR
=$(TARGET_DIR
) $(LIB_MKPLATBOOT
)i386.a
85 $(LIB_MKPLATBOOT
)ppc.a
:
86 make RBARCH
=ppc TARGET_DIR
=$(TARGET_DIR
) $(LIB_MKPLATBOOT
)ppc.a
89 $(LIB_MKPLATBOOT
)-universal
: $(LIB_MKPLATBOOT
)i386.a
$(LIB_MKPLATBOOT
)ppc.a
90 @echo lipo
$(TARGET_DIR
)$(LIB_MKPLATBOOT
).a
91 $(SILENT
) rm -f
$(TARGET_DIR
)$(LIB_MKPLATBOOT
).a
92 lipo
-create
$(TARGET_DIR
)$(LIB_MKPLATBOOT
)ppc.a
$(TARGET_DIR
)$(LIB_MKPLATBOOT
)i386.a
-output
$(TARGET_DIR
)$(LIB_MKPLATBOOT
).a
95 rm -f
$(OUTPUT
) $(LIB_MKPLATBOOT
).o
$(TARGET_DIR
)$(LIB_MKPLATBOOT
)*.a
$(MKPLATBOOT
).dmg
96 rm -f
$(DEPENDANT_OBJS
)
97 rm -rf build
* $(MKPLATBOOT
)-*
101 mv
$(MKPLATBOOT
) $(MKPLATBOOT
)-i386
105 mv
$(MKPLATBOOT
) $(MKPLATBOOT
)-ppc
107 $(MKPLATBOOT
)-mac
: $(MKPLATBOOT
)-i386
$(MKPLATBOOT
)-ppc
108 lipo
-create
$(MKPLATBOOT
)-ppc
$(MKPLATBOOT
)-i386
-output
$(MKPLATBOOT
)-mac
110 $(MKPLATBOOT
).dmg
: $(MKPLATBOOT
)-mac
111 mkdir
-p
$(MKPLATBOOT
)-dmg
112 cp
-p
$(MKPLATBOOT
)-mac
$(MKPLATBOOT
)-dmg
113 hdiutil create
-srcfolder
$(MKPLATBOOT
)-dmg
$(MKPLATBOOT
).dmg
117 $(SILENT
)mkdir
$(OUT
)