Blame view

kernel/linux-imx6_3.14.28/arch/tile/Makefile 2.42 KB
6b13f685e   김민수   BSP 최초 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
  #
  # This file is subject to the terms and conditions of the GNU General Public
  # License.  See the file "COPYING" in the main directory of this archive
  # for more details.
  #
  # This file is included by the global makefile so that you can add your own
  # architecture-specific flags and dependencies. Remember to do have actions
  # for "archclean" and "archdep" for cleaning up and making dependencies for
  # this architecture
  
  # If building with TILERA_ROOT set (i.e. using the Tilera Multicore
  # Development Environment) we can set CROSS_COMPILE based on that.
  # If we're not cross-compiling, make sure we're on the right architecture.
  # Only bother to test for a few common targets, to avoid useless errors.
  ifeq ($(CROSS_COMPILE),)
    ifdef TILERA_ROOT
      CROSS_COMPILE := $(TILERA_ROOT)/bin/tile-
    else
      goals := $(if $(MAKECMDGOALS), $(MAKECMDGOALS), all)
      ifneq ($(strip $(filter vmlinux modules all,$(goals))),)
        HOST_ARCH := $(shell uname -m)
        ifneq ($(HOST_ARCH),$(ARCH))
  $(error Set TILERA_ROOT or CROSS_COMPILE when building $(ARCH) on $(HOST_ARCH))
        endif
      endif
    endif
  endif
  
  # The tile compiler may emit .eh_frame information for backtracing.
  # In kernel modules, this causes load failures due to unsupported relocations.
  KBUILD_CFLAGS   += -fno-asynchronous-unwind-tables
  
  LIBGCC_PATH     := \
    $(shell $(CC) $(KBUILD_CFLAGS) $(KCFLAGS) -print-libgcc-file-name)
  
  # Provide the path to use for "make defconfig".
  # We default to the newer TILE-Gx architecture if only "tile" is given.
  ifeq ($(ARCH),tile)
          KBUILD_DEFCONFIG := tilegx_defconfig
  else
          KBUILD_DEFCONFIG := $(ARCH)_defconfig
  endif
  
  # Used as a file extension when useful, e.g. head_$(BITS).o
  # Not needed for (e.g.) "$(CC) -m32" since the compiler automatically
  # uses the right default anyway.
  export BITS
  ifeq ($(CONFIG_TILEGX),y)
  BITS := 64
  else
  BITS := 32
  endif
  
  head-y		:= arch/tile/kernel/head_$(BITS).o
  
  libs-y		+= arch/tile/lib/
  libs-y		+= $(LIBGCC_PATH)
  
  # See arch/tile/Kbuild for content of core part of the kernel
  core-y		+= arch/tile/
  
  core-$(CONFIG_TILE_GXIO) += arch/tile/gxio/
  
  ifdef TILERA_ROOT
  INSTALL_PATH ?= $(TILERA_ROOT)/tile/boot
  endif
  
  install:
  	install -D -m 755 vmlinux $(INSTALL_PATH)/vmlinux-$(KERNELRELEASE)
  	install -D -m 644 .config $(INSTALL_PATH)/config-$(KERNELRELEASE)
  	install -D -m 644 System.map $(INSTALL_PATH)/System.map-$(KERNELRELEASE)
  
  define archhelp
  	echo '  install         - install kernel into $(INSTALL_PATH)'
  endef