#
# qmake configuration for INTEGRITY armv7 targets
#

# armv7 common includes work for armv8-A as well
include(../common/ghs-integrity-armv7.conf)

DEFINES += INTEGRITY

# This define is used because the RCar INTEGRITY EGL library expects same
# parameter types as Symbian. The parameter types are defined in eglplatform.h.
DEFINES += __WINSCW__

QT_QPA_DEFAULT_PLATFORM = eglfs

QMAKE_LIBS_EGL         += -lEGL -lIMGegl -lsrv_um -lsrv_init -lpvrWSEGL_WM -lncg_usr.a -lmmgr_usr -lwm_usr -lprr_usr
QMAKE_LIBS_OPENGL_ES2  += -lGLESv2 -lIMGegl -lglslcompiler -lusc -lsrv_um -lsrv_init -lpvrWSEGL_WM -lncg_usr.a -lmmgr_usr -lwm_usr -lprr_usr
QMAKE_LIBS_GUI          = -lmmgr_usr -lwm_usr -lprr_usr

QMAKE_CFLAGS += -bigswitch
QMAKE_CXXFLAGS += -bigswitch
QMAKE_LFLAGS += -bigswitch

EGLFS_DEVICE_INTEGRATION = eglfs_rcar

# OpenGL libraries have a dependency on libEGL
dirs = $$(GL_INC_DIR)
QMAKE_INCDIR_EGL = $$split(dirs, $$QMAKE_DIRLIST_SEP)
QMAKE_INCDIR_OPENGL_ES2 = $$QMAKE_INCDIR_EGL
dirs = $$(GL_LIB_DIR)
QMAKE_LIBDIR_EGL = $$split(dirs, $$QMAKE_DIRLIST_SEP)
QMAKE_LIBDIR_OPENGL_ES2 = $$QMAKE_LIBDIR_EGL
