Hello community,
here is the log from the commit of package xorg-x11
checked in at Thu Jul 5 11:58:17 CEST 2007.
--------
--- xorg-x11/xorg-x11.changes 2007-07-04 23:04:04.000000000 +0200
+++ /mounts/work_src_done/STABLE/xorg-x11/xorg-x11.changes 2007-07-05 06:50:59.000000000 +0200
@@ -1,0 +2,12 @@
+Thu Jul 5 06:48:36 CEST 2007 - sndirsch@suse.de
+
+- xrandr 1.2.2
+ * Man page formatting and typo fixes
+ * Add *~ to .gitignore to skip emacs & patch droppings
+ * Clean up code structure a bit
+ * When simple CRTC allocation fails, search all available configs.
+ * Document 1.2.1 options
+ * Mark 1.1 options as inconsistent with 1.2 options
+ * Print out mode flags in --verbose mode
+
+-------------------------------------------------------------------
Old:
----
xrandr-1.2.1.tar.bz2
New:
----
xrandr-1.2.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xorg-x11.spec ++++++
--- /var/tmp/diff_new_pack.tm5140/_old 2007-07-05 11:57:54.000000000 +0200
+++ /var/tmp/diff_new_pack.tm5140/_new 2007-07-05 11:57:54.000000000 +0200
@@ -15,7 +15,7 @@
BuildRequires: mcpp
URL: http://xorg.freedesktop.org/
Version: 7.2
-Release: 90
+Release: 91
License: X11/MIT, xc/fonts/scaled/Type1/Copyright
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Group: System/X11/Utilities
@@ -99,7 +99,7 @@
Source74: xpr-1.0.2.tar.bz2
Source75: xprehashprinterlist-X11R7.0-1.0.1.tar.bz2
Source76: xprop-1.0.2.tar.bz2
-Source77: xrandr-1.2.1.tar.bz2
+Source77: xrandr-1.2.2.tar.bz2
Source78: xrdb-1.0.3.tar.bz2
Source79: xrefresh-X11R7.1-1.0.2.tar.bz2
Source80: xrx-X11R7.0-1.0.1.tar.bz2
@@ -449,6 +449,15 @@
/var/lib/xdm/authdir/
%changelog
+* Thu Jul 05 2007 - sndirsch@suse.de
+- xrandr 1.2.2
+ * Man page formatting and typo fixes
+ * Add *~ to .gitignore to skip emacs & patch droppings
+ * Clean up code structure a bit
+ * When simple CRTC allocation fails, search all available configs.
+ * Document 1.2.1 options
+ * Mark 1.1 options as inconsistent with 1.2 options
+ * Print out mode flags in --verbose mode
* Wed Jul 04 2007 - sndirsch@suse.de
- xrandr 1.2.1 (obsoletes xrandr.diff, xrandr_12_newmode.diff)
* Fix a typo. Make mode flags case insensitive. Improve error
++++++ xrandr-1.2.1.tar.bz2 -> xrandr-1.2.2.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xrandr-1.2.1/aclocal.m4 new/xrandr-1.2.2/aclocal.m4
--- old/xrandr-1.2.1/aclocal.m4 2007-06-21 12:33:44.000000000 +0200
+++ new/xrandr-1.2.2/aclocal.m4 2007-07-05 04:50:15.000000000 +0200
@@ -159,7 +159,7 @@
_PKG_TEXT
-To get pkg-config, see http://www.freedesktop.org/software/pkgconfig.])],
+To get pkg-config, see http://pkg-config.freedesktop.org/.])],
[$4])
else
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
@@ -1047,35 +1047,69 @@
AC_SUBST([am__untar])
]) # _AM_PROG_TAR
-dnl $Id: xorg-macros.m4,v 1.7 2005/12/09 03:01:09 kem Exp $
dnl
-dnl Copyright 2005 Sun Microsystems, Inc. All rights reserved.
-dnl
-dnl Permission to use, copy, modify, distribute, and sell this software and its
-dnl documentation for any purpose is hereby granted without fee, provided that
-dnl the above copyright notice appear in all copies and that both that
-dnl copyright notice and this permission notice appear in supporting
-dnl documentation.
-dnl
-dnl The above copyright notice and this permission notice shall be included
-dnl in all copies or substantial portions of the Software.
+dnl Copyright 2005-2006 Sun Microsystems, Inc. All rights reserved.
dnl
+dnl Permission is hereby granted, free of charge, to any person obtaining a
+dnl copy of this software and associated documentation files (the
+dnl "Software"), to deal in the Software without restriction, including
+dnl without limitation the rights to use, copy, modify, merge, publish,
+dnl distribute, and/or sell copies of the Software, and to permit persons
+dnl to whom the Software is furnished to do so, provided that the above
+dnl copyright notice(s) and this permission notice appear in all copies of
+dnl the Software and that both the above copyright notice(s) and this
+dnl permission notice appear in supporting documentation.
+dnl
dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
-dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-dnl OTHER DEALINGS IN THE SOFTWARE.
-dnl
-dnl Except as contained in this notice, the name of the copyright holders shall
-dnl not be used in advertising or otherwise to promote the sale, use or
-dnl other dealings in this Software without prior written authorization
-dnl from the copyright holders.
-dnl
+dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+dnl OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+dnl HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
+dnl INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
+dnl FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+dnl NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+dnl WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+dnl
+dnl Except as contained in this notice, the name of a copyright holder
+dnl shall not be used in advertising or otherwise to promote the sale, use
+dnl or other dealings in this Software without prior written authorization
+dnl of the copyright holder.
+
+# XORG_MACROS_VERSION(required-version)
+# -------------------------------------
+# Minimum version: 1.1.0
+#
+# If you're using a macro added in Version 1.1 or newer, include this in
+# your configure.ac with the minimum required version, such as:
+# XORG_MACROS_VERSION(1.1)
+#
+# To force at least a version with this macro defined, also add:
+# m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.1 or later before running autoconf/autogen])])
+#
+#
+# See the "minimum version" comment for each macro you use to see what
+# version you require.
+AC_DEFUN([XORG_MACROS_VERSION],[
+ [XORG_MACROS_needed_version=$1
+ XORG_MACROS_needed_major=`echo $XORG_MACROS_needed_version | sed 's/\..*$//'`
+ XORG_MACROS_needed_minor=`echo $XORG_MACROS_needed_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'`]
+ AC_MSG_CHECKING([if xorg-macros used to generate configure is at least ${XORG_MACROS_needed_major}.${XORG_MACROS_needed_minor}])
+ [XORG_MACROS_version=1.1.5
+ XORG_MACROS_major=`echo $XORG_MACROS_version | sed 's/\..*$//'`
+ XORG_MACROS_minor=`echo $XORG_MACROS_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'`]
+ if test $XORG_MACROS_major -ne $XORG_MACROS_needed_major ; then
+ AC_MSG_ERROR([configure built with incompatible version of xorg-macros.m4 - requires version ${XORG_MACROS_major}.x])
+ fi
+ if test $XORG_MACROS_minor -lt $XORG_MACROS_needed_minor ; then
+ AC_MSG_ERROR([configure built with too old of a version of xorg-macros.m4 - requires version ${XORG_MACROS_major}.${XORG_MACROS_minor}.0 or newer])
+ fi
+ AC_MSG_RESULT([yes, $XORG_MACROS_version])
+]) # XORG_MACROS_VERSION
# XORG_PROG_RAWCPP()
# ------------------
+# Minimum version: 1.0.0
+#
# Find cpp program and necessary flags for use in pre-processing text files
# such as man pages and config files
AC_DEFUN([XORG_PROG_RAWCPP],[
@@ -1118,6 +1152,8 @@
# XORG_MANPAGE_SECTIONS()
# -----------------------
+# Minimum version: 1.0.0
+#
# Determine which sections man pages go in for the different man page types
# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files.
# Not sure if there's any better way than just hardcoding by OS name.
@@ -1127,75 +1163,47 @@
AC_REQUIRE([AC_CANONICAL_HOST])
if test x$APP_MAN_SUFFIX = x ; then
- case $host_os in
- linux*) APP_MAN_SUFFIX=1x ;;
- *) APP_MAN_SUFFIX=1 ;;
- esac
+ APP_MAN_SUFFIX=1
fi
if test x$APP_MAN_DIR = x ; then
- case $host_os in
- linux*) APP_MAN_DIR='$(mandir)/man1' ;;
- *) APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' ;;
- esac
+ APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)'
fi
if test x$LIB_MAN_SUFFIX = x ; then
- case $host_os in
- linux*) LIB_MAN_SUFFIX=3x ;;
- *) LIB_MAN_SUFFIX=3 ;;
- esac
+ LIB_MAN_SUFFIX=3
fi
if test x$LIB_MAN_DIR = x ; then
- case $host_os in
- linux*) LIB_MAN_DIR='$(mandir)/man3' ;;
- *) LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' ;;
- esac
+ LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)'
fi
if test x$FILE_MAN_SUFFIX = x ; then
case $host_os in
- linux*) FILE_MAN_SUFFIX=5x ;;
solaris*) FILE_MAN_SUFFIX=4 ;;
*) FILE_MAN_SUFFIX=5 ;;
esac
fi
if test x$FILE_MAN_DIR = x ; then
- case $host_os in
- linux*) FILE_MAN_DIR='$(mandir)/man5' ;;
- *) FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' ;;
- esac
+ FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)'
fi
-# In Imake's linux.cf, the misc man suffix & dir was only changed for
-# LinuxDebian, not other Linuxes, so we leave it unchanged here
if test x$MISC_MAN_SUFFIX = x ; then
case $host_os in
-# linux*) MISC_MAN_SUFFIX=7x ;;
solaris*) MISC_MAN_SUFFIX=5 ;;
*) MISC_MAN_SUFFIX=7 ;;
esac
fi
if test x$MISC_MAN_DIR = x ; then
- case $host_os in
-# linux*) MISC_MAN_DIR='$(mandir)/man7' ;;
- *) MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' ;;
- esac
+ MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)'
fi
-# In Imake's linux.cf, the driver man suffix & dir was only changed for
-# LinuxDebian, not other Linuxes, so we leave it unchanged here
if test x$DRIVER_MAN_SUFFIX = x ; then
case $host_os in
-# linux*) DRIVER_MAN_SUFFIX=4x ;;
solaris*) DRIVER_MAN_SUFFIX=7 ;;
*) DRIVER_MAN_SUFFIX=4 ;;
esac
fi
if test x$DRIVER_MAN_DIR = x ; then
- case $host_os in
-# linux*) DRIVER_MAN_DIR='$(mandir)/man4' ;;
- *) DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' ;;
- esac
+ DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)'
fi
if test x$ADMIN_MAN_SUFFIX = x ; then
@@ -1225,23 +1233,24 @@
# XORG_CHECK_LINUXDOC
# -------------------
+# Minimum version: 1.0.0
+#
# Defines the variable MAKE_TEXT if the necessary tools and
# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt.
# Whether or not the necessary tools and files are found can be checked
# with the AM_CONDITIONAL "BUILD_LINUXDOC"
AC_DEFUN([XORG_CHECK_LINUXDOC],[
-AC_CHECK_FILE(
- [$prefix/share/X11/sgml/defs.ent],
- [DEFS_ENT_PATH=$prefix/share/X11/sgml],
- [DEFS_ENT_PATH=]
-)
+XORG_SGML_PATH=$prefix/share/sgml
+HAVE_DEFS_ENT=
+
+AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes])
AC_PATH_PROG(LINUXDOC, linuxdoc)
AC_PATH_PROG(PS2PDF, ps2pdf)
AC_MSG_CHECKING([Whether to build documentation])
-if test x$DEFS_ENT_PATH != x && test x$LINUXDOC != x ; then
+if test x$HAVE_DEFS_ENT != x && test x$LINUXDOC != x ; then
BUILDDOC=yes
else
BUILDDOC=no
@@ -1253,7 +1262,7 @@
AC_MSG_CHECKING([Whether to build pdf documentation])
-if test x$PS2PDF != x ; then
+if test x$PS2PDF != x && test x$BUILD_PDFDOC != xno; then
BUILDPDFDOC=yes
else
BUILDPDFDOC=no
@@ -1263,10 +1272,10 @@
AC_MSG_RESULT([$BUILDPDFDOC])
-MAKE_TEXT="SGML_SEARCH_PATH=$DEFS_ENT_PATH GROFF_NO_SGR=y $LINUXDOC -B txt"
-MAKE_PS="SGML_SEARCH_PATH=$DEFS_ENT_PATH $LINUXDOC -B latex --papersize=letter --output=ps"
+MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt"
+MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps"
MAKE_PDF="$PS2PDF"
-MAKE_HTML="SGML_SEARCH_PATH=$DEFS_ENT_PATH $LINUXDOC -B html --split=0"
+MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B html --split=0"
AC_SUBST(MAKE_TEXT)
AC_SUBST(MAKE_PS)
@@ -1274,8 +1283,76 @@
AC_SUBST(MAKE_HTML)
]) # XORG_CHECK_LINUXDOC
+# XORG_CHECK_DOCBOOK
+# -------------------
+# Minimum version: 1.0.0
+#
+# Checks for the ability to build output formats from SGML DocBook source.
+# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC"
+# indicates whether the necessary tools and files are found and, if set,
+# $(MAKE_XXX) blah.sgml will produce blah.xxx.
+AC_DEFUN([XORG_CHECK_DOCBOOK],[
+XORG_SGML_PATH=$prefix/share/sgml
+HAVE_DEFS_ENT=
+BUILDTXTDOC=no
+BUILDPDFDOC=no
+BUILDPSDOC=no
+BUILDHTMLDOC=no
+
+AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes])
+
+AC_PATH_PROG(DOCBOOKPS, docbook2ps)
+AC_PATH_PROG(DOCBOOKPDF, docbook2pdf)
+AC_PATH_PROG(DOCBOOKHTML, docbook2html)
+AC_PATH_PROG(DOCBOOKTXT, docbook2txt)
+
+AC_MSG_CHECKING([Whether to build text documentation])
+if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKTXT != x &&
+ test x$BUILD_TXTDOC != xno; then
+ BUILDTXTDOC=yes
+fi
+AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes])
+AC_MSG_RESULT([$BUILDTXTDOC])
+
+AC_MSG_CHECKING([Whether to build PDF documentation])
+if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPDF != x &&
+ test x$BUILD_PDFDOC != xno; then
+ BUILDPDFDOC=yes
+fi
+AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes])
+AC_MSG_RESULT([$BUILDPDFDOC])
+
+AC_MSG_CHECKING([Whether to build PostScript documentation])
+if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPS != x &&
+ test x$BUILD_PSDOC != xno; then
+ BUILDPSDOC=yes
+fi
+AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes])
+AC_MSG_RESULT([$BUILDPSDOC])
+
+AC_MSG_CHECKING([Whether to build HTML documentation])
+if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKHTML != x &&
+ test x$BUILD_HTMLDOC != xno; then
+ BUILDHTMLDOC=yes
+fi
+AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes])
+AC_MSG_RESULT([$BUILDHTMLDOC])
+
+MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT"
+MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS"
+MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF"
+MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML"
+
+AC_SUBST(MAKE_TEXT)
+AC_SUBST(MAKE_PS)
+AC_SUBST(MAKE_PDF)
+AC_SUBST(MAKE_HTML)
+]) # XORG_CHECK_DOCBOOK
+
# XORG_CHECK_MALLOC_ZERO
# ----------------------
+# Minimum version: 1.0.0
+#
# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if
# malloc(0) returns NULL. Packages should add one of these cflags to
# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them.
@@ -1320,6 +1397,78 @@
AC_SUBST([XTMALLOC_ZERO_CFLAGS])
]) # XORG_CHECK_MALLOC_ZERO
+# XORG_WITH_LINT()
+# ----------------
+# Minimum version: 1.1.0
+#
+# Sets up flags for source checkers such as lint and sparse if --with-lint
+# is specified. (Use --with-lint=sparse for sparse.)
+# Sets $LINT to name of source checker passed with --with-lint (default: lint)
+# Sets $LINT_FLAGS to flags to pass to source checker
+# Sets LINT automake conditional if enabled (default: disabled)
+#
+AC_DEFUN([XORG_WITH_LINT],[
+
+# Allow checking code with lint, sparse, etc.
+AC_ARG_WITH(lint, [AC_HELP_STRING([--with-lint],
+ [Use a lint-style source code checker (default: disabled)])],
+ [use_lint=$withval], [use_lint=no])
+if test "x$use_lint" = "xyes" ; then
+ LINT="lint"
+else
+ LINT="$use_lint"
+fi
+if test "x$LINT_FLAGS" = "x" -a "x$LINT" != "xno" ; then
+ case $LINT in
+ lint|*/lint)
+ case $host_os in
+ solaris*)
+ LINT_FLAGS="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2"
+ ;;
+ esac
+ ;;
+ esac
+fi
+
+AC_SUBST(LINT)
+AC_SUBST(LINT_FLAGS)
+AM_CONDITIONAL(LINT, [test x$LINT != xno])
+
+]) # XORG_WITH_LINT
+
+# XORG_LINT_LIBRARY(LIBNAME)
+# --------------------------
+# Minimum version: 1.1.0
+#
+# Sets up flags for building lint libraries for checking programs that call
+# functions in the library.
+# Disabled by default, enable with --enable-lint-library
+# Sets:
+# @LINTLIB@ - name of lint library file to make
+# MAKE_LINT_LIB - automake conditional
+#
+
+AC_DEFUN([XORG_LINT_LIBRARY],[
+AC_REQUIRE([XORG_WITH_LINT])
+# Build lint "library" for more indepth checks of programs calling this library
+AC_ARG_ENABLE(lint-library, [AC_HELP_STRING([--enable-lint-library],
+ [Create lint library (default: disabled)])],
+ [make_lint_lib=$enableval], [make_lint_lib=no])
+if test "x$make_lint_lib" != "xno" ; then
+ if test "x$LINT" = "xno" ; then
+ AC_MSG_ERROR([Cannot make lint library without --with-lint])
+ fi
+ if test "x$make_lint_lib" = "xyes" ; then
+ LINTLIB=llib-l$1.ln
+ else
+ LINTLIB=$make_lint_lib
+ fi
+fi
+AC_SUBST(LINTLIB)
+AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno])
+
+]) # XORG_LINT_LIBRARY
+
dnl Copyright 2005 Red Hat, Inc
dnl
dnl Permission to use, copy, modify, distribute, and sell this software and its
@@ -1349,7 +1498,8 @@
# --------------------
# Adds --with/without-release-string and changes the PACKAGE and
# PACKAGE_TARNAME to use "$PACKAGE{_TARNAME}-$RELEASE_VERSION". If
-# no option is given, PACKAGE and PACKAGE_TARNAME are unchanged.
+# no option is given, PACKAGE and PACKAGE_TARNAME are unchanged. Also
+# defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use.
AC_DEFUN([XORG_RELEASE_VERSION],[
AC_ARG_WITH(release-version,
@@ -1362,5 +1512,22 @@
PACKAGE_TARNAME="$PACKAGE_TARNAME-$RELEASE_VERSION"
AC_MSG_NOTICE([Building with package name set to $PACKAGE])
fi
+ AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR],
+ [`echo $PACKAGE_VERSION | cut -d . -f 1`],
+ [Major version of this package])
+ PVM=`echo $PACKAGE_VERSION | cut -d . -f 2`
+ if test "x$PVM" = "x"; then
+ PVM="0"
+ fi
+ AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR],
+ [$PVM],
+ [Minor version of this package])
+ PVP=`echo $PACKAGE_VERSION | cut -d . -f 3`
+ if test "x$PVP" = "x"; then
+ PVP="0"
+ fi
+ AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL],
+ [$PVP],
+ [Patch version of this package])
])
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xrandr-1.2.1/config.h.in new/xrandr-1.2.2/config.h.in
--- old/xrandr-1.2.1/config.h.in 2007-06-21 12:34:37.000000000 +0200
+++ new/xrandr-1.2.2/config.h.in 2007-07-05 04:50:25.000000000 +0200
@@ -18,5 +18,14 @@
/* Define to the version of this package. */
#undef PACKAGE_VERSION
+/* Major version of this package */
+#undef PACKAGE_VERSION_MAJOR
+
+/* Minor version of this package */
+#undef PACKAGE_VERSION_MINOR
+
+/* Patch version of this package */
+#undef PACKAGE_VERSION_PATCHLEVEL
+
/* Version number of package */
#undef VERSION
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xrandr-1.2.1/configure new/xrandr-1.2.2/configure
--- old/xrandr-1.2.1/configure 2007-06-21 12:33:50.000000000 +0200
+++ new/xrandr-1.2.2/configure 2007-07-05 04:50:19.000000000 +0200
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.61 for xrandr 1.2.1.
+# Generated by GNU Autoconf 2.61 for xrandr 1.2.2.
#
# Report bugs to https://bugs.freedesktop.org/enter_bug.cgi?product=xorg.
#
@@ -574,8 +574,8 @@
# Identity of this package.
PACKAGE_NAME='xrandr'
PACKAGE_TARNAME='xrandr'
-PACKAGE_VERSION='1.2.1'
-PACKAGE_STRING='xrandr 1.2.1'
+PACKAGE_VERSION='1.2.2'
+PACKAGE_STRING='xrandr 1.2.2'
PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg'
ac_subst_vars='SHELL
@@ -1194,7 +1194,7 @@
# 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 xrandr 1.2.1 to adapt to many kinds of systems.
+\`configure' configures xrandr 1.2.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1264,7 +1264,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of xrandr 1.2.1:";;
+ short | recursive ) echo "Configuration of xrandr 1.2.2:";;
esac
cat <<\_ACEOF
@@ -1359,7 +1359,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-xrandr configure 1.2.1
+xrandr configure 1.2.2
generated by GNU Autoconf 2.61
Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@@ -1373,7 +1373,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by xrandr $as_me 1.2.1, which was
+It was created by xrandr $as_me 1.2.2, which was
generated by GNU Autoconf 2.61. Invocation command line was
$ $0 $@
@@ -2043,7 +2043,7 @@
# Define the identity of the package.
PACKAGE='xrandr'
- VERSION='1.2.1'
+ VERSION='1.2.2'
cat >>confdefs.h <<_ACEOF
@@ -3603,7 +3603,7 @@
and XRANDR_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
-To get pkg-config, see http://www.freedesktop.org/software/pkgconfig.
+To get pkg-config, see http://pkg-config.freedesktop.org/.
See \`config.log' for more details." >&5
echo "$as_me: error: The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
@@ -3613,7 +3613,7 @@
and XRANDR_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
-To get pkg-config, see http://www.freedesktop.org/software/pkgconfig.
+To get pkg-config, see http://pkg-config.freedesktop.org/.
See \`config.log' for more details." >&2;}
{ (exit 1); exit 1; }; }
else
@@ -3713,75 +3713,47 @@
if test x$APP_MAN_SUFFIX = x ; then
- case $host_os in
- linux*) APP_MAN_SUFFIX=1x ;;
- *) APP_MAN_SUFFIX=1 ;;
- esac
+ APP_MAN_SUFFIX=1
fi
if test x$APP_MAN_DIR = x ; then
- case $host_os in
- linux*) APP_MAN_DIR='$(mandir)/man1' ;;
- *) APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' ;;
- esac
+ APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)'
fi
if test x$LIB_MAN_SUFFIX = x ; then
- case $host_os in
- linux*) LIB_MAN_SUFFIX=3x ;;
- *) LIB_MAN_SUFFIX=3 ;;
- esac
+ LIB_MAN_SUFFIX=3
fi
if test x$LIB_MAN_DIR = x ; then
- case $host_os in
- linux*) LIB_MAN_DIR='$(mandir)/man3' ;;
- *) LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' ;;
- esac
+ LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)'
fi
if test x$FILE_MAN_SUFFIX = x ; then
case $host_os in
- linux*) FILE_MAN_SUFFIX=5x ;;
solaris*) FILE_MAN_SUFFIX=4 ;;
*) FILE_MAN_SUFFIX=5 ;;
esac
fi
if test x$FILE_MAN_DIR = x ; then
- case $host_os in
- linux*) FILE_MAN_DIR='$(mandir)/man5' ;;
- *) FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' ;;
- esac
+ FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)'
fi
-# In Imake's linux.cf, the misc man suffix & dir was only changed for
-# LinuxDebian, not other Linuxes, so we leave it unchanged here
if test x$MISC_MAN_SUFFIX = x ; then
case $host_os in
-# linux*) MISC_MAN_SUFFIX=7x ;;
solaris*) MISC_MAN_SUFFIX=5 ;;
*) MISC_MAN_SUFFIX=7 ;;
esac
fi
if test x$MISC_MAN_DIR = x ; then
- case $host_os in
-# linux*) MISC_MAN_DIR='$(mandir)/man7' ;;
- *) MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' ;;
- esac
+ MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)'
fi
-# In Imake's linux.cf, the driver man suffix & dir was only changed for
-# LinuxDebian, not other Linuxes, so we leave it unchanged here
if test x$DRIVER_MAN_SUFFIX = x ; then
case $host_os in
-# linux*) DRIVER_MAN_SUFFIX=4x ;;
solaris*) DRIVER_MAN_SUFFIX=7 ;;
*) DRIVER_MAN_SUFFIX=4 ;;
esac
fi
if test x$DRIVER_MAN_DIR = x ; then
- case $host_os in
-# linux*) DRIVER_MAN_DIR='$(mandir)/man4' ;;
- *) DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' ;;
- esac
+ DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)'
fi
if test x$ADMIN_MAN_SUFFIX = x ; then
@@ -3824,6 +3796,29 @@
echo "$as_me: Building with package name set to $PACKAGE" >&6;}
fi
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_VERSION_MAJOR `echo $PACKAGE_VERSION | cut -d . -f 1`
+_ACEOF
+
+ PVM=`echo $PACKAGE_VERSION | cut -d . -f 2`
+ if test "x$PVM" = "x"; then
+ PVM="0"
+ fi
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_VERSION_MINOR $PVM
+_ACEOF
+
+ PVP=`echo $PACKAGE_VERSION | cut -d . -f 3`
+ if test "x$PVP" = "x"; then
+ PVP="0"
+ fi
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_VERSION_PATCHLEVEL $PVP
+_ACEOF
+
+
ac_config_files="$ac_config_files Makefile"
@@ -4244,7 +4239,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by xrandr $as_me 1.2.1, which was
+This file was extended by xrandr $as_me 1.2.2, which was
generated by GNU Autoconf 2.61. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -4297,7 +4292,7 @@
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-xrandr config.status 1.2.1
+xrandr config.status 1.2.2
configured by $0, generated by GNU Autoconf 2.61,
with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xrandr-1.2.1/configure.ac new/xrandr-1.2.2/configure.ac
--- old/xrandr-1.2.1/configure.ac 2007-06-21 12:33:04.000000000 +0200
+++ new/xrandr-1.2.2/configure.ac 2007-07-05 04:49:59.000000000 +0200
@@ -22,7 +22,7 @@
dnl Process this file with autoconf to create configure.
AC_PREREQ([2.57])
-AC_INIT(xrandr,[1.2.1], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xrandr)
+AC_INIT(xrandr,[1.2.2], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xrandr)
AM_INIT_AUTOMAKE([dist-bzip2])
AM_MAINTAINER_MODE
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xrandr-1.2.1/xrandr.c new/xrandr-1.2.2/xrandr.c
--- old/xrandr-1.2.1/xrandr.c 2007-06-21 12:36:05.000000000 +0200
+++ new/xrandr-1.2.2/xrandr.c 2007-07-05 05:03:34.000000000 +0200
@@ -72,6 +72,22 @@
"vertical bgr",
"no subpixels"};
+static const struct {
+ char *string;
+ unsigned long flag;
+} mode_flags[] = {
+ { "+HSync", RR_HSyncPositive },
+ { "-HSync", RR_HSyncNegative },
+ { "+VSync", RR_VSyncPositive },
+ { "-VSync", RR_VSyncNegative },
+ { "Interlace", RR_Interlace },
+ { "DoubleScan", RR_DoubleScan },
+ { "CSync", RR_CSync },
+ { "+CSync", RR_CSyncPositive },
+ { "-CSync", RR_CSyncNegative },
+ { NULL, 0 }
+};
+
static void
usage(void)
{
@@ -120,8 +136,8 @@
fprintf(stderr, " <vdisp> <vsync-start> <vsync-end> <vtotal>\n");
fprintf(stderr, " [+HSync] [-HSync] [+VSync] [-VSync]\n");
fprintf(stderr, " --rmmode <name>\n");
- fprintf(stderr, " --addmode <output> <mode>\n");
- fprintf(stderr, " --delmode <output> <mode>\n");
+ fprintf(stderr, " --addmode <output> <name>\n");
+ fprintf(stderr, " --delmode <output> <name>\n");
#endif
exit(1);
@@ -244,6 +260,7 @@
name_t crtc;
crtc_t *crtc_info;
+ crtc_t *current_crtc_info;
name_t mode;
float refresh;
@@ -1220,6 +1237,56 @@
}
}
+/*
+ * Test whether 'crtc' can be used for 'output'
+ */
+Bool
+check_crtc_for_output (crtc_t *crtc, output_t *output)
+{
+ int c;
+ int l;
+ output_t *other;
+
+ for (c = 0; c < output->output_info->ncrtc; c++)
+ if (output->output_info->crtcs[c] == crtc->crtc.xid)
+ break;
+ if (c == output->output_info->ncrtc)
+ return False;
+ for (other = outputs; other; other = other->next)
+ {
+ if (other == output)
+ continue;
+
+ if (other->mode_info == NULL)
+ continue;
+
+ if (other->crtc_info != crtc)
+ continue;
+
+ /* see if the output connected to the crtc can clone to this output */
+ for (l = 0; l < output->output_info->nclone; l++)
+ if (output->output_info->clones[l] == other->output.xid)
+ break;
+ /* not on the list, can't clone */
+ if (l == output->output_info->nclone)
+ return False;
+ }
+
+ if (crtc->noutput)
+ {
+ /* make sure the state matches */
+ if (crtc->mode_info != output->mode_info)
+ return False;
+ if (crtc->x != output->x)
+ return False;
+ if (crtc->y != output->y)
+ return False;
+ if (crtc->rotation != output->rotation)
+ return False;
+ }
+ return True;
+}
+
crtc_t *
find_crtc_for_output (output_t *output)
{
@@ -1228,42 +1295,12 @@
for (c = 0; c < output->output_info->ncrtc; c++)
{
crtc_t *crtc;
- int l;
- output_t *other;
crtc = find_crtc_by_xid (output->output_info->crtcs[c]);
if (!crtc) fatal ("cannot find crtc 0x%x\n", output->output_info->crtcs[c]);
- for (other = outputs; other; other = other->next)
- {
- if (other == output)
- continue;
-
- if (other->mode_info == NULL)
- continue;
-
- if (other->crtc_info != crtc)
- continue;
-
- /* see if the output connected to the crtc can clone to this output */
- for (l = 0; l < output->output_info->nclone; l++)
- if (output->output_info->clones[l] == other->output.xid)
- break;
- /* not on the list, can't clone */
- if (l == output->output_info->nclone) break;
- }
- if (other) continue;
-
-
- if (crtc->noutput)
- {
- /* make sure the state matches */
- if (crtc->mode_info != output->mode_info) continue;
- if (crtc->x != output->x) continue;
- if (crtc->y != output->y) continue;
- if (crtc->rotation != output->rotation) continue;
- }
- return crtc;
+ if (check_crtc_for_output (crtc, output))
+ return crtc;
}
return NULL;
}
@@ -1417,6 +1454,124 @@
#endif
+void
+disable_outputs (output_t *outputs)
+{
+ while (outputs)
+ {
+ outputs->crtc_info = NULL;
+ outputs = outputs->next;
+ }
+}
+
+/*
+ * find the best mapping from output to crtc available
+ */
+int
+pick_crtcs_score (output_t *outputs)
+{
+ output_t *output;
+ int best_score;
+ int my_score;
+ int score;
+ crtc_t *best_crtc;
+ int c;
+
+ if (!outputs)
+ return 0;
+
+ output = outputs;
+ outputs = outputs->next;
+ /*
+ * Score with this output disabled
+ */
+ output->crtc_info = NULL;
+ best_score = pick_crtcs_score (outputs);
+ if (output->mode_info == NULL)
+ return best_score;
+
+ best_crtc = NULL;
+ /*
+ * Now score with this output any valid crtc
+ */
+ for (c = 0; c < output->output_info->ncrtc; c++)
+ {
+ crtc_t *crtc;
+
+ crtc = find_crtc_by_xid (output->output_info->crtcs[c]);
+ if (!crtc)
+ fatal ("cannot find crtc 0x%x\n", output->output_info->crtcs[c]);
+
+ /* reset crtc allocation for following outputs */
+ disable_outputs (outputs);
+ if (!check_crtc_for_output (crtc, output))
+ continue;
+
+ my_score = 1000;
+ /* slight preference for existing connections */
+ if (crtc == output->current_crtc_info)
+ my_score++;
+
+ output->crtc_info = crtc;
+ score = my_score + pick_crtcs_score (outputs);
+ if (score > best_score)
+ {
+ best_crtc = crtc;
+ best_score = score;
+ }
+ }
+ /*
+ * Reset other outputs based on this one using the best crtc
+ */
+ if (output->crtc_info != best_crtc)
+ {
+ output->crtc_info = best_crtc;
+ (void) pick_crtcs_score (outputs);
+ }
+ return best_score;
+}
+
+/*
+ * Pick crtcs for any changing outputs that don't have one
+ */
+void
+pick_crtcs (void)
+{
+ output_t *output;
+
+ /*
+ * First try to match up newly enabled outputs with spare crtcs
+ */
+ for (output = outputs; output; output = output->next)
+ {
+ if (output->changes && output->mode_info && !output->crtc_info)
+ {
+ output->crtc_info = find_crtc_for_output (output);
+ if (!output->crtc_info)
+ break;
+ }
+ }
+ /*
+ * Everyone is happy
+ */
+ if (!output)
+ return;
+ /*
+ * When the simple way fails, see if there is a way
+ * to swap crtcs around and make things work
+ */
+ for (output = outputs; output; output = output->next)
+ output->current_crtc_info = output->crtc_info;
+ pick_crtcs_score (outputs);
+ for (output = outputs; output; output = output->next)
+ {
+ if (output->mode_info && !output->crtc_info)
+ fatal ("cannot find crtc for output %s\n", output->output.string);
+ if (!output->changes && output->crtc_info != output->current_crtc_info)
+ output->changes |= changes_crtc;
+ }
+}
+
int
main (int argc, char **argv)
{
@@ -1762,21 +1917,6 @@
if (sscanf (argv[i++], "%d", &m->mode.vTotal) != 1) usage();
m->mode.modeFlags = 0;
while (i < argc) {
- static const struct {
- char *string;
- unsigned long flag;
- } mode_flags[] = {
- { "+HSync", RR_HSyncPositive },
- { "-HSync", RR_HSyncNegative },
- { "+VSync", RR_VSyncPositive },
- { "-VSync", RR_VSyncNegative },
- { "Interlace", RR_Interlace },
- { "DoubleScan", RR_DoubleScan },
- { "CSync", RR_CSync },
- { "+CSync", RR_CSyncPositive },
- { "-CSync", RR_CSyncNegative },
- { NULL, 0 }
- };
int f;
for (f = 0; mode_flags[f].string; f++)
@@ -2003,18 +2143,7 @@
set_positions ();
set_screen_size ();
- /*
- * Pick crtcs for any changing outputs that don't have one
- */
- for (output = outputs; output; output = output->next)
- {
- if (output->changes && output->mode_info && !output->crtc_info)
- {
- output->crtc_info = find_crtc_for_output (output);
- if (!output->crtc_info)
- fatal ("cannot find crtc for output %s\n", output->output.string);
- }
- }
+ pick_crtcs ();
/*
* Assign outputs to crtcs
@@ -2118,6 +2247,8 @@
mode_width (mode, output->rotation),
mode_height (mode, output->rotation),
output->x, output->y);
+ if (verbose)
+ printf (" (0x%x)", mode->id);
if (output->rotation != RR_Rotate_0 || verbose)
{
printf (" %s",
@@ -2265,10 +2396,15 @@
for (j = 0; j < output_info->nmode; j++)
{
XRRModeInfo *mode = find_mode_by_xid (output_info->modes[j]);
+ int f;
- printf (" %s (0x%x) %6.1fMHz\n",
+ printf (" %s (0x%x) %6.1fMHz",
mode->name, mode->id,
(float)mode->dotClock / 1000000.0);
+ for (f = 0; mode_flags[f].flag; f++)
+ if (mode->modeFlags & mode_flags[f].flag)
+ printf (" %s", mode_flags[f].string);
+ printf ("\n");
printf (" h: width %4d start %4d end %4d total %4d skew %4d clock %6.1fKHz\n",
mode->width, mode->hSyncStart, mode->hSyncEnd,
mode->hTotal, mode->hSkew, mode_hsync (mode) / 1000);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/xrandr-1.2.1/xrandr.man new/xrandr-1.2.2/xrandr.man
--- old/xrandr-1.2.1/xrandr.man 2007-02-01 00:34:36.000000000 +0100
+++ new/xrandr-1.2.2/xrandr.man 2007-07-05 04:47:32.000000000 +0200
@@ -26,132 +26,156 @@
xrandr \- primitive command line interface to RandR extension
.SH SYNOPSIS
.B "xrandr"
-[-help] [-display \fIdisplay\fP]
-[-q] [-v]
-[--verbose]
-[--screen \fIsnum\fP]
+[\-help] [\-display \fIdisplay\fP]
+[\-q] [\-v]
+[\-\-verbose]
+[\-\-screen \fIsnum\fP]
.br
.B RandR version 1.2 options
.br
-[--prop]
-[--fb <width>x<height>]
-[--fbmm <width>x<height>]
-[--dpi <dpi>]
+[\-\-prop]
+[\-\-fb <width>x<height>]
+[\-\-fbmm <width>x<height>]
+[\-\-dpi <dpi>]
.br
.B Per-output options
.br
-[--output <output>]
-[--auto]
-[--mode <mode>]
-[--preferred]
-[--pos <x>x<y>]
-[--rate <rate>]
-[--reflect \fIreflection\fP]
-[--rotate \fIorientation\fP]
-[--left-of <output>\]
-[--right-of <output>\]
-[--above <output>\]
-[--below <output>\]
-[--off]
-[--crtc <crtc>]
+[\-\-output <output>]
+[\-\-auto]
+[\-\-mode <mode>]
+[\-\-preferred]
+[\-\-pos <x>x<y>]
+[\-\-rate <rate>]
+[\-\-reflect \fIreflection\fP]
+[\-\-rotate \fIorientation\fP]
+[\-\-left\-of <output>\]
+[\-\-right\-of <output>\]
+[\-\-above <output>\]
+[\-\-below <output>\]
+[\-\-same-as <output>\]
+[\-\-set <property> <value>]
+[\-\-off]
+[\-\-crtc <crtc>]
+[\-\-newmode <name> \fImode\fP]
+[\-\-rmmode <name>]
+[\-\-addmode <output> <name>]
+[\-\-delmode <output> <name>]
.br
.B RandR version 1.0 and version 1.1 options
.br
-[-o \fIorientation\fP]
-[-s \fIsize\fP]
-[-x] [-y]
+[\-o \fIorientation\fP]
+[\-s \fIsize\fP]
+[\-x] [\-y]
.SH DESCRIPTION
.I Xrandr
is used to set the size, orientation and/or reflection of the outputs for a
screen. It can also set the screen size.
There are a few global options; the rest modify a particular output and
follow the specification of that output on the command line.
-.IP --help
+.IP \-\-help
Print out a summary of the usage and exit.
-.IP -v
+.IP \-v
Print out the RandR version reported by the X server and exit.
-.IP --verbose
-causes xrandr to be more verbose. When used with -q (or without other
+.IP \-\-verbose
+causes xrandr to be more verbose. When used with \-q (or without other
options), xrandr will display more information about the server state. When
used along with options that reconfigure the system, progress will be
reported while executing the configuration changes.
-.IP -q
+.IP \-q
When this option is present, or when no configuration changes are requested,
xrandr will display the current state of the system.
-.IP "-screen \fIsnum\fP"
+.IP "\-screen \fIsnum\fP"
This option selects which screen to manipulate. Note this refers to the X
screen abstraction, not the monitor (or output).
.SH "RandR version 1.2 options"
These options are only available for X server supporting RandR version 1.2
or newer.
-.IP --prop
+.IP \-\-prop
This option causes xrandr to display the contents of properties for each
-output. --verbose also enables --prop.
-.IP "--fb <width>x
participants (1)
-
root@Hilbert.suse.de