Skip to contentSkip to conversation

grantlee: fix lpthread build error

PATCH New Zoltan at osuosl.org 3 participants 4 messages Nov 13, 2012 – Nov 15, 2012

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 grantlee: fix lpthread build error

From: "Zoltan Gyarmati" <[email protected]>

---
 .../grantlee-0.2.0-fix-lphread-link-error.patch    |   13 +++++++++++++
 1 file changed, 13 insertions(+)
 create mode 100644 package/grantlee/grantlee-0.2.0-fix-lphread-link-error.patch
package/grantlee/grantlee-0.2.0-fix-lphread-link-error.patch new file +13 -0
new file mode 100644
index 0000000..8293172
@@ -0,0 +1,13 @@
+diff -rupN grantlee-0.2.0_orig/templates/tests/CMakeLists.txt grantlee-0.2.0/templates/tests/CMakeLists.txt
+--- grantlee-0.2.0_orig/templates/tests/CMakeLists.txt	2012-11-13 12:11:44.583379820 +0100
++++ grantlee-0.2.0/templates/tests/CMakeLists.txt	2012-11-13 11:35:18.000000000 +0100
+@@ -68,7 +68,8 @@ macro(GRANTLEE_TEMPLATES_UNIT_TESTS)
+                   ${_testresource_rcc_src}
+     )
+     add_test(${_testname} ${_testname}_exec )
+-    target_link_libraries(${_testname}_exec ${QT_QTTEST_LIBRARY} grantlee_core )
++    find_package (Threads)
++    target_link_libraries(${_testname}_exec ${QT_QTTEST_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}  grantlee_core )
+ 
+     set_property(GLOBAL APPEND PROPERTY TEST_COVERAGE "${CMAKE_CURRENT_BINARY_DIR}/${_testname}_exec" )
+   endforeach(_testname)
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH 1/1 grantlee: fix lpthread build error

Quoted 4 lines · Zoltan at osuosl.org

From: "Zoltan Gyarmati"<[email protected]>

(it already worked for me, but at least this patch doesn't break things)

However, your patch still misses the following things:

- The commit message is too vague. It should describe the problem in more detail, including the root cause. For example:

grantlee: fix -lpthread build error

Build fails because of missing -lpthread with toolchains that need it. It
gives an error log like:
Linking CXX executable testgenerictypes_exec /home/buildroot12git/output/host/usr/lib/gcc/arm-buildroot-linux-uclibcgnueabi/4.6.3/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld:
/home/buildroot12git/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libQtCore.so: undefined reference to symbol 'pthread_cancel' /home/buildroot12git/output/host/usr/lib/gcc/arm-buildroot-linux-uclibcgnueabi/4.6.3/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld:
note: 'pthread_cancel' is defined in DSO /home/buildroot12git/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/lib/libpthread.so.0 so try adding it to the linker command line /home/buildroot12git/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/lib/libpthread.so.0: could not read
symbols: Invalid operation
collect2: ld returned 1 exit status
make[3]: *** [templates/tests/testgenerictypes_exec] Error 1
make[3]: Leaving directory `/home/buildroot12git/output/build/grantlee-0.2.0'
make[2]: *** [templates/tests/CMakeFiles/testgenerictypes_exec.dir/all] Error 2
make[2]: Leaving directory `/home/buildroot12git/output/build/grantlee-0.2.0'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/buildroot12git/output/build/grantlee-0.2.0'
make: *** [/home/buildroot12git/output/build/grantlee-0.2.0/.stamp_built] Error

- The patch itself should contain an equally detailed description (can be a copy of the commit message). It should also have your Signed-off-by line.

Both of these are minor things, however.

Regards,
Arnout

Quoted 24 lines
---
  .../grantlee-0.2.0-fix-lphread-link-error.patch    |   13 +++++++++++++
  1 file changed, 13 insertions(+)

create mode 100644 package/grantlee/grantlee-0.2.0-fix-lphread-link-error.patch

package/grantlee/grantlee-0.2.0-fix-lphread-link-error.patch new file +13 -0
new file mode 100644
index 0000000..8293172
@@ -0,0 +1,13 @@
+diff -rupN grantlee-0.2.0_orig/templates/tests/CMakeLists.txt grantlee-0.2.0/templates/tests/CMakeLists.txt
+--- grantlee-0.2.0_orig/templates/tests/CMakeLists.txt	2012-11-13 12:11:44.583379820 +0100
++++ grantlee-0.2.0/templates/tests/CMakeLists.txt	2012-11-13 11:35:18.000000000 +0100
+@@ -68,7 +68,8 @@ macro(GRANTLEE_TEMPLATES_UNIT_TESTS)
+                   ${_testresource_rcc_src}
+     )
+     add_test(${_testname} ${_testname}_exec )
+-    target_link_libraries(${_testname}_exec ${QT_QTTEST_LIBRARY} grantlee_core )
++    find_package (Threads)
++    target_link_libraries(${_testname}_exec ${QT_QTTEST_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}  grantlee_core )
+
+     set_property(GLOBAL APPEND PROPERTY TEST_COVERAGE "${CMAKE_CURRENT_BINARY_DIR}/${_testname}_exec" )
+   endforeach(_testname)
Signature · 6 lines
Arnout Vandecappelle                               arnout at mind be
Senior Embedded Software Architect                 +32-16-286540
Essensium/Mind                                     http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium                BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
#2 lore raw

