Commit Graph

1002 Commits

Author SHA1 Message Date
Keith Packard
ffb47a123d Merge remote-tracking branch 'idr/GLX_ARB_create_context' 2012-06-14 13:01:17 -07:00
Chad Versace
78f0d9cdc4 dri2: Add DRI2GetParam request (v2)
Bump dri2proto dependency to 2.7.
Bump DRI2INFOREC_VERSION to 7.

This new protocol request effectively allows clients to perform feature
detection on the DDX. The request was added in DRI2 protocol 1.4.

If I had DRI2GetParam in June 2011, when I was implementing support in the
Intel DDX and Mesa for new hardware that required a new DRI2 attachment
format, then I could have avoided a week of pain caused by the necessity
to write a horrid feature detection hack [1] in Mesa. In the future, when
the work begins to add MSAA support to the Intel DDX, having a clean way
to do feature detection will allow us to avoid revisiting and expanding
that hack.

[1] mesa, commit aea2236a, function intel_verify_dri2_has_hiz

v2: If driver doesn't define ds->GetParam, dont' crash. Fall back to
    default behavior, per keithp.

Reviewed-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Eric Anholt <eric@anholt.net> (v1)
Reviewed-by: Ian Romanick <idr@freedesktop.org> (v1)
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
2012-05-31 12:14:17 -07:00
Ian Romanick
befa76d251 glx: Implement GLX SetClientInfoARB protocol
v2: Bump glproto version to 1.4.15.  This patch uses structure names
that only exist in that glproto version and later.  Noticed by
Christopher James Halse Rogers.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
2012-05-23 13:08:12 -07:00
Yaakov Selkowitz
e6461db6dc os: Add CryptoAPI as a choice of SHA1 implementation
Both Cygwin and MinGW can use Windows' native CryptoAPI for SHA1,
saving a dependency on libgcrypt or OpenSSL.  The necessary functions
are in ADVAPI32.DLL, which is among the default lib flags and is
already used in hw/xwin for accessing the registry.

Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Colin Harrison <colin.harrison@virgin.net>
Tested-by: Colin Harrison <colin.harrison@virgin.net>
2012-05-04 13:13:50 -05:00
Ryan Pavlik
19082726cb configure.ac: on MinGW, link with ws2_32 instead of winsock2
ws2_32 is the correct name for the libary (even on 64 bit Windows :-))

Signed-off-by: Ryan Pavlik <rpavlik@iastate.edu>
Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
2012-05-02 12:40:33 +01:00
Ryan Pavlik
ad9605a3e2 configure.ac: MinGW doesn't have setuid binaries either.
If the target platform isn't in a list of platforms we know don't use a
setuid binary, we try to test if we can chown something to root.

This test possibly won't give the right answer if we are cross-compiling,
which is common for the MinGW target.  This patch adds MinGW to the list
of platforms we know don't use a setuid binary.

Signed-off-by: Ryan Pavlik <rpavlik@iastate.edu>
Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
2012-05-02 12:40:32 +01:00
Ryan Pavlik
2225208c2e configure.ac: auto-disable MITSHM if we lack IPC
The MITSHM extension uses SYSV IPC, but even if configure's test
for IPC failed, MITSHM was still enabled by default, breaking
MinGW builds by default.

Unfortunately, fixing this exposes the fact that the HAVE_SYSV_IPC
test wasn't being used for anything before and so we hadn't noticed it
was failing on Cygwin.

