diff options
author | Dave Chapman <dave@dchapman.com> | 2007-09-11 16:47:26 +0000 |
---|---|---|
committer | Dave Chapman <dave@dchapman.com> | 2007-09-11 16:47:26 +0000 |
commit | 7eb73ef993b1b6c50d739ee2db23dcf1569cb651 (patch) | |
tree | b8d4e1ff013f2a1ecb5f9e8c045ec50dcfc46835 | |
parent | cab33b64a02cc17e9da85695817e6196cec4a345 (diff) | |
download | rockbox-7eb73ef993b1b6c50d739ee2db23dcf1569cb651.tar.gz rockbox-7eb73ef993b1b6c50d739ee2db23dcf1569cb651.zip |
Change the Mac OS X rules to compile a static binary. Also add a README file with a brief description of e200rpatcher and some build instructions. We still need a Windows developer to make this work there...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14671 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | rbutil/e200rpatcher/Makefile | 9 | ||||
-rw-r--r-- | rbutil/e200rpatcher/README | 48 |
2 files changed, 53 insertions, 4 deletions
diff --git a/rbutil/e200rpatcher/Makefile b/rbutil/e200rpatcher/Makefile index 243b2e6c09..788d78841f 100644 --- a/rbutil/e200rpatcher/Makefile +++ b/rbutil/e200rpatcher/Makefile | |||
@@ -26,12 +26,13 @@ e200rpatcher.exe: e200rpatcher.c bootimg.c | |||
26 | 26 | ||
27 | e200rpatcher-mac: e200rpatcher-i386 e200rpatcher-ppc | 27 | e200rpatcher-mac: e200rpatcher-i386 e200rpatcher-ppc |
28 | lipo -create e200rpatcher-ppc e200rpatcher-i386 -output e200rpatcher-mac | 28 | lipo -create e200rpatcher-ppc e200rpatcher-i386 -output e200rpatcher-mac |
29 | e200rpatcher-i386: e200rpatcher.c bootimg.c | 29 | |
30 | gcc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -o bin/i386/program -arch i386 $(CFLAGS) $(LIBS) -o e200rpatcher-i386 e200rpatcher.c bootimg.c | 30 | e200rpatcher-i386: e200rpatcher.c bootimg.c usb.h libusb-i386.a |
31 | gcc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -framework iokit -framework coreservices -arch i386 $(CFLAGS) -o e200rpatcher-i386 e200rpatcher.c bootimg.c -I. libusb-i386.a | ||
31 | strip e200rpatcher-i386 | 32 | strip e200rpatcher-i386 |
32 | 33 | ||
33 | e200rpatcher-ppc: e200rpatcher.c bootimg.c | 34 | e200rpatcher-ppc: e200rpatcher.c bootimg.c usb.h libusb-ppc.a |
34 | gcc -arch ppc $(CFLAGS) $(LIBS) -o e200rpatcher-ppc e200rpatcher.c bootimg.c | 35 | gcc -isysroot /Developer/SDKs/MacOSX10.4u.sdk -framework iokit -framework coreservices -arch ppc $(CFLAGS) -o e200rpatcher-ppc e200rpatcher.c bootimg.c -I. libusb-ppc.a |
35 | strip e200rpatcher-ppc | 36 | strip e200rpatcher-ppc |
36 | 37 | ||
37 | bin2c: ../sansapatcher/bin2c.c | 38 | bin2c: ../sansapatcher/bin2c.c |
diff --git a/rbutil/e200rpatcher/README b/rbutil/e200rpatcher/README new file mode 100644 index 0000000000..1942b3aa7a --- /dev/null +++ b/rbutil/e200rpatcher/README | |||
@@ -0,0 +1,48 @@ | |||
1 | INTRODUCTION | ||
2 | |||
3 | e200rpatcher is a tool for uploading and executing an application to | ||
4 | an E200R in manufacturing mode. It is intended to be used to upload | ||
5 | the patching application to allow Rockbox installs. | ||
6 | |||
7 | e200rpatcher requires libusb (v0.1.2 has been tested successfully) for | ||
8 | cross-platform USB access. No-one has yet successfully installed | ||
9 | e200rpatcher on Windows, but it works on Linux and Mac OS X (and | ||
10 | should be fine on other Unix-like systems that libusb supports). | ||
11 | |||
12 | GENERAL BUILD INSTRUCTIONS | ||
13 | |||
14 | A pre-requisite for compiling e200rpatcher is a file called | ||
15 | "bootloader.bin" - this is the output of running an "I" (installer) | ||
16 | build for the E200R target. | ||
17 | |||
18 | In the Rockbox source directory, do: | ||
19 | |||
20 | mkdir build-e200rbootbin | ||
21 | cd build-e200rbootbin | ||
22 | ../tools/configure | ||
23 | [Select E200R, then I for installer] | ||
24 | make | ||
25 | |||
26 | This should give you a bootloader/bootloader/bin file which you should | ||
27 | copy to the e200rpatcher source directory. | ||
28 | |||
29 | BUILDING ON LINUX | ||
30 | |||
31 | The Makefile expects libusb (and the headers) to be installed on your | ||
32 | system and will link dynamically. Just type "make". | ||
33 | |||
34 | BUILDING ON A MAC | ||
35 | |||
36 | To build the mac version (target e200rpatcher-mac in the Makefile) | ||
37 | requires three files from libusb to be copied to the current | ||
38 | directory: | ||
39 | |||
40 | usb.h (copied from your libusb build directory) | ||
41 | libusb-i386.a (copied and renamed from .libs/libusb.a in an i386 build) | ||
42 | libusb-ppc.a (copied and renamed from .libs/libusb.a in a PPC build) | ||
43 | |||
44 | To build the required libusb.a files, just run ./configure && make for | ||
45 | libusb. If anyone knows how to cross-compile a static libusb.a please | ||
46 | make the information known - this is currently done by compiling | ||
47 | natively on the appropriate hardware. | ||
48 | |||