Re: Problem with ControlFileData structure being ABI depe ndent
От | Gregory Stark |
---|---|
Тема | Re: Problem with ControlFileData structure being ABI depe ndent |
Дата | |
Msg-id | 877ijqprdj.fsf@oxford.xeocode.com обсуждение исходный текст |
Ответ на | Re: Problem with ControlFileData structure being ABI depe ndent ("Magnus Hagander" <magnus@hagander.net>) |
Ответы |
Re: Problem with ControlFileData structure being ABI depe
ndent
|
Список | pgsql-hackers |
"Magnus Hagander" <magnus@hagander.net> writes: >> > I guess my advice would be to see if we can define _USE_32BIT_TIME_T >> > in port/win32.h and make it go away that way. It'd definitely be nice >> > if MSVC and Mingw builds weren't binary-incompatible. >> >> The attached patch defines it in the MSVC project files along with the >> other API-config related macros. It fixes all the offsets so they match >> mingw, but the CRC is still different for some as-yet unknown reason... > > Is the project file really the proper place? Consider an add-on module - > wouldn't we want the setting to go in that one as well? meaning we'd have it in > a header file instead? For an add-on module which is actually using time_t to interface with Postgres it had better define _USE_... itself or else it risks having some files use them and some not. An alternative is leaving it in the project file but putting something like this in c.h: #ifdef WIN32 #ifndef _USE_32BIT_TIME_T #error "Postgres uses 32 bit time_t add #define _USE_32BIT_TIME_T on Windows #endif #endif For modules which *do* use time_t this is safer. However for modules which don't use time_t it'll be an unnecessary hassle. -- Gregory Stark EnterpriseDB http://www.enterprisedb.com Ask me about EnterpriseDB's RemoteDBA services!
В списке pgsql-hackers по дате отправления: