summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc/gcc-common.inc
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-common.inc')
-rw-r--r--meta/recipes-devtools/gcc/gcc-common.inc51
1 files changed, 1 insertions, 50 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-common.inc b/meta/recipes-devtools/gcc/gcc-common.inc
index 9d41f651ed..04c701a974 100644
--- a/meta/recipes-devtools/gcc/gcc-common.inc
+++ b/meta/recipes-devtools/gcc/gcc-common.inc
@@ -79,19 +79,6 @@ ${GNU_MIRROR}/gcc http://mirrors.rcn.net/pub/sourceware/gcc/releases/ \n \
79${GNU_MIRROR}/gcc http://gcc.get-software.com/releases/ \n \ 79${GNU_MIRROR}/gcc http://gcc.get-software.com/releases/ \n \
80${GNU_MIRROR}/gcc http://gcc.get-software.com/releases/ \n \ 80${GNU_MIRROR}/gcc http://gcc.get-software.com/releases/ \n \
81" 81"
82
83python do_preconfigure () {
84 import subprocess
85 cmd = d.expand('PATH=${PATH} cd ${S} && gnu-configize')
86 subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
87 # See 0044-gengtypes.patch, we need to regenerate this file
88 bb.utils.remove(d.expand("${S}/gcc/gengtype-lex.c"))
89 cmd = d.expand("sed -i 's/BUILD_INFO=info/BUILD_INFO=/' ${S}/gcc/configure")
90 subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
91}
92addtask do_preconfigure after do_patch before do_configure
93do_preconfigure[depends] += "gnu-config-native:do_populate_sysroot autoconf-native:do_populate_sysroot"
94
95# 82#
96# Set some default values 83# Set some default values
97# 84#
@@ -101,48 +88,12 @@ BINV = "${PV}"
101S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}" 88S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}"
102B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}" 89B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}"
103 90
104# SS means Shared Stamps directory
105SS = "${TMPDIR}/stamps/work-shared/gcc-${PV}-${PR}"
106do_fetch[stamp-base] = "${SS}"
107do_unpack[stamp-base] = "${SS}"
108do_patch[stamp-base] = "${SS}"
109do_preconfigure[stamp-base] = "${SS}"
110SSCLEAN = "${TMPDIR}/stamps/work-shared/gcc-[0-9]*-*"
111do_fetch[stamp-base-clean] = "${SSCLEAN}"
112do_unpack[stamp-base-clean] = "${SSCLEAN}"
113do_unpack[umask] = "022"
114do_patch[stamp-base-clean] = "${SSCLEAN}"
115do_preconfigure[stamp-base-clean] = "${SSCLEAN}"
116
117# SW means Shared Work directory
118SW = "${TMPDIR}/work-shared/gcc-${PV}-${PR}"
119SSTATE_SWSPEC = "sstate:gcc::${PV}:${PR}::${SSTATE_VERSION}:"
120WORKDIR_task-unpack = "${SW}"
121WORKDIR_task-patch = "${SW}"
122WORKDIR_task-preconfigure = "${SW}"
123
124target_includedir ?= "${includedir}" 91target_includedir ?= "${includedir}"
125target_libdir ?= "${libdir}" 92target_libdir ?= "${libdir}"
126target_base_libdir ?= "${base_libdir}" 93target_base_libdir ?= "${base_libdir}"
127target_prefix ?= "${prefix}" 94target_prefix ?= "${prefix}"
128 95
129CLEANFUNCS += "workshared_clean" 96# We need to ensure that for the shared work directory, the do_patch signatures match
130# The do_clean should be exclusive since share ${S}
131do_clean[lockfiles] = "${SW}.clean.lock"
132
133python workshared_clean () {
134 """clear the source directory"""
135 dir = d.expand("${SW}")
136 bb.note("Removing " + dir)
137 oe.path.remove(dir)
138
139 """clear the the stamps in work-shared"""
140 dir = "%s.*" % bb.data.expand(d.getVarFlag('do_fetch', 'stamp-base', True), d)
141 bb.note("Removing " + dir)
142 oe.path.remove(dir)
143}
144
145# We need to ensure that for the shared work directory, the do_patch singatures match
146# The real WORKDIR location isn't a dependency for the shared workdir. 97# The real WORKDIR location isn't a dependency for the shared workdir.
147src_patches[vardepsexclude] = "WORKDIR" 98src_patches[vardepsexclude] = "WORKDIR"
148should_apply[vardepsexclude] += "PN" 99should_apply[vardepsexclude] += "PN"