summaryrefslogtreecommitdiffstats
path: root/meta/packages/glibc
diff options
context:
space:
mode:
authorChris Larson <kergoth@openedhand.com>2006-08-18 09:31:38 +0000
committerChris Larson <kergoth@openedhand.com>2006-08-18 09:31:38 +0000
commit45b048283ce2157d6c17d30a7c21d785bd1c6540 (patch)
treede94c49fec3a5e3cbeb8f509086575dd28dcf7d1 /meta/packages/glibc
parent10984ecd54feed390029271f4a82708e431bcfcb (diff)
downloadpoky-45b048283ce2157d6c17d30a7c21d785bd1c6540.tar.gz
x86:
* Add qemux86 machine. * Glibc 2.4 updates from upstream OE. * Add linux-x86 kernel to satisfy the deps. git-svn-id: https://svn.o-hand.com/repos/poky/trunk@616 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/glibc')
-rw-r--r--meta/packages/glibc/glibc-2.4/arm-longlong.patch2
-rw-r--r--meta/packages/glibc/glibc-2.4/no-z-defs.patch9
-rw-r--r--meta/packages/glibc/glibc-2.4/zecke-sane-readelf.patch149
-rw-r--r--meta/packages/glibc/glibc-initial_2.4.bb4
-rw-r--r--meta/packages/glibc/glibc-intermediate_2.4.bb2
-rw-r--r--meta/packages/glibc/glibc-package.bbclass53
-rw-r--r--meta/packages/glibc/glibc_2.4.bb24
7 files changed, 205 insertions, 38 deletions
diff --git a/meta/packages/glibc/glibc-2.4/arm-longlong.patch b/meta/packages/glibc/glibc-2.4/arm-longlong.patch
index 320a55524c..28aca83dff 100644
--- a/meta/packages/glibc/glibc-2.4/arm-longlong.patch
+++ b/meta/packages/glibc/glibc-2.4/arm-longlong.patch
@@ -54,5 +54,5 @@
54+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__) 54+#if defined(__ARM_ARCH_5__) || defined(__ARM_ARCH_5T__) || defined(__ARM_ARCH_5TE__)
55+/* Nothing required. */ 55+/* Nothing required. */
56+#else 56+#else
57+#include <sysdeps/generic/mp_clz_tab.c> 57+#include <stdlib/mp_clz_tab.c>
58+#endif 58+#endif
diff --git a/meta/packages/glibc/glibc-2.4/no-z-defs.patch b/meta/packages/glibc/glibc-2.4/no-z-defs.patch
new file mode 100644
index 0000000000..48c6a41267
--- /dev/null
+++ b/meta/packages/glibc/glibc-2.4/no-z-defs.patch
@@ -0,0 +1,9 @@
1Create a configparms file which disabled no-z-defs.
2This is required to build a working glibs for sh4,
3without there will be a lot linker errors during the build.
4
5diff -duNr libc.orig/configparms libc/configparms
6--- libc.orig/configparms 1970-01-01 10:00:00.000000000 +1000
7+++ libc/configparms 2006-02-23 14:08:18.000000000 +1100
8@@ -0,0 +1 @@
9+no-z-defs=yes
diff --git a/meta/packages/glibc/glibc-2.4/zecke-sane-readelf.patch b/meta/packages/glibc/glibc-2.4/zecke-sane-readelf.patch
new file mode 100644
index 0000000000..023b6a51bc
--- /dev/null
+++ b/meta/packages/glibc/glibc-2.4/zecke-sane-readelf.patch
@@ -0,0 +1,149 @@
1Index: glibc-2.4/configure
2===================================================================
3--- glibc-2.4.orig/configure 2006-03-06 12:18:56.000000000 +0100
4+++ glibc-2.4/configure 2006-08-06 14:10:51.000000000 +0200
5@@ -5488,6 +5488,95 @@
6 fi
7 fi
8
9+### XXXX copy and pasted
10+# Check for readelf
11+# Extract the first word of "$target_alias-readelf", so it can be a program name with args.
12+set dummy $target_alias-readelf; ac_word=$2
13+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
14+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
15+if test "${ac_cv_prog_READELF+set}" = set; then
16+ echo $ECHO_N "(cached) $ECHO_C" >&6
17+else
18+ if test -n "$READELF"; then
19+ ac_cv_prog_READELF="$READELF" # Let the user override the test.
20+else
21+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
22+for as_dir in $PATH
23+do
24+ IFS=$as_save_IFS
25+ test -z "$as_dir" && as_dir=.
26+ for ac_exec_ext in '' $ac_executable_extensions; do
27+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then
28+ ac_cv_prog_READELF="$target_alias-readelf"
29+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
30+ break 2
31+ fi
32+done
33+done
34+IFS=$as_save_IFS
35+
36+fi
37+fi
38+READELF=$ac_cv_prog_READELF
39+if test -n "$READELF"; then
40+ { echo "$as_me:$LINENO: result: $READELF" >&5
41+echo "${ECHO_T}$READELF" >&6; }
42+else
43+ { echo "$as_me:$LINENO: result: no" >&5
44+echo "${ECHO_T}no" >&6; }
45+fi
46+
47+
48+if test -z "$ac_cv_prog_READELF"; then
49+ if test "$build" = "$target"; then
50+ ac_ct_READELF=$READELF
51+ # Extract the first word of "readelf", so it can be a program name with args.
52+set dummy readelf; ac_word=$2
53+{ echo "$as_me:$LINENO: checking for $ac_word" >&5
54+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
55+if test "${ac_cv_prog_ac_ct_READELF+set}" = set; then
56+ echo $ECHO_N "(cached) $ECHO_C" >&6
57+else
58+ if test -n "$ac_ct_READELF"; then
59+ ac_cv_prog_ac_ct_READELF="$ac_ct_READELF" # Let the user override the test.
60+else
61+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
62+for as_dir in $PATH
63+do
64+ IFS=$as_save_IFS
65+ test -z "$as_dir" && as_dir=.
66+ for ac_exec_ext in '' $ac_executable_extensions; do
67+ if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; }; then
68+ ac_cv_prog_ac_ct_READELF="readelf"
69+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
70+ break 2
71+ fi
72+done
73+done
74+IFS=$as_save_IFS
75+
76+ test -z "$ac_cv_prog_ac_ct_READELF" && ac_cv_prog_ac_ct_READELF="readelf"
77+fi
78+fi
79+ac_ct_READELF=$ac_cv_prog_ac_ct_READELF
80+if test -n "$ac_ct_READELF"; then
81+ { echo "$as_me:$LINENO: result: $ac_ct_READELF" >&5
82+echo "${ECHO_T}$ac_ct_READELF" >&6; }
83+else
84+ { echo "$as_me:$LINENO: result: no" >&5
85+echo "${ECHO_T}no" >&6; }
86+fi
87+
88+ READELF=ac_ct_READELF
89+ else
90+ READELF="readelf"
91+ fi
92+else
93+ READELF="$ac_cv_prog_READELF"
94+fi
95+
96+### XXXX copy and pasted
97+
98 echo "$as_me:$LINENO: checking for .preinit_array/.init_array/.fini_array support" >&5
99 echo $ECHO_N "checking for .preinit_array/.init_array/.fini_array support... $ECHO_C" >&6
100 if test "${libc_cv_initfini_array+set}" = set; then
101@@ -5507,7 +5596,7 @@
102 echo "$as_me:$LINENO: \$? = $ac_status" >&5
103 (exit $ac_status); }; }
104 then
105- if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then
106+ if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then
107 libc_cv_initfini_array=yes
108 else
109 libc_cv_initfini_array=no
110@@ -5801,7 +5890,7 @@
111 echo "$as_me:$LINENO: \$? = $ac_status" >&5
112 (exit $ac_status); }; }
113 then
114- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
115+ if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
116 libc_cv_z_combreloc=yes
117 else
118 libc_cv_z_combreloc=no
119Index: glibc-2.4/configure.in
120===================================================================
121--- glibc-2.4.orig/configure.in 2006-03-01 10:17:40.000000000 +0100
122+++ glibc-2.4/configure.in 2006-08-06 14:09:31.000000000 +0200
123@@ -1350,6 +1350,8 @@
124 fi
125 fi
126
127+ AC_CHECK_TARGET_TOOL([READELF],[readelf],[readelf],[$PATH])
128+
129 AC_CACHE_CHECK(for .preinit_array/.init_array/.fini_array support,
130 libc_cv_initfini_array, [dnl
131 cat > conftest.c <<EOF
132@@ -1361,7 +1363,7 @@
133 if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -o conftest conftest.c
134 -static -nostartfiles -nostdlib 1>&AS_MESSAGE_LOG_FD])
135 then
136- if readelf -S conftest | fgrep INIT_ARRAY > /dev/null; then
137+ if $READELF -S conftest | fgrep INIT_ARRAY > /dev/null; then
138 libc_cv_initfini_array=yes
139 else
140 libc_cv_initfini_array=no
141@@ -1543,7 +1545,7 @@
142 dnl introducing new options this is not easily doable. Instead use a tool
143 dnl which always is cross-platform: readelf. To detect whether -z combreloc
144 dnl look for a section named .rel.dyn.
145- if readelf -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
146+ if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
147 libc_cv_z_combreloc=yes
148 else
149 libc_cv_z_combreloc=no
diff --git a/meta/packages/glibc/glibc-initial_2.4.bb b/meta/packages/glibc/glibc-initial_2.4.bb
index 422e8b7110..9ba2ac37cc 100644
--- a/meta/packages/glibc/glibc-initial_2.4.bb
+++ b/meta/packages/glibc/glibc-initial_2.4.bb
@@ -1,9 +1,9 @@
1SECTION = "libs" 1SECTION = "libs"
2include glibc_${PV}.bb 2require glibc_${PV}.bb
3 3
4DEPENDS = "linux-libc-headers" 4DEPENDS = "linux-libc-headers"
5PROVIDES = "virtual/${TARGET_PREFIX}libc-initial" 5PROVIDES = "virtual/${TARGET_PREFIX}libc-initial"
6FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/glibc-cvs', '${FILE_DIRNAME}/glibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}" 6FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/glibc-2.4', '${FILE_DIRNAME}/glibc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}"
7 7
8PACKAGES = "" 8PACKAGES = ""
9 9
diff --git a/meta/packages/glibc/glibc-intermediate_2.4.bb b/meta/packages/glibc/glibc-intermediate_2.4.bb
index 819cd0950f..01ce8bb9a8 100644
--- a/meta/packages/glibc/glibc-intermediate_2.4.bb
+++ b/meta/packages/glibc/glibc-intermediate_2.4.bb
@@ -1,5 +1,5 @@
1SECTION = "libs" 1SECTION = "libs"
2include glibc_${PV}.bb 2require glibc_${PV}.bb
3 3
4DEFAULT_PREFERENCE = "-1" 4DEFAULT_PREFERENCE = "-1"
5 5
diff --git a/meta/packages/glibc/glibc-package.bbclass b/meta/packages/glibc/glibc-package.bbclass
index 680831e822..3ce10b54de 100644
--- a/meta/packages/glibc/glibc-package.bbclass
+++ b/meta/packages/glibc/glibc-package.bbclass
@@ -25,20 +25,21 @@ ENABLE_BINARY_LOCALE_GENERATION ?= "0"
25# BINARY_LOCALE_ARCHES is a space separated list of regular expressions 25# BINARY_LOCALE_ARCHES is a space separated list of regular expressions
26BINARY_LOCALE_ARCHES ?= "arm.*" 26BINARY_LOCALE_ARCHES ?= "arm.*"
27 27
28PACKAGES = "glibc catchsegv sln nscd ldd localedef glibc-utils glibc-dev glibc-doc glibc-locale libsegfault glibc-extra-nss glibc-thread-db glibc-pcprofile" 28PACKAGES = "glibc-dbg glibc catchsegv sln nscd ldd localedef glibc-utils glibc-dev glibc-doc glibc-locale libsegfault glibc-extra-nss glibc-thread-db glibc-pcprofile"
29PACKAGES_DYNAMIC = "glibc-gconv-* glibc-charmap-* glibc-localedata-*" 29PACKAGES_DYNAMIC = "glibc-gconv-* glibc-charmap-* glibc-localedata-* libc6*"
30 30
31libc_baselibs = "/lib/libc* /lib/libm* /lib/ld* /lib/libpthread* /lib/libresolv* /lib/librt* /lib/libutil* /lib/libnsl* /lib/libnss_files* /lib/libnss_compat* /lib/libnss_dns* /lib/libdl* /lib/libanl* /lib/libBrokenLocale*" 31libc_baselibs = "/lib/libc* /lib/libm* /lib/ld* /lib/libpthread* /lib/libresolv* /lib/librt* /lib/libutil* /lib/libnsl* /lib/libnss_files* /lib/libnss_compat* /lib/libnss_dns* /lib/libdl* /lib/libanl* /lib/libBrokenLocale*"
32 32
33FILES_${PN} = "${sysconfdir} ${libc_baselibs} /sbin/ldconfig ${libexecdir} ${datadir}/zoneinfo" 33FILES_${PN} = "${sysconfdir} ${libc_baselibs} /sbin/ldconfig ${libexecdir}/* ${datadir}/zoneinfo"
34FILES_ldd = "${bindir}/ldd" 34FILES_ldd = "${bindir}/ldd"
35FILES_libsegfault = "/lib/libSegFault*" 35FILES_libsegfault = "/lib/libSegFault*"
36FILES_glibc-extra-nss = "/lib/libnss*" 36FILES_glibc-extra-nss = "/lib/libnss*"
37FILES_sln = "/sbin/sln" 37FILES_sln = "/sbin/sln"
38FILES_glibc-dev_append = " ${libdir}/*.o ${bindir}/rpcgen" 38FILES_glibc-dev_append = " ${libdir}/*.o ${bindir}/rpcgen"
39FILES_nscd = "${sbindir}/nscd*" 39FILES_nscd = "${sbindir}/nscd*"
40FILES_glibc-utils = "${bindir} ${sbindir}" 40FILES_glibc-utils = "${bindir}/* ${sbindir}/*"
41FILES_glibc-gconv = "${libdir}/gconv" 41FILES_glibc-gconv = "${libdir}/gconv/*"
42FILES_${PN}-dbg += " ${libdir}/gconv/.debug"
42FILES_catchsegv = "${bindir}/catchsegv" 43FILES_catchsegv = "${bindir}/catchsegv"
43RDEPENDS_catchsegv = "libsegfault" 44RDEPENDS_catchsegv = "libsegfault"
44FILES_glibc-pcprofile = "/lib/libpcprofile.so" 45FILES_glibc-pcprofile = "/lib/libpcprofile.so"
@@ -77,17 +78,10 @@ do_install() {
77 grep -v $i ${WORKDIR}/SUPPORTED > ${WORKDIR}/SUPPORTED.tmp 78 grep -v $i ${WORKDIR}/SUPPORTED > ${WORKDIR}/SUPPORTED.tmp
78 mv ${WORKDIR}/SUPPORTED.tmp ${WORKDIR}/SUPPORTED 79 mv ${WORKDIR}/SUPPORTED.tmp ${WORKDIR}/SUPPORTED
79 done 80 done
80 # If indicated, only build a limited selection of locales
81 if [ "${LIMIT_BUILT_LOCALES}" != "${LIMIT_BUILT_LOCALES}" ]; then
82 for i in ${LIMIT_BUILT_LOCALES}; do
83 grep $i ${WORKDIR}/SUPPORTED > ${WORKDIR}/SUPPORTED.tmp
84 mv ${WORKDIR}/SUPPORTED.tmp ${WORKDIR}/SUPPORTED
85 done
86 fi
87 rm -f ${D}/etc/rpc 81 rm -f ${D}/etc/rpc
88} 82}
89 83
90TMP_LOCALE="/tmp/locale/${libdir}/locale" 84TMP_LOCALE="/tmp/locale${libdir}/locale"
91 85
92locale_base_postinst() { 86locale_base_postinst() {
93#!/bin/sh 87#!/bin/sh
@@ -102,6 +96,7 @@ if [ -f ${libdir}/locale/locale-archive ]; then
102 cp ${libdir}/locale/locale-archive ${TMP_LOCALE}/ 96 cp ${libdir}/locale/locale-archive ${TMP_LOCALE}/
103fi 97fi
104localedef --inputfile=${datadir}/i18n/locales/%s --charmap=%s --prefix=/tmp/locale %s 98localedef --inputfile=${datadir}/i18n/locales/%s --charmap=%s --prefix=/tmp/locale %s
99mkdir -p ${libdir}/locale/
105mv ${TMP_LOCALE}/locale-archive ${libdir}/locale/ 100mv ${TMP_LOCALE}/locale-archive ${libdir}/locale/
106rm -rf ${TMP_LOCALE} 101rm -rf ${TMP_LOCALE}
107} 102}
@@ -204,12 +199,7 @@ python package_do_split_gconvs () {
204 if deps != []: 199 if deps != []:
205 bb.data.setVar('RDEPENDS_%s' % pkg, " ".join(deps), d) 200 bb.data.setVar('RDEPENDS_%s' % pkg, " ".join(deps), d)
206 201
207 use_bin = bb.data.getVar("GLIBC_INTERNAL_USE_BINARY_LOCALE", d, 1) 202 do_split_packages(d, locales_dir, file_regex='(.*)', output_pattern='glibc-localedata-%s', description='locale definition for %s', hook=calc_locale_deps, extra_depends='')
208 if use_bin:
209 do_split_packages(d, locales_dir, file_regex='(.*)', output_pattern='glibc-localedata-%s', description='locale definition for %s', hook=calc_locale_deps, extra_depends='', aux_files_pattern_verbatim=binary_locales_dir + '/%s')
210 else:
211 do_split_packages(d, locales_dir, file_regex='(.*)', output_pattern='glibc-localedata-%s', description='locale definition for %s', hook=calc_locale_deps, extra_depends='')
212 bb.note("generation of binary locales disabled. this may break i18n!")
213 bb.data.setVar('PACKAGES', bb.data.getVar('PACKAGES', d) + ' glibc-gconv', d) 203 bb.data.setVar('PACKAGES', bb.data.getVar('PACKAGES', d) + ' glibc-gconv', d)
214 204
215 f = open(os.path.join(bb.data.getVar('WORKDIR', d, 1), "SUPPORTED"), "r") 205 f = open(os.path.join(bb.data.getVar('WORKDIR', d, 1), "SUPPORTED"), "r")
@@ -248,8 +238,12 @@ python package_do_split_gconvs () {
248 target_arch = bb.data.getVar("TARGET_ARCH", d, 1) 238 target_arch = bb.data.getVar("TARGET_ARCH", d, 1)
249 qemu = "qemu-%s" % target_arch 239 qemu = "qemu-%s" % target_arch
250 pkgname = 'locale-base-' + legitimize_package_name(name) 240 pkgname = 'locale-base-' + legitimize_package_name(name)
251 241 m = re.match("(.*)\.(.*)", name)
252 bb.data.setVar('RDEPENDS_%s' % pkgname, 'glibc-localedata-%s glibc-charmap-%s' % (legitimize_package_name(locale), legitimize_package_name(encoding)), d) 242 if m:
243 glibc_name = "%s.%s" % (m.group(1), m.group(2).lower().replace("-",""))
244 else:
245 glibc_name = name
246 bb.data.setVar('RDEPENDS_%s' % pkgname, legitimize_package_name('glibc-binary-localedata-%s' % glibc_name), d)
253 rprovides = 'virtual-locale-%s' % legitimize_package_name(name) 247 rprovides = 'virtual-locale-%s' % legitimize_package_name(name)
254 m = re.match("(.*)_(.*)", name) 248 m = re.match("(.*)_(.*)", name)
255 if m: 249 if m:
@@ -262,7 +256,7 @@ python package_do_split_gconvs () {
262 path = bb.data.getVar("PATH", d, 1) 256 path = bb.data.getVar("PATH", d, 1)
263 i18npath = os.path.join(treedir, datadir, "i18n") 257 i18npath = os.path.join(treedir, datadir, "i18n")
264 258
265 localedef_opts = "--force --old-style --no-archive --prefix=%s --inputfile=%s/i18n/locales/%s --charmap=%s %s" % (treedir, datadir, locale, encoding, locale) 259 localedef_opts = "--force --old-style --no-archive --prefix=%s --inputfile=%s/i18n/locales/%s --charmap=%s %s" % (treedir, datadir, locale, encoding, name)
266 cmd = "PATH=\"%s\" I18NPATH=\"%s\" %s -L %s %s/bin/localedef %s" % (path, i18npath, qemu, treedir, treedir, localedef_opts) 260 cmd = "PATH=\"%s\" I18NPATH=\"%s\" %s -L %s %s/bin/localedef %s" % (path, i18npath, qemu, treedir, treedir, localedef_opts)
267 bb.note("generating locale %s (%s)" % (locale, encoding)) 261 bb.note("generating locale %s (%s)" % (locale, encoding))
268 if os.system(cmd): 262 if os.system(cmd):
@@ -281,20 +275,33 @@ python package_do_split_gconvs () {
281 bb.build.exec_func("do_prep_locale_tree", d) 275 bb.build.exec_func("do_prep_locale_tree", d)
282 276
283 # Reshuffle names so that UTF-8 is preferred over other encodings 277 # Reshuffle names so that UTF-8 is preferred over other encodings
278 non_utf8 = []
284 for l in encodings.keys(): 279 for l in encodings.keys():
285 if len(encodings[l]) == 1: 280 if len(encodings[l]) == 1:
286 output_locale(l, l, encodings[l][0]) 281 output_locale(l, l, encodings[l][0])
282 if encodings[l][0] != "UTF-8":
283 non_utf8.append(l)
287 else: 284 else:
288 if "UTF-8" in encodings[l]: 285 if "UTF-8" in encodings[l]:
289 output_locale(l, l, "UTF-8") 286 output_locale(l, l, "UTF-8")
290 encodings[l].remove("UTF-8") 287 encodings[l].remove("UTF-8")
288 else:
289 non_utf8.append(l)
291 for e in encodings[l]: 290 for e in encodings[l]:
292 output_locale('%s-%s' % (l, e), l, e) 291 output_locale('%s.%s' % (l, e), l, e)
292
293 if non_utf8 != []:
294 bb.note("the following locales are supported only in legacy encodings:")
295 bb.note(" " + " ".join(non_utf8))
293 296
294 use_bin = bb.data.getVar("GLIBC_INTERNAL_USE_BINARY_LOCALE", d, 1) 297 use_bin = bb.data.getVar("GLIBC_INTERNAL_USE_BINARY_LOCALE", d, 1)
295 if use_bin: 298 if use_bin:
296 bb.note("collecting binary locales from locale tree") 299 bb.note("collecting binary locales from locale tree")
297 bb.build.exec_func("do_collect_bins_from_locale_tree", d) 300 bb.build.exec_func("do_collect_bins_from_locale_tree", d)
301 do_split_packages(d, binary_locales_dir, file_regex='(.*)', output_pattern='glibc-binary-localedata-%s', description='binary locale definition for %s', extra_depends='', allow_dirs=True)
302 else:
303 bb.note("generation of binary locales disabled. this may break i18n!")
304
298} 305}
299 306
300# We want to do this indirection so that we can safely 'return' 307# We want to do this indirection so that we can safely 'return'
diff --git a/meta/packages/glibc/glibc_2.4.bb b/meta/packages/glibc/glibc_2.4.bb
index faaf27ced3..bccdcc7da7 100644
--- a/meta/packages/glibc/glibc_2.4.bb
+++ b/meta/packages/glibc/glibc_2.4.bb
@@ -3,8 +3,13 @@ HOMEPAGE = "http://www.gnu.org/software/libc/libc.html"
3LICENSE = "LGPL" 3LICENSE = "LGPL"
4SECTION = "libs" 4SECTION = "libs"
5PRIORITY = "required" 5PRIORITY = "required"
6DEFAULT_PREFERENCE = "-1" 6# DEFAULT_PREFERENCE = "-1"
7PR = "r4" 7PR = "r10"
8
9# the -isystem in bitbake.conf screws up glibc do_stage
10BUILD_CPPFLAGS = "-I${STAGING_DIR}/${BUILD_SYS}/include"
11TARGET_CPPFLAGS = "-I${STAGING_DIR}/${TARGET_SYS}/include"
12
8 13
9FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-2.4" 14FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-2.4"
10 15
@@ -53,6 +58,7 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.4.tar.bz2 \
53 file://nptl-crosscompile.patch;patch=1 \ 58 file://nptl-crosscompile.patch;patch=1 \
54 file://glibc-2.4-compile.patch;patch=1 \ 59 file://glibc-2.4-compile.patch;patch=1 \
55 file://fixup-aeabi-syscalls.patch;patch=1 \ 60 file://fixup-aeabi-syscalls.patch;patch=1 \
61 file://zecke-sane-readelf.patch;patch=1 \
56 file://generic-bits_select.h \ 62 file://generic-bits_select.h \
57 file://generic-bits_types.h \ 63 file://generic-bits_types.h \
58 file://generic-bits_typesizes.h \ 64 file://generic-bits_typesizes.h \
@@ -60,6 +66,10 @@ SRC_URI = "ftp://ftp.gnu.org/pub/gnu/glibc/glibc-2.4.tar.bz2 \
60 file://etc/ld.so.conf \ 66 file://etc/ld.so.conf \
61 file://generate-supported.mk" 67 file://generate-supported.mk"
62 68
69# Build fails on sh3 and sh4 without additional patches
70SRC_URI_append_sh3 = " file://no-z-defs.patch;patch=1"
71SRC_URI_append_sh4 = " file://no-z-defs.patch;patch=1"
72
63S = "${WORKDIR}/glibc-2.4" 73S = "${WORKDIR}/glibc-2.4"
64B = "${WORKDIR}/build-${TARGET_SYS}" 74B = "${WORKDIR}/build-${TARGET_SYS}"
65 75
@@ -109,14 +119,6 @@ do_munge() {
109 rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/fenv.h 119 rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/fenv.h
110 # Obsoleted by sysdeps/gnu/bits/utmp.h 120 # Obsoleted by sysdeps/gnu/bits/utmp.h
111 rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/utmp.h 121 rm -f ${S}/ports/sysdeps/unix/sysv/linux/arm/bits/utmp.h
112
113 # http://www.handhelds.org/hypermail/oe/51/5135.html
114 # Some files were moved around between directories on
115 # 2005-12-21, which means that any attempt to check out
116 # from CVS using a datestamp older than that will be doomed.
117 #
118 # This is a workaround for that problem.
119 rm -rf ${S}/bits
120} 122}
121 123
122addtask munge before do_patch after do_unpack 124addtask munge before do_patch after do_unpack
@@ -198,4 +200,4 @@ do_stage() {
198 echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so 200 echo 'GROUP ( libc.so.6 libc_nonshared.a )' > ${CROSS_DIR}/${TARGET_SYS}/lib/libc.so
199} 201}
200 202
201include glibc-package.bbclass 203require glibc-package.bbclass