лучший способ работы с / отладки модулей сервера Xorg - PullRequest
3 голосов
/ 30 августа 2010

Я хочу работать с модулем сервера Xorg, и мне интересно, как я могу перезагрузить модуль во время выполнения.

Также, возможно, кто-то может дать мне несколько хороших советов по этому поводу (потому что я никогда раньше не работал с кодом сервера Xorg).


Esp. Я использую версию Xorg 7.5 для Ubuntu (если это имеет большое значение - не так ли?).


Что я хочу сделать, так это реализовать ускорение колесика мыши в XInput.

Я думал о добавлении новой опции для этого, которую можно установить где-то (я думаю, что xorg.conf больше не является местом, где вы конфигурируете XInput; где он находится сейчас и что будет лучшим способом представить новую настройка, т.е. MouseWheelAccel или что-то подобное?).

И затем, конечно, реализовать фактическое ускорение. Поскольку события колесика мыши похожи на события нажатия кнопок, я подумал только об увеличении скорости запуска таких событий. Как реализовать это на самом деле действительно небольшая проблема. (Я на самом деле думаю, что это тривиально. Давайте посмотрим, позволяет ли код Xorg быть таким простым ...)

1 Ответ

3 голосов
/ 31 августа 2010

Пока что я сделал это:

Отчеты:

Проверьте Xorg через Git, подготовьтесь к компиляции и получите код XServer .В основном это:

...
git clone git://anongit.freedesktop.org/git/xorg/util/macros
...
sudo apt-get install xserver-xorg-dev
sudo apt-get install x11proto-gl-dev x11proto-xf86dri-dev x11proto-fixes-dev x11proto-damage-dev x11proto-xcmisc-dev x11proto-bigreqs-dev x11proto-composite-dev x11proto-scrnsaver-dev x11proto-resource-dev x11proto-xinerama-dev x11proto-xf86dga-dev x11proto-record-dev x11proto-xf86vidmode-dev
sudo apt-get install libxfont-dev libudev-dev
git clone git://anongit.freedesktop.org/git/mesa/mesa
git clone git://anongit.freedesktop.org/xorg/xserver
cd xserver
git checkout -b server-1.7-branch origin/server-1.7-branch -t
# apply a bunch of Debian patches (apt-get source xserver-xorg-core && ls xorg-server-1.7.6/debian/patches)
# esp., apply the config-libudev-backend and config-xorg-conf-d 
./autogen.sh --prefix=/opt/xorg --enable-xorg --disable-dmx --disable-xvfb --disable-xnes \
--disable-xwin --disable-xprint --with-mesa-source=../mesa \
--enable-dga --enable-glx --enable-aiglx --enable-glx-tls \
--enable-dri --enable-dri2 \
--enable-config-udev --enable-registry --enable-composite --enable-record \
--enable-xv --enable-xvmc --enable-dga --enable-screensaver \
--enable-xdmcp --enable-xdm-auth-1 --enable-xfree86-utils \
--with-xkb-bin-directory=/usr/bin --with-xkb-path=/usr/share/X11/xkb --with-xkb-output=/var/lib/xkb \
--with-dri-driver-path=/usr/lib/dri \
--with-default-font-path="/usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,built-ins"
sudo chmod o+w /var/lib/xkb # just to be able to proceed as user
... # work on it
sudo /opt/xorg/bin/Xorg :1 vt8 # for testing
sudo cp /opt/xorg/bin/* /usr/bin # temporarily install it as main Xserver
...