diff --git a/meta/recipes-extended/zypper/zypper/dso_linking_change_build_fix.patch b/meta/recipes-extended/zypper/zypper/dso_linking_change_build_fix.patch new file mode 100644 index 0000000000..0da196f5be --- /dev/null +++ b/meta/recipes-extended/zypper/zypper/dso_linking_change_build_fix.patch @@ -0,0 +1,58 @@ +after gcc linking has changed, all the libraries must be explicitely specified +This patch avoids these linking errors: + +| Linking CXX executable zypp-refresh +| cd /build_disk/poky_build/build0/tmp/work/i586-poky-linux/zypper-1.4.7-git0+9eb0e248e06c8d20ad054be2439149d9ede37531-r2/git/src && /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/bin/cmake -E cmake_link_script CMakeFiles/zypp-refresh.dir/link.txt --verbose=1 +| /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/bin/i586-poky-linux/i586-poky-linux-g++ -march=i586 --sysroot=/build_disk/poky_build/build0/tmp/sysroots/i586-poky-linux -fpermissive -g -O2 -Wall -Woverloaded-virtual -fstack-protector -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed CMakeFiles/zypp-refresh.dir/zypp-refresh.cc.o -o zypp-refresh -rdynamic -lzypp +| /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.5.1/ld: �: invalid DSO for symbol `pthread_cancel@@GLIBC_2.0' definition +| /build_disk/poky_build/build0/tmp/sysroots/i586-poky-linux/lib/libpthread.so.0: could not read symbols: Bad value +| collect2: ld returned 1 exit status +| make[2]: *** [src/zypp-refresh] Error 1 +| make[2]: Leaving directory `/build_disk/poky_build/build0/tmp/work/i586-poky-linux/zypper-1.4.7-git0+9eb0e248e06c8d20ad054be2439149d9ede37531-r2/git' +| make[1]: *** [src/CMakeFiles/zypp-refresh.dir/all] Error 2 + + +| Linking CXX executable zypper +| cd /build_disk/poky_build/build0/tmp/work/i586-poky-linux/zypper-1.4.7-git0+9eb0e248e06c8d20ad054be2439149d9ede37531-r3/git/src && /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/bin/cmake -E cmake_link_script CMakeFiles/zypper.dir/link.txt --verbose=1 +| /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/bin/i586-poky-linux/i586-poky-linux-g++ -march=i586 --sysroot=/build_disk/poky_build/build0/tmp/sysroots/i586-poky-linux -fpermissive -g -O2 -Wall -Woverloaded-virtual -fstack-protector -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed CMakeFiles/zypper.dir/main.cc.o -o zypper -rdynamic libzypper_lib.a -lzypp -lreadline -laugeas -laugeas +| /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.5.1/ld: �: invalid DSO for symbol `pthread_cancel@@GLIBC_2.0' definition +| /build_disk/poky_build/build0/tmp/sysroots/i586-poky-linux/lib/libpthread.so.0: could not read symbols: Bad value +| collect2: ld returned 1 exit status +| make[2]: *** [src/zypper] Error 1 + + +| Linking CXX executable zypper +| cd /build_disk/poky_build/build0/tmp/work/i586-poky-linux/zypper-1.4.7-git0+9eb0e248e06c8d20ad054be2439149d9ede37531-r3/git/src && /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/bin/cmake -E cmake_link_script CMakeFiles/zypper.dir/link.txt --verbose=1 +| /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/bin/i586-poky-linux/i586-poky-linux-g++ -march=i586 --sysroot=/build_disk/poky_build/build0/tmp/sysroots/i586-poky-linux -fpermissive -g -O2 -Wall -Woverloaded-virtual -fstack-protector -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed CMakeFiles/zypper.dir/main.cc.o -o zypper -rdynamic libzypper_lib.a -lzypp -lreadline -laugeas -laugeas -lpthread +| /build_disk/poky_build/build0/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.5.1/ld: �: invalid DSO for symbol `clock_gettime@@GLIBC_2.2' definition +| /build_disk/poky_build/build0/tmp/sysroots/i586-poky-linux/lib/librt.so.1: could not read symbols: Bad value +| collect2: ld returned 1 exit status +| make[2]: *** [src/zypper] Error 1 + + +Nitin A Kamble +Date: 2011/01/19 + + +Index: git/src/CMakeLists.txt +=================================================================== +--- git.orig/src/CMakeLists.txt 2010-12-20 00:02:02.000000000 -0800 ++++ git/src/CMakeLists.txt 2011-01-19 09:23:13.432758255 -0800 +@@ -93,7 +93,7 @@ + TARGET_LINK_LIBRARIES( zypper_lib ${ZYPP_LIBRARY} ${READLINE_LIBRARY} -laugeas ${AUGEAS_LIBRARY} ) + + ADD_EXECUTABLE( zypper main.cc ) +-TARGET_LINK_LIBRARIES( zypper zypper_lib ${ZYPP_LIBRARY} ${READLINE_LIBRARY} -laugeas ${AUGEAS_LIBRARY} ) ++TARGET_LINK_LIBRARIES( zypper zypper_lib ${ZYPP_LIBRARY} ${READLINE_LIBRARY} -laugeas ${AUGEAS_LIBRARY} pthread rt ) + + + INSTALL( +@@ -115,7 +115,7 @@ + + # zypp-refresh utility + ADD_EXECUTABLE( zypp-refresh zypp-refresh.cc ) +-TARGET_LINK_LIBRARIES( zypp-refresh ${ZYPP_LIBRARY} ) ++TARGET_LINK_LIBRARIES( zypp-refresh ${ZYPP_LIBRARY} pthread ) + INSTALL( + TARGETS zypp-refresh + RUNTIME DESTINATION ${INSTALL_PREFIX}/sbin diff --git a/meta/recipes-extended/zypper/zypper_git.bb b/meta/recipes-extended/zypper/zypper_git.bb index c8895e5806..b9e2e85943 100644 --- a/meta/recipes-extended/zypper/zypper_git.bb +++ b/meta/recipes-extended/zypper/zypper_git.bb @@ -6,13 +6,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=3201406e350b39e05a82e28b5020f413" DEPENDS = "libzypp augeas" RRECOMMENDS_${PN} = "procps" -PR = "r2" +PR = "r3" inherit cmake SRC_URI = "git://gitorious.org/opensuse/zypper.git;protocol=git \ file://cmake.patch \ - " + file://dso_linking_change_build_fix.patch " S = "${WORKDIR}/git" PV = "1.4.7-git${SRCPV}"