Revert "Add shave so that we can see the steaming piles of warnings generated."
This reverts commit 181cc08c89.
shave was left in the xserver 1.7 release/branch to allow developers &
distros time to transition to automake-1.11. xserver 1.8 series will
require automake-1.11 for silencing build noise.
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
libXtst requirement is already implicit since we require xextproto 7.1 and
that doesn't go well with pre 1.0.99.2 versions of libXtst. Nonetheless,
list it explicitly.
Since d044027510 we require dmxproto 2.2.99.1.
Complementing that is libdmx 1.0.99.1 with the dmxext.h header file.
Reported-by: Mark Rosenstand
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Fixes build with dtrace probes on Solaris after efacd7bfd0
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
When we're checking whether to build Xnest, we're comparing the
variable to auto but before it never was assigned that.
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
[Xnest was enabled to yes to increase build exposure and catch compiler
errors early. The requirements to Xnest are quite low and I expect most
developers have them, so Xnext will be enabled on most boxes. Anyone
missing those requires probably doesn't want to build Xnest anyway.]
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This patch moves all libraries that require a specific version into a single
location instead or duplicating them across the configure.ac file.
Libraries that do not require specific versions are left where they are.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
ar loses the dtrace probe magic when building static libraries, so we
have to link with the .O files in order to resolve the dtrace probe symbols.
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
This patch addresses two issues:
The check for HAVE_TSLIB = xauto can never be true, the check has been
corrected to TSLIB = xauto.
Pre-pkgconfig versions of tslib fail to be found, this patch restores the
additional AC_CHECK_LIB. However, the pgk-config check must happen before
AC_CHECK_LIB, as AC_CHECK_LIB does not seem to honour the LD_LIBRARY_PATH.
Thus, if tslib is installed outside of the default paths, AC_CHECK_LIB
fails.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Acked--by: Daniel Stone <daniel@fooishbar.org>
Reduce the tslib-check to the pkg-config check only instead of the previous
library symbol check followd by a pkg-config check.
This patch also reduces the required version of tslib back down to
tslib-0.0. Unfortunately, the 1.0 tarball available through
http://tslib.berlios.de/ still announces itself as 0.0.2.
Reported-by: Werner Landgraf
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Although a --disable-xres flag is provided, resourceproto was listed in
REQUIRED_MODULES since 2005 (5b218617fa).
Remove, make conditional on the xres flag only.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
A recent change switched to C-style automatic string concatenation,
(presumably for better readability and maintainability), but this
doesn't actually work for the shell. So we revert to the previously
working initialization.
This commit reverts one hunk of c947605eda
Protocol requirements were spread throughout configure.ac, leaving us with a
few locations where one DDX asked for a different version of the package
than another.
For each protocol, define <NAME>PROTO="[<name>proto >= version]" and
assemble REQUIRED_MODULES based on these.
Future changes to protocol versions need to only be done in a single place.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Allows unit tests to be built with non-gnu-linkers that
also have -wrap support
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Boolean option to enable/disable SIGIO handlers is set by the first
of these found:
- UseSIGIO option is set in xorg.conf ServerFlags
- Default set at build time by ./configure --enable-use-sigio-by-default
- Platform default value: Solaris = no, all others = yes
This matches the current settings on all platforms except Solaris.
This reverts Solaris (for now) to the settings used in Xorg 1.6, before
SIGIO support for Solaris was added, due to some system level bugs that
won't be resolved in time for Xorg 1.7 release, but allows us to enable
when those are resolved (or when we need to test if they're resolved).
See http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6879897
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Clears warnings about obsolete headers, but raises minimum
required version of xf86driproto to 2.1.0
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This adds support for using the libpciaccess interface for
vga arbitration support on top of a kernel which supports it.
Currently patches are queued for kernel 2.6.32 in jbarnes
pci tree, and shipping in Fedora kernel.
Co-authors:
Tiago Vignatti <tiago.vignatti@nokia.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Put the reference to -lselinux in XORG_SYS_LIBS so it isn't added as a
make dependency for libxorg.la. Otherwise, make goes looking for a file
-lselinux in the current directory, which it obviously won't find.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Tested-by: Justin P. Mattock <justinmattock@gmail.com>
If you want to run a pre-1999 kernel, you'll need a pre-2009 X server
[Some pre-Solaris 8 VT support is left by this patch to allow reuse by
the new Solaris VT support that follows in the next patch.]
Signed-off-by: Aaron Zang <Aaron.Zang@Sun.COM>
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Xnest was disabled in 82fc102568 due do build
errors. These errors have since been fixed.
Re-enable Xnest by default to increase coverage by default builds.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Keysym grabs are tricky in the details, keycode grabs are known to work. So
for now, provide keycode grabs only.
Requires inputproto 1.9.99.15.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
xextproto had Xlib client headers moved into libXext.
Protocol header files are named fooproto.h, header files with constants
foo.h or fooconst.h where foo.h was already in use for client-side headers.
These two files provide a couple of common defines, functions and variables
that will be used in a number of protocol tests.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Not all chipsets need to rely on the int10 scheme to do its daily work.
Well, the ideal would be to remove all int10 module from the server. I'll try
to provide some patches "soon" for this. Something like:
http://cgit.freedesktop.org/~vignatti/libx86/
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Acked-by: Oliver McFadden <oliver.mcfadden@nokia.com>
Not all drivers need this kind of access as well.
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Acked-by: Oliver McFadden <oliver.mcfadden@nokia.com>
Not all drivers need this kind of access.
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Acked-by: Oliver McFadden <oliver.mcfadden@nokia.com>
Build and link with rootless extension
Update Xwin code for removal of RootlessAccelInit()
Fix Xwin code which now has a collision with the type name EventType
Based on patches from Colin Harrison, Jon Turney and Yaakov Selkowitz
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
The new clipping rules:
- client clips happen after transformation
- pixels unavailable due to the hierarchy are undefined
The first one is implemented in pixman; the second one is realized by
making a copy of window sources (to prevent out-of-bounds access).
The GNU linker supports a -wrap option to wrap function calls at link-time.
This allows for easy overriding of functions in the X server with stubs in
the test suite. This functionality is only supported on the GNU linker and
will be used extensively in the tests. Disable the tests if GNU ld is not
available.
This is related to: bc964ff1e3
XQuartz: Stab at fixing the alpha 0/1 bug (screenshots, etc) by pulling in some old code that got gutted from rootless.
which was on the 1.4 branch and implemented in fbPaintWindow. Now that fbPaintWindow is gone, this is now in miPaintWindow().
(cherry picked from commit 032173f693)
This patch adds a test/ directory that contains the setup for a unit-testing
suite designed for in-server unit-testing. All functions available to the X
server are available to the test binaries through static linking.
This test suite uses the glib testing framework.
Do not use glib calls outside of the test/ directory.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
All other functions are pushed into where they seemed to fit.
main.c is now linked separately into libmain.a and linked in by the various
DDXs.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This patch adds a test/ directory that contains the setup for a unit-testing
suite designed for in-server unit-testing. All functions available to the X
server are available to the test binaries through static linking.
This test suite uses the glib testing framework.
Do not use glib calls outside of the test/ directory.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
All other functions are pushed into where they seemed to fit.
main.c is now linked separately into libmain.a and linked in by the various
DDXs.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This change implements the protocol for DRI2GetBuffersWithFormat, but
the bulk of the differences are the changes to the extension / driver
interface to make this function work. The old CreateBuffers and
DeleteBuffers routines are replaced with CreateBuffer and DeleteBuffer
(both singular).
This allows drivers to allocate buffers for a drawable one at a time.
As a result, 3D drivers can now allocate the (fake) front-buffer for a
window only when it is needed. Since 3D drivers only ask for the
front-buffer on demand, the real front-buffer is always created. This
allows CopyRegion impelemenations of SwapBuffers to continue working.
As with previous version of this code, if the client asks for the
front-buffer for a window, we instead give it the fake front-buffer.
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kristian Høgsberg <krh@redhat.com>
Requires libselinux 2.0.79 or newer. Without this, libselinux will
check for policy updates on the netlink socket on basically every policy
lookup. Statistically speaking, they never happen, and the check
translates to at least one more syscall on basically every operation.
Instead, take control of the fd from the library, and check it in
WakeupHandler if it polls readable.
Also correct a link failure due to unresolved symbols. This
is arguably a libtool/ranlib/ld bug, that "may" be corrected
by linking all convenience libraries in a single one. But in
this case, it was preferred to just add a linker option to
Xfake_LDFLAGS, to force linkage of all libraries.
This corrects #19725.
No more #ifdef XKB, because you can't disable the build, and no more
noXkbExtension either.
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Instead of hardcoding base/pc105/us, allow users to change the defaults at
./configure time. Change the default model to be evdev on Linux.
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
There were a few spots left in the source that were using the
--with-mesa-source defined headers or the now removed $(top_srcdir)/GL
directory. These aren't needed anymore as all the necessary source for
GLX is in $(top_srcdir)/glx.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Using GL for the PKG_CHECK_MODULES identifier multiple times means only
the first call will actually be used. Later calls will be skipped due to
GL_CFLAGS and GL_LIBS already being set. This changes DRI to using a
different identifier and DMX to just reusing GL_CFLAGS.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
The builtin-fonts configure option was removed, as it at best should
have been a runtime option. Instead, now it always register all "font
path element" backends, and adds built-ins fonts at the end of the
default font path.
This should be a more reasonable solution, to "correct" the most
common Xorg FAQ (could not open default font 'fixed'), and also don't
break by default applications that use only the standard/historical
X Font rendering.
Fixes for a few remaining build issues, omitted from commmit 6e85a8304b in error
Provide VENDOR_RELEASE in XORG_VERSION_CURRENT for XWin
Remove -static from linker flags for XWin
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
The Cygwin/X build has been broken for a long time, probably since modular X
This patch fixes up configure/makefile and some general build issues (#18568)
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
All .a libraries were converted to .la, and instead of linking the
Xorg binary with a mix of .a and .la, and adding some libraries more
then once in the command line, etc, now it generates a single libxorg.la
from all the required convenience libraries, and links with a dummy
xorg.c (that should usually be the file with the main function...).
This removes the requirement of some things like libosandcommon and
libinit, that existed to circumvent problems when linking multiple
.a and .la in the final Xorg binary.
The "symbol table" is now generated dynamically, by a shell script,
with an embedded gawk parser that parses cpp output. The new file
sdksyms.sh is generated by hand by analyzing all Makefile.am's and
making it create a sdksyms.c file, that includes all sdk headers that
will add symbols for the Xorg binary. Module headers aren't read, and
a in 2 files it was required to add a "<hash>ifndef XorgLoader" around
declarations shared between the Xorg binary and libextmod. A few
other changes were added to other sdk headers, like preventing
multiple inclusion, or including other headers to satisfy dependencies.
This should be a lot more portable, and better (hopefully properly)
using libtool to generate convenience libraries.
This is done to actually change DIX_CFLAGS, as not all "modules" use
XORG_CFLAGS.
Also export the symbols that are required by other modules after
the change.
Note that it checks if support for symbol visibility is available by
the compiler, not if it is functional. It may have problems on non x86
architectures.
To disable the feature, just pass the option "--disable-visibility"
to the X Server configure script.
Unless using an alternate build schema, drivers built from a git
checkout will use the same "visibility" related CFLAGS used to compile
the X Server.
pixman 0.13.2 now holds all of the matrix operations. This leaves
the protocol conversion routines and some ABI stubs in place
Signed-off-by: Keith Packard <keithp@keithp.com>
Added a configure option called --enable-standalone-xpbproxy which is useful for deveoping xpbproxy.
The 'active' switch in preferences just disables the in-server xpbproxy (not this standalone).
(cherry picked from commit 4294493632)
Really, this was a bad idea. It's not security, the UI features that would
have been cool (e.g. clicking through windows) aren't implemented anyway, and
there's nothing you can't achieve just by using plain XI anyway.
Requires inputproto 1.9.99.6.
There is no way this code can have been building for anyone since pciaccess
was merged. BSD and Linux were already using OS code on sparc, the only
people who could want this are Solaris, who should be using pciaccess
anyway.
Readded the old exec() server startup path for regression testing.
Don't use the dynamic fd addition code since it's not quite working correctly.
(cherry picked from commit 08f3fe153e)
Us shipping a GUI configuration utility (especially as part of the
server!) was pretty pointless. There was pretty much nothing it could
configure which wasn't already runtime adjustable: if you could get a
server up with functioning input and output, there wasn't much xorgcfg
could do for you.
Au revoir.
Fix and marginally simplify the SHA1 handling. First, we allow people
to override it. Secondly, we try for libmd. Then, we try for OpenSSL
with pkg-config. In a last, desperate move, we try libcrypto on its
own. This allows the server to, y'know, _link_ when using OpenSSL,
instead of failing because we only have -lcrypto, and not -lssl.
Previously, the code was using PKG_CHECK_EXISTS before PKG_CHECK_MODULES,
(to cater to OpenBSD systems that include openssl by default but without
a .pc file). But this meant that systems that didn't have openssl installed
at all would not get any error message at configure time.
Now, if the SHA1_Init function is found in -lcrypto without any additional
flags, then that's used. Otherwise, pkg-config is used to find the right
flags to link against libcrypto. And if that fails, a nice error message
is now generated.
Some reasons to embed fonts by default:
1. X server doesn't pick a good default font path so it's easiest just
to built in the core fonts and let new X hackers more happy. Developers
and distro guys are wise enough to just set --disable-builtin-fonts
when they want.
2. Seems that this is by far the most popular FAQ
(http://www.x.org/wiki/FAQErrorMessages).
3. No one gave a good argument to not do this:
http://lists.freedesktop.org/archives/xorg/2008-May/035479.html
This code hasn't been updated with anything even resembling what anyone is
shipping in nearly thirty months. It hasn't built out of the box since
7.1. Most of its features over AIGLX are accomplished with DRI2 and
friends.
This copies over the files generated from mesa/src/mesa/glapi. There's
a corresponding mesa commit that makes it easy to generate the glapi files
straight into the xserver tree when the XML definitions change.
The only few files that are copied from mesa but aren't generated are
glapi.[ch] and glthread.[ch]. Everything in there is technically DRI
driver API and the whole setup is still a bit fragile, but it's not a new
problem.
The --with-mesa-source configure option is still around since other
parts of the server (XGL and DMX - grep for MESA_SOURCE) need that,
but for common case of building with GLX and AIGLX support, that
option is no longer needed.
Conflicts:
Xext/xprint.c (removed in master)
config/hal.c
dix/main.c
hw/kdrive/ati/ati_cursor.c (removed in master)
hw/kdrive/i810/i810_cursor.c (removed in master)
hw/xprint/ddxInit.c (removed in master)
xkb/ddxLoad.c
Most of these drivers didn't work. ati was the only one that even came
close. The igs, ipaq, itsy, pcmcia, savage, sis530, trident, trio, ts300,
and vxworks directories have never built since modularisation, so clearly
no one can miss them.
Use dummy config functions to replace those from config/config.c, and
therefore do not link Xprt with $CONFIG_LIB.
Works around an endlessly spinning loop in dix/dispatch.c::Dispatch()
(WaitForSomething() not waiting) when built with dbus, which was
causing Xprt to use 95% cpu.
glcore gets linked with -ldl, -lpthread for s3tc and glapi
xserver needs
DLOPEN_LIBS - to dlopen the glcore dso
LD_EXPORT_SYMBOLS_FLAG - to export symbols for glcore to use
the ld flag is added to kdrive only when GLX is enabled, the net overhead for
Xephyr is ~155KB, could be reduced with --dynamic-list.
This extension provided bug-compatibility with pre-X11R6, but has been
stubbed out in our server since 2006 to return BadRequest when you actually
asked for it.
-DXPRINT had only been set for Xprt in hw/xprint/Makefile.am
After commit 7c0709a736 it is also
required for ps/PsArea.c and PsFonts.c to ensure ‘requestingClient’ is
defined, so make it a global Xprint definition in configure.ac.
(cherry picked from commit 28a6719fd486d9a9cecad0b057d9ea7c59c66055)
A few pieces of code were abusing this define for other purposes, which are
converted to #ifndef DEBUG instead. There should be no ABI consequences
to this change.
The rationale is that having the define in xorg-server.h also disables
assert() drivers, which is unexpected, and also difficult to avoid since
xorg-server.h is included in their config.h, and you can't put a #undef in
config.h. As for removing it from the server instead of moving it to an
internal header, we probably shouldn't have unnecessary assert()s in
critical server paths anyway, and if we do we could #define NDEBUG in the
specific cases needed.
For non-Linux, _POSIX_C_SOURCE and friends restrict symbols defined rather
than enabling defines of symbols. Additionally, CLOCK_MONOTONIC was
apparently added to the standard around 2000 anyway, not 1993.
Get rid of glcontextmodes.[ch] from build, rename __GlcontextModes to
__GLXcontext. Drop all #includes of glcontextmodes.h and glcore.h.
Drop the DRI context modes extension.
Add protocol code to DRI2 module and load DRI2 extension by default.
Parse "input.x11_options" and pass every key/name pair to the driver.
Remove check for input.capabilities, because that's part of the fdi files.
Thanks to Dustin Spicuzza <dustin@virtualroadside.com> for the patch.
RISC chips that trap on unaligned loads and stores need to
define __GLX_ALIGN64. This used to get added to the cflags
in the old *.cf files but it no longer does in the modular
X server.
Also, Alpha needs to pass -mieee to the compiler as well.
This is a simple backport of a patch that debian, and probably other
distributions, have been applying forever. To the best of my
knowledge the patch was written by Jurij Smakov. See Debian bug
number #388125.
I just checked and this has been rotting for more than a year in
freedesktop bugzilla as #8392.
Signed-off-by: David S. Miller <davem@davemloft.net>
This should hopefully eliminate confusion some people have over which X11.app is which.
Now BOTH are in /A/U/X11.app and we intelligently determine whether to execute our app_to_run
or launch the server. If arguments are given, we launch the server. Otherwise if we can
connect to an X DISPLAY, we execute app_to_run. Otherwise, we launch the server.
(cherry picked from commit e7026216cc)
This fixes an undefined symbol error happening when compiling
the server with the --disable-xv configure switch.
Basically, xnest was linking against
@XSERVER_LIBS@ and @XNEST_LIBS@ and the order of the libraries
given to the linker at the end of the process was bogus.
* configure.ac: make XNEST_LIBS contain the $XSERVER_LIBS re-ordered
in such a way that the linker finds the symbols of all the libs contained
in $XNEST_LIBS.
* hw/xnest/Makefile.am: don't link against @XSERVER_LIBS@ anymore because
XNEST_LIBS contains the right thing.
Don't build XF86Misc or XF86Vidmode in hw/xfree86/dixmod when it's been
explicitly disabled in configure, or we don't have the proto modules
installed.
* configure.ac,include/dix-config.h.in: define the XEPHYR_DRI macro.
define it when --enable-xephyr and --enable-dri are both turned on.
* hw/kdrive/ephyr/XF86dri.c: copy this from mesa source to enable
Xephyr to talk DRI protocol the host X. In mesa, this is used by libGL.so to
talk DRI protocol with the server.
* hw/kdrive/ephyr/ephyr.c: finally initialise the DRI extension
in the ephyrInitScreen() function.
* hw/kdrive/ephyr/ephyrdri.c,ephyrdriext.c: safeguard the compilation
using the XEPHYR_DRI macro.
this fixes a breakage caused by 7a4ec34e25.
When running a non DTRACE aware system that is not darwin*, DTRACE was getting
required. Now it is not anymore.
This adds a bit of glue to configure.ac to support launchd detection;
on OS X (or other platforms which choose to implement launchd), this allows
the system to automagically start the Xserver as necessary to serve clients.
XDarwin doesn't need any of this pci stuff since it doesn't talk directly to hardware,
so it doesn't make sense to require it when building on OSX/Darwin.
Previously, the server version reported by xdpyinfo and Xorg -version would
bear some vague resemblance to a X.Org katamari version, but in the presence
of modularization (and client-server relationships with different katamari
versions on each side) those numbers don't really make sense. Instead, just
report the package version.
When branching a stable branch, master's version should be immediately updated
to the endpoint of the stable branch plus a snapshot of 1 (for example,
1.4.0.1 after server-1.4-branch). The stable branch should then be changed to
RC0 at that time (1.3.99.0, for example).
This scheme was partially attempted for server 1.3, but lacked the appropriate
master updates, thus why it had to be revisited now. While here, we can also
remove a lot of versioning complexity since everything is based on the package
version.
* configure.ac: re-sort Kdrive libs so that symbols get properly resolved.
Basically, all some libs are present in both $KDRIVE_LIBS and $XSERVER_LIBS,
and some libs orders are not correct. So I made sure Kdrive servers don't have
to link against $KDRIVE_LIBS *and* $XSERVER_LIBS. They just have to link
against $KDRIVE_LIBS now.
* hw/kdrive/*/Makefile.am: update those makefile to reflect the change in configure.ac
This cleans up server Makefile.ams a little bit, but also means that people
messing with configure.ac need to be careful with whether they put libraries
in the _LIBS or _SYS_LIBS targets. Hopefully the comment in configure.ac will
clarify the issues.
Note that pciaccess doesn't yet have Net/OpenBSD support, but the relevant
code should go there instead of disconnected code in the X Server.
While here, remove the now-disabled INCLUDE_XF86_NO_DOMAIN from the headers,
and un-disable xf8StdAccResFromOS for those OSes without domain support which
will need it.
over to new system.
Need to update documentation and address some remaining vestiges of
old system such as CursorRec structure, fb "offman" structure, and
FontRec privates.
Using a cryptographically strong hash means that comparing the
hash alone is sufficient for determining glyph equality (no need
to compare the glyph bits directly). This will allow us to replace
system-memory copies of the glyph bits, (which we've only been
holding onto for comparisons), with Pixmaps.
Add support for HAL-based hotplugging, in which we just get the list of
input devices and properties from HAL. Requires an FDI which is not yet
in mainline HAL.
Make sure the font path is always 'built-ins' when we use built-in fonts,
rather than having it as a fixed path for a while, then clobbering it
halfway through startup.
Break up D-Bus into two components: a D-Bus core that can be used by any
part of the server (for the moment, just the D-Bus hotplug API, and the
forthcoming HAL hotplug API), and the old D-Bus hotplug API.
Not sure why these are conditionals, anyway. This one really needs
revisiting, but at least causes configure, rather than the compilation,
to bomb out.
This patch changes the semantics of manual redirect windows so that they no
longer affect the clip list of their parent. Doing this means the parent can
draw to the area covered by the child without using IncludeInferiors. More
importantly, this also means that the parent receives expose events when
that region is damaged by other actions.
It causes the compiler to treat it as an octal constant instead of decimal as
intended, which could even cause a build failure in the cases of 08 and 09.
Thanks to Clark Rawlins for pointing out the problem.
Xprt links libfb, which now uses pixman. Update configure.ac to
require module $PIXMAN for XPRINT.
Also, use $(top_builddir) to reference libfb.la and other local
libraries, rather than using the relative reference ../..
Allow the location of the SERVERCONFIGdir variable to be defined at
compile-time. This allows us to specify where the security policy will be
located (Debian uses this to put it in /etc). The default is to the
previous location.
Additionally, protect libcw setup behind checks for Render, to avoid
segfaulting if Render isn't available (xnest).
The previous setup was an ABI-preserving dance, which is better nuked now.
Now, anything that needs libcw must explicitly initialize it, and
miDisableCompositeWrapper (previously only called by EXA and presumably binary
drivers) is gone.
This code comes from the intel driver, so there's no history in this tree.
As the crtc/output-based mode selection code uses ddc, the ddc and i2c
modules have been merged into the server. Attempts to load them are safely
ignored now.
This keeps us from having to define _POSIX_C_SOURCE, _BSD_SOURCE, and
_XOPEN_SORUCE to get the C environment we want in different places. It also
fixes the build on linux due to RTLD_DEFAULT having not been defined.
It builds against 1.4.7 as well, but it hardcodes the GLX_EXT_tfp tokens that
were finalized in 1.4.8, so GLX_EXT_tfp breaks if the client side was built
against an older glproto. This will hopefully alert people to rebuild other
components (in particular Mesa) against the new glproto as well.
- Use autoconf tests instead of platform-specific #ifdef's to decide
which macros to use.
- Provide fallbacks for platforms like Solaris that don't provide any
of the existing known forms.
Only try to build Linux support on Linux. We should probably disable all
OS-dependent DDXes if we don't have a workable OS (and only build
Xephyr/Xfake), but that's future work.
We don't actually need to get the CPU clock ID, which means we don't need
the monotonic_usable test. Since there's now only one branch, the
compiler will treat that as likely, so we don't need xproto 7.0.9 anymore.
The fallthrough to gettimeofday() is preserved.
Add support for CLOCK_MONOTONIC from clock_gettime, and use that in
GetTimeInMillis() if available, falling back to the old gettimeofday()
implementation.
This is _slightly_ faster on some 64-bit architectures, and _slightly_
slower on others (though barely measurable).
CFLAGS is a user variable, extracted from the environment at configure time
and settable by the user at build time. We must not override this variable.
Conflicts:
hw/xfree86/common/xf86Init.c
hw/xfree86/int10/pci.c
hw/xfree86/scanpci/xf86PciData.h
hw/xfree86/scanpci/xf86PciStdIds.h
hw/xfree86/scanpci/xf86PciStr.h
hw/xfree86/scanpci/xf86ScanPci.h
hw/xfree86/utils/pcitweak/pcitweak.c
hw/xfree86/utils/scanpci/scanpci.c
Re-removed most of the conflicting files.