Advertisement
Guest User

platforms/toolchain-mbwe-bluering.mk

a guest
Mar 2nd, 2011
378
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.20 KB | None | 0 0
  1. LIBC_STYLE=uclibc
  2. TARGET_ARCH=arm
  3. TARGET_OS=linux-uclibc
  4.  
  5. LIBSTDC++_VERSION=6.0.2
  6.  
  7. GETTEXT_NLS=enable
  8. NO_BUILTIN_MATH=true
  9. IPV6=no
  10.  
  11. HOSTCC = gcc
  12. GNU_HOST_NAME = $(HOST_MACHINE)-pc-linux-gnu
  13. GNU_TARGET_NAME=$(TARGET_ARCH)-linux
  14.  
  15. CROSS_CONFIGURATION_GCC_VERSION=3.4.2
  16. CROSS_CONFIGURATION_UCLIBC_VERSION=0.9.28
  17. BUILDROOT_GCC=$(CROSS_CONFIGURATION_GCC_VERSION)
  18. UCLIBC-OPT_VERSION=$(CROSS_CONFIGURATION_UCLIBC_VERSION)
  19.  
  20. MBWE-BLUERING_SOURCE_DIR=$(SOURCE_DIR)/mbwe-bluering
  21.  
  22. ifeq ($(HOST_MACHINE),armv5tejl)
  23.  
  24. HOSTCC = $(TARGET_CC)
  25. GNU_HOST_NAME = $(HOST_MACHINE)-linux-gnu
  26. GNU_TARGET_NAME=$(TARGET_ARCH)-linux
  27. TARGET_CROSS=/opt/bin/
  28. TARGET_LIBDIR=/opt/lib
  29. TARGET_INCDIR=/opt/include
  30. TARGET_LDFLAGS = -L/opt/lib
  31. TARGET_CUSTOM_FLAGS=-mcpu=arm9 -mfp=2
  32. TARGET_CFLAGS=-I/opt/include $(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) $(TARGET_CUSTOM_FLAGS)
  33. toolchain:
  34.  
  35. else
  36.  
  37. CROSS_CONFIGURATION_GCC=gcc-$(CROSS_CONFIGURATION_GCC_VERSION)
  38. CROSS_CONFIGURATION_UCLIBC=uclibc-$(CROSS_CONFIGURATION_UCLIBC_VERSION)
  39. CROSS_CONFIGURATION=$(CROSS_CONFIGURATION_GCC)-$(CROSS_CONFIGURATION_UCLIBC)
  40. TARGET_CROSS_TOP = $(shell cd $(BASE_DIR); pwd)/toolchain/mbwe-bluering-buildroot/build_arm_nofpu/staging_dir
  41. TARGET_CROSS = $(TARGET_CROSS_TOP)/bin/$(TARGET_ARCH)-$(TARGET_OS)-
  42. TARGET_LIBDIR = $(TARGET_CROSS_TOP)/lib
  43. TARGET_INCDIR = $(TARGET_CROSS_TOP)/include
  44. TARGET_LDFLAGS =
  45. TARGET_CUSTOM_FLAGS= -pipe -mcpu=arm9 -mfp=2
  46. TARGET_CFLAGS=$(TARGET_OPTIMIZATION) $(TARGET_DEBUGGING) $(TARGET_CUSTOM_FLAGS)
  47.  
  48. TOOLCHAIN_SITE=http://support.wdc.com/download/mybook
  49. TOOLCHAIN_SOURCE=WD-World-NAS-v02.00.18-GPL.tar.bz2
  50.  
  51. UCLIBC-OPT_VERSION = 0.9.28
  52. UCLIBC-OPT_IPK_VERSION = 1
  53. UCLIBC-OPT_LIBS_SOURCE_DIR = $(TARGET_CROSS_TOP)/lib
  54.  
  55. NATIVE_GCC_VERSION=3.4.2
  56. NATIVE_GCC_EXTRA_CONFIG_ARGS=--with-float=soft --enable-threads --disable-__cxa_atexit --enable-target-optspace --with-gnu-ld
  57. LIBC-DEV_CRT_DIR=/opt/lib/gcc/arm-linux-uclibc/$(NATIVE_GCC_VERSION)
  58.  
  59. toolchain: $(TARGET_CROSS)gcc
  60.  
  61. $(DL_DIR)/$(TOOLCHAIN_SOURCE):
  62. $(WGET) -P $(@D) $(TOOLCHAIN_SITE)/$(@F) || \
  63. $(WGET) -P $(@D) $(SOURCES_NLO_SITE)/$(@F)
  64.  
  65. $(BASE_DIR)/toolchain/.unpacked: $(DL_DIR)/$(TOOLCHAIN_SOURCE) # $(OPTWARE_TOP)/platforms/toolchain-$(OPTWARE_TARGET).mk
  66. rm -rf $@ $(TARGET_CROSS_TOP)
  67. mkdir -p $(@D)
  68. tar -xvj -C $(@D) -f $< WD_v2.0_RC18/gpl-buildroot-archives.tar
  69. tar -xv -C $(@D) -f $(@D)/WD_v2.0_RC18/gpl-buildroot-archives.tar
  70. rm -rf $(@D)/WD_v2.0_RC18
  71. mv $(@D)/buildroot-archives/buildroot-20060823.tar.bz2 $(@D)
  72. mv -u $(@D)/buildroot-archives/binutils-2.16.1.tar.bz2 $(@D)/buildroot-archives/gcc-3.4.2.tar.bz2 $(DL_DIR)
  73. rm -rf $(@D)/buildroot-archives
  74. tar -xvj -C $(@D) -f $(@D)/buildroot-20060823.tar.bz2
  75. mv $(@D)/buildroot $(@D)/mbwe-bluering-buildroot
  76. rm -f $(@D)/buildroot-20060823.tar.bz2
  77. cp -f $(MBWE-BLUERING_SOURCE_DIR)/.defconfig $(@D)/mbwe-bluering-buildroot
  78. sed -i -e "s~Apply appropriate binutils patches\.$$~Apply appropriate binutils patches\.\n cat $(MBWE-BLUERING_SOURCE_DIR)/binutils_bfd_ar_spacepad\.patch | patch -d toolchain_build_arm_nofpu/binutils-2\.16\.1 -p0~" $(@D)/mbwe-bluering-buildroot/toolchain/binutils/binutils.mk
  79. sed -i -e "s~^ touch \$$(GCC_DIR)/\.patched~ cat $(MBWE-BLUERING_SOURCE_DIR)/gcc_collect2\.patch | patch -d toolchain_build_arm_nofpu/gcc-3\.4\.2 -p0\n touch \$$(GCC_DIR)/\.patched~" $(@D)/mbwe-bluering-buildroot/toolchain/gcc/gcc-uclibc-3.x.mk
  80. echo "ARCH_HAS_MMU=y" >> $(@D)/mbwe-bluering-buildroot/toolchain/uClibc/uClibc.config
  81. echo "HAS_FPU=n" >> $(@D)/mbwe-bluering-buildroot/toolchain/uClibc/uClibc.config
  82. echo "BUILD_UCLIBC_LDSO=y" >> $(@D)/mbwe-bluering-buildroot/toolchain/uClibc/uClibc.config
  83. echo "DL_FINI_CRT_COMPAT=n" >> $(@D)/mbwe-bluering-buildroot/toolchain/uClibc/uClibc.config
  84. echo "LDSO_RUNPATH=y" >> $(@D)/mbwe-bluering-buildroot/toolchain/uClibc/uClibc.config
  85. sed -i -e "s|http://www\.uclibc\.org/downloads$$|http://www\.uclibc\.org/downloads/old-releases|" $(@D)/mbwe-bluering-buildroot/toolchain/uClibc/uclibc.mk
  86. touch $@
  87.  
  88. $(TARGET_CROSS)gcc: $(BASE_DIR)/toolchain/.unpacked # $(OPTWARE_TOP)/platforms/toolchain-mbwe-bluering.mk
  89. mkdir -p tmp
  90. $(MAKE) -C toolchain/mbwe-bluering-buildroot defconfig
  91. $(MAKE) -C toolchain/mbwe-bluering-buildroot DL_DIR=$(DL_DIR)
  92. rm -rf tmp/*
  93. endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement