From 1d5292fdee826ae6ba701d0e58b638a2d65f53a5 Mon Sep 17 00:00:00 2001
From: Thomas Goyne <plorkyeran@aegisub.org>
Date: Tue, 15 Apr 2014 19:33:37 -0700
Subject: [PATCH] Kill config.h and just force-include acconf.h in non-pch
 builds

---
 Makefile.target                             |  6 ++++--
 automation/tests/aegisub.cpp                |  1 -
 libaegisub/ass/dialogue_parser.cpp          |  2 --
 libaegisub/common/cajun/elements.cpp        |  4 ----
 libaegisub/common/cajun/reader.cpp          |  1 -
 libaegisub/common/calltip_provider.cpp      |  2 --
 libaegisub/common/charset_6937.cpp          |  2 --
 libaegisub/common/charset_conv.cpp          |  4 +---
 libaegisub/common/color.cpp                 |  2 --
 libaegisub/common/dispatch.cpp              |  2 --
 libaegisub/common/file_mapping.cpp          |  2 --
 libaegisub/common/fs.cpp                    |  2 --
 libaegisub/common/hotkey.cpp                |  2 --
 libaegisub/common/json.cpp                  |  2 --
 libaegisub/common/kana_table.cpp            |  2 --
 libaegisub/common/karaoke_matcher.cpp       |  2 --
 libaegisub/common/keyframe.cpp              |  2 --
 libaegisub/common/log.cpp                   |  2 --
 libaegisub/common/mru.cpp                   |  2 --
 libaegisub/common/option.cpp                |  2 --
 libaegisub/common/option_visit.cpp          |  2 --
 libaegisub/common/parser.cpp                |  2 --
 libaegisub/common/path.cpp                  |  2 --
 libaegisub/common/util.cpp                  |  2 --
 libaegisub/common/vfr.cpp                   |  2 --
 libaegisub/config.h                         |  9 ---------
 libaegisub/lagi_pre.h                       |  4 +++-
 libaegisub/osx/util.mm                      |  2 --
 libaegisub/unix/access.cpp                  |  2 --
 libaegisub/unix/fs.cpp                      |  2 --
 libaegisub/unix/log.cpp                     |  2 --
 libaegisub/unix/util.cpp                    |  2 --
 libaegisub/windows/access.cpp               |  1 -
 libaegisub/windows/fs.cpp                   |  2 --
 libaegisub/windows/util_win.cpp             |  2 --
 src/aegisublocale.cpp                       |  2 --
 src/agi_pre.cpp                             |  1 -
 src/agi_pre.h                               |  2 --
 src/ass_attachment.cpp                      |  2 --
 src/ass_dialogue.cpp                        |  2 --
 src/ass_entry.cpp                           |  2 --
 src/ass_export_filter.cpp                   |  2 --
 src/ass_exporter.cpp                        |  2 --
 src/ass_file.cpp                            |  2 --
 src/ass_karaoke.cpp                         |  3 ---
 src/ass_override.cpp                        |  2 --
 src/ass_parser.cpp                          |  2 --
 src/ass_style.cpp                           |  2 --
 src/ass_style_storage.cpp                   |  2 --
 src/ass_time.cpp                            |  2 --
 src/audio_box.cpp                           |  2 --
 src/audio_colorscheme.cpp                   |  2 --
 src/audio_controller.cpp                    | 10 ----------
 src/audio_display.cpp                       |  4 ----
 src/audio_karaoke.cpp                       |  2 --
 src/audio_marker.cpp                        |  2 --
 src/audio_player.cpp                        |  2 --
 src/audio_player_alsa.cpp                   |  4 +---
 src/audio_player_dsound.cpp                 |  3 ---
 src/audio_player_dsound2.cpp                |  5 -----
 src/audio_player_openal.cpp                 |  2 --
 src/audio_player_oss.cpp                    |  3 ---
 src/audio_player_portaudio.cpp              |  2 --
 src/audio_player_pulse.cpp                  |  2 --
 src/audio_provider.cpp                      |  2 --
 src/audio_provider_avs.cpp                  |  2 --
 src/audio_provider_convert.cpp              |  2 --
 src/audio_provider_dummy.cpp                |  2 --
 src/audio_provider_ffmpegsource.cpp         |  2 --
 src/audio_provider_hd.cpp                   |  2 --
 src/audio_provider_lock.cpp                 |  2 --
 src/audio_provider_pcm.cpp                  |  2 --
 src/audio_provider_ram.cpp                  |  2 --
 src/audio_renderer.cpp                      | 15 ---------------
 src/audio_renderer_spectrum.cpp             |  4 ----
 src/audio_renderer_waveform.cpp             |  4 ----
 src/audio_timing_dialogue.cpp               |  2 --
 src/audio_timing_karaoke.cpp                |  2 --
 src/auto4_base.cpp                          |  2 --
 src/auto4_lua.cpp                           |  2 --
 src/auto4_lua_assfile.cpp                   |  2 --
 src/auto4_lua_dialog.cpp                    |  3 ---
 src/auto4_lua_progresssink.cpp              |  2 --
 src/auto4_lua_scriptreader.cpp              |  2 --
 src/auto4_regex.cpp                         |  2 --
 src/avisynth_wrap.cpp                       |  2 --
 src/base_grid.cpp                           |  2 --
 src/charset_detect.cpp                      |  3 ---
 src/colorspace.cpp                          |  2 --
 src/colour_button.cpp                       |  2 --
 src/command/app.cpp                         |  2 --
 src/command/audio.cpp                       |  2 --
 src/command/automation.cpp                  |  2 --
 src/command/edit.cpp                        |  2 --
 src/command/grid.cpp                        |  2 --
 src/command/help.cpp                        |  2 --
 src/command/keyframe.cpp                    |  2 --
 src/command/recent.cpp                      |  2 --
 src/command/subtitle.cpp                    |  2 --
 src/command/time.cpp                        |  2 --
 src/command/timecode.cpp                    |  2 --
 src/command/tool.cpp                        |  2 --
 src/command/video.cpp                       |  2 --
 src/command/vis_tool.cpp                    |  2 --
 src/config.h                                |  4 ----
 src/context.cpp                             |  2 --
 src/crash_writer.cpp                        |  2 --
 src/crash_writer_minidump.cpp               |  2 --
 src/dialog_about.cpp                        |  2 --
 src/dialog_attachments.cpp                  |  2 --
 src/dialog_automation.cpp                   |  2 --
 src/dialog_autosave.cpp                     |  2 --
 src/dialog_colorpicker.cpp                  |  3 ---
 src/dialog_detached_video.cpp               |  2 --
 src/dialog_dummy_video.cpp                  |  2 --
 src/dialog_export.cpp                       |  2 --
 src/dialog_export_ebu3264.cpp               |  2 --
 src/dialog_fonts_collector.cpp              |  3 ---
 src/dialog_jumpto.cpp                       |  2 --
 src/dialog_kara_timing_copy.cpp             |  3 ---
 src/dialog_log.cpp                          |  2 --
 src/dialog_paste_over.cpp                   |  2 --
 src/dialog_progress.cpp                     |  2 --
 src/dialog_properties.cpp                   |  2 --
 src/dialog_resample.cpp                     |  2 --
 src/dialog_search_replace.cpp               |  2 --
 src/dialog_selection.cpp                    |  2 --
 src/dialog_shift_times.cpp                  |  3 ---
 src/dialog_spellchecker.cpp                 |  2 --
 src/dialog_style_editor.cpp                 |  2 --
 src/dialog_style_manager.cpp                |  5 +----
 src/dialog_styling_assistant.cpp            |  2 --
 src/dialog_text_import.cpp                  |  3 ---
 src/dialog_timing_processor.cpp             |  2 --
 src/dialog_translation.cpp                  |  3 ---
 src/dialog_version_check.cpp                |  2 --
 src/dialog_video_details.cpp                |  2 --
 src/export_fixstyle.cpp                     |  2 --
 src/export_framerate.cpp                    |  2 --
 src/ffmpegsource_common.cpp                 |  3 ---
 src/fft.cpp                                 |  2 --
 src/font_file_lister.cpp                    |  2 --
 src/font_file_lister_fontconfig.cpp         |  6 +-----
 src/frame_main.cpp                          |  2 --
 src/gl_text.cpp                             |  2 --
 src/gl_wrap.cpp                             |  3 ---
 src/help_button.cpp                         |  3 ---
 src/hotkey.cpp                              |  2 --
 src/hotkey_data_view_model.cpp              |  4 ----
 src/initial_line_state.cpp                  |  2 --
 src/libresrc/libresrc.cpp                   |  2 --
 src/main.cpp                                |  3 ---
 src/menu.cpp                                |  2 --
 src/mkv_wrap.cpp                            |  2 --
 src/osx_utils.mm                            |  3 ---
 src/pen.cpp                                 |  2 --
 src/persist_location.cpp                    |  2 --
 src/preferences.cpp                         |  3 ---
 src/resolution_resampler.cpp                |  2 --
 src/retina_helper.mm                        |  4 ----
 src/scintilla_text_ctrl.cpp                 |  2 --
 src/scintilla_text_selection_controller.cpp |  2 --
 src/search_replace_engine.cpp               |  2 --
 src/selection_controller.cpp                |  2 --
 src/spellchecker.cpp                        |  2 --
 src/spellchecker_hunspell.cpp               |  2 --
 src/spline.cpp                              |  2 --
 src/spline_curve.cpp                        |  2 --
 src/string_codec.cpp                        |  2 --
 src/subs_controller.cpp                     |  2 --
 src/subs_edit_box.cpp                       |  2 --
 src/subs_edit_ctrl.cpp                      |  2 --
 src/subs_preview.cpp                        |  3 ---
 src/subtitle_format.cpp                     |  3 ---
 src/subtitle_format_ass.cpp                 |  2 --
 src/subtitle_format_ebu3264.cpp             |  2 --
 src/subtitle_format_encore.cpp              |  2 --
 src/subtitle_format_microdvd.cpp            |  2 --
 src/subtitle_format_mkv.cpp                 |  2 --
 src/subtitle_format_srt.cpp                 |  2 --
 src/subtitle_format_transtation.cpp         |  2 --
 src/subtitle_format_ttxt.cpp                |  2 --
 src/subtitle_format_txt.cpp                 |  2 --
 src/subtitles_provider.cpp                  |  2 --
 src/subtitles_provider_csri.cpp             |  2 --
 src/subtitles_provider_libass.cpp           |  2 --
 src/text_file_reader.cpp                    |  2 --
 src/text_file_writer.cpp                    |  2 --
 src/thesaurus.cpp                           |  2 --
 src/timeedit_ctrl.cpp                       |  2 --
 src/toggle_bitmap.cpp                       |  2 --
 src/toolbar.cpp                             |  3 ---
 src/tooltip_manager.cpp                     |  2 --
 src/utils.cpp                               |  4 ----
 src/validators.cpp                          |  2 --
 src/vector2d.cpp                            |  2 --
 src/version.cpp                             |  3 ---
 src/video_box.cpp                           |  2 --
 src/video_context.cpp                       |  2 --
 src/video_display.cpp                       |  2 --
 src/video_frame.cpp                         |  2 --
 src/video_out_gl.cpp                        |  2 --
 src/video_provider_avs.cpp                  |  2 --
 src/video_provider_cache.cpp                |  2 --
 src/video_provider_dummy.cpp                |  2 --
 src/video_provider_ffmpegsource.cpp         |  2 --
 src/video_provider_manager.cpp              |  2 --
 src/video_provider_yuv4mpeg.cpp             |  4 ----
 src/video_slider.cpp                        |  2 --
 src/visual_feature.cpp                      |  2 --
 src/visual_tool.cpp                         |  2 --
 src/visual_tool_clip.cpp                    |  2 --
 src/visual_tool_cross.cpp                   |  2 --
 src/visual_tool_drag.cpp                    |  2 --
 src/visual_tool_rotatexy.cpp                |  2 --
 src/visual_tool_rotatez.cpp                 |  2 --
 src/visual_tool_scale.cpp                   |  2 --
 src/visual_tool_vector_clip.cpp             |  2 --
 218 files changed, 11 insertions(+), 508 deletions(-)
 delete mode 100644 libaegisub/config.h
 delete mode 100644 src/config.h

diff --git a/Makefile.target b/Makefile.target
index bc63d192e..947d7d234 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -152,8 +152,8 @@ OBJCXXFLAGS := $(CXXFLAGS)
 ####################
 # PRECOMPILED HEADER
 ####################
-ifeq (yes, $(PRECOMPILED_HEADER))
-  ifdef PRECOMPILED_HEADER_NAME
+ifdef PRECOMPILED_HEADER_NAME
+  ifeq (yes, $(PRECOMPILED_HEADER))
     CXXFLAGS += -include $(PRECOMPILED_HEADER_NAME) $(PCHFLAGS)
     # This hack is required until we can use the 'private' keyword (gmake 3.82) to avoid all the
     # per-object CXXFLAGS being triggered by the ($OBJ) line.
@@ -161,6 +161,8 @@ ifeq (yes, $(PRECOMPILED_HEADER))
     $(OBJ): | $(PRECOMPILED_HEADER_NAME).gch
     $(PRECOMPILED_HEADER_NAME).gch: CXXFLAGS = $(CXXFLAGS_GNU_MAKE_SUCKS)
     $(PRECOMPILED_HEADER_NAME).gch: $(PRECOMPILED_HEADER_NAME)
+  else
+    CXXFLAGS += -include acconf.h
   endif
 endif
 
diff --git a/automation/tests/aegisub.cpp b/automation/tests/aegisub.cpp
index 0a02b749d..48467e95d 100644
--- a/automation/tests/aegisub.cpp
+++ b/automation/tests/aegisub.cpp
@@ -14,7 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
 
 #include "auto4_lua_utils.h"
 
diff --git a/libaegisub/ass/dialogue_parser.cpp b/libaegisub/ass/dialogue_parser.cpp
index 921518c88..f4bd4d300 100644
--- a/libaegisub/ass/dialogue_parser.cpp
+++ b/libaegisub/ass/dialogue_parser.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "libaegisub/ass/dialogue_parser.h"
 
 #include "libaegisub/spellchecker.h"
diff --git a/libaegisub/common/cajun/elements.cpp b/libaegisub/common/cajun/elements.cpp
index 20c38aebd..51c901c20 100644
--- a/libaegisub/common/cajun/elements.cpp
+++ b/libaegisub/common/cajun/elements.cpp
@@ -5,8 +5,6 @@ Project Webpage: http://cajun-jsonapi.sourceforge.net/
 Author: Terry Caton
 ***********************************************/
 
