summaryrefslogtreecommitdiffstats
path: root/tools/ipodpatcher/Makefile
diff options
context:
space:
mode:
authorDave Chapman <dave@dchapman.com>2007-02-08 18:05:50 +0000
committerDave Chapman <dave@dchapman.com>2007-02-08 18:05:50 +0000
commitbdc27ff20c3666989cd8ba83fc9a43c25382ced4 (patch)
treefb66ef4d48bc2c2a97ac68fe78c8bb2901f296e0 /tools/ipodpatcher/Makefile
parentdeb83637512488b42a848ced66d039fa8df0f428 (diff)
downloadrockbox-bdc27ff20c3666989cd8ba83fc9a43c25382ced4.tar.gz
rockbox-bdc27ff20c3666989cd8ba83fc9a43c25382ced4.tar.bz2
rockbox-bdc27ff20c3666989cd8ba83fc9a43c25382ced4.zip
Work-in-progress (i.e. not well tested) changes: Add the option to build ipodpatcher with the Rockbox bootloaders embedded (see the comments in the Makefile for build instructions). This gives a new --install option which will search for an ipod, and if exactly one is found, will install the embedded bootloader. Even easier is the new interactive mode - running ipodpatcher with no command-line options (e.g. double-clicking on ipodpatcher.exe in Windows) will cause ipodpatcher to search for an ipod, and if exactly one is found, ask the user if he/she wishes to install the bootloader. Thanks to Bryan Childs for sample code to deal with prompts.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12235 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'tools/ipodpatcher/Makefile')
-rw-r--r--tools/ipodpatcher/Makefile48
1 files changed, 43 insertions, 5 deletions
diff --git a/tools/ipodpatcher/Makefile b/tools/ipodpatcher/Makefile
index d796f4494c..559b2f3ea5 100644
--- a/tools/ipodpatcher/Makefile
+++ b/tools/ipodpatcher/Makefile
@@ -1,5 +1,15 @@
CFLAGS=-Wall
+BOOT_H = ipod3g.h ipod4g.h ipodcolor.h ipodmini.h ipodmini2g.h ipodnano.h ipodvideo.h
+
+# Uncomment the next two lines to build with embedded bootloaders and the
+# --install option and interactive mode. You need the full set of Rockbox
+# bootloaders in this directory - download them from
+# http://download.rockbox.org/bootloader/ipod/bootloaders.zip
+
+BOOTSRC = ipod3g.c ipod4g.c ipodcolor.c ipodmini.c ipodmini2g.c ipodnano.c ipodvideo.c
+CFLAGS += -DWITH_BOOTOBJS
+
ifeq ($(findstring CYGWIN,$(shell uname)),CYGWIN)
OUTPUT=ipodpatcher.exe
CROSS=
@@ -9,15 +19,43 @@ OUTPUT=ipodpatcher
CROSS=i586-mingw32msvc-
endif
+NATIVECC = gcc
+CC = $(CROSS)gcc
+
all: $(OUTPUT)
-ipodpatcher: ipodpatcher.c ipodio-posix.c parttypes.h
- gcc $(CFLAGS) -o ipodpatcher ipodpatcher.c ipodio-posix.c
+ipodpatcher: ipodpatcher.c ipodio-posix.c parttypes.h $(BOOTSRC)
+ gcc $(CFLAGS) -o ipodpatcher ipodpatcher.c ipodio-posix.c $(BOOTSRC)
strip ipodpatcher
-ipodpatcher.exe: ipodpatcher.c ipodio-win32.c parttypes.h
- $(CROSS)gcc $(CFLAGS) -o ipodpatcher.exe ipodpatcher.c ipodio-win32.c
+ipodpatcher.exe: ipodpatcher.c ipodio-win32.c parttypes.h $(BOOTSRC)
+ $(CC) $(CFLAGS) -o ipodpatcher.exe ipodpatcher.c ipodio-win32.c $(BOOTSRC)
$(CROSS)strip ipodpatcher.exe
+ipod2c: ipod2c.c
+ $(NATIVECC) $(CFLAGS) -o ipod2c ipod2c.c
+
+ipod3g.c: bootloader-ipod3g.ipod ipod2c
+ ./ipod2c bootloader-ipod3g.ipod ipod3g
+
+ipod4g.c: bootloader-ipod4g.ipod ipod2c
+ ./ipod2c bootloader-ipod4g.ipod ipod4g
+
+ipodcolor.c: bootloader-ipodcolor.ipod ipod2c
+ ./ipod2c bootloader-ipodcolor.ipod ipodcolor
+
+ipodmini.c: bootloader-ipodmini.ipod ipod2c
+ ./ipod2c bootloader-ipodmini.ipod ipodmini
+
+ipodmini2g.c: bootloader-ipodmini2g.ipod ipod2c
+ ./ipod2c bootloader-ipodmini2g.ipod ipodmini2g
+
+ipodnano.c: bootloader-ipodnano.ipod ipod2c
+ ./ipod2c bootloader-ipodnano.ipod ipodnano
+
+ipodvideo.c: bootloader-ipodvideo.ipod ipod2c
+ ./ipod2c bootloader-ipodvideo.ipod ipodvideo
+
+
clean:
- rm -f ipodpatcher.exe ipodpatcher *~
+ rm -f ipodpatcher.exe ipodpatcher ipod2c *~ $(BOOTSRC) $(BOOT_H)