# Qt/Embedded Drivers

embedded {
	EMBEDDED_P = embedded

	HEADERS += $$EMBEDDED_P/tqgfxdriverinterface_p.h \
		    $$EMBEDDED_H/tqgfxdriverplugin_qws.h \
		    $$EMBEDDED_H/tqgfxdriverfactory_qws.h \
		    $$EMBEDDED_H/tqkbd_qws.h \
		    $$EMBEDDED_P/tqkbddriverinterface_p.h \
		    $$EMBEDDED_H/tqkbddriverplugin_qws.h \
		    $$EMBEDDED_H/tqkbddriverfactory_qws.h \
		    $$EMBEDDED_H/tqmouse_qws.h \
		    $$EMBEDDED_P/tqmousedriverinterface_p.h \
		    $$EMBEDDED_H/tqmousedriverplugin_qws.h \
		    $$EMBEDDED_H/tqmousedriverfactory_qws.h

	SOURCES += $$EMBEDDED_CPP/tqgfxdriverplugin_qws.cpp \
		    $$EMBEDDED_CPP/tqgfxdriverfactory_qws.cpp \
		    $$EMBEDDED_CPP/tqkbd_qws.cpp \
		    $$EMBEDDED_CPP/tqkbddriverplugin_qws.cpp \
		    $$EMBEDDED_CPP/tqkbddriverfactory_qws.cpp \
		    $$EMBEDDED_CPP/tqmouse_qws.cpp \
		    $$EMBEDDED_CPP/tqmousedriverplugin_qws.cpp \
		    $$EMBEDDED_CPP/tqmousedriverfactory_qws.cpp

#
# Graphics drivers
#
        linux-* {
	        HEADERS += $$EMBEDDED_H/tqgfxlinuxfb_qws.h
		SOURCES += $$EMBEDDED_CPP/tqgfxlinuxfb_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_LINUXFB

	contains( gfx-drivers, qvfb ) {
		HEADERS += $$EMBEDDED_H/tqgfxvfb_qws.h
		SOURCES += $$EMBEDDED_CPP/tqgfxvfb_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_VFB

	contains( gfx-drivers, vnc ) {
		HEADERS += $$EMBEDDED_H/tqgfxvnc_qws.h
		SOURCES += $$EMBEDDED_CPP/tqgfxvnc_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_VNC

	!contains( DEFINES, TQT_NO_QWS_LINUXFB):contains( gfx-drivers, vga16 ) {
		HEADERS += $$EMBEDDED_H/tqgfxvga16_qws.h
		SOURCES += $$EMBEDDED_CPP/tqgfxvga16_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_VGA16

	contains( gfx-drivers, transformed ) {
		HEADERS += $$EMBEDDED_H/tqgfxtransformed_qws.h
		SOURCES += $$EMBEDDED_CPP/tqgfxtransformed_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_TRANSFORMED

	contains( gfx-drivers, snap ) {
        exists( $(SCITECH)/include/snap/graphics.h) {
    		HEADERS += $$EMBEDDED_H/tqgfxsnap_qws.h
    		SOURCES += $$EMBEDDED_CPP/tqgfxsnap_qws.cpp
            INCLUDEPATH += $(SCITECH)/include
            debug:LIBS  += -L$(SCITECH)/lib/debug/linux/gcc/x86/so -lpm
            else:LIBS   += -L$(SCITECH)/lib/release/linux/gcc/x86/so -lpm
        }
        else {
            message("SciTech SNAP SDK is not properly set up! Please make sure the SCITECH")
            message("environment variable is pointing to the SciTech SNAP SDK.")
            error("Please fix and re-build the makefiles.")
        }
	}
	else:DEFINES += TQT_NO_QWS_SNAP

	contains( gfx-drivers, mach64 ) {
		HEADERS += $$EMBEDDED_H/tqgfxmach64_qws.h \
			   $$EMBEDDED_H/tqgfxmach64defs_qws.h
		SOURCES += $$EMBEDDED_CPP/tqgfxmach64_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_MACH64

	contains( gfx-drivers, voodoo ) {
		HEADERS += $$EMBEDDED_H/tqgfxvoodoo_qws.h \
			   $$EMBEDDED_H/tqgfxvoodoodefs_qws.h
		SOURCES += $$EMBEDDED_CPP/tqgfxvoodoo_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_VOODOO3

	contains( gfx-drivers, matrox ) {
		HEADERS += $$EMBEDDED_H/tqgfxmatrox_qws.h \
			   $$EMBEDDED_H/tqgfxmatroxdefs_qws.h
		SOURCES += $$EMBEDDED_CPP/tqgfxmatrox_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_MATROX

	contains( gfx-drivers, shadowfb ) {
		HEADERS += $$EMBEDDED_H/tqgfxshadow_qws.h
		SOURCES += $$EMBEDDED_CPP/tqgfxshadow_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_SHADOWFB

	contains( gfx-drivers, repeater ) {
		HEADERS += $$EMBEDDED_H/tqgfxrepeater_qws.h
		SOURCES += $$EMBEDDED_CPP/tqgfxrepeater_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_REPEATER

#
# Keyboard drivers
#

	contains( kbd-drivers, sl5000 ) {
		HEADERS +=$$EMBEDDED_H/tqkbdsl5000_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqkbdsl5000_qws.cpp
		!contains( kbd-drivers, tty ) {
		    kbd-drivers += tty
		}
	}
	else:DEFINES += TQT_NO_QWS_KBD_SL5000

	contains( kbd-drivers, tty ) {
		HEADERS +=$$EMBEDDED_H/tqkbdtty_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqkbdtty_qws.cpp
		!contains( kbd-drivers, pc101 ) {
		    kbd-drivers += pc101
		}
	}
	else:DEFINES += TQT_NO_QWS_KBD_TTY

	contains( kbd-drivers, usb ) {
		HEADERS +=$$EMBEDDED_H/tqkbdusb_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqkbdusb_qws.cpp
		!contains( kbd-drivers, pc101 ) {
		    kbd-drivers += pc101
		}
	}
	else:DEFINES += TQT_NO_QWS_KBD_USB

	contains( kbd-drivers, pc101 ) {
		HEADERS +=$$EMBEDDED_H/tqkbdpc101_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqkbdpc101_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_KBD_PC101

	contains( kbd-drivers, yopy ) {
		HEADERS +=$$EMBEDDED_H/tqkbdyopy_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqkbdyopy_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_KBD_YOPY

	contains( kbd-drivers, vr41xx ) {
		HEADERS +=$$EMBEDDED_H/tqkbdvr41xx_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqkbdvr41xx_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_KBD_VR41

#
# Mouse drivers
#

	contains( mouse-drivers, pc ) {
		HEADERS +=$$EMBEDDED_H/tqmousepc_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqmousepc_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_MOUSE_PC

	contains( mouse-drivers, bus ) {
		HEADERS +=$$EMBEDDED_H/tqmousebus_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqmousebus_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_MOUSE_BUS

	contains( mouse-drivers, linuxtp ) {
		HEADERS +=$$EMBEDDED_H/tqmouselinuxtp_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqmouselinuxtp_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_MOUSE_LINUXTP

	contains( mouse-drivers, vr41xx ) {
		HEADERS +=$$EMBEDDED_H/tqmousevr41xx_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqmousevr41xx_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_MOUSE_VR41

	contains( mouse-drivers, yopy ) {
		HEADERS +=$$EMBEDDED_H/tqmouseyopy_qws.h
		SOURCES +=$$EMBEDDED_CPP/tqmouseyopy_qws.cpp
	}
	else:DEFINES += TQT_NO_QWS_MOUSE_YOPY
}

