Am Donnerstag, den 23.02.2012, 08:31 +0100 schrieb Jan Weitzel:
> Build MLO in $(BUILDDIR)/barebox_mlo-* with config PTXCONF_BAREBOX_MLO_CONFIG
> Default config is barebox_mlo.config.
> 
> Signed-off-by: Jan Weitzel <j.weit...@phytec.de>
> ---
>  platforms/barebox_mlo.in |   19 +++++++
>  rules/barebox_mlo.make   |  124 
> ++++++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 143 insertions(+), 0 deletions(-)
>  create mode 100644 platforms/barebox_mlo.in
>  create mode 100644 rules/barebox_mlo.make
> 
> diff --git a/platforms/barebox_mlo.in b/platforms/barebox_mlo.in
> new file mode 100644
> index 0000000..f1e9c78
> --- /dev/null
> +++ b/platforms/barebox_mlo.in
> @@ -0,0 +1,19 @@
> +## SECTION=bootloader
> +
> +menuconfig BAREBOX_MLO
> +     prompt "barebox mlo                   "
> +     bool
> +     depends on BAREBOX
> +     help
> +       Build mlo from barebox sources.
> +
> +if BAREBOX_MLO
> +
> +config BAREBOX_MLO_CONFIG
> +     prompt "mlo config file"
> +     string
> +     default "barebox_mlo.config"
> +     help
> +       This entry specifies the .config file used to compile mlo.
> +
> +endif
> diff --git a/rules/barebox_mlo.make b/rules/barebox_mlo.make
> new file mode 100644
> index 0000000..12e8743
> --- /dev/null
> +++ b/rules/barebox_mlo.make
> @@ -0,0 +1,124 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2012 Jan Weitzel <j.weit...@phytec.de>
> +#       based on barebox.make
> +#
> +# See CREDITS for details about who has contributed to this project.
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +PACKAGES-$(PTXCONF_BAREBOX_MLO) += barebox_mlo
> +
> +#
> +# Paths and names
> +#
> +BAREBOX_MLO_VERSION  = $(BAREBOX_VERSION)
> +BAREBOX_MLO          = barebox_mlo-$(BAREBOX_MLO_VERSION)
> +BAREBOX_MLO_DIR              = $(BUILDDIR)/$(BAREBOX_MLO)
> +BAREBOX_MLO_SOURCE   = $(BAREBOX_SOURCE)
> +BAREBOX_MLO_LICENSE  := GPLv2
> +
> +BAREBOX_MLO_CONFIG   := $(call remove_quotes, 
> $(PTXDIST_PLATFORMCONFIGDIR)/$(PTXCONF_BAREBOX_MLO_CONFIG))
> +
> +# 
> ----------------------------------------------------------------------------
> +# Get
> +# 
> ----------------------------------------------------------------------------
> +$(STATEDIR)/barebox_mlo.get: $(STATEDIR)/barebox.get
> +     @$(call targetinfo)
> +     @$(call touch)
> +
> +# 
> ----------------------------------------------------------------------------
> +# Extract
> +# 
> ----------------------------------------------------------------------------
> +$(STATEDIR)/barebox_mlo.extract:
> +     @$(call targetinfo)
> +     @$(call clean, $(BAREBOX_MLO_DIR))
> +     @mkdir -p $(BAREBOX_MLO_DIR)
> +     @$(call extract, BAREBOX_MLO)
> +     @$(call patchin, BAREBOX, $(BAREBOX_MLO_DIR))
I saw this is deprecated, is there an other way to get the BAREBOX
patchstack?
With @$(call patchin, BAREBOX_MLO) I got:

