From: mistachkin Date: Mon, 19 Jan 2015 20:05:53 +0000 (+0000) Subject: Fix compilation on Cygwin when SQLITE_MAX_WORKER_THREADS is greater than zero. X-Git-Tag: version-3.8.9~163 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=89ea0d379a44c19f7ca9263705aeed5e81ffba2c;p=thirdparty%2Fsqlite.git Fix compilation on Cygwin when SQLITE_MAX_WORKER_THREADS is greater than zero. FossilOrigin-Name: 2037442c582e51d85967bc911ea4a412eb4da573 --- diff --git a/manifest b/manifest index 136cb71f94..cabfaf3916 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Enhance\sthe\scommand-line\sshell\swith\sthe\sability\sto\sset\sthe\nSQLITE_TESTCTRL_NEVER_CORRUPT\sflag\susing:\s".testctrl\snever_corrupt\s1". -D 2015-01-19T15:05:54.471 +C Fix\scompilation\son\sCygwin\swhen\sSQLITE_MAX_WORKER_THREADS\sis\sgreater\sthan\szero. +D 2015-01-19T20:05:53.508 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 5407a688f4d77a05c18a8142be8ae5a2829dd610 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -216,7 +216,7 @@ F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04 F src/os_setup.h c9d4553b5aaa6f73391448b265b89bed0b890faa F src/os_unix.c aefeaf915aaef9f81aa2645e0d5d06fa1bd83beb F src/os_win.c a5ac9e249ed0ca33de6de27898a08d313effc40c -F src/os_win.h 09e751b20bbc107ffbd46e13555dc73576d88e21 +F src/os_win.h eb7a47aa17b26b77eb97e4823f20a00b8bda12ca F src/pager.c 4120a49ecd37697e28f5ed807f470b9c0b88410c F src/pager.h c3476e7c89cdf1c6914e50a11f3714e30b4e0a77 F src/parse.y c5d0d964f9ac023e8154cad512e54b0b6058e086 @@ -285,7 +285,7 @@ F src/test_thread.c af391ec03d23486dffbcc250b7e58e073f172af9 F src/test_vfs.c 5a14c63da9579ba148138c1fb233100f2eb58ebb F src/test_vfstrace.c bab9594adc976cbe696ff3970728830b4c5ed698 F src/test_wsd.c 41cadfd9d97fe8e3e4e44f61a4a8ccd6f7ca8fe9 -F src/threads.c 2fb3ea4d70d5acf68b539c2489b4adace61cc01b +F src/threads.c 6bbcc9fe50c917864d48287b4792d46d6e873481 F src/tokenize.c e00458c9938072b0ea711c850b8dcf4ddcb5fe18 F src/trigger.c 25571661fdeae8c7f975ff40ffec205520a3f92f F src/update.c 3c4ecc282accf12d39edb8d524cf089645e55a13 @@ -1236,7 +1236,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P 10321910990195878c0af1e94b34ae0cdc0cb31b -R 1842536563f5d094d57991d4a5161858 -U drh -Z b40ce48cd42cd2dd2358d0667c50be5c +P 824328f9833d01fc155a9d0265ef41d338cf1ffb +R 46d0fc0085c932a30f59bac1bd145cf7 +U mistachkin +Z 998ddd7b1750b28ed4b199120a25244e diff --git a/manifest.uuid b/manifest.uuid index a042232dda..5c080e945f 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -824328f9833d01fc155a9d0265ef41d338cf1ffb \ No newline at end of file +2037442c582e51d85967bc911ea4a412eb4da573 \ No newline at end of file diff --git a/src/os_win.h b/src/os_win.h index 5174ac7781..17d6a2bef4 100644 --- a/src/os_win.h +++ b/src/os_win.h @@ -74,4 +74,15 @@ # define SQLITE_WIN32_VOLATILE volatile #endif +/* +** For some Windows sub-platforms, the _beginthreadex() / _endthreadex() +** functions are not available (e.g. those not using MSVC, Cygwin, etc). +*/ +#if SQLITE_OS_WIN && !SQLITE_OS_WINCE && !SQLITE_OS_WINRT && \ + SQLITE_THREADSAFE>0 && !defined(__CYGWIN__) +# define SQLITE_OS_WIN_THREADS 1 +#else +# define SQLITE_OS_WIN_THREADS 0 +#endif + #endif /* _OS_WIN_H_ */ diff --git a/src/threads.c b/src/threads.c index 16f52498c3..4ce6122274 100644 --- a/src/threads.c +++ b/src/threads.c @@ -101,7 +101,7 @@ int sqlite3ThreadJoin(SQLiteThread *p, void **ppOut){ /********************************* Win32 Threads ****************************/ -#if SQLITE_OS_WIN && !SQLITE_OS_WINCE && !SQLITE_OS_WINRT && SQLITE_THREADSAFE>0 +#if SQLITE_OS_WIN_THREADS #define SQLITE_THREADS_IMPLEMENTED 1 /* Prevent the single-thread code below */ #include @@ -194,7 +194,7 @@ int sqlite3ThreadJoin(SQLiteThread *p, void **ppOut){ return (rc==WAIT_OBJECT_0) ? SQLITE_OK : SQLITE_ERROR; } -#endif /* SQLITE_OS_WIN && !SQLITE_OS_WINCE && !SQLITE_OS_WINRT */ +#endif /* SQLITE_OS_WIN_THREADS */ /******************************** End Win32 Threads *************************/