config.mk 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #
  2. # (C) Copyright 2003
  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. CROSS_COMPILE ?= mips_4KC-
  24. # Handle special prefix in ELDK 4.0 toolchain
  25. ifneq (,$(findstring 4KCle,$(CROSS_COMPILE)))
  26. ENDIANNESS := -EL
  27. endif
  28. ifdef CONFIG_SYS_LITTLE_ENDIAN
  29. ENDIANNESS := -EL
  30. endif
  31. ifdef CONFIG_SYS_BIG_ENDIAN
  32. ENDIANNESS := -EB
  33. endif
  34. # Default to EB if no endianess is configured
  35. ENDIANNESS ?= -EB
  36. PLATFORM_CPPFLAGS += -DCONFIG_MIPS -D__MIPS__
  37. #
  38. # From Linux arch/mips/Makefile
  39. #
  40. # GCC uses -G 0 -mabicalls -fpic as default. We don't want PIC in the kernel
  41. # code since it only slows down the whole thing. At some point we might make
  42. # use of global pointer optimizations but their use of $28 conflicts with
  43. # the current pointer optimization.
  44. #
  45. # The DECStation requires an ECOFF kernel for remote booting, other MIPS
  46. # machines may also. Since BFD is incredibly buggy with respect to
  47. # crossformat linking we rely on the elf2ecoff tool for format conversion.
  48. #
  49. # cflags-y += -G 0 -mno-abicalls -fno-pic -pipe
  50. # cflags-y += -msoft-float
  51. # LDFLAGS_vmlinux += -G 0 -static -n -nostdlib
  52. # MODFLAGS += -mlong-calls
  53. #
  54. # On the other hand, we want PIC in the U-Boot code to relocate it from ROM
  55. # to RAM. $28 is always used as gp.
  56. #
  57. PLATFORM_CPPFLAGS += -G 0 -mabicalls -fpic $(ENDIANNESS)
  58. PLATFORM_CPPFLAGS += -msoft-float
  59. PLATFORM_LDFLAGS += -G 0 -static -n -nostdlib $(ENDIANNESS)
  60. PLATFORM_RELFLAGS += -ffunction-sections -fdata-sections
  61. LDFLAGS_FINAL += --gc-sections