Skip to contentSkip to conversation

site/x86_64-linux: Add some vars from ix86-common

PATCH In review Michael Smith 4 participants 10 messages Aug 13, 2009 – Sep 1, 2009

lore
Share & tools
lore
#0 lore raw

PATCH 1/4 site/x86_64-linux: Add some vars from ix86-common

ix86-common had a few updates in the past couple of years; bring them to x86_64.

Some of these could probably be moved to common-glibc.

---
 site/x86_64-linux |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)
site/x86_64-linux +13 -0
index 3c47a56..83d1511 100644
@@ -42,6 +42,8 @@ db_cv_path_strip=${db_cv_path_strip=/usr/bin/strip}
 db_cv_posixmutexes=${db_cv_posixmutexes=no}
 db_cv_sprintf_count=${db_cv_sprintf_count=yes}
 db_cv_uimutexes=${db_cv_uimutexes=no}
+
+# glib
 glib_cv_hasinline=${glib_cv_hasinline=yes}
 glib_cv_has__inline=${glib_cv_has__inline=yes}
 glib_cv_has__inline__=${glib_cv_has__inline__=yes}
@@ -61,6 +63,8 @@ glib_cv_uscore=${glib_cv_uscore=no}
 glib_cv___va_copy=${glib_cv___va_copy=yes}
 glib_cv_va_copy=${glib_cv_va_copy=yes}
 glib_cv_va_val_copy=${glib_cv_va_val_copy=no}
+ac_cv_func_posix_getgrgid_r=${ac_cv_func_posix_getgrgid_r=yes}
+
 lftp_cv_va_copy=${lftp_cv_va_copy=yes}
 nano_cv_func_regexec_segv_emptystr=${nano_cv_func_regexec_segv_emptystr=no}
 samba_cv_HAVE_VA_COPY=${samba_cv_HAVE_VA_COPY=yes}
@@ -80,3 +84,12 @@ am_cv_func_working_getline=${am_cv_func_working_getline=yes}
 
 #gcc
 ac_cv_lib_m_sin=${ac_cv_lib_m_sin=yes}
+
+# eds-dbus
+ac_cv_libiconv_utf8=${ac_cv_libiconv_utf8=yes}
+
+#dbus
+ac_cv_have_abstract_sockets=${ac_cv_have_abstract_sockets=yes}
+
+# p3scan / quagga
+ac_cv_func_realloc_0_nonnull=${ac_cv_func_realloc_0_nonnull=yes}
Signature · 1 line
1.6.3
#1 lore raw

PATCH 2/4 gcc: fix libstdc/libgcc packaging on x86_64

do_install was looking under ${D}/some long cross path/*/lib; needs to be lib64 on x86_64. On x86_64 base_libdir would be set to /lib64, so we can go by that.

Bump INC_PR for recent gccs (4.3.3, 4.4.1). Hopefully no one is using older gcc for x86_64.

---
 recipes/gcc/gcc-4.3.3.inc         |    2 +-
 recipes/gcc/gcc-4.4.1.inc         |    2 +-
 recipes/gcc/gcc-package-cross.inc |   13 ++++++++-----
 3 files changed, 10 insertions(+), 7 deletions(-)
recipes/gcc/gcc-4.3.3.inc +1 -1
index 5802492..4a3cb49 100644
@@ -7,7 +7,7 @@ LICENSE = "GPLv3"
 
 DEPENDS = "mpfr gmp"
 
-INC_PR = "r5"
+INC_PR = "r6"
 
 SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
 	file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
recipes/gcc/gcc-4.4.1.inc +1 -1
index a5b9d91..2759ab9 100644
@@ -7,7 +7,7 @@ LICENSE = "GPLv3"
 
 DEPENDS = "mpfr gmp"
 
-INC_PR = "r1"
+INC_PR = "r2"
 
 FILESPATHPKG .= ":gcc-$PV"
 
recipes/gcc/gcc-package-cross.inc +8 -5
index fa1f47f..6c4f9bb 100644
@@ -29,7 +29,9 @@ do_install () {
         elif [  -f ${D}${prefix}/*/lib/nof/libgcc_s.so.? ]; then
                 mv -f ${D}${prefix}/*/lib/nof/libgcc_s.so* ${D}${target_base_libdir}
         else
-                mv -f ${D}${prefix}/*/lib/libgcc_s.so* ${D}${target_base_libdir} || true 
+                # Look for .../${TARGET_SYS}/lib/libgcc_s*
+                # (or /lib64/, on x86_64)
+                mv -f ${D}${prefix}/*/${target_base_libdir}/libgcc_s.so* ${D}${target_base_libdir} || true 
         fi
 
 
@@ -45,10 +47,11 @@ do_install () {
            mv -f ${D}${prefix}/*/lib/nof/libssp*.so* ${D}${target_libdir} || true 	
 
         else
