From 8c960f0c3413fc617f750de97592e8f8ef803fde Mon Sep 17 00:00:00 2001 From: Lymia Aluysia Date: Wed, 18 Jan 2017 04:56:16 -0600 Subject: [PATCH] Work on compiling on mingw --- Makefile.am | 2 +- Makefile.in | 60 ++++++++++++++++++++--------------------- configure | 4 +-- configure.ac | 2 +- src/data/locale.cpp | 2 +- src/gui/util.cpp | 12 ++++----- src/script/profiler.hpp | 2 +- src/util/prec.hpp | 5 ++++ 8 files changed, 47 insertions(+), 42 deletions(-) diff --git a/Makefile.am b/Makefile.am index 92b13edb..c1f88a71 100644 --- a/Makefile.am +++ b/Makefile.am @@ -132,12 +132,12 @@ magicseteditor_SOURCES += ./src/gui/symbol/window.cpp magicseteditor_SOURCES += ./src/gui/value/choice.cpp magicseteditor_SOURCES += ./src/gui/value/color.cpp magicseteditor_SOURCES += ./src/gui/value/editor.cpp -magicseteditor_SOURCES += ./src/gui/value/image.cpp magicseteditor_SOURCES += ./src/gui/value/information.cpp magicseteditor_SOURCES += ./src/gui/value/multiple_choice.cpp magicseteditor_SOURCES += ./src/gui/value/package_choice.cpp magicseteditor_SOURCES += ./src/gui/value/symbol.cpp magicseteditor_SOURCES += ./src/gui/value/text.cpp +magicseteditor_SOURCES += ./src/gui/value/image.cpp magicseteditor_SOURCES += ./src/gui/print_window.cpp magicseteditor_SOURCES += ./src/gui/profiler_window.cpp magicseteditor_SOURCES += ./src/gui/thumbnail_thread.cpp diff --git a/Makefile.in b/Makefile.in index 65fb06f1..6f4132bf 100644 --- a/Makefile.in +++ b/Makefile.in @@ -176,14 +176,14 @@ am__magicseteditor_SOURCES_DIST = ./src/util/prec.gch \ ./src/gui/symbol/symmetry_editor.cpp \ ./src/gui/symbol/window.cpp ./src/gui/value/choice.cpp \ ./src/gui/value/color.cpp ./src/gui/value/editor.cpp \ - ./src/gui/value/image.cpp ./src/gui/value/information.cpp \ + ./src/gui/value/information.cpp \ ./src/gui/value/multiple_choice.cpp \ ./src/gui/value/package_choice.cpp ./src/gui/value/symbol.cpp \ - ./src/gui/value/text.cpp ./src/gui/print_window.cpp \ - ./src/gui/profiler_window.cpp ./src/gui/thumbnail_thread.cpp \ - ./src/gui/update_checker.cpp ./src/gui/util.cpp \ - ./src/gui/welcome_window.cpp ./src/gui/about_window.cpp \ - ./src/gui/auto_replace_window.cpp \ + ./src/gui/value/text.cpp ./src/gui/value/image.cpp \ + ./src/gui/print_window.cpp ./src/gui/profiler_window.cpp \ + ./src/gui/thumbnail_thread.cpp ./src/gui/update_checker.cpp \ + ./src/gui/util.cpp ./src/gui/welcome_window.cpp \ + ./src/gui/about_window.cpp ./src/gui/auto_replace_window.cpp \ ./src/gui/card_select_window.cpp ./src/gui/drop_down_list.cpp \ ./src/gui/html_export_window.cpp ./src/gui/icon_menu.cpp \ ./src/gui/image_slice_window.cpp \ @@ -318,12 +318,12 @@ am_magicseteditor_OBJECTS = $(am__objects_1) \ ./src/gui/value/magicseteditor-choice.$(OBJEXT) \ ./src/gui/value/magicseteditor-color.$(OBJEXT) \ ./src/gui/value/magicseteditor-editor.$(OBJEXT) \ - ./src/gui/value/magicseteditor-image.$(OBJEXT) \ ./src/gui/value/magicseteditor-information.$(OBJEXT) \ ./src/gui/value/magicseteditor-multiple_choice.$(OBJEXT) \ ./src/gui/value/magicseteditor-package_choice.$(OBJEXT) \ ./src/gui/value/magicseteditor-symbol.$(OBJEXT) \ ./src/gui/value/magicseteditor-text.$(OBJEXT) \ + ./src/gui/value/magicseteditor-image.$(OBJEXT) \ ./src/gui/magicseteditor-print_window.$(OBJEXT) \ ./src/gui/magicseteditor-profiler_window.$(OBJEXT) \ ./src/gui/magicseteditor-thumbnail_thread.$(OBJEXT) \ @@ -665,14 +665,14 @@ magicseteditor_SOURCES = $(am__append_1) ./src/cli/cli_main.cpp \ ./src/gui/symbol/symmetry_editor.cpp \ ./src/gui/symbol/window.cpp ./src/gui/value/choice.cpp \ ./src/gui/value/color.cpp ./src/gui/value/editor.cpp \ - ./src/gui/value/image.cpp ./src/gui/value/information.cpp \ + ./src/gui/value/information.cpp \ ./src/gui/value/multiple_choice.cpp \ ./src/gui/value/package_choice.cpp ./src/gui/value/symbol.cpp \ - ./src/gui/value/text.cpp ./src/gui/print_window.cpp \ - ./src/gui/profiler_window.cpp ./src/gui/thumbnail_thread.cpp \ - ./src/gui/update_checker.cpp ./src/gui/util.cpp \ - ./src/gui/welcome_window.cpp ./src/gui/about_window.cpp \ - ./src/gui/auto_replace_window.cpp \ + ./src/gui/value/text.cpp ./src/gui/value/image.cpp \ + ./src/gui/print_window.cpp ./src/gui/profiler_window.cpp \ + ./src/gui/thumbnail_thread.cpp ./src/gui/update_checker.cpp \ + ./src/gui/util.cpp ./src/gui/welcome_window.cpp \ + ./src/gui/about_window.cpp ./src/gui/auto_replace_window.cpp \ ./src/gui/card_select_window.cpp ./src/gui/drop_down_list.cpp \ ./src/gui/html_export_window.cpp ./src/gui/icon_menu.cpp \ ./src/gui/image_slice_window.cpp \ @@ -1128,9 +1128,6 @@ src/gui/value/$(DEPDIR)/$(am__dirstamp): ./src/gui/value/magicseteditor-editor.$(OBJEXT): \ src/gui/value/$(am__dirstamp) \ src/gui/value/$(DEPDIR)/$(am__dirstamp) -./src/gui/value/magicseteditor-image.$(OBJEXT): \ - src/gui/value/$(am__dirstamp) \ - src/gui/value/$(DEPDIR)/$(am__dirstamp) ./src/gui/value/magicseteditor-information.$(OBJEXT): \ src/gui/value/$(am__dirstamp) \ src/gui/value/$(DEPDIR)/$(am__dirstamp) @@ -1146,6 +1143,9 @@ src/gui/value/$(DEPDIR)/$(am__dirstamp): ./src/gui/value/magicseteditor-text.$(OBJEXT): \ src/gui/value/$(am__dirstamp) \ src/gui/value/$(DEPDIR)/$(am__dirstamp) +./src/gui/value/magicseteditor-image.$(OBJEXT): \ + src/gui/value/$(am__dirstamp) \ + src/gui/value/$(DEPDIR)/$(am__dirstamp) ./src/gui/magicseteditor-print_window.$(OBJEXT): \ src/gui/$(am__dirstamp) src/gui/$(DEPDIR)/$(am__dirstamp) ./src/gui/magicseteditor-profiler_window.$(OBJEXT): \ @@ -2930,20 +2930,6 @@ distclean-compile: @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -c -o ./src/gui/value/magicseteditor-editor.obj `if test -f './src/gui/value/editor.cpp'; then $(CYGPATH_W) './src/gui/value/editor.cpp'; else $(CYGPATH_W) '$(srcdir)/./src/gui/value/editor.cpp'; fi` -./src/gui/value/magicseteditor-image.o: ./src/gui/value/image.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -MT ./src/gui/value/magicseteditor-image.o -MD -MP -MF ./src/gui/value/$(DEPDIR)/magicseteditor-image.Tpo -c -o ./src/gui/value/magicseteditor-image.o `test -f './src/gui/value/image.cpp' || echo '$(srcdir)/'`./src/gui/value/image.cpp -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) ./src/gui/value/$(DEPDIR)/magicseteditor-image.Tpo ./src/gui/value/$(DEPDIR)/magicseteditor-image.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='./src/gui/value/image.cpp' object='./src/gui/value/magicseteditor-image.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -c -o ./src/gui/value/magicseteditor-image.o `test -f './src/gui/value/image.cpp' || echo '$(srcdir)/'`./src/gui/value/image.cpp - -./src/gui/value/magicseteditor-image.obj: ./src/gui/value/image.cpp -@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -MT ./src/gui/value/magicseteditor-image.obj -MD -MP -MF ./src/gui/value/$(DEPDIR)/magicseteditor-image.Tpo -c -o ./src/gui/value/magicseteditor-image.obj `if test -f './src/gui/value/image.cpp'; then $(CYGPATH_W) './src/gui/value/image.cpp'; else $(CYGPATH_W) '$(srcdir)/./src/gui/value/image.cpp'; fi` -@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) ./src/gui/value/$(DEPDIR)/magicseteditor-image.Tpo ./src/gui/value/$(DEPDIR)/magicseteditor-image.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='./src/gui/value/image.cpp' object='./src/gui/value/magicseteditor-image.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -c -o ./src/gui/value/magicseteditor-image.obj `if test -f './src/gui/value/image.cpp'; then $(CYGPATH_W) './src/gui/value/image.cpp'; else $(CYGPATH_W) '$(srcdir)/./src/gui/value/image.cpp'; fi` - ./src/gui/value/magicseteditor-information.o: ./src/gui/value/information.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -MT ./src/gui/value/magicseteditor-information.o -MD -MP -MF ./src/gui/value/$(DEPDIR)/magicseteditor-information.Tpo -c -o ./src/gui/value/magicseteditor-information.o `test -f './src/gui/value/information.cpp' || echo '$(srcdir)/'`./src/gui/value/information.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) ./src/gui/value/$(DEPDIR)/magicseteditor-information.Tpo ./src/gui/value/$(DEPDIR)/magicseteditor-information.Po @@ -3014,6 +3000,20 @@ distclean-compile: @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -c -o ./src/gui/value/magicseteditor-text.obj `if test -f './src/gui/value/text.cpp'; then $(CYGPATH_W) './src/gui/value/text.cpp'; else $(CYGPATH_W) '$(srcdir)/./src/gui/value/text.cpp'; fi` +./src/gui/value/magicseteditor-image.o: ./src/gui/value/image.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -MT ./src/gui/value/magicseteditor-image.o -MD -MP -MF ./src/gui/value/$(DEPDIR)/magicseteditor-image.Tpo -c -o ./src/gui/value/magicseteditor-image.o `test -f './src/gui/value/image.cpp' || echo '$(srcdir)/'`./src/gui/value/image.cpp +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) ./src/gui/value/$(DEPDIR)/magicseteditor-image.Tpo ./src/gui/value/$(DEPDIR)/magicseteditor-image.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='./src/gui/value/image.cpp' object='./src/gui/value/magicseteditor-image.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -c -o ./src/gui/value/magicseteditor-image.o `test -f './src/gui/value/image.cpp' || echo '$(srcdir)/'`./src/gui/value/image.cpp + +./src/gui/value/magicseteditor-image.obj: ./src/gui/value/image.cpp +@am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -MT ./src/gui/value/magicseteditor-image.obj -MD -MP -MF ./src/gui/value/$(DEPDIR)/magicseteditor-image.Tpo -c -o ./src/gui/value/magicseteditor-image.obj `if test -f './src/gui/value/image.cpp'; then $(CYGPATH_W) './src/gui/value/image.cpp'; else $(CYGPATH_W) '$(srcdir)/./src/gui/value/image.cpp'; fi` +@am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) ./src/gui/value/$(DEPDIR)/magicseteditor-image.Tpo ./src/gui/value/$(DEPDIR)/magicseteditor-image.Po +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='./src/gui/value/image.cpp' object='./src/gui/value/magicseteditor-image.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -c -o ./src/gui/value/magicseteditor-image.obj `if test -f './src/gui/value/image.cpp'; then $(CYGPATH_W) './src/gui/value/image.cpp'; else $(CYGPATH_W) '$(srcdir)/./src/gui/value/image.cpp'; fi` + ./src/gui/magicseteditor-print_window.o: ./src/gui/print_window.cpp @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(magicseteditor_CXXFLAGS) $(CXXFLAGS) -MT ./src/gui/magicseteditor-print_window.o -MD -MP -MF ./src/gui/$(DEPDIR)/magicseteditor-print_window.Tpo -c -o ./src/gui/magicseteditor-print_window.o `test -f './src/gui/print_window.cpp' || echo '$(srcdir)/'`./src/gui/print_window.cpp @am__fastdepCXX_TRUE@ $(AM_V_at)$(am__mv) ./src/gui/$(DEPDIR)/magicseteditor-print_window.Tpo ./src/gui/$(DEPDIR)/magicseteditor-print_window.Po diff --git a/configure b/configure index 931228fa..b987e7ee 100755 --- a/configure +++ b/configure @@ -3051,7 +3051,7 @@ if test -z "$CXX"; then CXX=$CCC else if test -n "$ac_tool_prefix"; then - for ac_prog in clang++ g++ + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 @@ -3095,7 +3095,7 @@ fi fi if test -z "$CXX"; then ac_ct_CXX=$CXX - for ac_prog in clang++ g++ + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 diff --git a/configure.ac b/configure.ac index 10b28e1e..6d4a8071 100644 --- a/configure.ac +++ b/configure.ac @@ -19,7 +19,7 @@ AM_INIT_AUTOMAKE([foreign]) if test -n "${CXXFLAGS}"; then user_set_cxxflags=yes fi -AC_PROG_CXX([clang++ g++]) +AC_PROG_CXX AC_ARG_ENABLE(debug, [--enable-debug Enable debug build (requires debug versions of wxWidgets and libstdc++.]) if test "x${enable_debug}" = "xyes"; then diff --git a/src/data/locale.cpp b/src/data/locale.cpp index 75a02930..742f4931 100644 --- a/src/data/locale.cpp +++ b/src/data/locale.cpp @@ -200,7 +200,7 @@ int string_format_args(const String& str) { */ InputStreamP load_resource_text(const String& name); InputStreamP load_resource_text(const String& name) { - #if defined(__WXMSW__) + #if defined(__WXMSW__) && !defined(__GNUC__) HRSRC hResource = ::FindResource(wxGetInstance(), name, _("TEXT")); if ( hResource == 0 ) throw InternalError(String::Format(_("Resource not found: %s"), name)); HGLOBAL hData = ::LoadResource(wxGetInstance(), hResource); diff --git a/src/gui/util.cpp b/src/gui/util.cpp index 13c33869..ba156415 100644 --- a/src/gui/util.cpp +++ b/src/gui/util.cpp @@ -129,7 +129,7 @@ void draw_checker(RotatedDC& dc, const RealRect& rect) { // ----------------------------------------------------------------------------- : Resource related Image load_resource_image(const String& name) { - #if defined(__WXMSW__) + #if defined(__WXMSW__) && !defined(__GNUC__) // Load resource // based on wxLoadUserResource // The image can be in an IMAGE resource, in any file format @@ -145,7 +145,7 @@ Image load_resource_image(const String& name) { int len = ::SizeofResource(wxGetInstance(), hResource); wxMemoryInputStream stream(data, len); return wxImage(stream); - #elif defined(__linux__) + #elif defined(__GNUC__) static String path = wxStandardPaths::Get().GetDataDir() + _("/resource/"); String file = path + name; wxImage resource; @@ -168,7 +168,7 @@ Image load_resource_image(const String& name) { } wxCursor load_resource_cursor(const String& name) { - #if defined(__WXMSW__) + #if defined(__WXMSW__) && !defined(__GNUC__) return wxCursor(_("cursor/") + name, wxBITMAP_TYPE_CUR_RESOURCE); #else return wxCursor(load_resource_image(_("cursor/") + name)); @@ -176,7 +176,7 @@ wxCursor load_resource_cursor(const String& name) { } wxIcon load_resource_icon(const String& name) { - #if defined(__WXMSW__) + #if defined(__WXMSW__) && !defined(__GNUC__) return wxIcon(_("icon/") + name); #else static String path = wxStandardPaths::Get().GetDataDir() + _("/resource/icon/"); @@ -187,7 +187,7 @@ wxIcon load_resource_icon(const String& name) { } wxBitmap load_resource_tool_image(const String& name) { - #if defined(__WXMSW__) + #if defined(__WXMSW__) && !defined(__GNUC__) return load_resource_image(_("tool/") + name); #else return load_resource_image(_("tool/") + name); @@ -379,4 +379,4 @@ void enable_themed_selection_rectangle(Window* win) { themeEngine->SetWindowTheme((HWND)win->GetHWND(), L"Explorer", NULL); } #endif -} \ No newline at end of file +} diff --git a/src/script/profiler.hpp b/src/script/profiler.hpp index 5e9e4691..6d5ef3d5 100644 --- a/src/script/profiler.hpp +++ b/src/script/profiler.hpp @@ -23,7 +23,7 @@ DECLARE_POINTER_TYPE(FunctionProfile); // ----------------------------------------------------------------------------- : Timer -#ifdef WIN32 +#ifdef _MSC_VER typedef LONGLONG ProfileTime; inline ProfileTime timer_now() { diff --git a/src/util/prec.hpp b/src/util/prec.hpp index 5cebd0d3..100da7a0 100644 --- a/src/util/prec.hpp +++ b/src/util/prec.hpp @@ -31,6 +31,11 @@ #include #include // TODO : remove, see regex.hpp +#if defined(__WXMSW__) && defined(__GNUC__) + // MSW uses the RGB define, fix it before it's undefined + #include +#endif + // Std headers #include #include