Change from using SHM_W|SHM_R flags (which aren't required by POSIX) to
S_IRUSR|S_IWUSR flags (which are)

Signed-off-by: Ryan Pavlik <rpavlik@iastate.edu>
Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
2012-05-02 12:39:22 +01:00
Jon TURNEY
0426e6d65b configure.ac: Make default configuration for MinGW disable unsupported extensions and DDXs
Same as the default configuration for Cygwin, --disable-xorg and --disable-dmx DDX by default,
and force --disable-xv and other unsupported extensions

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
2012-05-01 17:01:36 +01:00
Keith Packard
d77eb7ee49 Merge remote-tracking branch 'yselkowitz/master'
Pull in Cygwin for XFree86
2012-04-19 15:48:34 -05:00
Erkki Seppälä
3720aa33ee Added resourceproto version dependency, >= 1.2.0 now required
Signed-off-by: Erkki Seppälä <erkki.seppala@vincit.fi>
2012-04-18 12:49:11 +03:00
Yaakov Selkowitz
c7b1625558 xfree86: link modules against Xorg symbols on Cygwin
As a PE platform, all symbols in both EXEs and DLLs must be resolved
at link time.  As Xorg modules depend on symbols in the Xorg
executable, we must build Xorg before its modules, creating an implib
from the former which is used to link the latter.  This implib must
then be installed in order to build the drivers.

Currently only two drivers are supported on Cygwin: xf86-video-dummy
(to replace Xvfb/Xfake) and xf86-video-nested (to replace Xnest/Xephyr).

Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-04-05 21:57:07 -05:00
Yaakov Selkowitz
fd115ee114 xfree86: allow modules to be built without undefined symbols
This will be necessary to port Xorg to Cygwin, but other platforms may
find this useful as well.

Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-04-05 21:57:02 -05:00
Yaakov Selkowitz
12cd7ca83c Cygwin/X: disable all unused or unapplicable extensions in configure
Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-04-05 21:57:00 -05:00
Keith Packard
a615b90cab Bump version number to 1.12.99.0
Now that 1.12 has branched, reset the version on master to a
development number.

Signed-off-by: Keith Packard <keithp@keithp.com>
2012-03-14 11:32:36 -07:00
Keith Packard
b1be72c5ca Version bumped to 1.12
Signed-off-by: Keith Packard <keithp@keithp.com>
2012-03-04 20:26:18 -08:00
Keith Packard
62edd970f6 Bump to version 1.11.99.903 (1.12 RC3)
Signed-off-by: Keith Packard <keithp@keithp.com>
2012-02-11 16:13:44 +13:00
Peter Hutterer
7674d00b04 Xi: handle new XIAllowEvents request in inputproto 2.1.99.6
grab_window and touchid were removed from the struct for ABI compatibility
reasons, we need to pull in the new, XI 2.2-specific struct.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2012-02-11 15:26:05 +13:00
Keith Packard
052ca3f22e Bump version to 1.11.99.902 (1.12 RC2)
Signed-off-by: Keith Packard <keithp@keithp.com>
2012-01-27 22:08:08 -08:00
Jeremy Huddleston
954bb99484 configure.ac: Remove MIEXT_SHADOW_LIB from XORG_LIBS
This is provided by dixmods/libshadow.so and is not part of the main binary.

This addresses a build failure on darwin due to MIEXT_SHADOW_LIB having
unsatisfied dependencies (FB_LIB) in XORG_LIBS.

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
2012-01-15 02:28:27 -08:00
Keith Packard
e476af417d Merge remote-tracking branch 'whot/multitouch' 2012-01-09 13:17:37 -08:00
Matthieu Herrb
6d6d4cb604 Add OpenBSD support to DetermineClientCmd()
Uses kvm_getargv() from libkvm.

Signed-off-by: Matthieu Herrb <matthieu.herrb@laas.fr>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2012-01-09 13:09:49 -08:00
Peter Hutterer
e8db10a033 Require inputproto 2.1.99.5
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2012-01-06 13:49:23 +10:00
Keith Packard
98cde254ac Bump version to 1.11.99.901 (1.12 RC1)
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-12-27 14:02:39 -08:00
Peter Hutterer
e395efc25f Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into multitouch
Conflicts:
	configure.ac
	dix/inpututils.c

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-12-22 09:29:59 +10:00
Jeremy Huddleston
d0170d54c7 configure.ac: Make Xephyr dependency error message more informative
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Jamey Sharp <jamey@minilop.net>
2011-12-19 21:44:16 -08:00
Keith Packard
c065f7b163 Version 1.11.99.2 (1.12 snapshot 2)
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-12-17 17:22:45 -08:00
Antoine Martin
ead968a430 xserver: check for elevated privileges not uid=0
This allows us to run the server as a normal user whilst still
being able to use the -modulepath, -logfile and -config switches
We define a xf86PrivsElevated which will do the checks and cache
the result in case it is called more than once.
Also renamed the paths #defines to match their new meaning.
Original discussion which led to this patch can be found here:
http://lists.freedesktop.org/archives/xorg-devel/2011-September/025853.html

Signed-off-by: Antoine Martin <antoine@nagafix.co.uk>
Tested-by: Michal Suchanek <hramrach at centrum.cz>
Reviewed-by: Jamey Sharp <jamey at minilop.net>
Reviewed-by: Adam Jackson <ajax@redhat.com>
2011-12-16 15:38:13 -08:00
Peter Hutterer
731b1db2fc Require inputproto 2.1.99.3
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
2011-12-16 11:18:47 +10:00
Peter Hutterer
f7ea7a3245 configure: split the required modules up
We do the same thing for libraries and optional modules already, and it's
much easier to read when one of them changes

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-12-14 11:48:14 -08:00
Peter Hutterer
4c80dc1394 configure: split the required modules up
We do the same thing for libraries and optional modules already, and it's
much easier to read when one of them changes

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-12-14 10:39:42 +10:00
Keith Packard
22a666f995 Merge remote-tracking branch 'alanc/master' 2011-12-07 12:27:23 -08:00
Gaetan Nadon
e89b0324da autoconf: the minimum required level for autoconf is 2.60
The toolchain requirements are documented here:
http://www.x.org/wiki/ModularDevelopersGuide#Required_Tools

Note that autoconf features only found in versions later
than 2.60 must not be used.

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2011-12-05 14:33:00 -08:00
Gaetan Nadon
427cb53fdd autoconf: remove redundant AC_PROG_MAKE_SET
Already included during Automake initialization.

After the patch, no change:
configure:3893: checking whether make sets $(MAKE)
configure:3915: result: yes

Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2011-12-05 14:33:00 -08:00
Alan Coopersmith
d829a7c5cb Move to autoconf standard function name checks & defines
Replace multiple methods of checking for functions with AC_CHECK_FUNCS
Replace multiple methods of selecting fallback funcs with AC_REPLACE_FUNCS
Replace HAS_* and NEED_* #defines with autogenerated HAVE_*

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
2011-12-05 14:32:45 -08:00
Alan Coopersmith
4be68b0312 Remove unused function checks from configure.ac & include/*.h.in
The code that used getisax to check for MMX support was moved to pixman
and removed from the X server by commit eb2d7fe02f.

The code that used HAVE_MKSTEMP was deleted by the Xprint removal in
commit 1c8bd318fb.

All alloca calls were removed by the patch series end in commit 5e363500c8,
and used custom X checks instead of the autoconf HAVE_ALLOCA anyway.

I can find no record of HAVE_GETUID, HAVE_GETEUID, HAVE_LINK, HAVE_MEMMOVE,
HAVE_MEMSET, HAVE_STRCHR, HAVE_STRRCHR, HAVE_GETOPT, HAVE_GETOPT_LONG,
HAVE_DOPRNT, or HAVE_VPRINTF ever being used, and the calls to those
functions are not wrapped in #ifdefs.
(Most of those are in our baseline requirements of C89 & Unix98 anyway.)

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
2011-12-03 10:19:12 -08:00
Gaetan Nadon
fd976e4051 config: conftest needs an include directive to locate X11/Xfuncproto.h
The compiler option -fvisibility=hidden is erroneously missing
due to a faulty configuration test. The gcc command is unable to
locate X11/Xfuncproto.h unless the build occurs on a
system where X11 development headers are installed.

configure:21294: checking for symbol visibility support
configure:21323: gcc -std=gnu99 -c -g -O2 -fvisibility=hidden  conftest.c >&5
conftest.c:144:28: fatal error: X11/Xfuncproto.h: No such file or directory

The solution is to add an include directive to obtain the location
of X11/Xfuncproto.h which may or may not be the system installed headers.

Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-12-02 09:07:40 +00:00
Alan Coopersmith
acde97a39d Add fallback implementation of strndup()
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Linux test code fixed by: Keith Packard <keithp@keithp.com>
2011-11-23 12:15:05 -08:00
Alan Coopersmith
36670065bd Don't require ld -wrap for tests that don't need it
If configure is generated with xorg-macros 1.16 or later, this allows
builders to --enable-unit-test and run the tests other than the xi2
tests which require ld -wrap (and are still wrapped in if HAVE_LD_WRAP
in tests/xi2/Makefile).  If an older xorg-macros is used, the existing
behaviour is preserved of requiring ld -wrap for all unit tests, but
no side effects occur, so the minimum xorg-macros version is not raised.

If unit testing is enabled without ld -wrap, then we create a bogus
"xi2-tests" script just to report that we're skipping them.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
2011-11-23 12:15:05 -08:00
Keith Packard
5952efa903 Bump version to 1.11.99.1 (1.12 development release 1)
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-11-20 14:50:57 -08:00
Jeremy Huddleston
09eaa1f6f1 configure.ac: Add -fno-strict-aliasing to CFLAGS
This should force the server to have -fno-strict-aliasing even once it
is removed from the warning flags.

See: https://bugs.freedesktop.org/show_bug.cgi?id=31238

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
2011-10-21 00:32:03 -07:00
Jeremy Huddleston
41d903918a xorg-server.pc.in: Remove libpciaccess and pixman-1 from Requires
Every module building against xorg-server does not *Require* pixman nor
libpciaccess.  If such modules need pixman or pciaccess, they should be
depending on them directly rather than inheriting a dependency from
xorg-server.  To do this, they should use PKG_CHECK_MODULES in configure.ac
to check for pixman-1 or pciaccess and include the apporpriate _LIBS variable
to the appropriate _LDFLAGS variable in Makefile.am

This also moves pixman-1 to Requires.private, so CPPFLAGS is set right to
to satisfy include dependencies but avoid linking needlessly.

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
2011-10-15 21:18:47 -07:00
Jeremy Huddleston
40d338e9f7 darwin: configure: Force some irrelevant options to off on darwin
This removes the need to pass the following to configure on darwin:
--disable-pciaccess -disable-int10-module --disable-vbe --disable-vgahw --disable-libdrm

Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Jamey Sharp <jamey@minilop.net>
2011-10-15 21:18:47 -07:00
Tiago Vignatti
6817050f31 configure: wrap PCI code with macro and set it at build time
--disable-pciaccess, used together with --disable-module-int10, can be used to
disable all pci code inside the server.

Note that XSERVER_LIBPCIACCESS was previously used only in the driver side and
now it defines also whether the library is used inside the server. Also,
XORG_BUS_PCI automake variable is introduced to track PCI code needs.

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Tested-by: Jeremy Huddleston <jeremyhu@apple.com>
2011-10-15 21:18:47 -07:00
Tiago Vignatti
5c12399b6c configure: make PCI configuration more sane
No semantical changes. Just moved code around, grouping PCI related stuff in a
single chunk.

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Tested-by: Jeremy Huddleston <jeremyhu@apple.com>
2011-10-15 21:18:47 -07:00
Tiago Vignatti
a319e9e697 configure: change PCI function checking by a meaningful version of the library
People that don't want VGA arbiter active can go to the library and enable the
stubs there.

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Tested-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Jamey Sharp <jamey@minilop.net>
2011-10-15 21:18:47 -07:00
Jeremy Huddleston
e8bafb9d8c xfree86: Add stubs for os-support to help adding new architecture support
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
Reviewed-by: Jamey Sharp <jamey@minilop.net>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
2011-10-15 21:18:47 -07:00
Adam Jackson
7757b80924 pci: Remove xf86MapDomainMemory
This is slightly draconian, but that API is just awful.  In all but
one case in the callers it's used to get a map of some legacy VGA
memory, and it would be cleaner for the caller to just call
pci_device_map_legacy.

The sole exception is in the vesa driver, which uses it to avoid having
to look up which device the BAR belongs to.  That's similarly trivial to
fix.

Having done that, Linux's PCI layer is now very small indeed.

Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Tested-by: Jeremy Huddleston <jeremyhu@apple.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-10-15 21:18:46 -07:00
Adam Jackson
aa0bfb0f13 linux: Remove ia64 domain I/O support code
pciaccess handles this now.

Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Tested-by: Jeremy Huddleston <jeremyhu@apple.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Jamey Sharp <jamey@minilop.net>
2011-10-15 21:18:46 -07:00
Keith Packard
6378d0233d Merge remote-tracking branch 'herrb/master' 2011-10-03 13:56:06 -07:00
Lennart Poettering
fad04dd970 udev: make use of udev_enumerate_add_match_tag() only when it is available
udev_enumerate_add_match_tag() and udev_monitor_filter_add_match_tag()
are mostly optimizations, hence simply skip these calls if they are not
available in the installed version of libudev.

This should fix the build on older versions of udev.

[airlied: fixes tinderbox failures on RHEL6]

Signed-off-by: Lennart Poettering <lennart@poettering.net>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Tested-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-10-03 11:55:36 -07:00