From d376a506cc25dc2beb5c88ded145bc5e807f9f85 Mon Sep 17 00:00:00 2001 From: Morten Sorvig Date: Wed, 16 Mar 2011 12:19:45 +0100 Subject: Rename qnaclunimplemented -> qfunctions_nacl (Match the existing files for wince and vxworks.) --- mkspecs/qws/linux-nacl-g++/qplatformdefs.h | 2 + mkspecs/qws/macx-nacl-g++/qplatformdefs.h | 2 + src/corelib/global/global.pri | 4 - src/corelib/global/qglobal.h | 4 - src/corelib/global/qnaclunimplemented.cpp | 156 ----------------------------- src/corelib/global/qnaclunimplemented.h | 97 ------------------ src/corelib/kernel/kernel.pri | 7 ++ src/corelib/kernel/qfunctions_nacl.cpp | 156 +++++++++++++++++++++++++++++ src/corelib/kernel/qfunctions_nacl.h | 97 ++++++++++++++++++ src/corelib/kernel/qfunctions_p.h | 2 + 10 files changed, 266 insertions(+), 261 deletions(-) delete mode 100644 src/corelib/global/qnaclunimplemented.cpp delete mode 100644 src/corelib/global/qnaclunimplemented.h create mode 100644 src/corelib/kernel/qfunctions_nacl.cpp create mode 100644 src/corelib/kernel/qfunctions_nacl.h diff --git a/mkspecs/qws/linux-nacl-g++/qplatformdefs.h b/mkspecs/qws/linux-nacl-g++/qplatformdefs.h index 70572bf..ec8ca8f 100644 --- a/mkspecs/qws/linux-nacl-g++/qplatformdefs.h +++ b/mkspecs/qws/linux-nacl-g++/qplatformdefs.h @@ -59,6 +59,8 @@ #define PATH_MAX 256 #include "../../common/posix/qplatformdefs.h" +#include "qfunctions_nacl.h" +#include #undef QT_LSTAT #define QT_LSTAT QT_STAT diff --git a/mkspecs/qws/macx-nacl-g++/qplatformdefs.h b/mkspecs/qws/macx-nacl-g++/qplatformdefs.h index f893238..05b133f 100644 --- a/mkspecs/qws/macx-nacl-g++/qplatformdefs.h +++ b/mkspecs/qws/macx-nacl-g++/qplatformdefs.h @@ -58,6 +58,8 @@ #define PATH_MAX 256 #include "../../common/posix/qplatformdefs.h" +#include "qfunctions_nacl.h" +#include #undef QT_LSTAT #define QT_LSTAT QT_STAT diff --git a/src/corelib/global/global.pri b/src/corelib/global/global.pri index 83caa96..d80706a 100644 --- a/src/corelib/global/global.pri +++ b/src/corelib/global/global.pri @@ -13,10 +13,6 @@ SOURCES += \ global/qmalloc.cpp \ global/qnumeric.cpp -nacl { - SOURCES += global/qnaclunimplemented.cpp -} - # qlibraryinfo.cpp includes qconfig.cpp INCLUDEPATH += $$QT_BUILD_TREE/src/corelib/global diff --git a/src/corelib/global/qglobal.h b/src/corelib/global/qglobal.h index 1879537..0bcaeb5 100644 --- a/src/corelib/global/qglobal.h +++ b/src/corelib/global/qglobal.h @@ -2714,10 +2714,6 @@ QT_LICENSED_MODULE(DBus) # define QT_NO_PROCESS #endif -#ifdef Q_OS_NACL -#include -#endif - #if defined (__ELF__) # if defined (Q_OS_LINUX) || defined (Q_OS_SOLARIS) || defined (Q_OS_FREEBSD) || defined (Q_OS_OPENBSD) || defined (Q_OS_IRIX) # define Q_OF_ELF diff --git a/src/corelib/global/qnaclunimplemented.cpp b/src/corelib/global/qnaclunimplemented.cpp deleted file mode 100644 index 1a89b8df..0000000 --- a/src/corelib/global/qnaclunimplemented.cpp +++ /dev/null @@ -1,156 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "qnaclunimplemented.h" -#include -#include - -/* - The purpose of this file is to stub out certain functions - that are not provided by the Native Client SDK. This is - done as an alterative to sprinkling the Qt sources with - NACL ifdefs. - - There are two main classes of functions: - - - Functions that are called but can have no effect: - For these we simply give an empty implementation - - - Functions that are referenced in the source code, but - is not/must not be called at run-time: - These we either leave undefined or implement with a - qFatal. - - This is a work in progress. -*/ - -extern "C" { - -void pthread_cleanup_push(void (*)(void *), void *) -{ - -} - -void pthread_cleanup_pop(int) -{ - -} - -int pthread_setcancelstate(int, int *) -{ - return 0; -} - -int pthread_setcanceltype(int, int *) -{ - return 0; -} - -void pthread_testcancel(void) -{ - -} - - -int pthread_cancel(pthread_t) -{ - return 0; -} - -int pthread_attr_setinheritsched(pthread_attr_t *,int) -{ - return 0; -} - - -int pthread_attr_getinheritsched(const pthread_attr_t *, int *) -{ - return 0; -} - -// event dispatcher, select -//struct fd_set; -//struct timeval; - -int fcntl(int, int, ...) -{ - return 0; -} - -int sigaction(int, const struct sigaction *, struct sigaction *) -{ - return 0; -} - -int open(const char *, int, ...) -{ - return 0; -} - -int open64(const char *, int, ...) -{ - return 0; -} - -int access(const char *, int) -{ - return 0; -} - -typedef long off64_t; -off64_t ftello64(void *) -{ - qFatal("ftello64 called"); - return 0; -} - -off64_t lseek64(int, off_t, int) -{ - qFatal("lseek64 called"); - return 0; -} - -} // Extern C - -int select(int, fd_set *, fd_set *, fd_set *, struct timeval *) -{ - return 0; -} diff --git a/src/corelib/global/qnaclunimplemented.h b/src/corelib/global/qnaclunimplemented.h deleted file mode 100644 index 921667e..0000000 --- a/src/corelib/global/qnaclunimplemented.h +++ /dev/null @@ -1,97 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). -** All rights reserved. -** Contact: Nokia Corporation (qt-info@nokia.com) -** -** This file is part of the QtCore module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** No Commercial Usage -** This file contains pre-release code and may not be distributed. -** You may use this file in accordance with the terms and conditions -** contained in the Technology Preview License Agreement accompanying -** this package. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPL included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 2.1 requirements -** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** If you have questions regarding the use of this file, please contact -** Nokia at qt-info@nokia.com. -** -** -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QNACLUNIMPLEMENTED_H -#define QNACLUNIMPLEMENTED_H - -#ifdef Q_OS_NACL - -#include - -// pthread -#include -#define PTHREAD_CANCEL_DISABLE 1 -#define PTHREAD_CANCEL_ENABLE 2 -#define PTHREAD_INHERIT_SCHED 3 - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -QT_MODULE(Core) - -extern "C" { - -void pthread_cleanup_push(void (*handler)(void *), void *arg); -void pthread_cleanup_pop(int execute); - -int pthread_setcancelstate(int state, int *oldstate); -int pthread_setcanceltype(int type, int *oldtype); -void pthread_testcancel(void); -int pthread_cancel(pthread_t thread); - -int pthread_attr_setinheritsched(pthread_attr_t *attr, - int inheritsched); -int pthread_attr_getinheritsched(const pthread_attr_t *attr, - int *inheritsched); - -// event dispatcher, select -//struct fd_set; -//struct timeval; -int fcntl(int fildes, int cmd, ...); -int sigaction(int sig, const struct sigaction * act, struct sigaction * oact); - -typedef long off64_t; -off64_t ftello64(void *stream); -off64_t lseek64(int fildes, off_t offset, int whence); -int open64(const char *path, int oflag, ...); - -} - -int select(int nfds, fd_set * readfds, fd_set * writefds, fd_set * errorfds, struct timeval * timeout); - -QT_END_NAMESPACE - -QT_END_HEADER - -#endif //Q_OS_NACL - -#endif //QNACLUNIMPLEMENTED_H diff --git a/src/corelib/kernel/kernel.pri b/src/corelib/kernel/kernel.pri index c3a6721..a3628b1 100644 --- a/src/corelib/kernel/kernel.pri +++ b/src/corelib/kernel/kernel.pri @@ -90,6 +90,13 @@ mac:!nacl { kernel/qcore_mac.cpp } +nacl { + SOURCES += \ + kernel/qfunctions_nacl.cpp + HEADERS += \ + kernel/qfunctions_nacl.h +} + unix:!symbian { SOURCES += \ kernel/qcore_unix.cpp \ diff --git a/src/corelib/kernel/qfunctions_nacl.cpp b/src/corelib/kernel/qfunctions_nacl.cpp new file mode 100644 index 0000000..bc14cf0 --- /dev/null +++ b/src/corelib/kernel/qfunctions_nacl.cpp @@ -0,0 +1,156 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qfunctions_nacl.h" +#include +#include + +/* + The purpose of this file is to stub out certain functions + that are not provided by the Native Client SDK. This is + done as an alterative to sprinkling the Qt sources with + NACL ifdefs. + + There are two main classes of functions: + + - Functions that are called but can have no effect: + For these we simply give an empty implementation + + - Functions that are referenced in the source code, but + is not/must not be called at run-time: + These we either leave undefined or implement with a + qFatal. + + This is a work in progress. +*/ + +extern "C" { + +void pthread_cleanup_push(void (*)(void *), void *) +{ + +} + +void pthread_cleanup_pop(int) +{ + +} + +int pthread_setcancelstate(int, int *) +{ + return 0; +} + +int pthread_setcanceltype(int, int *) +{ + return 0; +} + +void pthread_testcancel(void) +{ + +} + + +int pthread_cancel(pthread_t) +{ + return 0; +} + +int pthread_attr_setinheritsched(pthread_attr_t *,int) +{ + return 0; +} + + +int pthread_attr_getinheritsched(const pthread_attr_t *, int *) +{ + return 0; +} + +// event dispatcher, select +//struct fd_set; +//struct timeval; + +int fcntl(int, int, ...) +{ + return 0; +} + +int sigaction(int, const struct sigaction *, struct sigaction *) +{ + return 0; +} + +int open(const char *, int, ...) +{ + return 0; +} + +int open64(const char *, int, ...) +{ + return 0; +} + +int access(const char *, int) +{ + return 0; +} + +typedef long off64_t; +off64_t ftello64(void *) +{ + qFatal("ftello64 called"); + return 0; +} + +off64_t lseek64(int, off_t, int) +{ + qFatal("lseek64 called"); + return 0; +} + +} // Extern C + +int select(int, fd_set *, fd_set *, fd_set *, struct timeval *) +{ + return 0; +} diff --git a/src/corelib/kernel/qfunctions_nacl.h b/src/corelib/kernel/qfunctions_nacl.h new file mode 100644 index 0000000..921667e --- /dev/null +++ b/src/corelib/kernel/qfunctions_nacl.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtCore module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** No Commercial Usage +** This file contains pre-release code and may not be distributed. +** You may use this file in accordance with the terms and conditions +** contained in the Technology Preview License Agreement accompanying +** this package. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 2.1 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 2.1 requirements +** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** If you have questions regarding the use of this file, please contact +** Nokia at qt-info@nokia.com. +** +** +** +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QNACLUNIMPLEMENTED_H +#define QNACLUNIMPLEMENTED_H + +#ifdef Q_OS_NACL + +#include + +// pthread +#include +#define PTHREAD_CANCEL_DISABLE 1 +#define PTHREAD_CANCEL_ENABLE 2 +#define PTHREAD_INHERIT_SCHED 3 + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Core) + +extern "C" { + +void pthread_cleanup_push(void (*handler)(void *), void *arg); +void pthread_cleanup_pop(int execute); + +int pthread_setcancelstate(int state, int *oldstate); +int pthread_setcanceltype(int type, int *oldtype); +void pthread_testcancel(void); +int pthread_cancel(pthread_t thread); + +int pthread_attr_setinheritsched(pthread_attr_t *attr, + int inheritsched); +int pthread_attr_getinheritsched(const pthread_attr_t *attr, + int *inheritsched); + +// event dispatcher, select +//struct fd_set; +//struct timeval; +int fcntl(int fildes, int cmd, ...); +int sigaction(int sig, const struct sigaction * act, struct sigaction * oact); + +typedef long off64_t; +off64_t ftello64(void *stream); +off64_t lseek64(int fildes, off_t offset, int whence); +int open64(const char *path, int oflag, ...); + +} + +int select(int nfds, fd_set * readfds, fd_set * writefds, fd_set * errorfds, struct timeval * timeout); + +QT_END_NAMESPACE + +QT_END_HEADER + +#endif //Q_OS_NACL + +#endif //QNACLUNIMPLEMENTED_H diff --git a/src/corelib/kernel/qfunctions_p.h b/src/corelib/kernel/qfunctions_p.h index 3d41c0c..d27fec3 100644 --- a/src/corelib/kernel/qfunctions_p.h +++ b/src/corelib/kernel/qfunctions_p.h @@ -59,6 +59,8 @@ # include "QtCore/qfunctions_wince.h" #elif defined(Q_OS_VXWORKS) # include "QtCore/qfunctions_vxworks.h" +#elif defined(Q_OS_NACL) +# include "QtCore/qfunctions_nacl.h" #endif #ifdef Q_CC_RVCT -- cgit v0.12