aboutsummaryrefslogtreecommitdiffstats
path: root/win32
diff options
context:
space:
mode:
author卜部昌平 <shyouhei@ruby-lang.org>2019-12-04 17:16:30 +0900
committer卜部昌平 <shyouhei@ruby-lang.org>2019-12-26 20:45:12 +0900
commit5e22f873ed26092522f9bfc617d729bac88b284f (patch)
tree8d66856526cd7efa87b46c966298e6f42d67e68f /win32
parent33e9601938a79dae149caa88ff1bc06d376dd376 (diff)
downloadruby-5e22f873ed26092522f9bfc617d729bac88b284f.tar.gz
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).
Diffstat (limited to 'win32')
-rw-r--r--win32/dir.h3
-rw-r--r--win32/file.c1
-rw-r--r--win32/win32.c4
3 files changed, 8 insertions, 0 deletions
diff --git a/win32/dir.h b/win32/dir.h
index 29c4c1c6d5..a0759804f6 100644
--- a/win32/dir.h
+++ b/win32/dir.h
@@ -1,5 +1,8 @@
#ifndef RUBY_WIN32_DIR_H
#define RUBY_WIN32_DIR_H
+#include <stdint.h> /* for uint8_t */
+#include <esent.h> /* for WCHAR */
+#include "ruby/encoding.h" /* for rb_encoding */
#define DT_UNKNOWN 0
#define DT_DIR (S_IFDIR>>12)
diff --git a/win32/file.c b/win32/file.c
index 9d21370019..133b5fbdb0 100644
--- a/win32/file.c
+++ b/win32/file.c
@@ -5,6 +5,7 @@
#include "ruby/ruby.h"
#include "ruby/encoding.h"
#include "internal.h"
+#include "internal/error.h"
#include <winbase.h>
#include <wchar.h>
#include <shlwapi.h>
diff --git a/win32/win32.c b/win32/win32.c
index 247ac918d4..0fa3855fb3 100644
--- a/win32/win32.c
+++ b/win32/win32.c
@@ -55,6 +55,10 @@
#include "win32/file.h"
#include "id.h"
#include "internal.h"
+#include "internal/enc.h"
+#include "internal/object.h"
+#include "internal/static_assert.h"
+#include "internal/stdbool.h"
#include "encindex.h"
#define isdirsep(x) ((x) == '/' || (x) == '\\')