From f96f8f40430b73bdd91b70207653e7fb94229677 Mon Sep 17 00:00:00 2001 From: John Ralls Date: Sun, 8 Jan 2023 16:04:27 -0800 Subject: [PATCH] [c++options] Reorder include directives to fix Windows biuld. libguile.h includes windows.h and doing so breaks including c++ headers after that use advanced features like enum class. Ensure that the gnc-option headers are included before libguile.h. --- gnucash/gnome-utils/dialog-options.cpp | 8 ++++---- gnucash/gnome-utils/dialog-options.hpp | 2 ++ gnucash/gnome-utils/gnc-main-window.cpp | 4 ++-- gnucash/gnome-utils/gnc-option-gtk-ui.cpp | 10 +++++++++- gnucash/gnome-utils/gnc-option-gtk-ui.hpp | 2 +- gnucash/gnome/assistant-hierarchy.cpp | 6 +++--- gnucash/gnome/dialog-report-column-view.cpp | 6 +++--- gnucash/gnome/dialog-report-style-sheet.cpp | 6 +++--- gnucash/gnome/gnc-plugin-page-report.cpp | 4 ++-- gnucash/gnome/window-report.cpp | 6 +++--- gnucash/report/gnc-report.cpp | 1 + gnucash/report/gnc-report.h | 1 - 12 files changed, 33 insertions(+), 23 deletions(-) diff --git a/gnucash/gnome-utils/dialog-options.cpp b/gnucash/gnome-utils/dialog-options.cpp index 3293b5a5a9..59fa64d277 100644 --- a/gnucash/gnome-utils/dialog-options.cpp +++ b/gnucash/gnome-utils/dialog-options.cpp @@ -29,10 +29,13 @@ extern "C" } #include // To include as C++ overriding later indirect includes -#include #include #include #include +#include +#include +#include "dialog-options.hpp" +#include extern "C" { @@ -48,10 +51,7 @@ extern "C" #include #include -#include "dialog-options.hpp" #include "gnc-option-gtk-ui.hpp" -#include -#include #define GNC_PREF_CLOCK_24H "clock-24h" diff --git a/gnucash/gnome-utils/dialog-options.hpp b/gnucash/gnome-utils/dialog-options.hpp index 9a6facf35a..ae0f45d7fa 100644 --- a/gnucash/gnome-utils/dialog-options.hpp +++ b/gnucash/gnome-utils/dialog-options.hpp @@ -34,6 +34,8 @@ #include "gnc-option-uitype.hpp" #include +#include +#include class GncOptionsDialog; diff --git a/gnucash/gnome-utils/gnc-main-window.cpp b/gnucash/gnome-utils/gnc-main-window.cpp index 09456f7331..a4246f35ed 100644 --- a/gnucash/gnome-utils/gnc-main-window.cpp +++ b/gnucash/gnome-utils/gnc-main-window.cpp @@ -32,11 +32,12 @@ @author Copyright (C) 2003 Jan Arne Petersen @author Copyright (C) 2003,2005,2006 David Hampton */ -#include #include #include #include #include +#include "dialog-options.hpp" +#include extern "C" { @@ -88,7 +89,6 @@ extern "C" # include // for stat(2) #endif } -#include "dialog-options.hpp" /** Names of signals generated by the main window. */ enum diff --git a/gnucash/gnome-utils/gnc-option-gtk-ui.cpp b/gnucash/gnome-utils/gnc-option-gtk-ui.cpp index 053cbd9b8c..38fb4d60dc 100644 --- a/gnucash/gnome-utils/gnc-option-gtk-ui.cpp +++ b/gnucash/gnome-utils/gnc-option-gtk-ui.cpp @@ -20,9 +20,9 @@ * Boston, MA 02110-1301, USA gnu@gnu.org * \********************************************************************/ -#include "gnc-option-gtk-ui.hpp" #include #include +#include "gnc-option-gtk-ui.hpp" extern "C" { #include // for scanf format string @@ -39,6 +39,14 @@ extern "C" #include "gnc-tree-model-budget.h" // for gnc_tree_model_budget #include "misc-gnome-utils.h" // for xxxgtk_textview_set_text } + +/*Something somewhere in windows.h defines ABSOLUTE to something and + *that contaminates using it in RelativeDateType. Undef it. + */ +#ifdef ABSOLUTE +#undef ABSOLUTE +#endif + /* This static indicates the debugging module that this .o belongs to. */ static QofLogModule log_module = GNC_MOD_GUI; diff --git a/gnucash/gnome-utils/gnc-option-gtk-ui.hpp b/gnucash/gnome-utils/gnc-option-gtk-ui.hpp index 66224545f5..8504e431c6 100644 --- a/gnucash/gnome-utils/gnc-option-gtk-ui.hpp +++ b/gnucash/gnome-utils/gnc-option-gtk-ui.hpp @@ -23,13 +23,13 @@ #ifndef GNC_OPTION_GTK_UI_HPP #define GNC_OPTION_GTK_UI_HPP -#include #include #include #include #include #include #include +#include /** @fn WidgetCreateFunc * Function pointer for per-option-type GtkWidget constructors. diff --git a/gnucash/gnome/assistant-hierarchy.cpp b/gnucash/gnome/assistant-hierarchy.cpp index 254c7b89fc..7e64b25260 100644 --- a/gnucash/gnome/assistant-hierarchy.cpp +++ b/gnucash/gnome/assistant-hierarchy.cpp @@ -22,10 +22,12 @@ * Boston, MA 02110-1301, USA gnu@gnu.org * \********************************************************************/ -#include #include #include #include +#include +#include +#include extern "C" { @@ -67,8 +69,6 @@ extern "C" #include "gnc-engine.h" } -#include -#include "gnc-optiondb.h" static QofLogModule log_module = GNC_MOD_IMPORT; diff --git a/gnucash/gnome/dialog-report-column-view.cpp b/gnucash/gnome/dialog-report-column-view.cpp index 4821ab9dc0..838e8a272e 100644 --- a/gnucash/gnome/dialog-report-column-view.cpp +++ b/gnucash/gnome/dialog-report-column-view.cpp @@ -21,10 +21,12 @@ * Boston, MA 02110-1301, USA gnu@gnu.org * ********************************************************************/ -#include #include #include #include +#include +#include +#include extern "C" { @@ -40,9 +42,7 @@ extern "C" } #include "dialog-report-column-view.hpp" -#include #include -#include "gnc-optiondb-impl.hpp" enum available_cols { diff --git a/gnucash/gnome/dialog-report-style-sheet.cpp b/gnucash/gnome/dialog-report-style-sheet.cpp index 472db0e7f6..ec405b6306 100644 --- a/gnucash/gnome/dialog-report-style-sheet.cpp +++ b/gnucash/gnome/dialog-report-style-sheet.cpp @@ -22,9 +22,11 @@ * Boston, MA 02110-1301, USA gnu@gnu.org * ********************************************************************/ -#include #include #include +#include +#include +#include extern "C" { @@ -41,8 +43,6 @@ extern "C" #include } #include "gnc-report.h" -#include -#include "gnc-optiondb.h" #define DIALOG_STYLE_SHEETS_CM_CLASS "style-sheets-dialog" #define GNC_PREFS_GROUP "dialogs.style-sheet" diff --git a/gnucash/gnome/gnc-plugin-page-report.cpp b/gnucash/gnome/gnc-plugin-page-report.cpp index a7417ba7dd..a9f1b24fd8 100644 --- a/gnucash/gnome/gnc-plugin-page-report.cpp +++ b/gnucash/gnome/gnc-plugin-page-report.cpp @@ -36,10 +36,11 @@ @author Copyright (C) 2004 Joshua Sled @author Copyright (C) 2005 David Hampton */ -#include #include #include #include +#include +#include extern "C" { @@ -80,7 +81,6 @@ extern "C" #include #include -#include "gnc-optiondb-impl.hpp" /* NW: you can add GNC_MOD_REPORT to gnc-engine.h or simply define it locally. Any unique string with diff --git a/gnucash/gnome/window-report.cpp b/gnucash/gnome/window-report.cpp index 5580bad58b..7b4e7c1590 100644 --- a/gnucash/gnome/window-report.cpp +++ b/gnucash/gnome/window-report.cpp @@ -24,9 +24,11 @@ * Boston, MA 02110-1301, USA gnu@gnu.org * * * ********************************************************************/ -#include #include #include +#include "dialog-options.hpp" +#include "dialog-report-column-view.hpp" +#include extern "C" { @@ -44,8 +46,6 @@ extern "C" #include "gnc-plugin-page-report.h" } #include "gnc-report.h" -#include "dialog-options.hpp" -#include "dialog-report-column-view.hpp" /******************************************************************** * diff --git a/gnucash/report/gnc-report.cpp b/gnucash/report/gnc-report.cpp index 71c429de8c..6dffdf4a3d 100644 --- a/gnucash/report/gnc-report.cpp +++ b/gnucash/report/gnc-report.cpp @@ -26,6 +26,7 @@ #ifdef __MINGW32__ #define _GL_UNISTD_H //Deflect poisonous define in Guile's GnuLib #endif +#include #include #include #include diff --git a/gnucash/report/gnc-report.h b/gnucash/report/gnc-report.h index 4fc4720db9..b227616c6b 100644 --- a/gnucash/report/gnc-report.h +++ b/gnucash/report/gnc-report.h @@ -28,7 +28,6 @@ #include #include #ifdef __cplusplus -#include "gnc-optiondb.hpp" extern "C" { #endif