-#include "../../config.h"
-
 #include "libaegisub/cajun/elements.h"
 
 #include "libaegisub/cajun/visitor.h"
@@ -62,7 +60,6 @@ public:
    virtual void Accept(Visitor& visitor) = 0;
 };
 
-
 template <typename ElementTypeT>
 class UnknownElement::Imp_T final : public UnknownElement::Imp
 {
@@ -155,7 +152,6 @@ ElementTypeT& UnknownElement::CastTo()
 void UnknownElement::Accept(ConstVisitor& visitor) const { m_pImp->Accept(visitor); }
 void UnknownElement::Accept(Visitor& visitor)            { m_pImp->Accept(visitor); }
 
-
 bool UnknownElement::operator == (const UnknownElement& element) const
 {
    return m_pImp->Compare(*element.m_pImp);
diff --git a/libaegisub/common/cajun/reader.cpp b/libaegisub/common/cajun/reader.cpp
index 26166bec6..0f2102c83 100644
--- a/libaegisub/common/cajun/reader.cpp
+++ b/libaegisub/common/cajun/reader.cpp
@@ -192,7 +192,6 @@ void Reader::Scan(Tokens& tokens, InputStream& inputStream) {
 	}
 }
 
-
 void Reader::EatWhiteSpace(InputStream& inputStream) {
 	while (!inputStream.EOS() && ::isspace(inputStream.Peek()))
 		inputStream.Get();
diff --git a/libaegisub/common/calltip_provider.cpp b/libaegisub/common/calltip_provider.cpp
index 545c2e6cb..63cf2b54f 100644
--- a/libaegisub/common/calltip_provider.cpp
+++ b/libaegisub/common/calltip_provider.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "libaegisub/calltip_provider.h"
 
 #include "libaegisub/ass/dialogue_parser.h"
diff --git a/libaegisub/common/charset_6937.cpp b/libaegisub/common/charset_6937.cpp
index e45ed4fdb..f796993a6 100644
--- a/libaegisub/common/charset_6937.cpp
+++ b/libaegisub/common/charset_6937.cpp
@@ -16,8 +16,6 @@
 /// @brief A charset converter for ISO-6937-2
 /// @ingroup libaegisub
 
-#include "../config.h"
-
 #include "charset_6937.h"
 
 #include <algorithm>
diff --git a/libaegisub/common/charset_conv.cpp b/libaegisub/common/charset_conv.cpp
index 6902ac34d..b147456f1 100644
--- a/libaegisub/common/charset_conv.cpp
+++ b/libaegisub/common/charset_conv.cpp
@@ -22,8 +22,6 @@
 #include <cassert>
 #include <map>
 
-#include "../config.h"
-
 #include <libaegisub/charset_conv.h>
 #include <iconv.h>
 
@@ -312,7 +310,7 @@ void IconvWrapper::Convert(const char *src, size_t srcLen, std::string &dest) {
 
 		dest.append(buff, sizeof(buff) - dstLen);
 	} while (res == iconv_failed && errno == E2BIG);
-	
+
 	if (res == iconv_failed) {
 		switch (errno) {
 			case EINVAL:
diff --git a/libaegisub/common/color.cpp b/libaegisub/common/color.cpp
index 027632eff..58e9afdf3 100644
--- a/libaegisub/common/color.cpp
+++ b/libaegisub/common/color.cpp
@@ -12,8 +12,6 @@
 // ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 // OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
-#include "../config.h"
-
 #include "libaegisub/color.h"
 
 #include "parser.h"
diff --git a/libaegisub/common/dispatch.cpp b/libaegisub/common/dispatch.cpp
index 66dc58af6..509dc93ea 100644
--- a/libaegisub/common/dispatch.cpp
+++ b/libaegisub/common/dispatch.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "libaegisub/dispatch.h"
 
 #include "libaegisub/util.h"
diff --git a/libaegisub/common/file_mapping.cpp b/libaegisub/common/file_mapping.cpp
index 3e592d9e6..bf96e3223 100644
--- a/libaegisub/common/file_mapping.cpp
+++ b/libaegisub/common/file_mapping.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "libaegisub/file_mapping.h"
 
 #include "libaegisub/fs.h"
diff --git a/libaegisub/common/fs.cpp b/libaegisub/common/fs.cpp
index 599046778..6d7d71452 100644
--- a/libaegisub/common/fs.cpp
+++ b/libaegisub/common/fs.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "libaegisub/fs.h"
 
 #include "libaegisub/access.h"
diff --git a/libaegisub/common/hotkey.cpp b/libaegisub/common/hotkey.cpp
index e8a124380..4a527e7c8 100644
--- a/libaegisub/common/hotkey.cpp
+++ b/libaegisub/common/hotkey.cpp
@@ -16,8 +16,6 @@
 /// @brief Hotkey handler
 /// @ingroup hotkey menu event window
 
-#include "../config.h"
-
 #include "libaegisub/hotkey.h"
 
 #include "libaegisub/cajun/writer.h"
diff --git a/libaegisub/common/json.cpp b/libaegisub/common/json.cpp
index 256f4a0bd..a1be75fbd 100644
--- a/libaegisub/common/json.cpp
+++ b/libaegisub/common/json.cpp
@@ -16,8 +16,6 @@
 /// @brief Parse JSON files and return json::UnknownElement
 /// @ingroup libaegisub io
 
-#include "../config.h"
-
 #include "libaegisub/json.h"
 
 #include "libaegisub/fs.h"
diff --git a/libaegisub/common/kana_table.cpp b/libaegisub/common/kana_table.cpp
index e265d285d..0c7c35228 100644
--- a/libaegisub/common/kana_table.cpp
+++ b/libaegisub/common/kana_table.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "libaegisub/kana_table.h"
 
 #include <boost/range/algorithm.hpp>
diff --git a/libaegisub/common/karaoke_matcher.cpp b/libaegisub/common/karaoke_matcher.cpp
index 68f2f3524..562b0273f 100644
--- a/libaegisub/common/karaoke_matcher.cpp
+++ b/libaegisub/common/karaoke_matcher.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "libaegisub/karaoke_matcher.h"
 
 #include "libaegisub/kana_table.h"
diff --git a/libaegisub/common/keyframe.cpp b/libaegisub/common/keyframe.cpp
index b4efe06bf..98b7ee15f 100644
--- a/libaegisub/common/keyframe.cpp
+++ b/libaegisub/common/keyframe.cpp
@@ -17,8 +17,6 @@
 /// @ingroup libaegisub
 ///
 
-#include "../config.h"
-
 #include "libaegisub/keyframe.h"
 
 #include <algorithm>
diff --git a/libaegisub/common/log.cpp b/libaegisub/common/log.cpp
index f78b32fd3..7c59b288a 100644
--- a/libaegisub/common/log.cpp
+++ b/libaegisub/common/log.cpp
@@ -16,8 +16,6 @@
 /// @brief Logging
 /// @ingroup libaegisub
 
-#include "../config.h"
-
 #include "libaegisub/log.h"
 
 #include "libaegisub/cajun/elements.h"
diff --git a/libaegisub/common/mru.cpp b/libaegisub/common/mru.cpp
index 03bf165f6..733576e2f 100644
--- a/libaegisub/common/mru.cpp
+++ b/libaegisub/common/mru.cpp
@@ -16,8 +16,6 @@
 /// @brief Most Recently Used (MRU) Lists
 /// @ingroup libaegisub
 
-#include "../config.h"
-
 #include "libaegisub/mru.h"
 
 #include "libaegisub/cajun/writer.h"
diff --git a/libaegisub/common/option.cpp b/libaegisub/common/option.cpp
index fb011184c..59bad38c0 100644
--- a/libaegisub/common/option.cpp
+++ b/libaegisub/common/option.cpp
@@ -16,8 +16,6 @@
 /// @brief Option interface.
 /// @ingroup libaegisub
 
-#include "../config.h"
-
 #include "libaegisub/option.h"
 
 #include "libaegisub/cajun/reader.h"
diff --git a/libaegisub/common/option_visit.cpp b/libaegisub/common/option_visit.cpp
index f2b57ca7b..ef2756e0f 100644
--- a/libaegisub/common/option_visit.cpp
+++ b/libaegisub/common/option_visit.cpp
@@ -17,8 +17,6 @@
 /// @see option_visit.h
 /// @ingroup libaegisub
 
-#include "../config.h"
-
 #include "option_visit.h"
 
 #include <cassert>
diff --git a/libaegisub/common/parser.cpp b/libaegisub/common/parser.cpp
index f1d330529..b793c5e7e 100644
--- a/libaegisub/common/parser.cpp
+++ b/libaegisub/common/parser.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "parser.h"
 
 #include "libaegisub/color.h"
diff --git a/libaegisub/common/path.cpp b/libaegisub/common/path.cpp
index d251c2f2a..a710e5b60 100644
--- a/libaegisub/common/path.cpp
+++ b/libaegisub/common/path.cpp
@@ -18,8 +18,6 @@
 /// @brief Platform-independent path code
 /// @ingroup libaegisub
 
-#include "../config.h"
-
 #include "libaegisub/path.h"
 
 #include "libaegisub/fs.h"
diff --git a/libaegisub/common/util.cpp b/libaegisub/common/util.cpp
index 765e759c0..6485d6828 100644
--- a/libaegisub/common/util.cpp
+++ b/libaegisub/common/util.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "libaegisub/util.h"
 #include "libaegisub/util_osx.h"
 
diff --git a/libaegisub/common/vfr.cpp b/libaegisub/common/vfr.cpp
index 355095841..ad7d4ca09 100644
--- a/libaegisub/common/vfr.cpp
+++ b/libaegisub/common/vfr.cpp
@@ -16,8 +16,6 @@
 /// @brief Framerate handling of all sorts
 /// @ingroup libaegisub video_input
 
-#include "../config.h"
-
 #include "libaegisub/vfr.h"
 
 #include "libaegisub/charset.h"
diff --git a/libaegisub/config.h b/libaegisub/config.h
deleted file mode 100644
index 349f61158..000000000
--- a/libaegisub/config.h
+++ /dev/null
@@ -1,9 +0,0 @@
-
-#ifdef _WIN32 // Windows specific settings
-#define HAVE_PTHREAD 1
-#else
-
-// Generated by configure.in
-#include "../acconf.h"
-
-#endif // _WIN32
diff --git a/libaegisub/lagi_pre.h b/libaegisub/lagi_pre.h
index 158c14535..59e94d6ea 100644
--- a/libaegisub/lagi_pre.h
+++ b/libaegisub/lagi_pre.h
@@ -1,4 +1,6 @@
-#include "config.h"
+#ifndef _WIN32
+#include "../acconf.h"
+#endif
 
 #define WIN32_LEAN_AND_MEAN
 
diff --git a/libaegisub/osx/util.mm b/libaegisub/osx/util.mm
index 0e1206f4c..bff37296f 100644
--- a/libaegisub/osx/util.mm
+++ b/libaegisub/osx/util.mm
@@ -16,8 +16,6 @@
 /// @brief OSX Utilities
 /// @ingroup libosxutil osx
 
-#include "config.h"
-
 #include "libaegisub/util_osx.h"
 
 #import <ApplicationServices/ApplicationServices.h>
diff --git a/libaegisub/unix/access.cpp b/libaegisub/unix/access.cpp
index 8562e2cc5..73da19d22 100644
--- a/libaegisub/unix/access.cpp
+++ b/libaegisub/unix/access.cpp
@@ -16,8 +16,6 @@
 /// @brief Unix access methods.
 /// @ingroup libaegisub unix
 
-#include "config.h"
-
 #include "libaegisub/access.h"
 
 #include "libaegisub/fs.h"
diff --git a/libaegisub/unix/fs.cpp b/libaegisub/unix/fs.cpp
index 6c6f9df53..b5f6af139 100644
--- a/libaegisub/unix/fs.cpp
+++ b/libaegisub/unix/fs.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "libaegisub/access.h"
 #include "libaegisub/fs.h"
 #include "libaegisub/io.h"
diff --git a/libaegisub/unix/log.cpp b/libaegisub/unix/log.cpp
index 50d86821d..7e0169af9 100644
--- a/libaegisub/unix/log.cpp
+++ b/libaegisub/unix/log.cpp
@@ -16,8 +16,6 @@
 /// @brief Unix logging
 /// @ingroup libaegisub
 
-#include "config.h"
-
 #include <cstdio>
 #include <ctime>
 #include <cstring>
diff --git a/libaegisub/unix/util.cpp b/libaegisub/unix/util.cpp
index c7d62701f..99265119c 100644
--- a/libaegisub/unix/util.cpp
+++ b/libaegisub/unix/util.cpp
@@ -16,8 +16,6 @@
 /// @brief Unix utility methods.
 /// @ingroup libaegisub unix
 
-#include "config.h"
-
 #include "libaegisub/util.h"
 
 #include <boost/thread.hpp>
diff --git a/libaegisub/windows/access.cpp b/libaegisub/windows/access.cpp
index 9d42b64e7..01d0df643 100644
--- a/libaegisub/windows/access.cpp
+++ b/libaegisub/windows/access.cpp
@@ -16,7 +16,6 @@
 /// @brief Windows access methods.
 /// @ingroup libaegisub windows
 
-
 #include <libaegisub/access.h>
 
 #include <libaegisub/fs.h>
diff --git a/libaegisub/windows/fs.cpp b/libaegisub/windows/fs.cpp
index a22d7556f..fcfd22f69 100644
--- a/libaegisub/windows/fs.cpp
+++ b/libaegisub/windows/fs.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "libaegisub/fs.h"
 
 #include "libaegisub/access.h"
diff --git a/libaegisub/windows/util_win.cpp b/libaegisub/windows/util_win.cpp
index 3a6fa1e34..65be3c6e6 100644
--- a/libaegisub/windows/util_win.cpp
+++ b/libaegisub/windows/util_win.cpp
@@ -16,8 +16,6 @@
 /// @brief Windows utility methods.
 /// @ingroup libaegisub windows
 
-#include "../config.h"
-
 #include "libaegisub/util.h"
 
 #include "libaegisub/charset_conv_win.h"
diff --git a/src/aegisublocale.cpp b/src/aegisublocale.cpp
index 8ef2e9ff0..91ebc9bc3 100644
--- a/src/aegisublocale.cpp
+++ b/src/aegisublocale.cpp
@@ -32,8 +32,6 @@
 /// @ingroup utility
 ///
 
-#include "config.h"
-
 #include "aegisublocale.h"
 
 #include "options.h"
diff --git a/src/agi_pre.cpp b/src/agi_pre.cpp
index 0d3b6c295..c5bf1a35b 100644
--- a/src/agi_pre.cpp
+++ b/src/agi_pre.cpp
@@ -32,7 +32,6 @@
 /// @ingroup main
 ///
 
-
 //
 // Precompiled Header Source File for MSVC
 //
diff --git a/src/agi_pre.h b/src/agi_pre.h
index d020283e1..c18513f01 100644
--- a/src/agi_pre.h
+++ b/src/agi_pre.h
@@ -49,8 +49,6 @@
 // Ensure we get a consistent SDK with VS2012 + Win8 SDK
 #define _USING_V110_SDK71_ 1
 
-#include "config.h"
-
 #include "../libaegisub/lagi_pre.h"
 
 // General headers
diff --git a/src/ass_attachment.cpp b/src/ass_attachment.cpp
index 044df14ef..ae967c85c 100644
--- a/src/ass_attachment.cpp
+++ b/src/ass_attachment.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "ass_attachment.h"
 
 #include <libaegisub/ass/uuencode.h>
diff --git a/src/ass_dialogue.cpp b/src/ass_dialogue.cpp
index 7902a9c70..38577ca75 100644
--- a/src/ass_dialogue.cpp
+++ b/src/ass_dialogue.cpp
@@ -31,8 +31,6 @@
 /// @brief Class for dialogue lines in subtitles
 /// @ingroup subs_storage
 
-#include "config.h"
-
 #include "ass_dialogue.h"
 #include "subtitle_format.h"
 #include "utils.h"
diff --git a/src/ass_entry.cpp b/src/ass_entry.cpp
index f6d06dbe4..30ec7f8dc 100644
--- a/src/ass_entry.cpp
+++ b/src/ass_entry.cpp
@@ -19,8 +19,6 @@
 /// @ingroup subs_storage
 ///
 
-#include "config.h"
-
 #include "ass_entry.h"
 
 std::string const& AssEntry::GroupHeader(bool ssa) const {
diff --git a/src/ass_export_filter.cpp b/src/ass_export_filter.cpp
index 7bb31a1e8..65ee02715 100644
--- a/src/ass_export_filter.cpp
+++ b/src/ass_export_filter.cpp
@@ -32,8 +32,6 @@
 /// @ingroup export
 ///
 
-#include "config.h"
-
 #include "ass_export_filter.h"
 
 #include <boost/format.hpp>
diff --git a/src/ass_exporter.cpp b/src/ass_exporter.cpp
index ff8605ed2..33739c6fb 100644
--- a/src/ass_exporter.cpp
+++ b/src/ass_exporter.cpp
@@ -32,8 +32,6 @@
 /// @ingroup export
 ///
 
-#include "config.h"
-
 #include "ass_exporter.h"
 
 #include "ass_export_filter.h"
diff --git a/src/ass_file.cpp b/src/ass_file.cpp
index 122deb3ef..8ceafe5d1 100644
--- a/src/ass_file.cpp
+++ b/src/ass_file.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "ass_file.h"
 
 #include "ass_attachment.h"
diff --git a/src/ass_karaoke.cpp b/src/ass_karaoke.cpp
index e9622068d..7b256cc3f 100644
--- a/src/ass_karaoke.cpp
+++ b/src/ass_karaoke.cpp
@@ -19,8 +19,6 @@
 /// @ingroup subs_storage
 ///
 
-#include "config.h"
-
 #include "ass_karaoke.h"
 
 #include "ass_dialogue.h"
@@ -49,7 +47,6 @@ std::string AssKaraoke::Syllable::GetText(bool k_tag) const {
 	return ret;
 }
 
-
 AssKaraoke::AssKaraoke(AssDialogue *line, bool auto_split, bool normalize) {
 	if (line) SetLine(line, auto_split, normalize);
 }
diff --git a/src/ass_override.cpp b/src/ass_override.cpp
index 123bc6ead..1b7400006 100644
--- a/src/ass_override.cpp
+++ b/src/ass_override.cpp
@@ -33,8 +33,6 @@
 /// @ingroup subs_storage
 ///
 
-#include "config.h"
-
 #include "ass_dialogue.h"
 
 #include "utils.h"
diff --git a/src/ass_parser.cpp b/src/ass_parser.cpp
index 262db94af..1099cc7a7 100644
--- a/src/ass_parser.cpp
+++ b/src/ass_parser.cpp
@@ -12,8 +12,6 @@
 // ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 // OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
-#include "config.h"
-
 #include "ass_parser.h"
 
 #include "ass_attachment.h"
diff --git a/src/ass_style.cpp b/src/ass_style.cpp
index 0b9216a9d..a7c6282e9 100644
--- a/src/ass_style.cpp
+++ b/src/ass_style.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subs_storage
 ///
 
-#include "config.h"
-
 #include "ass_style.h"
 
 #include "subtitle_format.h"
diff --git a/src/ass_style_storage.cpp b/src/ass_style_storage.cpp
index 45a2dba8b..98d2c3cb8 100644
--- a/src/ass_style_storage.cpp
+++ b/src/ass_style_storage.cpp
@@ -32,8 +32,6 @@
 /// @ingroup style_editor
 ///
 
-#include "config.h"
-
 #include "ass_style_storage.h"
 
 #include "ass_style.h"
diff --git a/src/ass_time.cpp b/src/ass_time.cpp
index 57fd96852..070bbd5eb 100644
--- a/src/ass_time.cpp
+++ b/src/ass_time.cpp
@@ -19,8 +19,6 @@
 /// @ingroup subs_storage
 ///
 
-#include "config.h"
-
 #include "ass_time.h"
 
 #include "utils.h"
diff --git a/src/audio_box.cpp b/src/audio_box.cpp
index d85ca8509..f21e79238 100644
--- a/src/audio_box.cpp
+++ b/src/audio_box.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_ui
 ///
 
-#include "config.h"
-
 #include <cmath>
 
 #include <wx/bmpbuttn.h>
diff --git a/src/audio_colorscheme.cpp b/src/audio_colorscheme.cpp
index 007c951b1..d8fb74127 100644
--- a/src/audio_colorscheme.cpp
+++ b/src/audio_colorscheme.cpp
@@ -32,8 +32,6 @@
 ///
 /// Manage colour schemes for the audio display
 
-#include "config.h"
-
 #include <algorithm>
 
 #include "audio_colorscheme.h"
diff --git a/src/audio_controller.cpp b/src/audio_controller.cpp
index 27ec41b7c..a6e5e76a2 100644
--- a/src/audio_controller.cpp
+++ b/src/audio_controller.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_ui
 ///
 
-#include "config.h"
-
 #include "audio_controller.h"
 
 #include "ass_file.h"
@@ -150,7 +148,6 @@ void AudioController::OnAudioProviderChanged()
 		OpenAudio(agi::fs::path(audio_url));
 }
 
-
 void AudioController::OpenAudio(agi::fs::path const& url)
 {
 	if (url.empty())
@@ -214,7 +211,6 @@ void AudioController::CloseAudio()
 	AnnounceAudioClose();
 }
 
-
 bool AudioController::IsAudioOpen() const
 {
 	return player && provider;
@@ -258,7 +254,6 @@ void AudioController::PlayRange(const TimeRange &range)
 	AnnouncePlaybackPosition(range.begin());
 }
 
-
 void AudioController::PlayPrimaryRange()
 {
 	PlayRange(GetPrimaryPlaybackRange());
@@ -287,7 +282,6 @@ void AudioController::PlayToEnd(int start_ms)
 	AnnouncePlaybackPosition(start_ms);
 }
 
-
 void AudioController::Stop()
 {
 	if (!IsAudioOpen()) return;
@@ -299,13 +293,11 @@ void AudioController::Stop()
 	AnnouncePlaybackStop();
 }
 
-
 bool AudioController::IsPlaying()
 {
 	return IsAudioOpen() && playback_mode != PM_NotPlaying;
 }
 
-
 int AudioController::GetPlaybackPosition()
 {
 	if (!IsPlaying()) return 0;
@@ -338,7 +330,6 @@ void AudioController::SetVolume(double volume)
 	player->SetVolume(volume);
 }
 
-
 int64_t AudioController::SamplesFromMilliseconds(int64_t ms) const
 {
 	/// @todo There might be some subtle rounding errors here.
@@ -352,7 +343,6 @@ int64_t AudioController::SamplesFromMilliseconds(int64_t ms) const
 	return (millisamples + 999) / 1000;
 }
 
-
 int64_t AudioController::MillisecondsFromSamples(int64_t samples) const
 {
 	/// @todo There might be some subtle rounding errors here.
diff --git a/src/audio_display.cpp b/src/audio_display.cpp
index a8fe3c738..4f654ba97 100644
--- a/src/audio_display.cpp
+++ b/src/audio_display.cpp
@@ -33,8 +33,6 @@
 /// @ingroup audio_ui
 ///
 
-#include "config.h"
-
 #include "audio_display.h"
 
 #include "ass_time.h"
@@ -246,7 +244,6 @@ public:
 
 const int AudioDisplayScrollbar::min_width;
 
-
 class AudioDisplayTimeline final : public AudioDisplayInteractionObject {
 	int duration;        ///< Total duration in ms
 	double ms_per_pixel; ///< Milliseconds per pixel
@@ -940,7 +937,6 @@ void AudioDisplay::SetDraggedObject(AudioDisplayInteractionObject *new_obj)
 		audio_marker.reset();
 }
 
-
 void AudioDisplay::SetTrackCursor(int new_pos, bool show_time)
 {
 	if (new_pos == track_cursor_pos) return;
diff --git a/src/audio_karaoke.cpp b/src/audio_karaoke.cpp
index 500d9bb46..b5523ed62 100644
--- a/src/audio_karaoke.cpp
+++ b/src/audio_karaoke.cpp
@@ -19,8 +19,6 @@
 /// @ingroup audio_ui
 ///
 
-#include "config.h"
-
 #include "audio_karaoke.h"
 
 #include "include/aegisub/context.h"
diff --git a/src/audio_marker.cpp b/src/audio_marker.cpp
index 92022a8c5..ecef26423 100644
--- a/src/audio_marker.cpp
+++ b/src/audio_marker.cpp
@@ -19,8 +19,6 @@
 /// @ingroup audio_ui
 ///
 
-#include "config.h"
-
 #include "audio_marker.h"
 
 #include "include/aegisub/context.h"
diff --git a/src/audio_player.cpp b/src/audio_player.cpp
index 47d55bfab..3ec5743d7 100644
--- a/src/audio_player.cpp
+++ b/src/audio_player.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_output
 ///
 
-#include "config.h"
-
 #include "include/aegisub/audio_player.h"
 
 #include "audio_controller.h"
diff --git a/src/audio_player_alsa.cpp b/src/audio_player_alsa.cpp
index 338fecfe6..0bf76eaad 100644
--- a/src/audio_player_alsa.cpp
+++ b/src/audio_player_alsa.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_output
 ///
 
-#include "config.h"
-
 #ifdef WITH_ALSA
 #include "include/aegisub/audio_player.h"
 
@@ -250,7 +248,7 @@ do_setup:
 		{
 			int64_t orig_position = position;
 			int64_t orig_ps_end_position = ps.end_position;
-			
+
 			ScopedAliveFlag playing_flag(ps.playing);
 
 			// Sleep a bit, or until an event
diff --git a/src/audio_player_dsound.cpp b/src/audio_player_dsound.cpp
index 47e3654a2..c5b690f79 100644
--- a/src/audio_player_dsound.cpp
+++ b/src/audio_player_dsound.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_output
 ///
 
-#include "config.h"
-
 #ifdef WITH_DIRECTSOUND
 #include "include/aegisub/audio_player.h"
 
@@ -374,4 +372,3 @@ std::unique_ptr<AudioPlayer> CreateDirectSoundPlayer(AudioProvider *provider, wx
 }
 
 #endif // WITH_DIRECTSOUND
-
diff --git a/src/audio_player_dsound2.cpp b/src/audio_player_dsound2.cpp
index 5d1d20d87..81e6a0213 100644
--- a/src/audio_player_dsound2.cpp
+++ b/src/audio_player_dsound2.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_output
 ///
 
-#include "config.h"
-
 #ifdef WITH_DIRECTSOUND
 #include "include/aegisub/audio_player.h"
 
@@ -234,14 +232,12 @@ class DirectSoundPlayer2Thread {
 	/// Audio frame to end playback at
 	int64_t end_frame = 0;
 
-
 	/// Desired length in milliseconds to write ahead of the playback cursor
 	int wanted_latency;
 
 	/// Multiplier for WantedLatency to get total buffer length
 	int buffer_length;
 
-
 	/// System millisecond timestamp of last playback start, used to calculate playback position
 	DWORD last_playback_restart;
 
@@ -364,7 +360,6 @@ void DirectSoundPlayer2Thread::Run()
 
 	//wx Log Debug("DirectSoundPlayer2: Created buffer of %d bytes, supposed to be %d milliseconds or %d frames", bufSize, WANTED_LATENCY*BUFFER_LENGTH, bufSize/provider->GetBytesPerSample());
 
-
 	// Now we're ready to roll!
 	SetEvent(thread_running);
 	bool running = true;
diff --git a/src/audio_player_openal.cpp b/src/audio_player_openal.cpp
index 253ed2289..3dbe84934 100644
--- a/src/audio_player_openal.cpp
+++ b/src/audio_player_openal.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_output
 ///
 
-#include "config.h"
-
 #ifdef WITH_OPENAL
 #include "include/aegisub/audio_player.h"
 
diff --git a/src/audio_player_oss.cpp b/src/audio_player_oss.cpp
index bef741ded..ea3262b93 100644
--- a/src/audio_player_oss.cpp
+++ b/src/audio_player_oss.cpp
@@ -30,8 +30,6 @@
 /// @ingroup audio_output
 ///
 
-#include "config.h"
-
 #ifdef WITH_OSS
 #include "include/aegisub/audio_player.h"
 
@@ -103,7 +101,6 @@ public:
         ::close(dspdev);
     }
 
-
     void Play(int64_t start, int64_t count);
     void Stop();
     bool IsPlaying() { return playing; }
diff --git a/src/audio_player_portaudio.cpp b/src/audio_player_portaudio.cpp
index ec7e88af6..d4dfcf989 100644
--- a/src/audio_player_portaudio.cpp
+++ b/src/audio_player_portaudio.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_output
 ///
 
-#include "config.h"
-
 #ifdef WITH_PORTAUDIO
 #include "audio_player_portaudio.h"
 
diff --git a/src/audio_player_pulse.cpp b/src/audio_player_pulse.cpp
index 15a4f262a..fe47ebb3a 100644
--- a/src/audio_player_pulse.cpp
+++ b/src/audio_player_pulse.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_output
 ///
 
-#include "config.h"
-
 #ifdef WITH_LIBPULSE
 #include "include/aegisub/audio_player.h"
 
diff --git a/src/audio_provider.cpp b/src/audio_provider.cpp
index 365ea8a97..5200d58cc 100644
--- a/src/audio_provider.cpp
+++ b/src/audio_provider.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_input
 ///
 
-#include "config.h"
-
 #include "include/aegisub/audio_provider.h"
 
 #include "audio_controller.h"
diff --git a/src/audio_provider_avs.cpp b/src/audio_provider_avs.cpp
index 06fdd6be2..c50b7c549 100644
--- a/src/audio_provider_avs.cpp
+++ b/src/audio_provider_avs.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_input
 ///
 
-#include "config.h"
-
 #ifdef WITH_AVISYNTH
 #include "include/aegisub/audio_provider.h"
 
diff --git a/src/audio_provider_convert.cpp b/src/audio_provider_convert.cpp
index 5592db5ce..01c7ccb0d 100644
--- a/src/audio_provider_convert.cpp
+++ b/src/audio_provider_convert.cpp
@@ -19,8 +19,6 @@
 /// @ingroup audio_input
 ///
 
-#include "config.h"
-
 #include "include/aegisub/audio_provider.h"
 
 #include "audio_controller.h"
diff --git a/src/audio_provider_dummy.cpp b/src/audio_provider_dummy.cpp
index a68bd7f36..727719de7 100644
--- a/src/audio_provider_dummy.cpp
+++ b/src/audio_provider_dummy.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_input
 ///
 
-#include "config.h"
-
 #include "include/aegisub/audio_provider.h"
 
 #include <libaegisub/fs.h>
diff --git a/src/audio_provider_ffmpegsource.cpp b/src/audio_provider_ffmpegsource.cpp
index 85077897d..81c10576e 100644
--- a/src/audio_provider_ffmpegsource.cpp
+++ b/src/audio_provider_ffmpegsource.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_input ffms
 ///
 
-#include "config.h"
-
 #ifdef WITH_FFMS2
 #include "include/aegisub/audio_provider.h"
 
diff --git a/src/audio_provider_hd.cpp b/src/audio_provider_hd.cpp
index defea3b1d..cf4fb2e0f 100644
--- a/src/audio_provider_hd.cpp
+++ b/src/audio_provider_hd.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "include/aegisub/audio_provider.h"
 
 #include "audio_controller.h"
diff --git a/src/audio_provider_lock.cpp b/src/audio_provider_lock.cpp
index 8e6825640..c89437ac7 100644
--- a/src/audio_provider_lock.cpp
+++ b/src/audio_provider_lock.cpp
@@ -16,8 +16,6 @@
 /// @brief An audio provider adapter for un-threadsafe audio providers
 /// @ingroup audio_input
 
-#include "config.h"
-
 #include "include/aegisub/audio_provider.h"
 
 #include <libaegisub/util.h>
diff --git a/src/audio_provider_pcm.cpp b/src/audio_provider_pcm.cpp
index 10702dd4b..308dc4fa4 100644
--- a/src/audio_provider_pcm.cpp
+++ b/src/audio_provider_pcm.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_input
 ///
 
-#include "config.h"
-
 #include "include/aegisub/audio_provider.h"
 
 #include "audio_controller.h"
diff --git a/src/audio_provider_ram.cpp b/src/audio_provider_ram.cpp
index 9b0df16d8..20609070d 100644
--- a/src/audio_provider_ram.cpp
+++ b/src/audio_provider_ram.cpp
@@ -32,8 +32,6 @@
 /// @ingroup audio_input
 ///
 
-#include "config.h"
-
 #include "include/aegisub/audio_provider.h"
 
 #include "audio_controller.h"
diff --git a/src/audio_renderer.cpp b/src/audio_renderer.cpp
index b86dac828..0c54b290a 100644
--- a/src/audio_renderer.cpp
+++ b/src/audio_renderer.cpp
@@ -31,8 +31,6 @@
 /// @brief Base classes for audio renderers (spectrum, waveform, ...)
 /// @ingroup audio_ui
 
-#include "config.h"
-
 #include "audio_renderer.h"
 
 #include "include/aegisub/audio_provider.h"
@@ -61,7 +59,6 @@ size_t AudioRendererBitmapCacheBitmapFactory::GetBlockSize() const
 	return sizeof(wxBitmap) + renderer->cache_bitmap_width * renderer->pixel_height * 3;
 }
 
-
 AudioRenderer::AudioRenderer()
 {
 	for (int i = 0; i < AudioStyle_MAX; ++i)
@@ -84,7 +81,6 @@ void AudioRenderer::SetMillisecondsPerPixel(double new_pixel_ms)
 	ResetBlockCount();
 }
 
-
 void AudioRenderer::SetHeight(int _pixel_height)
 {
 	if (pixel_height == _pixel_height) return;
@@ -93,7 +89,6 @@ void AudioRenderer::SetHeight(int _pixel_height)
 	Invalidate();
 }
 
-
 void AudioRenderer::SetAmplitudeScale(float _amplitude_scale)
 {
 	if (amplitude_scale == _amplitude_scale) return;
@@ -108,7 +103,6 @@ void AudioRenderer::SetAmplitudeScale(float _amplitude_scale)
 	Invalidate();
 }
 
-
 void AudioRenderer::SetRenderer(AudioRendererBitmapProvider *_renderer)
 {
 	if (renderer == _renderer) return;
@@ -124,7 +118,6 @@ void AudioRenderer::SetRenderer(AudioRendererBitmapProvider *_renderer)
 	}
 }
 
-
 void AudioRenderer::SetAudioProvider(AudioProvider *_provider)
 {
 	if (provider == _provider) return;
@@ -138,7 +131,6 @@ void AudioRenderer::SetAudioProvider(AudioProvider *_provider)
 	ResetBlockCount();
 }
 
-
 void AudioRenderer::SetCacheMaxSize(size_t max_size)
 {
 	// Limit the bitmap cache sizes to 16 MB hard, to avoid the risk of exhausting
@@ -149,7 +141,6 @@ void AudioRenderer::SetCacheMaxSize(size_t max_size)
 	cache_renderer_maxsize = max_size - 4*cache_bitmap_maxsize;
 }
 
-
 void AudioRenderer::ResetBlockCount()
 {
 	if (provider)
@@ -161,7 +152,6 @@ void AudioRenderer::ResetBlockCount()
 	}
 }
 
-
 const wxBitmap *AudioRenderer::GetCachedBitmap(int i, AudioRenderingStyle style)
 {
 	assert(provider);
@@ -180,7 +170,6 @@ const wxBitmap *AudioRenderer::GetCachedBitmap(int i, AudioRenderingStyle style)
 	return bmp;
 }
 
-
 void AudioRenderer::Render(wxDC &dc, wxPoint origin, int start, int length, AudioRenderingStyle style)
 {
 	assert(start >= 0);
@@ -225,14 +214,12 @@ void AudioRenderer::Render(wxDC &dc, wxPoint origin, int start, int length, Audi
 	}
 }
 
-
 void AudioRenderer::Invalidate()
 {
 	for (auto& bmp : bitmaps) bmp.Age(0);
 	needs_age = false;
 }
 
-
 void AudioRendererBitmapProvider::SetProvider(AudioProvider *_provider)
 {
 	if (provider == _provider) return;
@@ -242,7 +229,6 @@ void AudioRendererBitmapProvider::SetProvider(AudioProvider *_provider)
 	OnSetProvider();
 }
 
-
 void AudioRendererBitmapProvider::SetMillisecondsPerPixel(double new_pixel_ms)
 {
 	if (pixel_ms == new_pixel_ms) return;
@@ -252,7 +238,6 @@ void AudioRendererBitmapProvider::SetMillisecondsPerPixel(double new_pixel_ms)
 	OnSetMillisecondsPerPixel();
 }
 
-
 void AudioRendererBitmapProvider::SetAmplitudeScale(float _amplitude_scale)
 {
 	if (amplitude_scale == _amplitude_scale) return;
diff --git a/src/audio_renderer_spectrum.cpp b/src/audio_renderer_spectrum.cpp
index 017c34468..4d75ab241 100644
--- a/src/audio_renderer_spectrum.cpp
+++ b/src/audio_renderer_spectrum.cpp
@@ -32,8 +32,6 @@
 /// @brief Caching frequency-power spectrum renderer for audio display
 /// @ingroup audio_ui
 
-#include "config.h"
-
 #include "audio_renderer_spectrum.h"
 
 #include "audio_colorscheme.h"
@@ -83,7 +81,6 @@ struct AudioSpectrumCacheBlockFactory {
 	}
 };
 
-
 /// @brief Cache for audio spectrum frequency-power data
 class AudioSpectrumCache
 : public DataBlockCache<float, 10, AudioSpectrumCacheBlockFactory> {
@@ -95,7 +92,6 @@ public:
 	}
 };
 
-
 AudioSpectrumRenderer::AudioSpectrumRenderer(std::string const& color_scheme_name)
 {
 	colors.reserve(AudioStyle_MAX);
diff --git a/src/audio_renderer_waveform.cpp b/src/audio_renderer_waveform.cpp
index 4ebdd3ce9..f0dab3386 100644
--- a/src/audio_renderer_waveform.cpp
+++ b/src/audio_renderer_waveform.cpp
@@ -32,8 +32,6 @@
 ///
 /// Render a waveform display of PCM audio data
 
-#include "config.h"
-
 #include "audio_renderer_waveform.h"
 
 #include <algorithm>
@@ -67,7 +65,6 @@ AudioWaveformRenderer::~AudioWaveformRenderer()
 	delete[] audio_buffer;
 }
 
-
 void AudioWaveformRenderer::Render(wxBitmap &bmp, int start, AudioRenderingStyle style)
 {
 	wxMemoryDC dc(bmp);
@@ -144,7 +141,6 @@ void AudioWaveformRenderer::Render(wxBitmap &bmp, int start, AudioRenderingStyle
 	dc.DrawLine(0, midpoint, rect.width, midpoint);
 }
 
-
 void AudioWaveformRenderer::RenderBlank(wxDC &dc, const wxRect &rect, AudioRenderingStyle style)
 {
 	const AudioColorScheme *pal = &colors[style];
diff --git a/src/audio_timing_dialogue.cpp b/src/audio_timing_dialogue.cpp
index cebc3ada1..93b60d47c 100644
--- a/src/audio_timing_dialogue.cpp
+++ b/src/audio_timing_dialogue.cpp
@@ -31,8 +31,6 @@
 /// @brief Default timing mode for dialogue subtitles
 /// @ingroup audio_ui
 
-#include "config.h"
-
 #include "ass_dialogue.h"
 #include "ass_file.h"
 #include "ass_time.h"
diff --git a/src/audio_timing_karaoke.cpp b/src/audio_timing_karaoke.cpp
index 5871d2f2c..08bc233fb 100644
--- a/src/audio_timing_karaoke.cpp
+++ b/src/audio_timing_karaoke.cpp
@@ -19,8 +19,6 @@
 /// @ingroup audio_ui
 ///
 
-#include "config.h"
-
 #include <libaegisub/signal.h>
 
 #include "ass_dialogue.h"
diff --git a/src/auto4_base.cpp b/src/auto4_base.cpp
index 9f004bf50..dc73cd7c0 100644
--- a/src/auto4_base.cpp
+++ b/src/auto4_base.cpp
@@ -32,8 +32,6 @@
 /// @ingroup scripting
 ///
 
-#include "config.h"
-
 #include "auto4_base.h"
 
 #include "ass_file.h"
diff --git a/src/auto4_lua.cpp b/src/auto4_lua.cpp
index 08c97b809..ac46108d0 100644
--- a/src/auto4_lua.cpp
+++ b/src/auto4_lua.cpp
@@ -32,8 +32,6 @@
 /// @ingroup scripting
 ///
 
-#include "config.h"
-
 #include "auto4_lua.h"
 
 #include "auto4_lua_utils.h"
diff --git a/src/auto4_lua_assfile.cpp b/src/auto4_lua_assfile.cpp
index fc12ab8eb..615e4b5a3 100644
--- a/src/auto4_lua_assfile.cpp
+++ b/src/auto4_lua_assfile.cpp
@@ -32,8 +32,6 @@
 /// @ingroup scripting
 ///
 
-#include "config.h"
-
 #include "auto4_lua.h"
 
 #include "auto4_lua_utils.h"
diff --git a/src/auto4_lua_dialog.cpp b/src/auto4_lua_dialog.cpp
index c35038540..7deee7a74 100644
--- a/src/auto4_lua_dialog.cpp
+++ b/src/auto4_lua_dialog.cpp
@@ -32,8 +32,6 @@
 /// @ingroup scripting
 ///
 
-#include "config.h"
-
 #include "auto4_lua.h"
 
 #include "auto4_lua_utils.h"
@@ -234,7 +232,6 @@ namespace Automation4 {
 			}
 		};
 
-
 		/// Integer only edit
 		class IntEdit final : public Edit {
 			wxSpinCtrl *cw;
diff --git a/src/auto4_lua_progresssink.cpp b/src/auto4_lua_progresssink.cpp
index 9610c2621..f966dff9d 100644
--- a/src/auto4_lua_progresssink.cpp
+++ b/src/auto4_lua_progresssink.cpp
@@ -32,8 +32,6 @@
 /// @ingroup scripting
 ///
 
-#include "config.h"
-
 #include "auto4_lua.h"
 
 #include "auto4_lua_utils.h"
diff --git a/src/auto4_lua_scriptreader.cpp b/src/auto4_lua_scriptreader.cpp
index f979053aa..d04106729 100644
--- a/src/auto4_lua_scriptreader.cpp
+++ b/src/auto4_lua_scriptreader.cpp
@@ -17,8 +17,6 @@
 /// @ingroup scripting
 ///
 
-#include "config.h"
-
 #include "auto4_lua_scriptreader.h"
 
 #include "auto4_lua_utils.h"
diff --git a/src/auto4_regex.cpp b/src/auto4_regex.cpp
index 138dbaec1..e2cd19c93 100644
--- a/src/auto4_regex.cpp
+++ b/src/auto4_regex.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "auto4_lua_utils.h"
 
 #include <boost/regex/icu.hpp>
diff --git a/src/avisynth_wrap.cpp b/src/avisynth_wrap.cpp
index 52839b40a..d76a377d2 100644
--- a/src/avisynth_wrap.cpp
+++ b/src/avisynth_wrap.cpp
@@ -32,8 +32,6 @@
 /// @ingroup video_input audio_input
 ///
 
-#include "config.h"
-
 #ifdef WITH_AVISYNTH
 #include "avisynth_wrap.h"
 
diff --git a/src/base_grid.cpp b/src/base_grid.cpp
index b412dd589..3520b8359 100644
--- a/src/base_grid.cpp
+++ b/src/base_grid.cpp
@@ -32,8 +32,6 @@
 /// @ingroup main_ui
 ///
 
-#include "config.h"
-
 #include "base_grid.h"
 
 #include "include/aegisub/context.h"
diff --git a/src/charset_detect.cpp b/src/charset_detect.cpp
index daf0e923b..e71ce7ef2 100644
--- a/src/charset_detect.cpp
+++ b/src/charset_detect.cpp
@@ -32,8 +32,6 @@
 /// @ingroup utility
 ///
 
-#include "config.h"
-
 #include "charset_detect.h"
 
 #include "compat.h"
@@ -89,4 +87,3 @@ std::string GetEncoding(agi::fs::path const& filename) {
 }
 
 }
-
diff --git a/src/colorspace.cpp b/src/colorspace.cpp
index b63506d38..2d9df415c 100644
--- a/src/colorspace.cpp
+++ b/src/colorspace.cpp
@@ -32,8 +32,6 @@
 /// @ingroup utility
 ///
 
-#include "config.h"
-
 #include "colorspace.h"
 #include "utils.h"
 
diff --git a/src/colour_button.cpp b/src/colour_button.cpp
index a70b1df1c..85791098d 100644
--- a/src/colour_button.cpp
+++ b/src/colour_button.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "colour_button.h"
 
 #include "compat.h"
diff --git a/src/command/app.cpp b/src/command/app.cpp
index 6e0a1f57f..50d16e3da 100644
--- a/src/command/app.cpp
+++ b/src/command/app.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include <wx/msgdlg.h>
 
 #include "command.h"
diff --git a/src/command/audio.cpp b/src/command/audio.cpp
index 06c270e96..45acf2ee8 100644
--- a/src/command/audio.cpp
+++ b/src/command/audio.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../ass_dialogue.h"
diff --git a/src/command/automation.cpp b/src/command/automation.cpp
index a298c01de..57b2a2608 100644
--- a/src/command/automation.cpp
+++ b/src/command/automation.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../auto4_base.h"
diff --git a/src/command/edit.cpp b/src/command/edit.cpp
index a23f9e04e..9b6a46cbd 100644
--- a/src/command/edit.cpp
+++ b/src/command/edit.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../ass_dialogue.h"
diff --git a/src/command/grid.cpp b/src/command/grid.cpp
index b5fd5b8aa..74f9ad258 100644
--- a/src/command/grid.cpp
+++ b/src/command/grid.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../ass_dialogue.h"
diff --git a/src/command/help.cpp b/src/command/help.cpp
index 1ac636d9b..e128e987b 100644
--- a/src/command/help.cpp
+++ b/src/command/help.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../help_button.h"
diff --git a/src/command/keyframe.cpp b/src/command/keyframe.cpp
index 73d5c4db2..671244f8f 100644
--- a/src/command/keyframe.cpp
+++ b/src/command/keyframe.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../include/aegisub/context.h"
diff --git a/src/command/recent.cpp b/src/command/recent.cpp
index 73f892a20..fe1515cad 100644
--- a/src/command/recent.cpp
+++ b/src/command/recent.cpp
@@ -27,8 +27,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../audio_controller.h"
diff --git a/src/command/subtitle.cpp b/src/command/subtitle.cpp
index c7524c4df..3338d11c9 100644
--- a/src/command/subtitle.cpp
+++ b/src/command/subtitle.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../ass_dialogue.h"
diff --git a/src/command/time.cpp b/src/command/time.cpp
index 53b7b5f7e..519f80604 100644
--- a/src/command/time.cpp
+++ b/src/command/time.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../ass_dialogue.h"
diff --git a/src/command/timecode.cpp b/src/command/timecode.cpp
index 74cc30252..d6199a11c 100644
--- a/src/command/timecode.cpp
+++ b/src/command/timecode.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../include/aegisub/context.h"
diff --git a/src/command/tool.cpp b/src/command/tool.cpp
index 1bafb943b..3ac69d83b 100644
--- a/src/command/tool.cpp
+++ b/src/command/tool.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../compat.h"
diff --git a/src/command/video.cpp b/src/command/video.cpp
index 85e21d98c..0c3aed41b 100644
--- a/src/command/video.cpp
+++ b/src/command/video.cpp
@@ -29,8 +29,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../ass_dialogue.h"
diff --git a/src/command/vis_tool.cpp b/src/command/vis_tool.cpp
index a3f33c88a..582e9857d 100644
--- a/src/command/vis_tool.cpp
+++ b/src/command/vis_tool.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "../config.h"
-
 #include "command.h"
 
 #include "../include/aegisub/context.h"
diff --git a/src/config.h b/src/config.h
deleted file mode 100644
index 9467f9cda..000000000
--- a/src/config.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#ifndef _WIN32
-// Generated by configure.in
-#include "../acconf.h"
-#endif
diff --git a/src/context.cpp b/src/context.cpp
index 847dd208a..2e89d56eb 100644
--- a/src/context.cpp
+++ b/src/context.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "include/aegisub/context.h"
 
 #include "ass_file.h"
diff --git a/src/crash_writer.cpp b/src/crash_writer.cpp
index e20ba8513..dcf325c4b 100644
--- a/src/crash_writer.cpp
+++ b/src/crash_writer.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "crash_writer.h"
 
 #include "version.h"
diff --git a/src/crash_writer_minidump.cpp b/src/crash_writer_minidump.cpp
index 61a67ff1e..053730f75 100644
--- a/src/crash_writer_minidump.cpp
+++ b/src/crash_writer_minidump.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "crash_writer.h"
 
 #include "version.h"
diff --git a/src/dialog_about.cpp b/src/dialog_about.cpp
index 578829a42..8abaf34ef 100644
--- a/src/dialog_about.cpp
+++ b/src/dialog_about.cpp
@@ -32,8 +32,6 @@
 /// @ingroup configuration_ui
 ///
 
-#include "config.h"
-
 #include <wx/button.h>
 #include <wx/panel.h>
 #include <wx/sizer.h>
diff --git a/src/dialog_attachments.cpp b/src/dialog_attachments.cpp
index 23e34b5f1..ce7100a55 100644
--- a/src/dialog_attachments.cpp
+++ b/src/dialog_attachments.cpp
@@ -32,8 +32,6 @@
 /// @ingroup tools_ui
 ///
 
-#include "config.h"
-
 #include "dialog_attachments.h"
 
 #include <wx/button.h>
diff --git a/src/dialog_automation.cpp b/src/dialog_automation.cpp
index a5488b563..2ba546868 100644
--- a/src/dialog_automation.cpp
+++ b/src/dialog_automation.cpp
@@ -32,8 +32,6 @@
 /// @ingroup secondary_ui
 ///
 
-#include "config.h"
-
 #include "dialog_automation.h"
 
 #include "auto4_base.h"
diff --git a/src/dialog_autosave.cpp b/src/dialog_autosave.cpp
index a68ca4359..30f0dd639 100644
--- a/src/dialog_autosave.cpp
+++ b/src/dialog_autosave.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "dialog_autosave.h"
 
 #include "compat.h"
diff --git a/src/dialog_colorpicker.cpp b/src/dialog_colorpicker.cpp
index bc56bd9b3..97ebe097d 100644
--- a/src/dialog_colorpicker.cpp
+++ b/src/dialog_colorpicker.cpp
@@ -32,8 +32,6 @@
 /// @ingroup tools_ui
 ///
 
-#include "config.h"
-
 #include "dialog_colorpicker.h"
 
 #include "ass_style.h"
@@ -433,7 +431,6 @@ void ColorPickerScreenDropper::DropFromScreenXY(int x, int y) {
 	Refresh(false);
 }
 
-
 class DialogColorPicker final : public wxDialog {
 	std::unique_ptr<PersistLocation> persist;
 
diff --git a/src/dialog_detached_video.cpp b/src/dialog_detached_video.cpp
index 399aa43e8..488b81031 100644
--- a/src/dialog_detached_video.cpp
+++ b/src/dialog_detached_video.cpp
@@ -32,8 +32,6 @@
 /// @ingroup main_ui
 ///
 
-#include "config.h"
-
 #include "dialog_detached_video.h"
 
 #include "include/aegisub/context.h"
diff --git a/src/dialog_dummy_video.cpp b/src/dialog_dummy_video.cpp
index 02bbf45be..0743db8b8 100644
--- a/src/dialog_dummy_video.cpp
+++ b/src/dialog_dummy_video.cpp
@@ -19,8 +19,6 @@
 /// @ingroup secondary_ui
 ///
 
-#include "config.h"
-
 #include "dialog_dummy_video.h"
 
 #include <wx/checkbox.h>
diff --git a/src/dialog_export.cpp b/src/dialog_export.cpp
index 001e43e0c..90009c9eb 100644
--- a/src/dialog_export.cpp
+++ b/src/dialog_export.cpp
@@ -32,8 +32,6 @@
 /// @ingroup export
 ///
 
-#include "config.h"
-
 #include "dialog_export.h"
 
 #include "ass_exporter.h"
diff --git a/src/dialog_export_ebu3264.cpp b/src/dialog_export_ebu3264.cpp
index a7d627db2..b23456f0f 100644
--- a/src/dialog_export_ebu3264.cpp
+++ b/src/dialog_export_ebu3264.cpp
@@ -19,8 +19,6 @@
 /// @see dialog_export_ebu3264.h
 /// @ingroup subtitle_io export
 
-#include "config.h"
-
 #include "dialog_export_ebu3264.h"
 
 #include "compat.h"
diff --git a/src/dialog_fonts_collector.cpp b/src/dialog_fonts_collector.cpp
index 8bd444281..41d33da77 100644
--- a/src/dialog_fonts_collector.cpp
+++ b/src/dialog_fonts_collector.cpp
@@ -19,8 +19,6 @@
 /// @ingroup tools_ui font_collector
 ///
 
-#include "config.h"
-
 #include "dialog_fonts_collector.h"
 
 #include "font_file_lister.h"
@@ -42,7 +40,6 @@
 #include <libaegisub/path.h>
 
 #include <wx/button.h>
-#include <wx/config.h>
 #include <wx/dirdlg.h>
 #include <wx/filedlg.h>
 #include <wx/filename.h>
diff --git a/src/dialog_jumpto.cpp b/src/dialog_jumpto.cpp
index 49f7f83bb..91c9d5828 100644
--- a/src/dialog_jumpto.cpp
+++ b/src/dialog_jumpto.cpp
@@ -32,8 +32,6 @@
 /// @ingroup secondary_ui
 ///
 
-#include "config.h"
-
 #include "dialog_jumpto.h"
 
 #include "include/aegisub/context.h"
diff --git a/src/dialog_kara_timing_copy.cpp b/src/dialog_kara_timing_copy.cpp
index e71bb6c16..5c903f8ce 100644
--- a/src/dialog_kara_timing_copy.cpp
+++ b/src/dialog_kara_timing_copy.cpp
@@ -33,8 +33,6 @@
 /// @ingroup tools_ui kara_timing_copy
 ///
 
-#include "config.h"
-
 #include "dialog_kara_timing_copy.h"
 
 #include "ass_dialogue.h"
@@ -116,7 +114,6 @@ public:
 	/// Undo last match, adding it back to the unmatched input
 	bool UndoMatch();
 
-
 	KaraokeLineMatchDisplay(wxWindow *parent);
 
 	wxSize GetBestSize() const;
diff --git a/src/dialog_log.cpp b/src/dialog_log.cpp
index 7ff9169c8..9fc4d4582 100644
--- a/src/dialog_log.cpp
+++ b/src/dialog_log.cpp
@@ -32,8 +32,6 @@
 /// @ingroup libaegisub
 ///
 
-#include "config.h"
-
 #include "dialog_log.h"
 
 #include "compat.h"
diff --git a/src/dialog_paste_over.cpp b/src/dialog_paste_over.cpp
index 189289f54..2e12a42e4 100644
--- a/src/dialog_paste_over.cpp
+++ b/src/dialog_paste_over.cpp
@@ -32,8 +32,6 @@
 /// @ingroup secondary_ui
 ///
 
-#include "config.h"
-
 #include "dialog_paste_over.h"
 
 #include <functional>
diff --git a/src/dialog_progress.cpp b/src/dialog_progress.cpp
index d48ade4a1..1b115de1f 100644
--- a/src/dialog_progress.cpp
+++ b/src/dialog_progress.cpp
@@ -17,8 +17,6 @@
 /// @ingroup utility
 ///
 
-#include "config.h"
-
 #include "dialog_progress.h"
 
 #include "compat.h"
diff --git a/src/dialog_properties.cpp b/src/dialog_properties.cpp
index 9ec9dc978..3613e19ac 100644
--- a/src/dialog_properties.cpp
+++ b/src/dialog_properties.cpp
@@ -32,8 +32,6 @@
 /// @ingroup secondary_ui
 ///
 
-#include "config.h"
-
 #include "dialog_properties.h"
 
 #include "ass_file.h"
diff --git a/src/dialog_resample.cpp b/src/dialog_resample.cpp
index 44afb944f..52bdce081 100644
--- a/src/dialog_resample.cpp
+++ b/src/dialog_resample.cpp
@@ -17,8 +17,6 @@
 /// @ingroup tools_ui
 ///
 
-#include "config.h"
-
 #include "dialog_resample.h"
 
 #include "ass_file.h"
diff --git a/src/dialog_search_replace.cpp b/src/dialog_search_replace.cpp
index 37c734ae8..4470f8bd2 100644
--- a/src/dialog_search_replace.cpp
+++ b/src/dialog_search_replace.cpp
@@ -19,8 +19,6 @@
 /// @ingroup secondary_ui
 ///
 
-#include "config.h"
-
 #include "dialog_search_replace.h"
 
 #include "compat.h"
diff --git a/src/dialog_selection.cpp b/src/dialog_selection.cpp
index d0eb3e731..3d30cc1c1 100644
--- a/src/dialog_selection.cpp
+++ b/src/dialog_selection.cpp
@@ -19,8 +19,6 @@
 /// @ingroup secondary_ui
 ///
 
-#include "config.h"
-
 #include "dialog_selection.h"
 
 #include "ass_dialogue.h"
diff --git a/src/dialog_shift_times.cpp b/src/dialog_shift_times.cpp
index b8e888da2..e3392ef4e 100644
--- a/src/dialog_shift_times.cpp
+++ b/src/dialog_shift_times.cpp
@@ -19,8 +19,6 @@
 /// @ingroup secondary_ui
 ///
 
-#include "config.h"
-
 #include "dialog_shift_times.h"
 
 #include "ass_dialogue.h"
@@ -156,7 +154,6 @@ DialogShiftTimes::DialogShiftTimes(agi::Context *context)
 	else
 		shift_frames->Disable();
 
-
 	// Position controls
 	wxSizer *shift_amount_sizer = new wxFlexGridSizer(2, 2, 5, 5);
 	shift_amount_sizer->Add(shift_by_time, wxSizerFlags(0).Align(wxALIGN_CENTER_VERTICAL));
diff --git a/src/dialog_spellchecker.cpp b/src/dialog_spellchecker.cpp
index 7d3ffb201..3f2688d20 100644
--- a/src/dialog_spellchecker.cpp
+++ b/src/dialog_spellchecker.cpp
@@ -19,8 +19,6 @@
 /// @ingroup spelling
 ///
 
-#include "config.h"
-
 #include "dialog_spellchecker.h"
 
 #include "ass_dialogue.h"
diff --git a/src/dialog_style_editor.cpp b/src/dialog_style_editor.cpp
index c95452de5..68e5b55a4 100644
--- a/src/dialog_style_editor.cpp
+++ b/src/dialog_style_editor.cpp
@@ -32,8 +32,6 @@
 /// @ingroup style_editor
 ///
 
-#include "config.h"
-
 #include "ass_dialogue.h"
 #include "ass_file.h"
 #include "ass_style.h"
diff --git a/src/dialog_style_manager.cpp b/src/dialog_style_manager.cpp
index 33b1e98d3..847285c57 100644
--- a/src/dialog_style_manager.cpp
+++ b/src/dialog_style_manager.cpp
@@ -31,8 +31,6 @@
 /// @brief Style Manager dialogue box and partial logic
 /// @ingroup style_editor
 
-#include "config.h"
-
 #include "dialog_style_manager.h"
 
 #include "ass_dialogue.h"
@@ -452,7 +450,7 @@ void DialogStyleManager::OnCopyToCurrent() {
 	c->ass->Commit(_("style copy"), AssFile::COMMIT_STYLES);
 
 	CurrentList->DeselectAll();
-	for (auto const& style_name : copied) 
+	for (auto const& style_name : copied)
 		CurrentList->SetStringSelection(style_name, true);
 	UpdateButtons();
 }
@@ -670,7 +668,6 @@ void DialogStyleManager::UpdateButtons() {
 	StorageMoveBottom->Enable(contStor && lastStor != -1 && lastStor < itemsStor-1);
 	StorageSort->Enable(itemsStor > 1);
 
-
 	// Get current selection
 	n = CurrentList->GetSelections(sels);
 
diff --git a/src/dialog_styling_assistant.cpp b/src/dialog_styling_assistant.cpp
index 85829e267..174f771ae 100644
--- a/src/dialog_styling_assistant.cpp
+++ b/src/dialog_styling_assistant.cpp
@@ -19,8 +19,6 @@
 /// @ingroup tools_ui
 ///
 
-#include "config.h"
-
 #include "dialog_styling_assistant.h"
 
 #include "include/aegisub/context.h"
diff --git a/src/dialog_text_import.cpp b/src/dialog_text_import.cpp
index a36f98395..630168b88 100644
--- a/src/dialog_text_import.cpp
+++ b/src/dialog_text_import.cpp
@@ -32,8 +32,6 @@
 /// @ingroup secondary_ui
 ///
 
-#include "config.h"
-
 #include "dialog_text_import.h"
 
 #include "options.h"
@@ -67,7 +65,6 @@ DialogTextImport::DialogTextImport()
 	main_sizer->Add(CreateSeparatedButtonSizer(wxOK|wxCANCEL), 0, wxALL|wxEXPAND, 5);
 	SetSizerAndFit(main_sizer);
 
-
 	Bind(wxEVT_BUTTON, [=](wxCommandEvent&) {
 		TransferDataFromWindow();
 
diff --git a/src/dialog_timing_processor.cpp b/src/dialog_timing_processor.cpp
index 9e5215ac5..a0b3f4da1 100644
--- a/src/dialog_timing_processor.cpp
+++ b/src/dialog_timing_processor.cpp
@@ -32,8 +32,6 @@
 /// @ingroup tools_ui
 ///
 
-#include "config.h"
-
 #include "dialog_timing_processor.h"
 
 #include "ass_dialogue.h"
diff --git a/src/dialog_translation.cpp b/src/dialog_translation.cpp
index 850d2f42e..d2fb14053 100644
--- a/src/dialog_translation.cpp
+++ b/src/dialog_translation.cpp
@@ -19,8 +19,6 @@
 /// @ingroup tools_ui
 ///
 
-#include "config.h"
-
 #include "dialog_translation.h"
 
 #include "include/aegisub/context.h"
@@ -294,7 +292,6 @@ void DialogTranslation::InsertOriginal() {
 	translated_text->AddText(to_wx(blocks[cur_block]->GetText()));
 }
 
-
 void DialogTranslation::OnKeyDown(wxKeyEvent &evt) {
 	hotkey::check("Translation Assistant", c, evt);
 }
diff --git a/src/dialog_version_check.cpp b/src/dialog_version_check.cpp
index f99c31557..050ce085a 100644
--- a/src/dialog_version_check.cpp
+++ b/src/dialog_version_check.cpp
@@ -32,8 +32,6 @@
 /// @ingroup configuration_ui
 ///
 
-#include "config.h"
-
 #ifdef WITH_UPDATE_CHECKER
 
 #include "dialog_version_check.h"
diff --git a/src/dialog_video_details.cpp b/src/dialog_video_details.cpp
index 0a871a176..96acc1082 100644
--- a/src/dialog_video_details.cpp
+++ b/src/dialog_video_details.cpp
@@ -32,8 +32,6 @@
 /// @ingroup secondary_ui
 ///
 
-#include "config.h"
-
 #include "dialog_video_details.h"
 
 #include "ass_time.h"
diff --git a/src/export_fixstyle.cpp b/src/export_fixstyle.cpp
index 54de56bdd..ecd1c7c47 100644
--- a/src/export_fixstyle.cpp
+++ b/src/export_fixstyle.cpp
@@ -32,8 +32,6 @@
 /// @ingroup export
 ///
 
-#include "config.h"
-
 #include "export_fixstyle.h"
 
 #include "ass_file.h"
diff --git a/src/export_framerate.cpp b/src/export_framerate.cpp
index 12cce72ca..bec332145 100644
--- a/src/export_framerate.cpp
+++ b/src/export_framerate.cpp
@@ -32,8 +32,6 @@
 /// @ingroup export
 ///
 
-#include "config.h"
-
 #include "export_framerate.h"
 
 #include "ass_dialogue.h"
diff --git a/src/ffmpegsource_common.cpp b/src/ffmpegsource_common.cpp
index 38fe4f32b..be7732a80 100644
--- a/src/ffmpegsource_common.cpp
+++ b/src/ffmpegsource_common.cpp
@@ -32,8 +32,6 @@
 /// @ingroup video_input audio_input ffms
 ///
 
-#include "config.h"
-
 #ifdef WITH_FFMS2
 #include "ffmpegsource_common.h"
 
@@ -52,7 +50,6 @@
 #include <boost/filesystem.hpp>
 #include <inttypes.h>
 
-#include <wx/config.h>
 #include <wx/choicdlg.h> // Keep this last so wxUSE_CHOICEDLG is set.
 
 #ifdef _WIN32
diff --git a/src/fft.cpp b/src/fft.cpp
index d3120793c..1d9007010 100644
--- a/src/fft.cpp
+++ b/src/fft.cpp
@@ -34,8 +34,6 @@
 /// Most of this code was taken from http://www.codeproject.com/audio/waveInFFT.asp
 /// And rewriten by Rodrigo Braz Monteiro
 
-#include "config.h"
-
 #include "fft.h"
 
 #include <cmath>
diff --git a/src/font_file_lister.cpp b/src/font_file_lister.cpp
index 146ebee35..2f9094933 100644
--- a/src/font_file_lister.cpp
+++ b/src/font_file_lister.cpp
@@ -19,8 +19,6 @@
 /// @ingroup font_collector
 ///
 
-#include "config.h"
-
 #include "font_file_lister.h"
 
 #include "ass_dialogue.h"
diff --git a/src/font_file_lister_fontconfig.cpp b/src/font_file_lister_fontconfig.cpp
index 8ac201a79..e2dbd0c07 100644
--- a/src/font_file_lister_fontconfig.cpp
+++ b/src/font_file_lister_fontconfig.cpp
@@ -19,12 +19,8 @@
 /// @ingroup font_collector
 ///
 
-#include "config.h"
-
 #include "font_file_lister_fontconfig.h"
 
-#include <fontconfig/fontconfig.h>
-
 #include <libaegisub/log.h>
 #include <libaegisub/util.h>
 
@@ -34,7 +30,7 @@
 
 #include <boost/algorithm/string/case_conv.hpp>
 #include <boost/filesystem/path.hpp>
-
+#include <fontconfig/fontconfig.h>
 #include <wx/intl.h>
 
 namespace {
diff --git a/src/frame_main.cpp b/src/frame_main.cpp
index d032306d3..a7583cef5 100644
--- a/src/frame_main.cpp
+++ b/src/frame_main.cpp
@@ -31,8 +31,6 @@
 /// @brief Main window creation and control management
 /// @ingroup main_ui
 
-#include "config.h"
-
 #include "frame_main.h"
 
 #include "include/aegisub/context.h"
diff --git a/src/gl_text.cpp b/src/gl_text.cpp
index bef359c16..1a7bb778f 100644
--- a/src/gl_text.cpp
+++ b/src/gl_text.cpp
@@ -32,8 +32,6 @@
 /// @ingroup video_output
 ///
 
-#include "config.h"
-
 #include "gl_text.h"
 
 #include "compat.h"
diff --git a/src/gl_wrap.cpp b/src/gl_wrap.cpp
index 6ec326050..a7eb769f6 100644
--- a/src/gl_wrap.cpp
+++ b/src/gl_wrap.cpp
@@ -19,9 +19,6 @@
 /// @ingroup video_output
 ///
 
-
-#include "config.h"
-
 #include "gl_wrap.h"
 
 #include <wx/colour.h>
diff --git a/src/help_button.cpp b/src/help_button.cpp
index bd596d977..043f4c7fa 100644
--- a/src/help_button.cpp
+++ b/src/help_button.cpp
@@ -32,8 +32,6 @@
 /// @ingroup custom_control
 ///
 
-#include "config.h"
-
 #include "help_button.h"
 
 #include "options.h"
@@ -95,4 +93,3 @@ void HelpButton::OpenPage(wxString const& pageID) {
 
 	wxLaunchDefaultBrowser(wxString::Format("http://docs.aegisub.org/3.1/%s/#%s", page, section));
 }
-
diff --git a/src/hotkey.cpp b/src/hotkey.cpp
index d07006eb9..70d1b15b1 100644
--- a/src/hotkey.cpp
+++ b/src/hotkey.cpp
@@ -16,8 +16,6 @@
 /// @brief Hotkey handler
 /// @ingroup hotkey menu event window
 
-#include "config.h"
-
 #include <libaegisub/hotkey.h>
 
 #include "include/aegisub/hotkey.h"
diff --git a/src/hotkey_data_view_model.cpp b/src/hotkey_data_view_model.cpp
index e9d6861a4..6d124be92 100644
--- a/src/hotkey_data_view_model.cpp
+++ b/src/hotkey_data_view_model.cpp
@@ -19,8 +19,6 @@
 /// @ingroup hotkey configuration_ui
 ///
 
-#include "config.h"
-
 #include "hotkey_data_view_model.h"
 
 #include <libaegisub/exception.h>
@@ -198,7 +196,6 @@ public:
 			model->ItemsDeleted(wxDataViewItem(this), removed);
 	}
 
-
 	wxDataViewItem GetParent() const override { return wxDataViewItem(nullptr); }
 	bool IsContainer() const override { return true; }
 	bool SetValue(wxVariant const&, unsigned int) override { return false; }
@@ -261,7 +258,6 @@ public:
 	}
 };
 
-
 HotkeyDataViewModel::HotkeyDataViewModel(Preferences *parent)
 : root(agi::util::make_unique<HotkeyModelRoot>(this))
 , parent(parent)
diff --git a/src/initial_line_state.cpp b/src/initial_line_state.cpp
index b7c0425b4..387cb5eaf 100644
--- a/src/initial_line_state.cpp
+++ b/src/initial_line_state.cpp
@@ -12,8 +12,6 @@
 // ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 // OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
-#include "config.h"
-
 #include "initial_line_state.h"
 
 #include "ass_dialogue.h"
diff --git a/src/libresrc/libresrc.cpp b/src/libresrc/libresrc.cpp
index 3018e44c2..fa4e9f6e8 100644
--- a/src/libresrc/libresrc.cpp
+++ b/src/libresrc/libresrc.cpp
@@ -12,8 +12,6 @@
 // ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 // OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 
-#include "../config.h"
-
 #include "libresrc.h"
 
 #include <wx/bitmap.h>
diff --git a/src/main.cpp b/src/main.cpp
index 74e98557c..83dc8b873 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -32,8 +32,6 @@
 /// @ingroup main
 ///
 
-#include "config.h"
-
 #include "main.h"
 
 #include "command/command.h"
@@ -71,7 +69,6 @@
 #include <boost/locale.hpp>
 
 #include <wx/clipbrd.h>
-#include <wx/config.h>
 #include <wx/msgdlg.h>
 #include <wx/stackwalk.h>
 #include <wx/utils.h>
diff --git a/src/menu.cpp b/src/menu.cpp
index 4be26c289..9b3f1db60 100644
--- a/src/menu.cpp
+++ b/src/menu.cpp
@@ -16,8 +16,6 @@
 /// @brief Dynamic menu and toolbar generator.
 /// @ingroup menu
 
-#include "config.h"
-
 #include "include/aegisub/menu.h"
 
 #include "include/aegisub/context.h"
diff --git a/src/mkv_wrap.cpp b/src/mkv_wrap.cpp
index 835762f1e..043646440 100644
--- a/src/mkv_wrap.cpp
+++ b/src/mkv_wrap.cpp
@@ -32,8 +32,6 @@
 /// @ingroup video_input
 ///
 
-#include "config.h"
-
 #include "mkv_wrap.h"
 
 #include "ass_file.h"
diff --git a/src/osx_utils.mm b/src/osx_utils.mm
index 3250a3155..e85ab6334 100644
--- a/src/osx_utils.mm
+++ b/src/osx_utils.mm
@@ -19,8 +19,6 @@
 /// @ingroup utils
 ///
 
-#include "config.h"
-
 #include <wx/window.h>
 #include <wx/osx/core/cfstring.h>
 
@@ -61,4 +59,3 @@ void SetPlaceholderText(wxWindow *window, wxString const& placeholder) {
         cell.placeholderString = wxCFStringRef(placeholder).AsNSString();
     }
 }
-
diff --git a/src/pen.cpp b/src/pen.cpp
index f51fdedc3..b7d0d147c 100644
--- a/src/pen.cpp
+++ b/src/pen.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "pen.h"
 
 #include "compat.h"
diff --git a/src/persist_location.cpp b/src/persist_location.cpp
index a04475807..8b1498ced 100644
--- a/src/persist_location.cpp
+++ b/src/persist_location.cpp
@@ -18,8 +18,6 @@
 /// @see persist_location.h
 /// @ingroup utility
 
-#include "config.h"
-
 #include "persist_location.h"
 
 #include "options.h"
diff --git a/src/preferences.cpp b/src/preferences.cpp
index 1956b920f..55732104b 100644
--- a/src/preferences.cpp
+++ b/src/preferences.cpp
@@ -16,8 +16,6 @@
 /// @brief Preferences dialogue
 /// @ingroup configuration_ui
 
-#include "config.h"
-
 #include "preferences.h"
 
 #include "audio_renderer_waveform.h"
@@ -479,7 +477,6 @@ Automation::Automation(wxTreebook *book, Preferences *parent): OptionPage(book,
 	SetSizerAndFit(sizer);
 }
 
-
 /// Advanced preferences page
 Advanced::Advanced(wxTreebook *book, Preferences *parent): OptionPage(book, parent, _("Advanced")) {
 	wxFlexGridSizer *general = PageSizer(_("General"));
diff --git a/src/resolution_resampler.cpp b/src/resolution_resampler.cpp
index d4cd155ed..e6672d2c3 100644
--- a/src/resolution_resampler.cpp
+++ b/src/resolution_resampler.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "resolution_resampler.h"
 
 #include "ass_dialogue.h"
diff --git a/src/retina_helper.mm b/src/retina_helper.mm
index f69bd52e0..3c211e253 100644
--- a/src/retina_helper.mm
+++ b/src/retina_helper.mm
@@ -14,14 +14,11 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "retina_helper.h"
 
 #include <Cocoa/Cocoa.h>
 #include <wx/window.h>
 
-
 @interface RetinaObserver : NSObject
 @property (nonatomic, assign) NSWindow *window;
 @property (nonatomic, copy) void (^block)();
@@ -65,4 +62,3 @@ RetinaHelper::~RetinaHelper() {
 int RetinaHelper::GetScaleFactor() const {
 	return static_cast<int>(window->GetHandle().window.backingScaleFactor);
 }
-
diff --git a/src/scintilla_text_ctrl.cpp b/src/scintilla_text_ctrl.cpp
index 04d9d0231..4e5892a09 100644
--- a/src/scintilla_text_ctrl.cpp
+++ b/src/scintilla_text_ctrl.cpp
@@ -32,8 +32,6 @@
 /// @ingroup custom_control
 ///
 
-#include "config.h"
-
 #include "scintilla_text_ctrl.h"
 #include "utils.h"
 
diff --git a/src/scintilla_text_selection_controller.cpp b/src/scintilla_text_selection_controller.cpp
index 642b05bda..f54e68418 100644
--- a/src/scintilla_text_selection_controller.cpp
+++ b/src/scintilla_text_selection_controller.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "scintilla_text_selection_controller.h"
 
 #include "scintilla_text_ctrl.h"
diff --git a/src/search_replace_engine.cpp b/src/search_replace_engine.cpp
index 137a4693b..d680fff76 100644
--- a/src/search_replace_engine.cpp
+++ b/src/search_replace_engine.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "search_replace_engine.h"
 
 #include "ass_dialogue.h"
diff --git a/src/selection_controller.cpp b/src/selection_controller.cpp
index 02c184e9e..74a93f63c 100644
--- a/src/selection_controller.cpp
+++ b/src/selection_controller.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "selection_controller.h"
 
 #include "ass_dialogue.h"
diff --git a/src/spellchecker.cpp b/src/spellchecker.cpp
index 5dc0a2a10..f8872b549 100644
--- a/src/spellchecker.cpp
+++ b/src/spellchecker.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "include/aegisub/spellchecker.h"
 #include "spellchecker_hunspell.h"
 
diff --git a/src/spellchecker_hunspell.cpp b/src/spellchecker_hunspell.cpp
index 9eec783bc..3da4d93e9 100644
--- a/src/spellchecker_hunspell.cpp
+++ b/src/spellchecker_hunspell.cpp
@@ -18,8 +18,6 @@
 /// @ingroup spelling
 ///
 
-#include "config.h"
-
 #ifdef WITH_HUNSPELL
 #include "spellchecker_hunspell.h"
 
diff --git a/src/spline.cpp b/src/spline.cpp
index 68599daa4..851eaa03d 100644
--- a/src/spline.cpp
+++ b/src/spline.cpp
@@ -32,8 +32,6 @@
 /// @ingroup visual_ts
 ///
 
-#include "config.h"
-
 #include "spline.h"
 
 #include "utils.h"
diff --git a/src/spline_curve.cpp b/src/spline_curve.cpp
index 48df6409f..1cc546af5 100644
--- a/src/spline_curve.cpp
+++ b/src/spline_curve.cpp
@@ -32,8 +32,6 @@
 /// @ingroup visual_ts
 ///
 
-#include "config.h"
-
 #include "spline_curve.h"
 #include "utils.h"
 
diff --git a/src/string_codec.cpp b/src/string_codec.cpp
index a2b57085e..5e48d214a 100644
--- a/src/string_codec.cpp
+++ b/src/string_codec.cpp
@@ -35,8 +35,6 @@
 // Functions for inline string encoding.
 // See header file for details.
 
-#include "config.h"
-
 #include "string_codec.h"
 
 #include <boost/format.hpp>
diff --git a/src/subs_controller.cpp b/src/subs_controller.cpp
index 208831936..df261045b 100644
--- a/src/subs_controller.cpp
+++ b/src/subs_controller.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "subs_controller.h"
 
 #include "ass_attachment.h"
diff --git a/src/subs_edit_box.cpp b/src/subs_edit_box.cpp
index 7f7de7c1e..ad05bdd34 100644
--- a/src/subs_edit_box.cpp
+++ b/src/subs_edit_box.cpp
@@ -32,8 +32,6 @@
 /// @brief Main subtitle editing area, including toolbars around the text control
 /// @ingroup main_ui
 
-#include "config.h"
-
 #include "subs_edit_box.h"
 
 #include "ass_dialogue.h"
diff --git a/src/subs_edit_ctrl.cpp b/src/subs_edit_ctrl.cpp
index a6c4bf4bc..afe8e81b1 100644
--- a/src/subs_edit_ctrl.cpp
+++ b/src/subs_edit_ctrl.cpp
@@ -32,8 +32,6 @@
 /// @ingroup main_ui
 ///
 
-#include "config.h"
-
 #include "subs_edit_ctrl.h"
 
 #include "ass_dialogue.h"
diff --git a/src/subs_preview.cpp b/src/subs_preview.cpp
index affbb97a9..11713ba7c 100644
--- a/src/subs_preview.cpp
+++ b/src/subs_preview.cpp
@@ -32,9 +32,6 @@
 /// @ingroup custom_control
 ///
 
-
-#include "config.h"
-
 #include "ass_dialogue.h"
 #include "ass_file.h"
 #include "ass_style.h"
diff --git a/src/subtitle_format.cpp b/src/subtitle_format.cpp
index 25eaa06e2..bc09823dd 100644
--- a/src/subtitle_format.cpp
+++ b/src/subtitle_format.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subtitle_io
 ///
 
-#include "config.h"
-
 #include "subtitle_format.h"
 
 #include <wx/intl.h>
@@ -272,7 +270,6 @@ void SubtitleFormat::MergeIdentical(AssFile &file) {
 	}
 }
 
-
 void SubtitleFormat::LoadFormats() {
 	if (formats.empty()) {
 		formats.emplace_back(agi::util::make_unique<AssSubtitleFormat>());
diff --git a/src/subtitle_format_ass.cpp b/src/subtitle_format_ass.cpp
index b7d5303a1..3fdc30e39 100644
--- a/src/subtitle_format_ass.cpp
+++ b/src/subtitle_format_ass.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "subtitle_format_ass.h"
 
 #include "ass_attachment.h"
diff --git a/src/subtitle_format_ebu3264.cpp b/src/subtitle_format_ebu3264.cpp
index f8134d432..282b57c85 100644
--- a/src/subtitle_format_ebu3264.cpp
+++ b/src/subtitle_format_ebu3264.cpp
@@ -21,8 +21,6 @@
 // This implements support for the EBU tech 3264 (1991) subtitling data exchange format.
 // Work on support for this format was sponsored by Bandai.
 
-#include "config.h"
-
 #include "subtitle_format_ebu3264.h"
 
 #include "ass_dialogue.h"
diff --git a/src/subtitle_format_encore.cpp b/src/subtitle_format_encore.cpp
index 0811850ac..040d5d2a7 100644
--- a/src/subtitle_format_encore.cpp
+++ b/src/subtitle_format_encore.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subtitle_io
 ///
 
-#include "config.h"
-
 #include "subtitle_format_encore.h"
 
 #include "ass_dialogue.h"
diff --git a/src/subtitle_format_microdvd.cpp b/src/subtitle_format_microdvd.cpp
index b64e16e5d..04406f4c7 100644
--- a/src/subtitle_format_microdvd.cpp
+++ b/src/subtitle_format_microdvd.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subtitle_io
 ///
 
-#include "config.h"
-
 #include "subtitle_format_microdvd.h"
 
 #include "ass_dialogue.h"
diff --git a/src/subtitle_format_mkv.cpp b/src/subtitle_format_mkv.cpp
index f56add910..ae4ac2893 100644
--- a/src/subtitle_format_mkv.cpp
+++ b/src/subtitle_format_mkv.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subtitle_io matroska
 ///
 
-#include "config.h"
-
 #include "subtitle_format_mkv.h"
 
 #include "mkv_wrap.h"
diff --git a/src/subtitle_format_srt.cpp b/src/subtitle_format_srt.cpp
index 4b19933c2..9f1ce165f 100644
--- a/src/subtitle_format_srt.cpp
+++ b/src/subtitle_format_srt.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subtitle_io
 ///
 
-#include "config.h"
-
 #include "subtitle_format_srt.h"
 
 #include "ass_attachment.h"
diff --git a/src/subtitle_format_transtation.cpp b/src/subtitle_format_transtation.cpp
index 1c620103a..e0646c094 100644
--- a/src/subtitle_format_transtation.cpp
+++ b/src/subtitle_format_transtation.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subtitle_io
 ///
 
-#include "config.h"
-
 #include <cstdio>
 
 #include "subtitle_format_transtation.h"
diff --git a/src/subtitle_format_ttxt.cpp b/src/subtitle_format_ttxt.cpp
index de4c237a0..48df989ac 100644
--- a/src/subtitle_format_ttxt.cpp
+++ b/src/subtitle_format_ttxt.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subtitle_io
 ///
 
-#include "config.h"
-
 #include "subtitle_format_ttxt.h"
 
 #include <wx/xml/xml.h>
diff --git a/src/subtitle_format_txt.cpp b/src/subtitle_format_txt.cpp
index a7c2e0b91..f2ce7f1b7 100644
--- a/src/subtitle_format_txt.cpp
+++ b/src/subtitle_format_txt.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subtitle_io
 ///
 
-#include "config.h"
-
 #include "subtitle_format_txt.h"
 
 #include "ass_dialogue.h"
diff --git a/src/subtitles_provider.cpp b/src/subtitles_provider.cpp
index 42d03ef2d..4edf37507 100644
--- a/src/subtitles_provider.cpp
+++ b/src/subtitles_provider.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "include/aegisub/subtitles_provider.h"
 
 #include "factory_manager.h"
diff --git a/src/subtitles_provider_csri.cpp b/src/subtitles_provider_csri.cpp
index 245f710c5..a5f1183ec 100644
--- a/src/subtitles_provider_csri.cpp
+++ b/src/subtitles_provider_csri.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subtitle_rendering
 ///
 
-#include "config.h"
-
 #ifdef WITH_CSRI
 #include "subtitles_provider_csri.h"
 
diff --git a/src/subtitles_provider_libass.cpp b/src/subtitles_provider_libass.cpp
index e015118ef..44fa78a98 100644
--- a/src/subtitles_provider_libass.cpp
+++ b/src/subtitles_provider_libass.cpp
@@ -32,8 +32,6 @@
 /// @ingroup subtitle_rendering
 ///
 
-#include "config.h"
-
 #include "subtitles_provider_libass.h"
 
 #include "ass_info.h"
diff --git a/src/text_file_reader.cpp b/src/text_file_reader.cpp
index a56a695b3..645e79ad1 100644
--- a/src/text_file_reader.cpp
+++ b/src/text_file_reader.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "text_file_reader.h"
 
 #include <libaegisub/file_mapping.h>
diff --git a/src/text_file_writer.cpp b/src/text_file_writer.cpp
index 57e6179e8..6de65a4d8 100644
--- a/src/text_file_writer.cpp
+++ b/src/text_file_writer.cpp
@@ -19,8 +19,6 @@
 /// @ingroup utility
 ///
 
-#include "config.h"
-
 #include "text_file_writer.h"
 
 #include "options.h"
diff --git a/src/thesaurus.cpp b/src/thesaurus.cpp
index 0eaaee777..158bbad79 100644
--- a/src/thesaurus.cpp
+++ b/src/thesaurus.cpp
@@ -19,8 +19,6 @@
 /// @ingroup thesaurus
 ///
 
-#include "config.h"
-
 #include "thesaurus.h"
 
 #include "options.h"
diff --git a/src/timeedit_ctrl.cpp b/src/timeedit_ctrl.cpp
index 05971dcc6..645037986 100644
--- a/src/timeedit_ctrl.cpp
+++ b/src/timeedit_ctrl.cpp
@@ -32,8 +32,6 @@
 /// @ingroup custom_control
 ///
 
-#include "config.h"
-
 #include "timeedit_ctrl.h"
 
 #include <functional>
diff --git a/src/toggle_bitmap.cpp b/src/toggle_bitmap.cpp
index a78121471..abf21e1d8 100644
--- a/src/toggle_bitmap.cpp
+++ b/src/toggle_bitmap.cpp
@@ -32,8 +32,6 @@
 /// @ingroup custom_control
 ///
 
-#include "config.h"
-
 #include <wx/dcbuffer.h>
 #include <wx/settings.h>
 #include <wx/tglbtn.h>
diff --git a/src/toolbar.cpp b/src/toolbar.cpp
index 208f8b14a..837c36afd 100644
--- a/src/toolbar.cpp
+++ b/src/toolbar.cpp
@@ -16,8 +16,6 @@
 /// @brief Dynamic menu toolbar generator.
 /// @ingroup toolbar menu
 
-#include "config.h"
-
 #include "include/aegisub/toolbar.h"
 
 #include "command/command.h"
@@ -138,7 +136,6 @@ namespace {
 
 				last_was_sep = false;
 
-
 				int flags = command->Type();
 				wxItemKind kind =
 					flags & cmd::COMMAND_RADIO ? wxITEM_RADIO :
diff --git a/src/tooltip_manager.cpp b/src/tooltip_manager.cpp
index 89b21117b..447dbef4b 100644
--- a/src/tooltip_manager.cpp
+++ b/src/tooltip_manager.cpp
@@ -32,8 +32,6 @@
 /// @ingroup custom_control
 ///
 
-#include "config.h"
-
 #include "tooltip_manager.h"
 
 #include "compat.h"
diff --git a/src/utils.cpp b/src/utils.cpp
index 6b25d0bb5..2abd32926 100644
--- a/src/utils.cpp
+++ b/src/utils.cpp
@@ -32,8 +32,6 @@
 /// @ingroup utility
 ///
 
-#include "config.h"
-
 #include "utils.h"
 
 #include "compat.h"
@@ -262,7 +260,6 @@ size_t MaxLineLength(std::string const& text, bool ignore_whitespace) {
 	return std::max(max_line_length, current_line_length);
 }
 
-
 #ifndef __WXOSX_COCOA__
 // OS X implementation in osx_utils.mm
 void AddFullScreenButton(wxWindow *) { }
@@ -316,4 +313,3 @@ agi::fs::path OpenFileSelector(wxString const& message, std::string const& optio
 agi::fs::path SaveFileSelector(wxString const& message, std::string const& option_name, std::string const& default_filename, std::string const& default_extension, wxString const& wildcard, wxWindow *parent) {
 	return FileSelector(message, option_name, default_filename, default_extension, wildcard, wxFD_SAVE | wxFD_OVERWRITE_PROMPT, parent);
 }
-
diff --git a/src/validators.cpp b/src/validators.cpp
index dc8cfa5ef..2ca5f72f4 100644
--- a/src/validators.cpp
+++ b/src/validators.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "validators.h"
 
 #include "compat.h"
diff --git a/src/vector2d.cpp b/src/vector2d.cpp
index 8ee263483..a8dfae25c 100644
--- a/src/vector2d.cpp
+++ b/src/vector2d.cpp
@@ -19,8 +19,6 @@
 /// @ingroup utility visual_ts
 ///
 
-#include "config.h"
-
 #include "vector2d.h"
 
 #include "utils.h"
diff --git a/src/version.cpp b/src/version.cpp
index 4b60cfefb..ec4f27073 100644
--- a/src/version.cpp
+++ b/src/version.cpp
@@ -32,8 +32,6 @@
 /// @ingroup main
 ///
 
-#include "config.h"
-
 #include "version.h"
 #include "git_version.h"
 
@@ -84,4 +82,3 @@ int GetSVNRevision() {
 	return 0;
 #endif
 }
-
diff --git a/src/video_box.cpp b/src/video_box.cpp
index 5b3a77f8d..301b1d1af 100644
--- a/src/video_box.cpp
+++ b/src/video_box.cpp
@@ -32,8 +32,6 @@
 /// @ingroup main_ui video
 ///
 
-#include "config.h"
-
 #include <wx/combobox.h>
 #include <wx/sizer.h>
 #include <wx/statline.h>
diff --git a/src/video_context.cpp b/src/video_context.cpp
index 4b3545dc4..330fafa99 100644
--- a/src/video_context.cpp
+++ b/src/video_context.cpp
@@ -32,8 +32,6 @@
 /// @ingroup video
 ///
 
-#include "config.h"
-
 #include "video_context.h"
 
 #include "ass_dialogue.h"
diff --git a/src/video_display.cpp b/src/video_display.cpp
index 0dd2a94dd..fdf061c31 100644
--- a/src/video_display.cpp
+++ b/src/video_display.cpp
@@ -32,8 +32,6 @@
 /// @ingroup video main_ui
 ///
 
-#include "config.h"
-
 #include "video_display.h"
 
 #include "ass_file.h"
diff --git a/src/video_frame.cpp b/src/video_frame.cpp
index 2ed01695b..91639318a 100644
--- a/src/video_frame.cpp
+++ b/src/video_frame.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "video_frame.h"
 
 #include <boost/gil/gil_all.hpp>
diff --git a/src/video_out_gl.cpp b/src/video_out_gl.cpp
index cbfe2c251..3f73361cb 100644
--- a/src/video_out_gl.cpp
+++ b/src/video_out_gl.cpp
@@ -19,8 +19,6 @@
 /// @ingroup video
 ///
 
-#include "config.h"
-
 #include <algorithm>
 #include <utility>
 
diff --git a/src/video_provider_avs.cpp b/src/video_provider_avs.cpp
index e992805c4..02b9dc7e2 100644
--- a/src/video_provider_avs.cpp
+++ b/src/video_provider_avs.cpp
@@ -32,8 +32,6 @@
 /// @ingroup video_input
 ///
 
-#include "config.h"
-
 #ifdef WITH_AVISYNTH
 #include "include/aegisub/video_provider.h"
 
diff --git a/src/video_provider_cache.cpp b/src/video_provider_cache.cpp
index 69a03dd7f..e5e99805a 100644
--- a/src/video_provider_cache.cpp
+++ b/src/video_provider_cache.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "include/aegisub/video_provider.h"
 
 #include "options.h"
diff --git a/src/video_provider_dummy.cpp b/src/video_provider_dummy.cpp
index 9bb18a0e0..34ccf5390 100644
--- a/src/video_provider_dummy.cpp
+++ b/src/video_provider_dummy.cpp
@@ -32,8 +32,6 @@
 /// @ingroup video_input
 ///
 
-#include "config.h"
-
 #include "video_provider_dummy.h"
 
 #include "colorspace.h"
diff --git a/src/video_provider_ffmpegsource.cpp b/src/video_provider_ffmpegsource.cpp
index 794714218..5405c8758 100644
--- a/src/video_provider_ffmpegsource.cpp
+++ b/src/video_provider_ffmpegsource.cpp
@@ -32,8 +32,6 @@
 /// @ingroup video_input ffms
 ///
 
-#include "config.h"
-
 #ifdef WITH_FFMS2
 #include "ffmpegsource_common.h"
 #include "include/aegisub/video_provider.h"
diff --git a/src/video_provider_manager.cpp b/src/video_provider_manager.cpp
index 468d66b6c..dfe257749 100644
--- a/src/video_provider_manager.cpp
+++ b/src/video_provider_manager.cpp
@@ -14,8 +14,6 @@
 //
 // Aegisub Project http://www.aegisub.org/
 
-#include "config.h"
-
 #include "video_provider_manager.h"
 
 #include "factory_manager.h"
diff --git a/src/video_provider_yuv4mpeg.cpp b/src/video_provider_yuv4mpeg.cpp
index 08bd0626b..b38f8ce67 100644
--- a/src/video_provider_yuv4mpeg.cpp
+++ b/src/video_provider_yuv4mpeg.cpp
@@ -32,8 +32,6 @@
 /// @ingroup video_input
 ///
 
-#include "config.h"
-
 #include "include/aegisub/video_provider.h"
 
 #include "compat.h"
@@ -77,7 +75,6 @@ class YUV4MPEGVideoProvider final : public VideoProvider {
 		Y4M_PIXFMT_MONO		/// luma only (grayscale)
 	};
 
-
 	/// Interlacing mode for an entire stream
 	enum Y4M_InterlacingMode {
 		Y4M_ILACE_NOTSET = -1,	/// undefined
@@ -90,7 +87,6 @@ class YUV4MPEGVideoProvider final : public VideoProvider {
 		Y4M_ILACE_UNKNOWN		/// unknown interlacing mode (not the same as undefined)
 	};
 
-
 	/// Frame information flags
 	enum Y4M_FrameFlags {
 		Y4M_FFLAG_NOTSET	= -1,		/// undefined
diff --git a/src/video_slider.cpp b/src/video_slider.cpp
index db5fa076d..b6370847b 100644
--- a/src/video_slider.cpp
+++ b/src/video_slider.cpp
@@ -32,8 +32,6 @@
 /// @ingroup custom_control
 ///
 
-#include "config.h"
-
 #include "video_slider.h"
 
 #include "base_grid.h"
diff --git a/src/visual_feature.cpp b/src/visual_feature.cpp
index 366694b0c..533d417e8 100644
--- a/src/visual_feature.cpp
+++ b/src/visual_feature.cpp
@@ -32,8 +32,6 @@
 /// @ingroup visual_ts
 ///
 
-#include "config.h"
-
 #include "gl_wrap.h"
 #include "visual_feature.h"
 
diff --git a/src/visual_tool.cpp b/src/visual_tool.cpp
index b1f29f4bd..f5a25dfd1 100644
--- a/src/visual_tool.cpp
+++ b/src/visual_tool.cpp
@@ -18,8 +18,6 @@
 /// @brief Base class for visual typesetting functions
 /// @ingroup visual_ts
 
-#include "config.h"
-
 #include "visual_tool.h"
 
 #include "ass_dialogue.h"
diff --git a/src/visual_tool_clip.cpp b/src/visual_tool_clip.cpp
index c7f8ce6a8..754f5ab9c 100644
--- a/src/visual_tool_clip.cpp
+++ b/src/visual_tool_clip.cpp
@@ -18,8 +18,6 @@
 /// @brief Rectangular clipping visual typesetting tool
 /// @ingroup visual_ts
 
-#include "config.h"
-
 #include "visual_tool_clip.h"
 
 #include "ass_dialogue.h"
diff --git a/src/visual_tool_cross.cpp b/src/visual_tool_cross.cpp
index 7757b924c..3f0908299 100644
--- a/src/visual_tool_cross.cpp
+++ b/src/visual_tool_cross.cpp
@@ -18,8 +18,6 @@
 /// @brief Crosshair double-click-to-position visual typesetting tool
 /// @ingroup visual_ts
 
-#include "config.h"
-
 #include "visual_tool_cross.h"
 
 #include "gl_text.h"
diff --git a/src/visual_tool_drag.cpp b/src/visual_tool_drag.cpp
index 672d68d2d..07967dd8e 100644
--- a/src/visual_tool_drag.cpp
+++ b/src/visual_tool_drag.cpp
@@ -18,8 +18,6 @@
 /// @brief Position all visible subtitles by dragging visual typesetting tool
 /// @ingroup visual_ts
 
-#include "config.h"
-
 #include "visual_tool_drag.h"
 
 #include "ass_dialogue.h"
diff --git a/src/visual_tool_rotatexy.cpp b/src/visual_tool_rotatexy.cpp
index ae1c47b7d..e3fc503e1 100644
--- a/src/visual_tool_rotatexy.cpp
+++ b/src/visual_tool_rotatexy.cpp
@@ -18,8 +18,6 @@
 /// @brief 3D rotation in X/Y axes visual typesetting tool
 /// @ingroup visual_ts
 
-#include "config.h"
-
 #include "visual_tool_rotatexy.h"
 
 #include <boost/format.hpp>
diff --git a/src/visual_tool_rotatez.cpp b/src/visual_tool_rotatez.cpp
index a23b935e1..6fb0bb3f2 100644
--- a/src/visual_tool_rotatez.cpp
+++ b/src/visual_tool_rotatez.cpp
@@ -18,8 +18,6 @@
 /// @brief 2D rotation in Z axis visual typesetting tool
 /// @ingroup visual_ts
 
-#include "config.h"
-
 #include "visual_tool_rotatez.h"
 
 #include "utils.h"
diff --git a/src/visual_tool_scale.cpp b/src/visual_tool_scale.cpp
index 8e4670ac2..50f26844b 100644
--- a/src/visual_tool_scale.cpp
+++ b/src/visual_tool_scale.cpp
@@ -18,8 +18,6 @@
 /// @brief X/Y scaling visual typesetting tool
 /// @ingroup visual_ts
 
-#include "config.h"
-
 #include <cmath>
 
 #include "visual_tool_scale.h"
diff --git a/src/visual_tool_vector_clip.cpp b/src/visual_tool_vector_clip.cpp
index 260a82d0d..ac5751be3 100644
--- a/src/visual_tool_vector_clip.cpp
+++ b/src/visual_tool_vector_clip.cpp
@@ -18,8 +18,6 @@
 /// @brief Vector clipping visual typesetting tool
 /// @ingroup visual_ts
 
-#include "config.h"
-
 #include "visual_tool_vector_clip.h"
 
 #include "ass_dialogue.h"
-- 
GitLab