浏览代码

Accomodate building under cygwin

Eric Andersen 22 年之前
父节点
当前提交
f947f2b100
共有 1 个文件被更改,包括 16 次插入1 次删除
  1. 16 1
      extra/gcc-uClibc/gcc-uClibc.c

+ 16 - 1
extra/gcc-uClibc/gcc-uClibc.c

@@ -75,7 +75,6 @@
 #include <stdarg.h>
 #include <string.h>
 #include <unistd.h>
-#include <libgen.h>
 
 #include "gcc-uClibc.h"
 
@@ -90,6 +89,22 @@ static char nostdlib[] = "-nostdlib";
 static char nostdinc_plus[] = "-nostdinc++";
 #endif
 
+/* Include a local implementation of basename, since this
+ * uses the host system's C lib, and CYGWIN apparently
+ * doesn't provide an implementation of basename(). */
+char *basename(const char *path)
+{
+	register const char *s;
+	register const char *p;
+	p = s = path;
+	while (*s) {
+		if (*s++ == '/') {
+			p = s;
+		}
+	}
+	return (char *) p;
+}
+
 
 extern void *xmalloc(size_t size)
 {