From e83a2e233326f183766b78e579332880339cb5e7 Mon Sep 17 00:00:00 2001 From: Alexey Neyman Date: Thu, 31 Aug 2017 00:06:43 -0700 Subject: Pick up uClibc-ng fixes for static GDB build Signed-off-by: Alexey Neyman diff --git a/packages/uClibc-ng/1.0.25/0001-gdb8.patch b/packages/uClibc-ng/1.0.25/0001-gdb8.patch new file mode 100644 index 0000000..b4a70eb --- /dev/null +++ b/packages/uClibc-ng/1.0.25/0001-gdb8.patch @@ -0,0 +1,64 @@ +commit 111f01d432d542a153c1cad83def3a6ab57df7af +Author: Waldemar Brodkorb +Date: Sat Aug 5 11:28:07 2017 +0200 + + fix issues with gdb 8.0 + + GDB 8.0 is compiled and linked with g++, but the + linking of static targets (f.e. coldfire) fails, + without declaring the functions in thread_db.h + extern C. + + The compilation of gdb errors out with: + thread-db.o: In function `thread_db_init()': + thread-db.c:(.text+0x5b6): undefined reference to `td_ta_new(ps_prochandle*, td_thragent**)' + thread-db.c:(.text+0x61e): undefined reference to `td_thr_get_info(td_thrhandle const*, td_thrinfo*)' + thread-db.c:(.text+0x632): undefined reference to `td_symbol_list()' + .. + +diff --git a/libpthread/linuxthreads_db/thread_db.h b/libpthread/linuxthreads_db/thread_db.h +index 13c30af5b..ec79f6022 100644 +--- a/libpthread/linuxthreads_db/thread_db.h ++++ b/libpthread/linuxthreads_db/thread_db.h +@@ -27,6 +27,9 @@ + #include + #include + ++#ifdef __cplusplus ++extern "C" { ++#endif + + /* Error codes of the library. */ + typedef enum +@@ -455,4 +458,8 @@ extern td_err_e td_thr_dbsuspend (const td_thrhandle_t *__th); + /* Resume execution of thread TH. */ + extern td_err_e td_thr_dbresume (const td_thrhandle_t *__th); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* thread_db.h */ +diff --git a/libpthread/nptl_db/thread_db.h b/libpthread/nptl_db/thread_db.h +index 27ea69af8..993842ff5 100644 +--- a/libpthread/nptl_db/thread_db.h ++++ b/libpthread/nptl_db/thread_db.h +@@ -27,6 +27,9 @@ + #include + #include + ++#ifdef __cplusplus ++extern "C" { ++#endif + + /* Error codes of the library. */ + typedef enum +@@ -455,4 +458,8 @@ extern td_err_e td_thr_dbsuspend (const td_thrhandle_t *__th); + /* Resume execution of thread TH. */ + extern td_err_e td_thr_dbresume (const td_thrhandle_t *__th); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* thread_db.h */ diff --git a/packages/uClibc-ng/1.0.26/0001-gdb8.patch b/packages/uClibc-ng/1.0.26/0001-gdb8.patch new file mode 100644 index 0000000..b4a70eb --- /dev/null +++ b/packages/uClibc-ng/1.0.26/0001-gdb8.patch @@ -0,0 +1,64 @@ +commit 111f01d432d542a153c1cad83def3a6ab57df7af +Author: Waldemar Brodkorb +Date: Sat Aug 5 11:28:07 2017 +0200 + + fix issues with gdb 8.0 + + GDB 8.0 is compiled and linked with g++, but the + linking of static targets (f.e. coldfire) fails, + without declaring the functions in thread_db.h + extern C. + + The compilation of gdb errors out with: + thread-db.o: In function `thread_db_init()': + thread-db.c:(.text+0x5b6): undefined reference to `td_ta_new(ps_prochandle*, td_thragent**)' + thread-db.c:(.text+0x61e): undefined reference to `td_thr_get_info(td_thrhandle const*, td_thrinfo*)' + thread-db.c:(.text+0x632): undefined reference to `td_symbol_list()' + .. + +diff --git a/libpthread/linuxthreads_db/thread_db.h b/libpthread/linuxthreads_db/thread_db.h +index 13c30af5b..ec79f6022 100644 +--- a/libpthread/linuxthreads_db/thread_db.h ++++ b/libpthread/linuxthreads_db/thread_db.h +@@ -27,6 +27,9 @@ + #include + #include + ++#ifdef __cplusplus ++extern "C" { ++#endif + + /* Error codes of the library. */ + typedef enum +@@ -455,4 +458,8 @@ extern td_err_e td_thr_dbsuspend (const td_thrhandle_t *__th); + /* Resume execution of thread TH. */ + extern td_err_e td_thr_dbresume (const td_thrhandle_t *__th); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* thread_db.h */ +diff --git a/libpthread/nptl_db/thread_db.h b/libpthread/nptl_db/thread_db.h +index 27ea69af8..993842ff5 100644 +--- a/libpthread/nptl_db/thread_db.h ++++ b/libpthread/nptl_db/thread_db.h +@@ -27,6 +27,9 @@ + #include + #include + ++#ifdef __cplusplus ++extern "C" { ++#endif + + /* Error codes of the library. */ + typedef enum +@@ -455,4 +458,8 @@ extern td_err_e td_thr_dbsuspend (const td_thrhandle_t *__th); + /* Resume execution of thread TH. */ + extern td_err_e td_thr_dbresume (const td_thrhandle_t *__th); + ++#ifdef __cplusplus ++} ++#endif ++ + #endif /* thread_db.h */ -- cgit v0.10.2-6-g49f6