/* A value which cannot be a process ID. */
#define NO_PID (pid_t)-1
+#define ANY_PID (pid_t)-1
+
/* System calls. */
#if !defined (HAVE_UNISTD_H)
extern pid_t fork (), getpid (), getpgrp ();
extern struct jobstats js;
extern pid_t original_pgrp, shell_pgrp, pipeline_pgrp;
-extern pid_t last_made_pid, last_asynchronous_pid;
+extern volatile pid_t last_made_pid, last_asynchronous_pid;
extern int asynchronous_notification;
extern JOB **jobs;
extern void wait_for_background_pids __P((void));
extern int wait_for __P((pid_t));
extern int wait_for_job __P((int));
+extern int wait_for_any_job __P((void));
extern void notify_and_cleanup __P((void));
extern void reap_dead_jobs __P((void));
extern void save_pgrp_pipe __P((int *, int));
extern void restore_pgrp_pipe __P((int *));
-#if defined (JOB_CONTROL)
-extern int job_control;
-#endif
+extern void set_maxchild __P((int));
+
+extern int job_control; /* set to 0 in nojobs.c */
#endif /* _JOBS_H_ */