COMMON: Forbid use of getcwd&getwd; add macro to enable unistd.h compatibility

This commit is contained in:
Max Horn 2011-05-03 14:30:25 +02:00
parent a50c36d138
commit 2fa63ca015
13 changed files with 88 additions and 70 deletions

View file

@ -22,6 +22,8 @@
#ifdef __N64__ #ifdef __N64__
#define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#include "backends/fs/n64/n64-fs.h" #include "backends/fs/n64/n64-fs.h"
#include "backends/fs/n64/romfsstream.h" #include "backends/fs/n64/romfsstream.h"

View file

@ -25,9 +25,8 @@
#if defined(UNIX) #if defined(UNIX)
// Re-enable some forbidden symbols to avoid clashes with stat.h and unistd.h. // Re-enable some forbidden symbols to avoid clashes with stat.h and unistd.h.
#define FORBIDDEN_SYMBOL_EXCEPTION_chdir #define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#define FORBIDDEN_SYMBOL_EXCEPTION_mkdir #define FORBIDDEN_SYMBOL_EXCEPTION_mkdir
#define FORBIDDEN_SYMBOL_EXCEPTION_unlink
#include "backends/fs/posix/posix-fs-factory.h" #include "backends/fs/posix/posix-fs-factory.h"
#include "backends/fs/posix/posix-fs.h" #include "backends/fs/posix/posix-fs.h"

View file

@ -25,9 +25,8 @@
#if defined(UNIX) #if defined(UNIX)
// Re-enable some forbidden symbols to avoid clashes with stat.h and unistd.h. // Re-enable some forbidden symbols to avoid clashes with stat.h and unistd.h.
#define FORBIDDEN_SYMBOL_EXCEPTION_chdir #define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#define FORBIDDEN_SYMBOL_EXCEPTION_mkdir #define FORBIDDEN_SYMBOL_EXCEPTION_mkdir
#define FORBIDDEN_SYMBOL_EXCEPTION_unlink
#include "backends/fs/posix/posix-fs.h" #include "backends/fs/posix/posix-fs.h"
#include "backends/fs/stdiostream.h" #include "backends/fs/stdiostream.h"

View file

@ -38,9 +38,7 @@
// for the PSP port // for the PSP port
#define FORBIDDEN_SYMBOL_EXCEPTION_printf #define FORBIDDEN_SYMBOL_EXCEPTION_printf
// Avoid clashes with unistd.h #define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#define FORBIDDEN_SYMBOL_EXCEPTION_chdir
#define FORBIDDEN_SYMBOL_EXCEPTION_unlink
#include "backends/fs/psp/psp-fs-factory.h" #include "backends/fs/psp/psp-fs-factory.h"
#include "backends/fs/psp/psp-fs.h" #include "backends/fs/psp/psp-fs.h"

View file

@ -40,11 +40,9 @@
#define FORBIDDEN_SYMBOL_EXCEPTION_time_h #define FORBIDDEN_SYMBOL_EXCEPTION_time_h
#define FORBIDDEN_SYMBOL_EXCEPTION_mkdir #define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
// Avoid clashes with unistd.h #define FORBIDDEN_SYMBOL_EXCEPTION_mkdir
#define FORBIDDEN_SYMBOL_EXCEPTION_chdir
#define FORBIDDEN_SYMBOL_EXCEPTION_unlink
#include "backends/fs/psp/psp-fs.h" #include "backends/fs/psp/psp-fs.h"
#include "backends/fs/psp/psp-stream.h" #include "backends/fs/psp/psp-stream.h"

View file

@ -23,9 +23,9 @@
#if defined(__WII__) #if defined(__WII__)
#define FORBIDDEN_SYMBOL_EXCEPTION_time_h #define FORBIDDEN_SYMBOL_EXCEPTION_time_h
#define FORBIDDEN_SYMBOL_EXCEPTION_chdir #define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#define FORBIDDEN_SYMBOL_EXCEPTION_mkdir #define FORBIDDEN_SYMBOL_EXCEPTION_mkdir
#define FORBIDDEN_SYMBOL_EXCEPTION_unlink
#include "backends/fs/wii/wii-fs.h" #include "backends/fs/wii/wii-fs.h"
#include "backends/fs/wii/wii-fs-factory.h" #include "backends/fs/wii/wii-fs-factory.h"

View file

@ -22,9 +22,7 @@
* $Id$ * $Id$
*/ */
// Avoid clashes with unistd.h #define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#define FORBIDDEN_SYMBOL_EXCEPTION_chdir
#define FORBIDDEN_SYMBOL_EXCEPTION_unlink
#include "dc.h" #include "dc.h"
#include "backends/fs/abstract-fs.h" #include "backends/fs/abstract-fs.h"

View file

