Ticket #6137: 40_libudev.patch
File 40_libudev.patch, 2.6 KB (added by , 14 years ago) |
---|
-
configure
a b 1291 1291 ivtv 1292 1292 joystick_menu 1293 1293 libfftw3 1294 libudev 1294 1295 lirc 1295 1296 mheg 1296 1297 opengl_video … … 1776 1777 enable ivtv 1777 1778 enable lamemp3 1778 1779 enable lirc 1780 enable libudev 1779 1781 enable mheg 1780 1782 enable opengl 1781 1783 enable opengl_vsync … … 3422 3424 disabled zlib || check_lib zlib.h zlibVersion -lz || disable zlib 3423 3425 disabled bzlib || check_lib2 bzlib.h BZ2_bzlibVersion -lbz2 || disable bzlib 3424 3426 3427 # Attempt to use libudev for mediamonitor 3428 if test $target_os = linux; then 3429 check_lib2 libudev.h udev_new -ludev || disable libudev 3430 fi 3431 3425 3432 enabled ffmpeg_pthreads && enable pthreads 3426 3433 3427 3434 # check for some common methods of building with pthread support … … 4563 4570 echo "PERL_CONFIG_OPTS=$PERL_CONFIG_OPTS" >> $MYTH_CONFIG_MAK 4564 4571 fi 4565 4572 4573 if enabled libudev; then 4574 echo "CONFIG_LIBUDEV_LIBS=-ludev" >> $MYTH_CONFIG_MAK 4575 fi 4576 4566 4577 if test x"$CCONFIG" != x"" ; then 4567 4578 echo "CCONFIG=$CCONFIG" >> $MYTH_CONFIG_MAK 4568 4579 echo "#define MYTH_BUILD_CONFIG \"$CCONFIG\"" >>$TMPH -
libs/libmyth/libmyth.pro
a b 79 79 LIBS += -L../libavcodec -lmythavcodec-$${LIBVERSION} 80 80 LIBS += -L../libavutil -lmythavutil-$${LIBVERSION} 81 81 unix:LIBS += -ldl 82 using_libudev:LIBS += $${CONFIG_LIBUDEV_LIBS} 82 83 83 84 TARGETDEPS += ../libmythsamplerate/libmythsamplerate-$${MYTH_LIB_EXT} 84 85 TARGETDEPS += ../libmythsoundtouch/libmythsoundtouch-$${MYTH_LIB_EXT} -
libs/libmyth/mediamonitor-unix.cpp
a b 38 38 #include "mythhdd.h" 39 39 #include "mythverbose.h" 40 40 41 // Linux headers 42 #ifdef linux 43 #if CONFIG_LIBUDEV == 1 44 extern "C" { 45 #include <libudev.h> 46 } 47 #endif 48 #endif 49 41 50 #ifndef MNTTYPE_ISO9660 42 51 #ifdef linux 43 52 #define MNTTYPE_ISO9660 "iso9660" … … 218 227 ret.replace(QRegExp(".*/"), "/dev/"); 219 228 220 229 #ifdef linux 230 #if CONFIG_LIBUDEV == 1 231 // Use libudev to determine the name 232 ret = ""; 233 struct udev *udev = udev_new(); 234 if (udev != NULL) 235 { 236 struct udev_device *device = 237 udev_device_new_from_syspath(udev, sysfs.toAscii().constData()); 238 if (device != NULL) 239 { 240 const char *name = udev_device_get_devnode(device); 241 242 if (name != NULL) 243 ret = tr(name); 244 245 udev_device_unref(device); 246 } 247 udev_unref(udev); 248 } 249 #else // CONFIG_LIBUDEV 250 // Use udevinfo to determine the name 221 251 QProcess *udevinfo = new QProcess(); 222 252 QTextStream stream(udevinfo); 223 253 QStringList args; … … 262 292 return ret; 263 293 264 294 udevinfo->deleteLater(); 295 #endif // CONFIG_LIBUDEV 265 296 #endif // linux 266 297 267 298 VERBOSE(VB_MEDIA, msg + "->'" + ret + "'");