diff options
author | 卜部昌平 <shyouhei@ruby-lang.org> | 2019-12-04 17:16:30 +0900 |
---|---|---|
committer | 卜部昌平 <shyouhei@ruby-lang.org> | 2019-12-26 20:45:12 +0900 |
commit | 5e22f873ed26092522f9bfc617d729bac88b284f (patch) | |
tree | 8d66856526cd7efa87b46c966298e6f42d67e68f /process.c | |
parent | 33e9601938a79dae149caa88ff1bc06d376dd376 (diff) |
decouple internal.h headers
Saves comitters' daily life by avoid #include-ing everything from
internal.h to make each file do so instead. This would significantly
speed up incremental builds.
We take the following inclusion order in this changeset:
1. "ruby/config.h", where _GNU_SOURCE is defined (must be the very
first thing among everything).
2. RUBY_EXTCONF_H if any.
3. Standard C headers, sorted alphabetically.
4. Other system headers, maybe guarded by #ifdef
5. Everything else, sorted alphabetically.
Exceptions are those win32-related headers, which tend not be self-
containing (headers have inclusion order dependencies).
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/2711
Diffstat (limited to 'process.c')
-rw-r--r-- | process.c | 72 |
1 files changed, 46 insertions, 26 deletions
@@ -12,82 +12,106 @@ **********************************************************************/ #include "ruby/config.h" -#include "ruby/io.h" -#include "internal.h" -#include "ruby/thread.h" -#include "ruby/util.h" -#include "vm_core.h" -#include "hrtime.h" -#include <stdio.h> +#include <ctype.h> #include <errno.h> #include <signal.h> +#include <stdarg.h> +#include <stdio.h> +#include <time.h> + #ifdef HAVE_STDLIB_H -#include <stdlib.h> +# include <stdlib.h> #endif + #ifdef HAVE_UNISTD_H -#include <unistd.h> +# include <unistd.h> #endif + #ifdef HAVE_FCNTL_H -#include <fcntl.h> +# include <fcntl.h> #endif + #ifdef HAVE_PROCESS_H -#include <process.h> +# include <process.h> #endif -#include <time.h> -#include <ctype.h> - #ifndef EXIT_SUCCESS -#define EXIT_SUCCESS 0 +# define EXIT_SUCCESS 0 #endif + #ifndef EXIT_FAILURE -#define EXIT_FAILURE 1 +# define EXIT_FAILURE 1 #endif #ifdef HAVE_SYS_WAIT_H # include <sys/wait.h> #endif + #ifdef HAVE_SYS_RESOURCE_H # include <sys/resource.h> #endif + #ifdef HAVE_VFORK_H # include <vfork.h> #endif + #ifdef HAVE_SYS_PARAM_H # include <sys/param.h> #endif + #ifndef MAXPATHLEN # define MAXPATHLEN 1024 #endif -#include "ruby/st.h" #include <sys/stat.h> #ifdef HAVE_SYS_TIME_H -#include <sys/time.h> +# include <sys/time.h> #endif + #ifdef HAVE_SYS_TIMES_H -#include <sys/times.h> +# include <sys/times.h> #endif #ifdef HAVE_PWD_H -#include <pwd.h> +# include <pwd.h> #endif + #ifdef HAVE_GRP_H -#include <grp.h> +# include <grp.h> # ifdef __CYGWIN__ int initgroups(const char *, rb_gid_t); # endif #endif + #ifdef HAVE_SYS_ID_H -#include <sys/id.h> +# include <sys/id.h> #endif #ifdef __APPLE__ # include <mach/mach_time.h> #endif +#include "dln.h" +#include "hrtime.h" +#include "internal.h" +#include "internal/bits.h" +#include "internal/error.h" +#include "internal/eval.h" +#include "internal/hash.h" +#include "internal/mjit.h" +#include "internal/object.h" +#include "internal/process.h" +#include "internal/thread.h" +#include "internal/variable.h" +#include "internal/warnings.h" +#include "ruby/io.h" +#include "ruby/st.h" +#include "ruby/thread.h" +#include "ruby/util.h" +#include "vm_core.h" + /* define system APIs */ #ifdef _WIN32 #undef open @@ -317,8 +341,6 @@ close_unless_reserved(int fd) /*#define DEBUG_REDIRECT*/ #if defined(DEBUG_REDIRECT) -#include <stdarg.h> - static void ttyprintf(const char *fmt, ...) { @@ -1572,8 +1594,6 @@ after_fork_ruby(void) } #endif -#include "dln.h" - #if defined(HAVE_WORKING_FORK) /* try_with_sh and exec_with_sh should be async-signal-safe. Actually it is.*/ |