diff options
-rw-r--r-- | docs/README | 53 | ||||
-rw-r--r-- | firmware/Makefile | 5 | ||||
-rw-r--r-- | uisimulator/win32/Makefile | 5 | ||||
-rw-r--r-- | uisimulator/x11/Makefile | 5 |
4 files changed, 51 insertions, 17 deletions
diff --git a/docs/README b/docs/README index e8cc69f338..7934c9c40b 100644 --- a/docs/README +++ b/docs/README | |||
@@ -7,18 +7,25 @@ | |||
7 | 7 | ||
8 | Build Your Own Rockbox | 8 | Build Your Own Rockbox |
9 | 9 | ||
10 | 1. Check out 'rockbox' from CVS (or possibly from a downloaded archive). You | 10 | 1. Check out 'rockbox' from CVS (or extract a downloaded archive). You |
11 | may possibly want to check out 'rockbox-devel' instead, since that includes | 11 | want to check out 'rockbox-devel' instead if you want the simulator |
12 | the simulator code (for trying out things on host before making target | 12 | code too (for trying out things on host before making target tests). |
13 | tests). | ||
14 | 13 | ||
15 | If you do want to play with the simulator, read UISIMULATOR. | 14 | (For more information about the simulator, read UISIMULATOR.) |
16 | 15 | ||
17 | 2. Build the tools by running 'make' in the tools/ directory. | 16 | $ cvs -d:pserver:anonymous@cvs.rockbox.sourceforge.net:/cvsroot/rockbox login |
17 | $ cvs -z3 -d:pserver:anonymous@cvs.rockbox.sourceforge.net:/cvsroot/rockbox co rockbox | ||
18 | 18 | ||
19 | 3. Create your own build directory, preferably in the same directory as the | 19 | or |
20 | firmware/ and apps/ directories. This is where all generated files will be | 20 | |
21 | put. | 21 | $ tar xzf rockbox.tar.gz |
22 | |||
23 | 2. Create a build directory, preferably in the same directory as the firmware/ | ||
24 | and apps/ directories. This is where all generated files will be written. | ||
25 | |||
26 | $ cd rockbox | ||
27 | $ mkdir build | ||
28 | $ cd build | ||
22 | 29 | ||
23 | 4. In your build directory, run the 'tools/configure' script and enter what | 30 | 4. In your build directory, run the 'tools/configure' script and enter what |
24 | target you want to build for and if you want a debug version or not (and a | 31 | target you want to build for and if you want a debug version or not (and a |
@@ -26,23 +33,41 @@ Build Your Own Rockbox | |||
26 | gdb version out of it. It is only useful if you run gdb towards your target | 33 | gdb version out of it. It is only useful if you run gdb towards your target |
27 | Archos. | 34 | Archos. |
28 | 35 | ||
36 | $ ../tools/configure | ||
37 | |||
29 | 5. *ploink*. Now you have got a Makefile generated for you. | 38 | 5. *ploink*. Now you have got a Makefile generated for you. |
30 | 39 | ||
31 | 6. Make sure you have sh-elf-gcc and siblings in the PATH. Make sure that you | 40 | 6. Make sure you have sh-elf-gcc and siblings in the PATH. Make sure that you |
32 | have 'perl' in your PATH too. | 41 | have 'perl' in your PATH too. |
33 | 42 | ||
43 | $ which sh-elf-gcc | ||
44 | $ which perl | ||
45 | |||
34 | 7. Run 'make' and soon the necessary pieces from the firmware and the apps | 46 | 7. Run 'make' and soon the necessary pieces from the firmware and the apps |
35 | directories have been compiled, linked and scrambled for you. | 47 | directories have been compiled, linked and scrambled for you. |
36 | 48 | ||
49 | $ make | ||
50 | |||
37 | 8. Copy the archos.mod or ajbrec.ajz file to your archos, reboot it and | 51 | 8. Copy the archos.mod or ajbrec.ajz file to your archos, reboot it and |
38 | *smile*. Recent Rockbox versions need no reboots, just PLAY a new rockbox | 52 | *smile*. Recent Rockbox versions need no reboots, just PLAY a new rockbox |
39 | version and that'll be loaded and replace the currently running version. | 53 | version and that'll be loaded and replace the currently running version. |
40 | 54 | ||
55 | $ mount /dev/sda1 /mnt/archos | ||
56 | $ cp ajbrec.ajz /mnt/archos | ||
57 | $ umount /mnt/archos | ||
58 | |||
41 | Whenever the tools/configure script gets updated, you can make your makefile | 59 | Whenever the tools/configure script gets updated, you can make your makefile |
42 | updated too by running 'tools/configure update' | 60 | updated too by running 'tools/configure update'. |
61 | |||
62 | If you want to build for more than one target, just create several build | ||
63 | directories and create a setup for each target: | ||
64 | |||
65 | $ mkdir build-fmrecorder | ||
66 | $ cd build-fmrecorder | ||
67 | $ ../tools/configure | ||
43 | 68 | ||
44 | If you want to build for more than one target, just create a new build | 69 | $ mkdir build-player |
45 | directory and create a setup for another target combination in there. | 70 | $ cd build-player |
71 | $ ../tools/configure | ||
46 | 72 | ||
47 | Questions anyone? Take them to the mailing list. We'll be happy to help you | 73 | Questions anyone? Ask on the mailing list. We'll be happy to help you! |
48 | out! | ||
diff --git a/firmware/Makefile b/firmware/Makefile index c80d20cdb5..916a1a4094 100644 --- a/firmware/Makefile +++ b/firmware/Makefile | |||
@@ -55,7 +55,10 @@ ifndef TOOLSDIR | |||
55 | TOOLSDIR=../tools | 55 | TOOLSDIR=../tools |
56 | endif | 56 | endif |
57 | 57 | ||
58 | all: $(OUTPUT) $(EXTRA_TARGETS) | 58 | all: $(TOOLSDIR)/convbdf $(OUTPUT) $(EXTRA_TARGETS) |
59 | |||
60 | $(TOOLSDIR)/convbdf: | ||
61 | $(MAKE) -C $(TOOLSDIR) | ||
59 | 62 | ||
60 | $(OUTPUT): $(OBJS) | 63 | $(OUTPUT): $(OBJS) |
61 | $(AR) ruv $@ $+ | 64 | $(AR) ruv $@ $+ |
diff --git a/uisimulator/win32/Makefile b/uisimulator/win32/Makefile index aa72171bdb..1ec4ccf357 100644 --- a/uisimulator/win32/Makefile +++ b/uisimulator/win32/Makefile | |||
@@ -119,7 +119,10 @@ ROCKSRCS := $(patsubst $(PLUGINDIR)/%.c,%.c,$(wildcard $(PLUGINDIR)/*.c)) | |||
119 | 119 | ||
120 | ROCKS := $(ROCKSRCS:%.c=$(OBJDIR)/%.rock) | 120 | ROCKS := $(ROCKSRCS:%.c=$(OBJDIR)/%.rock) |
121 | 121 | ||
122 | all: $(TARGET) $(ROCKS) | 122 | all: $(TOOLSDIR)/convbdf $(TARGET) $(ROCKS) |
123 | |||
124 | $(TOOLSDIR)/convbdf: | ||
125 | $(MAKE) -C $(TOOLSDIR) | ||
123 | 126 | ||
124 | $(TARGET): $(OBJS) | 127 | $(TARGET): $(OBJS) |
125 | $(CC) $(OBJS) -o $(TARGET) $(LDFLAGS) | 128 | $(CC) $(OBJS) -o $(TARGET) $(LDFLAGS) |
diff --git a/uisimulator/x11/Makefile b/uisimulator/x11/Makefile index 2ce4606468..fa3613767d 100644 --- a/uisimulator/x11/Makefile +++ b/uisimulator/x11/Makefile | |||
@@ -117,7 +117,10 @@ ROCKS := $(ROCKSRC:$(APPDIR)/plugins/%.c=$(OBJDIR)/%.rock) | |||
117 | 117 | ||
118 | OBJS := $(OBJDIR)/lang.o $(SRCS:%.c=$(OBJDIR)/%.o) | 118 | OBJS := $(OBJDIR)/lang.o $(SRCS:%.c=$(OBJDIR)/%.o) |
119 | 119 | ||
120 | all: $(TARGET) $(EXTRA_TARGETS) $(ROCKS) | 120 | all: $(TOOLSDIR)/convbdf $(TARGET) $(EXTRA_TARGETS) $(ROCKS) |
121 | |||
122 | $(TOOLSDIR)/convbdf: | ||
123 | $(MAKE) -C $(TOOLSDIR) | ||
121 | 124 | ||
122 | clean: | 125 | clean: |
123 | $(RM) $(OBJS) *~ core $(TARGET) $(CLIENTS) $(OBJDIR)/lang.[cho] \ | 126 | $(RM) $(OBJS) *~ core $(TARGET) $(CLIENTS) $(OBJDIR)/lang.[cho] \ |