blob: c143ab7f212b95e67e2456d8378f350c0336b7e1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
# -*-makefile-*-
#
# Copyright (C) 2012 Jan Weitzel <j.weitzel@phytec.de>
#
# 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 := $(call remove_quotes,$(PTXCONF_BAREBOX_MLO_VERSION))
BAREBOX_MLO_MD5 := $(call remove_quotes,$(PTXCONF_BAREBOX_MLO_MD5))
BAREBOX_MLO := barebox-$(BAREBOX_MLO_VERSION)
BAREBOX_MLO_URL = http://www.barebox.org/download/$(BAREBOX_MLO).$(BAREBOX_SUFFIX)
BAREBOX_MLO_DIR := $(BUILDDIR)/barebox_mlo-$(BAREBOX_MLO_VERSION)
BAREBOX_MLO_PKGDIR := $(PKGDIR)/barebox_mlo-$(BAREBOX_MLO_VERSION)
BAREBOX_MLO_SOURCE = $(SRCDIR)/$(BAREBOX_MLO).$(BAREBOX_SUFFIX)
BAREBOX_MLO_LICENSE := GPL-2.0-only
BAREBOX_MLO_CONFIG := $(call ptx/in-platformconfigdir, \
$(call remove_quotes, $(PTXCONF_BAREBOX_MLO_CONFIG)))
# ----------------------------------------------------------------------------
# Prepare
# ----------------------------------------------------------------------------
BAREBOX_MLO_WRAPPER_BLACKLIST := \
$(PTXDIST_LOWLEVEL_WRAPPER_BLACKLIST)
BAREBOX_MLO_PATH := PATH=$(CROSS_PATH)
BAREBOX_MLO_CONF_ENV := KCONFIG_NOTIMESTAMP=1
BAREBOX_MLO_CONF_TOOL := kconfig
BAREBOX_MLO_CONF_OPT := \
V=$(PTXDIST_VERBOSE) \
HOSTCC=$(HOSTCC) \
ARCH=$(PTXCONF_BAREBOX_MLO_ARCH_STRING) \
CROSS_COMPILE=$(BOOTLOADER_CROSS_COMPILE)
BAREBOX_MLO_MAKE_OPT := $(BAREBOX_MLO_CONF_OPT)
ifdef PTXCONF_BAREBOX_MLO
$(BAREBOX_MLO_CONFIG):
@echo
@echo "****************************************************************************"
@echo "*Please generate a barebox MLO config with 'ptxdist menuconfig barebox_mlo'*"
@echo "****************************************************************************"
@echo
@echo
@exit 1
endif
# ----------------------------------------------------------------------------
# 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
@rm -f $(IMAGEDIR)/MLO
@for image in `ls $(BAREBOX_MLO_DIR)/images/barebox-*.img`; do \
install -D -m644 $$image $(IMAGEDIR)/`basename $$image`; \
if [ ! -e "$(IMAGEDIR)/MLO" ]; then \
ln -sf `basename $$image` $(IMAGEDIR)/MLO; \
fi; \
done
@if [ ! -e "$(IMAGEDIR)/MLO" ]; then \
ptxd_get_path "$(BAREBOX_MLO_DIR)/MLO" \
"$(BAREBOX_MLO_DIR)/barebox.bin.ift" && \
install -D -m644 "$${ptxd_reply}" "$(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 barebox_mlo_nconfig: $(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_CONF_ENV) $(MAKE) \
$(BAREBOX_MLO_CONF_OPT) $(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
|