aboutsummaryrefslogtreecommitdiff
path: root/src/include/port
Commit message (Collapse)AuthorAge
* Add URLs to document why DLLIMPORT is needed on Windows.Bruce Momjian2012-11-07
| | | | Per email from Craig Ringer
* Remove checks for now long outdated compilers.Andrew Dunstan2012-09-28
|
* Run pgindent on 9.2 source tree in preparation for first 9.3Bruce Momjian2012-06-10
| | | | commit-fest.
* Remove BSD/OS (BSDi) port. There are no known users upgrading toBruce Momjian2012-05-03
| | | | Postgres 9.2, and perhaps no existing users either.
* Remove dead portsPeter Eisentraut2012-05-01
| | | | | | | | | | | | | | Remove the following ports: - dgux - nextstep - sunos4 - svr4 - ultrix4 - univel These are obsolete and not worth rescuing. In most cases, there is circumstantial evidence that they wouldn't work anymore anyway.
* Lots of doc corrections.Robert Haas2012-04-23
| | | | Josh Kupershmidt
* Support for building with MS Visual Studio 2010.Andrew Dunstan2012-01-03
| | | | Brar Piening, reviewed by Craig Ringer.
* Enable compiling with the mingw-w64 32 bit compiler.Andrew Dunstan2011-12-10
| | | | | | | Original patch by Lars Kanis, reviewed by Nishiyama Tomoaki and tweaked some by me. This compiler, or at least the latest version of it, is currently broken, and only passes the regression tests if built with -O0.
* Revert "Force use of "%I64d" format for 64 bit ints on MinGW."Andrew Dunstan2011-04-27
| | | | | | This reverts commit 52d01c2f52c462d29ae0fdfa44c3cae129148a6d. the UINT64_FORMAT bit broke the b uildfarm, so I'm reverting the whole thing pending further investigation.
* Force use of "%I64d" format for 64 bit ints on MinGW.Andrew Dunstan2011-04-27
| | | | | Both this and "%lld" work, but the compiler's format checking doesn't like "%lld", so we get all sorts of spurious warnings.
* Assorted minor changes to silence Windows compiler warnings.Andrew Dunstan2011-04-25
| | | | Mostly to do with macro redefinitions or object signedness.
* Fix char2wchar/wchar2char to support collations properly.Tom Lane2011-04-23
| | | | | | | | | | | | | | | | | These functions should take a pg_locale_t, not a collation OID, and should call mbstowcs_l/wcstombs_l where available. Where those functions are not available, temporarily select the correct locale with uselocale(). This change removes the bogus assumption that all locales selectable in a given database have the same wide-character conversion method; in particular, the collate.linux.utf8 regression test now passes with LC_CTYPE=C, so long as the database encoding is UTF8. I decided to move the char2wchar/wchar2char functions out of mbutils.c and into pg_locale.c, because they work on wchar_t not pg_wchar_t and thus don't really belong with the mbutils.c functions. Keeping them where they were would have required importing pg_locale_t into pg_wchar.h somehow, which did not seem like a good plan.
* Add some more mapping macros for Microsoft wide-character API.Tom Lane2011-04-10
| | | | Per buildfarm.
* pgindent run before PG 9.1 beta 1.Bruce Momjian2011-04-10
|
* Add collation support on Windows (MSVC build)Peter Eisentraut2011-04-10
| | | | | There is not yet support in initdb to populate the pg_collation catalog, but if that is done manually, the rest should work.
* Fix typoAndrew Dunstan2011-01-30
|
* Enable building with the Mingw64 compiler.Andrew Dunstan2011-01-30
| | | | | | This can be used to build 64 bit Windows binaries, not only on 64 bit Windows but on supported cross-compiling hosts including 32 bit Windows, Cygwin, Darwin and Linux.
* Support for collecting crash dumps on WindowsMagnus Hagander2010-12-19
| | | | | | | | | | Add support for collecting "minidump" style crash dumps on Windows, by setting up an exception handling filter. Crash dumps will be generated in PGDATA/crashdumps if the directory is created (the existance of the directory is used as on/off switch for the generation of the dumps). Craig Ringer and Magnus Hagander
* Make S_IRGRP etc available in mingw builds as well as MSVC.Tom Lane2010-12-12
| | | | | | (Hm, I wonder whether BCC defines them either...) Also label dangling endifs a bit better in this area.
* Provide a complete set of file-permission-bit macros in win32.h.Tom Lane2010-12-11
| | | | | | My previous patch exposed the fact that we didn't have these. Those hard-wired octal constants were actually wrong on Windows, not just inconsistent.
* Force default wal_sync_method to be fdatasync on Linux.Tom Lane2010-12-08
| | | | | | | | | | | | | | | | | | | | | | | Recent versions of the Linux system header files cause xlogdefs.h to believe that open_datasync should be the default sync method, whereas formerly fdatasync was the default on Linux. open_datasync is a bad choice, first because it doesn't actually outperform fdatasync (in fact the reverse), and second because we try to use O_DIRECT with it, causing failures on certain filesystems (e.g., ext4 with data=journal option). This part of the patch is largely per a proposal from Marti Raudsepp. More extensive changes are likely to follow in HEAD, but this is as much change as we want to back-patch. Also clean up confusing code and incorrect documentation surrounding the fsync_writethrough option. Those changes shouldn't result in any actual behavioral change, but I chose to back-patch them anyway to keep the branches looking similar in this area. In 9.0 and HEAD, also do some copy-editing on the WAL Reliability documentation section. Back-patch to all supported branches, since any of them might get used on modern Linux versions.
* Don't use __declspec (dllimport) for PGDLLEXPORT to reduce warningsItagaki Takahiro2010-11-10
| | | | | by gcc version 4 on mingw and cygwin. We don't use dllexport here because dllexport and dllwrap don't work well together.
* Remove cvs keywords from all files.Magnus Hagander2010-09-20
|
* Fix several broken $PostgreSQL$ keywords. Noted while experimentingTom Lane2010-09-19
| | | | with Magnus's script to remove these.
* pgindent run for 9.0, second runBruce Momjian2010-07-06
|
* PGDLLEXPORT is __declspec (dllexport) only on MSVC,Itagaki Takahiro2010-05-28
| | | | | but is __declspec (dllimport) on other compilers because cygwin and mingw don't like dllexport.
* Mark PG_MODULE_MAGIC and PG_FUNCTION_INFO_V1 with PGDLLEXPORTItagaki Takahiro2010-05-27
| | | | independently from BUILDING_DLL. It is always __declspec(dllexport).
* Add emulation of non-blocking sockets to the win32 socket/signal layer,Magnus Hagander2010-02-16
| | | | | | | | | and use this in pq_getbyte_if_available. It's only a limited implementation which swithes the whole emulation layer no non-blocking mode, but that's enough as long as non-blocking is only used during a short period of time, and only one socket is accessed during this time.
* Support inlining various small performance-critical functions on non-GCCTom Lane2010-02-13
| | | | | | | | | compilers, by applying a configure check to see if the compiler will accept an unreferenced "static inline foo ..." function without warnings. It is believed that such warnings are the only reason not to declare inlined functions in headers, if the compiler understands "inline" at all. Kurt Harriman
* Make RADIUS authentication use pg_getaddrinfo_all() to get address ofMagnus Hagander2010-02-02
| | | | | | | the server. Gets rid of a fairly ugly hack for Solaris, and also provides hostname and IPV6 support.
* Define INADDR_NONE on Solaris when it's missing. Per a couple of buildfarmMagnus Hagander2010-01-28
| | | | members complaining.
* Make ssize_t 64-bit on Win64, for compatibility with for example plpython.Magnus Hagander2010-01-02
|
* Change our WIN32 API version to be 5.01 (Windows XP), to bring in the properMagnus Hagander2009-09-07
| | | | IPV6 headers in newer SDKs.
* Reserve the shared memory region during backend startup on Windows, soMagnus Hagander2009-07-24
| | | | | | | | | | that memory allocated by starting third party DLLs doesn't end up conflicting with it. Hopefully this solves the long-time issue with "could not reattach to shared memory" errors on Win32. Patch from Tsutomu Yamada and me, based on idea from Trevor Talbot.
* 8.4 pgindent run, with new combined Linux/FreeBSD/MinGW typedef listBruce Momjian2009-06-11
| | | | provided by Andrew.
* Assorted portability fixes for Borland C, from Pavel Golub.Tom Lane2009-04-19
|
* Make win32 builds always do SetEnvironmentVariable() when doing putenv().Magnus Hagander2009-01-21
| | | | | | | | | | | Also, if linked against other versions than the default MSVCRT library (for example the MSVC build which links against MSVCRT80), also update the cache in the default MSVCRT at the same time. This should fix the issues with setting LC_MESSAGES on the MSVC build. Original patch from Hiroshi Inoue and Hiroshi Saito, much rewritten by me.
* Update MinGW so it handles fseeko() similar to Unix.Bruce Momjian2009-01-07
|
* Move carefully obscured SunOS 4 specific #include out of c.h into portPeter Eisentraut2008-12-11
| | | | | header file. SunOS 4 is probably broken anyway, but this item stuck out as completely weird.
* Add $PostgreSQL$ markers to a lot of files that were missing them.Andrew Dunstan2008-05-17
| | | | | | | | | | This particular batch was just for *.c and *.h file. The changes were made with the following 2 commands: find . \( \( -name 'libstemmer' -o -name 'expected' -o -name 'ppport.h' \) -prune \) -o \( -name '*.[ch]' \) \( -exec grep -q '\$PostgreSQL' {} \; -o -print \) | while read file ; do head -n 1 < $file | grep -q '^/\*' && echo $file; done | xargs -l sed -i -e '1s/^\// /' -e '1i/*\n * $PostgreSQL:$ \n *' find . \( \( -name 'libstemmer' -o -name 'expected' -o -name 'ppport.h' \) -prune \) -o \( -name '*.[ch]' \) \( -exec grep -q '\$PostgreSQL' {} \; -o -print \) | xargs -l sed -i -e '1i/*\n * $PostgreSQL:$ \n */'
* Replace time_t with pg_time_t (same values, but always int64) in on-diskTom Lane2008-02-17
| | | | | | | | | | | | | | data structures and backend internal APIs. This solves problems we've seen recently with inconsistent layout of pg_control between machines that have 32-bit time_t and those that have already migrated to 64-bit time_t. Also, we can get out from under the problem that Windows' Unix-API emulation is not consistent about the width of time_t. There are a few remaining places where local time_t variables are used to hold the current or recent result of time(NULL). I didn't bother changing these since they do not affect any cross-module APIs and surely all platforms will have 64-bit time_t before overflow becomes an actual risk. time_t should be avoided for anything visible to extension modules, however.
* Don't enforce 32-bit time_t for FRONTEND apps. Fixes standaloneMagnus Hagander2008-01-09
| | | | builds of libpq in both 32 and 64-bit. Per gripe from Hiroshi Saito.
* Use _USE_32BIT_TIME_T when building with MSVC. Also, enforce that it'sMagnus Hagander2007-12-11
| | | | | | used when building addons. Dave Page
* Borland BCC does not support SSPI, per cnliou9@fastmail.fm.Bruce Momjian2007-11-24
|
* Borland CC 5.5.1 needs ssize_t, per cnliou9@fastmail.fm.Bruce Momjian2007-11-24
|
* pgindent run for 8.3.Bruce Momjian2007-11-15
|
* New versions of mingw have gettimeofday(), so add an autoconf testMagnus Hagander2007-10-29
| | | | for this.
* Change win32 child-death tracking code to use a threadpool to wait forMagnus Hagander2007-10-26
| | | | | | | | childprocess deaths instead of using one thread per child. This drastastically reduces the address space usage and should allow for more backends running. Also change the win32_waitpid functionality to use an IO Completion Port for queueing child death notices instead of using a fixed-size array.
* Rename DLLIMPORT macro to PGDLLIMPORT to avoid conflict withMagnus Hagander2007-07-25
| | | | third party includes (like tcl) that define DLLIMPORT.
* Make it possible, and default, for MingW to build with SSPI supportMagnus Hagander2007-07-24
| | | | | by dynamically loading the function that's missing from the MingW headers and library.