@ -24,8 +24,7 @@
*/ */
#define FORBIDDEN_SYMBOL_EXCEPTION_printf #define FORBIDDEN_SYMBOL_EXCEPTION_printf
#define FORBIDDEN_SYMBOL_EXCEPTION_chdir #define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#define FORBIDDEN_SYMBOL_EXCEPTION_mkdir
#include "common/config-manager.h" #include "common/config-manager.h"
#include "common/zlib.h" #include "common/zlib.h"

View file

@ -23,6 +23,8 @@
* *
*/ */
#define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#include "backends/platform/samsungtv/samsungtv.h" #include "backends/platform/samsungtv/samsungtv.h"
#include "backends/plugins/sdl/sdl-provider.h" #include "backends/plugins/sdl/sdl-provider.h"
#include "base/main.h" #include "base/main.h"

View file

@ -23,6 +23,8 @@
* *
*/ */
#define FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#include "backends/platform/webos/webos.h" #include "backends/platform/webos/webos.h"
#include "backends/plugins/sdl/sdl-provider.h" #include "backends/plugins/sdl/sdl-provider.h"
#include "base/main.h" #include "base/main.h"

View file

@ -20,6 +20,7 @@
*/ */
#define FORBIDDEN_SYMBOL_EXCEPTION_chdir #define FORBIDDEN_SYMBOL_EXCEPTION_chdir
#define FORBIDDEN_SYMBOL_EXCEPTION_getcwd
#define FORBIDDEN_SYMBOL_EXCEPTION_printf #define FORBIDDEN_SYMBOL_EXCEPTION_printf
#include <sys/stat.h> #include <sys/stat.h>

View file

@ -144,7 +144,9 @@
#endif #endif
//
// Disable various symbols from time.h // Disable various symbols from time.h
//
#ifndef FORBIDDEN_SYMBOL_EXCEPTION_time_h #ifndef FORBIDDEN_SYMBOL_EXCEPTION_time_h
/* /*
@ -201,12 +203,33 @@
#endif // FORBIDDEN_SYMBOL_EXCEPTION_time_h #endif // FORBIDDEN_SYMBOL_EXCEPTION_time_h
//
// Disable various symbols from unistd.h
//
#ifndef FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#ifndef FORBIDDEN_SYMBOL_EXCEPTION_chdir #ifndef FORBIDDEN_SYMBOL_EXCEPTION_chdir
#undef chdir #undef chdir
#define chdir(a) FORBIDDEN_SYMBOL_REPLACEMENT #define chdir(a) FORBIDDEN_SYMBOL_REPLACEMENT
#endif #endif
#ifndef FORBIDDEN_SYMBOL_EXCEPTION_getcwd
#undef getcwd
#define getcwd(a,b) FORBIDDEN_SYMBOL_REPLACEMENT
#endif
#ifndef FORBIDDEN_SYMBOL_EXCEPTION_getwd
#undef getwd
#define getwd(a) FORBIDDEN_SYMBOL_REPLACEMENT
#endif
#ifndef FORBIDDEN_SYMBOL_EXCEPTION_unlink
#undef unlink
#define unlink(a) FORBIDDEN_SYMBOL_REPLACEMENT
#endif
#endif // FORBIDDEN_SYMBOL_EXCEPTION_unistd_h
#ifndef FORBIDDEN_SYMBOL_EXCEPTION_mkdir #ifndef FORBIDDEN_SYMBOL_EXCEPTION_mkdir
#undef mkdir #undef mkdir
#define mkdir(a,b) FORBIDDEN_SYMBOL_REPLACEMENT #define mkdir(a,b) FORBIDDEN_SYMBOL_REPLACEMENT
@ -224,11 +247,6 @@
#define setvbuf(a,b,c,d) FORBIDDEN_SYMBOL_REPLACEMENT #define setvbuf(a,b,c,d) FORBIDDEN_SYMBOL_REPLACEMENT
#endif #endif
#ifndef FORBIDDEN_SYMBOL_EXCEPTION_unlink
#undef unlink
#define unlink(a) FORBIDDEN_SYMBOL_REPLACEMENT
#endif
/* /*
* We also would like to disable the following symbols; * We also would like to disable the following symbols;
* however, these are also frequently used in regular code, * however, these are also frequently used in regular code,

View file

@ -22,6 +22,8 @@
* $Id$ * $Id$
*/ */
#define FORBIDDEN_SYMBOL_EXCEPTION_getcwd
#if defined(WIN32) && !defined(_WIN32_WCE) && !defined(__SYMBIAN32__) #if defined(WIN32) && !defined(_WIN32_WCE) && !defined(__SYMBIAN32__)
#define WIN32_LEAN_AND_MEAN #define WIN32_LEAN_AND_MEAN
#include <windows.h> #include <windows.h>