Not all operating systems support job control. GNU systems do support job control, but if you are using the GNU C Library on some other system, that system may not support job control itself.
You can use the
_POSIX_JOB_CONTROL macro to test at compile-time
whether the system supports job control. See System Options.
If job control is not supported, then there can be only one process
group per session, which behaves as if it were always in the foreground.
The functions for creating additional process groups simply fail with
the error code
The macros naming the various job control signals (see Job Control Signals) are defined even if job control is not supported. However, the system never generates these signals, and attempts to send a job control signal or examine or specify their actions report errors or do nothing.