Previous: POSIX Jobserver Interaction, Up: Sharing Job Slots with GNU make
[Contents][Index]
On Windows systems the jobserver is implemented as a named semaphore. The semaphore will be set with an initial count equal to the number of available slots; to obtain a slot you must wait on the semaphore (with or without a timeout). To release a slot, release the semaphore.
To access the semaphore you must parse the MAKEFLAGS
variable and
look for the argument string --jobserver-auth=NAME
where
‘NAME’ is the name of the named semaphore. Use this name with
OpenSemaphore
to create a handle to the semaphore.
The only valid style for --jobserver-style
is ‘sem’.
There are various error conditions you must consider to ensure your implementation is robust:
SIGINT
), etc. You may want to install signal handlers to
manage this write-back.