@@ -25,7 +25,8 @@ WGET=wget -c -O
25
25
# export RTEMS_MAKEFILE_PATH=/opt/rtems-4.11/lm32-rtems4.11/milkymist
26
26
27
27
RTEMS_VERSION =4.11
28
- RTEMS_MAKEFILE_PATH? =/opt/rtems-$(RTEMS_VERSION ) /lm32-rtems$(RTEMS_VERSION ) /milkymist
28
+ RTEMS_MAKEFILE_PATH? =\
29
+ /opt/rtems-$(RTEMS_VERSION ) /lm32-rtems$(RTEMS_VERSION ) /milkymist
29
30
30
31
LIBPNG_VERSION =1.5.6
31
32
JBIG2DEC_VERSION =0.11
@@ -78,14 +79,16 @@ $(BUILD_DIR)/libpng: $(DL)/$(LIBPNG).ok build_dir/.prepare
78
79
make; \
79
80
make install; \
80
81
)
81
- cp -rf $(RTEMS_MAKEFILE_PATH ) /include/* $(RTEMS_MAKEFILE_PATH ) /lib/include
82
+ cp -rf $(RTEMS_MAKEFILE_PATH ) /include/* \
83
+ $(RTEMS_MAKEFILE_PATH ) /lib/include
82
84
rm -rf $(RTEMS_MAKEFILE_PATH ) /include/*
83
85
touch $@
84
86
85
87
$(BUILD_DIR ) /libjpeg : $(DL ) /$(LIBJPEG ) .ok build_dir/.prepare
86
88
cd $(BUILD_DIR ) ; tar xf ../$(DL ) /$(LIBJPEG )
87
89
(cd $( BUILD_DIR) /jpeg-8c; $( CONFIGURE_VARS) ./configure \
88
- --host=lm32-rtems4.11 --disable-shared --prefix=$(RTEMS_MAKEFILE_PATH ) ; \
90
+ --host=lm32-rtems4.11 --disable-shared \
91
+ --prefix=$(RTEMS_MAKEFILE_PATH ) ; \
89
92
make; \
90
93
make install; \
91
94
)
@@ -104,9 +107,12 @@ $(BUILD_DIR)/openjpeg: $(DL)/$(OPENJPEG).ok build_dir/.prepare
104
107
105
108
$(BUILD_DIR ) /jbig2dec : $(DL ) /$(JBIG2DEC ) .ok build_dir/.prepare
106
109
cd $(BUILD_DIR ) ; tar xf ../$(DL ) /$(JBIG2DEC )
107
- cd $(BUILD_DIR ) /jbig2dec-$(JBIG2DEC_VERSION ) ; rm config.sub; automake --add-missing; exit 0
108
- (cd $( BUILD_DIR) /jbig2dec-$( JBIG2DEC_VERSION) ; $( CONFIGURE_VARS) ./configure \
109
- --host=lm32-rtems4.11 --disable-shared --prefix=$(RTEMS_MAKEFILE_PATH ) ; \
110
+ cd $(BUILD_DIR ) /jbig2dec-$(JBIG2DEC_VERSION ) ; rm config.sub; \
111
+ automake --add-missing; exit 0
112
+ (cd $( BUILD_DIR) /jbig2dec-$( JBIG2DEC_VERSION) ; $( CONFIGURE_VARS) \
113
+ ./configure \
114
+ --host=lm32-rtems4.11 --disable-shared \
115
+ --prefix=$(RTEMS_MAKEFILE_PATH ) ; \
110
116
make; \
111
117
make install; \
112
118
)
@@ -121,30 +127,36 @@ $(BUILD_DIR)/freetype2: $(DL)/$(FREETYPE2).ok build_dir/.prepare
121
127
make; \
122
128
make install; \
123
129
)
124
- cp -rf $(RTEMS_MAKEFILE_PATH ) /include/* $(RTEMS_MAKEFILE_PATH ) /lib/include
130
+ cp -rf $(RTEMS_MAKEFILE_PATH ) /include/* \
131
+ $(RTEMS_MAKEFILE_PATH ) /lib/include
125
132
rm -rf $(RTEMS_MAKEFILE_PATH ) /include/*
126
133
touch $@
127
134
128
135
$(BUILD_DIR ) /mupdf : $(DL ) /$(MUPDF ) .ok build_dir/.prepare \
129
136
$(BUILD_DIR)/libpng $(BUILD_DIR)/libjpeg \
130
- $(BUILD_DIR)/openjpeg $(BUILD_DIR)/jbig2dec $(BUILD_DIR)/freetype2
137
+ $(BUILD_DIR)/openjpeg $(BUILD_DIR)/jbig2dec \
138
+ $(BUILD_DIR)/freetype2
131
139
cd $(BUILD_DIR); tar xf ../$(DL)/$(MUPDF)
132
140
# First, compile the code generation tools natively:
133
141
(cd $(BUILD_DIR)/mupdf-$(MUPDF_VERSION); \
134
142
patch -Np1 < ../../patches/mupdf-0001-for-milkymist-one.patch; \
135
143
)
136
144
(cd $(BUILD_DIR)/mupdf-$(MUPDF_VERSION); \
137
145
mkdir -p build/release; \
138
- gcc -o build/release/cmapdump ./mupdf/cmapdump.c -lfreetype -ljpeg -lz -lm -Ifitz; \
139
- gcc -o build/release/fontdump ./mupdf/fontdump.c -lfreetype -ljpeg -lz -lm -Ifitz; \
146
+ gcc -o build/release/cmapdump ./mupdf/cmapdump.c \
147
+ -lfreetype -ljpeg -lz -lm -Ifitz; \
148
+ gcc -o build/release/fontdump ./mupdf/fontdump.c \
149
+ -lfreetype -ljpeg -lz -lm -Ifitz; \
140
150
mkdir -p build/generated; \
141
151
)
142
152
(cd $(BUILD_DIR)/mupdf-$(MUPDF_VERSION); \
143
153
OS=Rtems \
144
154
CC=lm32-rtems4.11-gcc \
145
- CFLAGS="-O9 -mbarrel-shift-enabled -mmultiply-enabled -mdivide-enabled -msign-extend-enabled \
146
- -I $(RTEMS_MAKEFILE_PATH)/lib/include -I $(RTEMS_MAKEFILE_PATH)/lib/include/freetype2 \
147
- -B $(RTEMS_MAKEFILE_PATH)/lib -specs bsp_specs -qrtems" \
155
+ CFLAGS="-O9 -mbarrel-shift-enabled -mmultiply-enabled \
156
+ -mdivide-enabled -msign-extend-enabled \
157
+ -I $(RTEMS_MAKEFILE_PATH)/lib/include -I \
158
+ $(RTEMS_MAKEFILE_PATH)/lib/include/freetype2 \
159
+ -B $(RTEMS_MAKEFILE_PATH)/lib -specs bsp_specs -qrtems" \
148
160
LDFLAGS="-L $(RTEMS_MAKEFILE_PATH)/lib" \
149
161
make build=release build/release/libmupdf.a; \
150
162
)
@@ -158,136 +170,140 @@ $(BUILD_DIR)/mupdf: $(DL)/$(MUPDF).ok build_dir/.prepare \
158
170
$(BUILD_DIR ) /curl : $(DL ) /$(CURL ) .ok
159
171
cd $(BUILD_DIR ) ; tar xf ../$(DL ) /$(CURL )
160
172
(cd $( BUILD_DIR) /curl-$( CURL_VERSION) ; \
161
- $(CONFIGURE_VARS ) ./configure --host=lm32-rtems4.11 --disable-shared --prefix=$(RTEMS_MAKEFILE_PATH ) \
162
- --without-librtmp --disable-ftp --disable-ldap --disable-ldaps --disable-rtsp --disable-dict \
163
- --disable-telnet --disable-tftp --disable-pop3 --disable-imap --disable-smtp --disable-gopher \
164
- --disable-manual; \
173
+ $(CONFIGURE_VARS ) ./configure --host=lm32-rtems4.11 --disable-shared \
174
+ --prefix=$(RTEMS_MAKEFILE_PATH ) --without-librtmp --disable-ftp \
175
+ --disable-ldap --disable-ldaps --disable-rtsp --disable-dict \
176
+ --disable-telnet --disable-tftp --disable-pop3 --disable-imap \
177
+ --disable-smtp --disable-gopher --disable-manual; \
165
178
echo " #define HAVE_SOCKET 1" >> lib/setup.h; \
166
179
make; \
167
180
make install; \
168
181
)
169
- cp -rf $(RTEMS_MAKEFILE_PATH ) /include/* $(RTEMS_MAKEFILE_PATH ) /lib/include
182
+ cp -rf $(RTEMS_MAKEFILE_PATH ) /include/* \
183
+ $(RTEMS_MAKEFILE_PATH ) /lib/include
170
184
rm -rf $(RTEMS_MAKEFILE_PATH ) /include/*
171
185
touch $@
172
186
173
187
$(BUILD_DIR ) /expat : $(DL ) /$(EXPAT ) .ok
174
188
cd $(BUILD_DIR ) ; tar xf ../$(DL ) /$(EXPAT )
175
189
(cd $( BUILD_DIR) /expat-$( EXPAT_VERSION) ; \
176
190
sed -i ' s/ppc)/lm32)/' conftools/config.sub; \
177
- $(CONFIGURE_VARS ) ./configure --host=lm32-rtems4.11 --disable-shared --prefix=$(RTEMS_MAKEFILE_PATH ) ; \
191
+ $(CONFIGURE_VARS ) ./configure --host=lm32-rtems4.11 --disable-shared \
192
+ --prefix=$(RTEMS_MAKEFILE_PATH ) ; \
178
193
make; \
179
194
make install; \
180
195
)
181
- cp -rf $(RTEMS_MAKEFILE_PATH ) /include/* $(RTEMS_MAKEFILE_PATH ) /lib/include
196
+ cp -rf $(RTEMS_MAKEFILE_PATH ) /include/* \
197
+ $(RTEMS_MAKEFILE_PATH ) /lib/include
182
198
rm -rf $(RTEMS_MAKEFILE_PATH ) /include/*
183
199
touch $@
184
200
201
+ REPO_DIRS =milkymist flickernoise rtems-yaffs2 liboscparse mtk autotest-m1
185
202
milkymist-git-clone :
186
203
mkdir -p $(MILKYMIST_GIT_DIR )
187
- git clone $(MILKYMIST_GIT_URL ) /milkymist.git $(MILKYMIST_GIT_DIR ) /milkymist.git
188
- git clone $(MILKYMIST_GIT_URL ) /flickernoise.git $(MILKYMIST_GIT_DIR ) /flickernoise.git
189
- git clone $(MILKYMIST_GIT_URL ) /rtems-yaffs2.git $(MILKYMIST_GIT_DIR ) /rtems-yaffs2.git
190
- (cd $( MILKYMIST_GIT_DIR) ; cvs -d :pserver:anoncvs@www.rtems.com:/usr1/CVS co rtems)
191
- git clone $(MILKYMIST_GIT_URL ) /liboscparse.git $(MILKYMIST_GIT_DIR ) /liboscparse.git
192
- git clone $(MILKYMIST_GIT_URL ) /mtk.git $(MILKYMIST_GIT_DIR ) /mtk.git
193
- git clone $(MILKYMIST_GIT_URL ) /autotest-m1.git $(MILKYMIST_GIT_DIR ) /autotest-m1.git
204
+ (cd $( MILKYMIST_GIT_DIR) && \
205
+ cvs -d :pserver:anoncvs@www.rtems.com:/usr1/CVS co rtems)
206
+ for d in $( REPO_DIRS) ; \
207
+ do (git clone $( MILKYMIST_GIT_URL) /$$ d.git \
208
+ $(MILKYMIST_GIT_DIR ) /$$ d) || exit 1; \
209
+ done
194
210
195
211
milkymist-git-update :
196
- (cd $( MILKYMIST_GIT_DIR) /milkymist.git; git fetch -a; git reset --hard origin/master)
197
- (cd $( MILKYMIST_GIT_DIR) /flickernoise.git; git fetch -a; git reset --hard origin/master)
198
- (cd $( MILKYMIST_GIT_DIR) /rtems-yaffs2.git; git fetch -a; git reset --hard origin/master)
199
- (cd $( MILKYMIST_GIT_DIR) /liboscparse.git; git fetch -a; git reset --hard origin/master)
200
- (cd $( MILKYMIST_GIT_DIR) /mtk.git; git fetch -a; git reset --hard origin/master)
201
- (cd $( MILKYMIST_GIT_DIR) /autotest-m1.git; git fetch -a; git reset --hard origin/master)
202
- -(cd $( MILKYMIST_GIT_DIR) /rtems && cvs -q -z3 update -PdC)
212
+ -(cd $( MILKYMIST_GIT_DIR) /rtems && cvs -q -z3 update -PdC)
213
+ for d in $( REPO_DIRS) ; \
214
+ do (cd $( MILKYMIST_GIT_DIR) /$$ d && git fetch -a && \
215
+ git reset --hard origin/master) || exit 1; \
216
+ done
203
217
204
218
# You will need Lemon and RE2C to compile libFPVM.
205
219
libfpvm :
206
- make -C $(MILKYMIST_GIT_DIR ) /milkymist.git /software/libfpvm/ install
220
+ make -C $(MILKYMIST_GIT_DIR ) /milkymist/software/libfpvm/ install
207
221
208
222
mtk :
209
- make -C $(MILKYMIST_GIT_DIR ) /$@ .git milkymist install-milkymist
223
+ make -C $(MILKYMIST_GIT_DIR ) /$@ milkymist install-milkymist
210
224
211
225
liboscparse :
212
- make -C $(MILKYMIST_GIT_DIR ) /$@ .git all install
226
+ make -C $(MILKYMIST_GIT_DIR ) /$@ all install
213
227
214
228
rtems-yaffs2 :
215
- (cd $( MILKYMIST_GIT_DIR) /$@ .git && make -f Makefile.rtems && make -f Makefile.rtems install)
229
+ (cd $( MILKYMIST_GIT_DIR) /$@ && make -f Makefile.rtems all install)
216
230
217
231
rtems : $(BUILD_DIR ) /bsp-milkymist/Makefile
218
232
(cd $( BUILD_DIR) /bsp-milkymist; make all; make install)
219
233
touch $@
220
234
221
235
$(BUILD_DIR ) /bsp-milkymist/Makefile :
222
236
mkdir -p $(BUILD_DIR ) /bsp-milkymist
223
- (cd $( MILKYMIST_GIT_DIR) /rtems && ./bootstrap -c && ./bootstrap -p && ./bootstrap)
224
- (cd $( BUILD_DIR) /bsp-milkymist && $( MILKYMIST_GIT_DIR) /rtems/configure $( RTEMS_CONFIGURE_FLAGS) )
237
+ (cd $( MILKYMIST_GIT_DIR) /rtems && \
238
+ ./bootstrap -c && ./bootstrap -p && ./bootstrap)
239
+ (cd $( BUILD_DIR) /bsp-milkymist && \
240
+ $(MILKYMIST_GIT_DIR ) /rtems/configure $(RTEMS_CONFIGURE_FLAGS ) )
225
241
226
242
# you will need clang for compile milkymist tools
227
- flickernoise.fbi : rtems libfpvm mtk liboscparse rtems-yaffs2 $(BUILD_DIR ) /mupdf $(BUILD_DIR ) /curl $(BUILD_DIR ) /expat
228
- make -C $(MILKYMIST_GIT_DIR ) /flickernoise.git/src clean bin/flickernoise.fbi
229
- cp $(MILKYMIST_GIT_DIR ) /flickernoise.git/src/bin/$@ ./
243
+ flickernoise.fbi : rtems libfpvm mtk liboscparse rtems-yaffs2 \
244
+ $(BUILD_DIR ) /mupdf $(BUILD_DIR ) /curl $(BUILD_DIR ) /expat
245
+ make -C $(MILKYMIST_GIT_DIR ) /flickernoise/src \
246
+ clean bin/flickernoise.fbi
247
+ cp $(MILKYMIST_GIT_DIR ) /flickernoise/src/bin/$@ .
230
248
231
249
flickernoise-pdf.fbiz : flickernoise.fbi
232
- WITH_PDF=1 make -C $(MILKYMIST_GIT_DIR ) /flickernoise.git/src clean bin/flickernoise.fbiz
233
- cp $(MILKYMIST_GIT_DIR ) /flickernoise.git/src/bin/flickernoise.fbiz ./$@
250
+ WITH_PDF=1 make -C $(MILKYMIST_GIT_DIR ) /flickernoise/src \
251
+ clean bin/flickernoise.fbiz
252
+ cp $(MILKYMIST_GIT_DIR ) /flickernoise/src/bin/flickernoise.fbiz ./$@
234
253
235
254
boot.bin :
236
- MMDIR=$(MILKYMIST_GIT_DIR ) /milkymist.git make -C $(MILKYMIST_GIT_DIR ) /autotest-m1.git/src clean boot.bin
237
- cp $(MILKYMIST_GIT_DIR ) /autotest-m1.git/src/boot.bin ./$@
255
+ MMDIR=$(MILKYMIST_GIT_DIR ) /milkymist \
256
+ make -C $(MILKYMIST_GIT_DIR ) /autotest-m1/src clean boot.bin
257
+ cp $(MILKYMIST_GIT_DIR ) /autotest-m1/src/boot.bin ./$@
238
258
239
259
boot.crc.bin :
240
- MMDIR=$(MILKYMIST_GIT_DIR ) /milkymist.git IMAGES_DIR=$(IMAGES_DIR ) \
241
- make -C $(MILKYMIST_GIT_DIR ) /autotest-m1.git /src clean boot.crc.bin
242
- cp $(MILKYMIST_GIT_DIR ) /autotest-m1.git /src/boot.crc.* .bin ./
260
+ MMDIR=$(MILKYMIST_GIT_DIR ) /milkymist IMAGES_DIR=$(IMAGES_DIR ) \
261
+ make -C $(MILKYMIST_GIT_DIR ) /autotest-m1/src clean boot.crc.bin
262
+ cp $(MILKYMIST_GIT_DIR ) /autotest-m1/src/boot.crc.* .bin ./
243
263
244
264
# ###
245
265
$(DL ) /$(LIBPNG ) .ok :
246
266
mkdir -p dl
247
- $(WGET ) $(DL ) /$(LIBPNG ) \
248
- http ://dfn.dl.sourceforge.net/ project/libpng/libpng15/$(LIBPNG_VERSION ) /$(LIBPNG )
267
+ $(WGET ) $(DL ) /$(LIBPNG ) " http://dfn.dl.sourceforge.net/ \
268
+ project/libpng/libpng15/$(LIBPNG_VERSION)/$(LIBPNG)"
249
269
touch $@
250
270
251
271
$(DL ) /$(LIBJPEG ) .ok :
252
272
mkdir -p dl
253
- $(WGET ) $(DL ) /$(LIBJPEG ) \
254
- http://www.ijg.org/files/$(LIBJPEG )
273
+ $(WGET ) $(DL ) /$(LIBJPEG ) " http://www.ijg.org/files/$( LIBJPEG) "
255
274
touch $@
256
275
257
276
$(DL ) /$(OPENJPEG ) .ok :
258
277
mkdir -p dl
259
- $(WGET ) $(DL ) /$(OPENJPEG ) \
260
- http://www.openjpeg.org/$(OPENJPEG )
278
+ $(WGET ) $(DL ) /$(OPENJPEG ) " http://www.openjpeg.org/$( OPENJPEG) "
261
279
touch $@
262
280
263
281
$(DL ) /$(JBIG2DEC ) .ok :
264
282
mkdir -p dl
265
283
$(WGET ) $(DL ) /$(JBIG2DEC ) \
266
- http://ghostscript.com/~giles/jbig2/jbig2dec/$(JBIG2DEC )
284
+ " http://ghostscript.com/~giles/jbig2/jbig2dec/$( JBIG2DEC) "
267
285
touch $@
268
286
269
287
$(DL ) /$(FREETYPE2 ) .ok :
270
288
mkdir -p dl
271
- $(WGET ) $(DL ) /$(FREETYPE2 ) \
272
- http://ufpr.dl.sourceforge.net/ project/freetype/freetype2/$(FREETYPE2_VERSION ) /$(FREETYPE2 )
289
+ $(WGET ) $(DL ) /$(FREETYPE2 ) " http://ufpr.dl.sourceforge.net/ \
290
+ project/freetype/freetype2/$(FREETYPE2_VERSION)/$(FREETYPE2)"
273
291
touch $@
274
292
275
293
$(DL ) /$(MUPDF ) .ok :
276
294
mkdir -p dl
277
- $(WGET ) $(DL ) /$(MUPDF ) \
278
- http ://mupdf.com/download/archive/$(MUPDF )
295
+ $(WGET ) $(DL ) /$(MUPDF ) " http://mupdf.com/download/archive/$( MUPDF) "
279
296
touch $@
280
297
281
298
$(DL ) /$(CURL ) .ok :
282
299
mkdir -p dl
283
- $(WGET ) $(DL ) /$(CURL ) \
284
- http://curl.haxx.se/download/$(CURL )
300
+ $(WGET ) $(DL ) /$(CURL ) " http://curl.haxx.se/download/$( CURL) "
285
301
touch $@
286
302
287
303
$(DL ) /$(EXPAT ) .ok :
288
304
mkdir -p dl
289
- $(WGET ) $(DL ) /$(EXPAT ) \
290
- http://download.sourceforge.net/ project/expat/expat/$(EXPAT_VERSION ) /expat-$(EXPAT_VERSION ) .tar.gz
305
+ $(WGET ) $(DL ) /$(EXPAT ) " http://download.sourceforge.net/ \
306
+ project/expat/expat/$(EXPAT_VERSION)/expat-$(EXPAT_VERSION).tar.gz"
291
307
touch $@
292
308
293
309
.PHONY : clean clean-rtems boot.crc.bin
0 commit comments