PATCH 1/1 grantlee: fix lpthread build error

Quoted 81 lines · Arnout Vandecappelle
Quoted 4 lines · Zoltan at osuosl.org

From: "Zoltan Gyarmati"<[email protected]>

(it already worked for me, but at least this patch doesn't break things)

However, your patch still misses the following things:

- The commit message is too vague. It should describe the problem in more detail,
including the root cause. For example:

grantlee: fix -lpthread build error

Build fails because of missing -lpthread with toolchains that need it. It
gives an error log like:
Linking CXX executable testgenerictypes_exec /home/buildroot12git/output/host/usr/lib/gcc/arm-buildroot-linux-uclibcgnueabi/4.6.3/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld:
/home/buildroot12git/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libQtCore.so:
undefined reference to symbol 'pthread_cancel' /home/buildroot12git/output/host/usr/lib/gcc/arm-buildroot-linux-uclibcgnueabi/4.6.3/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld:
note: 'pthread_cancel' is defined in DSO /home/buildroot12git/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/lib/libpthread.so.0
so try adding it to the linker command line /home/buildroot12git/output/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/lib/libpthread.so.0:
could not read symbols: Invalid operation
collect2: ld returned 1 exit status
make[3]: *** [templates/tests/testgenerictypes_exec] Error 1
make[3]: Leaving directory
`/home/buildroot12git/output/build/grantlee-0.2.0'
make[2]: ***
[templates/tests/CMakeFiles/testgenerictypes_exec.dir/all] Error 2
make[2]: Leaving directory
`/home/buildroot12git/output/build/grantlee-0.2.0'
make[1]: *** [all] Error 2
make[1]: Leaving directory
`/home/buildroot12git/output/build/grantlee-0.2.0'
make: ***
[/home/buildroot12git/output/build/grantlee-0.2.0/.stamp_built] Error

- The patch itself should contain an equally detailed description (can be a copy
of the commit message). It should also have your Signed-off-by line.

Both of these are minor things, however.

Regards,
Arnout

Quoted 26 lines
---
  .../grantlee-0.2.0-fix-lphread-link-error.patch    |   13 
+++++++++++++
  1 file changed, 13 insertions(+)

create mode 100644
package/grantlee/grantlee-0.2.0-fix-lphread-link-error.patch

(quoted diff) +0 -0

a/package/grantlee/grantlee-0.2.0-fix-lphread-link-error.patch b/package/grantlee/grantlee-0.2.0-fix-lphread-link-error.patch new file mode 100644
index 0000000..8293172

package/grantlee/grantlee-0.2.0-fix-lphread-link-error.patch new file +1 -0
@@ -0,0 +1,13 @@
+diff -rupN grantlee-0.2.0_orig/templates/tests/CMakeLists.txt 

grantlee-0.2.0/templates/tests/CMakeLists.txt
+--- grantlee-0.2.0_orig/templates/tests/CMakeLists.txt 2012-11-13 12:11:44.583379820 +0100
++++ grantlee-0.2.0/templates/tests/CMakeLists.txt 2012-11-13
11:35:18.000000000 +0100
+@@ -68,7 +68,8 @@ macro(GRANTLEE_TEMPLATES_UNIT_TESTS)

package/grantlee/grantlee-0.2.0-fix-lphread-link-error.patch new file +4 -0
+                   ${_testresource_rcc_src}
+     )
+     add_test(${_testname} ${_testname}_exec )
+-    target_link_libraries(${_testname}_exec ${QT_QTTEST_LIBRARY} 
Quoted 9 lines
Quoted 8 lines

grantlee_core )
++ find_package (Threads)
++ target_link_libraries(${_testname}_exec ${QT_QTTEST_LIBRARY}
${CMAKE_THREAD_LIBS_INIT} grantlee_core )

package/grantlee/grantlee-0.2.0-fix-lphread-link-error.patch new file +2 -0
+
+     set_property(GLOBAL APPEND PROPERTY TEST_COVERAGE 

"${CMAKE_CURRENT_BINARY_DIR}/${_testname}_exec" )
+ endforeach(_testname)

Hi Arnout,

Thanks for checking! Should i resend it with corrections, or it will be ok like this?

Signature · 4 lines
br,
Zoltan Gyarmati
mail: mr.zoltan.gyarmati at gmail.com
freenode nick: zgyarmati
#3 lore raw

PATCH 1/1 grantlee: fix lpthread build error

Quoted 3 lines · Zoltan Gyarmati

Hi Arnout,

Thanks for checking! Should i resend it with corrections, or it will be ok like this?

If you're willing to and have time for it, it's better to resend with
corrections.

If you think this should still be in 2012.11 (probably yes), you can help Peter
by adding that to the subject, like so:

git send-email --subject-prefix='PATCH for-2012.11' ...

Regards,
Arnout

Signature · 6 lines
Arnout Vandecappelle                               arnout at mind be
Senior Embedded Software Architect                 +32-16-286540
Essensium/Mind                                     http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium                BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F