where EXEC_BACKEND?

Started by abdelhak benmohamedover 16 years ago3 messages
#1abdelhak benmohamed
abdelhak.benmohamed@yahoo.fr

hi,

actually i try to execute postgres step by step (on paper)
i don't retreive where EXEC_BACKEND is initialized
can any one help me?
it is very important for me

thanks

#2Andrew Dunstan
andrew@dunslane.net
In reply to: abdelhak benmohamed (#1)
Re: where EXEC_BACKEND?

abdelhak benmohamed wrote:

hi,

actually i try to execute postgres step by step (on paper)
i don't retreive where EXEC_BACKEND is initialized
can any one help me?
it is very important for me

thanks

normally it is added to the CPP_FLAGS by configure, if needed (i.e. for
the Windows gcc build), or by the Project (for the MSVC build).

It's not defined in any include file.

On Unix it is only ever used to test the way the Windows port works, and
then you have to define it manually, e.g. by passing it in to configure
via preset CPP_FLAGS. Standard Unix builds don't work this way.

cheers

andrew

#3Alvaro Herrera
alvherre@commandprompt.com
In reply to: abdelhak benmohamed (#1)
Re: where EXEC_BACKEND?

abdelhak benmohamed wrote:

hi,

actually i try to execute postgres step by step (on paper)
i don't retreive where EXEC_BACKEND is initialized
can any one help me?
it is very important for me

Nowhere. If you want it, you have to define it manually in
pg_config_manual.h.

EXEC_BACKEND is a source code hack that allows the Unix build (which
normally uses only fork() without exec()) to follow the same startup
code as the Windows version (which uses CreateProcess(), equivalent to
both fork() and exec()), allowing for better debuggability for those of
us that do not use Windows.

If you want to follow postmaster initialization on a POSIX platform,
it's easier if you just assume that EXEC_BACKEND is not defined.

--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.