-           mv -f ${D}${prefix}/*/lib/libstdc++.so* ${D}${target_libdir} || true
-           mv -f ${D}${prefix}/*/lib/libg2c.so* ${D}${target_libdir} || true
-           mv -f ${D}${prefix}/*/lib/libgfortran*.so* ${D}${target_libdir} || true
-           mv -f ${D}${prefix}/*/lib/libssp*.so* ${D}${target_libdir} || true
+           # Look for .../${TARGET_SYS}/lib/lib* (or /lib64/ on x86_64)
+           mv -f ${D}${prefix}/*/${target_base_libdir}/libstdc++.so* ${D}${target_libdir} || true
+           mv -f ${D}${prefix}/*/${target_base_libdir}/libg2c.so* ${D}${target_libdir} || true
+           mv -f ${D}${prefix}/*/${target_base_libdir}/libgfortran*.so* ${D}${target_libdir} || true
+           mv -f ${D}${prefix}/*/${target_base_libdir}/libssp*.so* ${D}${target_libdir} || true
         fi
 
 
Signature · 1 line
1.6.3
#2 lore raw

PATCH 3/4 udev 141: fix packaging on x86_64

udev installs binaries under $(udev_prefix)/lib/udev, even if ${libdir} is ${prefix}/lib64. This means some paths need to be hardcoded to "/lib" instead of "${base_libdir}".

---
 recipes/udev/udev_141.bb |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)
recipes/udev/udev_141.bb +10 -5
index 3f42564..13b3808 100644
@@ -6,7 +6,7 @@ LICENSE = "GPL"
 # Untested
 DEFAULT_PREFERENCE = "-1"
 
-PR = "r11"
+PR = "r12"
 
 # needed for init.d script
 RDEPENDS_${PN} += "udev-utils"
@@ -51,8 +51,10 @@ RPROVIDES_${PN} = "hotplug"
 FILES_${PN} += "${usrbindir}/* ${usrsbindir}/udevd"
 FILES_${PN}-dbg += "${usrbindir}/.debug ${usrsbindir}/.debug"
 
