2013-06-06 23:54:13 +02:00
|
|
|
################################################################################
|
2010-05-30 22:46:45 +02:00
|
|
|
#
|
2013-06-06 23:54:12 +02:00
|
|
|
# barebox
|
2010-05-30 22:46:45 +02:00
|
|
|
#
|
2013-06-06 23:54:13 +02:00
|
|
|
################################################################################
|
2010-05-30 22:46:45 +02:00
|
|
|
|
2014-03-07 10:31:18 +01:00
|
|
|
BAREBOX_VERSION = $(call qstrip,$(BR2_TARGET_BAREBOX_VERSION))
|
2011-09-17 22:23:08 +02:00
|
|
|
|
|
|
|
ifeq ($(BAREBOX_VERSION),custom)
|
|
|
|
# Handle custom Barebox tarballs as specified by the configuration
|
|
|
|
BAREBOX_TARBALL = $(call qstrip,$(BR2_TARGET_BAREBOX_CUSTOM_TARBALL_LOCATION))
|
2014-03-07 10:31:18 +01:00
|
|
|
BAREBOX_SITE = $(patsubst %/,%,$(dir $(BAREBOX_TARBALL)))
|
|
|
|
BAREBOX_SOURCE = $(notdir $(BAREBOX_TARBALL))
|
2015-05-02 11:05:02 +02:00
|
|
|
BR_NO_CHECK_HASH_FOR += $(BAREBOX_SOURCE)
|
2011-09-17 22:23:08 +02:00
|
|
|
else ifeq ($(BR2_TARGET_BAREBOX_CUSTOM_GIT),y)
|
2014-03-07 10:31:18 +01:00
|
|
|
BAREBOX_SITE = $(call qstrip,$(BR2_TARGET_BAREBOX_CUSTOM_GIT_REPO_URL))
|
2011-09-17 22:23:08 +02:00
|
|
|
BAREBOX_SITE_METHOD = git
|
|
|
|
else
|
|
|
|
# Handle stable official Barebox versions
|
2011-07-05 21:53:59 +02:00
|
|
|
BAREBOX_SOURCE = barebox-$(BAREBOX_VERSION).tar.bz2
|
2014-07-31 10:46:58 +02:00
|
|
|
BAREBOX_SITE = http://www.barebox.org/download
|
2015-05-02 11:05:02 +02:00
|
|
|
ifeq ($(BR2_TARGET_BAREBOX_CUSTOM_VERSION),y)
|
|
|
|
BR_NO_CHECK_HASH_FOR += $(BAREBOX_SOURCE)
|
|
|
|
endif
|
2011-09-17 22:23:08 +02:00
|
|
|
endif
|
|
|
|
|
2013-01-11 06:13:50 +01:00
|
|
|
BAREBOX_DEPENDENCIES = host-lzop
|
2012-08-27 23:19:47 +02:00
|
|
|
BAREBOX_LICENSE = GPLv2 with exceptions
|
2012-08-18 11:25:37 +02:00
|
|
|
BAREBOX_LICENSE_FILES = COPYING
|
|
|
|
|
2011-09-17 22:23:08 +02:00
|
|
|
ifneq ($(call qstrip,$(BR2_TARGET_BAREBOX_CUSTOM_PATCH_DIR)),)
|
|
|
|
define BAREBOX_APPLY_CUSTOM_PATCHES
|
2015-05-04 14:33:18 +02:00
|
|
|
$(APPLY_PATCHES) $(@D) \
|
2015-03-29 19:33:22 +02:00
|
|
|
$(BR2_TARGET_BAREBOX_CUSTOM_PATCH_DIR) \*.patch
|
2011-09-17 22:23:08 +02:00
|
|
|
endef
|
|
|
|
|
|
|
|
BAREBOX_POST_PATCH_HOOKS += BAREBOX_APPLY_CUSTOM_PATCHES
|
|
|
|
endif
|
2011-07-05 21:53:59 +02:00
|
|
|
|
|
|
|
BAREBOX_INSTALL_IMAGES = YES
|
|
|
|
ifneq ($(BR2_TARGET_BAREBOX_BAREBOXENV),y)
|
|
|
|
BAREBOX_INSTALL_TARGET = NO
|
|
|
|
endif
|
|
|
|
|
2010-05-30 22:46:45 +02:00
|
|
|
ifeq ($(KERNEL_ARCH),i386)
|
2014-03-07 10:31:18 +01:00
|
|
|
BAREBOX_ARCH = x86
|
2015-03-04 15:50:46 +01:00
|
|
|
else ifeq ($(KERNEL_ARCH),x86_64)
|
|
|
|
BAREBOX_ARCH = x86
|
2010-05-30 22:46:45 +02:00
|
|
|
else ifeq ($(KERNEL_ARCH),powerpc)
|
2014-03-07 10:31:18 +01:00
|
|
|
BAREBOX_ARCH = ppc
|
2010-05-30 22:46:45 +02:00
|
|
|
else
|
2014-03-07 10:31:18 +01:00
|
|
|
BAREBOX_ARCH = $(KERNEL_ARCH)
|
2010-05-30 22:46:45 +02:00
|
|
|
endif
|
|
|
|
|
2015-10-04 14:28:50 +02:00
|
|
|
BAREBOX_MAKE_FLAGS = ARCH=$(BAREBOX_ARCH) CROSS_COMPILE="$(TARGET_CROSS)"
|
2015-02-03 15:21:50 +01:00
|
|
|
BAREBOX_MAKE_ENV = $(TARGET_MAKE_ENV)
|
2012-11-03 07:05:10 +01:00
|
|
|
|
|
|
|
ifeq ($(BR2_TARGET_BAREBOX_USE_DEFCONFIG),y)
|
2015-02-03 15:21:50 +01:00
|
|
|
BAREBOX_SOURCE_CONFIG = $(BAREBOX_DIR)/arch/$(BAREBOX_ARCH)/configs/$(call qstrip,\
|
2014-03-07 10:31:18 +01:00
|
|
|
$(BR2_TARGET_BAREBOX_BOARD_DEFCONFIG))_defconfig
|
2012-11-03 07:05:10 +01:00
|
|
|
else ifeq ($(BR2_TARGET_BAREBOX_USE_CUSTOM_CONFIG),y)
|
2015-02-03 15:21:49 +01:00
|
|
|
BAREBOX_SOURCE_CONFIG = $(call qstrip,$(BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE))
|
2012-11-03 07:05:10 +01:00
|
|
|
endif
|
|
|
|
|
2015-02-03 15:21:50 +01:00
|
|
|
BAREBOX_KCONFIG_FILE = $(BAREBOX_SOURCE_CONFIG)
|
2015-04-28 16:34:35 +02:00
|
|
|
BAREBOX_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_TARGET_BAREBOX_CONFIG_FRAGMENT_FILES))
|
2015-02-03 15:21:50 +01:00
|
|
|
BAREBOX_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig
|
|
|
|
BAREBOX_KCONFIG_OPTS = $(BAREBOX_MAKE_FLAGS)
|
2010-05-30 22:46:45 +02:00
|
|
|
|
2011-07-05 21:53:59 +02:00
|
|
|
ifeq ($(BR2_TARGET_BAREBOX_BAREBOXENV),y)
|
|
|
|
define BAREBOX_BUILD_BAREBOXENV_CMDS
|
|
|
|
$(TARGET_CC) $(TARGET_CFLAGS) $(TARGET_LDFLAGS) -o $(@D)/bareboxenv \
|
|
|
|
$(@D)/scripts/bareboxenv.c
|
|
|
|
endef
|
|
|
|
endif
|
2010-05-30 22:46:45 +02:00
|
|
|
|
2013-01-28 11:10:34 +01:00
|
|
|
ifeq ($(BR2_TARGET_BAREBOX_CUSTOM_ENV),y)
|
2014-03-07 10:31:18 +01:00
|
|
|
BAREBOX_ENV_NAME = $(notdir $(call qstrip,\
|
|
|
|
$(BR2_TARGET_BAREBOX_CUSTOM_ENV_PATH)))
|
2013-01-28 11:10:34 +01:00
|
|
|
define BAREBOX_BUILD_CUSTOM_ENV
|
|
|
|
$(@D)/scripts/bareboxenv -s \
|
|
|
|
$(call qstrip, $(BR2_TARGET_BAREBOX_CUSTOM_ENV_PATH)) \
|
|
|
|
$(@D)/$(BAREBOX_ENV_NAME)
|
|
|
|
endef
|
|
|
|
define BAREBOX_INSTALL_CUSTOM_ENV
|
|
|
|
cp $(@D)/$(BAREBOX_ENV_NAME) $(BINARIES_DIR)
|
|
|
|
endef
|
|
|
|
endif
|
|
|
|
|
2011-07-05 21:53:59 +02:00
|
|
|
define BAREBOX_BUILD_CMDS
|
|
|
|
$(BAREBOX_BUILD_BAREBOXENV_CMDS)
|
2013-01-11 06:13:50 +01:00
|
|
|
$(TARGET_MAKE_ENV) $(MAKE) $(BAREBOX_MAKE_FLAGS) -C $(@D)
|
2013-01-28 11:10:34 +01:00
|
|
|
$(BAREBOX_BUILD_CUSTOM_ENV)
|
2011-07-05 21:53:59 +02:00
|
|
|
endef
|
2010-05-30 22:46:45 +02:00
|
|
|
|
2011-07-05 21:53:59 +02:00
|
|
|
define BAREBOX_INSTALL_IMAGES_CMDS
|
2012-11-22 03:35:11 +01:00
|
|
|
if test -h $(@D)/barebox-flash-image ; then \
|
|
|
|
cp -L $(@D)/barebox-flash-image $(BINARIES_DIR)/barebox.bin ; \
|
|
|
|
else \
|
|
|
|
cp $(@D)/barebox.bin $(BINARIES_DIR);\
|
|
|
|
fi
|
2013-01-28 11:10:34 +01:00
|
|
|
$(BAREBOX_INSTALL_CUSTOM_ENV)
|
2011-07-05 21:53:59 +02:00
|
|
|
endef
|
2010-05-30 22:46:45 +02:00
|
|
|
|
2011-07-05 21:53:59 +02:00
|
|
|
ifeq ($(BR2_TARGET_BAREBOX_BAREBOXENV),y)
|
|
|
|
define BAREBOX_INSTALL_TARGET_CMDS
|
|
|
|
cp $(@D)/bareboxenv $(TARGET_DIR)/usr/bin
|
|
|
|
endef
|
|
|
|
endif
|
2011-02-06 21:40:19 +01:00
|
|
|
|
2015-07-13 12:32:02 +02:00
|
|
|
# Checks to give errors that the user can understand
|
|
|
|
# Must be before we call to kconfig-package
|
2015-04-26 11:51:15 +02:00
|
|
|
ifeq ($(BR2_TARGET_BAREBOX)$(BR_BUILDING),yy)
|
2012-11-03 07:05:10 +01:00
|
|
|
ifeq ($(BAREBOX_SOURCE_CONFIG),)
|
|
|
|
$(error No Barebox config file. Check your BR2_TARGET_BAREBOX_BOARD_DEFCONFIG or BR2_TARGET_BAREBOX_CUSTOM_CONFIG_FILE settings)
|
2010-05-30 22:46:45 +02:00
|
|
|
endif
|
2010-09-28 14:43:25 +02:00
|
|
|
endif
|
2015-07-13 12:32:02 +02:00
|
|
|
|
|
|
|
$(eval $(kconfig-package))
|