#
# QMake configuration for Scratchbox's host-gcc compiler.
#
# This mkspec can be used as the platform mkspec when building
# Qt in scratchbox. If used as such, qmake and similar host
# tools will be compiled for the host architecture (E.g. x86)
# and thus not run in the emulator. This results in a 
# significant improvement in build times.
# 
# Note: The mkspec copied & pasted parts from common/gcc.conf
#       and common/linux.conf as setBootstrapVariable in
#       configure has a bug which stops re-assignments working
#       for QMake variables (I.e. "QMAKE_foo = bar" is broken).

MAKEFILE_GENERATOR	= UNIX
TEMPLATE		= app
CONFIG			+= qt warn_on release incremental link_prl
QT			+= core gui
QMAKE_INCREMENTAL_STYLE = sublib

#
# qmake configuration for common gcc
#

QMAKE_CC                = host-gcc
QMAKE_CFLAGS            += -pipe
QMAKE_CFLAGS_DEPS       += -M
QMAKE_CFLAGS_WARN_ON    += -Wall -W
QMAKE_CFLAGS_WARN_OFF   += -w
QMAKE_CFLAGS_RELEASE    += -O2
QMAKE_CFLAGS_DEBUG      += -g
QMAKE_CFLAGS_SHLIB      += -fPIC
QMAKE_CFLAGS_STATIC_LIB += -fPIC
QMAKE_CFLAGS_YACC       += -Wno-unused -Wno-parentheses
QMAKE_CFLAGS_HIDESYMS   += -fvisibility=hidden
QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}

QMAKE_CXX               = host-g++
QMAKE_CXXFLAGS          += $$QMAKE_CFLAGS
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_SHLIB    += $$QMAKE_CFLAGS_SHLIB
QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
QMAKE_CXXFLAGS_YACC     += $$QMAKE_CFLAGS_YACC
QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE

QMAKE_LINK              = host-g++
QMAKE_LINK_SHLIB        = host-g++
QMAKE_LINK_C            = host-gcc
QMAKE_LINK_C_SHLIB      = host-gcc
QMAKE_LFLAGS            +=
QMAKE_LFLAGS_RELEASE    += -Wl,-O1
QMAKE_LFLAGS_DEBUG      +=
QMAKE_LFLAGS_APP        +=
QMAKE_LFLAGS_SHLIB      += -shared
QMAKE_LFLAGS_PLUGIN     += $$QMAKE_LFLAGS_SHLIB
QMAKE_LFLAGS_SONAME     += -Wl,-soname,
QMAKE_LFLAGS_THREAD     +=
QMAKE_LFLAGS_NOUNDEF    += -Wl,--no-undefined
QMAKE_LFLAGS_RPATH      = -Wl,-rpath,

QMAKE_PCH_OUTPUT_EXT    = .gch

# -Bsymbolic-functions (ld) support
QMAKE_LFLAGS_BSYMBOLIC_FUNC = -Wl,-Bsymbolic-functions
QMAKE_LFLAGS_DYNAMIC_LIST = -Wl,--dynamic-list,

#
# qmake configuration for common linux
#

QMAKE_CFLAGS_THREAD	+= -D_REENTRANT
QMAKE_CXXFLAGS_THREAD	+= $$QMAKE_CFLAGS_THREAD

QMAKE_INCDIR          =
QMAKE_LIBDIR          =
QMAKE_INCDIR_X11      = /usr/X11R6/include
QMAKE_LIBDIR_X11      = /usr/X11R6/lib
QMAKE_INCDIR_QT       = $$[QT_INSTALL_HEADERS]
QMAKE_LIBDIR_QT       = $$[QT_INSTALL_LIBS]
QMAKE_INCDIR_OPENGL   = /usr/X11R6/include
QMAKE_LIBDIR_OPENGL   = /usr/X11R6/lib
QMAKE_INCDIR_OPENGL_ES1 = $$QMAKE_INCDIR_OPENGL
QMAKE_LIBDIR_OPENGL_ES1 = $$QMAKE_LIBDIR_OPENGL
QMAKE_INCDIR_OPENGL_ES2 = $$QMAKE_INCDIR_OPENGL
QMAKE_LIBDIR_OPENGL_ES2 = $$QMAKE_LIBDIR_OPENGL
QMAKE_INCDIR_EGL      = 
QMAKE_LIBDIR_EGL      =
QMAKE_INCDIR_OPENVG   = 
QMAKE_LIBDIR_OPENVG   =

QMAKE_LIBS            =
QMAKE_LIBS_DYNLOAD    = -ldl
QMAKE_LIBS_X11        = -lXext -lX11 -lm
QMAKE_LIBS_X11SM      = -lSM -lICE
QMAKE_LIBS_NIS        = -lnsl
QMAKE_LIBS_EGL        = -lEGL
QMAKE_LIBS_OPENGL     = -lGLU -lGL
QMAKE_LIBS_OPENGL_QT  = -lGL
QMAKE_LIBS_OPENGL_ES1 = -lGLES_CM
QMAKE_LIBS_OPENGL_ES2 = -lGLESv2
QMAKE_LIBS_OPENVG     = -lOpenVG
QMAKE_LIBS_THREAD     = -lpthread

QMAKE_MOC             = $$[QT_INSTALL_BINS]/moc
QMAKE_UIC             = $$[QT_INSTALL_BINS]/uic

QMAKE_AR              = host-ar cqs
QMAKE_OBJCOPY         = host-objcopy
QMAKE_RANLIB          =

QMAKE_TAR             = tar -cf
QMAKE_GZIP            = gzip -9f

QMAKE_COPY            = cp -f
QMAKE_COPY_FILE       = $(COPY)
QMAKE_COPY_DIR        = $(COPY) -r
QMAKE_MOVE            = mv -f
QMAKE_DEL_FILE        = rm -f
QMAKE_DEL_DIR         = rmdir
QMAKE_STRIP           = host-strip
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
QMAKE_CHK_DIR_EXISTS  = test -d
QMAKE_MKDIR           = mkdir -p
QMAKE_INSTALL_FILE    = install -m 644 -p
QMAKE_INSTALL_PROGRAM = install -m 755 -p

include(../../common/unix.conf)
load(qt_config)
