[ruby-cvs:78948] 5e22f873ed (master): decouple internal.h headers

Unknown <[email protected]> Thu, 26 Dec 2019 20:45:36 +0900 (JST)
Newsgroups gmane.comp.lang.ruby.cvs
Message-ID <[email protected]>
卜部昌平	2019-12-04 17:16:30 +0900 (Wed, 04 Dec 2019)

  New Revision: 5e22f873ed

  https://github.com/ruby/ruby/commit/5e22f873ed

  Log:
    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).

  Modified files:
    array.c
    ast.c
    bignum.c
    class.c
    compar.c
    compile.c
    complex.c
    constant.h
    cont.c
    coroutine/amd64/Context.h
    coroutine/arm32/Context.h
    coroutine/arm64/Context.h
    coroutine/ppc64le/Context.h
    coroutine/win32/Context.h
    coroutine/win64/Context.h
    coroutine/x86/Context.h
    debug.c
    dir.c
    dln.c
    dln.h
    enc/encdb.c
    encindex.h
    encoding.c
    enum.c
    enumerator.c
    error.c
    eval.c
    ext/-test-/bignum/big2str.c
    ext/-test-/bignum/bigzero.c
    ext/-test-/bignum/div.c
    ext/-test-/bignum/intpack.c
    ext/-test-/bignum/mul.c
    ext/-test-/bignum/str2big.c
    ext/-test-/integer/core_ext.c
    ext/-test-/rational/rat.c
    ext/-test-/string/capacity.c
    ext/-test-/string/cstr.c
    ext/-test-/string/normalize.c
    ext/-test-/time/leap_second.c
    ext/coverage/coverage.c
    ext/objspace/objspace.c
    ext/objspace/objspace_dump.c
    ext/pty/pty.c
    ext/socket/rubysocket.h
    file.c
    gc.c
    gc.h
    hash.c
    id_table.h
    inits.c
    internal.h
    internal/array.h
    internal/class.h
    internal/compilers.h
    internal/error.h
    internal/gc.h
    internal/hash.h
    internal/io.h
    internal/parse.h
    internal/string.h
    internal/struct.h
    internal/symbol.h
    internal/variable.h
    internal/vm.h
    io.c
    iseq.c
    iseq.h
    load.c
    marshal.c
    math.c
    method.h
    mini_builtin.c
    mjit.c
    mjit.h
    mjit_compile.c
    node.c
    numeric.c
    object.c
    pack.c
    parse.y
    proc.c
    process.c
    random.c
    range.c
    rational.c
    re.c
    ruby.c
    signal.c
    sprintf.c
    st.c
    strftime.c
    string.c
    struct.c
    symbol.c
    symbol.h
    template/prelude.c.tmpl
    thread.c
    time.c
    timev.h
    tool/mk_builtin_loader.rb
    transcode.c
    transient_heap.c
    util.c
    variable.c
    vm.c
    vm_backtrace.c
    vm_core.h
    vm_dump.c
    vm_insnhelper.c
    vm_trace.c
    win32/dir.h
    win32/file.c
    win32/win32.c