1# 2# (C) Copyright 2000, 2001, 2002 3# Wolfgang Denk, DENX Software Engineering, wd@denx.de. 4# 5# See file CREDITS for list of people who contributed to this 6# project. 7# 8# This program is free software; you can redistribute it and/or 9# modify it under the terms of the GNU General Public License as 10# published by the Free Software Foundation; either version 2 of 11# the License, or (at your option) any later version. 12# 13# This program is distributed in the hope that it will be useful, 14# but WITHOUT ANY WARRANTY; without even the implied warranty of 15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16# GNU General Public License for more details. 17# 18# You should have received a copy of the GNU General Public License 19# along with this program; if not, write to the Free Software 20# Foundation, Inc., 59 Temple Place, Suite 330, Boston, 21# MA 02111-1307 USA 22# 23 24HOSTARCH := $(shell uname -m | \ 25 sed -e s/i.86/i386/ \ 26 -e s/sun4u/sparc64/ \ 27 -e s/arm.*/arm/ \ 28 -e s/sa110/arm/ \ 29 -e s/powerpc/ppc/ \ 30 -e s/macppc/ppc/) 31 32HOSTOS := $(shell uname -s | tr A-Z a-z | \ 33 sed -e 's/\(cygwin\).*/cygwin/') 34 35export HOSTARCH 36 37# Deal with colliding definitions from tcsh etc. 38VENDOR= 39 40######################################################################### 41 42TOPDIR := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi) 43export TOPDIR 44 45ifeq (include/config.mk,$(wildcard include/config.mk)) 46# load ARCH, BOARD, and CPU configuration 47include include/config.mk 48export ARCH CPU BOARD VENDOR 49# load other configuration 50include $(TOPDIR)/config.mk 51 52ifndef CROSS_COMPILE 53ifeq ($(HOSTARCH),ppc) 54CROSS_COMPILE = 55else 56## #ifeq ($(CPU),mpc8xx) 57## CROSS_COMPILE = ppc_8xx- 58## #endif 59## #ifeq ($(CPU),ppc4xx) 60## #CROSS_COMPILE = ppc_4xx- 61## #endif 62## #ifeq ($(CPU),mpc824x) 63## #CROSS_COMPILE = ppc_82xx- 64## #endif 65## #ifeq ($(CPU),mpc8260) 66## #CROSS_COMPILE = ppc_82xx- 67## #endif 68## #ifeq ($(CPU),74xx_7xx) 69## #CROSS_COMPILE = ppc_74xx-) 70## #endif 71ifeq ($(ARCH),ppc) 72CROSS_COMPILE = ppc_8xx- 73endif 74ifeq ($(ARCH),arm) 75CROSS_COMPILE = arm_920TDI- 76endif 77endif 78endif 79 80export CROSS_COMPILE 81 82# The "tools" are needed early, so put this first 83SUBDIRS = tools \ 84 lib_generic \ 85 lib_$(ARCH) \ 86 cpu/$(CPU) \ 87 board/$(BOARDDIR) \ 88 common \ 89 disk \ 90 fs \ 91 net \ 92 rtc \ 93 dtt \ 94 drivers \ 95 post \ 96 post/cpu \ 97 examples 98 99######################################################################### 100# U-Boot objects....order is important (i.e. start must be first) 101 102OBJS = cpu/$(CPU)/start.o 103 104ifeq ($(CPU),ppc4xx) 105OBJS += cpu/$(CPU)/resetvec.o 106endif 107 108LIBS = board/$(BOARDDIR)/lib$(BOARD).a 109LIBS += cpu/$(CPU)/lib$(CPU).a 110LIBS += lib_$(ARCH)/lib$(ARCH).a 111LIBS += fs/jffs2/libjffs2.a 112LIBS += net/libnet.a 113LIBS += disk/libdisk.a 114LIBS += rtc/librtc.a 115LIBS += dtt/libdtt.a 116LIBS += drivers/libdrivers.a 117LIBS += post/libpost.a post/cpu/libcpu.a 118LIBS += common/libcommon.a 119LIBS += lib_generic/libgeneric.a 120 121######################################################################### 122 123all: u-boot.srec u-boot.bin System.map 124 125install: all 126 cp u-boot.bin /tftpboot/u-boot.bin 127 cp u-boot.bin /net/sam/tftpboot/u-boot.bin 128 129u-boot.srec: u-boot 130 $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@ 131 132u-boot.bin: u-boot 133 $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@ 134 135u-boot.dis: u-boot 136 $(OBJDUMP) -d $< > $@ 137 138u-boot: depend subdirs $(OBJS) $(LIBS) $(LDSCRIPT) 139 $(LD) $(LDFLAGS) $(OBJS) $(LIBS) $(LIBS) -Map u-boot.map -o u-boot 140 141subdirs: 142 @for dir in $(SUBDIRS) ; do $(MAKE) -C $$dir || exit 1 ; done 143 144depend dep: 145 @for dir in $(SUBDIRS) ; do $(MAKE) -C $$dir .depend ; done 146 147tags: 148 ctags -w `find $(SUBDIRS) include \ 149 \( -name CVS -prune \) -o \( -name '*.[ch]' -print \)` 150 151etags: 152 etags -a `find $(SUBDIRS) include \ 153 \( -name CVS -prune \) -o \( -name '*.[ch]' -print \)` 154 155System.map: u-boot 156 @$(NM) $< | \ 157 grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \ 158 sort > System.map 159 160######################################################################### 161else 162all install u-boot u-boot.srec depend dep: 163 @echo "System not configured - see README" >&2 164 @ exit 1 165endif 166 167######################################################################### 168 169unconfig: 170 rm -f include/config.h include/config.mk 171 172#======================================================================== 173# PowerPC 174#======================================================================== 175######################################################################### 176## MPC8xx Systems 177######################################################################### 178 179ADS860_config: unconfig 180 @./mkconfig $(@:_config=) ppc mpc8xx fads 181 182AMX860_config : unconfig 183 @./mkconfig $(@:_config=) ppc mpc8xx amx860 westel 184 185c2mon_config: unconfig 186 @./mkconfig $(@:_config=) ppc mpc8xx c2mon 187 188CCM_config: unconfig 189 @./mkconfig $(@:_config=) ppc mpc8xx CCM siemens 190 191cogent_mpc8xx_config: unconfig 192 @./mkconfig $(@:_config=) ppc mpc8xx cogent 193 194ESTEEM192E_config: unconfig 195 @./mkconfig $(@:_config=) ppc mpc8xx esteem192e 196 197ETX094_config : unconfig 198 @./mkconfig $(@:_config=) ppc mpc8xx etx094 199 200FADS823_config \ 201FADS850SAR_config \ 202FADS860T_config: unconfig 203 @./mkconfig $(@:_config=) ppc mpc8xx fads 204 205FLAGADM_config: unconfig 206 @./mkconfig $(@:_config=) ppc mpc8xx flagadm 207 208GEN860T_config: unconfig 209 @./mkconfig $(@:_config=) ppc mpc8xx gen860t 210 211GENIETV_config: unconfig 212 @./mkconfig $(@:_config=) ppc mpc8xx genietv 213 214GTH_config: unconfig 215 @./mkconfig $(@:_config=) ppc mpc8xx gth 216 217hermes_config : unconfig 218 @./mkconfig $(@:_config=) ppc mpc8xx hermes 219 220IAD210_config: unconfig 221 @./mkconfig $(@:_config=) ppc mpc8xx IAD210 siemens 222 223xtract_ICU862 = $(subst _100MHz,,$(subst _config,,$1)) 224 225ICU862_100MHz_config \ 226ICU862_config: unconfig 227 @ >include/config.h 228 @[ -z "$(findstring _100MHz,$@)" ] || \ 229 { echo "#define CONFIG_100MHz" >>include/config.h ; \ 230 echo "... with 100MHz system clock" ; \ 231 } 232 @./mkconfig -a $(call xtract_ICU862,$@) ppc mpc8xx icu862 233 234IP860_config : unconfig 235 @./mkconfig $(@:_config=) ppc mpc8xx ip860 236 237IVML24_256_config \ 238IVML24_128_config \ 239IVML24_config: unconfig 240 @ >include/config.h 241 @[ -z "$(findstring IVML24_config,$@)" ] || \ 242 { echo "#define CONFIG_IVML24_16M" >>include/config.h ; \ 243 } 244 @[ -z "$(findstring IVML24_128_config,$@)" ] || \ 245 { echo "#define CONFIG_IVML24_32M" >>include/config.h ; \ 246 } 247 @[ -z "$(findstring IVML24_256_config,$@)" ] || \ 248 { echo "#define CONFIG_IVML24_64M" >>include/config.h ; \ 249 } 250 @./mkconfig -a IVML24 ppc mpc8xx ivm 251 252IVMS8_256_config \ 253IVMS8_128_config \ 254IVMS8_config: unconfig 255 @ >include/config.h 256 @[ -z "$(findstring IVMS8_config,$@)" ] || \ 257 { echo "#define CONFIG_IVMS8_16M" >>include/config.h ; \ 258 } 259 @[ -z "$(findstring IVMS8_128_config,$@)" ] || \ 260 { echo "#define CONFIG_IVMS8_32M" >>include/config.h ; \ 261 } 262 @[ -z "$(findstring IVMS8_256_config,$@)" ] || \ 263 { echo "#define CONFIG_IVMS8_64M" >>include/config.h ; \ 264 } 265 @./mkconfig -a IVMS8 ppc mpc8xx ivm 266 267LANTEC_config : unconfig 268 @./mkconfig $(@:_config=) ppc mpc8xx lantec 269 270lwmon_config: unconfig 271 @./mkconfig $(@:_config=) ppc mpc8xx lwmon 272 273MBX_config \ 274MBX860T_config: unconfig 275 @./mkconfig $(@:_config=) ppc mpc8xx mbx8xx 276 277MHPC_config: unconfig 278 @./mkconfig $(@:_config=) ppc mpc8xx mhpc eltec 279 280MVS1_config : unconfig 281 @./mkconfig $(@:_config=) ppc mpc8xx mvs1 282 283NETVIA_config: unconfig 284 @./mkconfig $(@:_config=) ppc mpc8xx netvia 285 286NX823_config: unconfig 287 @./mkconfig $(@:_config=) ppc mpc8xx nx823 288 289pcu_e_config: unconfig 290 @./mkconfig $(@:_config=) ppc mpc8xx pcu_e siemens 291 292R360MPI_config: unconfig 293 @./mkconfig $(@:_config=) ppc mpc8xx r360mpi 294 295RPXClassic_config: unconfig 296 @./mkconfig $(@:_config=) ppc mpc8xx RPXClassic 297 298RPXlite_config: unconfig 299 @./mkconfig $(@:_config=) ppc mpc8xx RPXlite 300 301RRvision_config: unconfig 302 @./mkconfig $(@:_config=) ppc mpc8xx RRvision 303 304RRvision_LCD_config: unconfig 305 @echo "#define CONFIG_LCD" >include/config.h 306 @echo "#define CONFIG_SHARP_LQ104V7DS01" >>include/config.h 307 @./mkconfig -a RRvision ppc mpc8xx RRvision 308 309SM850_config : unconfig 310 @./mkconfig $(@:_config=) ppc mpc8xx tqm8xx 311 312SPD823TS_config: unconfig 313 @./mkconfig $(@:_config=) ppc mpc8xx spd8xx 314 315SXNI855T_config: unconfig 316 @./mkconfig $(@:_config=) ppc mpc8xx sixnet 317 318# Play some tricks for configuration selection 319# All boards can come with 50 MHz (default), 66MHz or 80MHz clock, 320# but only 855 and 860 boards may come with FEC 321# and 823 boards may have LCD support 322xtract_8xx = $(subst _66MHz,,$(subst _80MHz,,$(subst _LCD,,$(subst _FEC,,$(subst _config,,$1))))) 323 324FPS850L_config \ 325FPS860L_config \ 326TQM823L_config \ 327TQM823L_66MHz_config \ 328TQM823L_80MHz_config \ 329TQM823L_LCD_config \ 330TQM823L_LCD_66MHz_config \ 331TQM823L_LCD_80MHz_config \ 332TQM850L_config \ 333TQM850L_66MHz_config \ 334TQM850L_80MHz_config \ 335TQM855L_config \ 336TQM855L_66MHz_config \ 337TQM855L_80MHz_config \ 338TQM855L_FEC_config \ 339TQM855L_FEC_66MHz_config \ 340TQM855L_FEC_80MHz_config \ 341TQM860L_config \ 342TQM860L_66MHz_config \ 343TQM860L_80MHz_config \ 344TQM860L_FEC_config \ 345TQM860L_FEC_66MHz_config \ 346TQM860L_FEC_80MHz_config: unconfig 347 @ >include/config.h 348 @[ -z "$(findstring _FEC,$@)" ] || \ 349 { echo "#define CONFIG_FEC_ENET" >>include/config.h ; \ 350 echo "... with FEC support" ; \ 351 } 352 @[ -z "$(findstring _66MHz,$@)" ] || \ 353 { echo "#define CONFIG_66MHz" >>include/config.h ; \ 354 echo "... with 66MHz system clock" ; \ 355 } 356 @[ -z "$(findstring _80MHz,$@)" ] || \ 357 { echo "#define CONFIG_80MHz" >>include/config.h ; \ 358 echo "... with 80MHz system clock" ; \ 359 } 360 @[ -z "$(findstring _LCD,$@)" ] || \ 361 { echo "#define CONFIG_LCD" >>include/config.h ; \ 362 echo "#define CONFIG_NEC_NL6648BC20" >>include/config.h ; \ 363 echo "... with LCD display" ; \ 364 } 365 @./mkconfig -a $(call xtract_8xx,$@) ppc mpc8xx tqm8xx 366 367TTTech_config: unconfig 368 @echo "#define CONFIG_LCD" >include/config.h 369 @echo "#define CONFIG_SHARP_LQ104V7DS01" >>include/config.h 370 @./mkconfig -a TQM823L ppc mpc8xx tqm8xx 371 372######################################################################### 373## PPC4xx Systems 374######################################################################### 375 376ADCIOP_config: unconfig 377 @./mkconfig $(@:_config=) ppc ppc4xx adciop esd 378 379AR405_config: unconfig 380 @./mkconfig $(@:_config=) ppc ppc4xx ar405 esd 381 382CANBT_config: unconfig 383 @./mkconfig $(@:_config=) ppc ppc4xx canbt esd 384 385CPCI405_config \ 386CPCI4052_config: unconfig 387 @./mkconfig $(@:_config=) ppc ppc4xx cpci405 esd 388 @echo "BOARD_REVISION = $(@:_config=)" >>include/config.mk 389 390CPCI440_config: unconfig 391 @./mkconfig $(@:_config=) ppc ppc4xx cpci440 esd 392 393CPCIISER4_config: unconfig 394 @./mkconfig $(@:_config=) ppc ppc4xx cpciiser4 esd 395 396CRAYL1_config:unconfig 397 @./mkconfig $(@:_config=) ppc ppc4xx L1 cray 398 399DASA_SIM_config: unconfig 400 @./mkconfig $(@:_config=) ppc ppc4xx dasa_sim esd 401 402DU405_config: unconfig 403 @./mkconfig $(@:_config=) ppc ppc4xx du405 esd 404 405EBONY_config:unconfig 406 @./mkconfig $(@:_config=) ppc ppc4xx ebony 407 408ERIC_config:unconfig 409 @./mkconfig $(@:_config=) ppc ppc4xx eric 410 411MIP405_config:unconfig 412 @./mkconfig $(@:_config=) ppc ppc4xx mip405 mpl 413 414ML2_config:unconfig 415 @./mkconfig $(@:_config=) ppc ppc4xx ml2 416 417OCRTC_config \ 418ORSG_config: unconfig 419 @./mkconfig $(@:_config=) ppc ppc4xx ocrtc esd 420 421PCI405_config: unconfig 422 @./mkconfig $(@:_config=) ppc ppc4xx pci405 esd 423 424PIP405_config:unconfig 425 @./mkconfig $(@:_config=) ppc ppc4xx pip405 mpl 426 427W7OLMC_config \ 428W7OLMG_config: unconfig 429 @./mkconfig $(@:_config=) ppc ppc4xx w7o 430 431WALNUT405_config:unconfig 432 @./mkconfig $(@:_config=) ppc ppc4xx walnut405 433 434######################################################################### 435## MPC824x Systems 436######################################################################### 437BMW_config: unconfig 438 @./mkconfig $(@:_config=) ppc mpc824x bmw 439 440CU824_config: unconfig 441 @./mkconfig $(@:_config=) ppc mpc824x cu824 442 443MOUSSE_config: unconfig 444 @./mkconfig $(@:_config=) ppc mpc824x mousse 445 446MUSENKI_config: unconfig 447 @./mkconfig $(@:_config=) ppc mpc824x musenki 448 449OXC_config: unconfig 450 @./mkconfig $(@:_config=) ppc mpc824x oxc 451 452PN62_config: unconfig 453 @./mkconfig $(@:_config=) ppc mpc824x pn62 454 455Sandpoint8240_config: unconfig 456 @./mkconfig $(@:_config=) ppc mpc824x sandpoint 457 458Sandpoint8245_config: unconfig 459 @./mkconfig $(@:_config=) ppc mpc824x sandpoint 460 461utx8245_config: unconfig 462 @./mkconfig $(@:_config=) ppc mpc824x utx8245 463 464######################################################################### 465## MPC8260 Systems 466######################################################################### 467xtract_82xx = $(subst _ROMBOOT,,$(subst _L2,,$(subst _266MHz,,$(subst _300MHz,,$(subst _config,,$1))))) 468 469cogent_mpc8260_config: unconfig 470 @./mkconfig $(@:_config=) ppc mpc8260 cogent 471 472CPU86_config \ 473CPU86_ROMBOOT_config: unconfig 474 @./mkconfig $(call xtract_82xx,$@) ppc mpc8260 cpu86 475 @cd ./include ; \ 476 if [ "$(findstring _ROMBOOT_,$@)" ] ; then \ 477 echo "CONFIG_BOOT_ROM = y" >> config.mk ; \ 478 echo "... booting from 8-bit flash" ; \ 479 else \ 480 echo "CONFIG_BOOT_ROM = n" >> config.mk ; \ 481 echo "... booting from 64-bit flash" ; \ 482 fi; \ 483 echo "export CONFIG_BOOT_ROM" >> config.mk; 484 485ep8260_config: unconfig 486 @./mkconfig $(@:_config=) ppc mpc8260 ep8260 487 488gw8260_config: unconfig 489 @./mkconfig $(@:_config=) ppc mpc8260 gw8260 490 491hymod_config: unconfig 492 @./mkconfig $(@:_config=) ppc mpc8260 hymod 493 494IPHASE4539_config: unconfig 495 @./mkconfig $(@:_config=) ppc mpc8260 iphase4539 496 497MPC8260ADS_config: unconfig 498 @./mkconfig $(@:_config=) ppc mpc8260 mpc8260ads 499 500PM826_config \ 501PM826_ROMBOOT_config: unconfig 502 @./mkconfig $(call xtract_82xx,$@) ppc mpc8260 pm826 503 @cd ./include ; \ 504 if [ "$(findstring _ROMBOOT_,$@)" ] ; then \ 505 echo "CONFIG_BOOT_ROM = y" >> config.mk ; \ 506 echo "... booting from 8-bit flash" ; \ 507 else \ 508 echo "CONFIG_BOOT_ROM = n" >> config.mk ; \ 509 echo "... booting from 64-bit flash" ; \ 510 fi; \ 511 echo "export CONFIG_BOOT_ROM" >> config.mk; \ 512 513ppmc8260_config: unconfig 514 @./mkconfig $(@:_config=) ppc mpc8260 ppmc8260 515 516RPXsuper_config: unconfig 517 @./mkconfig $(@:_config=) ppc mpc8260 rpxsuper 518 519rsdproto_config: unconfig 520 @./mkconfig $(@:_config=) ppc mpc8260 rsdproto 521 522sacsng_config: unconfig 523 @./mkconfig $(@:_config=) ppc mpc8260 sacsng 524 525sbc8260_config: unconfig 526 @./mkconfig $(@:_config=) ppc mpc8260 sbc8260 527 528SCM_config: unconfig 529 @./mkconfig $(@:_config=) ppc mpc8260 SCM siemens 530 531TQM8260_config \ 532TQM8260_L2_config \ 533TQM8260_266MHz_config \ 534TQM8260_L2_266MHz_config \ 535TQM8260_300MHz_config: unconfig 536 @ >include/config.h 537 @if [ "$(findstring _L2_,$@)" ] ; then \ 538 echo "#define CONFIG_L2_CACHE" >>include/config.h ; \ 539 echo "... with L2 Cache support (60x Bus Mode)" ; \ 540 else \ 541 echo "#undef CONFIG_L2_CACHE" >>include/config.h ; \ 542 echo "... without L2 Cache support" ; \ 543 fi 544 @[ -z "$(findstring _266MHz,$@)" ] || \ 545 { echo "#define CONFIG_266MHz" >>include/config.h ; \ 546 echo "... with 266MHz system clock" ; \ 547 } 548 @[ -z "$(findstring _300MHz,$@)" ] || \ 549 { echo "#define CONFIG_300MHz" >>include/config.h ; \ 550 echo "... with 300MHz system clock" ; \ 551 } 552 @./mkconfig -a $(call xtract_82xx,$@) ppc mpc8260 tqm8260 553 554######################################################################### 555## 74xx/7xx Systems 556######################################################################### 557 558EVB64260_config \ 559EVB64260_750CX_config: unconfig 560 @./mkconfig EVB64260 ppc 74xx_7xx evb64260 561 562ZUMA_config: unconfig 563 @./mkconfig $(@:_config=) ppc 74xx_7xx evb64260 564 565PCIPPC2_config \ 566PCIPPC6_config: unconfig 567 @./mkconfig $(@:_config=) ppc 74xx_7xx pcippc2 568 569BAB7xx_config: unconfig 570 @./mkconfig $(@:_config=) ppc 74xx_7xx bab7xx eltec 571 572ELPPC_config: unconfig 573 @./mkconfig $(@:_config=) ppc 74xx_7xx elppc eltec 574 575#======================================================================== 576# ARM 577#======================================================================== 578######################################################################### 579## StrongARM Systems 580######################################################################### 581 582lart_config : unconfig 583 @./mkconfig $(@:_config=) arm sa1100 lart 584 585dnp1110_config : unconfig 586 @./mkconfig $(@:_config=) arm sa1100 dnp1110 587 588shannon_config : unconfig 589 @./mkconfig $(@:_config=) arm sa1100 shannon 590 591######################################################################### 592## ARM920T Systems 593######################################################################### 594 595smdk2400_config : unconfig 596 @./mkconfig $(@:_config=) arm arm920t smdk2400 597 598smdk2410_config : unconfig 599 @./mkconfig $(@:_config=) arm arm920t smdk2410 600 601trab_config : unconfig 602 @./mkconfig $(@:_config=) arm arm920t trab 603 604######################################################################### 605## ARM720T Systems 606######################################################################### 607 608impa7_config : unconfig 609 @./mkconfig $(@:_config=) arm arm720t impa7 610 611ep7312_config : unconfig 612 @./mkconfig $(@:_config=) arm arm720t ep7312 613 614######################################################################### 615## Xscale Systems 616######################################################################### 617 618lubbock_config : unconfig 619 @./mkconfig $(@:_config=) arm xscale lubbock 620 621cradle_config : unconfig 622 @./mkconfig $(@:_config=) arm xscale cradle 623 624csb226_config : unconfig 625 @./mkconfig $(@:_config=) arm xscale csb226 626 627######################################################################### 628 629clean: 630 find . -type f \ 631 \( -name 'core' -o -name '*.bak' -o -name '*~' \ 632 -o -name '*.o' -o -name '*.a' \) -print \ 633 | xargs rm -f 634 rm -f examples/hello_world examples/timer examples/eepro100_eeprom 635 rm -f tools/img2srec tools/mkimage tools/envcrc tools/gen_eth_addr 636 rm -f tools/easylogo/easylogo tools/bmp_logo 637 rm -f tools/gdb/astest tools/gdb/gdbcont tools/gdb/gdbsend 638 639clobber: clean 640 find . -type f \ 641 \( -name .depend -o -name '*.srec' -o -name '*.bin' \) \ 642 -print \ 643 | xargs rm -f 644 rm -f $(OBJS) *.bak tags TAGS 645 rm -fr *.*~ 646 rm -f u-boot u-boot.bin u-boot.elf u-boot.srec u-boot.map System.map 647 rm -f tools/crc32.c tools/environment.c 648 rm -f include/asm/arch include/asm 649 650mrproper \ 651distclean: clobber unconfig 652 653backup: 654 F=`basename $(TOPDIR)` ; cd .. ; \ 655 gtar --force-local -zcvf `date "+$$F-%Y-%m-%d-%T.tar.gz"` $$F 656 657######################################################################### 658