Hi,
I’m building xorg in a local directory $HOME/xorg, then all libraries will go to $HOME/xorg/lib, And all the configure files will go to $HOME/xorg/share/X11/xorg.conf.d/, such as the 10-evdev.conf. My question is, when I run this local Xorg it will not search the configure file at the local configure directory: $HOME/xorg/share/X11/xorg.conf.d/ Instead, it searches the system’s xorg configuration file at: /etc/X11/xorg.conf.d /usr/share/X11/xorg.conf.d So you can see, when I run the new Xserver, it will load the old configuration files rather than the correct files Installed at local configuration directory. I traced into the source code, and found the reason is as below: the macro SYS_CONFIGDIRPATH’s defined as "/usr/share/X11/%X," "%D/X11/%X", And it will be used to find the system config path. And the finding process is at function OpenConfigDir(), the finding mechanism is to scan the SYS_CONFIGDIRPATH from left to right, and if it successfully find a directory, then it stop finding next. As my system has a /usr/share/X11/xorg.conf.d, it stop to find the next path which is pointing to my local directory and which is the one should be used here IMHO. As all the building process in my local building repository will install configuration files into local files rather than the /usr/share/X11/xorg.conf.d. I know there may be many duplicate config files in these two directories, so we have to pick one and discard the other one. In my opinion, the local directory should be higher priority. Otherwise, how can we ensure we use the correct file when we build a new xserver which has difference config files? Any suggestion?
_______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel