Added support for building openwrt branches, and started with the 8.09 branch
[nslu2-linux/master.git] / Makefile
bloba020c3f8471acd75dfb8474c5eea9dc42b826dad
1 # Makefile for the NSLU2 Linux development system
2 # Licensed under the GPL v2 or later
4 HOST_MACHINE:=$(shell uname -m | sed \
5 -e 's/i[3-9]86/i386/' \
6 -e 's/armv5tel/arm/' \
7 -e 's/armv5teb/armeb/' \
8 -e 's/armv5b/armeb/' \
11 BITBAKE_VERSION = tags/bitbake-1.8.10
13 .PHONY: all
14 all: update build
16 .PHONY: prefetch
17 prefetch: prefetch-unslung prefetch-slugos prefetch-angstrom prefetch-unslung prefetch-optware
19 .PHONY: build
20 build:
21 [ ! -e unslung ] || ${MAKE} unslung
22 [ ! -e slugos ] || ${MAKE} slugosbe slugosle
23 [ ! -e optware ] || ${MAKE} optware
24 [ ! -e openwrt ] || ${MAKE} openwrt
25 [ ! -e angstrom ] || ${MAKE} angstrombe angstromle
27 .PHONY: setup
28 ifneq ($(HOST_MACHINE),armeb)
29 setup: setup-common setup-bitbake setup-openembedded setup-unslung \
30 setup-slugos setup-angstrom setup-optware setup-openwrt
31 else
32 setup: setup-common setup-optware
33 endif
35 .PHONY: setup-developer
36 setup-developer: setup-common setup-bitbake setup-openembedded setup-unslung-developer setup-optware-developer setup-openwrt-developer
38 .PHONY: update
39 ifneq ($(HOST_MACHINE),armeb)
40 update: update-common update-bitbake update-openembedded update-unslung update-optware update-openwrt
41 else
42 update: update-common update-optware
43 endif
45 .PHONY: status
46 status: status-common status-bitbake status-openembedded status-unslung status-optware status-openwrt
48 .PHONY: clobber
49 clobber: clobber-unslung clobber-slugos clobber-angstrom \
50 clobber-optware clobber-openwrt
52 .PHONY: distclean
53 distclean: distclean-common distclean-bitbake distclean-openembedded \
54 distclean-unslung distclean-slugos distclean-angstrom \
55 distclean-optware distclean-releases distclean-openwrt
57 .PHONY: prefetch-unslung
58 prefetch-unslung: unslung/.configured
59 ( cd unslung ; ${MAKE} prefetch )
61 .PHONY: prefetch-optware
62 prefetch-optware:
63 [ ! -e optware ] || \
64 for f in optware/platforms/packages-*.mk ; do \
65 export target=`echo $$f | sed -e 's|optware/platforms/packages-\(.*\)\.mk|\1|'` ; \
66 [ ! -e optware/$$target ] || make prefetch-optware-$$target ; \
67 done
69 .PHONY: prefetch-optware-%
70 prefetch-optware-%: optware/%/.configured
71 ( cd optware/$* ; ${MAKE} source )
73 .PHONY: prefetch-unslung-%-beta
74 prefetch-unslung-%-beta: releases/unslung-%-beta/.configured
75 ( cd releases/unslung-$*-beta ; ${MAKE} prefetch )
77 .PHONY: prefetch-%
78 prefetch-%: %/.configured bitbake/.svn/entries openembedded/.git/config
79 ( cd $* ; ${MAKE} prefetch )
81 .PHONY: unslung unslung-image
82 unslung unslung-image: unslung/.configured
83 ( cd unslung ; \
84 ${MAKE} -k image )
86 .PHONY: slugosbe slugosbe-image
87 slugosbe slugosbe-image: slugos/.configured bitbake/.svn/entries openembedded/.git/config
88 ( cd slugos ; \
89 ${MAKE} setup-machine-nslu2be setup-distro-slugos setup-image-slugos-image ; \
90 ${MAKE} -k image )
92 .PHONY: slugosle slugosle-image
93 slugosle slugosle-image: slugos/.configured bitbake/.svn/entries openembedded/.git/config
94 ( cd slugos ; \
95 ${MAKE} setup-machine-nslu2le setup-distro-slugos setup-image-slugos-image ; \
96 ${MAKE} -k image )
98 .PHONY: angstrombe angstrombe-image
99 angstrombe angstrombe-image: angstrom/.configured bitbake/.svn/entries openembedded/.git/config
100 ( cd angstrom ; \
101 ${MAKE} setup-machine-ixp4xxbe setup-distro-angstrom-2008.1 setup-image-base-image ; \
102 ${MAKE} -k image )
104 .PHONY: angstromle angstromle-image
105 angstromle angstromle-image: angstrom/.configured bitbake/.svn/entries openembedded/.git/config
106 ( cd angstrom ; \
107 ${MAKE} setup-machine-ixp4xxle setup-distro-angstrom-2008.1 setup-image-base-image ; \
108 ${MAKE} -k image )
110 .PHONY: openwrt openwrt-image
111 openwrt openwrt-image: openwrt/.svn/entries
112 ( cd openwrt ; ${MAKE} -k world)
114 .PHONY: unslung-packages
115 unslung-packages: unslung/.configured
116 ( cd unslung ; \
117 ${MAKE} -k distro )
119 .PHONY: slugosbe-packages
120 slugosbe-packages: slugos/.configured bitbake/.svn/entries openembedded/.git/config
121 ( cd slugos ; \
122 ${MAKE} setup-machine-nslu2be setup-distro-slugos setup-image-slugos-image setup-packages-slugos-packages ; \
123 ${MAKE} -k distro )
125 .PHONY: slugosle-packages
126 slugosle-packages: slugos/.configured bitbake/.svn/entries openembedded/.git/config
127 ( cd slugos ; \
128 ${MAKE} setup-machine-nslu2le setup-distro-slugos setup-image-slugos-image setup-packages-slugos-packages ; \
129 ${MAKE} -k distro )
131 .PHONY: angstrombe-packages
132 angstrombe-packages: angstrom/.configured bitbake/.svn/entries openembedded/.git/config
133 ( cd angstrom ; \
134 ${MAKE} setup-machine-ixp4xxbe setup-distro-angstrom-2008.1 setup-image-base-image setup-packages-meta-angstrom ; \
135 ${MAKE} -k distro )
137 .PHONY: angstrombe-packages
138 angstromle-packages: angstrom/.configured bitbake/.svn/entries openembedded/.git/config
139 ( cd angstrom ; \
140 ${MAKE} setup-machine-ixp4xxle setup-distro-angstrom-2008.1 setup-image-base-image setup-packages-meta-angstrom ; \
141 ${MAKE} -k distro )
143 .PHONY: openwrt-packages
144 openwrt-packages: openwrt/.svn/entries
145 ( cd openwrt ; ${MAKE} -k world )
147 .PHONY: %-packages
148 %-packages: %/.configured bitbake/.svn/entries openembedded/.git/config
149 ( cd $* ; ${MAKE} -k distro)
151 .PHONY: openwrt-index
152 openwrt-index: openwrt/.svn/entries
153 ( cd openwrt ; ${MAKE} -k package/index )
155 .PHONY: %-index
156 %-index: %/.configured bitbake/.svn/entries openembedded/.git/config
157 ( cd $* ; ${MAKE} -k index)
159 .PHONY: optware
160 optware:
161 [ ! -e optware ] || \
162 for f in optware/platforms/packages-*.mk ; do \
163 export target=`echo $$f | sed -e 's|optware/platforms/packages-\(.*\)\.mk|\1|'` ; \
164 [ ! -e optware/$$target ] || make optware-$$target ; \
165 done
167 .PHONY: optware-%
168 optware-%: optware/%/.configured
169 ( cd optware/$* ; ${MAKE} autoclean ; ${MAKE} -k )
171 slugosle-%-beta: update-slugos-%-beta build-slugosle-%-beta
172 echo "$@ completed"
174 slugosbe-%-beta: update-slugos-%-beta build-slugosbe-%-beta
175 echo "$@ completed"
177 unslung-%-beta: update-unslung-%-beta build-unslung-%-beta
178 echo "$@ completed"
180 openwrt-%: update-openwrt-% build-openwrt-%
181 echo "$@ completed"
183 # The following two targets are deprecated,
184 # but are preserved for building old releases.
186 debianslug-%-beta: update-slugos-%-beta build-debianslug-%-beta
187 echo "$@ completed"
189 openslug-%-beta: update-slugos-%-beta build-openslug-%-beta
190 echo "$@ completed"
192 build-slugosle-%-beta: releases/slugos-%-beta/.configured
193 ( cd releases/slugos-$*-beta ; ${MAKE} -k slugosle-distro )
195 build-slugosbe-%-beta: releases/slugos-%-beta/.configured
196 ( cd releases/slugos-$*-beta ; ${MAKE} -k slugosbe-distro )
198 build-unslung-%-beta: releases/unslung-%-beta/.configured
199 ( cd releases/unslung-$*-beta ; ${MAKE} -k unslung-distro )
201 build-openwrt-%: releases/openwrt-%/.configured
202 ( cd releases/openwrt-$* ; ${MAKE} -k world package/index )
204 # The following two targets are deprecated,
205 # but are preserved for building old releases.
207 build-debianslug-%-beta: releases/slugos-%-beta/.configured
208 ( cd releases/slugos-$*-beta ; ${MAKE} -k debianslug-distro )
210 build-openslug-%-beta: releases/slugos-%-beta/.configured
211 ( cd releases/slugos-$*-beta ; ${MAKE} -k openslug-distro )
213 OE_SNAPSHOT_SITE := http://www.openembedded.org/snapshots
215 .PHONY: setup-common
216 .PRECIOUS: common/.git/config
217 setup-common common/.git/config:
218 [ -e common/.git/config ] || \
219 ( git clone git://repo.or.cz/nslu2-linux/master.git common && \
220 rm -f Makefile && \
221 ln -s common/Makefile Makefile )
222 touch common/.git/config
224 .PHONY: setup-bitbake
225 .PRECIOUS: bitbake/.svn/entries
226 setup-bitbake bitbake/.svn/entries:
227 [ -e bitbake/.svn/entries ] || \
228 ( svn co svn://svn.berlios.de/bitbake/${BITBAKE_VERSION} bitbake )
229 touch bitbake/.svn/entries
231 .PHONY: setup-openembedded
232 .PRECIOUS: openembedded/.git/config
233 setup-openembedded openembedded/.git/config:
234 [ -e openembedded/.git/config ] || \
235 ( git clone git://git.openembedded.net/openembedded openembedded ; \
236 cd openembedded ; \
237 git config --add remote.origin.fetch '+refs/heads/*:refs/remotes/*' )
238 ( cd openembedded && \
239 ( git branch | egrep -e ' org.openembedded.dev$$' > /dev/null || \
240 git checkout -b org.openembedded.dev --track origin/org.openembedded.dev ))
241 ( cd openembedded && git checkout org.openembedded.dev )
242 touch openembedded/.git/config
244 .PHONY: setup-unslung
245 .PRECIOUS: unslung/.svn/entries
246 setup-unslung unslung/.svn/entries:
247 [ -e downloads ] || ( mkdir -p downloads )
248 [ -e unslung/.svn/entries ] || \
249 ( svn co http://svn.nslu2-linux.org/svnroot/unslung/trunk unslung )
250 touch unslung/.svn/entries
252 .PHONY: setup-unslung-%
253 setup-unslung-%: unslung/.svn/entries
254 ${MAKE} unslung/$*/.configured
256 .PHONY: setup-unslung-developer
257 setup-unslung-developer:
258 [ ! -e unslung ] || ( mv unslung unslung-user )
259 [ -e unslung/.svn/entries ] || \
260 ( svn co https://svn.nslu2-linux.org/svnroot/unslung/trunk unslung )
261 ${MAKE} setup-unslung
263 .PRECIOUS: unslung/.configured
264 unslung/.configured: common/.git/config unslung/.svn/entries
265 [ -e downloads ] || ( mkdir -p downloads )
266 [ -e unslung/downloads ] || ( cd unslung ; ln -sf ../downloads . )
267 rm -rf unslung/tmp/cache
268 touch unslung/.configured
270 .PHONY: setup-optware
271 .PRECIOUS: optware/.svn/entries
272 setup-optware optware/.svn/entries:
273 [ -e downloads ] || ( mkdir -p downloads )
274 [ -e optware/.svn/entries ] || \
275 ( svn co http://svn.nslu2-linux.org/svnroot/optware/trunk optware )
276 touch optware/.svn/entries
278 .PHONY: setup-optware-%
279 setup-optware-%: optware/.svn/entries
280 ${MAKE} optware/$*/.configured
282 .PHONY: setup-optware-developer
283 setup-optware-developer:
284 [ ! -e optware ] || ( mv optware optware-user )
285 [ -e optware/.svn/entries ] || \
286 ( svn co https://svn.nslu2-linux.org/svnroot/optware/trunk optware )
287 ${MAKE} setup-optware
289 # This pattern rule has to come before the subsequent %/.configured openembedded pattern rule.
290 .PRECIOUS: optware/%/.configured
291 optware/%/.configured: optware/.svn/entries
292 [ -e downloads ] || ( mkdir -p downloads )
293 [ -e optware/$*/Makefile ] || ( \
294 mkdir -p optware/$* ; \
295 echo "OPTWARE_TARGET=$*" > optware/$*/Makefile ; \
296 echo "include ../Makefile" >> optware/$*/Makefile ; \
297 ln -s ../../downloads optware/$*/downloads ; \
298 ln -s ../make optware/$*/make ; \
299 ln -s ../scripts optware/$*/scripts ; \
300 ln -s ../sources optware/$*/sources ; \
302 touch optware/$*/.configured
304 .PHONY: setup-openwrt
305 .PRECIOUS: openwrt/.svn/entries
306 setup-openwrt openwrt/.svn/entries: common/.git/config
307 [ -e downloads ] || ( mkdir -p downloads )
308 [ -e openwrt/Makefile ] || \
309 ( svn co https://svn.openwrt.org/openwrt/trunk openwrt )
310 [ -e openwrt/dl ] || ( ln -s ../downloads openwrt/dl )
311 [ -e openwrt/.config ] || ( cp common/conf/openwrt.config openwrt/.config )
312 ( cd openwrt ; \
313 ./scripts/feeds update ; \
314 ./scripts/feeds install -a ; \
315 ${MAKE} oldconfig )
316 touch openwrt/.svn/entries
318 .PHONY: setup-openwrt-developer
319 setup-openwrt-developer:
320 [ ! -e openwrt ] || ( mv openwrt openwrt-user )
321 svn co https://${LOGNAME}@svn.openwrt.org/openwrt/trunk openwrt
322 ${MAKE} setup-openwrt
324 # This pattern rule has to come before the subsequent %/.configured openembedded pattern rule.
325 .PHONY: setup-openwrt-%
326 .PRECIOUS: releases/openwrt-%/.configured
327 setup-openwrt-% releases/openwrt-%/.configured:
328 [ -e downloads ] || ( mkdir -p downloads )
329 [ -e releases/openwrt-$* ] || ( \
330 mkdir -p releases ; \
331 ( svn checkout https://svn.openwrt.org/openwrt/tags/$* \
332 releases/openwrt-$* | \
333 svn checkout https://svn.openwrt.org/openwrt/branches/$* \
334 releases/openwrt-$* ) \
336 [ -e releases/openwrt-$*/dl ] || ln -s ../../downloads releases/openwrt-$*/dl
337 [ -e releases/openwrt-$*/.config ] || \
338 ( cp common/conf/openwrt-$*.config releases/openwrt-$*/.config )
339 touch releases/openwrt-$*/.configured
341 .PHONY: setup-slugos setup-angstrom
342 setup-slugos setup-angstrom: setup-%:
343 rm -rf $*/.configured
344 ${MAKE} $*/.configured
346 # This pattern rule has to come before the subsequent %/.configured openembedded pattern rule.
347 .PHONY: setup-unslung-%-beta
348 .PRECIOUS: releases/unslung-%-beta/.configured
349 setup-unslung-%-beta releases/unslung-%-beta/.configured:
350 [ -e releases/unslung-$*-beta ] || ( \
351 mkdir -p releases ; \
352 svn checkout http://svn.nslu2-linux.org/svnroot/unslung/releases/unslung-$*-beta \
353 releases/unslung-$*-beta \
355 ( cd releases/unslung-$*-beta ; ${MAKE} setup-env )
356 [ -e downloads ] || ( mkdir -p downloads )
357 [ -e releases/unslung-$*-beta/downloads ] || \
358 ln -s ../../downloads releases/unslung-$*-beta/
359 touch releases/unslung-$*-beta/.configured
361 .PHONY: setup-unslung-%-beta-developer
362 setup-unslung-%-beta-developer:
363 [ -e releases/unslung-$*-beta ] || ( \
364 mkdir -p releases ; \
365 svn checkout https://svn.nslu2-linux.org/svnroot/unslung/releases/unslung-$*-beta \
366 releases/unslung-$*-beta \
368 ${MAKE} setup-unslung-$*-beta
370 # This pattern rule has to come before the subsequent %/.configured openembedded pattern rule.
371 .PHONY: setup-slugos-%-beta
372 .PRECIOUS: releases/slugos-%-beta/.configured
373 setup-slugos-%-beta releases/slugos-%-beta/.configured:
374 [ -e releases/slugos-$*-beta ] || ( \
375 mkdir -p releases ; \
376 svn checkout http://svn.nslu2-linux.org/svnroot/slugos/releases/slugos-$*-beta \
377 releases/slugos-$*-beta \
379 ( cd releases/slugos-$*-beta ; ${MAKE} setup-env )
380 [ -e downloads ] || ( mkdir -p downloads )
381 [ -e releases/slugos-$*-beta/downloads ] || \
382 ln -s ../../downloads releases/slugos-$*-beta/
383 touch releases/slugos-$*-beta/.configured
385 .PHONY: setup-slugos-%-beta-developer
386 setup-slugos-%-beta-developer:
387 [ -e releases/slugos-$*-beta ] || ( \
388 mkdir -p releases ; \
389 svn checkout https://svn.nslu2-linux.org/svnroot/slugos/releases/slugos-$*-beta \
390 releases/slugos-$*-beta \
392 ${MAKE} setup-slugos-$*-beta
394 .PRECIOUS: %/.configured
395 %/.configured: common/.git/config
396 [ -d $* ] || ( mkdir -p $* )
397 [ -e downloads ] || ( mkdir -p downloads )
398 [ -e $*/Makefile ] || ( cd $* ; ln -sf ../common/openembedded.mk Makefile )
399 [ -e $*/setup-env ] || ( cd $* ; ln -sf ../common/setup-env . )
400 [ -e $*/downloads ] || ( cd $* ; ln -sf ../downloads . )
401 [ -e $*/bitbake ] || ( cd $* ; ln -sf ../bitbake . )
402 [ -e $*/openembedded ] || ( cd $* ; ln -sf ../openembedded . )
403 [ -d $*/conf ] || ( mkdir -p $*/conf )
404 [ -e $*/conf/local.conf.sample ] || \
405 ( cd $*/conf ; ln -sf ../../common/conf/local.conf.sample . )
406 [ -e $*/conf/site.conf ] || ( cd $*/conf ; ln -sf ../../common/conf/site.conf . )
407 [ -e $*/conf/auto.conf ] || ( \
408 echo "DISTRO=\"$*\"" > $*/conf/auto.conf ; \
409 echo "MACHINE=\"nslu2be\"" >> $*/conf/auto.conf ; \
410 echo "IMAGE_TARGET=\"$*-image\"" >> $*/conf/auto.conf ; \
411 echo "DISTRO_TARGET=\"$*-packages\"" >> $*/conf/auto.conf ; \
413 [ -e $*/conf/local.conf ] || ( cd $*/conf ; touch local.conf )
414 rm -rf $*/tmp/cache
415 touch $*/.configured
417 .PHONY: setup-host-debian
418 setup-host-debian:
419 sudo apt-get install \
420 autoconf automake1.9 \
421 bison build-essential bzip2 \
422 ccache cvs \
423 devio diffstat \
424 flex \
425 gawk git-core \
426 help2man \
427 libncurses5-dev libtool \
428 make \
429 python-psyco \
430 quilt \
431 sed subversion \
432 texi2html texinfo \
433 unzip \
434 xmlto \
435 zlib1g-dev \
437 foo: \
438 docbook \
439 g++ gcj gfortran \
440 libglib2.0-dev \
441 m4 pkg-config python python-dev python2.4 python2.4-dev \
442 sharutils
444 .PHONY: setup-host-ubuntu
445 setup-host-ubuntu:
446 sudo apt-get install \
447 autoconf automake automake1.9 \
448 bison bzip2 \
449 ccache cogito cvs \
450 devio diffstat docbook \
451 ed \
452 fastjar flex \
453 gcc gcc-3.3 g++ gawk gcj gettext gfortran git git-core groff-base \
454 help2man \
455 intltool \
456 jikes \
457 libc6-dev libglib2.0-dev libncurses5-dev libssl-dev libtool \
458 libxml-parser-perl \
459 m4 make \
460 openssl \
461 patch pkg-config python python-dev python2.4 python2.4-dev \
462 quilt \
463 rcs ruby \
464 sdcc sed sharutils subversion sun-java5-jdk sysutils \
465 tcl8.4 texinfo texi2html \
466 unzip \
467 zip zlib1g-dev
468 @echo
469 @echo "To get python2.4-psyco (Recommended to speed up builds), please read"
470 @echo "http://ubuntuguide.org/#extrarepositories"
471 @echo "NOTE: python2.4-psyco will not work on 64-bit archs"
474 .PHONY: setup-host-gentoo
475 setup-host-gentoo:
476 su - -c " \
477 emerge -n \
478 autoconf automake \
479 bison \
480 ccache \
481 cvs \
482 flex \
483 glib \
484 libtool \
485 m4 \
486 make \
487 patch \
488 pkgconfig \
489 sed \
490 sharutils \
491 sys-apps/texinfo \
492 unzip \
493 psyco \
494 subversion \
495 dos2unix \
496 bzip2"
498 .PHONY: setup-host-centos
499 setup-host-centos:
500 sudo yum install \
501 bzip2 \
502 cvs \
503 diffstat \
504 diffutils \
505 gawk \
506 gcc-c++ \
507 git \
508 gzip \
509 makeinfo \
510 patch \
511 python-sqlite2 \
512 quilt \
513 rpm-build \
514 subversion \
515 tar \
516 tetex \
517 texi2html \
518 texinfo
519 sudo rpm -ivh http://www.python.org/pyvault/centos-4-i386/help2man-1.29-1.noarch.rpm
521 .PHONY: update-common
522 update-common: common/.git/config
523 ( cd common ; git pull )
525 .PHONY: update-bitbake
526 update-bitbake: bitbake/.svn/entries
527 ( cd bitbake ; svn up )
529 .PHONY: update-openembedded
530 update-openembedded: openembedded/.git/config
531 ( cd openembedded ; git pull )
533 .PHONY: update-unslung
534 update-unslung: unslung/.svn/entries
535 ( cd unslung ; svn update )
537 .PHONY: update-optware
538 update-optware: optware/.svn/entries
539 ( cd optware ; svn update )
541 .PHONY: update-openwrt
542 update-openwrt: openwrt/.svn/entries
543 ( cd openwrt ; svn update ; ./scripts/feeds update )
545 update-slugos-%-beta: releases/slugos-%-beta/.configured
546 ( cd releases/slugos-$*-beta ; svn update )
548 update-unslung-%-beta: releases/unslung-%-beta/.configured
549 ( cd releases/unslung-$*-beta ; svn update )
551 update-openwrt-%: releases/openwrt-%/.configured
552 ( cd releases/openwrt-$* ; svn update )
554 .PHONY: check-makefile
555 check-makefile:
556 ( wget -q -O - http://www.nslu2-linux.org/Makefile | diff -u Makefile - )
558 .PHONY: status-common
559 status-common: common/.git/config
560 ( cd common ; git diff --stat )
562 .PHONY: status-bitbake
563 status-bitbake: bitbake/.svn/entries
564 ( cd bitbake ; svn status )
566 .PHONY: status-openembedded
567 status-openembedded: openembedded/.git/config
568 ( cd openembedded ; git diff --stat )
570 .PHONY: status-unslung
571 status-unslung: unslung/.svn/entries
572 ( cd unslung ; svn status )
574 .PHONY: status-optware
575 status-optware: optware/.svn/entries
576 ( cd optware ; svn status )
578 .PHONY: status-openwrt
579 status-openwrt: openwrt/.svn/entries
580 ( cd openwrt ; svn status )
582 status-slugosbe-%-beta:
583 ( cd releases/slugosbe-$*-beta ; svn status )
585 status-unslung-%-beta:
586 ( cd releases/unslung-$*-beta ; svn status )
588 .PHONY: clobber-unslung
589 clobber-unslung:
590 [ ! -e unslung/Makefile ] || ( cd unslung ; ${MAKE} clobber )
592 .PHONY: clobber-slugos
593 clobber-slugos:
594 [ ! -e slugos/Makefile ] || ( cd slugos ; ${MAKE} clobber )
596 .PHONY: clobber-angstrom
597 clobber-angstrom:
598 [ ! -e angstrom/Makefile ] || ( cd angstrom ; ${MAKE} clobber )
600 .PHONY: clobber-openwrt
601 clobber-openwrt-%:
602 [ ! -e openwrt/Makefile ] || ( cd openwrt ; ${MAKE} clean )
604 .PHONY: clobber-optware
605 clobber-optware:
606 [ ! -e optware ] || \
607 for f in optware/platforms/packages-*.mk ; do \
608 export target=`echo $$f | sed -e 's|optware/platforms/packages-\(.*\)\.mk|\1|'` ; \
609 [ ! -e optware/$$target ] || make clobber-optware-$$target ; \
610 done
612 .PHONY: clobber-optware-%
613 clobber-optware-%:
614 [ ! -e optware/$*/Makefile ] || ( cd optware/$* ; ${MAKE} distclean )
616 .PHONY: distclean-common
617 distclean-common:
618 rm -rf common
620 .PHONY: distclean-bitbake
621 distclean-bitbake:
622 rm -rf bitbake
624 .PHONY: distclean-openembedded
625 distclean-openembedded:
626 rm -rf openembedded
628 .PHONY: distclean-unslung
629 distclean-unslung:
630 rm -rf unslung
632 .PHONY: distclean-slugos
633 distclean-slugos:
634 rm -rf slugos
636 .PHONY: distclean-angstrom
637 distclean-angstrom:
638 rm -rf angstrom
640 .PHONY: distclean-openwrt
641 distclean-openwrt:
642 rm -rf openwrt
644 .PHONY: distclean-optware
645 distclean-optware:
646 rm -rf optware
648 .PHONY: distclean-releases
649 distclean-releases:
650 rm -rf releases
652 .PHONY: distclean
653 distclean: distclean-common distclean-bitbake distclean-openembedded distclean-openwrt \
654 distclean-unslung distclean-slugos distclean-angstrom distclean-optware \
655 distclean-releases
656 rm -rf downloads
658 # Targets for use by those with write access to the repositories
660 .PHONY: push
661 push: push-common push-openembedded
663 .PHONY: push-common
664 push-common: update-common
665 ( cd common ; git push ssh://repo.or.cz/srv/git/nslu2-linux/master.git )
667 .PHONY: push-openembedded
668 push-openembedded: update-openembedded
669 ( cd openembedded ; git push ssh://git@git.openembedded.net/openembedded )
671 # End of Makefile