surpport seeking the recorded video
[vuplus_openembedded] / recipes / glibc / glibc_2.3.3+cvs20041128.bb
1 require glibc.inc
2
3 DEFAULT_PREFERENCE_sh3 = "-99"
4
5 FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs"
6 PR = "${INC_PR}.0"
7
8 GLIBC_ADDONS ?= "linuxthreads"
9
10 DEFAULT_PREFERENCE = "-1"
11 DEFAULT_PREFERENCE_i686 = "0"
12 DEFAULT_PREFERENCE_sh3 = "0"
13 DEFAULT_PREFERENCE_sh4 = "0"
14
15 #
16 # For now, we will skip building of a gcc package if it is a uclibc one
17 # and our build is not a uclibc one, and we skip a glibc one if our build
18 # is a uclibc build.
19 #
20 # See the note in gcc/gcc_3.4.0.oe
21 #
22
23 python __anonymous () {
24     import bb, re
25     uc_os = (re.match('.*uclibc$', bb.data.getVar('TARGET_OS', d, 1)) != None)
26     if uc_os:
27         raise bb.parse.SkipPackage("incompatible with target %s" %
28                                    bb.data.getVar('TARGET_OS', d, 1))
29 }
30
31 #          file://noinfo.patch;patch=1
32 #          file://ldconfig.patch;patch=1;pnum=0
33 SRC_URI = "cvs://anoncvs@sources.redhat.com/cvs/glibc;module=libc;date=${@bb.data.getVar('PV', d, 1)[9:]} \
34            file://arm-ioperm.patch;patch=1;pnum=0 \
35            file://ldd.patch;patch=1;pnum=0 \
36            file://fhs-linux-paths.patch;patch=1 \
37            file://arm-no-hwcap.patch;patch=1;pnum=0 \
38            file://arm-memcpy.patch;patch=1;pnum=0 \
39            file://arm-longlong.patch;patch=1;pnum=0 \
40            file://arm-machine-gmon.patch;patch=1;pnum=0 \
41            \
42            file://etc/ld.so.conf \
43            file://generate-supported.mk"
44
45 # seems to fail on tls platforms
46 SRC_URI_append_arm = " file://dyn-ldconfig-20041128.patch;patch=1"
47
48 SRC_URI_append_openmn = " file://ldsocache-varrun.patch;patch=1"
49
50 S = "${WORKDIR}/libc"
51 B = "${WORKDIR}/build-${TARGET_SYS}"
52
53 RDEPENDS_${PN}-dev = "linux-libc-headers-dev"
54 RPROVIDES_${PN}-dev += "libc-dev virtual-libc-dev"
55
56 EXTRA_OECONF = "--enable-kernel=${OLDEST_KERNEL} \
57                 --without-cvs --disable-profile --disable-debug --without-gd \
58                 --enable-clocale=gnu \
59                 --enable-add-ons=${GLIBC_ADDONS} \
60                 --with-headers=${STAGING_INCDIR} \
61                 --without-selinux \
62                 ${GLIBC_EXTRA_OECONF}"
63
64 EXTRA_OECONF += "${@get_glibc_fpu_setting(bb, d)}"
65
66 do_configure () {
67 # override this function to avoid the autoconf/automake/aclocal/autoheader
68 # calls for now
69 # don't pass CPPFLAGS into configure, since it upsets the kernel-headers
70 # version check and doesn't really help with anything
71         if [ -z "`which rpcgen`" ]; then
72                 echo "rpcgen not found.  Install glibc-devel."
73                 exit 1
74         fi
75         (cd ${S} && gnu-configize) || die "failure in running gnu-configize"
76         CPPFLAGS="" oe_runconf
77 }
78
79 rpcsvc = "bootparam_prot.x nlm_prot.x rstat.x \
80           yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \
81           rusers.x spray.x nfs_prot.x rquota.x key_prot.x"
82
83 do_compile () {
84         # this really is arm specific
85         touch ${S}/sysdeps/arm/framestate.c
86         # -Wl,-rpath-link <staging>/lib in LDFLAGS can cause breakage if another glibc is in staging
87         unset LDFLAGS
88         base_do_compile
89         (
90                 cd ${S}/sunrpc/rpcsvc
91                 for r in ${rpcsvc}; do
92                         h=`echo $r|sed -e's,\.x$,.h,'`
93                         rpcgen -h $r -o $h || oewarn "unable to generate header for $r"
94                 done
95         )
96 }
97
98 require glibc-stage.inc
99
100 require glibc-package.inc