2
1

linux-fusion.mk 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. #############################################################
  2. #
  3. # linux-fusion
  4. #
  5. #############################################################
  6. LINUX_FUSION_VERSION = 8.0.2
  7. LINUX_FUSION_SOURCE = linux-fusion-$(LINUX_FUSION_VERSION).tar.gz
  8. LINUX_FUSION_SITE = http://www.directfb.org/downloads/Core/
  9. LINUX_FUSION_AUTORECONF = NO
  10. LINUX_FUSION_INSTALL_STAGING = YES
  11. LINUX_FUSION_INSTALL_TARGET = YES
  12. LINUX_FUSION_CONF_OPT =
  13. LINUX_FUSION_DEPENDENCIES = uclibc
  14. # BR2_LINUX26_VERSION is not really dependable
  15. # LINUX26_VERSION is not yet set.
  16. # Retrieve REAL kernel version from file.
  17. LINUX_FOR_FUSION=`cat $(PROJECT_BUILD_DIR)/.linux-version`
  18. LINUX_FUSION_DIR:=$(BUILD_DIR)/linux-fusion-$(LINUX_FUSION_VERSION)
  19. LINUX_FUSION_ETC_DIR:=$(TARGET_DIR)/etc/udev/rules.d
  20. LINUX_FUSION_CAT:=$(ZCAT)
  21. LINUX_FUSION_MAKE_OPTS:= KERNEL_VERSION=$(LINUX_FOR_FUSION)
  22. LINUX_FUSION_MAKE_OPTS += KERNEL_BUILD=$(PROJECT_BUILD_DIR)/linux-$(LINUX_FOR_FUSION)
  23. LINUX_FUSION_MAKE_OPTS += KERNEL_SOURCE=$(PROJECT_BUILD_DIR)/linux-$(LINUX_FOR_FUSION)
  24. LINUX_FUSION_MAKE_OPTS += SYSROOT=$(STAGING_DIR)
  25. LINUX_FUSION_MAKE_OPTS += ARCH=$(BR2_ARCH)
  26. LINUX_FUSION_MAKE_OPTS += CROSS_COMPILE=$(TARGET_CROSS)
  27. LINUX_FUSION_MAKE_OPTS += KERNEL_MODLIB=/lib/modules/$(LINUX_FOR_FUSION)
  28. LINUX_FUSION_MAKE_OPTS += DESTDIR=$(PROJECT_BUILD_DIR)/root
  29. LINUX_FUSION_MAKE_OPTS += HEADERDIR=$(STAGING_DIR)
  30. #LINUX_FUSION_MAKE_OPTS +=
  31. #LINUX_FUSION_MAKE_OPTS += __KERNEL__=$(LINUX26_VERSION)
  32. $(DL_DIR)/$(LINUX_FUSION_SOURCE):
  33. $(call DOWNLOAD,$(LINUX_FUSION_SITE),$(LINUX_FUSION_SOURCE))
  34. $(LINUX_FUSION_DIR)/.unpacked: $(DL_DIR)/$(LINUX_FUSION_SOURCE)
  35. $(LINUX_FUSION_CAT) $(DL_DIR)/$(LINUX_FUSION_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
  36. toolchain/patch-kernel.sh $(LINUX_FUSION_DIR) package/linux-fusion/ linux-fusion\*.patch
  37. touch $@
  38. $(LINUX_FUSION_DIR)/.install: $(LINUX_FUSION_DIR)/.unpacked
  39. mkdir -p $(STAGING_DIR)/lib/modules/$(LINUX_FOR_FUSION)/source/include/linux
  40. echo "LINUX=$(LINUX26_VERSION)"
  41. $(MAKE) $(TARGET_CONFIGURE_OPTS) \
  42. $(LINUX_FUSION_MAKE_OPTS) \
  43. -C $(LINUX_FUSION_DIR) install
  44. rm -f $(TARGET_DIR)/usr/include/linux/fusion.h
  45. mkdir -p $(LINUX_FUSION_ETC_DIR)
  46. cp -dpf package/linux-fusion/40-fusion.rules $(LINUX_FUSION_ETC_DIR)
  47. touch $@
  48. linux-fusion-source: $(DL_DIR)/$(LINUX_FUSION_SOURCE)
  49. linux-fusion-unpacked: $(LINUX_FUSION_DIR)/.unpacked
  50. linux-fusion: uclibc linux26 $(LINUX_FUSION_DIR)/.install
  51. linux-fusion-clean:
  52. -$(MAKE) -C $(LINUX_FUSION_DIR) clean
  53. rm -f $(STAGING_DIR)/usr/include/linux/fusion.h
  54. rm -rf $(TARGET_DIR)/lib/modules/$(LINUX_FOR_FUSION)/drivers/char/fusion
  55. rm -f $(LINUX_FUSION_DIR)/.install
  56. linux-fusion-dirclean:
  57. rm -rf $(LINUX_FUSION_DIR)
  58. #############################################################
  59. #
  60. # Toplevel Makefile options
  61. #
  62. #############################################################
  63. ifeq ($(BR2_PACKAGE_LINUX_FUSION),y)
  64. TARGETS+=linux-fusion
  65. endif