-FILES_${PN} += "${libdir}/udev/* ${base_libdir}/udev/*"
-FILES_${PN}-dbg += "${base_libdir}/udev/.debug"
+# udev installs binaries under $(udev_prefix)/lib/udev, even if ${libdir}
+# is ${prefix}/lib64
+FILES_${PN} += "/lib/udev/* /lib/udev/*"
+FILES_${PN}-dbg += "/lib/udev/.debug"
 
 do_install () {
 	install -d ${D}${usrsbindir} \
@@ -64,8 +66,11 @@ do_install () {
 	install -d ${D}${sysconfdir}/default
 	install -m 0755 ${WORKDIR}/default ${D}${sysconfdir}/default/udev
 
-	mv ${D}${base_libdir}/udev/rules.d ${D}${sysconfdir}/udev/
-	ln -sf ${sysconfdir}/udev/rules.d ${D}${base_libdir}/udev/
+	# Move udev rules from $(udev_prefix)/lib to /etc.
+	# This is hardcoded to $(udev_prefix)/lib/udev/rules.d in the
+	# Makefile, even if libdir is lib64.
+	mv ${D}/lib/udev/rules.d ${D}${sysconfdir}/udev/
+	ln -sf ${sysconfdir}/udev/rules.d ${D}/lib/udev/
 
  	cp ${S}/rules/rules.d/* ${D}${sysconfdir}/udev/rules.d/
 	cp ${S}/rules/packages/* ${D}${sysconfdir}/udev/rules.d/
Signature · 1 line
1.6.3
#3 lore raw

PATCH 4/4 openssl.inc: fix packaging on x86_64; use INC_PR

openssl's makefile always installs to ${prefix}/lib, even if libdir is ${prefix}/lib64. Move some files around to make it fit.

---
 recipes/openssl/openssl-native_0.9.7g.bb |    2 +-
 recipes/openssl/openssl-native_0.9.7m.bb |    2 +-
 recipes/openssl/openssl-native_0.9.8g.bb |    2 +-
 recipes/openssl/openssl-native_0.9.8j.bb |    2 +-
 recipes/openssl/openssl.inc              |   13 +++++++++++--
 recipes/openssl/openssl_0.9.7e.bb        |    2 +-
 recipes/openssl/openssl_0.9.7g.bb        |    2 +-
 recipes/openssl/openssl_0.9.7m.bb        |    2 +-
 recipes/openssl/openssl_0.9.8g.bb        |    2 +-
 recipes/openssl/openssl_0.9.8j.bb        |    2 +-
 10 files changed, 20 insertions(+), 11 deletions(-)
recipes/openssl/openssl-native_0.9.7g.bb +1 -1
index dfe3ab5..40558f2 100644
@@ -2,7 +2,7 @@ inherit pkgconfig native
 
 require openssl.inc
 
-PR = "r2"
+PR = "${INC_PR}.0"
 
 SRC_URI += "file://debian.patch;patch=1 \
             file://armeb.patch;patch=1;pnum=0 \
recipes/openssl/openssl-native_0.9.7m.bb +1 -1
index 445b6e9..ccae43e 100644
@@ -6,7 +6,7 @@ require openssl.inc
 export FULL_OPTIMIZATION = " "
 export BUILD_OPTIMIZATION = " "
 
-PR = "r2"
+PR = "${INC_PR}.0"
 
 SRC_URI += "file://debian.patch;patch=1 \
             file://armeb.patch;patch=1;pnum=0 \
recipes/openssl/openssl-native_0.9.8g.bb +1 -1
index 27f0169..d567ae7 100644
@@ -2,7 +2,7 @@ inherit pkgconfig native
 
 require openssl.inc
 
-PR = "r1"
+PR = "${INC_PR}.0"
 
 # This flag can contain target options (e.g -mfpu=neon for armv7-a systems)
 export FULL_OPTIMIZATION = " "
recipes/openssl/openssl-native_0.9.8j.bb +1 -1
index ffbd5ea..976a4d7 100644
@@ -2,7 +2,7 @@ inherit pkgconfig native
 
 require openssl.inc
 
-PR = "r1"
+PR = "${INC_PR}.0"
 
 # This flag can contain target options (e.g -mfpu=neon for armv7-a systems)
 export FULL_OPTIMIZATION = " "
recipes/openssl/openssl.inc +11 -2
index e6e345b..fd0756b 100644
@@ -6,6 +6,8 @@ SECTION = "libs/network"
 SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz"
 S = "${WORKDIR}/openssl-${PV}"
 
+INC_PR = "r10"
+
 AR_append = " r"
 CFLAG = "${@base_conditional('SITEINFO_ENDIANESS', 'le', '-DL_ENDIAN', '-DB_ENDIAN', d)} \
 	-DTERMIO ${FULL_OPTIMIZATION} -Wall"
@@ -91,9 +93,16 @@ do_stage () {
 }
 
 do_install () {
-	install -m 0755 -d ${D}${libdir}/pkgconfig
 	oe_runmake INSTALL_PREFIX="${D}" install
-	chmod 644 ${D}${libdir}/pkgconfig/openssl.pc
+
+	# On x86_64, move lib/* to lib64
+	if [ "${libdir}" != "${prefix}/lib" ]
+	then
+		install -d ${D}${libdir} ${D}${libdir}/pkgconfig
+		mv ${D}${prefix}/lib/lib* ${D}${libdir}
+		mv ${D}${prefix}/lib/pkgconfig/*.pc ${D}${libdir}/pkgconfig
+	fi
+
 	oe_libinstall -so libcrypto ${D}${libdir}
 	oe_libinstall -so libssl ${D}${libdir}
 }
recipes/openssl/openssl_0.9.7e.bb +1 -1
index cda364a..b821076 100644
@@ -1,6 +1,6 @@
 require openssl.inc
 
-PR = "r6"
+PR = "${INC_PR}.0"
 
 SRC_URI += "file://debian.patch;patch=1 \
             file://armeb.patch;patch=1 \
recipes/openssl/openssl_0.9.7g.bb +1 -1
index fbd2af2..68a2614 100644
@@ -2,7 +2,7 @@ inherit pkgconfig
 
 require openssl.inc
 
-PR = "r7"
+PR = "${INC_PR}.0"
 
 SRC_URI += "file://debian.patch;patch=1 \
             file://armeb.patch;patch=1;pnum=0 \
recipes/openssl/openssl_0.9.7m.bb +1 -1
index fbd2af2..68a2614 100644
@@ -2,7 +2,7 @@ inherit pkgconfig
 
 require openssl.inc
 
-PR = "r7"
+PR = "${INC_PR}.0"
 
 SRC_URI += "file://debian.patch;patch=1 \
             file://armeb.patch;patch=1;pnum=0 \
recipes/openssl/openssl_0.9.8g.bb +1 -1
index 1cb360f..d76e756 100644
@@ -2,7 +2,7 @@ inherit pkgconfig
 
 require openssl.inc
 
-PR = "r9"
+PR = "${INC_PR}.0"
 
 SRC_URI += "file://debian.patch;patch=1 \
             file://configure-targets.patch;patch=1 \
recipes/openssl/openssl_0.9.8j.bb +1 -1
index 21450d2..bb9694f 100644
@@ -2,7 +2,7 @@ inherit pkgconfig
 
 require openssl.inc
 
-PR = "r2"
+PR = "${INC_PR}.0"
 
 export OE_LDFLAGS="${LDFLAGS}"
 
Signature · 1 line
1.6.3
#4 lore raw

Re: [PATCH 3/4] udev 141: fix packaging on x86_64

In reply to Michael Smith

Hi,

Could someone with prefix = /usr give this a quick build test before I check it in?

http://patchwork.openembedded.org/patch/940/

Thanks,
Mike

Quoted 49 lines · Michael Smith

udev installs binaries under $(udev_prefix)/lib/udev, even if ${libdir} is ${prefix}/lib64. This means some paths need to be hardcoded to "/lib" instead of "${base_libdir}".

---
 recipes/udev/udev_141.bb |   15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)
recipes/udev/udev_141.bb +10 -5
index 3f42564..13b3808 100644
@@ -6,7 +6,7 @@ LICENSE = "GPL"
 # Untested
 DEFAULT_PREFERENCE = "-1"
 
-PR = "r11"
+PR = "r12"
 
 # needed for init.d script
 RDEPENDS_${PN} += "udev-utils"
@@ -51,8 +51,10 @@ RPROVIDES_${PN} = "hotplug"
 FILES_${PN} += "${usrbindir}/* ${usrsbindir}/udevd"
 FILES_${PN}-dbg += "${usrbindir}/.debug ${usrsbindir}/.debug"
 
-FILES_${PN} += "${libdir}/udev/* ${base_libdir}/udev/*"
-FILES_${PN}-dbg += "${base_libdir}/udev/.debug"
+# udev installs binaries under $(udev_prefix)/lib/udev, even if ${libdir}
+# is ${prefix}/lib64
+FILES_${PN} += "/lib/udev/* /lib/udev/*"
+FILES_${PN}-dbg += "/lib/udev/.debug"
 
 do_install () {
 	install -d ${D}${usrsbindir} \
@@ -64,8 +66,11 @@ do_install () {
 	install -d ${D}${sysconfdir}/default
 	install -m 0755 ${WORKDIR}/default ${D}${sysconfdir}/default/udev
 
-	mv ${D}${base_libdir}/udev/rules.d ${D}${sysconfdir}/udev/
-	ln -sf ${sysconfdir}/udev/rules.d ${D}${base_libdir}/udev/
+	# Move udev rules from $(udev_prefix)/lib to /etc.
+	# This is hardcoded to $(udev_prefix)/lib/udev/rules.d in the
+	# Makefile, even if libdir is lib64.
+	mv ${D}/lib/udev/rules.d ${D}${sysconfdir}/udev/
+	ln -sf ${sysconfdir}/udev/rules.d ${D}/lib/udev/
 
  	cp ${S}/rules/rules.d/* ${D}${sysconfdir}/udev/rules.d/
 	cp ${S}/rules/packages/* ${D}${sysconfdir}/udev/rules.d/
#5 lore raw

Re: [PATCH 2/4] gcc: fix libstdc/libgcc packaging on x86_64

In reply to Michael Smith
Quoted 3 lines · Michael Smith

do_install was looking under ${D}/some long cross path/*/lib; needs to be lib64 on x86_64. On x86_64 base_libdir would be set to /lib64, so we can go by that.

this one looks ok. you need to install same for 4.3.4 atleast.

Quoted 76 lines

Bump INC_PR for recent gccs (4.3.3, 4.4.1). Hopefully no one is using older gcc for x86_64.

---
 recipes/gcc/gcc-4.3.3.inc         |    2 +-
 recipes/gcc/gcc-4.4.1.inc         |    2 +-
 recipes/gcc/gcc-package-cross.inc |   13 ++++++++-----
 3 files changed, 10 insertions(+), 7 deletions(-)
recipes/gcc/gcc-4.3.3.inc +1 -1
index 5802492..4a3cb49 100644
@@ -7,7 +7,7 @@ LICENSE = "GPLv3"
 
 DEPENDS = "mpfr gmp"
 
-INC_PR = "r5"
+INC_PR = "r6"
 
 SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
 	file://fedora/gcc43-c++-builtin-redecl.patch;patch=1;pnum=0 \
recipes/gcc/gcc-4.4.1.inc +1 -1
index a5b9d91..2759ab9 100644
@@ -7,7 +7,7 @@ LICENSE = "GPLv3"
 
 DEPENDS = "mpfr gmp"
 
-INC_PR = "r1"
+INC_PR = "r2"
 
 FILESPATHPKG .= ":gcc-$PV"
 
recipes/gcc/gcc-package-cross.inc +8 -5
index fa1f47f..6c4f9bb 100644
@@ -29,7 +29,9 @@ do_install () {
         elif [  -f ${D}${prefix}/*/lib/nof/libgcc_s.so.? ]; then
                 mv -f ${D}${prefix}/*/lib/nof/libgcc_s.so* ${D}${target_base_libdir}
         else
-                mv -f ${D}${prefix}/*/lib/libgcc_s.so* ${D}${target_base_libdir} || true 
+                # Look for .../${TARGET_SYS}/lib/libgcc_s*
+                # (or /lib64/, on x86_64)
+                mv -f ${D}${prefix}/*/${target_base_libdir}/libgcc_s.so* ${D}${target_base_libdir} || true 
         fi
 
 
@@ -45,10 +47,11 @@ do_install () {
            mv -f ${D}${prefix}/*/lib/nof/libssp*.so* ${D}${target_libdir} || true 	
 
         else
-           mv -f ${D}${prefix}/*/lib/libstdc++.so* ${D}${target_libdir} || true
-           mv -f ${D}${prefix}/*/lib/libg2c.so* ${D}${target_libdir} || true
-           mv -f ${D}${prefix}/*/lib/libgfortran*.so* ${D}${target_libdir} || true
-           mv -f ${D}${prefix}/*/lib/libssp*.so* ${D}${target_libdir} || true
+           # Look for .../${TARGET_SYS}/lib/lib* (or /lib64/ on x86_64)
+           mv -f ${D}${prefix}/*/${target_base_libdir}/libstdc++.so* ${D}${target_libdir} || true
+           mv -f ${D}${prefix}/*/${target_base_libdir}/libg2c.so* ${D}${target_libdir} || true
+           mv -f ${D}${prefix}/*/${target_base_libdir}/libgfortran*.so* ${D}${target_libdir} || true
+           mv -f ${D}${prefix}/*/${target_base_libdir}/libssp*.so* ${D}${target_libdir} || true
         fi
 
 
Signature · 7 lines
1.6.3


_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
#6 lore raw

Re: [PATCH 2/4] gcc: fix libstdc/libgcc packaging on x86_64

Quoted 5 lines · Khem Raj
Quoted 2 lines · Michael Smith

Bump INC_PR for recent gccs (4.3.3, 4.4.1). Hopefully no one is using older gcc for x86_64.

this one looks ok. you need to install same for 4.3.4 atleast.

OK, I'll bump PR for 4.1.2, 4.2.[34], 4.3.[34], 4.4.1 in the next patch ver.

Mike

#7 lore raw

Re: [PATCH 2/4] gcc: fix libstdc/libgcc packaging on x86_64

In reply to Michael Smith

FWIW, Ubuntu Hardy LTS 8.04 is on GCC 4.2.3:

http://packages.ubuntu.com/search?keywords=gcc

Hardy LTS is the "Long-Term Support" version of Ubuntu, that they support for 2 years. It will be replaced in April 2010, which isn't tooooo far away.

Douglas.

Quoted 7 lines · Michael Smith

do_install was looking under ${D}/some long cross path/*/lib; needs to be lib64 on x86_64. On x86_64 base_libdir would be set to /lib64, so we can go by that.

Bump INC_PR for recent gccs (4.3.3, 4.4.1). Hopefully no one is using older gcc for x86_64.

=======================================================================
This email, including any attachments, is only for the intended addressee. It is subject to copyright, is confidential and may be the subject of legal or other privilege, none of which is waived or lost by reason of this transmission.
If the receiver is not the intended addressee, please accept our apologies, notify us by return, delete all copies and perform no other act on the email.
Unfortunately, we cannot warrant that the email has not been altered or corrupted during transmission.
=======================================================================

#8 lore raw

Re: [PATCH 2/4] gcc: fix libstdc/libgcc packaging on x86_64

Quoted 7 lines · Douglas Royds

FWIW, Ubuntu Hardy LTS 8.04 is on GCC 4.2.3:

http://packages.ubuntu.com/search?keywords=gcc

Hardy LTS is the "Long-Term Support" version of Ubuntu, that they support for 2 years. It will be replaced in April 2010, which isn't tooooo far away.

Hardy is my main build machine. I hope OE will continue to work with it.

Hardy will be EOL'd on the desktop in April 2011. Support for the console/server version will run another two years after that.

https://wiki.ubuntu.com/Releases

#9 lore raw

Re: [PATCH 2/4] gcc: fix libstdc/libgcc packaging on x86_64

Quoted 3 lines

From: Rolf Leggewie <[email protected]>

Hardy is my main build machine. I hope OE will continue to work with it.

Yes, I bumped a limited set of INC_PRs because the change affected only builds for x86_64 targets, and I think that usage is quite rare and probably limited to newer GCCs. I just didn't want to force everybody to rebuild when the vast majority are not building for 64.

It should in no way affect compatibility with other GCCs, other than that if someone is already using one to build for x86_64, their libgcc pkg will stay broken tilll they force a rebuild :)

Mike