diff options
35 files changed, 4160 insertions, 1451 deletions
diff --git a/driver/xf86-video-ati/ChangeLog b/driver/xf86-video-ati/ChangeLog index 7f195e054..db003752d 100644 --- a/driver/xf86-video-ati/ChangeLog +++ b/driver/xf86-video-ati/ChangeLog @@ -1,3 +1,518 @@ +commit 9425c50e93903fb64d9e569cfdc1e2c35d16ce25 +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Thu Mar 29 00:19:12 2012 -0400 + + configure: bump version for release + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit dc18d771713ecd893c7d5833da6e0661093161dc +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Wed Mar 28 17:32:53 2012 -0400 + + configure: bump libdrm requirement for TN support + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit 03535904a3e1542b3924d0a062c4b022ca196888 +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Tue Mar 27 09:48:28 2012 -0400 + + radeon: man page updates + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit 6ed191c33caa33c12c2c6dafcba3a5ab1bf4a02f +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Tue Mar 20 19:57:53 2012 -0400 + + radeon/kms: add TN pci ids + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit 55d65fcf33eb383e3fbc7a1d469ab68a70a7ab37 +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Tue Mar 20 19:54:57 2012 -0400 + + radeon/kms: add support for TN (trinity) APUs + + - KMS only + - Includes full EXA/Xv support + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit b5cf9bd693cf4090956add4c33c4fae9c3069a03 +Author: Marek Olšák <maraeo@gmail.com> +Date: Wed Mar 7 11:01:40 2012 -0500 + + r6xx: initialize SX_MISC + + If Mesa set it to 1, the DDX would not render anything = the monitor would + basically freeze. + + agd5f: update emit count as well. + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit 355dc4295912c153f5333421594fa90aa119a056 +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Tue Mar 6 15:52:40 2012 +0100 + + DRI2: Unreference buffers immediately when event wait info is invalidated. + + Deferring this could result in trying to unreference buffers from a previous + server generation, i.e. accessing freed memory. + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + Tested-by: Christian König <Christian.koenig@amd.com> + +commit fe51469b2e02e4d565050bab077985270fb58a9b +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Tue Mar 6 15:52:40 2012 +0100 + + Re-register DRM FD wakeup handler for each server generation. + + Fixes hang when trying to use DRI2 swap scheduling after a server reset. + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + Tested-by: Christian König <Christian.koenig@amd.com> + +commit 878454ae8d8e96dd27a19d0b30940d014c4cd7e2 +Author: Hans Verkuil <hverkuil@xs4all.nl> +Date: Fri Feb 24 09:35:39 2012 -0500 + + Fix ConnectorTable crash in radeon_output.c + + The sam440ep PPC board requires a ConnectorTable xorg.conf option, but putting + in that option causes the radeon driver to crash. I finally traced it to a + copy-and-paste bug in radeon_output.c as a result of a major rework in commit + 82f12e5a40c1fbcb91910a0f8b725c34fff02aae. + + The actual crash occurred in RADEONPrintPortMap(). + + Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit 688c8a54a00b01e73a11970ad2abe858f8c7c5c4 +Author: Roland Scheidegger <rscheidegger_lists@hispeed.ch> +Date: Sat Feb 18 21:12:34 2012 +0100 + + radeon: avoid rounding errors in texture coords for textured xv + + make sure the division is done with floats, otherwise the coordinate + can be wrong up to 1 texel. + Particularly visible with clipping and small source scaled up (since one + texel can be a shift of several pixels) but could be seen even unscaled. + Should provide more accurate coords without clipping too depending on the + scale factor probably. + Changed for r100-r600, though only tested on r300. + +commit 2778b56252124ef6f636a493d2e1457b43911c37 +Author: Jerome Glisse <jglisse@redhat.com> +Date: Mon Feb 13 20:42:57 2012 -0500 + + radeon: r6xx-eg use linear general when using scratch bo + + In path where we need to use scratch bo as temporary area, + consider it as linear buffer. Not linear aligned. Fix some + case such as in bugs: + + https://bugs.freedesktop.org/show_bug.cgi?id=45827 + + Signed-off-by: Jerome Glisse <jglisse@redhat.com> + +commit c66ae235700f5efe64eb168327551b8f1d153c9c +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Mon Feb 13 10:43:58 2012 +0100 + + Handle new xorg_list API. + + Fixes https://bugs.freedesktop.org/show_bug.cgi?id=45937 + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + +commit 7ff277e22c629308915307bbee96eb25ff77f8b9 +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Fri Feb 10 13:04:59 2012 -0500 + + radeon: fix crash in drmmode_create_bo_pixmap() + + Only init surface on r6xx+. Return NULL rather than + FALSE. + + Fixes: + https://bugs.freedesktop.org/show_bug.cgi?id=45829 + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit 60b949f34df5db05e0e102cc3daa33469aa50cfc +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Fri Feb 10 13:11:26 2012 -0500 + + radeon/kms: reusing fd message is not an error + + It's standard behavior. + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit e20284409937d784847339b5d466a95012d85940 +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Fri Feb 3 12:21:59 2012 +0100 + + EXA/r6xx+: Only set write domain or read domains, not both. (Bug #43893) + + Avoids an accounting bug in libdrm_radeon 2.4.31 or older. + + See https://bugs.freedesktop.org/show_bug.cgi?id=43893 + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + +commit 5a7f64c5170ca424c9dca739662018e30df13413 +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Wed Feb 8 11:35:35 2012 +0100 + + Fix UMS build failure. + + And some UMS specific warnings. + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + +commit 87f776b966f4200c97a989536d4b71822ae4c0b3 +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Wed Feb 8 11:10:27 2012 +0100 + + Remove unused local variable 'height'. + + Pointed out by gcc -Wunused-variable. + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + +commit f63262e2f112a348c45f0dcecd891c8b6d9c5ee8 +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Wed Feb 8 10:28:45 2012 +0100 + + evergreen: Initialize source surface member for textured video. + + Fixes crash reported by Ole Salscheider on IRC. + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + +commit c8f104d38870f14049402bbc14f662c151caeeef +Author: Jerome Glisse <jglisse@redhat.com> +Date: Tue Feb 7 15:04:37 2012 -0500 + + radeon: fix tiling for weird resolution + + Should also fix xv for some case. + + Signed-off-by: Jerome Glisse <jglisse@redhat.com> + +commit 615033f2b5e3817e335e9d022fc9fdcf8ac8b11a +Author: Jerome Glisse <jglisse@redhat.com> +Date: Tue Dec 13 11:08:19 2011 -0500 + + r600-evergreen: use common surface allocator for tiling v11 + + Use libdrm common surface code so mesa,ddx have same idea + about tiling surface and what their pitch should be and + the alignment constraint. + + v2 fix remaining issue add new option to conditionaly enable + v3 fix fbcon copy and r600 exa copy path + v4 fix non tiled path 2D tiling on GPU >= R600, set it to false + as default + v5 adapt to pixel/element size split of libdrm/radeon + v6 update to properly handle falling back to 1d tiled + v6 final fix to tile split value on evergreen and newer + v7 fix default array mode on r6xx, fix height alignment issue + on evergreen + v8 fix tile split value + v9 add stencil tile split support, simplify dri2 for stencil + with evergreen + v10 Try to fix xv path regarding tiling. Adapt to libdrm API + change. Try to fix case where there is no surface which + means non tiled bo. + v11 check for proper libdrm + + Signed-off-by: Jerome Glisse <jglisse@redhat.com> + +commit 36c190671081967bac6fff48aaf66d67b639a48c +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Wed Feb 1 13:21:02 2012 +0100 + + Fix vline range calculations. + + The range passed in is in pixmap coordinates, so the CRTC offset needs to be + added to the clamping limits and subtracted from the clamped range for + pre-AVIVO display engines. + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + Reviewed-by: Alex Deucher <alexander.deucher@amd.com> + +commit bb0e1531ac6949d38025d7dcb19234fee33b2acf +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Wed Feb 1 13:07:11 2012 +0100 + + Check for empty vline ranges after clamping. + + The clamping could turn a previously non-empty range into an empty one. + + Also, start == stop means the range is empty. + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + Reviewed-by: Alex Deucher <alexander.deucher@amd.com> + +commit 13b3aed4ef9afbcbaea1dcf0ed1acb162b240a3f +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Tue Jan 10 09:35:09 2012 -0500 + + EXA/r6xx+: fix rop setting for overlapping copies + + Need to use GXCopy for the src to temp copy, then + the original rop for the temp to dest copy. + + Noticed by: Frank Huang + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit eb6d769a087b2ed5952f477fc3f0b0625810a287 +Author: Egbert Eich <eich@suse.de> +Date: Tue Nov 15 18:50:56 2011 +0100 + + DPMS: Split non-modeset CRTC DPMS function. + + RADEONRestore() calls crtc->funcs->dpms() after most of the mode setting + subsystems have been restored. This function enables the CRTCs but does + more: it calls DRM pre- and post-modeset ioctls and sets up the palettes + (LUTs). + None of these two things are needed. Accessing the palette registers after + restoring the PLLs can even lead to lockups. + Thus the CRTC DPMS function is split into two parts: one that just enables + /disables the CRTC and one which wraps this function and does the rest. + Now the inner function can be called directly from RADEONRestore() as + there is no need to go thru the RandR hooks in this function while the + RandR hook uses the wrappering function so the full functionality is + preserved from an RandR point of view. + + Signed-off-by: Egbert Eich <eich@freedesktop.org> + Reviewed-by: Alex Deucher <alexdeucher@gmail.com> + +commit ac51e331895b216d288bc7bd108a38b362214668 +Author: Egbert Eich <eich@suse.de> +Date: Mon Nov 14 19:10:01 2011 +0100 + + UMS: Fix lockups in palette save/restore on pre-AVIVO chips. + + The reintroduction of palette save/restore in 5efdf514 causes some + pre-AVIVO chips to lock up. An investigation revealed that accessing + palette registers when the associated PLL is not running is causing + this. With UMS the PLL setup that is saved has been done by the BIOS + typically. + A similar issue was observed when VGA palette save/restore had + been reinitroduced with 80eee856: + http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=480312 + and has been worked around for Linux without further investigation + by 87e66ce7. + To fix the issue we now + a. introduce 'on-demand' palette saving (ie the palette is + saved before it is first altered). This guarantees that + the palette register are only associated when the associated + CRTC is active and thus the PLLs are powered up and running. + b. move palette restore before PLL restore. + c. eliminate generic VGA palette save/restore which seems to be + unneeded when the palette is restored natively. + It is believed that this caused the behavior described in + https://bugs.freedesktop.org/show_bug.cgi?id=18407#c27 + + Signed-off-by: Egbert Eich <eich@freedesktop.org> + Reviewed-by: Alex Deucher <alexdeucher@gmail.com> + +commit 0a8d04eeac95f4db9d03ee31070bd825a7feb0b2 +Author: Matthieu Herrb <matthieu.herrb@laas.fr> +Date: Sun Jan 1 18:27:54 2012 +0100 + + Update for new vgaHW API. + + Signed-off-by: Matthieu Herrb <matthieu.herrb@laas.fr> + Reviewed-by: Mark Kettenis <kettenis@openbsd.org> + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit ae45d7e6d8e6844cd4586c9ee97c21b257fa788f +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Wed Dec 28 11:48:36 2011 +0100 + + DRI2: Can't use page flipping for pixmaps. (bug #42913) + + Fixes https://bugs.freedesktop.org/show_bug.cgi?id=42913 . + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + +commit aacbd629b02cbee3f9e6a0ee452b4e3f21376bd3 +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Mon Dec 12 09:32:30 2011 -0500 + + radeon: add some new pci ids + + fixes: + https://bugs.freedesktop.org/show_bug.cgi?id=43739 + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit bc54e415e2fd344939c5c788ea0686133a7e2c69 +Author: Dave Airlie <airlied@redhat.com> +Date: Tue Dec 6 15:47:45 2011 +0000 + + radeon: add original radeon to always tiled. + + and actually enable it for M7, previous commit only did one function. + + Signed-off-by: Dave Airlie <airlied@redhat.com> + +commit ba46c7b0cf72d157748981eb3224d5eefb6200aa +Author: Dave Airlie <airlied@redhat.com> +Date: Tue Dec 6 13:42:49 2011 +0000 + + radeon: refine always tiled depth check + + So it appears the M7 family always tiles its depth buffer also. + + Signed-off-by: Dave Airlie <airlied@redhat.com> + +commit 98b2d5fe1722a43c4bbe7711ed7180a3fb65305f +Author: Dave Airlie <airlied@redhat.com> +Date: Mon Dec 5 18:44:28 2011 +0000 + + radeon: r200 depth buffers are always tiled + + When we do the allocations we need to make sure the always tiled + nature is taken into account. + + Signed-off-by: Dave Airlie <airlied@redhat.com> + +commit 7dcefc69d9fbceae27cd03083c815e01a19b527e +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Mon Dec 5 09:21:48 2011 -0500 + + Xv: Evergreen+ asics support 16k surfaces + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit 72e386d42516e7cd3c2cbf2fffc9174cd3ec8451 +Author: Alex Deucher <alexander.deucher@amd.com> +Date: Wed Nov 30 19:38:35 2011 -0500 + + radeon: add some new pci ids + + Signed-off-by: Alex Deucher <alexander.deucher@amd.com> + +commit 3853c3020d05175ae180b9a188dec7c425bdd0b8 +Author: Dave Airlie <airlied@redhat.com> +Date: Mon Nov 28 18:38:30 2011 +0000 + + fixup xinerama since 9151f3b1c2ebcc34e63195888ba696f2183ba5e2 + + since the driver would call RRFirstOutput without checking if randr has + been enabled, and it would crash in privates code. + + reported by vereteran on #radeon + + Signed-off-by: Dave Airlie <airlied@redhat.com> + Acked-on-irc-by: Michel Dänzer <michel.daenzer@amd.com> + +commit d669c34f140c000f88c4b4e464e44e6c8694f581 +Author: Benjamin Herrenschmidt <benh@kernel.crashing.org> +Date: Mon Nov 21 11:35:40 2011 +1100 + + ddx/evergreen: Fix endian of ALU constants + + The constants are written directly into a buffer object shared with the + card and we "forget" to swap them. This patch fixes it by doing the swap + in evergreen_set_alu_consts() in-place (ie, it modifies the buffer), + which should be fine with the way we use it in the ddx. + + This makes everything work fine on my caicos card on a G5 including some + quik tests with Xv, gnome3 shell, etc... + + Thanks a lot to Jerome Glisse for holding my hand through debugging that + (and finding the actual bug). + + Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit 422bdd4fe6cb728e1dd08a56f6ee2d0f009cbfcb +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Mon Nov 14 09:39:16 2011 -0500 + + radeon: add missing FireMV pci id + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit 534fb6e413a909a9d1afd57d1c711844b7c5ddf4 +Author: Dave Airlie <airlied@redhat.com> +Date: Fri Nov 11 10:26:51 2011 +0000 + + ati: enable bg none when fbcon succeeds and we are built against ABI after 10. + + One less patch to keep carrying in Fedora. + + Signed-off-by: Dave Airlie <airlied@redhat.com> + +commit 89452c08048c98fb5cc3dc551b3824be40d52cf2 +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Tue Nov 8 11:23:11 2011 +0100 + + UMS: Guard references to PCITAG / pciTag with XSERVER_LIBPCIACCESS (bug #42690) + + Should fix https://bugs.freedesktop.org/show_bug.cgi?id=42690 . + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + +commit 5ec34ed95948f7164184551615c1fc4c3eef3b98 +Author: Ilija Hadzic <ihadzic@research.bell-labs.com> +Date: Thu Nov 3 20:16:47 2011 -0400 + + DRI/DRI2: remove hard-coded limitation to 6 crtcs + + DRM's hard limit to the number of CRTCs is 32. ATI DDX unnecessarily + clips this limit to 6 by hard coding initial assumption for + output->possible_crtcs mask to 0x7f (before it gets trimmed down to + what's really possible for a given output) and by allocating only 6 + entries for for cursor_bo[] array in RADEONInfoRec. + + Fix this and thus allow the ATI DDX to deal with as many CRTCs + as the DRM allows (32), so it is ready if anything with >6 CRTCs + comes out. + + Signed-off-by: Ilija Hadzic <ihadzic@research.bell-labs.com> + +commit 4853ab2cdc3b97948c7cd69eaf4fff54f59774fc +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Fri Nov 4 12:15:53 2011 +0100 + + Turn compile time check into runtime check. + + Signed-off-by: Michel Dänzer <michel.daenzer@amd.com> + +commit bcdb54fe16ebf2e239b84eebf20e8adfe5094bff +Author: Alex Deucher <alexdeucher@gmail.com> +Date: Thu Oct 20 11:11:35 2011 -0400 + + check for xserver 1.9.4.901 to enable tiling by default + + Previous xservers had a bug in the EXA code which caused + display corruption in some cases. + + See: + https://bugs.freedesktop.org/show_bug.cgi?id=33929 + + Signed-off-by: Alex Deucher <alexdeucher@gmail.com> + +commit edde94cba5321e6e51e7fd4d79dde5abc4944495 +Author: Michel Dänzer <michel.daenzer@amd.com> +Date: Wed Nov 2 13:40:05 2011 +0100 + + Bump version post release. + commit 93459f842c2d8dc178a1954b8e05150fcb96ac9a Author: Michel Dänzer <michel.daenzer@amd.com> Date: Wed Nov 2 12:51:15 2011 +0100 diff --git a/driver/xf86-video-ati/aclocal.m4 b/driver/xf86-video-ati/aclocal.m4 index 3b748b031..d208a143a 100644 --- a/driver/xf86-video-ati/aclocal.m4 +++ b/driver/xf86-video-ati/aclocal.m4 @@ -9637,7 +9637,7 @@ dnl DEALINGS IN THE SOFTWARE. # See the "minimum version" comment for each macro you use to see what # version you require. m4_defun([XORG_MACROS_VERSION],[ -m4_define([vers_have], [1.16.0]) +m4_define([vers_have], [1.16.2]) m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.]))) m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.]))) m4_if(m4_cmp(maj_have, maj_needed), 0,, @@ -10656,6 +10656,39 @@ AC_MSG_CHECKING([whether to build unit test cases]) AC_MSG_RESULT([$enable_unit_tests]) ]) # XORG_ENABLE_UNIT_TESTS +# XORG_ENABLE_INTEGRATION_TESTS (enable_unit_tests=auto) +# ------------------------------------------------------ +# Minimum version: 1.17.0 +# +# This macro enables a builder to enable/disable integration testing +# It makes no assumption about the test cases' implementation +# Test cases may or may not use Automake "Support for test suites" +# +# Please see XORG_ENABLE_UNIT_TESTS for unit test support. Unit test support +# usually requires less dependencies and may be built and run under less +# stringent environments than integration tests. +# +# Interface to module: +# ENABLE_INTEGRATION_TESTS: used in makefiles to conditionally build tests +# enable_integration_tests: used in configure.ac for additional configuration +# --enable-integration-tests: 'yes' user instructs the module to build tests +# 'no' user instructs the module not to build tests +# parm1: specify the default value, yes or no. +# +AC_DEFUN([XORG_ENABLE_INTEGRATION_TESTS],[ +AC_REQUIRE([XORG_MEMORY_CHECK_FLAGS]) +m4_define([_defopt], m4_default([$1], [auto])) +AC_ARG_ENABLE(integration-tests, AS_HELP_STRING([--enable-integration-tests], + [Enable building integration test cases (default: ]_defopt[)]), + [enable_integration_tests=$enableval], + [enable_integration_tests=]_defopt) +m4_undefine([_defopt]) +AM_CONDITIONAL([ENABLE_INTEGRATION_TESTS], + [test "x$enable_integration_tests" != xno]) +AC_MSG_CHECKING([whether to build unit test cases]) +AC_MSG_RESULT([$enable_integration_tests]) +]) # XORG_ENABLE_INTEGRATION_TESTS + # XORG_WITH_GLIB([MIN-VERSION], [DEFAULT]) # ---------------------------------------- # Minimum version: 1.13.0 @@ -10666,6 +10699,10 @@ AC_MSG_RESULT([$enable_unit_tests]) # When used with ENABLE_UNIT_TESTS, it is assumed GLib is used for unit testing. # Otherwise the value of $enable_unit_tests is blank. # +# Please see XORG_ENABLE_INTEGRATION_TESTS for integration test support. Unit +# test support usually requires less dependencies and may be built and run under +# less stringent environments than integration tests. +# # Interface to module: # HAVE_GLIB: used in makefiles to conditionally build targets # with_glib: used in configure.ac to know if GLib has been found @@ -11024,12 +11061,20 @@ AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno]) # # Checks for various brands of compilers and sets flags as appropriate: # GNU gcc - relies on AC_PROG_CC (via AC_PROG_CC_C99) to set GCC to "yes" +# GNU g++ - relies on AC_PROG_CXX to set GXX to "yes" # clang compiler - sets CLANGCC to "yes" # Intel compiler - sets INTELCC to "yes" # Sun/Oracle Solaris Studio cc - sets SUNCC to "yes" # AC_DEFUN([XORG_COMPILER_BRAND], [ -AC_REQUIRE([AC_PROG_CC_C99]) +AC_LANG_CASE( + [C], [ + AC_REQUIRE([AC_PROG_CC_C99]) + ], + [C++], [ + AC_REQUIRE([AC_PROG_CXX]) + ] +) AC_CHECK_DECL([__clang__], [CLANGCC="yes"], [CLANGCC="no"]) AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"]) AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) @@ -11049,54 +11094,77 @@ AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) # -Werror=unused-command-line-argument # AC_DEFUN([XORG_TESTSET_CFLAG], [ -AC_REQUIRE([AC_PROG_CC_C99]) m4_if([$#], 0, [m4_fatal([XORG_TESTSET_CFLAG was given with an unsupported number of arguments])]) m4_if([$#], 1, [m4_fatal([XORG_TESTSET_CFLAG was given with an unsupported number of arguments])]) -xorg_testset_save_CFLAGS="$CFLAGS" +AC_LANG_COMPILER_REQUIRE + +AC_LANG_CASE( + [C], [ + AC_REQUIRE([AC_PROG_CC_C99]) + define([PREFIX], [C]) + define([CACHE_PREFIX], [cc]) + define([COMPILER], [$CC]) + ], + [C++], [ + define([PREFIX], [CXX]) + define([CACHE_PREFIX], [cxx]) + define([COMPILER], [$CXX]) + ] +) -if test "x$xorg_testset_unknown_warning_option" = "x" ; then - CFLAGS="$CFLAGS -Werror=unknown-warning-option" - AC_MSG_CHECKING([if $CC supports -Werror=unknown-warning-option]) - AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])], - [xorg_testset_unknown_warning_option=yes], - [xorg_testset_unknown_warning_option=no]) - AC_MSG_RESULT([$xorg_testset_unknown_warning_option]) - CFLAGS="$xorg_testset_save_CFLAGS" +[xorg_testset_save_]PREFIX[FLAGS]="$PREFIX[FLAGS]" + +if test "x$[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]" = "x" ; then + PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option" + AC_CACHE_CHECK([if ]COMPILER[ supports -Werror=unknown-warning-option], + [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option], + AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])], + [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option=yes], + [xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option=no])) + [xorg_testset_]CACHE_PREFIX[_unknown_warning_option]=$[xorg_cv_]CACHE_PREFIX[_flag_unknown_warning_option] + PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then - CFLAGS="$CFLAGS -Werror=unknown-warning-option" +if test "x$[xorg_testset_]CACHE_PREFIX[_unused_command_line_argument]" = "x" ; then + if test "x$[xorg_testset_]CACHE_PREFIX[_unknown_warning_option]" = "xyes" ; then + PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option" fi - CFLAGS="$CFLAGS -Werror=unused-command-line-argument" - AC_MSG_CHECKING([if $CC supports -Werror=unused-command-line-argument]) - AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])], - [xorg_testset_unused_command_line_argument=yes], - [xorg_testset_unused_command_line_argument=no]) - AC_MSG_RESULT([$xorg_testset_unused_command_line_argument]) - CFLAGS="$xorg_testset_save_CFLAGS" + PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unused-command-line-argument" + AC_CACHE_CHECK([if ]COMPILER[ supports -Werror=unused-command-line-argument], + [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument], + AC_COMPILE_IFELSE([AC_LANG_SOURCE([int i;])], + [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument=yes], + [xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument=no])) + [xorg_testset_]CACHE_PREFIX[_unused_command_line_argument]=$[xorg_cv_]CACHE_PREFIX[_flag_unused_command_line_argument] + PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]" fi found="no" m4_foreach([flag], m4_cdr($@), [ if test $found = "no" ; then if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then - CFLAGS="$CFLAGS -Werror=unknown-warning-option" + PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unknown-warning-option" fi if test "x$xorg_testset_unused_command_line_argument" = "xyes" ; then - CFLAGS="$CFLAGS -Werror=unused-command-line-argument" + PREFIX[FLAGS]="$PREFIX[FLAGS] -Werror=unused-command-line-argument" fi - CFLAGS="$CFLAGS ]flag[" + PREFIX[FLAGS]="$PREFIX[FLAGS] ]flag[" - AC_MSG_CHECKING([if $CC supports ]flag[]) - AC_LINK_IFELSE([AC_LANG_PROGRAM([int i;])], - [supported=yes], [supported=no]) - AC_MSG_RESULT([$supported]) - CFLAGS="$xorg_testset_save_CFLAGS" +dnl Some hackery here since AC_CACHE_VAL can't handle a non-literal varname + AC_MSG_CHECKING([if ]COMPILER[ supports]flag[]) + cacheid=AS_TR_SH([xorg_cv_]CACHE_PREFIX[_flag_]flag[]) + AC_CACHE_VAL($cacheid, + [AC_LINK_IFELSE([AC_LANG_PROGRAM([int i;])], + [eval $cacheid=yes], + [eval $cacheid=no])]) + PREFIX[FLAGS]="$[xorg_testset_save_]PREFIX[FLAGS]" + + eval supported=\$$cacheid + AC_MSG_RESULT([$supported]) if test "$supported" = "yes" ; then $1="$$1 ]flag[" found="yes" @@ -11109,13 +11177,13 @@ m4_foreach([flag], m4_cdr($@), [ # --------------- # Minimum version: 1.16.0 # -# Defines BASE_CFLAGS to contain a set of command line arguments supported -# by the selected compiler which do NOT alter the generated code. These -# arguments will cause the compiler to print various warnings during -# compilation AND turn a conservative set of warnings into errors. +# Defines BASE_CFLAGS or BASE_CXXFLAGS to contain a set of command line +# arguments supported by the selected compiler which do NOT alter the generated +# code. These arguments will cause the compiler to print various warnings +# during compilation AND turn a conservative set of warnings into errors. # -# The set of flags supported by BASE_CFLAGS will grow in future -# versions of util-macros as options are added to new compilers. +# The set of flags supported by BASE_CFLAGS and BASE_CXXFLAGS will grow in +# future versions of util-macros as options are added to new compilers. # AC_DEFUN([XORG_COMPILER_FLAGS], [ AC_REQUIRE([XORG_COMPILER_BRAND]) @@ -11126,76 +11194,89 @@ AC_ARG_ENABLE(selective-werror, [SELECTIVE_WERROR=$enableval], [SELECTIVE_WERROR=yes]) +AC_LANG_CASE( + [C], [ + define([PREFIX], [C]) + ], + [C++], [ + define([PREFIX], [CXX]) + ] +) # -v is too short to test reliably with XORG_TESTSET_CFLAG if test "x$SUNCC" = "xyes"; then - BASE_CFLAGS="-v" + [BASE_]PREFIX[FLAGS]="-v" else - BASE_CFLAGS="" + [BASE_]PREFIX[FLAGS]="" fi # This chunk of warnings were those that existed in the legacy CWARNFLAGS -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wall]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wpointer-arith]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wstrict-prototypes]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wmissing-prototypes]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wmissing-declarations]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wnested-externs]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wbad-function-cast]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wformat=2], [-Wformat]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wold-style-definition]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wdeclaration-after-statement]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wall]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wpointer-arith]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-declarations]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wformat=2], [-Wformat]) + +AC_LANG_CASE( + [C], [ + XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wstrict-prototypes]) + XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-prototypes]) + XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wnested-externs]) + XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wbad-function-cast]) + XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wold-style-definition]) + XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wdeclaration-after-statement]) + ] +) # This chunk adds additional warnings that could catch undesired effects. -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wunused]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wuninitialized]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wshadow]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wcast-qual]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wmissing-noreturn]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wmissing-format-attribute]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wredundant-decls]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wunused]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wuninitialized]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wshadow]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-qual]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-noreturn]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-format-attribute]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wredundant-decls]) # These are currently disabled because they are noisy. They will be enabled # in the future once the codebase is sufficiently modernized to silence # them. For now, I don't want them to drown out the other warnings. -# XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wlogical-op]) -# XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wparentheses]) -# XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wcast-align]) +# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wlogical-op]) +# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wparentheses]) +# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-align]) # Turn some warnings into errors, so we don't accidently get successful builds # when there are problems that should be fixed. if test "x$SELECTIVE_WERROR" = "xyes" ; then -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=implicit], [-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=nonnull]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=init-self]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=main]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=missing-braces]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=sequence-point]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=return-type], [-errwarn=E_FUNC_HAS_NO_RETURN_STMT]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=trigraphs]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=array-bounds]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=write-strings]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=address]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=int-to-pointer-cast], [-errwarn=E_BAD_PTR_INT_COMBINATION]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Werror=pointer-to-int-cast]) # Also -errwarn=E_BAD_PTR_INT_COMBINATION +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=implicit], [-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=nonnull]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=init-self]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=main]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=missing-braces]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=sequence-point]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=return-type], [-errwarn=E_FUNC_HAS_NO_RETURN_STMT]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=trigraphs]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=array-bounds]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=write-strings]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=address]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=int-to-pointer-cast], [-errwarn=E_BAD_PTR_INT_COMBINATION]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Werror=pointer-to-int-cast]) # Also -errwarn=E_BAD_PTR_INT_COMBINATION else AC_MSG_WARN([You have chosen not to turn some select compiler warnings into errors. This should not be necessary. Please report why you needed to do so in a bug report at $PACKAGE_BUGREPORT]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wimplicit]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wnonnull]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Winit-self]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wmain]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wmissing-braces]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wsequence-point]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wreturn-type]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wtrigraphs]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Warray-bounds]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wwrite-strings]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Waddress]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wint-to-pointer-cast]) -XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wpointer-to-int-cast]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wimplicit]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wnonnull]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Winit-self]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmain]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wmissing-braces]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wsequence-point]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wreturn-type]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wtrigraphs]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Warray-bounds]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wwrite-strings]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Waddress]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wint-to-pointer-cast]) +XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wpointer-to-int-cast]) fi -AC_SUBST([BASE_CFLAGS]) +AC_SUBST([BASE_]PREFIX[FLAGS]) ]) # XORG_COMPILER_FLAGS # XORG_CWARNFLAGS @@ -11213,11 +11294,15 @@ AC_SUBST([BASE_CFLAGS]) AC_DEFUN([XORG_CWARNFLAGS], [ AC_REQUIRE([XORG_COMPILER_FLAGS]) AC_REQUIRE([XORG_COMPILER_BRAND]) -CWARNFLAGS="$BASE_CFLAGS" -if test "x$GCC" = xyes ; then - CWARNFLAGS="$CWARNFLAGS -fno-strict-aliasing" -fi -AC_SUBST(CWARNFLAGS) +AC_LANG_CASE( + [C], [ + CWARNFLAGS="$BASE_CFLAGS" + if test "x$GCC" = xyes ; then + CWARNFLAGS="$CWARNFLAGS -fno-strict-aliasing" + fi + AC_SUBST(CWARNFLAGS) + ] +) ]) # XORG_CWARNFLAGS # XORG_STRICT_OPTION @@ -11227,7 +11312,7 @@ AC_SUBST(CWARNFLAGS) # Add configure option to enable strict compilation flags, such as treating # warnings as fatal errors. # If --enable-strict-compilation is passed to configure, adds strict flags to -# $BASE_CFLAGS and the deprecated $CWARNFLAGS. +# $BASE_CFLAGS or $BASE_CXXFLAGS and the deprecated $CWARNFLAGS. # # Starting in 1.14.0 also exports $STRICT_CFLAGS for use in other tests or # when strict compilation is unconditionally desired. @@ -11240,21 +11325,30 @@ AC_ARG_ENABLE(strict-compilation, [Enable all warnings from compiler and make them errors (default: disabled)]), [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no]) -STRICT_CFLAGS="" -XORG_TESTSET_CFLAG([STRICT_CFLAGS], [-pedantic]) -XORG_TESTSET_CFLAG([STRICT_CFLAGS], [-Werror], [-errwarn]) +AC_LANG_CASE( + [C], [ + define([PREFIX], [C]) + ], + [C++], [ + define([PREFIX], [CXX]) + ] +) + +[STRICT_]PREFIX[FLAGS]="" +XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-pedantic]) +XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-Werror], [-errwarn]) # Earlier versions of gcc (eg: 4.2) support -Werror=attributes, but do not # activate it with -Werror, so we add it here explicitly. -XORG_TESTSET_CFLAG([STRICT_CFLAGS], [-Werror=attributes]) +XORG_TESTSET_CFLAG([[STRICT_]PREFIX[FLAGS]], [-Werror=attributes]) if test "x$STRICT_COMPILE" = "xyes"; then - BASE_CFLAGS="$BASE_CFLAGS $STRICT_CFLAGS" - CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS" + [BASE_]PREFIX[FLAGS]="$[BASE_]PREFIX[FLAGS] $[STRICT_]PREFIX[FLAGS]" + AC_LANG_CASE([C], [CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS"]) fi -AC_SUBST([STRICT_CFLAGS]) -AC_SUBST([BASE_CFLAGS]) -AC_SUBST([CWARNFLAGS]) +AC_SUBST([STRICT_]PREFIX[FLAGS]) +AC_SUBST([BASE_]PREFIX[FLAGS]) +AC_LANG_CASE([C], AC_SUBST([CWARNFLAGS])) ]) # XORG_STRICT_OPTION # XORG_DEFAULT_OPTIONS diff --git a/driver/xf86-video-ati/config.h.in b/driver/xf86-video-ati/config.h.in index 74ceff764..e0b7d8c6f 100644 --- a/driver/xf86-video-ati/config.h.in +++ b/driver/xf86-video-ati/config.h.in @@ -62,6 +62,9 @@ /* Have xf86ModeBandwidth prototype */ #undef HAVE_XF86MODEBANDWIDTH +/* Have xorg_list API */ +#undef HAVE_XORG_LIST + /* Have xf86XVFillKeyHelperDrawable prototype */ #undef HAVE_XV_DRAWABLE_HELPER diff --git a/driver/xf86-video-ati/configure b/driver/xf86-video-ati/configure index 1da42edd2..4324f80b5 100644 --- a/driver/xf86-video-ati/configure +++ b/driver/xf86-video-ati/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.62 for xf86-video-ati 6.14.3. +# Generated by GNU Autoconf 2.62 for xf86-video-ati 6.14.4. # # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>. # @@ -616,8 +616,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='xf86-video-ati' PACKAGE_TARNAME='xf86-video-ati' -PACKAGE_VERSION='6.14.3' -PACKAGE_STRING='xf86-video-ati 6.14.3' +PACKAGE_VERSION='6.14.4' +PACKAGE_STRING='xf86-video-ati 6.14.4' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg' ac_unique_file="Makefile.am" @@ -1409,7 +1409,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xf86-video-ati 6.14.3 to adapt to many kinds of systems. +\`configure' configures xf86-video-ati 6.14.4 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1467,7 +1467,7 @@ _ACEOF cat <<\_ACEOF Program names: - --program-prefix=PREFIX prepend PREFIX to installed program names + --program-prefix=C prepend C to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names @@ -1479,7 +1479,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xf86-video-ati 6.14.3:";; + short | recursive ) echo "Configuration of xf86-video-ati 6.14.4:";; esac cat <<\_ACEOF @@ -1614,7 +1614,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xf86-video-ati configure 6.14.3 +xf86-video-ati configure 6.14.4 generated by GNU Autoconf 2.62 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1628,7 +1628,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xf86-video-ati $as_me 6.14.3, which was +It was created by xf86-video-ati $as_me 6.14.4, which was generated by GNU Autoconf 2.62. Invocation command line was $ $0 $@ @@ -3890,6 +3890,8 @@ done + + { $as_echo "$as_me:$LINENO: checking whether __clang__ is declared" >&5 $as_echo_n "checking whether __clang__ is declared... " >&6; } if test "${ac_cv_have_decl___clang__+set}" = set; then @@ -4355,6 +4357,9 @@ else fi + + + # -v is too short to test reliably with XORG_TESTSET_CFLAG if test "x$SUNCC" = "xyes"; then BASE_CFLAGS="-v" @@ -4368,13 +4373,24 @@ fi + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4400,28 +4416,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4447,17 +4468,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -4474,9 +4497,13 @@ found="no" CFLAGS="$CFLAGS -Wall" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wall" >&5 -$as_echo_n "checking if $CC supports -Wall... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wall" >&5 +$as_echo_n "checking if $CC supports-Wall... " >&6; } + cacheid=xorg_cv_cc_flag__Wall + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4512,21 +4539,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wall" found="yes" @@ -4539,13 +4570,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4571,28 +4613,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4618,17 +4665,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -4645,9 +4694,13 @@ found="no" CFLAGS="$CFLAGS -Wpointer-arith" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wpointer-arith" >&5 -$as_echo_n "checking if $CC supports -Wpointer-arith... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wpointer-arith" >&5 +$as_echo_n "checking if $CC supports-Wpointer-arith... " >&6; } + cacheid=xorg_cv_cc_flag__Wpointer_arith + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4683,21 +4736,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wpointer-arith" found="yes" @@ -4710,13 +4767,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4742,28 +4810,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4789,17 +4862,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -4814,11 +4889,15 @@ found="no" CFLAGS="$CFLAGS -Werror=unused-command-line-argument" fi - CFLAGS="$CFLAGS -Wstrict-prototypes" + CFLAGS="$CFLAGS -Wmissing-declarations" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wstrict-prototypes" >&5 -$as_echo_n "checking if $CC supports -Wstrict-prototypes... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wmissing-declarations" >&5 +$as_echo_n "checking if $CC supports-Wmissing-declarations... " >&6; } + cacheid=xorg_cv_cc_flag__Wmissing_declarations + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4854,23 +4933,27 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then - BASE_CFLAGS="$BASE_CFLAGS -Wstrict-prototypes" + BASE_CFLAGS="$BASE_CFLAGS -Wmissing-declarations" found="yes" fi fi @@ -4881,13 +4964,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4913,28 +5007,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -4960,17 +5059,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -4985,11 +5086,15 @@ found="no" CFLAGS="$CFLAGS -Werror=unused-command-line-argument" fi - CFLAGS="$CFLAGS -Wmissing-prototypes" + CFLAGS="$CFLAGS -Wformat=2" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wmissing-prototypes" >&5 -$as_echo_n "checking if $CC supports -Wmissing-prototypes... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wformat=2" >&5 +$as_echo_n "checking if $CC supports-Wformat=2... " >&6; } + cacheid=xorg_cv_cc_flag__Wformat_2 + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5025,23 +5130,105 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext +fi + + + CFLAGS="$xorg_testset_save_CFLAGS" + + eval supported=\$$cacheid { $as_echo "$as_me:$LINENO: result: $supported" >&5 $as_echo "$supported" >&6; } + if test "$supported" = "yes" ; then + BASE_CFLAGS="$BASE_CFLAGS -Wformat=2" + found="yes" + fi + fi + + if test $found = "no" ; then + if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then + CFLAGS="$CFLAGS -Werror=unknown-warning-option" + fi + + if test "x$xorg_testset_unused_command_line_argument" = "xyes" ; then + CFLAGS="$CFLAGS -Werror=unused-command-line-argument" + fi + + CFLAGS="$CFLAGS -Wformat" + + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wformat" >&5 +$as_echo_n "checking if $CC supports-Wformat... " >&6; } + cacheid=xorg_cv_cc_flag__Wformat + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +int i; +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + eval $cacheid=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + eval $cacheid=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then - BASE_CFLAGS="$BASE_CFLAGS -Wmissing-prototypes" + BASE_CFLAGS="$BASE_CFLAGS -Wformat" found="yes" fi fi @@ -5052,13 +5239,26 @@ $as_echo "$supported" >&6; } + + + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5084,28 +5284,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5131,17 +5336,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -5156,11 +5363,15 @@ found="no" CFLAGS="$CFLAGS -Werror=unused-command-line-argument" fi - CFLAGS="$CFLAGS -Wmissing-declarations" + CFLAGS="$CFLAGS -Wstrict-prototypes" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wmissing-declarations" >&5 -$as_echo_n "checking if $CC supports -Wmissing-declarations... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wstrict-prototypes" >&5 +$as_echo_n "checking if $CC supports-Wstrict-prototypes... " >&6; } + cacheid=xorg_cv_cc_flag__Wstrict_prototypes + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5196,23 +5407,27 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then - BASE_CFLAGS="$BASE_CFLAGS -Wmissing-declarations" + BASE_CFLAGS="$BASE_CFLAGS -Wstrict-prototypes" found="yes" fi fi @@ -5223,13 +5438,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5255,28 +5481,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5302,17 +5533,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -5327,11 +5560,15 @@ found="no" CFLAGS="$CFLAGS -Werror=unused-command-line-argument" fi - CFLAGS="$CFLAGS -Wnested-externs" + CFLAGS="$CFLAGS -Wmissing-prototypes" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wnested-externs" >&5 -$as_echo_n "checking if $CC supports -Wnested-externs... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wmissing-prototypes" >&5 +$as_echo_n "checking if $CC supports-Wmissing-prototypes... " >&6; } + cacheid=xorg_cv_cc_flag__Wmissing_prototypes + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5367,23 +5604,27 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then - BASE_CFLAGS="$BASE_CFLAGS -Wnested-externs" + BASE_CFLAGS="$BASE_CFLAGS -Wmissing-prototypes" found="yes" fi fi @@ -5394,13 +5635,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5426,28 +5678,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5473,17 +5730,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -5498,11 +5757,15 @@ found="no" CFLAGS="$CFLAGS -Werror=unused-command-line-argument" fi - CFLAGS="$CFLAGS -Wbad-function-cast" + CFLAGS="$CFLAGS -Wnested-externs" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wbad-function-cast" >&5 -$as_echo_n "checking if $CC supports -Wbad-function-cast... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wnested-externs" >&5 +$as_echo_n "checking if $CC supports-Wnested-externs... " >&6; } + cacheid=xorg_cv_cc_flag__Wnested_externs + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5538,23 +5801,27 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then - BASE_CFLAGS="$BASE_CFLAGS -Wbad-function-cast" + BASE_CFLAGS="$BASE_CFLAGS -Wnested-externs" found="yes" fi fi @@ -5565,13 +5832,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5597,28 +5875,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5644,17 +5927,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -5669,11 +5954,15 @@ found="no" CFLAGS="$CFLAGS -Werror=unused-command-line-argument" fi - CFLAGS="$CFLAGS -Wformat=2" + CFLAGS="$CFLAGS -Wbad-function-cast" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wformat=2" >&5 -$as_echo_n "checking if $CC supports -Wformat=2... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wbad-function-cast" >&5 +$as_echo_n "checking if $CC supports-Wbad-function-cast... " >&6; } + cacheid=xorg_cv_cc_flag__Wbad_function_cast + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5709,96 +5998,38 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then - BASE_CFLAGS="$BASE_CFLAGS -Wformat=2" + BASE_CFLAGS="$BASE_CFLAGS -Wbad-function-cast" found="yes" fi fi - if test $found = "no" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then - CFLAGS="$CFLAGS -Werror=unknown-warning-option" - fi - if test "x$xorg_testset_unused_command_line_argument" = "xyes" ; then - CFLAGS="$CFLAGS -Werror=unused-command-line-argument" - fi - CFLAGS="$CFLAGS -Wformat" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wformat" >&5 -$as_echo_n "checking if $CC supports -Wformat... " >&6; } - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -int i; -int -main () -{ - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - supported=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - supported=no -fi -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } - CFLAGS="$xorg_testset_save_CFLAGS" - if test "$supported" = "yes" ; then - BASE_CFLAGS="$BASE_CFLAGS -Wformat" - found="yes" - fi - fi @@ -5808,11 +6039,14 @@ $as_echo "$supported" >&6; } xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5838,28 +6072,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5885,17 +6124,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -5912,9 +6153,13 @@ found="no" CFLAGS="$CFLAGS -Wold-style-definition" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wold-style-definition" >&5 -$as_echo_n "checking if $CC supports -Wold-style-definition... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wold-style-definition" >&5 +$as_echo_n "checking if $CC supports-Wold-style-definition... " >&6; } + cacheid=xorg_cv_cc_flag__Wold_style_definition + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -5950,21 +6195,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wold-style-definition" found="yes" @@ -5977,13 +6226,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6009,28 +6269,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6056,17 +6321,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -6083,9 +6350,13 @@ found="no" CFLAGS="$CFLAGS -Wdeclaration-after-statement" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wdeclaration-after-statement" >&5 -$as_echo_n "checking if $CC supports -Wdeclaration-after-statement... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wdeclaration-after-statement" >&5 +$as_echo_n "checking if $CC supports-Wdeclaration-after-statement... " >&6; } + cacheid=xorg_cv_cc_flag__Wdeclaration_after_statement + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6121,21 +6392,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wdeclaration-after-statement" found="yes" @@ -6144,19 +6419,32 @@ $as_echo "$supported" >&6; } + + # This chunk adds additional warnings that could catch undesired effects. + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6182,28 +6470,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6229,17 +6522,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -6256,9 +6551,13 @@ found="no" CFLAGS="$CFLAGS -Wunused" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wunused" >&5 -$as_echo_n "checking if $CC supports -Wunused... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wunused" >&5 +$as_echo_n "checking if $CC supports-Wunused... " >&6; } + cacheid=xorg_cv_cc_flag__Wunused + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6294,21 +6593,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wunused" found="yes" @@ -6321,13 +6624,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6353,28 +6667,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6400,17 +6719,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -6427,9 +6748,13 @@ found="no" CFLAGS="$CFLAGS -Wuninitialized" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wuninitialized" >&5 -$as_echo_n "checking if $CC supports -Wuninitialized... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wuninitialized" >&5 +$as_echo_n "checking if $CC supports-Wuninitialized... " >&6; } + cacheid=xorg_cv_cc_flag__Wuninitialized + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6465,21 +6790,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wuninitialized" found="yes" @@ -6492,13 +6821,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6524,28 +6864,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6571,17 +6916,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -6598,9 +6945,13 @@ found="no" CFLAGS="$CFLAGS -Wshadow" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wshadow" >&5 -$as_echo_n "checking if $CC supports -Wshadow... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wshadow" >&5 +$as_echo_n "checking if $CC supports-Wshadow... " >&6; } + cacheid=xorg_cv_cc_flag__Wshadow + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6636,21 +6987,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wshadow" found="yes" @@ -6663,13 +7018,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6695,28 +7061,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6742,17 +7113,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -6769,9 +7142,13 @@ found="no" CFLAGS="$CFLAGS -Wcast-qual" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wcast-qual" >&5 -$as_echo_n "checking if $CC supports -Wcast-qual... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wcast-qual" >&5 +$as_echo_n "checking if $CC supports-Wcast-qual... " >&6; } + cacheid=xorg_cv_cc_flag__Wcast_qual + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6807,21 +7184,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wcast-qual" found="yes" @@ -6834,13 +7215,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6866,28 +7258,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6913,17 +7310,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -6940,9 +7339,13 @@ found="no" CFLAGS="$CFLAGS -Wmissing-noreturn" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wmissing-noreturn" >&5 -$as_echo_n "checking if $CC supports -Wmissing-noreturn... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wmissing-noreturn" >&5 +$as_echo_n "checking if $CC supports-Wmissing-noreturn... " >&6; } + cacheid=xorg_cv_cc_flag__Wmissing_noreturn + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -6978,21 +7381,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wmissing-noreturn" found="yes" @@ -7005,13 +7412,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7037,28 +7455,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7084,17 +7507,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -7111,9 +7536,13 @@ found="no" CFLAGS="$CFLAGS -Wmissing-format-attribute" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wmissing-format-attribute" >&5 -$as_echo_n "checking if $CC supports -Wmissing-format-attribute... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wmissing-format-attribute" >&5 +$as_echo_n "checking if $CC supports-Wmissing-format-attribute... " >&6; } + cacheid=xorg_cv_cc_flag__Wmissing_format_attribute + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7149,21 +7578,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wmissing-format-attribute" found="yes" @@ -7176,13 +7609,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7208,28 +7652,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7255,17 +7704,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -7282,9 +7733,13 @@ found="no" CFLAGS="$CFLAGS -Wredundant-decls" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wredundant-decls" >&5 -$as_echo_n "checking if $CC supports -Wredundant-decls... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wredundant-decls" >&5 +$as_echo_n "checking if $CC supports-Wredundant-decls... " >&6; } + cacheid=xorg_cv_cc_flag__Wredundant_decls + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7320,21 +7775,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wredundant-decls" found="yes" @@ -7346,9 +7805,9 @@ $as_echo "$supported" >&6; } # These are currently disabled because they are noisy. They will be enabled # in the future once the codebase is sufficiently modernized to silence # them. For now, I don't want them to drown out the other warnings. -# XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wlogical-op]) -# XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wparentheses]) -# XORG_TESTSET_CFLAG([BASE_CFLAGS], [-Wcast-align]) +# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wlogical-op]) +# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wparentheses]) +# XORG_TESTSET_CFLAG([[BASE_]PREFIX[FLAGS]], [-Wcast-align]) # Turn some warnings into errors, so we don't accidently get successful builds # when there are problems that should be fixed. @@ -7359,13 +7818,24 @@ if test "x$SELECTIVE_WERROR" = "xyes" ; then + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7391,28 +7861,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7438,17 +7913,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -7465,9 +7942,13 @@ found="no" CFLAGS="$CFLAGS -Werror=implicit" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=implicit" >&5 -$as_echo_n "checking if $CC supports -Werror=implicit... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=implicit" >&5 +$as_echo_n "checking if $CC supports-Werror=implicit... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_implicit + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7503,21 +7984,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=implicit" found="yes" @@ -7535,9 +8020,13 @@ $as_echo "$supported" >&6; } CFLAGS="$CFLAGS -errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED" - { $as_echo "$as_me:$LINENO: checking if $CC supports -errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED" >&5 -$as_echo_n "checking if $CC supports -errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED" >&5 +$as_echo_n "checking if $CC supports-errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED... " >&6; } + cacheid=xorg_cv_cc_flag__errwarn_E_NO_EXPLICIT_TYPE_GIVEN__errwarn_E_NO_IMPLICIT_DECL_ALLOWED + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7573,21 +8062,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -errwarn=E_NO_EXPLICIT_TYPE_GIVEN -errwarn=E_NO_IMPLICIT_DECL_ALLOWED" found="yes" @@ -7600,13 +8093,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7632,28 +8136,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7679,17 +8188,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -7706,9 +8217,13 @@ found="no" CFLAGS="$CFLAGS -Werror=nonnull" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=nonnull" >&5 -$as_echo_n "checking if $CC supports -Werror=nonnull... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=nonnull" >&5 +$as_echo_n "checking if $CC supports-Werror=nonnull... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_nonnull + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7744,21 +8259,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=nonnull" found="yes" @@ -7771,13 +8290,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7803,28 +8333,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7850,17 +8385,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -7877,9 +8414,13 @@ found="no" CFLAGS="$CFLAGS -Werror=init-self" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=init-self" >&5 -$as_echo_n "checking if $CC supports -Werror=init-self... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=init-self" >&5 +$as_echo_n "checking if $CC supports-Werror=init-self... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_init_self + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7915,21 +8456,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=init-self" found="yes" @@ -7942,13 +8487,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -7974,28 +8530,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8021,17 +8582,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -8048,9 +8611,13 @@ found="no" CFLAGS="$CFLAGS -Werror=main" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=main" >&5 -$as_echo_n "checking if $CC supports -Werror=main... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=main" >&5 +$as_echo_n "checking if $CC supports-Werror=main... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_main + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8086,21 +8653,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=main" found="yes" @@ -8113,13 +8684,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8145,28 +8727,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8192,17 +8779,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -8219,9 +8808,13 @@ found="no" CFLAGS="$CFLAGS -Werror=missing-braces" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=missing-braces" >&5 -$as_echo_n "checking if $CC supports -Werror=missing-braces... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=missing-braces" >&5 +$as_echo_n "checking if $CC supports-Werror=missing-braces... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_missing_braces + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8257,21 +8850,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=missing-braces" found="yes" @@ -8284,13 +8881,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8316,28 +8924,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8363,17 +8976,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -8390,9 +9005,13 @@ found="no" CFLAGS="$CFLAGS -Werror=sequence-point" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=sequence-point" >&5 -$as_echo_n "checking if $CC supports -Werror=sequence-point... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=sequence-point" >&5 +$as_echo_n "checking if $CC supports-Werror=sequence-point... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_sequence_point + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8428,21 +9047,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=sequence-point" found="yes" @@ -8455,13 +9078,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8487,28 +9121,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8534,17 +9173,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -8561,9 +9202,13 @@ found="no" CFLAGS="$CFLAGS -Werror=return-type" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=return-type" >&5 -$as_echo_n "checking if $CC supports -Werror=return-type... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=return-type" >&5 +$as_echo_n "checking if $CC supports-Werror=return-type... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_return_type + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8599,21 +9244,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=return-type" found="yes" @@ -8631,9 +9280,13 @@ $as_echo "$supported" >&6; } CFLAGS="$CFLAGS -errwarn=E_FUNC_HAS_NO_RETURN_STMT" - { $as_echo "$as_me:$LINENO: checking if $CC supports -errwarn=E_FUNC_HAS_NO_RETURN_STMT" >&5 -$as_echo_n "checking if $CC supports -errwarn=E_FUNC_HAS_NO_RETURN_STMT... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-errwarn=E_FUNC_HAS_NO_RETURN_STMT" >&5 +$as_echo_n "checking if $CC supports-errwarn=E_FUNC_HAS_NO_RETURN_STMT... " >&6; } + cacheid=xorg_cv_cc_flag__errwarn_E_FUNC_HAS_NO_RETURN_STMT + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8669,21 +9322,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -errwarn=E_FUNC_HAS_NO_RETURN_STMT" found="yes" @@ -8696,13 +9353,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8728,28 +9396,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8775,17 +9448,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -8802,9 +9477,13 @@ found="no" CFLAGS="$CFLAGS -Werror=trigraphs" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=trigraphs" >&5 -$as_echo_n "checking if $CC supports -Werror=trigraphs... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=trigraphs" >&5 +$as_echo_n "checking if $CC supports-Werror=trigraphs... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_trigraphs + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8840,21 +9519,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=trigraphs" found="yes" @@ -8867,13 +9550,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8899,28 +9593,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -8946,17 +9645,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -8973,9 +9674,13 @@ found="no" CFLAGS="$CFLAGS -Werror=array-bounds" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=array-bounds" >&5 -$as_echo_n "checking if $CC supports -Werror=array-bounds... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=array-bounds" >&5 +$as_echo_n "checking if $CC supports-Werror=array-bounds... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_array_bounds + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9011,21 +9716,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=array-bounds" found="yes" @@ -9038,13 +9747,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9070,28 +9790,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9117,17 +9842,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -9144,9 +9871,13 @@ found="no" CFLAGS="$CFLAGS -Werror=write-strings" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=write-strings" >&5 -$as_echo_n "checking if $CC supports -Werror=write-strings... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=write-strings" >&5 +$as_echo_n "checking if $CC supports-Werror=write-strings... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_write_strings + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9182,21 +9913,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=write-strings" found="yes" @@ -9209,13 +9944,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9241,28 +9987,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9288,17 +10039,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -9315,9 +10068,13 @@ found="no" CFLAGS="$CFLAGS -Werror=address" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=address" >&5 -$as_echo_n "checking if $CC supports -Werror=address... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=address" >&5 +$as_echo_n "checking if $CC supports-Werror=address... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_address + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9353,21 +10110,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=address" found="yes" @@ -9380,13 +10141,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9412,28 +10184,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9459,17 +10236,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -9486,9 +10265,13 @@ found="no" CFLAGS="$CFLAGS -Werror=int-to-pointer-cast" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=int-to-pointer-cast" >&5 -$as_echo_n "checking if $CC supports -Werror=int-to-pointer-cast... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=int-to-pointer-cast" >&5 +$as_echo_n "checking if $CC supports-Werror=int-to-pointer-cast... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_int_to_pointer_cast + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9524,21 +10307,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=int-to-pointer-cast" found="yes" @@ -9556,9 +10343,13 @@ $as_echo "$supported" >&6; } CFLAGS="$CFLAGS -errwarn=E_BAD_PTR_INT_COMBINATION" - { $as_echo "$as_me:$LINENO: checking if $CC supports -errwarn=E_BAD_PTR_INT_COMBINATION" >&5 -$as_echo_n "checking if $CC supports -errwarn=E_BAD_PTR_INT_COMBINATION... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-errwarn=E_BAD_PTR_INT_COMBINATION" >&5 +$as_echo_n "checking if $CC supports-errwarn=E_BAD_PTR_INT_COMBINATION... " >&6; } + cacheid=xorg_cv_cc_flag__errwarn_E_BAD_PTR_INT_COMBINATION + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9594,21 +10385,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -errwarn=E_BAD_PTR_INT_COMBINATION" found="yes" @@ -9621,13 +10416,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9653,28 +10459,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9700,17 +10511,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -9727,9 +10540,13 @@ found="no" CFLAGS="$CFLAGS -Werror=pointer-to-int-cast" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=pointer-to-int-cast" >&5 -$as_echo_n "checking if $CC supports -Werror=pointer-to-int-cast... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=pointer-to-int-cast" >&5 +$as_echo_n "checking if $CC supports-Werror=pointer-to-int-cast... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_pointer_to_int_cast + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9765,21 +10582,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Werror=pointer-to-int-cast" found="yes" @@ -9795,13 +10616,24 @@ $as_echo "$as_me: WARNING: You have chosen not to turn some select compiler warn + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9827,28 +10659,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9874,17 +10711,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -9901,9 +10740,13 @@ found="no" CFLAGS="$CFLAGS -Wimplicit" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wimplicit" >&5 -$as_echo_n "checking if $CC supports -Wimplicit... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wimplicit" >&5 +$as_echo_n "checking if $CC supports-Wimplicit... " >&6; } + cacheid=xorg_cv_cc_flag__Wimplicit + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9939,21 +10782,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wimplicit" found="yes" @@ -9966,13 +10813,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -9998,28 +10856,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10045,17 +10908,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -10072,9 +10937,13 @@ found="no" CFLAGS="$CFLAGS -Wnonnull" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wnonnull" >&5 -$as_echo_n "checking if $CC supports -Wnonnull... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wnonnull" >&5 +$as_echo_n "checking if $CC supports-Wnonnull... " >&6; } + cacheid=xorg_cv_cc_flag__Wnonnull + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10110,21 +10979,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wnonnull" found="yes" @@ -10137,13 +11010,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10169,28 +11053,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10216,17 +11105,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -10243,9 +11134,13 @@ found="no" CFLAGS="$CFLAGS -Winit-self" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Winit-self" >&5 -$as_echo_n "checking if $CC supports -Winit-self... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Winit-self" >&5 +$as_echo_n "checking if $CC supports-Winit-self... " >&6; } + cacheid=xorg_cv_cc_flag__Winit_self + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10281,21 +11176,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Winit-self" found="yes" @@ -10308,13 +11207,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10340,28 +11250,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10387,17 +11302,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -10414,9 +11331,13 @@ found="no" CFLAGS="$CFLAGS -Wmain" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wmain" >&5 -$as_echo_n "checking if $CC supports -Wmain... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wmain" >&5 +$as_echo_n "checking if $CC supports-Wmain... " >&6; } + cacheid=xorg_cv_cc_flag__Wmain + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10452,21 +11373,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wmain" found="yes" @@ -10479,13 +11404,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10511,28 +11447,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10558,17 +11499,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -10585,9 +11528,13 @@ found="no" CFLAGS="$CFLAGS -Wmissing-braces" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wmissing-braces" >&5 -$as_echo_n "checking if $CC supports -Wmissing-braces... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wmissing-braces" >&5 +$as_echo_n "checking if $CC supports-Wmissing-braces... " >&6; } + cacheid=xorg_cv_cc_flag__Wmissing_braces + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10623,21 +11570,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wmissing-braces" found="yes" @@ -10650,13 +11601,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10682,28 +11644,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10729,17 +11696,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -10756,9 +11725,13 @@ found="no" CFLAGS="$CFLAGS -Wsequence-point" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wsequence-point" >&5 -$as_echo_n "checking if $CC supports -Wsequence-point... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wsequence-point" >&5 +$as_echo_n "checking if $CC supports-Wsequence-point... " >&6; } + cacheid=xorg_cv_cc_flag__Wsequence_point + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10794,21 +11767,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wsequence-point" found="yes" @@ -10821,13 +11798,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10853,28 +11841,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10900,17 +11893,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -10927,9 +11922,13 @@ found="no" CFLAGS="$CFLAGS -Wreturn-type" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wreturn-type" >&5 -$as_echo_n "checking if $CC supports -Wreturn-type... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wreturn-type" >&5 +$as_echo_n "checking if $CC supports-Wreturn-type... " >&6; } + cacheid=xorg_cv_cc_flag__Wreturn_type + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -10965,21 +11964,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wreturn-type" found="yes" @@ -10992,13 +11995,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11024,28 +12038,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11071,17 +12090,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -11098,9 +12119,13 @@ found="no" CFLAGS="$CFLAGS -Wtrigraphs" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wtrigraphs" >&5 -$as_echo_n "checking if $CC supports -Wtrigraphs... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wtrigraphs" >&5 +$as_echo_n "checking if $CC supports-Wtrigraphs... " >&6; } + cacheid=xorg_cv_cc_flag__Wtrigraphs + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11136,21 +12161,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wtrigraphs" found="yes" @@ -11163,13 +12192,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11195,28 +12235,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11242,17 +12287,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -11269,9 +12316,13 @@ found="no" CFLAGS="$CFLAGS -Warray-bounds" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Warray-bounds" >&5 -$as_echo_n "checking if $CC supports -Warray-bounds... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Warray-bounds" >&5 +$as_echo_n "checking if $CC supports-Warray-bounds... " >&6; } + cacheid=xorg_cv_cc_flag__Warray_bounds + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11307,21 +12358,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Warray-bounds" found="yes" @@ -11334,13 +12389,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11366,28 +12432,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11413,17 +12484,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -11440,9 +12513,13 @@ found="no" CFLAGS="$CFLAGS -Wwrite-strings" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wwrite-strings" >&5 -$as_echo_n "checking if $CC supports -Wwrite-strings... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wwrite-strings" >&5 +$as_echo_n "checking if $CC supports-Wwrite-strings... " >&6; } + cacheid=xorg_cv_cc_flag__Wwrite_strings + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11478,21 +12555,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wwrite-strings" found="yes" @@ -11505,13 +12586,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11537,28 +12629,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11584,17 +12681,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -11611,9 +12710,13 @@ found="no" CFLAGS="$CFLAGS -Waddress" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Waddress" >&5 -$as_echo_n "checking if $CC supports -Waddress... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Waddress" >&5 +$as_echo_n "checking if $CC supports-Waddress... " >&6; } + cacheid=xorg_cv_cc_flag__Waddress + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11649,21 +12752,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Waddress" found="yes" @@ -11676,13 +12783,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11708,28 +12826,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11755,17 +12878,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -11782,9 +12907,13 @@ found="no" CFLAGS="$CFLAGS -Wint-to-pointer-cast" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wint-to-pointer-cast" >&5 -$as_echo_n "checking if $CC supports -Wint-to-pointer-cast... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wint-to-pointer-cast" >&5 +$as_echo_n "checking if $CC supports-Wint-to-pointer-cast... " >&6; } + cacheid=xorg_cv_cc_flag__Wint_to_pointer_cast + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11820,21 +12949,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wint-to-pointer-cast" found="yes" @@ -11847,13 +12980,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11879,28 +13023,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11926,17 +13075,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -11953,9 +13104,13 @@ found="no" CFLAGS="$CFLAGS -Wpointer-to-int-cast" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Wpointer-to-int-cast" >&5 -$as_echo_n "checking if $CC supports -Wpointer-to-int-cast... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Wpointer-to-int-cast" >&5 +$as_echo_n "checking if $CC supports-Wpointer-to-int-cast... " >&6; } + cacheid=xorg_cv_cc_flag__Wpointer_to_int_cast + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -11991,21 +13146,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then BASE_CFLAGS="$BASE_CFLAGS -Wpointer-to-int-cast" found="yes" @@ -12020,10 +13179,13 @@ fi -CWARNFLAGS="$BASE_CFLAGS" -if test "x$GCC" = xyes ; then - CWARNFLAGS="$CWARNFLAGS -fno-strict-aliasing" -fi + + CWARNFLAGS="$BASE_CFLAGS" + if test "x$GCC" = xyes ; then + CWARNFLAGS="$CWARNFLAGS -fno-strict-aliasing" + fi + + @@ -12038,19 +13200,34 @@ else fi + + + + STRICT_CFLAGS="" + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12076,28 +13253,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12123,17 +13305,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -12150,9 +13334,13 @@ found="no" CFLAGS="$CFLAGS -pedantic" - { $as_echo "$as_me:$LINENO: checking if $CC supports -pedantic" >&5 -$as_echo_n "checking if $CC supports -pedantic... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-pedantic" >&5 +$as_echo_n "checking if $CC supports-pedantic... " >&6; } + cacheid=xorg_cv_cc_flag__pedantic + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12188,21 +13376,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then STRICT_CFLAGS="$STRICT_CFLAGS -pedantic" found="yes" @@ -12215,13 +13407,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12247,28 +13450,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12294,17 +13502,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -12321,9 +13531,13 @@ found="no" CFLAGS="$CFLAGS -Werror" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror" >&5 -$as_echo_n "checking if $CC supports -Werror... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror" >&5 +$as_echo_n "checking if $CC supports-Werror... " >&6; } + cacheid=xorg_cv_cc_flag__Werror + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12359,21 +13573,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then STRICT_CFLAGS="$STRICT_CFLAGS -Werror" found="yes" @@ -12391,9 +13609,13 @@ $as_echo "$supported" >&6; } CFLAGS="$CFLAGS -errwarn" - { $as_echo "$as_me:$LINENO: checking if $CC supports -errwarn" >&5 -$as_echo_n "checking if $CC supports -errwarn... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-errwarn" >&5 +$as_echo_n "checking if $CC supports-errwarn... " >&6; } + cacheid=xorg_cv_cc_flag__errwarn + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12429,21 +13651,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then STRICT_CFLAGS="$STRICT_CFLAGS -errwarn" found="yes" @@ -12459,13 +13685,24 @@ $as_echo "$supported" >&6; } + + + + + + + + xorg_testset_save_CFLAGS="$CFLAGS" -if test "x$xorg_testset_unknown_warning_option" = "x" ; then +if test "x$xorg_testset_cc_unknown_warning_option" = "x" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unknown-warning-option" >&5 $as_echo_n "checking if $CC supports -Werror=unknown-warning-option... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unknown_warning_option+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12491,28 +13728,33 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unknown_warning_option=yes + xorg_cv_cc_flag_unknown_warning_option=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unknown_warning_option=no + xorg_cv_cc_flag_unknown_warning_option=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unknown_warning_option" >&5 -$as_echo "$xorg_testset_unknown_warning_option" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unknown_warning_option" >&5 +$as_echo "$xorg_cv_cc_flag_unknown_warning_option" >&6; } + xorg_testset_cc_unknown_warning_option=$xorg_cv_cc_flag_unknown_warning_option CFLAGS="$xorg_testset_save_CFLAGS" fi -if test "x$xorg_testset_unused_command_line_argument" = "x" ; then - if test "x$xorg_testset_unknown_warning_option" = "xyes" ; then +if test "x$xorg_testset_cc_unused_command_line_argument" = "x" ; then + if test "x$xorg_testset_cc_unknown_warning_option" = "xyes" ; then CFLAGS="$CFLAGS -Werror=unknown-warning-option" fi CFLAGS="$CFLAGS -Werror=unused-command-line-argument" { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=unused-command-line-argument" >&5 $as_echo_n "checking if $CC supports -Werror=unused-command-line-argument... " >&6; } - cat >conftest.$ac_ext <<_ACEOF +if test "${xorg_cv_cc_flag_unused_command_line_argument+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12538,17 +13780,19 @@ $as_echo "$ac_try_echo") >&5 test -z "$ac_c_werror_flag" || test ! -s conftest.err } && test -s conftest.$ac_objext; then - xorg_testset_unused_command_line_argument=yes + xorg_cv_cc_flag_unused_command_line_argument=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - xorg_testset_unused_command_line_argument=no + xorg_cv_cc_flag_unused_command_line_argument=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $xorg_testset_unused_command_line_argument" >&5 -$as_echo "$xorg_testset_unused_command_line_argument" >&6; } +fi +{ $as_echo "$as_me:$LINENO: result: $xorg_cv_cc_flag_unused_command_line_argument" >&5 +$as_echo "$xorg_cv_cc_flag_unused_command_line_argument" >&6; } + xorg_testset_cc_unused_command_line_argument=$xorg_cv_cc_flag_unused_command_line_argument CFLAGS="$xorg_testset_save_CFLAGS" fi @@ -12565,9 +13809,13 @@ found="no" CFLAGS="$CFLAGS -Werror=attributes" - { $as_echo "$as_me:$LINENO: checking if $CC supports -Werror=attributes" >&5 -$as_echo_n "checking if $CC supports -Werror=attributes... " >&6; } - cat >conftest.$ac_ext <<_ACEOF + { $as_echo "$as_me:$LINENO: checking if $CC supports-Werror=attributes" >&5 +$as_echo_n "checking if $CC supports-Werror=attributes... " >&6; } + cacheid=xorg_cv_cc_flag__Werror_attributes + if { as_var=$cacheid; eval "test \"\${$as_var+set}\" = set"; }; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext @@ -12603,21 +13851,25 @@ $as_echo "$ac_try_echo") >&5 test "$cross_compiling" = yes || $as_test_x conftest$ac_exeext }; then - supported=yes + eval $cacheid=yes else $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 - supported=no + eval $cacheid=no fi rm -rf conftest.dSYM rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ conftest$ac_exeext conftest.$ac_ext - { $as_echo "$as_me:$LINENO: result: $supported" >&5 -$as_echo "$supported" >&6; } +fi + + CFLAGS="$xorg_testset_save_CFLAGS" + eval supported=\$$cacheid + { $as_echo "$as_me:$LINENO: result: $supported" >&5 +$as_echo "$supported" >&6; } if test "$supported" = "yes" ; then STRICT_CFLAGS="$STRICT_CFLAGS -Werror=attributes" found="yes" @@ -13026,7 +14278,7 @@ fi # Define the identity of the package. PACKAGE='xf86-video-ati' - VERSION='6.14.3' + VERSION='6.14.4' cat >>confdefs.h <<_ACEOF @@ -22434,12 +23686,12 @@ if test -n "$PKG_CONFIG"; then pkg_cv_LIBDRM_RADEON_CFLAGS="$LIBDRM_RADEON_CFLAGS" else if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.6.2 libdrm_radeon\"") >&5 - ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.6.2 libdrm_radeon") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.6.2 libdrm >= 2.4.33 libdrm_radeon\"") >&5 + ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.6.2 libdrm >= 2.4.33 libdrm_radeon") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_LIBDRM_RADEON_CFLAGS=`$PKG_CONFIG --cflags "xorg-server >= 1.6.2 libdrm_radeon" 2>/dev/null` + pkg_cv_LIBDRM_RADEON_CFLAGS=`$PKG_CONFIG --cflags "xorg-server >= 1.6.2 libdrm >= 2.4.33 libdrm_radeon" 2>/dev/null` else pkg_failed=yes fi @@ -22452,12 +23704,12 @@ if test -n "$PKG_CONFIG"; then pkg_cv_LIBDRM_RADEON_LIBS="$LIBDRM_RADEON_LIBS" else if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.6.2 libdrm_radeon\"") >&5 - ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.6.2 libdrm_radeon") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xorg-server >= 1.6.2 libdrm >= 2.4.33 libdrm_radeon\"") >&5 + ($PKG_CONFIG --exists --print-errors "xorg-server >= 1.6.2 libdrm >= 2.4.33 libdrm_radeon") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_LIBDRM_RADEON_LIBS=`$PKG_CONFIG --libs "xorg-server >= 1.6.2 libdrm_radeon" 2>/dev/null` + pkg_cv_LIBDRM_RADEON_LIBS=`$PKG_CONFIG --libs "xorg-server >= 1.6.2 libdrm >= 2.4.33 libdrm_radeon" 2>/dev/null` else pkg_failed=yes fi @@ -22476,9 +23728,9 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - LIBDRM_RADEON_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "xorg-server >= 1.6.2 libdrm_radeon"` + LIBDRM_RADEON_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "xorg-server >= 1.6.2 libdrm >= 2.4.33 libdrm_radeon"` else - LIBDRM_RADEON_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "xorg-server >= 1.6.2 libdrm_radeon"` + LIBDRM_RADEON_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "xorg-server >= 1.6.2 libdrm >= 2.4.33 libdrm_radeon"` fi # Put the nasty error message in config.log where it belongs echo "$LIBDRM_RADEON_PKG_ERRORS" >&5 @@ -23277,12 +24529,81 @@ if test `eval 'as_val=${'$as_ac_Header'} cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF - + have_list_h="yes" +else + have_list_h="no" fi done +if test "x$have_list_h" = xyes; then + { $as_echo "$as_me:$LINENO: checking whether xorg_list_init is declared" >&5 +$as_echo_n "checking whether xorg_list_init is declared... " >&6; } +if test "${ac_cv_have_decl_xorg_list_init+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <X11/Xdefs.h> + #include "xorg-server.h" + #include "list.h" + +int +main () +{ +#ifndef xorg_list_init + (void) xorg_list_init; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl_xorg_list_init=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl_xorg_list_init=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl_xorg_list_init" >&5 +$as_echo "$ac_cv_have_decl_xorg_list_init" >&6; } +if test $ac_cv_have_decl_xorg_list_init = yes; then + +cat >>confdefs.h <<\_ACEOF +#define HAVE_XORG_LIST 1 +_ACEOF + +fi + +fi + CPPFLAGS="$SAVE_CPPFLAGS" @@ -24410,7 +25731,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xf86-video-ati $as_me 6.14.3, which was +This file was extended by xf86-video-ati $as_me 6.14.4, which was generated by GNU Autoconf 2.62. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -24463,7 +25784,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -xf86-video-ati config.status 6.14.3 +xf86-video-ati config.status 6.14.4 configured by $0, generated by GNU Autoconf 2.62, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/driver/xf86-video-ati/configure.ac b/driver/xf86-video-ati/configure.ac index 167432cc2..ae62cf299 100644 --- a/driver/xf86-video-ati/configure.ac +++ b/driver/xf86-video-ati/configure.ac @@ -23,7 +23,7 @@ # Initialize Autoconf AC_PREREQ([2.60]) AC_INIT([xf86-video-ati], - [6.14.3], + [6.14.4], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xf86-video-ati]) @@ -141,7 +141,7 @@ if test "$DRI" = yes; then AC_CHECK_HEADER(xf86drmMode.h,[DRM_MODE=yes],[DRM_MODE=no],[#include <stdint.h> #include <stdlib.h>]) if test "x$DRM_MODE" = xyes; then - PKG_CHECK_MODULES(LIBDRM_RADEON, [xorg-server >= 1.6.2 libdrm_radeon], + PKG_CHECK_MODULES(LIBDRM_RADEON, [xorg-server >= 1.6.2 libdrm >= 2.4.33 libdrm_radeon], [LIBDRM_RADEON=yes], [LIBDRM_RADEON=no]) if test "x$LIBDRM_RADEON" = xyes; then @@ -234,10 +234,18 @@ AC_CHECK_DECL(XSERVER_LIBPCIACCESS, [#include "xorg-server.h"]) AC_CHECK_HEADERS([list.h], - [], [], + [have_list_h="yes"], [have_list_h="no"], [#include <X11/Xdefs.h> #include "xorg-server.h"]) +if test "x$have_list_h" = xyes; then + AC_CHECK_DECL(xorg_list_init, + [AC_DEFINE(HAVE_XORG_LIST, 1, [Have xorg_list API])], [], + [#include <X11/Xdefs.h> + #include "xorg-server.h" + #include "list.h"]) +fi + CPPFLAGS="$SAVE_CPPFLAGS" AM_CONDITIONAL(USE_EXA, test "x$USE_EXA" = xyes) diff --git a/driver/xf86-video-ati/man/radeon.man b/driver/xf86-video-ati/man/radeon.man index 55c5d0238..e90979db3 100644 --- a/driver/xf86-video-ati/man/radeon.man +++ b/driver/xf86-video-ati/man/radeon.man @@ -194,6 +194,8 @@ Radeon HD 6430/6450/6470/6490 .TP 12 .B CAYMAN Radeon HD 6950/6970/6990 +.TP 12 +.B ARUBA .PD .SH CONFIGURATION DETAILS Please refer to __xconfigfile__(__filemansuffix__) for general configuration @@ -260,13 +262,25 @@ are supported for .BI "Option \*qColorTiling\*q \*q" "boolean" \*q The framebuffer can be addressed either in linear or tiled mode. Tiled mode can provide significant performance benefits with 3D applications. Tiling will be disabled if the drm -module is too old or if the current display configuration does not support it. KMS -ColorTiling is not currently supported on R/RV/RS1XX, R/RV/RS2XX, and RS3XX. +module is too old or if the current display configuration does not support it. On R600+ +this enables 1D tiling mode. .br The default value is .B on for R/RV3XX, R/RV4XX, R/RV5XX, RS6XX, RS740, R/RV6XX, R/RV7XX, RS780, RS880, -EVERGREEN, and CAYMAN. +EVERGREEN, and CAYMAN and +.B off +for R/RV/RS1XX, R/RV/RS2XX, and RS3XX. +.TP +.BI "Option \*qColorTiling2D\*q \*q" "boolean" \*q +The framebuffer can be addressed either in linear, 1D, or 2D tiled modes. 2D tiled mode can +provide significant performance benefits over 1D tiling with 3D applications. Tiling +will be disabled if the drm module is too old or if the current display configuration +does not support it. KMS ColorTiling2D is only supported on R600 and newer chips. +.br +The default value is +.B off +for R/RV6XX, R/RV7XX, RS780, RS880, EVERGREEN, and CAYMAN. .TP .BI "Option \*qEXAPixmaps\*q \*q" boolean \*q Under KMS, to avoid thrashing pixmaps in/out of VRAM on low memory cards, diff --git a/driver/xf86-video-ati/src/ati_pciids_gen.h b/driver/xf86-video-ati/src/ati_pciids_gen.h index ff7c91b7b..77e41ac80 100644 --- a/driver/xf86-video-ati/src/ati_pciids_gen.h +++ b/driver/xf86-video-ati/src/ati_pciids_gen.h @@ -85,6 +85,7 @@ #define PCI_CHIP_RV250_Ld 0x4C64 #define PCI_CHIP_RV250_Lf 0x4C66 #define PCI_CHIP_RV250_Lg 0x4C67 +#define PCI_CHIP_RV280_4C6E 0x4C6E #define PCI_CHIP_RAGE128MF 0x4D46 #define PCI_CHIP_RAGE128ML 0x4D4C #define PCI_CHIP_R300_ND 0x4E44 @@ -460,6 +461,8 @@ #define PCI_CHIP_SUMO_9647 0x9647 #define PCI_CHIP_SUMO_9648 0x9648 #define PCI_CHIP_SUMO_964A 0x964A +#define PCI_CHIP_SUMO_964B 0x964B +#define PCI_CHIP_SUMO_964C 0x964C #define PCI_CHIP_SUMO_964E 0x964E #define PCI_CHIP_SUMO_964F 0x964F #define PCI_CHIP_RS880_9710 0x9710 @@ -474,6 +477,8 @@ #define PCI_CHIP_PALM_9805 0x9805 #define PCI_CHIP_PALM_9806 0x9806 #define PCI_CHIP_PALM_9807 0x9807 +#define PCI_CHIP_PALM_9808 0x9808 +#define PCI_CHIP_PALM_9809 0x9809 #define PCI_CHIP_CYPRESS_6880 0x6880 #define PCI_CHIP_CYPRESS_6888 0x6888 #define PCI_CHIP_CYPRESS_6889 0x6889 @@ -515,6 +520,7 @@ #define PCI_CHIP_CEDAR_68F2 0x68F2 #define PCI_CHIP_CEDAR_68F8 0x68F8 #define PCI_CHIP_CEDAR_68F9 0x68F9 +#define PCI_CHIP_CEDAR_68FA 0x68FA #define PCI_CHIP_CEDAR_68FE 0x68FE #define PCI_CHIP_CAYMAN_6700 0x6700 #define PCI_CHIP_CAYMAN_6701 0x6701 @@ -555,9 +561,20 @@ #define PCI_CHIP_TURKS_6748 0x6748 #define PCI_CHIP_TURKS_6749 0x6749 #define PCI_CHIP_TURKS_6750 0x6750 +#define PCI_CHIP_TURKS_6751 0x6751 #define PCI_CHIP_TURKS_6758 0x6758 #define PCI_CHIP_TURKS_6759 0x6759 +#define PCI_CHIP_TURKS_675B 0x675B +#define PCI_CHIP_TURKS_675D 0x675D #define PCI_CHIP_TURKS_675F 0x675F +#define PCI_CHIP_TURKS_6840 0x6840 +#define PCI_CHIP_TURKS_6841 0x6841 +#define PCI_CHIP_TURKS_6842 0x6842 +#define PCI_CHIP_TURKS_6843 0x6843 +#define PCI_CHIP_TURKS_6849 0x6849 +#define PCI_CHIP_TURKS_6850 0x6850 +#define PCI_CHIP_TURKS_6858 0x6858 +#define PCI_CHIP_TURKS_6859 0x6859 #define PCI_CHIP_CAICOS_6760 0x6760 #define PCI_CHIP_CAICOS_6761 0x6761 #define PCI_CHIP_CAICOS_6762 0x6762 @@ -568,5 +585,14 @@ #define PCI_CHIP_CAICOS_6767 0x6767 #define PCI_CHIP_CAICOS_6768 0x6768 #define PCI_CHIP_CAICOS_6770 0x6770 +#define PCI_CHIP_CAICOS_6772 0x6772 #define PCI_CHIP_CAICOS_6778 0x6778 #define PCI_CHIP_CAICOS_6779 0x6779 +#define PCI_CHIP_CAICOS_677B 0x677B +#define PCI_CHIP_ARUBA_9900 0x9900 +#define PCI_CHIP_ARUBA_9901 0x9901 +#define PCI_CHIP_ARUBA_9903 0x9903 +#define PCI_CHIP_ARUBA_9904 0x9904 +#define PCI_CHIP_ARUBA_990f 0x990f +#define PCI_CHIP_ARUBA_9990 0x9990 +#define PCI_CHIP_ARUBA_9991 0x9991 diff --git a/driver/xf86-video-ati/src/drmmode_display.c b/driver/xf86-video-ati/src/drmmode_display.c index 05f764374..f11fc8c80 100644 --- a/driver/xf86-video-ati/src/drmmode_display.c +++ b/driver/xf86-video-ati/src/drmmode_display.c @@ -49,12 +49,16 @@ #include <X11/extensions/dpms.h> #endif -static PixmapPtr drmmode_create_bo_pixmap(ScreenPtr pScreen, +static PixmapPtr drmmode_create_bo_pixmap(ScrnInfoPtr pScrn, int width, int height, int depth, int bpp, - int pitch, struct radeon_bo *bo) + int pitch, int tiling, + struct radeon_bo *bo) { + RADEONInfoPtr info = RADEONPTR(pScrn); + ScreenPtr pScreen = pScrn->pScreen; PixmapPtr pixmap; + struct radeon_surface *surface; pixmap = (*pScreen->CreatePixmap)(pScreen, 0, 0, depth, 0); if (!pixmap) @@ -67,6 +71,39 @@ static PixmapPtr drmmode_create_bo_pixmap(ScreenPtr pScreen, exaMoveInPixmap(pixmap); radeon_set_pixmap_bo(pixmap, bo); + if (info->ChipFamily >= CHIP_FAMILY_R600) { + surface = radeon_get_pixmap_surface(pixmap); + if (surface) { + memset(surface, 0, sizeof(struct radeon_surface)); + surface->npix_x = width; + surface->npix_y = height; + surface->npix_z = 1; + surface->blk_w = 1; + surface->blk_h = 1; + surface->blk_d = 1; + surface->array_size = 1; + surface->last_level = 0; + surface->bpe = bpp / 8; + surface->nsamples = 1; + surface->flags = RADEON_SURF_SCANOUT; + surface->flags |= RADEON_SURF_SET(RADEON_SURF_TYPE_2D, TYPE); + surface->flags |= RADEON_SURF_SET(RADEON_SURF_MODE_LINEAR_ALIGNED, MODE); + if (tiling & RADEON_TILING_MICRO) { + surface->flags = RADEON_SURF_CLR(surface->flags, MODE); + surface->flags |= RADEON_SURF_SET(RADEON_SURF_MODE_1D, MODE); + } + if (tiling & RADEON_TILING_MACRO) { + surface->flags = RADEON_SURF_CLR(surface->flags, MODE); + surface->flags |= RADEON_SURF_SET(RADEON_SURF_MODE_2D, MODE); + } + if (radeon_surface_best(info->surf_man, surface)) { + return NULL; + } + if (radeon_surface_init(info->surf_man, surface)) { + return NULL; + } + } + } return pixmap; } @@ -159,7 +196,6 @@ create_pixmap_for_fbcon(drmmode_ptr drmmode, { xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn); drmmode_crtc_private_ptr drmmode_crtc; - ScreenPtr pScreen = pScrn->pScreen; PixmapPtr pixmap; struct radeon_bo *bo; drmModeFBPtr fbcon; @@ -185,9 +221,9 @@ create_pixmap_for_fbcon(drmmode_ptr drmmode, return NULL; } - pixmap = drmmode_create_bo_pixmap(pScreen, fbcon->width, fbcon->height, + pixmap = drmmode_create_bo_pixmap(pScrn, fbcon->width, fbcon->height, fbcon->depth, fbcon->bpp, - fbcon->pitch, bo); + fbcon->pitch, 0, bo); if (!pixmap) return NULL; @@ -225,9 +261,13 @@ void drmmode_copy_fb(ScrnInfoPtr pScrn, drmmode_ptr drmmode) return; if (info->allowColorTiling) { - if (info->ChipFamily >= CHIP_FAMILY_R600) - tiling_flags |= RADEON_TILING_MICRO; - else + if (info->ChipFamily >= CHIP_FAMILY_R600) { + if (info->allowColorTiling2D) { + tiling_flags |= RADEON_TILING_MACRO; + } else { + tiling_flags |= RADEON_TILING_MICRO; + } + } else tiling_flags |= RADEON_TILING_MACRO; } @@ -235,10 +275,10 @@ void drmmode_copy_fb(ScrnInfoPtr pScrn, drmmode_ptr drmmode) drmmode_get_pitch_align(pScrn, info->CurrentLayout.pixel_bytes, tiling_flags)) * info->CurrentLayout.pixel_bytes; - dst = drmmode_create_bo_pixmap(pScreen, pScrn->virtualX, + dst = drmmode_create_bo_pixmap(pScrn, pScrn->virtualX, pScrn->virtualY, pScrn->depth, pScrn->bitsPerPixel, pitch, - info->front_bo); + tiling_flags, info->front_bo); if (!dst) goto out_free_src; @@ -251,6 +291,9 @@ void drmmode_copy_fb(ScrnInfoPtr pScrn, drmmode_ptr drmmode) info->accel_state->exa->DoneCopy (dst); radeon_cs_flush_indirect(pScrn); +#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) >= 10 + pScreen->canDoBGNoneRoot = TRUE; +#endif drmmode_destroy_bo_pixmap(dst); out_free_src: drmmode_destroy_bo_pixmap(src); @@ -289,6 +332,9 @@ drmmode_set_mode_major(xf86CrtcPtr crtc, DisplayModePtr mode, pitch = RADEON_ALIGN(pScrn->displayWidth, drmmode_get_pitch_align(pScrn, info->CurrentLayout.pixel_bytes, tiling_flags)) * info->CurrentLayout.pixel_bytes; height = RADEON_ALIGN(pScrn->virtualY, drmmode_get_height_align(pScrn, tiling_flags)); + if (info->ChipFamily >= CHIP_FAMILY_R600) { + pitch = info->front_surface.level[0].pitch_bytes; + } if (drmmode->fb_id == 0) { ret = drmModeAddFB(drmmode->fd, @@ -500,12 +546,12 @@ drmmode_crtc_shadow_create(xf86CrtcPtr crtc, void *data, int width, int height) rotate_pitch = RADEON_ALIGN(width, drmmode_get_pitch_align(pScrn, drmmode->cpp, 0)) * drmmode->cpp; - rotate_pixmap = drmmode_create_bo_pixmap(pScrn->pScreen, + rotate_pixmap = drmmode_create_bo_pixmap(pScrn, width, height, pScrn->depth, pScrn->bitsPerPixel, rotate_pitch, - drmmode_crtc->rotate_bo); + 0, drmmode_crtc->rotate_bo); if (rotate_pixmap == NULL) { xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Couldn't allocate shadow pixmap for rotated CRTC\n"); @@ -1011,7 +1057,7 @@ drmmode_output_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode, int num, int *num_dv output->doubleScanAllowed = TRUE; output->driver_private = drmmode_output; - output->possible_crtcs = 0x7f; + output->possible_crtcs = 0xffffffff; for (i = 0; i < koutput->count_encoders; i++) { output->possible_crtcs &= kencoders[i]->possible_crtcs; } @@ -1203,7 +1249,9 @@ drmmode_xf86crtc_resize (ScrnInfoPtr scrn, int width, int height) int screen_size; int cpp = info->CurrentLayout.pixel_bytes; struct radeon_bo *front_bo; - uint32_t tiling_flags = 0; + struct radeon_surface surface; + struct radeon_surface *psurface; + uint32_t tiling_flags = 0, base_align; PixmapPtr ppix = screen->GetScreenPixmap(screen); void *fb_shadow; @@ -1217,15 +1265,69 @@ drmmode_xf86crtc_resize (ScrnInfoPtr scrn, int width, int height) radeon_bo_wait(front_bo); if (info->allowColorTiling) { - if (info->ChipFamily >= CHIP_FAMILY_R600) - tiling_flags |= RADEON_TILING_MICRO; - else + if (info->ChipFamily >= CHIP_FAMILY_R600) { + if (info->allowColorTiling2D) { + tiling_flags |= RADEON_TILING_MACRO; + } else { + tiling_flags |= RADEON_TILING_MICRO; + } + } else tiling_flags |= RADEON_TILING_MACRO; } pitch = RADEON_ALIGN(width, drmmode_get_pitch_align(scrn, cpp, tiling_flags)) * cpp; height = RADEON_ALIGN(height, drmmode_get_height_align(scrn, tiling_flags)); screen_size = RADEON_ALIGN(pitch * height, RADEON_GPU_PAGE_SIZE); + base_align = 4096; + if (info->ChipFamily >= CHIP_FAMILY_R600) { + memset(&surface, 0, sizeof(struct radeon_surface)); + surface.npix_x = width; + surface.npix_y = height; + surface.npix_z = 1; + surface.blk_w = 1; + surface.blk_h = 1; + surface.blk_d = 1; + surface.array_size = 1; + surface.last_level = 0; + surface.bpe = cpp; + surface.nsamples = 1; + surface.flags = RADEON_SURF_SCANOUT; + surface.flags |= RADEON_SURF_SET(RADEON_SURF_TYPE_2D, TYPE); + surface.flags |= RADEON_SURF_SET(RADEON_SURF_MODE_LINEAR_ALIGNED, MODE); + if (tiling_flags & RADEON_TILING_MICRO) { + surface.flags = RADEON_SURF_CLR(surface.flags, MODE); + surface.flags |= RADEON_SURF_SET(RADEON_SURF_MODE_1D, MODE); + } + if (tiling_flags & RADEON_TILING_MACRO) { + surface.flags = RADEON_SURF_CLR(surface.flags, MODE); + surface.flags |= RADEON_SURF_SET(RADEON_SURF_MODE_2D, MODE); + } + if (radeon_surface_best(info->surf_man, &surface)) { + return FALSE; + } + if (radeon_surface_init(info->surf_man, &surface)) { + return FALSE; + } + screen_size = surface.bo_size; + base_align = surface.bo_alignment; + pitch = surface.level[0].pitch_bytes; + tiling_flags = 0; + switch (surface.level[0].mode) { + case RADEON_SURF_MODE_2D: + tiling_flags |= RADEON_TILING_MACRO; + tiling_flags |= surface.bankw << RADEON_TILING_EG_BANKW_SHIFT; + tiling_flags |= surface.bankh << RADEON_TILING_EG_BANKH_SHIFT; + tiling_flags |= surface.mtilea << RADEON_TILING_EG_MACRO_TILE_ASPECT_SHIFT; + tiling_flags |= eg_tile_split(surface.tile_split) << RADEON_TILING_EG_TILE_SPLIT_SHIFT; + break; + case RADEON_SURF_MODE_1D: + tiling_flags |= RADEON_TILING_MICRO; + break; + default: + break; + } + info->front_surface = surface; + } xf86DrvMsg(scrn->scrnIndex, X_INFO, "Allocate new frame buffer %dx%d stride %d\n", @@ -1241,7 +1343,7 @@ drmmode_xf86crtc_resize (ScrnInfoPtr scrn, int width, int height) scrn->virtualY = height; scrn->displayWidth = pitch / cpp; - info->front_bo = radeon_bo_open(info->bufmgr, 0, screen_size, 0, RADEON_GEM_DOMAIN_VRAM, 0); + info->front_bo = radeon_bo_open(info->bufmgr, 0, screen_size, base_align, RADEON_GEM_DOMAIN_VRAM, 0); if (!info->front_bo) goto fail; @@ -1267,6 +1369,8 @@ drmmode_xf86crtc_resize (ScrnInfoPtr scrn, int width, int height) if (!info->r600_shadow_fb) { radeon_set_pixmap_bo(ppix, info->front_bo); + psurface = radeon_get_pixmap_surface(ppix); + *psurface = info->front_surface; screen->ModifyPixmapHeader(ppix, width, height, -1, -1, pitch, NULL); } else { @@ -1376,9 +1480,7 @@ drm_wakeup_handler(pointer data, int err, pointer p) Bool drmmode_pre_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode, int cpp) { - RADEONEntPtr pRADEONEnt = RADEONEntPriv(pScrn); xf86CrtcConfigPtr xf86_config; - RADEONInfoPtr info = RADEONPTR(pScrn); int i, num_dvi = 0, num_hdmi = 0; xf86CrtcConfigInit(pScrn, &drmmode_xf86crtc_config_funcs); @@ -1408,14 +1510,22 @@ Bool drmmode_pre_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode, int cpp) #ifdef __linux__ drmmode->event_context.page_flip_handler = drmmode_flip_handler; #endif - if (!pRADEONEnt->fd_wakeup_registered && info->dri->pKernelDRMVersion->version_minor >= 4) { + + return TRUE; +} + +void drmmode_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode) +{ + RADEONEntPtr pRADEONEnt = RADEONEntPriv(pScrn); + RADEONInfoPtr info = RADEONPTR(pScrn); + + if (pRADEONEnt->fd_wakeup_registered != serverGeneration && + info->dri->pKernelDRMVersion->version_minor >= 4) { AddGeneralSocket(drmmode->fd); RegisterBlockAndWakeupHandlers((BlockHandlerProcPtr)NoopDDA, drm_wakeup_handler, drmmode); - pRADEONEnt->fd_wakeup_registered = TRUE; + pRADEONEnt->fd_wakeup_registered = serverGeneration; } - - return TRUE; } Bool drmmode_set_bufmgr(ScrnInfoPtr pScrn, drmmode_ptr drmmode, struct radeon_bo_manager *bufmgr) @@ -1672,6 +1782,9 @@ Bool radeon_do_pageflip(ScrnInfoPtr scrn, struct radeon_bo *new_front, void *dat pitch = RADEON_ALIGN(scrn->displayWidth, drmmode_get_pitch_align(scrn, info->CurrentLayout.pixel_bytes, tiling_flags)) * info->CurrentLayout.pixel_bytes; height = RADEON_ALIGN(scrn->virtualY, drmmode_get_height_align(scrn, tiling_flags)); + if (info->ChipFamily >= CHIP_FAMILY_R600 && info->surf_man) { + pitch = info->front_surface.level[0].pitch_bytes; + } /* * Create a new handle for the back buffer diff --git a/driver/xf86-video-ati/src/drmmode_display.h b/driver/xf86-video-ati/src/drmmode_display.h index eb271f5f5..dff03929e 100644 --- a/driver/xf86-video-ati/src/drmmode_display.h +++ b/driver/xf86-video-ati/src/drmmode_display.h @@ -99,6 +99,7 @@ typedef struct { extern Bool drmmode_pre_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode, int cpp); +extern void drmmode_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode); extern Bool drmmode_set_bufmgr(ScrnInfoPtr pScrn, drmmode_ptr drmmode, struct radeon_bo_manager *bufmgr); extern void drmmode_set_cursor(ScrnInfoPtr scrn, drmmode_ptr drmmode, int id, struct radeon_bo *bo); void drmmode_adjust_frame(ScrnInfoPtr pScrn, drmmode_ptr drmmode, int x, int y, int flags); diff --git a/driver/xf86-video-ati/src/evergreen_accel.c b/driver/xf86-video-ati/src/evergreen_accel.c index 5c95e201f..581aaf6e4 100644 --- a/driver/xf86-video-ati/src/evergreen_accel.c +++ b/driver/xf86-video-ati/src/evergreen_accel.c @@ -75,6 +75,57 @@ evergreen_start_3d(ScrnInfoPtr pScrn) } +unsigned eg_tile_split(unsigned tile_split) +{ + switch (tile_split) { + case 64: tile_split = 0; break; + case 128: tile_split = 1; break; + case 256: tile_split = 2; break; + case 512: tile_split = 3; break; + case 1024: tile_split = 4; break; + case 2048: tile_split = 5; break; + default: + case 4096: tile_split = 6; break; + } + return tile_split; +} + +static unsigned eg_macro_tile_aspect(unsigned macro_tile_aspect) +{ + switch (macro_tile_aspect) { + default: + case 1: macro_tile_aspect = 0; break; + case 2: macro_tile_aspect = 1; break; + case 4: macro_tile_aspect = 2; break; + case 8: macro_tile_aspect = 3; break; + } + return macro_tile_aspect; +} + +static unsigned eg_bank_wh(unsigned bankwh) +{ + switch (bankwh) { + default: + case 1: bankwh = 0; break; + case 2: bankwh = 1; break; + case 4: bankwh = 2; break; + case 8: bankwh = 3; break; + } + return bankwh; +} + +static unsigned eg_nbanks(unsigned nbanks) +{ + switch (nbanks) { + default: + case 2: nbanks = 0; break; + case 4: nbanks = 1; break; + case 8: nbanks = 2; break; + case 16: nbanks = 3; break; + } + return nbanks; +} + /* * Setup of functional groups */ @@ -154,12 +205,59 @@ void evergreen_set_render_target(ScrnInfoPtr pScrn, cb_config_t *cb_conf, uint32_t domain) { uint32_t cb_color_info, cb_color_attrib = 0, cb_color_dim; - int pitch, slice, h; + unsigned pitch, slice, w, h, array_mode, nbanks; + uint32_t tile_split, macro_aspect, bankw, bankh; RADEONInfoPtr info = RADEONPTR(pScrn); +#if defined(XF86DRM_MODE) + if (cb_conf->surface) { + switch (cb_conf->surface->level[0].mode) { + case RADEON_SURF_MODE_1D: + array_mode = 2; + break; + case RADEON_SURF_MODE_2D: + array_mode = 4; + break; + default: + array_mode = 0; + break; + } + w = cb_conf->surface->level[0].npix_x; + h = cb_conf->surface->level[0].npix_y; + pitch = (cb_conf->surface->level[0].nblk_x >> 3) - 1; + slice = ((cb_conf->surface->level[0].nblk_x * cb_conf->surface->level[0].nblk_y) / 64) - 1; + tile_split = cb_conf->surface->tile_split; + macro_aspect = cb_conf->surface->mtilea; + bankw = cb_conf->surface->bankw; + bankh = cb_conf->surface->bankh; + tile_split = eg_tile_split(tile_split); + macro_aspect = eg_macro_tile_aspect(macro_aspect); + bankw = eg_bank_wh(bankw); + bankh = eg_bank_wh(bankh); + } else +#endif + { + pitch = (cb_conf->w / 8) - 1; + h = RADEON_ALIGN(cb_conf->h, 8); + slice = ((cb_conf->w * h) / 64) - 1; + array_mode = cb_conf->array_mode; + w = cb_conf->w; + tile_split = 4; + macro_aspect = 0; + bankw = 0; + bankh = 0; + } + nbanks = info->num_banks; + nbanks = eg_nbanks(nbanks); + + cb_color_attrib |= (tile_split << CB_COLOR0_ATTRIB__TILE_SPLIT_shift)| + (nbanks << CB_COLOR0_ATTRIB__NUM_BANKS_shift) | + (bankw << CB_COLOR0_ATTRIB__BANK_WIDTH_shift) | + (bankh << CB_COLOR0_ATTRIB__BANK_HEIGHT_shift) | + (macro_aspect << CB_COLOR0_ATTRIB__MACRO_TILE_ASPECT_shift); cb_color_info = ((cb_conf->endian << ENDIAN_shift) | (cb_conf->format << CB_COLOR0_INFO__FORMAT_shift) | - (cb_conf->array_mode << CB_COLOR0_INFO__ARRAY_MODE_shift) | + (array_mode << CB_COLOR0_INFO__ARRAY_MODE_shift) | (cb_conf->number_type << NUMBER_TYPE_shift) | (cb_conf->comp_swap << COMP_SWAP_shift) | (cb_conf->source_format << SOURCE_FORMAT_shift) | @@ -185,10 +283,6 @@ evergreen_set_render_target(ScrnInfoPtr pScrn, cb_config_t *cb_conf, uint32_t do if (cb_conf->non_disp_tiling) cb_color_attrib |= CB_COLOR0_ATTRIB__NON_DISP_TILING_ORDER_bit; - pitch = (cb_conf->w / 8) - 1; - h = RADEON_ALIGN(cb_conf->h, 8); - slice = ((cb_conf->w * h) / 64) - 1; - switch (cb_conf->resource_type) { case BUFFER: /* number of elements in the surface */ @@ -196,7 +290,7 @@ evergreen_set_render_target(ScrnInfoPtr pScrn, cb_config_t *cb_conf, uint32_t do break; default: /* w/h of the surface */ - cb_color_dim = (((cb_conf->w - 1) << WIDTH_MAX_shift) | + cb_color_dim = (((w - 1) << WIDTH_MAX_shift) | ((cb_conf->h - 1) << HEIGHT_MAX_shift)); break; } @@ -284,9 +378,6 @@ void evergreen_cp_wait_vline_sync(ScrnInfoPtr pScrn, PixmapPtr pPix, drmmode_crtc = crtc->driver_private; - if (stop < start) - return; - if (!crtc->enabled) return; @@ -306,16 +397,12 @@ void evergreen_cp_wait_vline_sync(ScrnInfoPtr pScrn, PixmapPtr pPix, return; } - start = max(start, 0); - stop = min(stop, crtc->mode.VDisplay); + start = max(start, crtc->y); + stop = min(stop, crtc->y + crtc->mode.VDisplay); - if (start > crtc->mode.VDisplay) + if (start >= stop) return; - /* on r5xx+ vline starts at viewport_y */ - start += crtc->y; - stop += crtc->y; - BEGIN_BATCH(11); /* set the VLINE range */ EREG(EVERGREEN_VLINE_START_END, /* this is just a marker */ @@ -479,6 +566,17 @@ evergreen_set_alu_consts(ScrnInfoPtr pScrn, const_config_t *const_conf, uint32_t if (size == 0) size = 1; +#if X_BYTE_ORDER == X_BIG_ENDIAN + { + uint32_t count = size << 4, *p = const_conf->cpu_ptr; + + while(count--) { + *p = cpu_to_le32(*p); + p++; + } + } +#endif + /* flush SQ cache */ evergreen_cp_set_surface_sync(pScrn, SH_ACTION_ENA_bit, const_conf->size_bytes, const_conf->const_addr, @@ -563,7 +661,8 @@ evergreen_set_vtx_resource(ScrnInfoPtr pScrn, vtx_resource_t *res, uint32_t doma (info->ChipFamily == CHIP_FAMILY_SUMO) || (info->ChipFamily == CHIP_FAMILY_SUMO2) || (info->ChipFamily == CHIP_FAMILY_CAICOS) || - (info->ChipFamily == CHIP_FAMILY_CAYMAN)) + (info->ChipFamily == CHIP_FAMILY_CAYMAN) || + (info->ChipFamily == CHIP_FAMILY_ARUBA)) evergreen_cp_set_surface_sync(pScrn, TC_ACTION_ENA_bit, accel_state->vbo.vb_offset, accel_state->vbo.vb_mc_addr, res->bo, @@ -597,17 +696,53 @@ evergreen_set_tex_resource(ScrnInfoPtr pScrn, tex_resource_t *tex_res, uint32_t RADEONInfoPtr info = RADEONPTR(pScrn); uint32_t sq_tex_resource_word0, sq_tex_resource_word1, sq_tex_resource_word4; uint32_t sq_tex_resource_word5, sq_tex_resource_word6, sq_tex_resource_word7; + uint32_t array_mode, pitch, tile_split, macro_aspect, bankw, bankh, nbanks; + +#if defined(XF86DRM_MODE) + if (tex_res->surface) { + switch (tex_res->surface->level[0].mode) { + case RADEON_SURF_MODE_1D: + array_mode = 2; + break; + case RADEON_SURF_MODE_2D: + array_mode = 4; + break; + default: + array_mode = 0; + break; + } + pitch = tex_res->surface->level[0].nblk_x >> 3; + tile_split = tex_res->surface->tile_split; + macro_aspect = tex_res->surface->mtilea; + bankw = tex_res->surface->bankw; + bankh = tex_res->surface->bankh; + tile_split = eg_tile_split(tile_split); + macro_aspect = eg_macro_tile_aspect(macro_aspect); + bankw = eg_bank_wh(bankw); + bankh = eg_bank_wh(bankh); + } else +#endif + { + array_mode = tex_res->array_mode; + pitch = (tex_res->pitch + 7) >> 3; + tile_split = 4; + macro_aspect = 0; + bankw = 0; + bankh = 0; + } + nbanks = info->num_banks; + nbanks = eg_nbanks(nbanks); sq_tex_resource_word0 = (tex_res->dim << DIM_shift); if (tex_res->w) - sq_tex_resource_word0 |= (((((tex_res->pitch + 7) >> 3) - 1) << PITCH_shift) | - ((tex_res->w - 1) << TEX_WIDTH_shift)); + sq_tex_resource_word0 |= ( ((pitch - 1) << PITCH_shift) | + ((tex_res->w - 1) << TEX_WIDTH_shift) ); if (tex_res->tile_type) sq_tex_resource_word0 |= SQ_TEX_RESOURCE_WORD0_0__NON_DISP_TILING_ORDER_bit; - sq_tex_resource_word1 = (tex_res->array_mode << SQ_TEX_RESOURCE_WORD1_0__ARRAY_MODE_shift); + sq_tex_resource_word1 = (array_mode << SQ_TEX_RESOURCE_WORD1_0__ARRAY_MODE_shift); if (tex_res->h) sq_tex_resource_word1 |= ((tex_res->h - 1) << TEX_HEIGHT_shift); @@ -636,12 +771,17 @@ evergreen_set_tex_resource(ScrnInfoPtr pScrn, tex_resource_t *tex_res, uint32_t (tex_res->last_array << LAST_ARRAY_shift)); sq_tex_resource_word6 = ((tex_res->min_lod << SQ_TEX_RESOURCE_WORD6_0__MIN_LOD_shift) | - (tex_res->perf_modulation << PERF_MODULATION_shift)); + (tex_res->perf_modulation << PERF_MODULATION_shift) | + (tile_split << SQ_TEX_RESOURCE_WORD6_0__TILE_SPLIT_shift)); if (tex_res->interlaced) sq_tex_resource_word6 |= INTERLACED_bit; sq_tex_resource_word7 = ((tex_res->format << SQ_TEX_RESOURCE_WORD7_0__DATA_FORMAT_shift) | + (macro_aspect << SQ_TEX_RESOURCE_WORD7_0__MACRO_TILE_ASPECT_shift) | + (nbanks << SQ_TEX_RESOURCE_WORD7_0__NUM_BANKS_shift) | + (bankw << SQ_TEX_RESOURCE_WORD7_0__BANK_WIDTH_shift) | + (bankh << SQ_TEX_RESOURCE_WORD7_0__BANK_HEIGHT_shift) | (SQ_TEX_VTX_VALID_TEXTURE << SQ_TEX_RESOURCE_WORD7_0__TYPE_shift)); /* flush texture cache */ @@ -725,8 +865,8 @@ evergreen_fix_scissor_coordinates(ScrnInfoPtr pScrn, int *x1, int *y1, int *x2, if (*y2 == 0) *y1 = 1; - /* cayman only */ - if (info->ChipFamily == CHIP_FAMILY_CAYMAN) { + /* cayman/tn only */ + if (info->ChipFamily >= CHIP_FAMILY_CAYMAN) { /* cliprects aren't affected so we can use them to clip if we need * a true 1x1 clip region */ @@ -831,7 +971,7 @@ evergreen_set_default_state(ScrnInfoPtr pScrn) RADEONInfoPtr info = RADEONPTR(pScrn); struct radeon_accel_state *accel_state = info->accel_state; - if (info->ChipFamily == CHIP_FAMILY_CAYMAN) { + if (info->ChipFamily >= CHIP_FAMILY_CAYMAN) { cayman_set_default_state(pScrn); return; } diff --git a/driver/xf86-video-ati/src/evergreen_exa.c b/driver/xf86-video-ati/src/evergreen_exa.c index 6becbb328..cee3ec250 100644 --- a/driver/xf86-video-ati/src/evergreen_exa.c +++ b/driver/xf86-video-ati/src/evergreen_exa.c @@ -77,6 +77,7 @@ EVERGREENPrepareSolid(PixmapPtr pPix, int alu, Pixel pm, Pixel fg) dst.offset = 0; dst.bo = radeon_get_pixmap_bo(pPix); dst.tiling_flags = radeon_get_pixmap_tiling(pPix); + dst.surface = radeon_get_pixmap_surface(pPix); dst.pitch = exaGetPixmapPitch(pPix) / (pPix->drawable.bitsPerPixel / 8); dst.width = pPix->drawable.width; @@ -129,6 +130,7 @@ EVERGREENPrepareSolid(PixmapPtr pPix, int alu, Pixel pm, Pixel fg) cb_conf.h = accel_state->dst_obj.height; cb_conf.base = accel_state->dst_obj.offset; cb_conf.bo = accel_state->dst_obj.bo; + cb_conf.surface = accel_state->dst_obj.surface; if (accel_state->dst_obj.bpp == 8) { cb_conf.format = COLOR_8; @@ -159,7 +161,7 @@ EVERGREENPrepareSolid(PixmapPtr pPix, int alu, Pixel pm, Pixel fg) cb_conf.pmask |= 8; /* A */ cb_conf.rop = accel_state->rop; if (accel_state->dst_obj.tiling_flags == 0) { - cb_conf.array_mode = 1; + cb_conf.array_mode = 0; cb_conf.non_disp_tiling = 1; } evergreen_set_render_target(pScrn, &cb_conf, accel_state->dst_obj.domain); @@ -172,6 +174,7 @@ EVERGREENPrepareSolid(PixmapPtr pPix, int alu, Pixel pm, Pixel fg) ps_alu_consts = radeon_vbo_space(pScrn, &accel_state->cbuf, 256); ps_const_conf.bo = accel_state->cbuf.vb_bo; ps_const_conf.const_addr = accel_state->cbuf.vb_mc_addr + accel_state->cbuf.vb_offset; + ps_const_conf.cpu_ptr = (uint32_t *)(char *)ps_alu_consts; if (accel_state->dst_obj.bpp == 16) { r = (fg >> 11) & 0x1f; g = (fg >> 5) & 0x3f; @@ -312,6 +315,7 @@ EVERGREENDoPrepareCopy(ScrnInfoPtr pScrn) tex_res.size = accel_state->src_size[0]; tex_res.bo = accel_state->src_obj[0].bo; tex_res.mip_bo = accel_state->src_obj[0].bo; + tex_res.surface = accel_state->src_obj[0].surface; if (accel_state->src_obj[0].bpp == 8) { tex_res.format = FMT_8; tex_res.dst_sel_x = SQ_SEL_1; /* R */ @@ -336,7 +340,7 @@ EVERGREENDoPrepareCopy(ScrnInfoPtr pScrn) tex_res.last_level = 0; tex_res.perf_modulation = 0; if (accel_state->src_obj[0].tiling_flags == 0) - tex_res.array_mode = 1; + tex_res.array_mode = 0; evergreen_set_tex_resource(pScrn, &tex_res, accel_state->src_obj[0].domain); tex_samp.id = 0; @@ -355,6 +359,7 @@ EVERGREENDoPrepareCopy(ScrnInfoPtr pScrn) cb_conf.h = accel_state->dst_obj.height; cb_conf.base = accel_state->dst_obj.offset; cb_conf.bo = accel_state->dst_obj.bo; + cb_conf.surface = accel_state->dst_obj.surface; if (accel_state->dst_obj.bpp == 8) { cb_conf.format = COLOR_8; cb_conf.comp_swap = 3; /* A */ @@ -378,7 +383,7 @@ EVERGREENDoPrepareCopy(ScrnInfoPtr pScrn) cb_conf.pmask |= 8; /* A */ cb_conf.rop = accel_state->rop; if (accel_state->dst_obj.tiling_flags == 0) { - cb_conf.array_mode = 1; + cb_conf.array_mode = 0; cb_conf.non_disp_tiling = 1; } evergreen_set_render_target(pScrn, &cb_conf, accel_state->dst_obj.domain); @@ -466,6 +471,8 @@ EVERGREENPrepareCopy(PixmapPtr pSrc, PixmapPtr pDst, dst_obj.offset = 0; src_obj.bo = radeon_get_pixmap_bo(pSrc); dst_obj.bo = radeon_get_pixmap_bo(pDst); + dst_obj.surface = radeon_get_pixmap_surface(pDst); + src_obj.surface = radeon_get_pixmap_surface(pSrc); dst_obj.tiling_flags = radeon_get_pixmap_tiling(pDst); src_obj.tiling_flags = radeon_get_pixmap_tiling(pSrc); if (radeon_get_pixmap_bo(pSrc) == radeon_get_pixmap_bo(pDst)) @@ -494,6 +501,9 @@ EVERGREENPrepareCopy(PixmapPtr pSrc, PixmapPtr pDst, drmmode_get_height_align(pScrn, accel_state->dst_obj.tiling_flags)); unsigned long size = height * accel_state->dst_obj.pitch * pDst->drawable.bitsPerPixel/8; + if (accel_state->dst_obj.surface) + size = accel_state->dst_obj.surface->bo_size; + if (accel_state->copy_area_bo) { radeon_bo_unref(accel_state->copy_area_bo); accel_state->copy_area_bo = NULL; @@ -505,7 +515,7 @@ EVERGREENPrepareCopy(PixmapPtr pSrc, PixmapPtr pDst, RADEON_FALLBACK(("temp copy surface alloc failed\n")); radeon_cs_space_add_persistent_bo(info->cs, accel_state->copy_area_bo, - RADEON_GEM_DOMAIN_VRAM, RADEON_GEM_DOMAIN_VRAM); + 0, RADEON_GEM_DOMAIN_VRAM); if (radeon_cs_space_check(info->cs)) { radeon_bo_unref(accel_state->copy_area_bo); accel_state->copy_area_bo = NULL; @@ -574,12 +584,17 @@ EVERGREENCopy(PixmapPtr pDst, uint32_t orig_src_tiling_flags = accel_state->src_obj[0].tiling_flags; uint32_t orig_dst_tiling_flags = accel_state->dst_obj.tiling_flags; struct radeon_bo *orig_bo = accel_state->dst_obj.bo; + int orig_rop = accel_state->rop; + struct radeon_surface *orig_dst_surface = accel_state->dst_obj.surface; + struct radeon_surface *orig_src_surface = accel_state->src_obj[0].surface; /* src to tmp */ accel_state->dst_obj.domain = RADEON_GEM_DOMAIN_VRAM; accel_state->dst_obj.bo = accel_state->copy_area_bo; accel_state->dst_obj.offset = 0; accel_state->dst_obj.tiling_flags = 0; + accel_state->rop = 3; + accel_state->dst_obj.surface = NULL; EVERGREENDoPrepareCopy(pScrn); EVERGREENAppendCopyVertex(pScrn, srcX, srcY, dstX, dstY, w, h); EVERGREENDoCopy(pScrn); @@ -589,10 +604,13 @@ EVERGREENCopy(PixmapPtr pDst, accel_state->src_obj[0].bo = accel_state->copy_area_bo; accel_state->src_obj[0].offset = 0; accel_state->src_obj[0].tiling_flags = 0; + accel_state->src_obj[0].surface = NULL; accel_state->dst_obj.domain = orig_dst_domain; accel_state->dst_obj.bo = orig_bo; accel_state->dst_obj.offset = 0; accel_state->dst_obj.tiling_flags = orig_dst_tiling_flags; + accel_state->rop = orig_rop; + accel_state->dst_obj.surface = orig_dst_surface; EVERGREENDoPrepareCopy(pScrn); EVERGREENAppendCopyVertex(pScrn, dstX, dstY, dstX, dstY, w, h); EVERGREENDoCopyVline(pDst); @@ -602,6 +620,7 @@ EVERGREENCopy(PixmapPtr pDst, accel_state->src_obj[0].bo = orig_bo; accel_state->src_obj[0].offset = 0; accel_state->src_obj[0].tiling_flags = orig_src_tiling_flags; + accel_state->src_obj[0].surface = orig_src_surface; } else EVERGREENAppendCopyVertex(pScrn, srcX, srcY, dstX, dstY, w, h); @@ -847,6 +866,7 @@ static Bool EVERGREENTextureSetup(PicturePtr pPict, PixmapPtr pPix, tex_res.format = EVERGREENTexFormats[i].card_fmt; tex_res.bo = accel_state->src_obj[unit].bo; tex_res.mip_bo = accel_state->src_obj[unit].bo; + tex_res.surface = accel_state->src_obj[unit].surface; #if X_BYTE_ORDER == X_BIG_ENDIAN switch (accel_state->src_obj[unit].bpp) { @@ -979,7 +999,7 @@ static Bool EVERGREENTextureSetup(PicturePtr pPict, PixmapPtr pPix, tex_res.last_level = 0; tex_res.perf_modulation = 0; if (accel_state->src_obj[unit].tiling_flags == 0) - tex_res.array_mode = 1; + tex_res.array_mode = 0; evergreen_set_tex_resource (pScrn, &tex_res, accel_state->src_obj[unit].domain); tex_samp.id = unit; @@ -1129,9 +1149,10 @@ static Bool EVERGREENPrepareComposite(int op, PicturePtr pSrcPicture, dst_obj.offset = 0; src_obj.bo = radeon_get_pixmap_bo(pSrc); dst_obj.bo = radeon_get_pixmap_bo(pDst); + dst_obj.surface = radeon_get_pixmap_surface(pDst); + src_obj.surface = radeon_get_pixmap_surface(pSrc); dst_obj.tiling_flags = radeon_get_pixmap_tiling(pDst); src_obj.tiling_flags = radeon_get_pixmap_tiling(pSrc); - src_obj.pitch = exaGetPixmapPitch(pSrc) / (pSrc->drawable.bitsPerPixel / 8); dst_obj.pitch = exaGetPixmapPitch(pDst) / (pDst->drawable.bitsPerPixel / 8); @@ -1150,7 +1171,7 @@ static Bool EVERGREENPrepareComposite(int op, PicturePtr pSrcPicture, mask_obj.bo = radeon_get_pixmap_bo(pMask); mask_obj.tiling_flags = radeon_get_pixmap_tiling(pMask); mask_obj.pitch = exaGetPixmapPitch(pMask) / (pMask->drawable.bitsPerPixel / 8); - + mask_obj.surface = radeon_get_pixmap_surface(pMask); mask_obj.width = pMask->drawable.width; mask_obj.height = pMask->drawable.height; mask_obj.bpp = pMask->drawable.bitsPerPixel; @@ -1258,6 +1279,7 @@ static Bool EVERGREENPrepareComposite(int op, PicturePtr pSrcPicture, cb_conf.base = accel_state->dst_obj.offset; cb_conf.format = dst_format; cb_conf.bo = accel_state->dst_obj.bo; + cb_conf.surface = accel_state->dst_obj.surface; switch (pDstPicture->format) { case PICT_a8r8g8b8: @@ -1291,7 +1313,7 @@ static Bool EVERGREENPrepareComposite(int op, PicturePtr pSrcPicture, cb_conf.rop = 3; cb_conf.pmask = 0xf; if (accel_state->dst_obj.tiling_flags == 0) { - cb_conf.array_mode = 1; + cb_conf.array_mode = 0; cb_conf.non_disp_tiling = 1; } #if X_BYTE_ORDER == X_BIG_ENDIAN @@ -1320,6 +1342,7 @@ static Bool EVERGREENPrepareComposite(int op, PicturePtr pSrcPicture, vs_const_conf.bo = accel_state->cbuf.vb_bo; vs_const_conf.const_addr = accel_state->cbuf.vb_mc_addr + accel_state->cbuf.vb_offset; + vs_const_conf.cpu_ptr = (uint32_t *)(char *)cbuf; EVERGREENXFormSetup(pSrcPicture, pSrc, 0, cbuf); if (pMask) EVERGREENXFormSetup(pMaskPicture, pMask, 1, cbuf); @@ -1495,6 +1518,7 @@ EVERGREENUploadToScreen(PixmapPtr pDst, int x, int y, int w, int h, src_obj.domain = RADEON_GEM_DOMAIN_GTT; src_obj.bo = scratch; src_obj.tiling_flags = 0; + src_obj.surface = NULL; dst_obj.pitch = dst_pitch_hw; dst_obj.width = pDst->drawable.width; @@ -1504,6 +1528,7 @@ EVERGREENUploadToScreen(PixmapPtr pDst, int x, int y, int w, int h, dst_obj.domain = RADEON_GEM_DOMAIN_VRAM; dst_obj.bo = radeon_get_pixmap_bo(pDst); dst_obj.tiling_flags = radeon_get_pixmap_tiling(pDst); + dst_obj.surface = radeon_get_pixmap_surface(pDst); if (!R600SetAccelState(pScrn, &src_obj, @@ -1634,6 +1659,7 @@ EVERGREENDownloadFromScreen(PixmapPtr pSrc, int x, int y, int w, src_obj.domain = RADEON_GEM_DOMAIN_VRAM | RADEON_GEM_DOMAIN_GTT; src_obj.bo = radeon_get_pixmap_bo(pSrc); src_obj.tiling_flags = radeon_get_pixmap_tiling(pSrc); + src_obj.surface = radeon_get_pixmap_surface(pSrc); dst_obj.pitch = scratch_pitch; dst_obj.width = w; @@ -1643,6 +1669,7 @@ EVERGREENDownloadFromScreen(PixmapPtr pSrc, int x, int y, int w, dst_obj.bpp = bpp; dst_obj.domain = RADEON_GEM_DOMAIN_GTT; dst_obj.tiling_flags = 0; + dst_obj.surface = NULL; if (!R600SetAccelState(pScrn, &src_obj, @@ -1931,7 +1958,7 @@ EVERGREENDrawInit(ScreenPtr pScreen) if (!EVERGREENAllocShaders(pScrn, pScreen)) return FALSE; - if (info->ChipFamily == CHIP_FAMILY_CAYMAN) { + if (info->ChipFamily >= CHIP_FAMILY_CAYMAN) { if (!CAYMANLoadShaders(pScrn)) return FALSE; } else { diff --git a/driver/xf86-video-ati/src/evergreen_state.h b/driver/xf86-video-ati/src/evergreen_state.h index 40fec229f..5a29f8fcb 100644 --- a/driver/xf86-video-ati/src/evergreen_state.h +++ b/driver/xf86-video-ati/src/evergreen_state.h @@ -93,6 +93,9 @@ typedef struct { int blend_enable; uint32_t blendcntl; struct radeon_bo *bo; +#ifdef XF86DRM_MODE + struct radeon_surface *surface; +#endif } cb_config_t; /* Shader */ @@ -120,6 +123,7 @@ typedef struct { int size_bytes; uint64_t const_addr; struct radeon_bo *bo; + uint32_t *cpu_ptr; } const_config_t; /* Vertex buffer / vtx resource */ @@ -178,6 +182,9 @@ typedef struct { int min_lod; struct radeon_bo *bo; struct radeon_bo *mip_bo; +#ifdef XF86DRM_MODE + struct radeon_surface *surface; +#endif } tex_resource_t; /* Texture sampler */ diff --git a/driver/xf86-video-ati/src/evergreen_textured_videofuncs.c b/driver/xf86-video-ati/src/evergreen_textured_videofuncs.c index 6200cdc27..8ca8e6273 100644 --- a/driver/xf86-video-ati/src/evergreen_textured_videofuncs.c +++ b/driver/xf86-video-ati/src/evergreen_textured_videofuncs.c @@ -158,6 +158,7 @@ EVERGREENDisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) src_obj.offset = 0; dst_obj.bo = radeon_get_pixmap_bo(pPixmap); dst_obj.tiling_flags = radeon_get_pixmap_tiling(pPixmap); + dst_obj.surface = radeon_get_pixmap_surface(pPixmap); dst_obj.pitch = exaGetPixmapPitch(pPixmap) / (pPixmap->drawable.bitsPerPixel / 8); @@ -168,6 +169,7 @@ EVERGREENDisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) src_obj.domain = RADEON_GEM_DOMAIN_VRAM | RADEON_GEM_DOMAIN_GTT; src_obj.bo = pPriv->src_bo[pPriv->currentBuffer]; src_obj.tiling_flags = 0; + src_obj.surface = NULL; dst_obj.width = pPixmap->drawable.width; dst_obj.height = pPixmap->drawable.height; @@ -248,6 +250,7 @@ EVERGREENDisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) tex_res.size = accel_state->src_size[0]; tex_res.bo = accel_state->src_obj[0].bo; tex_res.mip_bo = accel_state->src_obj[0].bo; + tex_res.surface = NULL; tex_res.format = FMT_8; tex_res.dst_sel_x = SQ_SEL_X; /* Y */ @@ -340,6 +343,7 @@ EVERGREENDisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) tex_res.size = accel_state->src_size[0]; tex_res.bo = accel_state->src_obj[0].bo; tex_res.mip_bo = accel_state->src_obj[0].bo; + tex_res.surface = NULL; tex_res.format = FMT_8_8; if (pPriv->id == FOURCC_UYVY) @@ -406,6 +410,7 @@ EVERGREENDisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) cb_conf.h = accel_state->dst_obj.height; cb_conf.base = accel_state->dst_obj.offset; cb_conf.bo = accel_state->dst_obj.bo; + cb_conf.surface = accel_state->dst_obj.surface; switch (accel_state->dst_obj.bpp) { case 16: @@ -449,6 +454,7 @@ EVERGREENDisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) ps_alu_consts = radeon_vbo_space(pScrn, &accel_state->cbuf, 256); ps_const_conf.bo = accel_state->cbuf.vb_bo; ps_const_conf.const_addr = accel_state->cbuf.vb_mc_addr + accel_state->cbuf.vb_offset; + ps_const_conf.cpu_ptr = (uint32_t *)(char *)ps_alu_consts; ps_alu_consts[0] = off[0]; ps_alu_consts[1] = off[1]; @@ -474,6 +480,7 @@ EVERGREENDisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) vs_alu_consts = radeon_vbo_space(pScrn, &accel_state->cbuf, 256); vs_const_conf.bo = accel_state->cbuf.vb_bo; vs_const_conf.const_addr = accel_state->cbuf.vb_mc_addr + accel_state->cbuf.vb_offset; + vs_const_conf.cpu_ptr = (uint32_t *)(char *)vs_alu_consts; vs_alu_consts[0] = 1.0 / pPriv->w; vs_alu_consts[1] = 1.0 / pPriv->h; diff --git a/driver/xf86-video-ati/src/pcidb/ati_pciids.csv b/driver/xf86-video-ati/src/pcidb/ati_pciids.csv index 131e56c65..337643821 100644 --- a/driver/xf86-video-ati/src/pcidb/ati_pciids.csv +++ b/driver/xf86-video-ati/src/pcidb/ati_pciids.csv @@ -86,6 +86,7 @@ "0x4C64","RV250_Ld","RV250",1,,,,,"ATI FireGL Mobility 9000 (M9) Ld (AGP)" "0x4C66","RV250_Lf","RV250",1,,,,,"ATI Radeon Mobility 9000 (M9) Lf (AGP)" "0x4C67","RV250_Lg","RV250",1,,,,,"ATI Radeon Mobility 9000 (M9) Lg (AGP)" +"0x4C6E","RV280_4C6E","RV280",1,,,,,"ATI FireMV 2400 PCI" "0x4D46","RAGE128MF","R128",,,,,, "0x4D4C","RAGE128ML","R128",,,,,, "0x4E44","R300_ND","R300",,,,,,"ATI Radeon 9700 Pro ND (AGP)" @@ -461,6 +462,8 @@ "0x9647","SUMO_9647","SUMO",1,1,,,1,"SUMO" "0x9648","SUMO_9648","SUMO",1,1,,,1,"SUMO" "0x964A","SUMO_964A","SUMO",,1,,,1,"SUMO" +"0x964B","SUMO_964B","SUMO",,1,,,1,"SUMO" +"0x964C","SUMO_964C","SUMO",,1,,,1,"SUMO" "0x964E","SUMO_964E","SUMO",1,1,,,1,"SUMO" "0x964F","SUMO_964F","SUMO",1,1,,,1,"SUMO" "0x9710","RS880_9710","RS880",,1,,,1,"ATI Radeon HD 4200" @@ -475,6 +478,8 @@ "0x9805","PALM_9805","PALM",,1,,,1,"AMD Radeon HD 6250 Graphics" "0x9806","PALM_9806","PALM",,1,,,1,"AMD Radeon HD 6300 Series Graphics" "0x9807","PALM_9807","PALM",,1,,,1,"AMD Radeon HD 6200 Series Graphics" +"0x9808","PALM_9808","PALM",,1,,,1,"PALM" +"0x9809","PALM_9809","PALM",,1,,,1,"PALM" "0x6880","CYPRESS_6880","CYPRESS",1,,,,,"CYPRESS" "0x6888","CYPRESS_6888","CYPRESS",,,,,,"ATI FirePro (FireGL) Graphics Adapter" "0x6889","CYPRESS_6889","CYPRESS",,,,,,"ATI FirePro (FireGL) Graphics Adapter" @@ -516,6 +521,7 @@ "0x68F2","CEDAR_68F2","CEDAR",,,,,,"ATI FirePro 2270" "0x68F8","CEDAR_68F8","CEDAR",,,,,,"CEDAR" "0x68F9","CEDAR_68F9","CEDAR",,,,,,"ATI Radeon HD 5450" +"0x68FA","CEDAR_68FA","CEDAR",,,,,,"CEDAR" "0x68FE","CEDAR_68FE","CEDAR",,,,,,"CEDAR" "0x6700","CAYMAN_6700","CAYMAN",,,,,,"CAYMAN" "0x6701","CAYMAN_6701","CAYMAN",,,,,,"CAYMAN" @@ -556,9 +562,20 @@ "0x6748","TURKS_6748","TURKS",,,,,,"TURKS" "0x6749","TURKS_6749","TURKS",,,,,,"TURKS" "0x6750","TURKS_6750","TURKS",,,,,,"TURKS" +"0x6751","TURKS_6751","TURKS",,,,,,"TURKS" "0x6758","TURKS_6758","TURKS",,,,,,"TURKS" "0x6759","TURKS_6759","TURKS",,,,,,"TURKS" +"0x675B","TURKS_675B","TURKS",,,,,,"TURKS" +"0x675D","TURKS_675D","TURKS",,,,,,"TURKS" "0x675F","TURKS_675F","TURKS",,,,,,"TURKS" +"0x6840","TURKS_6840","TURKS",1,,,,,"TURKS" +"0x6841","TURKS_6841","TURKS",1,,,,,"TURKS" +"0x6842","TURKS_6842","TURKS",1,,,,,"TURKS" +"0x6843","TURKS_6843","TURKS",1,,,,,"TURKS" +"0x6849","TURKS_6849","TURKS",,,,,,"TURKS" +"0x6850","TURKS_6850","TURKS",,,,,,"TURKS" +"0x6858","TURKS_6858","TURKS",,,,,,"TURKS" +"0x6859","TURKS_6859","TURKS",,,,,,"TURKS" "0x6760","CAICOS_6760","CAICOS",1,,,,,"CAICOS" "0x6761","CAICOS_6761","CAICOS",1,,,,,"CAICOS" "0x6762","CAICOS_6762","CAICOS",,,,,,"CAICOS" @@ -569,5 +586,14 @@ "0x6767","CAICOS_6767","CAICOS",,,,,,"CAICOS" "0x6768","CAICOS_6768","CAICOS",,,,,,"CAICOS" "0x6770","CAICOS_6770","CAICOS",,,,,,"CAICOS" +"0x6772","CAICOS_6772","CAICOS",,,,,,"CAICOS" "0x6778","CAICOS_6778","CAICOS",,,,,,"CAICOS" "0x6779","CAICOS_6779","CAICOS",,,,,,"CAICOS" +"0x677B","CAICOS_677B","CAICOS",,,,,,"CAICOS" +"0x9900","ARUBA_9900","ARUBA",1,,,,,"ARUBA" +"0x9901","ARUBA_9901","ARUBA",,,,,,"ARUBA" +"0x9903","ARUBA_9903","ARUBA",1,,,,,"ARUBA" +"0x9904","ARUBA_9904","ARUBA",,,,,,"ARUBA" +"0x990f","ARUBA_990f","ARUBA",,,,,,"ARUBA" +"0x9990","ARUBA_9990","ARUBA",1,,,,,"ARUBA" +"0x9991","ARUBA_9991","ARUBA",,,,,,"ARUBA" diff --git a/driver/xf86-video-ati/src/r600_exa.c b/driver/xf86-video-ati/src/r600_exa.c index 71e1393f5..e1eb62f14 100644 --- a/driver/xf86-video-ati/src/r600_exa.c +++ b/driver/xf86-video-ati/src/r600_exa.c @@ -62,15 +62,11 @@ R600SetAccelState(ScrnInfoPtr pScrn, memcpy(&accel_state->src_obj[0], src0, sizeof(struct r600_accel_object)); accel_state->src_size[0] = src0->pitch * src0->height * (src0->bpp/8); #if defined(XF86DRM_MODE) - if (info->cs) { - pitch_align = drmmode_get_pitch_align(pScrn, - accel_state->src_obj[0].bpp / 8, - accel_state->src_obj[0].tiling_flags) - 1; - base_align = drmmode_get_base_align(pScrn, - accel_state->src_obj[0].bpp / 8, - accel_state->src_obj[0].tiling_flags) - 1; + if (info->cs && src0->surface) { + accel_state->src_size[0] = src0->surface->bo_size; } #endif + /* bad pitch */ if (accel_state->src_obj[0].pitch & pitch_align) RADEON_FALLBACK(("Bad src pitch 0x%08x\n", accel_state->src_obj[0].pitch)); @@ -88,15 +84,11 @@ R600SetAccelState(ScrnInfoPtr pScrn, memcpy(&accel_state->src_obj[1], src1, sizeof(struct r600_accel_object)); accel_state->src_size[1] = src1->pitch * src1->height * (src1->bpp/8); #if defined(XF86DRM_MODE) - if (info->cs) { - pitch_align = drmmode_get_pitch_align(pScrn, - accel_state->src_obj[1].bpp / 8, - accel_state->src_obj[1].tiling_flags) - 1; - base_align = drmmode_get_base_align(pScrn, - accel_state->src_obj[1].bpp / 8, - accel_state->src_obj[1].tiling_flags) - 1; + if (info->cs && src1->surface) { + accel_state->src_size[1] = src1->surface->bo_size; } #endif + /* bad pitch */ if (accel_state->src_obj[1].pitch & pitch_align) RADEON_FALLBACK(("Bad src pitch 0x%08x\n", accel_state->src_obj[1].pitch)); @@ -113,15 +105,13 @@ R600SetAccelState(ScrnInfoPtr pScrn, memcpy(&accel_state->dst_obj, dst, sizeof(struct r600_accel_object)); accel_state->dst_size = dst->pitch * dst->height * (dst->bpp/8); #if defined(XF86DRM_MODE) - if (info->cs) { - pitch_align = drmmode_get_pitch_align(pScrn, - accel_state->dst_obj.bpp / 8, - accel_state->dst_obj.tiling_flags) - 1; - base_align = drmmode_get_base_align(pScrn, - accel_state->dst_obj.bpp / 8, - accel_state->dst_obj.tiling_flags) - 1; - } + if (info->cs && dst->surface) { + accel_state->dst_size = dst->surface->bo_size; + } else #endif + { + accel_state->dst_obj.tiling_flags = 0; + } if (accel_state->dst_obj.pitch & pitch_align) RADEON_FALLBACK(("Bad dst pitch 0x%08x\n", accel_state->dst_obj.pitch)); @@ -197,6 +187,7 @@ R600PrepareSolid(PixmapPtr pPix, int alu, Pixel pm, Pixel fg) dst.offset = 0; dst.bo = radeon_get_pixmap_bo(pPix); dst.tiling_flags = radeon_get_pixmap_tiling(pPix); + dst.surface = radeon_get_pixmap_surface(pPix); } else #endif { @@ -254,6 +245,9 @@ R600PrepareSolid(PixmapPtr pPix, int alu, Pixel pm, Pixel fg) cb_conf.h = accel_state->dst_obj.height; cb_conf.base = accel_state->dst_obj.offset; cb_conf.bo = accel_state->dst_obj.bo; +#ifdef XF86DRM_MODE + cb_conf.surface = accel_state->dst_obj.surface; +#endif if (accel_state->dst_obj.bpp == 8) { cb_conf.format = COLOR_8; @@ -284,7 +278,7 @@ R600PrepareSolid(PixmapPtr pPix, int alu, Pixel pm, Pixel fg) cb_conf.pmask |= 8; /* A */ cb_conf.rop = accel_state->rop; if (accel_state->dst_obj.tiling_flags == 0) - cb_conf.array_mode = 1; + cb_conf.array_mode = 0; r600_set_render_target(pScrn, accel_state->ib, &cb_conf, accel_state->dst_obj.domain); r600_set_spi(pScrn, accel_state->ib, 0, 0); @@ -433,6 +427,9 @@ R600DoPrepareCopy(ScrnInfoPtr pScrn) tex_res.size = accel_state->src_size[0]; tex_res.bo = accel_state->src_obj[0].bo; tex_res.mip_bo = accel_state->src_obj[0].bo; +#ifdef XF86DRM_MODE + tex_res.surface = accel_state->src_obj[0].surface; +#endif if (accel_state->src_obj[0].bpp == 8) { tex_res.format = FMT_8; tex_res.dst_sel_x = SQ_SEL_1; /* R */ @@ -477,6 +474,9 @@ R600DoPrepareCopy(ScrnInfoPtr pScrn) cb_conf.h = accel_state->dst_obj.height; cb_conf.base = accel_state->dst_obj.offset; cb_conf.bo = accel_state->dst_obj.bo; +#ifdef XF86DRM_MODE + cb_conf.surface = accel_state->dst_obj.surface; +#endif if (accel_state->dst_obj.bpp == 8) { cb_conf.format = COLOR_8; cb_conf.comp_swap = 3; /* A */ @@ -501,7 +501,7 @@ R600DoPrepareCopy(ScrnInfoPtr pScrn) cb_conf.pmask |= 8; /* A */ cb_conf.rop = accel_state->rop; if (accel_state->dst_obj.tiling_flags == 0) - cb_conf.array_mode = 1; + cb_conf.array_mode = 0; r600_set_render_target(pScrn, accel_state->ib, &cb_conf, accel_state->dst_obj.domain); r600_set_spi(pScrn, accel_state->ib, (1 - 1), 1); @@ -591,6 +591,8 @@ R600PrepareCopy(PixmapPtr pSrc, PixmapPtr pDst, dst_obj.bo = radeon_get_pixmap_bo(pDst); dst_obj.tiling_flags = radeon_get_pixmap_tiling(pDst); src_obj.tiling_flags = radeon_get_pixmap_tiling(pSrc); + src_obj.surface = radeon_get_pixmap_surface(pSrc); + dst_obj.surface = radeon_get_pixmap_surface(pDst); if (radeon_get_pixmap_bo(pSrc) == radeon_get_pixmap_bo(pDst)) accel_state->same_surface = TRUE; } else @@ -624,12 +626,12 @@ R600PrepareCopy(PixmapPtr pSrc, PixmapPtr pDst, if (accel_state->same_surface == TRUE) { #if defined(XF86DRM_MODE) - unsigned height = RADEON_ALIGN(pDst->drawable.height, - drmmode_get_height_align(pScrn, accel_state->dst_obj.tiling_flags)); + unsigned long size = accel_state->dst_obj.surface->bo_size; + unsigned long align = accel_state->dst_obj.surface->bo_alignment; #else unsigned height = pDst->drawable.height; -#endif unsigned long size = height * accel_state->dst_obj.pitch * pDst->drawable.bitsPerPixel/8; +#endif #if defined(XF86DRM_MODE) if (info->cs) { @@ -637,14 +639,14 @@ R600PrepareCopy(PixmapPtr pSrc, PixmapPtr pDst, radeon_bo_unref(accel_state->copy_area_bo); accel_state->copy_area_bo = NULL; } - accel_state->copy_area_bo = radeon_bo_open(info->bufmgr, 0, size, 0, + accel_state->copy_area_bo = radeon_bo_open(info->bufmgr, 0, size, align, RADEON_GEM_DOMAIN_VRAM, 0); if (accel_state->copy_area_bo == NULL) RADEON_FALLBACK(("temp copy surface alloc failed\n")); radeon_cs_space_add_persistent_bo(info->cs, accel_state->copy_area_bo, - RADEON_GEM_DOMAIN_VRAM, RADEON_GEM_DOMAIN_VRAM); + 0, RADEON_GEM_DOMAIN_VRAM); if (radeon_cs_space_check(info->cs)) { radeon_bo_unref(accel_state->copy_area_bo); accel_state->copy_area_bo = NULL; @@ -730,6 +732,7 @@ R600Copy(PixmapPtr pDst, uint32_t orig_src_tiling_flags = accel_state->src_obj[0].tiling_flags; uint32_t orig_dst_tiling_flags = accel_state->dst_obj.tiling_flags; struct radeon_bo *orig_bo = accel_state->dst_obj.bo; + int orig_rop = accel_state->rop; #if defined(XF86DRM_MODE) if (info->cs) { @@ -747,6 +750,7 @@ R600Copy(PixmapPtr pDst, accel_state->dst_obj.bo = accel_state->copy_area_bo; accel_state->dst_obj.offset = tmp_offset; accel_state->dst_obj.tiling_flags = 0; + accel_state->rop = 3; R600DoPrepareCopy(pScrn); R600AppendCopyVertex(pScrn, srcX, srcY, dstX, dstY, w, h); R600DoCopy(pScrn); @@ -760,6 +764,7 @@ R600Copy(PixmapPtr pDst, accel_state->dst_obj.bo = orig_bo; accel_state->dst_obj.offset = orig_offset; accel_state->dst_obj.tiling_flags = orig_dst_tiling_flags; + accel_state->rop = orig_rop; R600DoPrepareCopy(pScrn); R600AppendCopyVertex(pScrn, dstX, dstY, dstX, dstY, w, h); R600DoCopyVline(pDst); @@ -976,6 +981,9 @@ static Bool R600TextureSetup(PicturePtr pPict, PixmapPtr pPix, tex_res.format = R600TexFormats[i].card_fmt; tex_res.bo = accel_state->src_obj[unit].bo; tex_res.mip_bo = accel_state->src_obj[unit].bo; +#ifdef XF86DRM_MODE + tex_res.surface = accel_state->src_obj[unit].surface; +#endif tex_res.request_size = 1; #if X_BYTE_ORDER == X_BIG_ENDIAN @@ -1291,6 +1299,8 @@ static Bool R600PrepareComposite(int op, PicturePtr pSrcPicture, dst_obj.bo = radeon_get_pixmap_bo(pDst); dst_obj.tiling_flags = radeon_get_pixmap_tiling(pDst); src_obj.tiling_flags = radeon_get_pixmap_tiling(pSrc); + dst_obj.surface = radeon_get_pixmap_surface(pDst); + src_obj.surface = radeon_get_pixmap_surface(pSrc); } else #endif { @@ -1318,6 +1328,7 @@ static Bool R600PrepareComposite(int op, PicturePtr pSrcPicture, mask_obj.offset = 0; mask_obj.bo = radeon_get_pixmap_bo(pMask); mask_obj.tiling_flags = radeon_get_pixmap_tiling(pMask); + mask_obj.surface = radeon_get_pixmap_surface(pMask); } else #endif { @@ -1429,6 +1440,9 @@ static Bool R600PrepareComposite(int op, PicturePtr pSrcPicture, cb_conf.base = accel_state->dst_obj.offset; cb_conf.format = dst_format; cb_conf.bo = accel_state->dst_obj.bo; +#ifdef XF86DRM_MODE + cb_conf.surface = accel_state->dst_obj.surface; +#endif switch (pDstPicture->format) { case PICT_a8r8g8b8: @@ -1462,7 +1476,7 @@ static Bool R600PrepareComposite(int op, PicturePtr pSrcPicture, cb_conf.pmask = 0xf; cb_conf.rop = 3; if (accel_state->dst_obj.tiling_flags == 0) - cb_conf.array_mode = 1; + cb_conf.array_mode = 0; #if X_BYTE_ORDER == X_BIG_ENDIAN switch (dst_obj.bpp) { case 16: @@ -1865,6 +1879,9 @@ R600UploadToScreenCS(PixmapPtr pDst, int x, int y, int w, int h, src_obj.domain = RADEON_GEM_DOMAIN_GTT; src_obj.bo = scratch; src_obj.tiling_flags = 0; +#ifdef XF86DRM_MODE + src_obj.surface = NULL; +#endif dst_obj.pitch = dst_pitch_hw; dst_obj.width = pDst->drawable.width; @@ -1874,6 +1891,9 @@ R600UploadToScreenCS(PixmapPtr pDst, int x, int y, int w, int h, dst_obj.domain = RADEON_GEM_DOMAIN_VRAM; dst_obj.bo = radeon_get_pixmap_bo(pDst); dst_obj.tiling_flags = radeon_get_pixmap_tiling(pDst); +#ifdef XF86DRM_MODE + dst_obj.surface = radeon_get_pixmap_surface(pDst); +#endif if (!R600SetAccelState(pScrn, &src_obj, @@ -2000,6 +2020,9 @@ R600DownloadFromScreenCS(PixmapPtr pSrc, int x, int y, int w, src_obj.domain = RADEON_GEM_DOMAIN_VRAM | RADEON_GEM_DOMAIN_GTT; src_obj.bo = radeon_get_pixmap_bo(pSrc); src_obj.tiling_flags = radeon_get_pixmap_tiling(pSrc); +#ifdef XF86DRM_MODE + src_obj.surface = radeon_get_pixmap_surface(pSrc); +#endif dst_obj.pitch = scratch_pitch; dst_obj.width = w; @@ -2009,6 +2032,9 @@ R600DownloadFromScreenCS(PixmapPtr pSrc, int x, int y, int w, dst_obj.bpp = bpp; dst_obj.domain = RADEON_GEM_DOMAIN_GTT; dst_obj.tiling_flags = 0; +#ifdef XF86DRM_MODE + dst_obj.surface = NULL; +#endif if (!R600SetAccelState(pScrn, &src_obj, diff --git a/driver/xf86-video-ati/src/r600_state.h b/driver/xf86-video-ati/src/r600_state.h index d5785cdd8..f6d5a8806 100644 --- a/driver/xf86-video-ati/src/r600_state.h +++ b/driver/xf86-video-ati/src/r600_state.h @@ -56,6 +56,9 @@ typedef struct { int blend_enable; uint32_t blendcntl; struct radeon_bo *bo; +#ifdef XF86DRM_MODE + struct radeon_surface *surface; +#endif } cb_config_t; /* Depth buffer */ @@ -142,6 +145,9 @@ typedef struct { int interlaced; struct radeon_bo *bo; struct radeon_bo *mip_bo; +#ifdef XF86DRM_MODE + struct radeon_surface *surface; +#endif } tex_resource_t; /* Texture sampler */ diff --git a/driver/xf86-video-ati/src/r600_textured_videofuncs.c b/driver/xf86-video-ati/src/r600_textured_videofuncs.c index aab43f3a7..62da992ca 100644 --- a/driver/xf86-video-ati/src/r600_textured_videofuncs.c +++ b/driver/xf86-video-ati/src/r600_textured_videofuncs.c @@ -170,6 +170,7 @@ R600DisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) src_obj.offset = 0; dst_obj.bo = radeon_get_pixmap_bo(pPixmap); dst_obj.tiling_flags = radeon_get_pixmap_tiling(pPixmap); + dst_obj.surface = radeon_get_pixmap_surface(pPixmap); } else #endif { @@ -186,6 +187,9 @@ R600DisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) src_obj.domain = RADEON_GEM_DOMAIN_VRAM | RADEON_GEM_DOMAIN_GTT; src_obj.bo = pPriv->src_bo[pPriv->currentBuffer]; src_obj.tiling_flags = 0; +#ifdef XF86DRM_MODE + src_obj.surface = NULL; +#endif dst_obj.width = pPixmap->drawable.width; dst_obj.height = pPixmap->drawable.height; @@ -270,6 +274,9 @@ R600DisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) tex_res.size = accel_state->src_size[0]; tex_res.bo = accel_state->src_obj[0].bo; tex_res.mip_bo = accel_state->src_obj[0].bo; +#ifdef XF86DRM_MODE + tex_res.surface = NULL; +#endif tex_res.format = FMT_8; tex_res.dst_sel_x = SQ_SEL_X; /* Y */ @@ -431,6 +438,9 @@ R600DisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) cb_conf.h = accel_state->dst_obj.height; cb_conf.base = accel_state->dst_obj.offset; cb_conf.bo = accel_state->dst_obj.bo; +#ifdef XF86DRM_MODE + cb_conf.surface = accel_state->dst_obj.surface; +#endif switch (accel_state->dst_obj.bpp) { case 16: @@ -493,7 +503,7 @@ R600DisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) } while (nBox--) { - int srcX, srcY, srcw, srch; + float srcX, srcY, srcw, srch; int dstX, dstY, dstw, dsth; float *vb; @@ -505,13 +515,13 @@ R600DisplayTexturedVideo(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) srcX = pPriv->src_x; srcX += ((pBox->x1 - pPriv->drw_x) * - pPriv->src_w) / pPriv->dst_w; + pPriv->src_w) / (float)pPriv->dst_w; srcY = pPriv->src_y; srcY += ((pBox->y1 - pPriv->drw_y) * - pPriv->src_h) / pPriv->dst_h; + pPriv->src_h) / (float)pPriv->dst_h; - srcw = (pPriv->src_w * dstw) / pPriv->dst_w; - srch = (pPriv->src_h * dsth) / pPriv->dst_h; + srcw = (pPriv->src_w * dstw) / (float)pPriv->dst_w; + srch = (pPriv->src_h * dsth) / (float)pPriv->dst_h; vb = radeon_vbo_space(pScrn, &accel_state->vbo, 16); diff --git a/driver/xf86-video-ati/src/r6xx_accel.c b/driver/xf86-video-ati/src/r6xx_accel.c index 752165b70..8d2542411 100644 --- a/driver/xf86-video-ati/src/r6xx_accel.c +++ b/driver/xf86-video-ati/src/r6xx_accel.c @@ -223,12 +223,37 @@ void r600_set_render_target(ScrnInfoPtr pScrn, drmBufPtr ib, cb_config_t *cb_conf, uint32_t domain) { uint32_t cb_color_info, cb_color_control; - int pitch, slice, h; + unsigned pitch, slice, h, array_mode; RADEONInfoPtr info = RADEONPTR(pScrn); + +#if defined(XF86DRM_MODE) + if (cb_conf->surface) { + switch (cb_conf->surface->level[0].mode) { + case RADEON_SURF_MODE_1D: + array_mode = 2; + break; + case RADEON_SURF_MODE_2D: + array_mode = 4; + break; + default: + array_mode = 0; + break; + } + pitch = (cb_conf->surface->level[0].nblk_x >> 3) - 1; + slice = ((cb_conf->surface->level[0].nblk_x * cb_conf->surface->level[0].nblk_y) / 64) - 1; + } else +#endif + { + array_mode = cb_conf->array_mode; + pitch = (cb_conf->w / 8) - 1; + h = RADEON_ALIGN(cb_conf->h, 8); + slice = ((cb_conf->w * h) / 64) - 1; + } + cb_color_info = ((cb_conf->endian << ENDIAN_shift) | (cb_conf->format << CB_COLOR0_INFO__FORMAT_shift) | - (cb_conf->array_mode << CB_COLOR0_INFO__ARRAY_MODE_shift) | + (array_mode << CB_COLOR0_INFO__ARRAY_MODE_shift) | (cb_conf->number_type << NUMBER_TYPE_shift) | (cb_conf->comp_swap << COMP_SWAP_shift) | (cb_conf->tile_mode << CB_COLOR0_INFO__TILE_MODE_shift)); @@ -251,10 +276,6 @@ r600_set_render_target(ScrnInfoPtr pScrn, drmBufPtr ib, cb_config_t *cb_conf, ui if (cb_conf->source_format) cb_color_info |= SOURCE_FORMAT_bit; - pitch = (cb_conf->w / 8) - 1; - h = RADEON_ALIGN(cb_conf->h, 8); - slice = ((cb_conf->w * h) / 64) - 1; - BEGIN_BATCH(3 + 2); EREG(ib, (CB_COLOR0_BASE + (4 * cb_conf->id)), (cb_conf->base >> 8)); RELOC_BATCH(cb_conf->bo, 0, domain); @@ -345,9 +366,6 @@ r600_cp_wait_vline_sync(ScrnInfoPtr pScrn, drmBufPtr ib, PixmapPtr pPix, if (!crtc) return; - if (stop < start) - return; - if (!crtc->enabled) return; @@ -367,16 +385,12 @@ r600_cp_wait_vline_sync(ScrnInfoPtr pScrn, drmBufPtr ib, PixmapPtr pPix, return; } - start = max(start, 0); - stop = min(stop, crtc->mode.VDisplay); + start = max(start, crtc->y); + stop = min(stop, crtc->y + crtc->mode.VDisplay); - if (start > crtc->mode.VDisplay) + if (start >= stop) return; - /* on r5xx+ vline starts at viewport_y */ - start += crtc->y; - stop += crtc->y; - #if defined(XF86DRM_MODE) if (info->cs) { drmmode_crtc_private_ptr drmmode_crtc = crtc->driver_private; @@ -609,12 +623,34 @@ r600_set_tex_resource(ScrnInfoPtr pScrn, drmBufPtr ib, tex_resource_t *tex_res, RADEONInfoPtr info = RADEONPTR(pScrn); uint32_t sq_tex_resource_word0, sq_tex_resource_word1, sq_tex_resource_word4; uint32_t sq_tex_resource_word5, sq_tex_resource_word6; + uint32_t array_mode, pitch; + +#if defined(XF86DRM_MODE) + if (tex_res->surface) { + switch (tex_res->surface->level[0].mode) { + case RADEON_SURF_MODE_1D: + array_mode = 2; + break; + case RADEON_SURF_MODE_2D: + array_mode = 4; + break; + default: + array_mode = 0; + break; + } + pitch = tex_res->surface->level[0].nblk_x >> 3; + } else +#endif + { + array_mode = tex_res->tile_mode; + pitch = (tex_res->pitch + 7) >> 3; + } sq_tex_resource_word0 = ((tex_res->dim << DIM_shift) | - (tex_res->tile_mode << SQ_TEX_RESOURCE_WORD0_0__TILE_MODE_shift)); + (array_mode << SQ_TEX_RESOURCE_WORD0_0__TILE_MODE_shift)); if (tex_res->w) - sq_tex_resource_word0 |= (((((tex_res->pitch + 7) >> 3) - 1) << PITCH_shift) | + sq_tex_resource_word0 |= (((pitch - 1) << PITCH_shift) | ((tex_res->w - 1) << TEX_WIDTH_shift)); if (tex_res->tile_type) @@ -1125,7 +1161,7 @@ r600_set_default_state(ScrnInfoPtr pScrn, drmBufPtr ib) r600_fs_setup(pScrn, ib, &fs_conf, RADEON_GEM_DOMAIN_VRAM); // VGT - BEGIN_BATCH(43); + BEGIN_BATCH(46); PACK0(ib, VGT_MAX_VTX_INDX, 4); E32(ib, 0xffffff); // VGT_MAX_VTX_INDX E32(ib, 0); // VGT_MIN_VTX_INDX @@ -1164,6 +1200,7 @@ r600_set_default_state(ScrnInfoPtr pScrn, drmBufPtr ib) E32(ib, 0); // VGT_VTX_CNT_EN EREG(ib, VGT_STRMOUT_BUFFER_EN, 0); + EREG(ib, SX_MISC, 0); END_BATCH(); } diff --git a/driver/xf86-video-ati/src/radeon.h b/driver/xf86-video-ati/src/radeon.h index 73d6db1e9..ce9508c33 100644 --- a/driver/xf86-video-ati/src/radeon.h +++ b/driver/xf86-video-ati/src/radeon.h @@ -91,6 +91,7 @@ #include "radeon_cs.h" #include "radeon_dri2.h" #include "drmmode_display.h" +#include "radeon_surface.h" #else #include "radeon_dummy_bufmgr.h" #endif @@ -183,6 +184,7 @@ typedef enum { OPTION_PANEL_SIZE, OPTION_MIN_DOTCLOCK, OPTION_COLOR_TILING, + OPTION_COLOR_TILING_2D, #ifdef XvExtension OPTION_VIDEO_KEY, OPTION_RAGE_THEATRE_CRYSTAL, @@ -442,6 +444,9 @@ typedef struct _atomBiosHandle *atomBiosHandlePtr; struct radeon_exa_pixmap_priv { struct radeon_bo *bo; uint32_t tiling_flags; +#ifdef XF86DRM_MODE + struct radeon_surface surface; +#endif Bool bo_mapped; }; @@ -621,6 +626,9 @@ struct r600_accel_object { uint32_t domain; struct radeon_bo *bo; uint32_t tiling_flags; +#if defined(XF86DRM_MODE) + struct radeon_surface *surface; +#endif }; struct radeon_vbo_object { @@ -792,7 +800,9 @@ struct radeon_accel_state { typedef struct { EntityInfoPtr pEnt; pciVideoPtr PciInfo; +#ifndef XSERVER_LIBPCIACCESS PCITAG PciTag; +#endif int Chipset; RADEONChipFamily ChipFamily; RADEONErrata ChipErrata; @@ -887,6 +897,7 @@ typedef struct { /* accel */ Bool RenderAccel; /* Render */ Bool allowColorTiling; + Bool allowColorTiling2D; Bool tilingEnabled; /* mirror of sarea->tiling_enabled */ struct radeon_accel_state *accel_state; Bool accelOn; @@ -1001,7 +1012,7 @@ typedef struct { struct radeon_cs_manager *csm; struct radeon_cs *cs; - struct radeon_bo *cursor_bo[6]; + struct radeon_bo *cursor_bo[32]; uint64_t vram_size; uint64_t gart_size; drmmode_rec drmmode; @@ -1012,6 +1023,8 @@ typedef struct { int num_channels; int num_banks; int r7xx_bank_op; + struct radeon_surface_manager *surf_man; + struct radeon_surface front_surface; #else /* fake bool */ Bool cs; @@ -1070,6 +1083,7 @@ extern void RADEONRestoreLVDSRegisters(ScrnInfoPtr pScrn, RADEONSavePtr restore) extern void RADEONRestoreRMXRegisters(ScrnInfoPtr pScrn, RADEONSavePtr restore); extern void RADEONSaveDACRegisters(ScrnInfoPtr pScrn, RADEONSavePtr save); extern void RADEONSaveFPRegisters(ScrnInfoPtr pScrn, RADEONSavePtr save); +extern void radeon_save_palette_on_demand(ScrnInfoPtr pScrn, int palID); extern void RADEONGetTVDacAdjInfo(ScrnInfoPtr pScrn, radeon_tvdac_ptr tvdac); extern void RADEONGetTMDSInfoFromTable(ScrnInfoPtr pScrn, radeon_tmds_ptr tmds); @@ -1144,6 +1158,7 @@ extern void RADEONWaitForVLineMMIO(ScrnInfoPtr pScrn, PixmapPtr pPix, /* radeon_crtc.c */ extern void radeon_crtc_dpms(xf86CrtcPtr crtc, int mode); +extern void radeon_do_crtc_dpms(xf86CrtcPtr crtc, int mode); extern void radeon_crtc_load_lut(xf86CrtcPtr crtc); extern void radeon_crtc_modeset_ioctl(xf86CrtcPtr crtc, Bool post); extern Bool RADEONAllocateControllers(ScrnInfoPtr pScrn, int mask); @@ -1227,6 +1242,7 @@ extern void RADEONPMFini(ScrnInfoPtr pScrn); #ifdef USE_EXA /* radeon_exa.c */ +extern unsigned eg_tile_split(unsigned tile_split); extern Bool RADEONSetupMemEXA(ScreenPtr pScreen); extern Bool radeon_transform_is_affine_or_scaled(PictTransformPtr t); @@ -1318,6 +1334,7 @@ extern void radeon_ddx_cs_start(ScrnInfoPtr pScrn, int num, const char *file, const char *func, int line); void radeon_kms_update_vram_limit(ScrnInfoPtr pScrn, int new_fb_size); +struct radeon_surface *radeon_get_pixmap_surface(PixmapPtr pPix); #endif struct radeon_bo *radeon_get_pixmap_bo(PixmapPtr pPix); void radeon_set_pixmap_bo(PixmapPtr pPix, struct radeon_bo *bo); @@ -1665,6 +1682,8 @@ static __inline__ int radeon_timedout(const struct timeval *endtime) enum { RADEON_CREATE_PIXMAP_TILING_MACRO = 0x10000000, RADEON_CREATE_PIXMAP_TILING_MICRO = 0x20000000, + RADEON_CREATE_PIXMAP_DEPTH = 0x40000000, /* for r200 */ + RADEON_CREATE_PIXMAP_SZBUFFER = 0x80000000, /* for eg */ }; #endif /* _RADEON_H_ */ diff --git a/driver/xf86-video-ati/src/radeon_chipinfo_gen.h b/driver/xf86-video-ati/src/radeon_chipinfo_gen.h index fcf6b3362..a57882502 100644 --- a/driver/xf86-video-ati/src/radeon_chipinfo_gen.h +++ b/driver/xf86-video-ati/src/radeon_chipinfo_gen.h @@ -53,6 +53,7 @@ static RADEONCardInfo RADEONCards[] = { { 0x4C64, CHIP_FAMILY_RV250, 1, 0, 0, 0, 0 }, { 0x4C66, CHIP_FAMILY_RV250, 1, 0, 0, 0, 0 }, { 0x4C67, CHIP_FAMILY_RV250, 1, 0, 0, 0, 0 }, + { 0x4C6E, CHIP_FAMILY_RV280, 1, 0, 0, 0, 0 }, { 0x4E44, CHIP_FAMILY_R300, 0, 0, 0, 0, 0 }, { 0x4E45, CHIP_FAMILY_R300, 0, 0, 0, 0, 0 }, { 0x4E46, CHIP_FAMILY_R300, 0, 0, 0, 0, 0 }, @@ -380,6 +381,8 @@ static RADEONCardInfo RADEONCards[] = { { 0x9647, CHIP_FAMILY_SUMO, 1, 1, 0, 0, 1 }, { 0x9648, CHIP_FAMILY_SUMO, 1, 1, 0, 0, 1 }, { 0x964A, CHIP_FAMILY_SUMO, 0, 1, 0, 0, 1 }, + { 0x964B, CHIP_FAMILY_SUMO, 0, 1, 0, 0, 1 }, + { 0x964C, CHIP_FAMILY_SUMO, 0, 1, 0, 0, 1 }, { 0x964E, CHIP_FAMILY_SUMO, 1, 1, 0, 0, 1 }, { 0x964F, CHIP_FAMILY_SUMO, 1, 1, 0, 0, 1 }, { 0x9710, CHIP_FAMILY_RS880, 0, 1, 0, 0, 1 }, @@ -394,6 +397,8 @@ static RADEONCardInfo RADEONCards[] = { { 0x9805, CHIP_FAMILY_PALM, 0, 1, 0, 0, 1 }, { 0x9806, CHIP_FAMILY_PALM, 0, 1, 0, 0, 1 }, { 0x9807, CHIP_FAMILY_PALM, 0, 1, 0, 0, 1 }, + { 0x9808, CHIP_FAMILY_PALM, 0, 1, 0, 0, 1 }, + { 0x9809, CHIP_FAMILY_PALM, 0, 1, 0, 0, 1 }, { 0x6880, CHIP_FAMILY_CYPRESS, 1, 0, 0, 0, 0 }, { 0x6888, CHIP_FAMILY_CYPRESS, 0, 0, 0, 0, 0 }, { 0x6889, CHIP_FAMILY_CYPRESS, 0, 0, 0, 0, 0 }, @@ -435,6 +440,7 @@ static RADEONCardInfo RADEONCards[] = { { 0x68F2, CHIP_FAMILY_CEDAR, 0, 0, 0, 0, 0 }, { 0x68F8, CHIP_FAMILY_CEDAR, 0, 0, 0, 0, 0 }, { 0x68F9, CHIP_FAMILY_CEDAR, 0, 0, 0, 0, 0 }, + { 0x68FA, CHIP_FAMILY_CEDAR, 0, 0, 0, 0, 0 }, { 0x68FE, CHIP_FAMILY_CEDAR, 0, 0, 0, 0, 0 }, { 0x6700, CHIP_FAMILY_CAYMAN, 0, 0, 0, 0, 0 }, { 0x6701, CHIP_FAMILY_CAYMAN, 0, 0, 0, 0, 0 }, @@ -475,9 +481,20 @@ static RADEONCardInfo RADEONCards[] = { { 0x6748, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, { 0x6749, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, { 0x6750, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, + { 0x6751, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, { 0x6758, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, { 0x6759, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, + { 0x675B, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, + { 0x675D, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, { 0x675F, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, + { 0x6840, CHIP_FAMILY_TURKS, 1, 0, 0, 0, 0 }, + { 0x6841, CHIP_FAMILY_TURKS, 1, 0, 0, 0, 0 }, + { 0x6842, CHIP_FAMILY_TURKS, 1, 0, 0, 0, 0 }, + { 0x6843, CHIP_FAMILY_TURKS, 1, 0, 0, 0, 0 }, + { 0x6849, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, + { 0x6850, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, + { 0x6858, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, + { 0x6859, CHIP_FAMILY_TURKS, 0, 0, 0, 0, 0 }, { 0x6760, CHIP_FAMILY_CAICOS, 1, 0, 0, 0, 0 }, { 0x6761, CHIP_FAMILY_CAICOS, 1, 0, 0, 0, 0 }, { 0x6762, CHIP_FAMILY_CAICOS, 0, 0, 0, 0, 0 }, @@ -488,6 +505,15 @@ static RADEONCardInfo RADEONCards[] = { { 0x6767, CHIP_FAMILY_CAICOS, 0, 0, 0, 0, 0 }, { 0x6768, CHIP_FAMILY_CAICOS, 0, 0, 0, 0, 0 }, { 0x6770, CHIP_FAMILY_CAICOS, 0, 0, 0, 0, 0 }, + { 0x6772, CHIP_FAMILY_CAICOS, 0, 0, 0, 0, 0 }, { 0x6778, CHIP_FAMILY_CAICOS, 0, 0, 0, 0, 0 }, { 0x6779, CHIP_FAMILY_CAICOS, 0, 0, 0, 0, 0 }, + { 0x677B, CHIP_FAMILY_CAICOS, 0, 0, 0, 0, 0 }, + { 0x9900, CHIP_FAMILY_ARUBA, 1, 0, 0, 0, 0 }, + { 0x9901, CHIP_FAMILY_ARUBA, 0, 0, 0, 0, 0 }, + { 0x9903, CHIP_FAMILY_ARUBA, 1, 0, 0, 0, 0 }, + { 0x9904, CHIP_FAMILY_ARUBA, 0, 0, 0, 0, 0 }, + { 0x990f, CHIP_FAMILY_ARUBA, 0, 0, 0, 0, 0 }, + { 0x9990, CHIP_FAMILY_ARUBA, 1, 0, 0, 0, 0 }, + { 0x9991, CHIP_FAMILY_ARUBA, 0, 0, 0, 0, 0 }, }; diff --git a/driver/xf86-video-ati/src/radeon_chipset_gen.h b/driver/xf86-video-ati/src/radeon_chipset_gen.h index 0303a5dcb..e7f7379a0 100644 --- a/driver/xf86-video-ati/src/radeon_chipset_gen.h +++ b/driver/xf86-video-ati/src/radeon_chipset_gen.h @@ -53,6 +53,7 @@ static SymTabRec RADEONChipsets[] = { { PCI_CHIP_RV250_Ld, "ATI FireGL Mobility 9000 (M9) Ld (AGP)" }, { PCI_CHIP_RV250_Lf, "ATI Radeon Mobility 9000 (M9) Lf (AGP)" }, { PCI_CHIP_RV250_Lg, "ATI Radeon Mobility 9000 (M9) Lg (AGP)" }, + { PCI_CHIP_RV280_4C6E, "ATI FireMV 2400 PCI" }, { PCI_CHIP_R300_ND, "ATI Radeon 9700 Pro ND (AGP)" }, { PCI_CHIP_R300_NE, "ATI Radeon 9700/9500Pro NE (AGP)" }, { PCI_CHIP_R300_NF, "ATI Radeon 9600TX NF (AGP)" }, @@ -380,6 +381,8 @@ static SymTabRec RADEONChipsets[] = { { PCI_CHIP_SUMO_9647, "SUMO" }, { PCI_CHIP_SUMO_9648, "SUMO" }, { PCI_CHIP_SUMO_964A, "SUMO" }, + { PCI_CHIP_SUMO_964B, "SUMO" }, + { PCI_CHIP_SUMO_964C, "SUMO" }, { PCI_CHIP_SUMO_964E, "SUMO" }, { PCI_CHIP_SUMO_964F, "SUMO" }, { PCI_CHIP_RS880_9710, "ATI Radeon HD 4200" }, @@ -394,6 +397,8 @@ static SymTabRec RADEONChipsets[] = { { PCI_CHIP_PALM_9805, "AMD Radeon HD 6250 Graphics" }, { PCI_CHIP_PALM_9806, "AMD Radeon HD 6300 Series Graphics" }, { PCI_CHIP_PALM_9807, "AMD Radeon HD 6200 Series Graphics" }, + { PCI_CHIP_PALM_9808, "PALM" }, + { PCI_CHIP_PALM_9809, "PALM" }, { PCI_CHIP_CYPRESS_6880, "CYPRESS" }, { PCI_CHIP_CYPRESS_6888, "ATI FirePro (FireGL) Graphics Adapter" }, { PCI_CHIP_CYPRESS_6889, "ATI FirePro (FireGL) Graphics Adapter" }, @@ -435,6 +440,7 @@ static SymTabRec RADEONChipsets[] = { { PCI_CHIP_CEDAR_68F2, "ATI FirePro 2270" }, { PCI_CHIP_CEDAR_68F8, "CEDAR" }, { PCI_CHIP_CEDAR_68F9, "ATI Radeon HD 5450" }, + { PCI_CHIP_CEDAR_68FA, "CEDAR" }, { PCI_CHIP_CEDAR_68FE, "CEDAR" }, { PCI_CHIP_CAYMAN_6700, "CAYMAN" }, { PCI_CHIP_CAYMAN_6701, "CAYMAN" }, @@ -475,9 +481,20 @@ static SymTabRec RADEONChipsets[] = { { PCI_CHIP_TURKS_6748, "TURKS" }, { PCI_CHIP_TURKS_6749, "TURKS" }, { PCI_CHIP_TURKS_6750, "TURKS" }, + { PCI_CHIP_TURKS_6751, "TURKS" }, { PCI_CHIP_TURKS_6758, "TURKS" }, { PCI_CHIP_TURKS_6759, "TURKS" }, + { PCI_CHIP_TURKS_675B, "TURKS" }, + { PCI_CHIP_TURKS_675D, "TURKS" }, { PCI_CHIP_TURKS_675F, "TURKS" }, + { PCI_CHIP_TURKS_6840, "TURKS" }, + { PCI_CHIP_TURKS_6841, "TURKS" }, + { PCI_CHIP_TURKS_6842, "TURKS" }, + { PCI_CHIP_TURKS_6843, "TURKS" }, + { PCI_CHIP_TURKS_6849, "TURKS" }, + { PCI_CHIP_TURKS_6850, "TURKS" }, + { PCI_CHIP_TURKS_6858, "TURKS" }, + { PCI_CHIP_TURKS_6859, "TURKS" }, { PCI_CHIP_CAICOS_6760, "CAICOS" }, { PCI_CHIP_CAICOS_6761, "CAICOS" }, { PCI_CHIP_CAICOS_6762, "CAICOS" }, @@ -488,7 +505,16 @@ static SymTabRec RADEONChipsets[] = { { PCI_CHIP_CAICOS_6767, "CAICOS" }, { PCI_CHIP_CAICOS_6768, "CAICOS" }, { PCI_CHIP_CAICOS_6770, "CAICOS" }, + { PCI_CHIP_CAICOS_6772, "CAICOS" }, { PCI_CHIP_CAICOS_6778, "CAICOS" }, { PCI_CHIP_CAICOS_6779, "CAICOS" }, + { PCI_CHIP_CAICOS_677B, "CAICOS" }, + { PCI_CHIP_ARUBA_9900, "ARUBA" }, + { PCI_CHIP_ARUBA_9901, "ARUBA" }, + { PCI_CHIP_ARUBA_9903, "ARUBA" }, + { PCI_CHIP_ARUBA_9904, "ARUBA" }, + { PCI_CHIP_ARUBA_990f, "ARUBA" }, + { PCI_CHIP_ARUBA_9990, "ARUBA" }, + { PCI_CHIP_ARUBA_9991, "ARUBA" }, { -1, NULL } }; diff --git a/driver/xf86-video-ati/src/radeon_commonfuncs.c b/driver/xf86-video-ati/src/radeon_commonfuncs.c index 728194904..e0b026f1b 100644 --- a/driver/xf86-video-ati/src/radeon_commonfuncs.c +++ b/driver/xf86-video-ati/src/radeon_commonfuncs.c @@ -839,9 +839,6 @@ void FUNC_NAME(RADEONWaitForVLine)(ScrnInfoPtr pScrn, PixmapPtr pPix, if (!crtc) return; - if (stop < start) - return; - if (!crtc->enabled) return; @@ -861,16 +858,16 @@ void FUNC_NAME(RADEONWaitForVLine)(ScrnInfoPtr pScrn, PixmapPtr pPix, return; } - start = max(start, 0); - stop = min(stop, crtc->mode.VDisplay); + start = max(start, crtc->y); + stop = min(stop, crtc->y + crtc->mode.VDisplay); - if (start > crtc->mode.VDisplay) + if (start >= stop) return; - if (IS_AVIVO_VARIANT) { - /* on r5xx+ vline starts at viewport_y */ - start += crtc->y; - stop += crtc->y; + if (!IS_AVIVO_VARIANT) { + /* on pre-r5xx vline starts at CRTC scanout */ + start -= crtc->y; + stop -= crtc->y; } #if defined(ACCEL_CP) && defined(XF86DRM_MODE) diff --git a/driver/xf86-video-ati/src/radeon_crtc.c b/driver/xf86-video-ati/src/radeon_crtc.c index d0daa484a..ade12283e 100644 --- a/driver/xf86-video-ati/src/radeon_crtc.c +++ b/driver/xf86-video-ati/src/radeon_crtc.c @@ -69,18 +69,12 @@ RADEONInitDispBandwidthAVIVO(ScrnInfoPtr pScrn, DisplayModePtr mode2, int pixel_bytes2); void -radeon_crtc_dpms(xf86CrtcPtr crtc, int mode) +radeon_do_crtc_dpms(xf86CrtcPtr crtc, int mode) { RADEONInfoPtr info = RADEONPTR(crtc->scrn); RADEONEntPtr pRADEONEnt = RADEONEntPriv(crtc->scrn); - RADEONCrtcPrivatePtr radeon_crtc = crtc->driver_private; xf86CrtcPtr crtc0 = pRADEONEnt->pCrtc[0]; - - if ((mode == DPMSModeOn) && radeon_crtc->enabled) - return; - - if (mode == DPMSModeOff) - radeon_crtc_modeset_ioctl(crtc, FALSE); + RADEONCrtcPrivatePtr radeon_crtc = crtc->driver_private; if (IS_AVIVO_VARIANT || info->r4xx_atom) { atombios_crtc_dpms(crtc, mode); @@ -101,6 +95,20 @@ radeon_crtc_dpms(xf86CrtcPtr crtc, int mode) legacy_crtc_dpms(crtc0, mode); } } +} + +void +radeon_crtc_dpms(xf86CrtcPtr crtc, int mode) +{ + RADEONCrtcPrivatePtr radeon_crtc = crtc->driver_private; + + if ((mode == DPMSModeOn) && radeon_crtc->enabled) + return; + + if (mode == DPMSModeOff) + radeon_crtc_modeset_ioctl(crtc, FALSE); + + radeon_do_crtc_dpms(crtc, mode); if (mode != DPMSModeOff) { radeon_crtc_modeset_ioctl(crtc, TRUE); @@ -511,6 +519,8 @@ radeon_crtc_load_lut(xf86CrtcPtr crtc) if (!crtc->enabled) return; + radeon_save_palette_on_demand(pScrn, radeon_crtc->crtc_id); + if (IS_DCE4_VARIANT) { OUTREG(EVERGREEN_DC_LUT_CONTROL + radeon_crtc->crtc_offset, 0); @@ -559,7 +569,6 @@ radeon_crtc_load_lut(xf86CrtcPtr crtc) if (IS_AVIVO_VARIANT) OUTREG(AVIVO_D1GRPH_LUT_SEL + radeon_crtc->crtc_offset, radeon_crtc->crtc_id); } - } static void diff --git a/driver/xf86-video-ati/src/radeon_dri2.c b/driver/xf86-video-ati/src/radeon_dri2.c index 8789d7359..8bd3f6671 100644 --- a/driver/xf86-video-ati/src/radeon_dri2.c +++ b/driver/xf86-video-ati/src/radeon_dri2.c @@ -40,6 +40,13 @@ #if HAVE_LIST_H #include "list.h" +#if !HAVE_XORG_LIST +#define xorg_list list +#define xorg_list_init list_init +#define xorg_list_add list_add +#define xorg_list_del list_del +#define xorg_list_for_each_entry list_for_each_entry +#endif #endif #ifdef RADEON_DRI2 @@ -121,6 +128,8 @@ radeon_dri2_create_buffers(DrawablePtr drawable, flags = RADEON_CREATE_PIXMAP_TILING_MICRO; else flags = RADEON_CREATE_PIXMAP_TILING_MACRO | RADEON_CREATE_PIXMAP_TILING_MICRO; + if (IS_R200_3D || info->ChipFamily == CHIP_FAMILY_RV200 || info->ChipFamily == CHIP_FAMILY_RADEON) + flags |= RADEON_CREATE_PIXMAP_DEPTH; break; case DRI2BufferDepthStencil: if (info->ChipFamily >= CHIP_FAMILY_R600) { @@ -132,6 +141,8 @@ radeon_dri2_create_buffers(DrawablePtr drawable, need_enlarge = 1; } else flags = RADEON_CREATE_PIXMAP_TILING_MACRO | RADEON_CREATE_PIXMAP_TILING_MICRO; + if (IS_R200_3D || info->ChipFamily == CHIP_FAMILY_RV200 || info->ChipFamily == CHIP_FAMILY_RADEON) + flags |= RADEON_CREATE_PIXMAP_DEPTH; break; case DRI2BufferBackLeft: case DRI2BufferBackRight: @@ -240,10 +251,10 @@ radeon_dri2_create_buffer(DrawablePtr drawable, struct dri2_buffer_priv *privates; PixmapPtr pixmap, depth_pixmap; struct radeon_exa_pixmap_priv *driver_priv; - int need_enlarge = 0; int flags; unsigned front_width; uint32_t tiling = 0; + unsigned aligned_width = drawable->width; pixmap = pScreen->GetScreenPixmap(pScreen); front_width = pixmap->drawable.width; @@ -267,32 +278,48 @@ radeon_dri2_create_buffer(DrawablePtr drawable, /* macro is the preferred setting, but the 2D detiling for software * fallbacks in mesa still has issues on some configurations */ - if (info->ChipFamily >= CHIP_FAMILY_R600) - flags = RADEON_CREATE_PIXMAP_TILING_MICRO; - else + if (info->ChipFamily >= CHIP_FAMILY_R600) { + if (info->allowColorTiling2D) { + flags = RADEON_CREATE_PIXMAP_TILING_MACRO; + } else { + flags = RADEON_CREATE_PIXMAP_TILING_MICRO; + } + if (info->ChipFamily >= CHIP_FAMILY_CEDAR) + flags |= RADEON_CREATE_PIXMAP_SZBUFFER; + } else flags = RADEON_CREATE_PIXMAP_TILING_MACRO | RADEON_CREATE_PIXMAP_TILING_MICRO; + if (IS_R200_3D || info->ChipFamily == CHIP_FAMILY_RV200 || info->ChipFamily == CHIP_FAMILY_RADEON) + flags |= RADEON_CREATE_PIXMAP_DEPTH; break; case DRI2BufferDepthStencil: /* macro is the preferred setting, but the 2D detiling for software * fallbacks in mesa still has issues on some configurations */ if (info->ChipFamily >= CHIP_FAMILY_R600) { - flags = RADEON_CREATE_PIXMAP_TILING_MICRO; + if (info->allowColorTiling2D) { + flags = RADEON_CREATE_PIXMAP_TILING_MACRO; + } else { + flags = RADEON_CREATE_PIXMAP_TILING_MICRO; + } if (info->ChipFamily >= CHIP_FAMILY_CEDAR) - need_enlarge = 1; + flags |= RADEON_CREATE_PIXMAP_SZBUFFER; } else flags = RADEON_CREATE_PIXMAP_TILING_MACRO | RADEON_CREATE_PIXMAP_TILING_MICRO; + if (IS_R200_3D || info->ChipFamily == CHIP_FAMILY_RV200 || info->ChipFamily == CHIP_FAMILY_RADEON) + flags |= RADEON_CREATE_PIXMAP_DEPTH; + break; case DRI2BufferBackLeft: case DRI2BufferBackRight: case DRI2BufferFakeFrontLeft: case DRI2BufferFakeFrontRight: - if (info->ChipFamily >= CHIP_FAMILY_R600) - /* macro is the preferred setting, but the 2D detiling for software - * fallbacks in mesa still has issues on some configurations - */ - flags = RADEON_CREATE_PIXMAP_TILING_MICRO; - else + if (info->ChipFamily >= CHIP_FAMILY_R600) { + if (info->allowColorTiling2D) { + flags = RADEON_CREATE_PIXMAP_TILING_MACRO; + } else { + flags = RADEON_CREATE_PIXMAP_TILING_MICRO; + } + } else flags = RADEON_CREATE_PIXMAP_TILING_MACRO; break; default: @@ -304,39 +331,6 @@ radeon_dri2_create_buffer(DrawablePtr drawable, if (flags & RADEON_CREATE_PIXMAP_TILING_MACRO) tiling |= RADEON_TILING_MACRO; - if (need_enlarge) { - /* evergreen uses separate allocations for depth and stencil - * so we make an extra large depth buffer to cover stencil - * as well. - */ - int depth = (format != 0) ? format : drawable->depth; - unsigned aligned_width = drawable->width; - unsigned width_align = drmmode_get_pitch_align(pScrn, drawable->depth / 8, tiling); - unsigned aligned_height; - unsigned height_align = drmmode_get_height_align(pScrn, tiling); - unsigned base_align = drmmode_get_base_align(pScrn, drawable->depth / 8, tiling); - unsigned pitch_bytes; - unsigned size; - - if (aligned_width == front_width) - aligned_width = pScrn->virtualX; - aligned_width = RADEON_ALIGN(aligned_width, width_align); - pitch_bytes = aligned_width * (depth / 8); - aligned_height = RADEON_ALIGN(drawable->height, height_align); - size = pitch_bytes * aligned_height; - size = RADEON_ALIGN(size, base_align); - /* add additional size for stencil */ - size += aligned_width * aligned_height; - aligned_height = RADEON_ALIGN(size / pitch_bytes, height_align); - - pixmap = (*pScreen->CreatePixmap)(pScreen, - aligned_width, - aligned_height, - (format != 0)?format:drawable->depth, - flags); - - } else { - unsigned aligned_width = drawable->width; if (aligned_width == front_width) aligned_width = pScrn->virtualX; @@ -346,7 +340,6 @@ radeon_dri2_create_buffer(DrawablePtr drawable, drawable->height, (format != 0)?format:drawable->depth, flags); - } } if (!pixmap) @@ -529,11 +522,11 @@ typedef struct _DRI2FrameEvent { Bool valid; - struct list link; + struct xorg_list link; } DRI2FrameEventRec, *DRI2FrameEventPtr; typedef struct _DRI2ClientEvents { - struct list reference_list; + struct xorg_list reference_list; } DRI2ClientEventsRec, *DRI2ClientEventsPtr; #if HAS_DEVPRIVATEKEYREC @@ -552,7 +545,7 @@ DevPrivateKey DRI2ClientEventsPrivateKey = &DRI2ClientEventsPrivateKeyIndex; dixLookupPrivate(&(pClient)->devPrivates, DRI2ClientEventsPrivateKey)) static int -ListAddDRI2ClientEvents(ClientPtr client, struct list *entry) +ListAddDRI2ClientEvents(ClientPtr client, struct xorg_list *entry) { DRI2ClientEventsPtr pClientPriv; pClientPriv = GetDRI2ClientEvents(client); @@ -561,12 +554,12 @@ ListAddDRI2ClientEvents(ClientPtr client, struct list *entry) return BadAlloc; } - list_add(entry, &pClientPriv->reference_list); + xorg_list_add(entry, &pClientPriv->reference_list); return 0; } static void -ListDelDRI2ClientEvents(ClientPtr client, struct list *entry) +ListDelDRI2ClientEvents(ClientPtr client, struct xorg_list *entry) { DRI2ClientEventsPtr pClientPriv; pClientPriv = GetDRI2ClientEvents(client); @@ -574,7 +567,23 @@ ListDelDRI2ClientEvents(ClientPtr client, struct list *entry) if (!pClientPriv) { return; } - list_del(entry); + xorg_list_del(entry); +} + +static void +radeon_dri2_ref_buffer(BufferPtr buffer) +{ + struct dri2_buffer_priv *private = buffer->driverPrivate; + private->refcnt++; +} + +static void +radeon_dri2_unref_buffer(BufferPtr buffer) +{ + if (buffer) { + struct dri2_buffer_priv *private = buffer->driverPrivate; + radeon_dri2_destroy_buffer(&(private->pixmap->drawable), buffer); + } } static void @@ -588,7 +597,7 @@ radeon_dri2_client_state_changed(CallbackListPtr *ClientStateCallback, pointer d switch (pClient->clientState) { case ClientStateInitial: - list_init(&pClientEventsPriv->reference_list); + xorg_list_init(&pClientEventsPriv->reference_list); break; case ClientStateRunning: break; @@ -596,8 +605,10 @@ radeon_dri2_client_state_changed(CallbackListPtr *ClientStateCallback, pointer d case ClientStateRetained: case ClientStateGone: if (pClientEventsPriv) { - list_for_each_entry(ref, &pClientEventsPriv->reference_list, link) { + xorg_list_for_each_entry(ref, &pClientEventsPriv->reference_list, link) { ref->valid = FALSE; + radeon_dri2_unref_buffer(ref->front); + radeon_dri2_unref_buffer(ref->back); } } break; @@ -606,22 +617,6 @@ radeon_dri2_client_state_changed(CallbackListPtr *ClientStateCallback, pointer d } } -static void -radeon_dri2_ref_buffer(BufferPtr buffer) -{ - struct dri2_buffer_priv *private = buffer->driverPrivate; - private->refcnt++; -} - -static void -radeon_dri2_unref_buffer(BufferPtr buffer) -{ - if (buffer) { - struct dri2_buffer_priv *private = buffer->driverPrivate; - radeon_dri2_destroy_buffer(&(private->pixmap->drawable), buffer); - } -} - static int radeon_dri2_drawable_crtc(DrawablePtr pDraw) { ScreenPtr pScreen = pDraw->pScreen; @@ -743,6 +738,16 @@ can_exchange(ScrnInfoPtr pScrn, DrawablePtr draw, return TRUE; } +static Bool +can_flip(ScrnInfoPtr pScrn, DrawablePtr draw, + DRI2BufferPtr front, DRI2BufferPtr back) +{ + return draw->type == DRAWABLE_WINDOW && + RADEONPTR(pScrn)->allowPageFlip && + DRI2CanFlip(draw) && + can_exchange(pScrn, draw, front, back); +} + static void radeon_dri2_exchange_buffers(DrawablePtr draw, DRI2BufferPtr front, DRI2BufferPtr back) { @@ -782,7 +787,6 @@ void radeon_dri2_frame_event_handler(unsigned int frame, unsigned int tv_sec, unsigned int tv_usec, void *event_data) { DRI2FrameEventPtr event = event_data; - RADEONInfoPtr info; DrawablePtr drawable; ScreenPtr screen; ScrnInfoPtr scrn; @@ -801,13 +805,10 @@ void radeon_dri2_frame_event_handler(unsigned int frame, unsigned int tv_sec, screen = drawable->pScreen; scrn = xf86Screens[screen->myNum]; - info = RADEONPTR(scrn); switch (event->type) { case DRI2_FLIP: - if (info->allowPageFlip && - DRI2CanFlip(drawable) && - can_exchange(scrn, drawable, event->front, event->back) && + if (can_flip(scrn, drawable, event->front, event->back) && radeon_dri2_schedule_flip(scrn, event->client, drawable, @@ -850,10 +851,11 @@ void radeon_dri2_frame_event_handler(unsigned int frame, unsigned int tv_sec, } cleanup: - radeon_dri2_unref_buffer(event->front); - radeon_dri2_unref_buffer(event->back); - if (event->valid) + if (event->valid) { + radeon_dri2_unref_buffer(event->front); + radeon_dri2_unref_buffer(event->back); ListDelDRI2ClientEvents(event->client, &event->link); + } free(event); } @@ -1182,9 +1184,7 @@ static int radeon_dri2_schedule_swap(ClientPtr client, DrawablePtr draw, current_msc = vbl.reply.sequence; /* Flips need to be submitted one frame before */ - if (info->allowPageFlip && - DRI2CanFlip(draw) && - can_exchange(scrn, draw, front, back)) { + if (can_flip(scrn, draw, front, back)) { swap_type = DRI2_FLIP; flip = 1; } diff --git a/driver/xf86-video-ati/src/radeon_driver.c b/driver/xf86-video-ati/src/radeon_driver.c index 293897a9e..2f22fe375 100644 --- a/driver/xf86-video-ati/src/radeon_driver.c +++ b/driver/xf86-video-ati/src/radeon_driver.c @@ -3023,9 +3023,11 @@ Bool RADEONPreInit(ScrnInfoPtr pScrn, int flags) } info->PciInfo = xf86GetPciInfoForEntity(info->pEnt->index); +#ifndef XSERVER_LIBPCIACCESS info->PciTag = pciTag(PCI_DEV_BUS(info->PciInfo), PCI_DEV_DEV(info->PciInfo), PCI_DEV_FUNC(info->PciInfo)); +#endif info->MMIOAddr = PCI_REGION_BASE(info->PciInfo, 2, REGION_MEM) & ~0xffULL; info->MMIOSize = PCI_REGION_SIZE(info->PciInfo, 2); xf86DrvMsg(pScrn->scrnIndex, X_INFO, "TOTO SAYS %016llx\n", @@ -3129,8 +3131,10 @@ Bool RADEONPreInit(ScrnInfoPtr pScrn, int flags) } else xf86DrvMsg(pScrn->scrnIndex, X_INFO, "VGAAccess option set to FALSE," " VGA module load skipped\n"); - if (info->VGAAccess) + if (info->VGAAccess) { + vgaHWSetStdFuncs(VGAHWPTR(pScrn)); vgaHWGetIOBase(VGAHWPTR(pScrn)); + } #endif @@ -4473,22 +4477,17 @@ static void RADEONSaveMemMapRegisters(ScrnInfoPtr pScrn, RADEONSavePtr save) } /* Read palette data */ -static void RADEONSavePalette(ScrnInfoPtr pScrn, RADEONSavePtr save) +static void RADEONSavePalette(ScrnInfoPtr pScrn, int palID, RADEONSavePtr save) { RADEONInfoPtr info = RADEONPTR(pScrn); unsigned char *RADEONMMIO = info->MMIO; int i; - PAL_SELECT(1); + PAL_SELECT(palID); INPAL_START(0); - for (i = 0; i < 256; i++) { - save->palette2[i] = INREG(RADEON_PALETTE_30_DATA); - } - PAL_SELECT(0); - INPAL_START(0); for (i = 0; i < 256; i++) { - save->palette[i] = INREG(RADEON_PALETTE_30_DATA); + save->palette[palID][i] = INREG(RADEON_PALETTE_30_DATA); } } @@ -4498,16 +4497,21 @@ static void RADEONRestorePalette(ScrnInfoPtr pScrn, RADEONSavePtr restore) unsigned char *RADEONMMIO = info->MMIO; int i; - PAL_SELECT(1); - OUTPAL_START(0); - for (i = 0; i < 256; i++) { - OUTREG(RADEON_PALETTE_30_DATA, restore->palette2[i]); + if (restore->palette_saved[1]) { + ErrorF("Restore Palette 2\n"); + PAL_SELECT(1); + OUTPAL_START(0); + for (i = 0; i < 256; i++) { + OUTREG(RADEON_PALETTE_30_DATA, restore->palette[1][i]); + } } - - PAL_SELECT(0); - OUTPAL_START(0); - for (i = 0; i < 256; i++) { - OUTREG(RADEON_PALETTE_30_DATA, restore->palette[i]); + if (restore->palette_saved[0]) { + ErrorF("Restore Palette 1\n"); + PAL_SELECT(0); + OUTPAL_START(0); + for (i = 0; i < 256; i++) { + OUTREG(RADEON_PALETTE_30_DATA, restore->palette[0][i]); + } } } @@ -5733,6 +5737,20 @@ RADEONSaveBIOSRegisters(ScrnInfoPtr pScrn, RADEONSavePtr save) } } +void radeon_save_palette_on_demand(ScrnInfoPtr pScrn, int palID) +{ + RADEONInfoPtr info = RADEONPTR(pScrn); + RADEONSavePtr save = info->SavedReg; + + if (save->palette_saved[palID] == TRUE) + return; + + if (!IS_AVIVO_VARIANT) + RADEONSavePalette(pScrn, palID, save); + + save->palette_saved[palID] = TRUE; +} + /* Save everything needed to restore the original VC state */ static void RADEONSave(ScrnInfoPtr pScrn) { @@ -5756,12 +5774,9 @@ static void RADEONSave(ScrnInfoPtr pScrn) * setup in the card at all !! */ vgaHWSave(pScrn, &hwp->SavedReg, VGA_SR_MODE); /* Save mode only */ -# elif defined(__linux__) +# else /* Save only mode * & fonts */ vgaHWSave(pScrn, &hwp->SavedReg, VGA_SR_MODE | VGA_SR_FONTS ); -# else - /* Save mode * & fonts & cmap */ - vgaHWSave(pScrn, &hwp->SavedReg, VGA_SR_ALL); # endif vgaHWLock(hwp); } @@ -5786,7 +5801,7 @@ static void RADEONSave(ScrnInfoPtr pScrn) RADEONSaveCrtcRegisters(pScrn, save); RADEONSaveFPRegisters(pScrn, save); RADEONSaveDACRegisters(pScrn, save); - RADEONSavePalette(pScrn, save); + /* Palette saving is done on demand now */ if (pRADEONEnt->HasCRTC2) { RADEONSaveCrtc2Registers(pScrn, save); @@ -5840,6 +5855,7 @@ static void RADEONRestore(ScrnInfoPtr pScrn) RADEONRestoreMemMapRegisters(pScrn, restore); RADEONRestoreCommonRegisters(pScrn, restore); + RADEONRestorePalette(pScrn, restore); if (pRADEONEnt->HasCRTC2) { RADEONRestoreCrtc2Registers(pScrn, restore); RADEONRestorePLL2Registers(pScrn, restore); @@ -5869,7 +5885,7 @@ static void RADEONRestore(ScrnInfoPtr pScrn) * corrupted. This hack solves the problem 99% of the time. A * correct fix is being worked on. */ - usleep(100000); + usleep(1000000); #endif if (info->ChipFamily < CHIP_FAMILY_R600) @@ -5879,12 +5895,12 @@ static void RADEONRestore(ScrnInfoPtr pScrn) if (pRADEONEnt->HasCRTC2 && !info->IsSecondary) { if (info->crtc2_on && xf86_config->num_crtc > 1) { crtc = xf86_config->crtc[1]; - crtc->funcs->dpms(crtc, DPMSModeOn); + radeon_do_crtc_dpms(crtc, DPMSModeOn); } } if (info->crtc_on) { crtc = xf86_config->crtc[0]; - crtc->funcs->dpms(crtc, DPMSModeOn); + radeon_do_crtc_dpms(crtc, DPMSModeOn); } #ifdef WITH_VGAHW @@ -5896,10 +5912,8 @@ static void RADEONRestore(ScrnInfoPtr pScrn) * write VGA fonts, will find a better solution in the future */ vgaHWRestore(pScrn, &hwp->SavedReg, VGA_SR_MODE ); -# elif defined(__linux__) - vgaHWRestore(pScrn, &hwp->SavedReg, VGA_SR_MODE | VGA_SR_FONTS ); # else - vgaHWRestore(pScrn, &hwp->SavedReg, VGA_SR_ALL ); + vgaHWRestore(pScrn, &hwp->SavedReg, VGA_SR_MODE | VGA_SR_FONTS ); # endif vgaHWLock(hwp); } @@ -5913,7 +5927,6 @@ static void RADEONRestore(ScrnInfoPtr pScrn) else if (IS_AVIVO_VARIANT) avivo_restore_vga_regs(pScrn, restore); else { - RADEONRestorePalette(pScrn, restore); RADEONRestoreDACRegisters(pScrn, restore); } #if 0 diff --git a/driver/xf86-video-ati/src/radeon_drm.h b/driver/xf86-video-ati/src/radeon_drm.h index 49a5f81a5..042e82221 100644 --- a/driver/xf86-video-ati/src/radeon_drm.h +++ b/driver/xf86-video-ati/src/radeon_drm.h @@ -800,12 +800,23 @@ struct drm_radeon_gem_create { uint32_t flags; }; -#define RADEON_TILING_MACRO 0x1 -#define RADEON_TILING_MICRO 0x2 -#define RADEON_TILING_SWAP_16BIT 0x4 -#define RADEON_TILING_SWAP_32BIT 0x8 -#define RADEON_TILING_SURFACE 0x10 /* this object requires a surface - * when mapped - i.e. front buffer */ +#define RADEON_TILING_MACRO 0x1 +#define RADEON_TILING_MICRO 0x2 +#define RADEON_TILING_SWAP_16BIT 0x4 +#define RADEON_TILING_SWAP_32BIT 0x8 +/* this object requires a surface when mapped - i.e. front buffer */ +#define RADEON_TILING_SURFACE 0x10 +#define RADEON_TILING_MICRO_SQUARE 0x20 +#define RADEON_TILING_EG_BANKW_SHIFT 8 +#define RADEON_TILING_EG_BANKW_MASK 0xf +#define RADEON_TILING_EG_BANKH_SHIFT 12 +#define RADEON_TILING_EG_BANKH_MASK 0xf +#define RADEON_TILING_EG_MACRO_TILE_ASPECT_SHIFT 16 +#define RADEON_TILING_EG_MACRO_TILE_ASPECT_MASK 0xf +#define RADEON_TILING_EG_TILE_SPLIT_SHIFT 24 +#define RADEON_TILING_EG_TILE_SPLIT_MASK 0xf +#define RADEON_TILING_EG_STENCIL_TILE_SPLIT_SHIFT 28 +#define RADEON_TILING_EG_STENCIL_TILE_SPLIT_MASK 0xf struct drm_radeon_gem_set_tiling { uint32_t handle; diff --git a/driver/xf86-video-ati/src/radeon_exa.c b/driver/xf86-video-ati/src/radeon_exa.c index f3daec045..99a58069e 100644 --- a/driver/xf86-video-ati/src/radeon_exa.c +++ b/driver/xf86-video-ati/src/radeon_exa.c @@ -454,9 +454,12 @@ void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height, RADEONInfoPtr info = RADEONPTR(pScrn); struct radeon_exa_pixmap_priv *new_priv; int pitch, base_align; - uint32_t size; + uint32_t size, heighta; uint32_t tiling = 0; int cpp = bitsPerPixel / 8; +#ifdef XF86DRM_MODE + struct radeon_surface surface; +#endif #ifdef EXA_MIXED_PIXMAPS if (info->accel_state->exa->flags & EXA_MIXED_PIXMAPS) { @@ -473,6 +476,9 @@ void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height, if (usage_hint & RADEON_CREATE_PIXMAP_TILING_MICRO) tiling |= RADEON_TILING_MICRO; } + if (usage_hint & RADEON_CREATE_PIXMAP_DEPTH) + tiling |= RADEON_TILING_MACRO | RADEON_TILING_MICRO; + } /* Small pixmaps must not be macrotiled on R300, hw cannot sample them @@ -485,17 +491,78 @@ void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height, tiling &= ~RADEON_TILING_MACRO; } - height = RADEON_ALIGN(height, drmmode_get_height_align(pScrn, tiling)); + heighta = RADEON_ALIGN(height, drmmode_get_height_align(pScrn, tiling)); pitch = RADEON_ALIGN(width, drmmode_get_pitch_align(pScrn, cpp, tiling)) * cpp; base_align = drmmode_get_base_align(pScrn, cpp, tiling); - size = RADEON_ALIGN(height * pitch, RADEON_GPU_PAGE_SIZE); + size = RADEON_ALIGN(heighta * pitch, RADEON_GPU_PAGE_SIZE); + memset(&surface, 0, sizeof(struct radeon_surface)); + +#ifdef XF86DRM_MODE + if (info->ChipFamily >= CHIP_FAMILY_R600 && info->surf_man) { + if (width) { + surface.npix_x = width; + /* need to align height to 8 for old kernel */ + surface.npix_y = RADEON_ALIGN(height, 8); + surface.npix_z = 1; + surface.blk_w = 1; + surface.blk_h = 1; + surface.blk_d = 1; + surface.array_size = 1; + surface.last_level = 0; + surface.bpe = cpp; + surface.nsamples = 1; + surface.flags = RADEON_SURF_SCANOUT; + surface.flags |= RADEON_SURF_SET(RADEON_SURF_TYPE_2D, TYPE); + surface.flags |= RADEON_SURF_SET(RADEON_SURF_MODE_LINEAR, MODE); + if ((tiling & RADEON_TILING_MICRO)) { + surface.flags = RADEON_SURF_CLR(surface.flags, MODE); + surface.flags |= RADEON_SURF_SET(RADEON_SURF_MODE_1D, MODE); + } + if ((tiling & RADEON_TILING_MACRO)) { + surface.flags = RADEON_SURF_CLR(surface.flags, MODE); + surface.flags |= RADEON_SURF_SET(RADEON_SURF_MODE_2D, MODE); + } + if (usage_hint & RADEON_CREATE_PIXMAP_SZBUFFER) { + surface.flags |= RADEON_SURF_ZBUFFER; + surface.flags |= RADEON_SURF_SBUFFER; + } + if (radeon_surface_best(info->surf_man, &surface)) { + return NULL; + } + if (radeon_surface_init(info->surf_man, &surface)) { + return NULL; + } + size = surface.bo_size; + base_align = surface.bo_alignment; + pitch = surface.level[0].pitch_bytes; + tiling = 0; + switch (surface.level[0].mode) { + case RADEON_SURF_MODE_2D: + tiling |= RADEON_TILING_MACRO; + tiling |= surface.bankw << RADEON_TILING_EG_BANKW_SHIFT; + tiling |= surface.bankh << RADEON_TILING_EG_BANKH_SHIFT; + tiling |= surface.mtilea << RADEON_TILING_EG_MACRO_TILE_ASPECT_SHIFT; + tiling |= eg_tile_split(surface.tile_split) << RADEON_TILING_EG_TILE_SPLIT_SHIFT; + tiling |= eg_tile_split(surface.stencil_tile_split) << RADEON_TILING_EG_STENCIL_TILE_SPLIT_SHIFT; + break; + case RADEON_SURF_MODE_1D: + tiling |= RADEON_TILING_MICRO; + break; + default: + break; + } + } + } +#endif new_priv = calloc(1, sizeof(struct radeon_exa_pixmap_priv)); - if (!new_priv) + if (!new_priv) { return NULL; + } - if (size == 0) + if (size == 0) { return new_priv; + } *new_pitch = pitch; @@ -510,6 +577,7 @@ void *RADEONEXACreatePixmap2(ScreenPtr pScreen, int width, int height, if (tiling && !radeon_bo_set_tiling(new_priv->bo, tiling, *new_pitch)) new_priv->tiling_flags = tiling; + new_priv->surface = surface; return new_priv; } @@ -532,6 +600,15 @@ struct radeon_bo *radeon_get_pixmap_bo(PixmapPtr pPix) return driver_priv->bo; } +#if defined(XF86DRM_MODE) +struct radeon_surface *radeon_get_pixmap_surface(PixmapPtr pPix) +{ + struct radeon_exa_pixmap_priv *driver_priv; + driver_priv = exaGetPixmapDriverPrivate(pPix); + return &driver_priv->surface; +} +#endif + uint32_t radeon_get_pixmap_tiling(PixmapPtr pPix) { struct radeon_exa_pixmap_priv *driver_priv; diff --git a/driver/xf86-video-ati/src/radeon_kms.c b/driver/xf86-video-ati/src/radeon_kms.c index 32065fb96..dda25e900 100644 --- a/driver/xf86-video-ati/src/radeon_kms.c +++ b/driver/xf86-video-ati/src/radeon_kms.c @@ -62,6 +62,7 @@ const OptionInfoRec RADEONOptions_KMS[] = { { OPTION_ACCEL_DFS, "AccelDFS", OPTV_BOOLEAN, {0}, FALSE }, { OPTION_IGNORE_EDID, "IgnoreEDID", OPTV_BOOLEAN, {0}, FALSE }, { OPTION_COLOR_TILING, "ColorTiling", OPTV_BOOLEAN, {0}, FALSE }, + { OPTION_COLOR_TILING_2D,"ColorTiling2D", OPTV_BOOLEAN, {0}, FALSE }, { OPTION_RENDER_ACCEL, "RenderAccel", OPTV_BOOLEAN, {0}, FALSE }, { OPTION_SUBPIXEL_ORDER, "SubPixelOrder", OPTV_ANYSTR, {0}, FALSE }, { OPTION_ACCELMETHOD, "AccelMethod", OPTV_STRING, {0}, FALSE }, @@ -158,6 +159,7 @@ static Bool RADEONCreateScreenResources_KMS(ScreenPtr pScreen) ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum]; RADEONInfoPtr info = RADEONPTR(pScrn); PixmapPtr pixmap; + struct radeon_surface *surface; pScreen->CreateScreenResources = info->CreateScreenResources; if (!(*pScreen->CreateScreenResources)(pScreen)) @@ -181,6 +183,10 @@ static Bool RADEONCreateScreenResources_KMS(ScreenPtr pScreen) if (info->front_bo) { PixmapPtr pPix = pScreen->GetScreenPixmap(pScreen); radeon_set_pixmap_bo(pPix, info->front_bo); + surface = radeon_get_pixmap_surface(pPix); + if (surface) { + *surface = info->front_surface; + } } } return TRUE; @@ -429,7 +435,7 @@ static Bool radeon_open_drm_master(ScrnInfoPtr pScrn) int err; if (pRADEONEnt->fd) { - xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + xf86DrvMsg(pScrn->scrnIndex, X_INFO, " reusing fd for second head\n"); info->dri2.drm_fd = pRADEONEnt->fd; @@ -674,11 +680,20 @@ Bool RADEONPreInit_KMS(ScrnInfoPtr pScrn, int flags) if (!RADEONPreInitAccel_KMS(pScrn)) goto fail; + info->allowColorTiling2D = FALSE; + #ifdef EXA_MIXED_PIXMAPS /* don't enable tiling if accel is not enabled */ if (!info->r600_shadow_fb) { - Bool colorTilingDefault = info->ChipFamily >= CHIP_FAMILY_R300 && - info->ChipFamily <= CHIP_FAMILY_CAYMAN; + Bool colorTilingDefault = + xorgGetVersion() >= XORG_VERSION_NUMERIC(1,9,4,901,0) && + info->ChipFamily >= CHIP_FAMILY_R300 && + info->ChipFamily <= CHIP_FAMILY_ARUBA; + + /* 2D color tiling */ + if (info->ChipFamily >= CHIP_FAMILY_R600) { + info->allowColorTiling2D = xf86ReturnOptValBool(info->Options, OPTION_COLOR_TILING_2D, FALSE); + } if (info->ChipFamily >= CHIP_FAMILY_R600) { /* set default group bytes, overridden by kernel info below */ @@ -931,6 +946,7 @@ Bool RADEONScreenInit_KMS(int scrnIndex, ScreenPtr pScreen, front_ptr = info->FB; + info->surf_man = radeon_surface_manager_new(info->dri->drmFD); if (!info->bufmgr) info->bufmgr = radeon_bo_manager_gem_ctor(info->dri->drmFD); if (!info->bufmgr) { @@ -1120,6 +1136,8 @@ Bool RADEONScreenInit_KMS(int scrnIndex, ScreenPtr pScreen, if (serverGeneration == 1) xf86ShowUnusedOptions(pScrn->scrnIndex, pScrn->options); + drmmode_init(pScrn, &info->drmmode); + xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG, "RADEONScreenInit finished\n"); @@ -1207,6 +1225,7 @@ static Bool radeon_setup_kernel_mem(ScreenPtr pScreen) int pitch, base_align; int total_size_bytes = 0; uint32_t tiling_flags = 0; + struct radeon_surface surface; if (info->accel_state->exa != NULL) { xf86DrvMsg(pScreen->myNum, X_ERROR, "Memory map already initialized\n"); @@ -1219,14 +1238,67 @@ static Bool radeon_setup_kernel_mem(ScreenPtr pScreen) } if (info->allowColorTiling) { - if (info->ChipFamily >= CHIP_FAMILY_R600) - tiling_flags |= RADEON_TILING_MICRO; - else + if (info->ChipFamily >= CHIP_FAMILY_R600) { + if (info->allowColorTiling2D) { + tiling_flags |= RADEON_TILING_MACRO; + } else { + tiling_flags |= RADEON_TILING_MICRO; + } + } else tiling_flags |= RADEON_TILING_MACRO; } pitch = RADEON_ALIGN(pScrn->displayWidth, drmmode_get_pitch_align(pScrn, cpp, tiling_flags)) * cpp; screen_size = RADEON_ALIGN(pScrn->virtualY, drmmode_get_height_align(pScrn, tiling_flags)) * pitch; base_align = drmmode_get_base_align(pScrn, cpp, tiling_flags); + if (info->ChipFamily >= CHIP_FAMILY_R600) { + memset(&surface, 0, sizeof(struct radeon_surface)); + surface.npix_x = pScrn->displayWidth; + surface.npix_y = pScrn->virtualY; + surface.npix_z = 1; + surface.blk_w = 1; + surface.blk_h = 1; + surface.blk_d = 1; + surface.array_size = 1; + surface.last_level = 0; + surface.bpe = cpp; + surface.nsamples = 1; + surface.flags = RADEON_SURF_SCANOUT; + surface.flags |= RADEON_SURF_SET(RADEON_SURF_TYPE_2D, TYPE); + surface.flags |= RADEON_SURF_SET(RADEON_SURF_MODE_LINEAR_ALIGNED, MODE); + if (tiling_flags & RADEON_TILING_MICRO) { + surface.flags = RADEON_SURF_CLR(surface.flags, MODE); + surface.flags |= RADEON_SURF_SET(RADEON_SURF_MODE_1D, MODE); + } + if (tiling_flags & RADEON_TILING_MACRO) { + surface.flags = RADEON_SURF_CLR(surface.flags, MODE); + surface.flags |= RADEON_SURF_SET(RADEON_SURF_MODE_2D, MODE); + } + if (radeon_surface_best(info->surf_man, &surface)) { + return FALSE; + } + if (radeon_surface_init(info->surf_man, &surface)) { + return FALSE; + } + pitch = surface.level[0].pitch_bytes; + screen_size = surface.bo_size; + base_align = surface.bo_alignment; + tiling_flags = 0; + switch (surface.level[0].mode) { + case RADEON_SURF_MODE_2D: + tiling_flags |= RADEON_TILING_MACRO; + tiling_flags |= surface.bankw << RADEON_TILING_EG_BANKW_SHIFT; + tiling_flags |= surface.bankh << RADEON_TILING_EG_BANKH_SHIFT; + tiling_flags |= surface.mtilea << RADEON_TILING_EG_MACRO_TILE_ASPECT_SHIFT; + tiling_flags |= eg_tile_split(surface.tile_split) << RADEON_TILING_EG_TILE_SPLIT_SHIFT; + break; + case RADEON_SURF_MODE_1D: + tiling_flags |= RADEON_TILING_MICRO; + break; + default: + break; + } + info->front_surface = surface; + } { int cursor_size = 64 * 4 * 64; int c; diff --git a/driver/xf86-video-ati/src/radeon_output.c b/driver/xf86-video-ati/src/radeon_output.c index ccde346ec..5abd60e2d 100644 --- a/driver/xf86-video-ati/src/radeon_output.c +++ b/driver/xf86-video-ati/src/radeon_output.c @@ -3002,9 +3002,9 @@ Bool RADEONSetupConnectors(ScrnInfoPtr pScrn) info->BiosConnector[i].devices |= ATOM_DEVICE_CRT2_SUPPORT; if (!radeon_add_encoder(pScrn, radeon_get_encoder_id_from_supported_device(pScrn, - ATOM_DEVICE_CRT1_SUPPORT, + ATOM_DEVICE_CRT2_SUPPORT, 2), - ATOM_DEVICE_CRT1_SUPPORT)) + ATOM_DEVICE_CRT2_SUPPORT)) return FALSE; info->BiosConnector[i].load_detection = FALSE; break; diff --git a/driver/xf86-video-ati/src/radeon_pci_chipset_gen.h b/driver/xf86-video-ati/src/radeon_pci_chipset_gen.h index 549eaca0d..aef8d897d 100644 --- a/driver/xf86-video-ati/src/radeon_pci_chipset_gen.h +++ b/driver/xf86-video-ati/src/radeon_pci_chipset_gen.h @@ -53,6 +53,7 @@ PciChipsets RADEONPciChipsets[] = { { PCI_CHIP_RV250_Ld, PCI_CHIP_RV250_Ld, RES_SHARED_VGA }, { PCI_CHIP_RV250_Lf, PCI_CHIP_RV250_Lf, RES_SHARED_VGA }, { PCI_CHIP_RV250_Lg, PCI_CHIP_RV250_Lg, RES_SHARED_VGA }, + { PCI_CHIP_RV280_4C6E, PCI_CHIP_RV280_4C6E, RES_SHARED_VGA }, { PCI_CHIP_R300_ND, PCI_CHIP_R300_ND, RES_SHARED_VGA }, { PCI_CHIP_R300_NE, PCI_CHIP_R300_NE, RES_SHARED_VGA }, { PCI_CHIP_R300_NF, PCI_CHIP_R300_NF, RES_SHARED_VGA }, @@ -380,6 +381,8 @@ PciChipsets RADEONPciChipsets[] = { { PCI_CHIP_SUMO_9647, PCI_CHIP_SUMO_9647, RES_SHARED_VGA }, { PCI_CHIP_SUMO_9648, PCI_CHIP_SUMO_9648, RES_SHARED_VGA }, { PCI_CHIP_SUMO_964A, PCI_CHIP_SUMO_964A, RES_SHARED_VGA }, + { PCI_CHIP_SUMO_964B, PCI_CHIP_SUMO_964B, RES_SHARED_VGA }, + { PCI_CHIP_SUMO_964C, PCI_CHIP_SUMO_964C, RES_SHARED_VGA }, { PCI_CHIP_SUMO_964E, PCI_CHIP_SUMO_964E, RES_SHARED_VGA }, { PCI_CHIP_SUMO_964F, PCI_CHIP_SUMO_964F, RES_SHARED_VGA }, { PCI_CHIP_RS880_9710, PCI_CHIP_RS880_9710, RES_SHARED_VGA }, @@ -394,6 +397,8 @@ PciChipsets RADEONPciChipsets[] = { { PCI_CHIP_PALM_9805, PCI_CHIP_PALM_9805, RES_SHARED_VGA }, { PCI_CHIP_PALM_9806, PCI_CHIP_PALM_9806, RES_SHARED_VGA }, { PCI_CHIP_PALM_9807, PCI_CHIP_PALM_9807, RES_SHARED_VGA }, + { PCI_CHIP_PALM_9808, PCI_CHIP_PALM_9808, RES_SHARED_VGA }, + { PCI_CHIP_PALM_9809, PCI_CHIP_PALM_9809, RES_SHARED_VGA }, { PCI_CHIP_CYPRESS_6880, PCI_CHIP_CYPRESS_6880, RES_SHARED_VGA }, { PCI_CHIP_CYPRESS_6888, PCI_CHIP_CYPRESS_6888, RES_SHARED_VGA }, { PCI_CHIP_CYPRESS_6889, PCI_CHIP_CYPRESS_6889, RES_SHARED_VGA }, @@ -435,6 +440,7 @@ PciChipsets RADEONPciChipsets[] = { { PCI_CHIP_CEDAR_68F2, PCI_CHIP_CEDAR_68F2, RES_SHARED_VGA }, { PCI_CHIP_CEDAR_68F8, PCI_CHIP_CEDAR_68F8, RES_SHARED_VGA }, { PCI_CHIP_CEDAR_68F9, PCI_CHIP_CEDAR_68F9, RES_SHARED_VGA }, + { PCI_CHIP_CEDAR_68FA, PCI_CHIP_CEDAR_68FA, RES_SHARED_VGA }, { PCI_CHIP_CEDAR_68FE, PCI_CHIP_CEDAR_68FE, RES_SHARED_VGA }, { PCI_CHIP_CAYMAN_6700, PCI_CHIP_CAYMAN_6700, RES_SHARED_VGA }, { PCI_CHIP_CAYMAN_6701, PCI_CHIP_CAYMAN_6701, RES_SHARED_VGA }, @@ -475,9 +481,20 @@ PciChipsets RADEONPciChipsets[] = { { PCI_CHIP_TURKS_6748, PCI_CHIP_TURKS_6748, RES_SHARED_VGA }, { PCI_CHIP_TURKS_6749, PCI_CHIP_TURKS_6749, RES_SHARED_VGA }, { PCI_CHIP_TURKS_6750, PCI_CHIP_TURKS_6750, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_6751, PCI_CHIP_TURKS_6751, RES_SHARED_VGA }, { PCI_CHIP_TURKS_6758, PCI_CHIP_TURKS_6758, RES_SHARED_VGA }, { PCI_CHIP_TURKS_6759, PCI_CHIP_TURKS_6759, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_675B, PCI_CHIP_TURKS_675B, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_675D, PCI_CHIP_TURKS_675D, RES_SHARED_VGA }, { PCI_CHIP_TURKS_675F, PCI_CHIP_TURKS_675F, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_6840, PCI_CHIP_TURKS_6840, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_6841, PCI_CHIP_TURKS_6841, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_6842, PCI_CHIP_TURKS_6842, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_6843, PCI_CHIP_TURKS_6843, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_6849, PCI_CHIP_TURKS_6849, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_6850, PCI_CHIP_TURKS_6850, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_6858, PCI_CHIP_TURKS_6858, RES_SHARED_VGA }, + { PCI_CHIP_TURKS_6859, PCI_CHIP_TURKS_6859, RES_SHARED_VGA }, { PCI_CHIP_CAICOS_6760, PCI_CHIP_CAICOS_6760, RES_SHARED_VGA }, { PCI_CHIP_CAICOS_6761, PCI_CHIP_CAICOS_6761, RES_SHARED_VGA }, { PCI_CHIP_CAICOS_6762, PCI_CHIP_CAICOS_6762, RES_SHARED_VGA }, @@ -488,7 +505,16 @@ PciChipsets RADEONPciChipsets[] = { { PCI_CHIP_CAICOS_6767, PCI_CHIP_CAICOS_6767, RES_SHARED_VGA }, { PCI_CHIP_CAICOS_6768, PCI_CHIP_CAICOS_6768, RES_SHARED_VGA }, { PCI_CHIP_CAICOS_6770, PCI_CHIP_CAICOS_6770, RES_SHARED_VGA }, + { PCI_CHIP_CAICOS_6772, PCI_CHIP_CAICOS_6772, RES_SHARED_VGA }, { PCI_CHIP_CAICOS_6778, PCI_CHIP_CAICOS_6778, RES_SHARED_VGA }, { PCI_CHIP_CAICOS_6779, PCI_CHIP_CAICOS_6779, RES_SHARED_VGA }, + { PCI_CHIP_CAICOS_677B, PCI_CHIP_CAICOS_677B, RES_SHARED_VGA }, + { PCI_CHIP_ARUBA_9900, PCI_CHIP_ARUBA_9900, RES_SHARED_VGA }, + { PCI_CHIP_ARUBA_9901, PCI_CHIP_ARUBA_9901, RES_SHARED_VGA }, + { PCI_CHIP_ARUBA_9903, PCI_CHIP_ARUBA_9903, RES_SHARED_VGA }, + { PCI_CHIP_ARUBA_9904, PCI_CHIP_ARUBA_9904, RES_SHARED_VGA }, + { PCI_CHIP_ARUBA_990f, PCI_CHIP_ARUBA_990f, RES_SHARED_VGA }, + { PCI_CHIP_ARUBA_9990, PCI_CHIP_ARUBA_9990, RES_SHARED_VGA }, + { PCI_CHIP_ARUBA_9991, PCI_CHIP_ARUBA_9991, RES_SHARED_VGA }, { -1, -1, RES_UNDEFINED } }; diff --git a/driver/xf86-video-ati/src/radeon_pci_device_match_gen.h b/driver/xf86-video-ati/src/radeon_pci_device_match_gen.h index 0739f81d1..681a6b8a5 100644 --- a/driver/xf86-video-ati/src/radeon_pci_device_match_gen.h +++ b/driver/xf86-video-ati/src/radeon_pci_device_match_gen.h @@ -53,6 +53,7 @@ static const struct pci_id_match radeon_device_match[] = { ATI_DEVICE_MATCH( PCI_CHIP_RV250_Ld, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_RV250_Lf, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_RV250_Lg, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_RV280_4C6E, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_R300_ND, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_R300_NE, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_R300_NF, 0 ), @@ -380,6 +381,8 @@ static const struct pci_id_match radeon_device_match[] = { ATI_DEVICE_MATCH( PCI_CHIP_SUMO_9647, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_SUMO_9648, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_SUMO_964A, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_SUMO_964B, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_SUMO_964C, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_SUMO_964E, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_SUMO_964F, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_RS880_9710, 0 ), @@ -394,6 +397,8 @@ static const struct pci_id_match radeon_device_match[] = { ATI_DEVICE_MATCH( PCI_CHIP_PALM_9805, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_PALM_9806, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_PALM_9807, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_PALM_9808, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_PALM_9809, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CYPRESS_6880, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CYPRESS_6888, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CYPRESS_6889, 0 ), @@ -435,6 +440,7 @@ static const struct pci_id_match radeon_device_match[] = { ATI_DEVICE_MATCH( PCI_CHIP_CEDAR_68F2, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CEDAR_68F8, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CEDAR_68F9, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_CEDAR_68FA, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CEDAR_68FE, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CAYMAN_6700, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CAYMAN_6701, 0 ), @@ -475,9 +481,20 @@ static const struct pci_id_match radeon_device_match[] = { ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6748, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6749, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6750, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6751, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6758, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6759, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_675B, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_675D, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_TURKS_675F, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6840, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6841, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6842, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6843, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6849, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6850, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6858, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_TURKS_6859, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CAICOS_6760, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CAICOS_6761, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CAICOS_6762, 0 ), @@ -488,7 +505,16 @@ static const struct pci_id_match radeon_device_match[] = { ATI_DEVICE_MATCH( PCI_CHIP_CAICOS_6767, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CAICOS_6768, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CAICOS_6770, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_CAICOS_6772, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CAICOS_6778, 0 ), ATI_DEVICE_MATCH( PCI_CHIP_CAICOS_6779, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_CAICOS_677B, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_ARUBA_9900, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_ARUBA_9901, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_ARUBA_9903, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_ARUBA_9904, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_ARUBA_990f, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_ARUBA_9990, 0 ), + ATI_DEVICE_MATCH( PCI_CHIP_ARUBA_9991, 0 ), { 0, 0, 0 } }; diff --git a/driver/xf86-video-ati/src/radeon_probe.h b/driver/xf86-video-ati/src/radeon_probe.h index 94f6d7d15..66905022f 100644 --- a/driver/xf86-video-ati/src/radeon_probe.h +++ b/driver/xf86-video-ati/src/radeon_probe.h @@ -108,6 +108,7 @@ typedef enum { CHIP_FAMILY_TURKS, CHIP_FAMILY_CAICOS, CHIP_FAMILY_CAYMAN, + CHIP_FAMILY_ARUBA, CHIP_FAMILY_LAST } RADEONChipFamily; @@ -663,8 +664,8 @@ typedef struct { /* Pallet */ Bool palette_valid; - uint32_t palette[256]; - uint32_t palette2[256]; + Bool palette_saved[2]; + uint32_t palette[2][256]; uint32_t disp2_req_cntl1; uint32_t disp2_req_cntl2; @@ -750,7 +751,7 @@ typedef struct void *FB; /* Map of FB region */ int FB_cnt; /* Map of FB region refcount */ int fd; /* for sharing across zaphod heads */ - Bool fd_wakeup_registered; /* fd has already been registered for wakeup handling */ + unsigned long fd_wakeup_registered; /* server generation for which fd has been registered for wakeup handling */ int dri2_info_cnt; } RADEONEntRec, *RADEONEntPtr; diff --git a/driver/xf86-video-ati/src/radeon_textured_video.c b/driver/xf86-video-ati/src/radeon_textured_video.c index e49575da9..ff2bb9f98 100644 --- a/driver/xf86-video-ati/src/radeon_textured_video.c +++ b/driver/xf86-video-ati/src/radeon_textured_video.c @@ -66,6 +66,9 @@ R600CopyToVRAM(ScrnInfoPtr pScrn, #define IMAGE_MAX_WIDTH_R600 8192 #define IMAGE_MAX_HEIGHT_R600 8192 +#define IMAGE_MAX_WIDTH_EG 16384 +#define IMAGE_MAX_HEIGHT_EG 16384 + static Bool RADEONTilingEnabled(ScrnInfoPtr pScrn, PixmapPtr pPix) { @@ -554,6 +557,16 @@ static XF86VideoEncodingRec DummyEncodingR600[1] = } }; +static XF86VideoEncodingRec DummyEncodingEG[1] = +{ + { + 0, + "XV_IMAGE", + IMAGE_MAX_WIDTH_EG, IMAGE_MAX_HEIGHT_EG, + {1, 1} + } +}; + #define NUM_FORMATS 3 static XF86VideoFormatRec Formats[NUM_FORMATS] = @@ -824,7 +837,9 @@ RADEONSetupImageTexturedVideo(ScreenPtr pScreen) adapt->flags = 0; adapt->name = "Radeon Textured Video"; adapt->nEncodings = 1; - if (IS_R600_3D) + if (IS_EVERGREEN_3D) + adapt->pEncodings = DummyEncodingEG; + else if (IS_R600_3D) adapt->pEncodings = DummyEncodingR600; else if (IS_R500_3D) adapt->pEncodings = DummyEncodingR500; diff --git a/driver/xf86-video-ati/src/radeon_textured_videofuncs.c b/driver/xf86-video-ati/src/radeon_textured_videofuncs.c index 84aba6f82..71195530c 100644 --- a/driver/xf86-video-ati/src/radeon_textured_videofuncs.c +++ b/driver/xf86-video-ati/src/radeon_textured_videofuncs.c @@ -121,6 +121,8 @@ FUNC_NAME(RADEONPrepareTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv return FALSE; } } +#else + (void)src_bo; #endif pixel_shift = pPixmap->drawable.bitsPerPixel >> 4; @@ -435,7 +437,7 @@ FUNC_NAME(RADEONDisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv ((loop_boxes * 3) << RADEON_CP_VC_CNTL_NUM_SHIFT)); while (loop_boxes--) { - int srcX, srcY, srcw, srch; + float srcX, srcY, srcw, srch; int dstX, dstY, dstw, dsth; dstX = pBox->x1 + dstxoff; dstY = pBox->y1 + dstyoff; @@ -444,13 +446,13 @@ FUNC_NAME(RADEONDisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv srcX = pPriv->src_x; srcX += ((pBox->x1 - pPriv->drw_x) * - pPriv->src_w) / pPriv->dst_w; + pPriv->src_w) / (float)pPriv->dst_w; srcY = pPriv->src_y; srcY += ((pBox->y1 - pPriv->drw_y) * - pPriv->src_h) / pPriv->dst_h; + pPriv->src_h) / (float)pPriv->dst_h; - srcw = (pPriv->src_w * dstw) / pPriv->dst_w; - srch = (pPriv->src_h * dsth) / pPriv->dst_h; + srcw = (pPriv->src_w * dstw) / (float)pPriv->dst_w; + srch = (pPriv->src_h * dsth) / (float)pPriv->dst_h; if (pPriv->is_planar) { @@ -491,7 +493,7 @@ FUNC_NAME(RADEONDisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv RADEON_VF_RADEON_MODE | ((nBox * 3) << RADEON_VF_NUM_VERTICES_SHIFT))); while (nBox--) { - int srcX, srcY, srcw, srch; + float srcX, srcY, srcw, srch; int dstX, dstY, dstw, dsth; dstX = pBox->x1 + dstxoff; dstY = pBox->y1 + dstyoff; @@ -500,13 +502,13 @@ FUNC_NAME(RADEONDisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv srcX = pPriv->src_x; srcX += ((pBox->x1 - pPriv->drw_x) * - pPriv->src_w) / pPriv->dst_w; + pPriv->src_w) / (float)pPriv->dst_w; srcY = pPriv->src_y; srcY += ((pBox->y1 - pPriv->drw_y) * - pPriv->src_h) / pPriv->dst_h; + pPriv->src_h) / (float)pPriv->dst_h; - srcw = (pPriv->src_w * dstw) / pPriv->dst_w; - srch = (pPriv->src_h * dsth) / pPriv->dst_h; + srcw = (pPriv->src_w * dstw) / (float)pPriv->dst_w; + srch = (pPriv->src_h * dsth) / (float)pPriv->dst_h; if (pPriv->is_planar) { @@ -588,6 +590,8 @@ FUNC_NAME(R200PrepareTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) return FALSE; } } +#else + (void)src_bo; #endif pixel_shift = pPixmap->drawable.bitsPerPixel >> 4; @@ -1066,7 +1070,7 @@ FUNC_NAME(R200DisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) ((loop_boxes * 3) << RADEON_CP_VC_CNTL_NUM_SHIFT)); while (loop_boxes--) { - int srcX, srcY, srcw, srch; + float srcX, srcY, srcw, srch; int dstX, dstY, dstw, dsth; dstX = pBox->x1 + dstxoff; dstY = pBox->y1 + dstyoff; @@ -1075,13 +1079,13 @@ FUNC_NAME(R200DisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) srcX = pPriv->src_x; srcX += ((pBox->x1 - pPriv->drw_x) * - pPriv->src_w) / pPriv->dst_w; + pPriv->src_w) / (float)pPriv->dst_w; srcY = pPriv->src_y; srcY += ((pBox->y1 - pPriv->drw_y) * - pPriv->src_h) / pPriv->dst_h; + pPriv->src_h) / (float)pPriv->dst_h; - srcw = (pPriv->src_w * dstw) / pPriv->dst_w; - srch = (pPriv->src_h * dsth) / pPriv->dst_h; + srcw = (pPriv->src_w * dstw) / (float)pPriv->dst_w; + srch = (pPriv->src_h * dsth) / (float)pPriv->dst_h; if (pPriv->is_planar) { /* @@ -1120,7 +1124,7 @@ FUNC_NAME(R200DisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) RADEON_VF_PRIM_WALK_DATA | ((nBox * 3) << RADEON_VF_NUM_VERTICES_SHIFT))); while (nBox--) { - int srcX, srcY, srcw, srch; + float srcX, srcY, srcw, srch; int dstX, dstY, dstw, dsth; dstX = pBox->x1 + dstxoff; dstY = pBox->y1 + dstyoff; @@ -1129,13 +1133,13 @@ FUNC_NAME(R200DisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) srcX = pPriv->src_x; srcX += ((pBox->x1 - pPriv->drw_x) * - pPriv->src_w) / pPriv->dst_w; + pPriv->src_w) / (float)pPriv->dst_w; srcY = pPriv->src_y; srcY += ((pBox->y1 - pPriv->drw_y) * - pPriv->src_h) / pPriv->dst_h; + pPriv->src_h) / (float)pPriv->dst_h; - srcw = (pPriv->src_w * dstw) / pPriv->dst_w; - srch = (pPriv->src_h * dsth) / pPriv->dst_h; + srcw = (pPriv->src_w * dstw) / (float)pPriv->dst_w; + srch = (pPriv->src_h * dsth) / (float)pPriv->dst_h; if (pPriv->is_planar) { /* @@ -1205,6 +1209,8 @@ FUNC_NAME(R300PrepareTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) return FALSE; } } +#else + (void)src_bo; #endif pixel_shift = pPixmap->drawable.bitsPerPixel >> 4; @@ -2493,7 +2499,7 @@ FUNC_NAME(R300DisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) */ while (nBox--) { - int srcX, srcY, srcw, srch; + float srcX, srcY, srcw, srch; int dstX, dstY, dstw, dsth; Bool use_quad = FALSE; #ifdef ACCEL_CP @@ -2516,13 +2522,13 @@ FUNC_NAME(R300DisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) srcX = pPriv->src_x; srcX += ((pBox->x1 - pPriv->drw_x) * - pPriv->src_w) / pPriv->dst_w; + pPriv->src_w) / (float)pPriv->dst_w; srcY = pPriv->src_y; srcY += ((pBox->y1 - pPriv->drw_y) * - pPriv->src_h) / pPriv->dst_h; + pPriv->src_h) / (float)pPriv->dst_h; - srcw = (pPriv->src_w * dstw) / pPriv->dst_w; - srch = (pPriv->src_h * dsth) / pPriv->dst_h; + srcw = (pPriv->src_w * dstw) / (float)pPriv->dst_w; + srch = (pPriv->src_h * dsth) / (float)pPriv->dst_h; if (IS_R400_3D) { if ((dstw+dsth) > 4021) @@ -2687,6 +2693,8 @@ FUNC_NAME(R500PrepareTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) return FALSE; } } +#else + (void)src_bo; #endif pixel_shift = pPixmap->drawable.bitsPerPixel >> 4; @@ -4122,7 +4130,7 @@ FUNC_NAME(R500DisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) */ while (nBox--) { - int srcX, srcY, srcw, srch; + float srcX, srcY, srcw, srch; int dstX, dstY, dstw, dsth; #ifdef ACCEL_CP int draw_size = 3 * pPriv->vtx_count + 4 + 2 + 3; @@ -4144,13 +4152,13 @@ FUNC_NAME(R500DisplayTexturedVideo)(ScrnInfoPtr pScrn, RADEONPortPrivPtr pPriv) srcX = pPriv->src_x; srcX += ((pBox->x1 - pPriv->drw_x) * - pPriv->src_w) / pPriv->dst_w; + pPriv->src_w) / (float)pPriv->dst_w; srcY = pPriv->src_y; srcY += ((pBox->y1 - pPriv->drw_y) * - pPriv->src_h) / pPriv->dst_h; + pPriv->src_h) / (float)pPriv->dst_h; - srcw = (pPriv->src_w * dstw) / pPriv->dst_w; - srch = (pPriv->src_h * dsth) / pPriv->dst_h; + srcw = (pPriv->src_w * dstw) / (float)pPriv->dst_w; + srch = (pPriv->src_h * dsth) / (float)pPriv->dst_h; BEGIN_ACCEL(2); OUT_ACCEL_REG(R300_SC_SCISSOR0, (((dstX) << R300_SCISSOR_X_SHIFT) | diff --git a/driver/xf86-video-ati/src/radeon_video.c b/driver/xf86-video-ati/src/radeon_video.c index 834f92460..0e2c1275c 100644 --- a/driver/xf86-video-ati/src/radeon_video.c +++ b/driver/xf86-video-ati/src/radeon_video.c @@ -142,7 +142,7 @@ radeon_pick_best_crtc(ScrnInfoPtr pScrn, xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn); int coverage, best_coverage, c; BoxRec box, crtc_box, cover_box; - RROutputPtr primary_output; + RROutputPtr primary_output = NULL; xf86CrtcPtr best_crtc = NULL, primary_crtc = NULL; box.x1 = x1; @@ -152,7 +152,9 @@ radeon_pick_best_crtc(ScrnInfoPtr pScrn, best_coverage = 0; /* Prefer the CRTC of the primary output */ - primary_output = RRFirstOutput(pScrn->pScreen); + if (dixPrivateKeyRegistered(rrPrivKey)) { + primary_output = RRFirstOutput(pScrn->pScreen); + } if (primary_output && primary_output->crtc) primary_crtc = primary_output->crtc->devPrivate; |