extract: pkg_src=/home/ptxdist_src/barebox-2011.12.0.tar.bz2
extract:
pkg_extract_dir=BSP-Phytec-phyCARD-XL2/platform-phyCARD-XL2/build-target/barebox_mlo-2011.12.0
patchin: no patches found

 
> +     @$(call touch)
> +
> +# 
> ----------------------------------------------------------------------------
> +# Prepare
> +# 
> ----------------------------------------------------------------------------
> +
> +BAREBOX_MLO_PATH     := PATH=$(CROSS_PATH)
> +BAREBOX_MLO_ENV      := KCONFIG_NOTIMESTAMP=1
> +BAREBOX_MLO_MAKEVARS := \
> +     HOSTCC=$(HOSTCC) \
> +     ARCH=$(PTXCONF_BAREBOX_ARCH_STRING) \
> +     CROSS_COMPILE=$(BOOTLOADER_CROSS_COMPILE)
> +
> +$(STATEDIR)/barebox_mlo.prepare: $(BAREBOX_MLO_CONFIG)
> +     @$(call targetinfo)
> +
> +     @echo "Using barebox_mlo config file: $(BAREBOX_MLO_CONFIG)"
> +     @install -m 644 $(BAREBOX_MLO_CONFIG) $(BAREBOX_MLO_DIR)/.config
> +
> +     @$(call ptx/oldconfig, BAREBOX_MLO)
> +
> +     @$(call touch)
> +
> +# 
> ----------------------------------------------------------------------------
> +# Compile
> +# 
> ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/barebox_mlo.compile:
> +     @$(call targetinfo)
> +     cd $(BAREBOX_MLO_DIR) && $(BAREBOX_MLO_PATH) $(MAKE) 
> $(BAREBOX_MLO_MAKEVARS)
> +     @$(call touch)
> +
> +# 
> ----------------------------------------------------------------------------
> +# Install
> +# 
> ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/barebox_mlo.install:
> +     @$(call targetinfo)
> +     @$(call touch)
> +
> +# 
> ----------------------------------------------------------------------------
> +# Target-Install
> +# 
> ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/barebox_mlo.targetinstall:
> +     @$(call targetinfo)
> +#barebox renamed barebox.bin.ift to MLO, so fall back to barebox.bin.ift
> +     @if test -e $(BAREBOX_MLO_DIR)/MLO; then \
> +             install -D -m644 $(BAREBOX_MLO_DIR)/MLO $(IMAGEDIR)/MLO ; \
> +     else \
> +             install -D -m644 $(BAREBOX_MLO_DIR)/barebox.bin.ift 
> $(IMAGEDIR)/MLO ; \
> +     fi
> +
> +     @$(call touch)
> +
> +# 
> ----------------------------------------------------------------------------
> +# Clean
> +# 
> ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/barebox_mlo.clean:
> +     @$(call targetinfo)
> +     @$(call clean_pkg, BAREBOX_MLO)
> +     rm -rf $(IMAGEDIR)/MLO
> +
> +# 
> ----------------------------------------------------------------------------
> +# oldconfig / menuconfig
> +# 
> ----------------------------------------------------------------------------
> +
> +barebox_mlo_oldconfig barebox_mlo_menuconfig: $(STATEDIR)/barebox_mlo.extract
> +     @if test -e $(BAREBOX_MLO_CONFIG); then \
> +             cp $(BAREBOX_MLO_CONFIG) $(BAREBOX_MLO_DIR)/.config; \
> +     fi
> +     cd $(BAREBOX_MLO_DIR) && \
> +             $(BAREBOX_MLO_PATH) $(BAREBOX_MLO_ENV) $(MAKE) 
> $(BAREBOX_MLO_MAKEVARS) $(subst barebox_mlo_,,$@)
> +     @if cmp -s $(BAREBOX_MLO_DIR)/.config $(BAREBOX_MLO_CONFIG); then \
> +             echo "barebox_mlo configuration unchanged"; \
> +     else \
> +             cp $(BAREBOX_MLO_DIR)/.config $(BAREBOX_MLO_CONFIG); \
> +     fi
> +
> +# vim: syntax=make



-- 
ptxdist mailing list
ptxdist@pengutronix.de

Reply via email to