Changes in / [e175d69:e515a827] in mainline


Ignore:
Files:
16 added
12 deleted
1 edited

Legend:

Unmodified
Added
Removed
  • boot/arch/mips32/src/Makefile

    re175d69 re515a827  
    11#
    2 # Copyright (c) 2005 Martin Decky
    3 # Copyright (c) 2007 Jakub Jermar
     2# Copyright (c) 2006 Martin Decky
    43# All rights reserved.
    54#
     
    2827#
    2928
    30 include Makefile.common
     29include ../../../../version
     30-include ../../../../Makefile.config
    3131
    32 .PHONY: all clean
     32## Toolchain configuration
     33#
    3334
    34 all: ../../../../version ../../../../Makefile.common ../../../../Makefile.config ../../../../config.h
    35         -[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV)
    36         $(MAKE) -f Makefile.build PRECHECK=$(PRECHECK)
     35ifndef CROSS_PREFIX
     36        CROSS_PREFIX = /usr/local
     37endif
     38
     39BFD_ARCH = mips
     40TARGET = mipsel-linux-gnu
     41TOOLCHAIN_DIR = $(CROSS_PREFIX)/mipsel/bin
     42
     43ifeq ($(MACHINE),lgxemul)
     44        BFD_NAME = elf32-tradlittlemips
     45        BFD = ecoff-littlemips
     46endif
     47ifeq ($(MACHINE),bgxemul)
     48        BFD_NAME = elf32-tradbigmips
     49        BFD = ecoff-bigmips
     50        TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips/bin
     51        TARGET = mips-linux-gnu
     52endif
     53ifeq ($(MACHINE),msim)
     54        BFD_NAME = elf32-tradlittlemips
     55        BFD = binary
     56endif
     57
     58ifeq ($(COMPILER),gcc_native)
     59        CC = gcc
     60        AS = as
     61        LD = ld
     62        OBJCOPY = objcopy
     63        OBJDUMP = objdump
     64endif
     65
     66ifeq ($(COMPILER),gcc_cross)
     67        CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc
     68        AS = $(TOOLCHAIN_DIR)/$(TARGET)-as
     69        LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld
     70        OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy
     71        OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump
     72endif
     73
     74CFLAGS = -DRELEASE=$(RELEASE) -I. -I../../../generic -imacros ../../../../config.h -nostdinc -nostdlib -fno-builtin -Werror-implicit-function-declaration -Wmissing-prototypes -Werror -O3 -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mhard-float -mips3 -pipe
     75
     76SOURCES = \
     77        main.c \
     78        msim.c \
     79        _components.c \
     80        ../../../generic/printf.c \
     81        ../../../generic/string.c \
     82        asm.S \
     83        boot.S
     84
     85COMPONENTS = \
     86        $(KERNELDIR)/kernel.bin \
     87        $(USPACEDIR)/srv/ns/ns \
     88        $(USPACEDIR)/srv/loader/loader \
     89        $(USPACEDIR)/app/init/init \
     90        $(USPACEDIR)/srv/devmap/devmap \
     91        $(USPACEDIR)/srv/bd/rd/rd \
     92        $(USPACEDIR)/srv/vfs/vfs
     93ifeq ($(RDFMT),tmpfs)
     94        COMPONENTS += $(USPACEDIR)/srv/fs/tmpfs/tmpfs
     95endif
     96ifeq ($(RDFMT),fat)
     97        COMPONENTS += $(USPACEDIR)/srv/fs/fat/fat
     98endif
     99
     100RD_SRVS = \
     101        $(USPACEDIR)/srv/fb/fb \
     102        $(USPACEDIR)/srv/kbd/kbd \
     103        $(USPACEDIR)/srv/console/console \
     104        $(USPACEDIR)/srv/fs/devfs/devfs \
     105        $(USPACEDIR)/srv/fs/tmpfs/tmpfs \
     106        $(USPACEDIR)/srv/fs/fat/fat \
     107        $(USPACEDIR)/srv/bd/file_bd/file_bd \
     108        $(USPACEDIR)/srv/bd/gxe_bd/gxe_bd
     109
     110RD_APPS = \
     111        $(USPACEDIR)/app/getvc/getvc \
     112        $(USPACEDIR)/app/tetris/tetris \
     113        $(USPACEDIR)/app/tester/tester \
     114        $(USPACEDIR)/app/dload/dload \
     115        $(USPACEDIR)/app/dltest/dltest \
     116        $(USPACEDIR)/app/dltest2/dltest2 \
     117        $(USPACEDIR)/app/trace/trace \
     118        $(USPACEDIR)/app/bdsh/bdsh \
     119        $(USPACEDIR)/app/klog/klog
     120
     121RD_LIBS = \
     122        $(USPACEDIR)/lib/libc/shared/libc.so.0 \
     123        $(USPACEDIR)/lib/libtest/libtest.so.0
     124
     125OBJECTS := $(addsuffix .o,$(basename $(SOURCES)))
     126COMPONENT_OBJECTS := $(addsuffix .o,$(basename $(notdir $(COMPONENTS))))
     127
     128.PHONY: all clean depend
     129
     130all: image.boot
     131
     132-include Makefile.depend
     133
     134image.boot: image.raw
     135        $(OBJCOPY) -O $(BFD) $< $@
     136
     137image.raw: depend _components.h _link.ld $(COMPONENT_OBJECTS) initrd.o $(OBJECTS)
     138        $(LD) -no-check-sections -N -T _link.ld -o $@ $(COMPONENT_OBJECTS) initrd.o $(OBJECTS)
     139
     140depend:
     141        -makedepend -f - -- $(DEFS) $(CFLAGS) -- $(SOURCES) > Makefile.depend 2> /dev/null
    37142
    38143clean:
    39         rm -f $(USPACEDIR)/dist/srv/*
    40         rm -f $(USPACEDIR)/dist/app/*
    41         rm -f $(USPACEDIR)/dist/cfg/net/*
    42 
    43         for file in $(RD_SRVS) ; do \
     144        -for file in $(RD_SRVS) ; do \
    44145                rm -f $(USPACEDIR)/dist/srv/`basename $$file` ; \
    45146        done
    46         for file in $(RD_APPS) ; do \
     147        -for file in $(RD_APPS) ; do \
    47148                rm -f $(USPACEDIR)/dist/app/`basename $$file` ; \
    48149        done
    49         for file in $(NET_CFG) ; do \
    50                 rm -f $(USPACEDIR)/dist/cfg/net/`basename $$file` ; \
     150        -rm -f _components.h _components.c _link.ld $(COMPONENT_OBJECTS) initrd.o $(OBJECTS) initrd.img image.raw image.boot Makefile.depend
     151
     152_components.h _components.c _link.ld $(COMPONENT_OBJECTS) initrd.o: $(COMPONENTS) $(RD_SRVS) $(RD_LIBS) $(RD_APPS) _link.ld.in
     153        for file in $(RD_SRVS) ; do \
     154                cp $$file $(USPACEDIR)/dist/srv/ ; \
    51155        done
    52         rm -f $(DEPEND) $(DEPEND_PREV) $(JOB) $(OUTPUT) $(RAW) $(COMPS).h $(COMPS).c $(LINK) $(INITRD).img $(INITRD).fs
    53         find . -name '*.o' -follow -exec rm \{\} \;
    54         find . -name '*.co' -follow -exec rm \{\} \;
     156        for lib in $(RD_LIBS) ; do \
     157                cp $$lib $(USPACEDIR)/dist/lib/ ; \
     158        done
     159        for file in $(RD_APPS) ; do \
     160                cp $$file $(USPACEDIR)/dist/app/ ; \
     161        done
     162ifeq ($(RDFMT),tmpfs)
     163        ../../../../tools/mktmpfs.py $(USPACEDIR)/dist/ initrd.fs
     164endif
     165ifeq ($(RDFMT),fat)
     166        ../../../../tools/mkfat.py $(USPACEDIR)/dist/ initrd.fs
     167endif
     168        ../../../../tools/mkhord.py 16384 initrd.fs initrd.img
     169        rm initrd.fs
     170        ../../../tools/pack.py $(OBJCOPY) $(BFD_NAME) $(BFD_ARCH) 16384 "unsigned int" $(COMPONENTS) ./initrd.img
     171
     172%.o: %.S
     173        $(CC) $(DEFS) $(CFLAGS) -D__ASM__ -c $< -o $@
     174
     175%.o: %.c
     176        $(CC) $(DEFS) $(CFLAGS) -c $< -o $@
Note: See TracChangeset for help on using the changeset viewer.