# # Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher # --- qt-2.3.7/configure~devfs +++ qt-2.3.7/configure @@ -402,6 +402,9 @@ -tslib) TSLIB=yes ;; + -devfs) + DEVFS=yes + ;; -no-g++-exceptions) GPLUSPLUS_EXCEPTIONS=no ;; @@ -1261,6 +1264,8 @@ -tslib ............. Use the TSLib (touchscreen access library) mouse handler by default, instead of the normal device default. + -devfs ............. Use devfs /dev paths. + -no-g++-exceptions . Disable exceptions on platforms using the GNU C++ compiler by using the -fno-exceptions flag. @@ -1327,6 +1332,11 @@ QT_LIBS="${QT_LIBS} -lts" fi +if [ "x$DEVFS" = "xyes" ] +then + QT_CXX="${QT_CXX} -DQT_QWS_DEVFS" +fi + if [ "x$THREAD" = "xyes" ] then cat >src-mt.mk <=0) ? displaySpec.mid( m, len ) : QString("/dev/fb/0"); +#else QString dev = (m>=0) ? displaySpec.mid( m, len ) : QString("/dev/fb0"); +#endif fd=open( dev.latin1(), O_RDWR ); if (fd<0) { @@ -121,14 +129,22 @@ /* Get fixed screen information */ if (ioctl(fd, FBIOGET_FSCREENINFO, &finfo)) { +#ifdef QT_QWS_DEVFS + perror("reading /dev/fb/0"); +#else perror("reading /dev/fb0"); +#endif qWarning("Error reading fixed information"); return FALSE; } /* Get variable screen information */ if (ioctl(fd, FBIOGET_VSCREENINFO, &vinfo)) { +#ifdef QT_QWS_DEVFS + perror("reading /dev/fb/0"); +#else perror("reading /dev/fb0"); +#endif qWarning("Error reading variable information"); return FALSE; } @@ -165,7 +181,11 @@ data += dataoffset; if ((int)data == -1) { - perror("mapping /dev/fb0"); +#ifdef QT_QWS_DEVFS + perror("reading /dev/fb/0"); +#else + perror("reading /dev/fb0"); +#endif qWarning("Error: failed to map framebuffer device to memory."); return FALSE; } @@ -229,7 +249,11 @@ static void writeTerm(const char* termctl, int sizeof_termctl) { +#ifdef QT_QWS_DEVFS + const char* tt[]={"/dev/vc/1","/dev/console","/dev/tty",0}; +#else const char* tt[]={"/dev/console","/dev/tty","/dev/tty0",0}; +#endif const char** dev=tt; while (*dev) { int tty=::open(*dev,O_WRONLY); @@ -792,7 +816,11 @@ fb_var_screeninfo vinfo; if (ioctl(fd, FBIOGET_FSCREENINFO, &finfo)) { +#ifdef QT_QWS_DEVFS + perror("reading /dev/fb/0"); +#else perror("reading /dev/fb0"); +#endif qFatal("Error reading fixed information"); } --- qt-2.3.7/src/kernel/qkeyboard_qws.cpp~devfs +++ qt-2.3.7/src/kernel/qkeyboard_qws.cpp @@ -1017,7 +1017,11 @@ QWSTtyKeyboardHandler::QWSTtyKeyboardHandler(const QString& device) { +#ifdef QT_QWS_DEVFS + kbdFD=open(device.isEmpty() ? "/dev/vc/1" : device.latin1(), O_RDWR | O_NDELAY, 0); +#else kbdFD=open(device.isEmpty() ? "/dev/tty0" : device.latin1(), O_RDWR | O_NDELAY, 0); +#endif if ( kbdFD >= 0 ) { QSocketNotifier *notifier; --- qt-2.3.7/src/kernel/qwindowsystem_qws.cpp~devfs +++ qt-2.3.7/src/kernel/qwindowsystem_qws.cpp @@ -762,7 +762,11 @@ void openDevice() { if ( !sn ) { +#ifdef QT_QWS_DEVFS + int fd = ::open("/dev/sound/dsp",O_RDWR); +#else int fd = ::open("/dev/dsp",O_RDWR); +#endif if ( fd < 0 ) { // For debugging purposes - defined QT_NO_SOUND if you // don't have sound hardware! --- qt-2.3.7/src/kernel/qsoundqss_qws.cpp~devfs +++ qt-2.3.7/src/kernel/qsoundqss_qws.cpp @@ -388,7 +388,12 @@ // // Don't block open right away. // - if ((fd = ::open("/dev/dsp", O_WRONLY|O_NONBLOCK)) != -1) { +#ifdef QT_QWS_DEVFS + if ((fd = ::open("/dev/sound/dsp", O_WRONLY|O_NONBLOCK)) != -1) +#else + if ((fd = ::open("/dev/dsp", O_WRONLY|O_NONBLOCK)) != -1) +#endif + { int flags = fcntl(fd, F_GETFL); flags &= ~O_NONBLOCK; if (fcntl(fd, F_SETFL, flags) != 0) {