blob: 298ec34022a6f1a43e55be1301ffdb13d5b66134 (
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
|
# -*-makefile-*-
# $Id: template 6001 2006-08-12 10:15:00Z mkl $
#
# Copyright (C) 2006, 2008 by Marc Kleine-Budde <mkl@pengutronix.de>
#
# 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_UCLIBC) += uclibc
#
# Paths and names
#
UCLIBC_VERSION := $(call remove_quotes,$(PTXCONF_UCLIBC_VERSION))
UCLIBC_MD5 := $(call remove_quotes,$(PTXCONF_UCLIBC_MD5))
UCLIBC := uClibc-$(UCLIBC_VERSION)
UCLIBC_SUFFIX := tar.bz2
UCLIBC_URL := http://www.uclibc.org/downloads/$(UCLIBC).$(UCLIBC_SUFFIX)
UCLIBC_SOURCE := $(SRCDIR)/$(UCLIBC).$(UCLIBC_SUFFIX)
UCLIBC_DIR := $(BUILDDIR)/$(UCLIBC)
UCLIBC_CONFIG := $(call remove_quotes, $(PTXDIST_PLATFORMCONFIGDIR)/config/$(PTXCONF_UCLIBC_CONFIG))
# ----------------------------------------------------------------------------
# Get
# ----------------------------------------------------------------------------
$(UCLIBC_SOURCE):
@$(call targetinfo)
@$(call get, UCLIBC)
# ----------------------------------------------------------------------------
# Prepare
# ----------------------------------------------------------------------------
UCLIBC_PATH := PATH=$(CROSS_PATH)
UCLIBC_ENV := KCONFIG_NOTIMESTAMP=1 $(HOST_ENV_CC)
UCLIBC_MAKEVARS := \
CROSS=$(COMPILER_PREFIX) \
HOSTCC="$(HOSTCC)" \
DEVEL_PREFIX=/usr/ \
PREFIX=$(SYSROOT) \
KERNEL_SOURCE=$(SYSROOT)/usr \
RUNTIME_PREFIX=/ \
SHARED_LIB_LOADER_PREFIX=/lib
$(STATEDIR)/uclibc.prepare:
@$(call targetinfo)
@$(call touch)
# ----------------------------------------------------------------------------
# Compile
# ----------------------------------------------------------------------------
$(STATEDIR)/uclibc.compile:
@$(call targetinfo)
cd $(UCLIBC_DIR) && $(UCLIBC_PATH) $(MAKE) $(UCLIBC_MAKEVARS)
@$(call touch)
# ----------------------------------------------------------------------------
# Install
# ----------------------------------------------------------------------------
$(STATEDIR)/uclibc.install:
@$(call targetinfo)
cd $(UCLIBC_DIR) && \
$(UCLIBC_PATH) $(MAKE) $(UCLIBC_MAKEVARS) \
install DEVEL_PREFIX=/usr/ PREFIX=$(SYSROOT)
@$(call touch)
# ----------------------------------------------------------------------------
# Target-Install
# ----------------------------------------------------------------------------
$(STATEDIR)/uclibc.targetinstall:
@$(call targetinfo)
@$(call touch)
# ----------------------------------------------------------------------------
# Clean
# ----------------------------------------------------------------------------
uclibc_clean:
rm -rf $(STATEDIR)/uclibc.*
rm -rf $(UCLIBC_DIR)
# ----------------------------------------------------------------------------
# oldconfig / menuconfig
# ----------------------------------------------------------------------------
uclibc_oldconfig uclibc_menuconfig: $(STATEDIR)/uclibc.extract
@if test -e $(UCLIBC_CONFIG); then \
cp $(UCLIBC_CONFIG) $(UCLIBC_DIR)/.config; \
fi
@cd $(UCLIBC_DIR) && \
$(UCLIBC_PATH) $(UCLIBC_ENV) $(MAKE) $(UCLIBC_MAKEVARS) $(subst uclibc_,,$@)
@if cmp -s $(UCLIBC_DIR)/.config $(UCLIBC_CONFIG); then \
echo "uclibc configuration unchanged"; \
else \
cp $(UCLIBC_DIR)/.config $(UCLIBC_CONFIG); \
fi
# vim: syntax=make
|