[patch] C++ mangeling of SPU headers
Ken Werner
ken@linux.vnet.ibm.com
Mon Jun 9 14:26:00 GMT 2008
Hi,
this patch prevents the symbols from being mangled if g++ is used. Ok to
apply?
Ken
newlib/ChangeLog:
2008-06-09 Ken Werner <ken.werner@de.ibm.com>
* libc/machine/spu/sys/dirent.h: Add extern "C" specifier if C++.
* libc/machine/spu/sys/sched.h: Likewise.
* libc/machine/spu/sys/syscall.h: Likewise.
Index: src/newlib/libc/machine/spu/sys/dirent.h
===================================================================
--- src.orig/newlib/libc/machine/spu/sys/dirent.h
+++ src/newlib/libc/machine/spu/sys/dirent.h
@@ -32,6 +32,9 @@
*/
#ifndef _SYS_DIRENT_H
#define _SYS_DIRENT_H
+#ifdef __cplusplus
+extern "C" {
+#endif
#define MAXNAMLEN 255
@@ -54,4 +57,7 @@ struct dirent *readdir (DIR *);
void rewinddir(DIR *);
void seekdir(DIR *dir, off_t offset);
off_t telldir(DIR *dir);
+#ifdef __cplusplus
+}
+#endif
#endif
Index: src/newlib/libc/machine/spu/sys/sched.h
===================================================================
--- src.orig/newlib/libc/machine/spu/sys/sched.h
+++ src/newlib/libc/machine/spu/sys/sched.h
@@ -1,6 +1,12 @@
#ifndef _SYS_SCHED_H
#define _SYS_SCHED_H
+#ifdef __cplusplus
+extern "C" {
+#endif
int sched_yield(void);
+#ifdef __cplusplus
+}
+#endif
#endif
Index: src/newlib/libc/machine/spu/sys/syscall.h
===================================================================
--- src.orig/newlib/libc/machine/spu/sys/syscall.h
+++ src/newlib/libc/machine/spu/sys/syscall.h
@@ -1,4 +1,10 @@
#ifndef _SYS_SYSCALL_H
#define _SYS_SYSCALL_H
+#ifdef __cplusplus
+extern "C" {
+#endif
int __send_to_ppe(unsigned int signalcode, unsigned int opcode, void *data);
+#ifdef __cplusplus
+}
+#endif
#endif
More information about the Newlib
mailing list