4 APPVERSION
=`../../tools/version.sh ../../`
7 # We use the UCL code available in the Rockbox tools/ directory
8 CFLAGS
=-I..
/..
/tools
/ucl
/include -Wall
-DVERSION
=\"$(APPVERSION
)\"
14 ifeq ($(findstring CYGWIN
,$(shell uname
)),CYGWIN
)
18 ifeq ($(findstring MINGW
,$(shell uname
)),MINGW
)
21 ifeq ($(findstring mingw
,$(CC
)),mingw
)
30 CFLAGS
+= -arch
$(RBARCH
)
37 # additional link dependencies for the standalone executable
38 LIBUCL
=..
/..
/tools
/ucl
/src
/libucl
$(RBARCH
).a
41 make
-C ..
/..
/tools
/ucl
/src
$(TARGET_DIR
)libucl
$(RBARCH
).a
44 LIBSOURCES
:= dualboot.c md5.c mkamsboot.c
45 SOURCES
:= $(LIBSOURCES
) main.c
46 OBJS
:= $(patsubst %.c
,%.o
,$(addprefix $(OBJDIR
),$(SOURCES
)))
47 LIBOBJS
:= $(patsubst %.c
,%.o
,$(addprefix $(OBJDIR
),$(LIBSOURCES
)))
48 EXTRADEPS
:= $(LIBUCL
)
50 # explicit dependencies on dualboot.{c,h}
51 $(OBJDIR
)mkamsboot.o
: dualboot.h dualboot.c mkamsboot.c
52 $(OBJDIR
)main.o
: dualboot.h dualboot.c main.c
56 $(SILENT
)mkdir
-p
$(dir $@
)
57 $(SILENT
)$(CC
) $(CFLAGS
) -c
-o
$@
$<
59 libmkamsboot
$(RBARCH
).a
: $(LIBOBJS
)
61 $(SILENT
)$(AR
) ruc
$(TARGET_DIR
)$@
$^
63 # building the standalone executable
64 $(OUTPUT
): $(OBJS
) $(EXTRADEPS
)
66 $(SILENT
)$(CC
) $(CFLAGS
) -o
$(OUTPUT
) $(OBJS
) $(EXTRADEPS
)
68 # some trickery to build ppc and i386 from a single call
70 $(TARGET_DIR
)libmkamsbooti386.a
:
71 make RBARCH
=i386 TARGET_DIR
=$(TARGET_DIR
) libmkamsbooti386.a
73 $(TARGET_DIR
)libmkamsbootppc.a
:
74 make RBARCH
=ppc TARGET_DIR
=$(TARGET_DIR
) libmkamsbootppc.a
77 libmkamsboot-universal
: $(TARGET_DIR
)libmkamsbooti386.a
$(TARGET_DIR
)libmkamsbootppc.a
78 @echo lipo
$(TARGET_DIR
)libmkamsboot.a
79 $(SILENT
) rm -f
$(TARGET_DIR
)libmkamsboot.a
80 $(SILENT
)lipo
-create
$(TARGET_DIR
)libmkamsbootppc.a
$(TARGET_DIR
)libmkamsbooti386.a
-output
$(TARGET_DIR
)libmkamsboot.a
83 rm -f
$(OBJS
) $(OUTPUT
) libmkamsboot.o
$(TARGET_DIR
)libmkamsboot
*.a mkamsboot.dmg
84 rm -rf mkamsboot-
* i386 ppc
$(OBJDIR
)
88 mv mkamsboot mkamsboot-i386
92 mv mkamsboot mkamsboot-ppc
94 mkamsboot-mac
: mkamsboot-i386 mkamsboot-ppc
95 $(SILENT
)lipo
-create mkamsboot-ppc mkamsboot-i386
-output mkamsboot-mac
97 mkamsboot.dmg
: mkamsboot-mac
98 mkdir
-p mkamsboot-dmg
99 cp
-p mkamsboot-mac mkamsboot-dmg
100 hdiutil create
-srcfolder mkamsboot-dmg mkamsboot.dmg