#
# qmake configuration for win32-g++
#
# Written by kb for MinGW on Debian
#

MAKEFILE_GENERATOR	= MINGW
TEMPLATE		= app
CONFIG			+= qt warn_on release link_prl copy_dir_files debug_and_release debug_and_release_target precompile_header
QT			+= core gui
DEFINES			+= UNICODE QT_LARGEFILE_SUPPORT
QMAKE_COMPILER_DEFINES  += __GNUC__ WIN32

QMAKE_EXT_OBJ           = .o
QMAKE_EXT_RES           = _res.o

QMAKE_CC		= i586-mingw32msvc-gcc
QMAKE_LEX		= flex
QMAKE_LEXFLAGS		=
QMAKE_YACC		= byacc
QMAKE_YACCFLAGS		= -d
QMAKE_CFLAGS		=
QMAKE_CFLAGS_DEPS	= -M
QMAKE_CFLAGS_WARN_ON	= -Wall
QMAKE_CFLAGS_WARN_OFF	= -w
QMAKE_CFLAGS_RELEASE	= -O2
QMAKE_CFLAGS_DEBUG	= -g
QMAKE_CFLAGS_YACC	= -Wno-unused -Wno-parentheses

QMAKE_CXX		= i586-mingw32msvc-g++
#Enable mmx to make mmintrin.h platform header happy (tests __MMX__ flag)
#TBD: enable 3Dnow so mm3dnow.h does not silently skip everything because it tests for __3dNOW__
#Note: Specifying architecture "pentium-m" turns on MMX, SSE and SSE2 support in gcc.
QMAKE_CXXFLAGS		= $$QMAKE_CFLAGS -march=pentium-m -mfpmath=sse
QMAKE_CXXFLAGS_DEPS	= $$QMAKE_CFLAGS_DEPS
QMAKE_CXXFLAGS_WARN_ON	= $$QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_WARN_OFF	= $$QMAKE_CFLAGS_WARN_OFF
QMAKE_CXXFLAGS_RELEASE	= $$QMAKE_CFLAGS_RELEASE
QMAKE_CXXFLAGS_DEBUG	= $$QMAKE_CFLAGS_DEBUG
QMAKE_CXXFLAGS_YACC	= $$QMAKE_CFLAGS_YACC
QMAKE_CXXFLAGS_THREAD	= $$QMAKE_CFLAGS_THREAD
QMAKE_CXXFLAGS_RTTI_ON	= -frtti
QMAKE_CXXFLAGS_RTTI_OFF	= -fno-rtti
QMAKE_CXXFLAGS_EXCEPTIONS_ON = -fexceptions -mthreads
QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -fno-exceptions

QMAKE_INCDIR		= /usr/i586-mingw32msvc/include/
QMAKE_INCDIR           += /home/_cruft/kb/installed-cross-i586-mingw32msvc/include
QMAKE_LIBDIR           += /home/_cruft/kb/installed-cross-i586-mingw32msvc/lib
INCLUDEPATH            += /home/_cruft/kb/installed-cross-i586-mingw32msvc/include
LIBS                   += -L/home/_cruft/kb/installed-cross-i586-mingw32msvc/lib
QMAKE_INCDIR_QT		= /home/_cruft/kb/installed-cross-i586-mingw32msvc/qt/include
QMAKE_LIBDIR_QT		= /home/_cruft/kb/installed-cross-i586-mingw32msvc/qt/lib

QMAKE_RUN_CC		= $(CC) -c $(CFLAGS) $(INCPATH) -o $obj $src
QMAKE_RUN_CC_IMP	= $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
QMAKE_RUN_CXX		= $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $obj $src
QMAKE_RUN_CXX_IMP	= $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

QMAKE_LINK		= i586-mingw32msvc-g++
QMAKE_LINK_C		= i586-mingw32msvc-gcc
QMAKE_LFLAGS		=
QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads
QMAKE_LFLAGS_EXCEPTIONS_OFF =
QMAKE_LFLAGS_RELEASE	= -Wl,-s
QMAKE_LFLAGS_DEBUG	=
QMAKE_LFLAGS_CONSOLE	= -Wl,-subsystem,console
QMAKE_LFLAGS_WINDOWS	= -Wl,-subsystem,windows
QMAKE_LFLAGS_DLL        = -shared
QMAKE_LINK_OBJECT_MAX	= 10
QMAKE_LINK_OBJECT_SCRIPT = object_script
QMAKE_PREFIX_STATICLIB  =
QMAKE_EXTENSION_STATICLIB = lib


QMAKE_LIBS		=
QMAKE_LIBS_CORE         = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32
#Needed to add zlib (is this a bug?):
QMAKE_LIBS_GUI          = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32 -lzlib
#Needed to add zlib (is this a bug?):
QMAKE_LIBS_NETWORK      = -lws2_32 -lzlib
QMAKE_LIBS_OPENGL       = -lglu32 -lopengl32 -lgdi32 -luser32
QMAKE_LIBS_COMPAT       = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32
QMAKE_LIBS_QT_ENTRY     = -lmingw32 -lqtmain

MINGW_IN_SHELL          = 1
QMAKE_DIR_SEP		= /
#QMAKE_QMAKE		~= s,\\\\,/,
QMAKE_COPY		= cp
QMAKE_COPY_DIR		= cp -r
QMAKE_MOVE		= mv
QMAKE_DEL_FILE		= rm
QMAKE_MKDIR		= mkdir -p
QMAKE_DEL_DIR		= rmdir
QMAKE_SYMBOLIC_LINK     = ln -s
QMAKE_CHK_DIR_EXISTS    = test -d

#We need these while building Qt itself (i.e. before Qt is installed)
#so we use the copies in the build tree directly:
QMAKE_MOC		= /home/_cruft/kb/build-cross-i586-mingw32msvc/qt/bin/moc
#QMAKE_UIC		= /home/_cruft/kb/build-cross-i586-mingw32msvc/qt/bin/uic
QMAKE_IDC		= /home/_cruft/kb/build-cross-i586-mingw32msvc/qt/bin/idc

#QMAKE_MOC		= $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}moc
#QMAKE_UIC		= $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}uic
#QMAKE_IDC		= $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}idc

QMAKE_IDL		= midl
QMAKE_LIB		= i586-mingw32msvc-ar -ru
QMAKE_RC		= i586-mingw32msvc-windres
QMAKE_ZIP		= zip -r -9

QMAKE_STRIP		= i586-mingw32msvc-strip
QMAKE_STRIPFLAGS_LIB 	+= --strip-unneeded
#PKG_CONFIG              = i686-pc-mingw32-pkg-config

load(qt_config)
