# HG changeset patch # User Michael Goffioul # Date 1319817690 -3600 # Node ID 43ffcaee3feaec3386b179ca0b0b907063e548e6 # Parent 5f71ab377898185ea1729cbf75438a0e83665984 Fix various issues under Windows (MSVC) * gui/msvc-debug.pri: New file to enable debugging in release mode. This is required to avoid mixing different VC++ runtime DLL. * gui/octave-gui.pro (QMAKE_LIBDIR): New variable containing octave library path. (LFLAGS): Remove, deprecated by QMAKE_LIBDIR addition. (win32-g++): Renamed win32 conditional with mingw-specific flags. (win32-msvc*): Include msvc-debug.pri, define required scintilla flag and use console mode (for the time being). * gui/src/lexer/lexeroctavegui.h (class LexerOctaveGui): Remove wrong QSCINTILLA_EXPORT decorator. diff --git a/gui/msvc-debug.pri b/gui/msvc-debug.pri new file mode 100644 --- /dev/null +++ b/gui/msvc-debug.pri @@ -0,0 +1,8 @@ +win32-msvc* { + CONFIG += release warn_off + QMAKE_CXXFLAGS += -MP + QMAKE_CXXFLAGS_RELEASE += -Zi + QMAKE_CXXFLAGS_RELEASE -= -O2 + QMAKE_LFLAGS_RELEASE += -debug + QMAKE_CLEAN += $(DESTDIR)$(QMAKE_TARGET).pdb +} diff --git a/gui/octave-gui.pro b/gui/octave-gui.pro --- a/gui/octave-gui.pro +++ b/gui/octave-gui.pro @@ -45,9 +45,8 @@ INCFLAGS += -I/opt/local-native/include } -LFLAGS += $$system(mkoctfile -p LFLAGS) \ - $$system(mkoctfile -p OCTAVE_LIBS) \ - $$system(mkoctfile -p LIBS) +QMAKE_LIBDIR += $$system(octave-config -p OCTLIBDIR) + mac { LFLAGS += -L/opt/local-native/lib } @@ -56,10 +55,16 @@ QMAKE_LFLAGS += -lutil } -win32 { +win32-g++ { QMAKE_LFLAGS += --enable-auto-import } +win32-msvc* { + DEFINES += QSCINTILLA_DLL + CONFIG += console + include(msvc-debug.pri) +} + QMAKE_LFLAGS += $$LFLAGS $$system(mkoctfile -p RLD_FLAG) QMAKE_CXXFLAGS += $$INCFLAGS diff --git a/gui/src/lexer/lexeroctavegui.h b/gui/src/lexer/lexeroctavegui.h --- a/gui/src/lexer/lexeroctavegui.h +++ b/gui/src/lexer/lexeroctavegui.h @@ -25,7 +25,7 @@ #include -class QSCINTILLA_EXPORT LexerOctaveGui : public QsciLexer +class LexerOctaveGui : public QsciLexer { Q_OBJECT