[uClibc-cvs] uClibc/libc/sysdeps/linux/mips cacheflush.c,NONE,1.1 Makefile,1.26,1.27
Erik Andersen
andersen at codepoet.org
Thu Jan 30 17:24:00 UTC 2003
Update of /var/cvs/uClibc/libc/sysdeps/linux/mips
In directory winder:/tmp/cvs-serv17058/libc/sysdeps/linux/mips
Modified Files:
Makefile
Added Files:
cacheflush.c
Log Message:
Patch from Christophe Massiot:
Hello,
When using uClibc to compile the modutils for a MIPS target, the linker
outputs an "undefined symbol: _flush_cache". After some digging, it's
a syscall only available on the MIPS architecture, and the _flush_cache
symbol is in the GNU libc.
Attached patch defines it in uClibc as well. I'm not sure if I made it
the right way, though, but it works for me.
--- NEW FILE: cacheflush.c ---
/* brk system call for Linux/MIPS.
Copyright (C) 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, write to the Free
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#include <errno.h>
#include <unistd.h>
#include <sys/syscall.h>
_syscall3(int, cacheflush, void *, addr, const int, nbytes, const int, op);
weak_alias(cacheflush, _flush_cache)
_syscall3(int, cachectl, void *, addr, const int, nbytes, const int, op);
Index: Makefile
===================================================================
RCS file: /var/cvs/uClibc/libc/sysdeps/linux/mips/Makefile,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- Makefile 23 Jan 2003 17:55:23 -0000 1.26
+++ Makefile 30 Jan 2003 17:23:56 -0000 1.27
@@ -26,7 +26,7 @@
SSRC=bsd-_setjmp.S bsd-setjmp.S setjmp.S clone.S fork.S syscall.S
SOBJS=$(patsubst %.S,%.o, $(SSRC))
-CSRC=__longjmp.c brk.c vfork.c setjmp_aux.c _mmap.c pipe.c __syscall_error.c
+CSRC=__longjmp.c brk.c vfork.c setjmp_aux.c _mmap.c pipe.c __syscall_error.c cacheflush.c
COBJS=$(patsubst %.c,%.o, $(CSRC))
OBJS=$(SOBJS) $(MOBJ) $(COBJS)
More information about the uClibc-cvs
mailing list