[uClibc-cvs] uClibc/libc/sysdeps/linux/common ioctl.c,NONE,1.1 Makefile,1.78,1.79 syscalls.c,1.100,1.101

Erik Andersen andersen at codepoet.org
Tue Feb 18 05:48:12 UTC 2003


Update of /var/cvs/uClibc/libc/sysdeps/linux/common
In directory winder:/tmp/cvs-serv25442/libc/sysdeps/linux/common

Modified Files:
	Makefile syscalls.c 
Added Files:
	ioctl.c 
Log Message:
Fixup ioctl so we can special case powerpc silliness


--- NEW FILE: ioctl.c ---
#include <stdarg.h>
#include <sys/ioctl.h>

extern int __syscall_ioctl(int fd, int request, void *arg);

/* powerpc has its own special version... */
int ioctl(int fd, unsigned long int request, ...)
{
    void *arg;
    va_list list;

    va_start(list, request);
    arg = va_arg(list, void *);

    va_end(list);
    return __syscall_ioctl(fd, request, arg);
}


Index: Makefile
===================================================================
RCS file: /var/cvs/uClibc/libc/sysdeps/linux/common/Makefile,v
retrieving revision 1.78
retrieving revision 1.79
diff -u -d -r1.78 -r1.79
--- Makefile	17 Feb 2003 12:55:57 -0000	1.78
+++ Makefile	18 Feb 2003 05:48:08 -0000	1.79
@@ -19,11 +19,11 @@
 TOPDIR=../../../../
 include $(TOPDIR)Rules.mak
 
-CSRC=	waitpid.c getdnnm.c gethstnm.c getcwd.c \
+CSRC=	waitpid.c getdnnm.c gethstnm.c getcwd.c ptrace.c \
 	mkfifo.c setegid.c wait.c getpagesize.c seteuid.c \
-	wait3.c setpgrp.c getdtablesize.c create_module.c ptrace.c \
-	cmsg_nxthdr.c longjmp.c open64.c ftruncate64.c \
-	truncate64.c getrlimit64.c setrlimit64.c creat64.c mmap64.c \
+	wait3.c setpgrp.c getdtablesize.c create_module.c \
+	cmsg_nxthdr.c longjmp.c open64.c ftruncate64.c mmap64.c \
+	truncate64.c getrlimit64.c setrlimit64.c creat64.c \
 	llseek.c pread_write.c _exit.c sync.c getdirname.c \
 	sendfile64.c xstatconv.c getdents.c getdents64.c
 ifneq ($(strip $(EXCLUDE_BRK)),y)

Index: syscalls.c
===================================================================
RCS file: /var/cvs/uClibc/libc/sysdeps/linux/common/syscalls.c,v
retrieving revision 1.100
retrieving revision 1.101
diff -u -d -r1.100 -r1.101
--- syscalls.c	15 Feb 2003 23:49:41 -0000	1.100
+++ syscalls.c	18 Feb 2003 05:48:08 -0000	1.101
@@ -575,25 +575,16 @@
 //#define __NR_lock             53
 
 //#define __NR_ioctl            54
-#ifdef L__ioctl
+#ifdef L___syscall_ioctl
 #include <stdarg.h>
 #include <sys/ioctl.h>
-#define __NR__ioctl __NR_ioctl
-extern int _ioctl(int fd, int request, void *arg);
-
-_syscall3(int, _ioctl, int, fd, int, request, void *, arg);
-
-int ioctl(int fd, unsigned long int request, ...)
-{
-	void *arg;
-	va_list list;
-
-	va_start(list, request);
-	arg = va_arg(list, void *);
-
-	va_end(list);
-	return _ioctl(fd, request, arg);
-}
+#define __NR___syscall_ioctl __NR_ioctl
+extern int __syscall_ioctl(int fd, int request, void *arg);
+_syscall3(int, __syscall_ioctl, int, fd, int, request, void *, arg);
+#if !defined (__powerpc__)
+#include "ioctl.c"
+/* Also see ioctl.c and powerpc/ioctl.c */
+#endif
 #endif
 
 //#define __NR_fcntl            55




More information about the uClibc-cvs mailing list