--- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/control +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/control @@ -0,0 +1,38 @@ +Source: xserver-xorg-video-openchrome +Section: x11 +Priority: optional +Maintainer: Debian X Strike Force +Uploaders: Raphael Geissert +Build-Depends: debhelper (>= 5), autotools-dev, autoconf, automake, libtool, pkg-config, xserver-xorg-dev (>= 2:1.3.0.0), x11proto-core-dev, x11proto-fonts-dev, x11proto-randr-dev, x11proto-render-dev, x11proto-xext-dev, x11proto-xf86dri-dev, x11proto-video-dev, x11proto-gl-dev, libdrm-dev (>> 2.0), libx11-dev, libgl1-mesa-dev | libgl1-dev, libxvmc-dev, quilt +Build-Conflicts: autoconf2.13 +Standards-Version: 3.8.3 +Homepage: http://www.openchrome.org +Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-video-openchrome +Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-video-openchrome.git + +Package: xserver-xorg-video-openchrome +Architecture: i386 amd64 hurd-i386 kfreebsd-i386 kfreebsd-amd64 lpia +Depends: ${shlibs:Depends}, ${misc:Depends}, ${xserver:Depends} +Provides: ${xviddriver:Provides} +Conflicts: libchromexvmc1, libchromexvmcpro1 +Replaces: libchromexvmc1, libchromexvmcpro1 +Description: X.Org X server -- VIA display driver + OpenChrome is a project for the development of free and open-source drivers + for the VIA UniChrome video chipsets. + . + Originally called the 'snapshot' release, since it was a snapshot of an + experimental branch of the unichrome cvs code, this is a continued development + of the open source unichrome driver (from http://unichrome.sf.net) which + also incorporates support for the unichrome-pro chipsets. + . + Support for hardware acceleration (XvMC) for all chipsets has subsequently + been ripped out of the unichrome.sf.net driver. Therefore your only option if + you wish to make use of the acceleration features of your VIA chip with free + and open-source drivers is to use this version of the driver. + +Package: xserver-xorg-video-via +Architecture: i386 amd64 hurd-i386 kfreebsd-i386 kfreebsd-amd64 lpia +Depends: xserver-xorg-video-openchrome, ${misc:Depends} +Description: X.Org X server -- VIA display driver (dummy transitional package) + This transitional package helps users transition to the OpenChrome driver. + Once this package and its dependencies are installed you can safely remove it. --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/copyright +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/copyright @@ -0,0 +1,64 @@ +This package was debianized by Mario Limonciello on +Tue, 27 July 2007 16:41:23 -0500 + +This original source for this package was obtained via the upstream +svn branch at http://svn.openchrome.org/svn/trunk + +Copyright (c) 1998-1999 Precision Insight, Inc., Cedar Park, Texas. +Copyright (c) 2000 VA Linux Systems, Inc. +Copyright (c) 1998-2003 VIA Technologies, Inc. All Rights Reserved. +Copyright (c) 2000 Intel Corporation. All rights reserved. +Copyright (c) 2001-2003 S3 Graphics, Inc. All Rights Reserved. +Copyright (c) 2003 Red Hat, Inc. All Rights Reserved. +Copyright (c) 2004-2005 The Unichrome Project. All rights reserved. +Copyright (c) 2004-2006 Andreas Robinson. All Rights Reserved. +Copyright (c) 2004-2006 Bernhard Rosenkraenzer. All Rights Reserved. +Copyright (c) 2004-2006 Ivor Hewitt. All Rights Reserved. +Copyright (c) 2004-2006 Luc Verhaegen. All Rights Reserved. +Copyright (c) 2004-2006 Terry Barnaby. All Rights Reserved. +Copyright (c) 2004-2006 Thomas Hellstrom. All Rights Reserved. +Copyright (c) 2005-2008 The Openchrome Project [openchrome.org] +Copyright (c) 2007-2008 Gabriel Mansi. + +Driver (upstream) License: +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, sub license, +and/or sell copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice (including the +next paragraph) shall be included in all copies or substantial portions +of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL +THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +Packaging License: + This packaging is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 3 of the License, or (at your option) any later version. + + This packaging is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public + License along with this package; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +On Debian systems, a complete copy of the GPL can be found under +/usr/share/common-licenses/GPL-3 + +The Debian packaging is Copyright 2007-2008 by Raphael Geissert +based on the work © 2007 by Mario Limonciello which was +based upon the work by Eric Work and is licensed +under the GPL. --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/links +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/links @@ -0,0 +1 @@ +usr/share/bug/xserver-xorg-core/script usr/share/bug/xserver-xorg-video-openchrome/script \ No newline at end of file --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/rules +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/rules @@ -0,0 +1,86 @@ +#!/usr/bin/make -f + +PACKAGE = xserver-xorg-video-openchrome + +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILDDIR = obj-$(DEB_BUILD_GNU_TYPE) + +export DH_ALWAYS_EXCLUDE=.la + +include debian/xsfbs/xsfbs.mk + +DEB_CONFIGURE_EXTRA_FLAGS := \ + --build=$(DEB_BUILD_GNU_TYPE) \ + --prefix=/usr \ + --disable-maintainer-mode \ + --disable-dependency-tracking + +ifneq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) +DEB_CONFIGURE_EXTRA_FLAGS += --host=$(DEB_HOST_GNU_TYPE) +endif + +ifneq (,$(filter debug,$(DEB_BUILD_OPTIONS))) +DEB_CONFIGURE_EXTRA_FLAGS += \ + --enable-debug=yes \ + --enable-xv-debug=yes +endif + +.PHONY: build +build: debian/build-stamp +debian/build-stamp: $(STAMP_DIR)/patch $(DEB_BUILDDIR)/config.status + dh_testdir + $(MAKE) -C $(DEB_BUILDDIR) + touch $@ + +.PHONY: install +install: build + dh_testdir + dh_testroot + $(MAKE) -C $(DEB_BUILDDIR) install DESTDIR=$(CURDIR)/debian/tmp/ + dh_install debian/tmp/* + +$(DEB_BUILDDIR)/config.status: configure + mkdir $(DEB_BUILDDIR) + cd $(DEB_BUILDDIR) && ../configure $(DEB_CONFIGURE_EXTRA_FLAGS) + +configure: + autoreconf -vif + +.PHONY: clean +clean: xsfclean + dh_testdir + dh_testroot + dh_clean + # remove stuff generated by autogen.sh + $(RM) aclocal.m4 compile config.guess config.h.in config.sub \ + configure depcomp install-sh libxvmc/Makefile.in ltmain.sh \ + Makefile.in man/Makefile.in man/openchrome.man missing src/Makefile.in + $(RM) -r $(DEB_BUILDDIR) + $(RM) debian/build-stamp + +.PHONY: binary-indep +binary-indep: +# we have nothing to do here + +.PHONY: binary-arch +binary-arch: serverabi install + dh_testdir + dh_testroot + dh_installchangelogs ChangeLog + dh_installdocs NEWS + install -D -m 0644 debian/overrides \ + debian/$(PACKAGE)/usr/share/lintian/overrides/$(PACKAGE) + dh_strip + dh_link + dh_compress + dh_fixperms + dh_makeshlibs + dh_installdeb + dh_shlibdeps + dh_gencontrol + dh_md5sums + dh_builddeb + +.PHONY: binary +binary: binary-indep binary-arch --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/README.source +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/README.source @@ -0,0 +1,73 @@ +------------------------------------------------------ +Quick Guide To Patching This Package For The Impatient +------------------------------------------------------ + +1. Make sure you have quilt installed +2. Unpack the package as usual with "dpkg-source -x" +3. Run the "patch" target in debian/rules +4. Create a new patch with "quilt new" (see quilt(1)) +5. Edit all the files you want to include in the patch with "quilt edit" + (see quilt(1)). +6. Write the patch with "quilt refresh" (see quilt(1)) +7. Run the "clean" target in debian/rules + +Alternatively, instead of using quilt directly, you can drop the patch in to +debian/patches and add the name of the patch to debian/patches/series. + +------------------------------------ +Guide To The X Strike Force Packages +------------------------------------ + +The X Strike Force team maintains X packages in git repositories on +git.debian.org in the pkg-xorg subdirectory. Most upstream packages +are actually maintained in git repositories as well, so they often +just need to be pulled into git.debian.org in a "upstream-*" branch. +Otherwise, the upstream sources are manually installed in the Debian +git repository. + +The .orig.tar.gz upstream source file could be generated this +"upstream-*" branch in the Debian git repository but it is actually +copied from upstream tarballs directly. + +Due to X.org being highly modular, packaging all X.org applications +as their own independent packages would have created too many Debian +packages. For this reason, some X.org applications have been grouped +into larger packages: xutils, xutils-dev, x11-apps, x11-session-utils, +x11-utils, x11-xfs-utils, x11-xkb-utils, x11-xserver-utils. +Most packages, including the X.org server itself and all libraries +and drivers are, however maintained independently. + +The Debian packaging is added by creating the "debian-*" git branch +which contains the aforementioned "upstream-*" branch plus the debian/ +repository files. +When a patch has to be applied to the Debian package, two solutions +are involved: +* If the patch is available in one of the upstream branches, it + may be git'cherry-picked into the Debian repository. In this + case, it appears directly in the .diff.gz. +* Otherwise, the patch is added to debian/patches/ which is managed + with quilt as documented in /usr/share/doc/quilt/README.source. + +quilt is actually invoked by the Debian X packaging through a larger +set of scripts called XSFBS. XSFBS brings some other X specific +features such as managing dependencies and conflicts due to the video +and input driver ABIs. +XSFBS itself is maintained in a separate repository at + git://git.debian.org/pkg-xorg/xsfbs.git +and it is pulled inside the other Debian X repositories when needed. + +The XSFBS patching system requires a build dependency on quilt. Also +a dependency on $(STAMP_DIR)/patch has to be added to debian/rules +so that the XSFBS patching occurs before the actual build. So the +very first target of the build (likely the one running autoreconf) +should depend on $(STAMP_DIR)/patch. It should also not depend on +anything so that parallel builds are correctly supported (nothing +should probably run while patching is being done). And finally, the +clean target should depend on the xsfclean target so that patches +are unapplied on clean. + +When the upstream sources contain some DFSG-nonfree files, they are +listed in text files in debian/prune/ in the "debian-*" branch of +the Debian repository. XSFBS' scripts then take care of removing +these listed files during the build so as to generate a modified +DFSG-free .orig.tar.gz tarball. --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/changelog +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/changelog @@ -0,0 +1,215 @@ +xserver-xorg-video-openchrome (1:0.2.904+svn827-1) unstable; urgency=low + + * New upstream snapshot + + 816: OLPC XO 1.5 + + 817: Add panel scale support for CLE266 and KM400 + + 818: Enabled new mode switch for PM800 chipset, + + 819: Add option to enable unaccelerated RandR rotation ("SWRandR") + + 820: Enable new mode switch for VM800 chipsets + + 827: Twinhead K15V + * Fix some typos in the man page + * Update xsfbs to latest version + + -- Raphael Geissert Tue, 12 Jan 2010 02:13:51 -0600 + +xserver-xorg-video-openchrome (1:0.2.904+svn812-1) unstable; urgency=low + + * New upstream release + snapshot + + 742: VX800 integrated TMDS support + + 748: MSI P4M900M3-L + + 753: fix a segfault on shutdown when there's no Xv + + 755: Sharp PC-AE30J + + 768: Add rotate upside-down + + 775: Add support of the VIA Openbook + + 778: Haier A60-440256080BD (actually an ECS mobo) + + 779: Lenovo S12 + + 784: ECS P4M890T-M v2.0 + + 794: Packard Bell Lima (ASUS MBP5VDZ-NVM) + + 801: Twinhead H12V (P4M900) + + 807: ModeSwitchMethod option + + 812: Guillemot-Hercules ECafe EC900B + + VX855 support + + Multiple panel autodetection issues + * Change my email address and drop DM-U-A field + * Bump standards-version, no change needed + + -- Raphael Geissert Mon, 23 Nov 2009 23:04:04 -0600 + +xserver-xorg-video-openchrome (1:0.2.903+svn741-1) unstable; urgency=low + + * New upstream snapshot + + 709: hwcursor improvements and bug fixes (Closes: #496922) + + 716: fix 2d initialization for P4M900 + + 726: Fall back to software rendering for unsupported EXA repeat modes + + 734: Initialize CRTC before a mode switch + + 737: Samsung NC20 + + 739: Fix 2D engine init + + 740: CX700 integrated TMDS + + 741: Foxconn P4M800P7MB-RS2H + * debian/copyright updated to add details about a new copyright holder + * debian/control: bump standards version, no change needed + + -- Raphael Geissert Sun, 29 Mar 2009 13:39:13 -0600 + +xserver-xorg-video-openchrome (1:0.2.903+svn713-1) experimental; urgency=low + + * New upstream snapshot + + 682-685: Initial VX800 chipsets support + + 708: Initial XVideo support + + 682: via_cursor.c: register corrections + + 686: Mitac 8624, but with a P4M890 + + 687: VIA Epia M700 + + 688: Hide overlay when video is invisible + + 690: Axper XP-M8VM800 + + 693: Added more needed panel modes + + 694: XvMC Unichrome Pro allocation fixes (LP: #304119) + + 696: Fixed Crash worked around by XaaNoImageWriteRect (LP: #274340) + + 713: Twinhead M6 + * vt_fix.patch: removed, different solution by upstream in r695 + * disable_ARGB_cursor_VM800.patch: removed, no longer needed + + -- Raphael Geissert Fri, 09 Jan 2009 19:11:40 -0600 + +xserver-xorg-video-openchrome (1:0.2.902+svn579-4) unstable; urgency=low + + [ Raphael Geissert ] + * New upstream release + snapshot. + + 584: Simplified memory bandwidth setting. + + 591: IBM AnyPlace Kiosk 3xx. + + 592: Added missing 640x480 PAL mode for VT1625. + + 593-4: Merged randr branch. + + 595: Disabled ARGB cursor for K8M890. + + 597: VIA VT8454B has a panel. + + 598: MSI K8M Neo-V (broken pci id). + * disable_ARGB_cursor_VM800.patch: like r595 but for VM800. + * vt_fix.patch (Closes: #500253): + + prevent LCD's backlight from being switched off when changing VTs. + * debian/control: + + Build a dummy xserver-xorg-video-via package to ease the transition. + + Added lpia to the architectures list. + + [ Julien Cristau ] + * Add DM-Upload-Allowed control field to let Raphael upload this package + himself. + + -- Raphael Geissert Sun, 19 Oct 2008 16:12:32 +0200 + +xserver-xorg-video-openchrome (1:0.2.902+svn579-3) experimental; urgency=low + + * Build against xserver 1.5. + + -- Raphael Geissert Wed, 17 Dec 2008 14:55:38 +0100 + +xserver-xorg-video-openchrome (1:0.2.902+svn579-2) unstable; urgency=low + + [ Raphael Geissert ] + * Cherry-picked the following changesets adding support for new cards: + + 580: MSI VR321 + + 583: Foxconn P4M9007MB-8RS2H + + 586: MSI K9MM-V + + 589: Gigabyte M704 / RoverPC A700GQ + + 581: ECS CLE266 + + -- Julien Cristau Sun, 14 Sep 2008 17:52:58 +0200 + +xserver-xorg-video-openchrome (1:0.2.902+svn579-1) unstable; urgency=low + + [ Timo Aaltonen ] + * debian/patches/01_gen_pci_ids.diff: + - This patch adds a list of pci id's that the driver supports so that + the server can automatically load it. Stolen from via. (Closes: #487327) + * debian/control: + - Add quilt to build-deps. + * debian/rules: + - Support for patches. + + [ Raphael Geissert ] + * New upstream snapshot. + + Fixes some Xv issues. + + Disables XvDMA for P4M890 and K8M890, as it is broken. + + Enables CLE video engine on VM800/CN700. + * Bump Standards-Version to 3.8.0 + + Use filter instead of findstring for DEB_BUILD_OPTIONS parsing in d/rules + * Stripped enclosing chevrons from the unichrome link (Closes: #485957) + - p.d.o displays the link with or without them, and looks ugly + * Removed a useless lintian override + * Install a symlink to xserver-xorg-core's bugreport script + + -- Julien Cristau Sat, 12 Jul 2008 21:29:00 +0200 + +xserver-xorg-video-openchrome (1:0.2.902+svn570-1) unstable; urgency=low + + * First upload to Debian (Closes: #464848) + * New upstream release + snapshot + * Updated copyright information + * Conflicts: libchromexvmc1, libchromexvmcpro1 so Replaces takes + effect + + -- Raphael Geissert Sat, 19 Apr 2008 19:51:43 -0500 + +xserver-xorg-video-openchrome (1:0.2.901+svn502-1) experimental; urgency=low + + * New upstream release + + -- Raphael Geissert Mon, 14 Jan 2008 17:55:56 -0600 + +xserver-xorg-video-openchrome (1:0.2.901+svn491-1) experimental; urgency=low + + * New upstream release + * Merged binary packages (merged overrides/*, *.install, and added Provides) + * Added epoch because of ubuntu's epoch addition + * debian/rules: set the correct Provides of -video and Depends on -core + Code taken from xserver-xorg-video-via-0.2.2's debian/xsfbs/xsfbs.mk + * debian/{rules,control}: rewritten so cdbs is NOT used + * Bumped DH_COMPAT to 6 + * debian/control: Added Vcs-* entries + * debian/control: Do not conflict with xserver-xorg-video-{via,unichrome} + The driver is for some time now called 'openchrome' + + -- Raphael Geissert Mon, 14 Jan 2008 17:12:00 -0600 + +xserver-xorg-video-openchrome (0.2.900+svn470-1) experimental; urgency=low + + * New upstream release + + -- Raphael Geissert Sat, 22 Dec 2007 12:33:17 -0600 + +xserver-xorg-video-openchrome (0.2.900+svn452-1) experimental; urgency=low + + * New upstream release + * clean target now removes some autogen.sh generated files + * Updated to Standards-Version: 3.7.3, no change needed + * Removed non-standard architecture lpia from control + + -- Raphael Geissert Sun, 09 Dec 2007 20:28:46 -0600 + +xserver-xorg-video-openchrome (0.2.900+svn447-1) experimental; urgency=low + + * New upstream release + + -- Raphael Geissert Sun, 25 Nov 2007 20:31:08 -0600 + +xserver-xorg-video-openchrome (0.2.900+svn423-1) experimental; urgency=low + + * New upstream release + + -- Raphael Geissert Sun, 28 Oct 2007 19:51:44 -0600 + +xserver-xorg-video-openchrome (0.2.6+svn357-0ubuntu3) gutsy; urgency=low + + * Add lpia to all binary packages. + + -- Mario Limonciello Thu, 06 Sep 2007 09:59:20 -0500 + +xserver-xorg-video-openchrome (0.2.6+svn357-0ubuntu2) gutsy; urgency=low + + * Only build for i386, amd64, lpia. Hardware isn't available + on sparc, ppc, ia64, and FTBFS on these arch anyhow. + + -- Mario Limonciello Thu, 06 Sep 2007 09:51:48 -0500 + +xserver-xorg-video-openchrome (0.2.6+svn357-0ubuntu1) gutsy; urgency=low + + * Initial Release. + + -- Mario Limonciello Fri, 27 Jul 2007 17:57:42 -0500 --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/watch +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/watch @@ -0,0 +1,3 @@ +version=3 + +http://www.openchrome.org/releases/xf86-video-openchrome-(.*)\.tar\.gz --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/compat +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/compat @@ -0,0 +1 @@ +5 --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/overrides +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/overrides @@ -0,0 +1,5 @@ +xserver-xorg-video-openchrome: non-dev-pkg-with-shlib-symlink usr/lib/libchromeXvMCPro.so.1.0.0 usr/lib/libchromeXvMCPro.so +xserver-xorg-video-openchrome: non-dev-pkg-with-shlib-symlink usr/lib/libchromeXvMC.so.1.0.0 usr/lib/libchromeXvMC.so +xserver-xorg-video-openchrome: package-name-doesnt-match-sonames libchromeXvMC1 libchromeXvMCPro1 +xserver-xorg-video-openchrome: no-symbols-control-file usr/lib/libchromeXvMCPro.so.1.0.0 +xserver-xorg-video-openchrome: no-symbols-control-file usr/lib/libchromeXvMC.so.1.0.0 --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/patches/series +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/patches/series @@ -0,0 +1,2 @@ +01_gen_pci_ids.diff +manpage_typo.patch --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/patches/01_gen_pci_ids.diff +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/patches/01_gen_pci_ids.diff @@ -0,0 +1,18 @@ +Generate a list of known PCIs for xorg to auto-detect them and use openchrome for those +Index: xserver-xorg-video-openchrome/src/Makefile.am +=================================================================== +--- xserver-xorg-video-openchrome.orig/src/Makefile.am ++++ xserver-xorg-video-openchrome/src/Makefile.am +@@ -92,6 +92,12 @@ EXTRA_DIST += \ + endif + + ++pcidatadir = $(datadir)/xserver-xorg/pci ++pcidata_DATA = openchrome.ids ++ ++openchrome.ids : via_id.h ++ awk '/^#define.*PCI_CHIP/ {print $$3}' ${srcdir}/via_id.h | sed -e 's/0x/1106/' > openchrome.ids ++ + via_driver.lo: svnversion.h + svnversion.h: $(openchrome_drv_la_SOURCES) + @if [ -d .svn ]; then \ --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/patches/manpage_typo.patch +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/patches/manpage_typo.patch @@ -0,0 +1,22 @@ +Index: xserver-xorg-video-openchrome/src/openchrome.man +=================================================================== +--- xserver-xorg-video-openchrome.orig/src/openchrome.man ++++ xserver-xorg-video-openchrome/src/openchrome.man +@@ -58,7 +58,7 @@ are supported: + .BI "Option \*qAccelMethod\*q \*q" string \*q + The driver supports "XAA" and "EXA" acceleration methods. The default + method is XAA, since EXA is still experimental. Contrary to XAA, EXA +-implements acceleration for screen uploads and downlads (if DRI is ++implements acceleration for screen uploads and downloads (if DRI is + enabled) and for the Render/Composite extension. + .TP + .BI "Option \*qActiveDevice\*q \*q" string \*q +@@ -80,7 +80,7 @@ EXA scratch area in AGP space, it will b + no room for DRI textures, they will be allocated from the DRI part of + VRAM (see the option "MaxDRIMem"). The default amount of AGP is + 32768 kB. Note that the AGP aperture set in the BIOS must be able +-to accomodate the amount of AGP memory specified here. Otherwise no ++to accommodate the amount of AGP memory specified here. Otherwise no + AGP memory will be available. It is safe to set a very large AGP + aperture in the BIOS. + .TP --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/xsfbs/xsfbs.sh +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/xsfbs/xsfbs.sh @@ -0,0 +1,622 @@ +# This is the X Strike Force shell library for X Window System package +# maintainer scripts. It serves to define shell functions commonly used by +# such packages, and performs some error checking necessary for proper operation +# of those functions. By itself, it does not "do" much; the maintainer scripts +# invoke the functions defined here to accomplish package installation and +# removal tasks. + +# If you are reading this within a Debian package maintainer script (e.g., +# /var/lib/dpkg/info/PACKAGE.{config,preinst,postinst,prerm,postrm}), you can +# skip past this library by scanning forward in this file to the string +# "GOBSTOPPER". + +SOURCE_VERSION=@SOURCE_VERSION@ +OFFICIAL_BUILD=@OFFICIAL_BUILD@ + +# Use special abnormal exit codes so that problems with this library are more +# easily tracked down. +SHELL_LIB_INTERNAL_ERROR=86 +SHELL_LIB_THROWN_ERROR=74 +SHELL_LIB_USAGE_ERROR=99 + +# old -> new variable names +if [ -z "$DEBUG_XORG_PACKAGE" ] && [ -n "$DEBUG_XFREE86_PACKAGE" ]; then + DEBUG_XORG_PACKAGE="$DEBUG_XFREE86_PACKAGE" +fi +if [ -z "$DEBUG_XORG_DEBCONF" ] && [ -n "$DEBUG_XFREE86_DEBCONF" ]; then + DEBUG_XORG_DEBCONF="$DEBUG_XFREE86_DEBCONF" +fi + +# initial sanity checks +if [ -z "$THIS_PACKAGE" ]; then + cat >&2 < on the World Wide Web for +instructions, read the file /usr/share/doc/debian/bug-reporting.txt from the +"doc-debian" package, or install the "reportbug" package and use the command of +the same name to file a report against version $SOURCE_VERSION of this package. +EOF + exit $SHELL_LIB_USAGE_ERROR +fi + +if [ -z "$THIS_SCRIPT" ]; then + cat >&2 < on the World Wide Web for +instructions, read the file /usr/share/doc/debian/bug-reporting.txt from the +"doc-debian" package, or install the "reportbug" package and use the command of +the same name to file a report against version $SOURCE_VERSION of the +"$THIS_PACKAGE" package. +EOF + exit $SHELL_LIB_USAGE_ERROR +fi + +if [ "$1" = "reconfigure" ] || [ -n "$DEBCONF_RECONFIGURE" ]; then + RECONFIGURE="true" +else + RECONFIGURE= +fi + +if ([ "$1" = "install" ] || [ "$1" = "configure" ]) && [ -z "$2" ]; then + FIRSTINST="yes" +fi + +if [ -z "$RECONFIGURE" ] && [ -z "$FIRSTINST" ]; then + UPGRADE="yes" +fi + +trap "message;\ + message \"Received signal. Aborting $THIS_PACKAGE package $THIS_SCRIPT script.\";\ + message;\ + exit 1" HUP INT QUIT TERM + +reject_nondigits () { + # syntax: reject_nondigits [ operand ... ] + # + # scan operands (typically shell variables whose values cannot be trusted) for + # characters other than decimal digits and barf if any are found + while [ -n "$1" ]; do + # does the operand contain anything but digits? + if ! expr "$1" : "[[:digit:]]\+$" > /dev/null 2>&1; then + # can't use die(), because it wraps message() which wraps this function + echo "$THIS_PACKAGE $THIS_SCRIPT error: reject_nondigits() encountered" \ + "possibly malicious garbage \"$1\"" >&2 + exit $SHELL_LIB_THROWN_ERROR + fi + shift + done +} + +reject_unlikely_path_chars () { + # syntax: reject_unlikely_path_chars [ operand ... ] + # + # scan operands (typically shell variables whose values cannot be trusted) for + # characters unlikely to be seen in a path and which the shell might + # interpret and barf if any are found + while [ -n "$1" ]; do + # does the operand contain any funny characters? + if expr "$1" : '.*[!$&()*;<>?|].*' > /dev/null 2>&1; then + # can't use die(), because I want to avoid forward references + echo "$THIS_PACKAGE $THIS_SCRIPT error: reject_unlikely_path_chars()" \ + "encountered possibly malicious garbage \"$1\"" >&2 + exit $SHELL_LIB_THROWN_ERROR + fi + shift + done +} + +# Query the terminal to establish a default number of columns to use for +# displaying messages to the user. This is used only as a fallback in the +# event the COLUMNS variable is not set. ($COLUMNS can react to SIGWINCH while +# the script is running, and this cannot, only being calculated once.) +DEFCOLUMNS=$(stty size 2> /dev/null | awk '{print $2}') || true +if ! expr "$DEFCOLUMNS" : "[[:digit:]]\+$" > /dev/null 2>&1; then + DEFCOLUMNS=80 +fi + +message () { + # pretty-print messages of arbitrary length + reject_nondigits "$COLUMNS" + echo "$*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS} >&2 +} + +observe () { + # syntax: observe message ... + # + # issue observational message suitable for logging someday when support for + # it exists in dpkg + if [ -n "$DEBUG_XORG_PACKAGE" ]; then + message "$THIS_PACKAGE $THIS_SCRIPT note: $*" + fi +} + +warn () { + # syntax: warn message ... + # + # issue warning message suitable for logging someday when support for + # it exists in dpkg; also send to standard error + message "$THIS_PACKAGE $THIS_SCRIPT warning: $*" +} + +die () { + # syntax: die message ... + # + # exit script with error message + message "$THIS_PACKAGE $THIS_SCRIPT error: $*" + exit $SHELL_LIB_THROWN_ERROR +} + +internal_error () { + # exit script with error; essentially a "THIS SHOULD NEVER HAPPEN" message + message "internal error: $*" + if [ -n "$OFFICIAL_BUILD" ]; then + message "Please report a bug in the $THIS_SCRIPT script of the" \ + "$THIS_PACKAGE package, version $SOURCE_VERSION to the Debian Bug" \ + "Tracking System. Include all messages above that mention the" \ + "$THIS_PACKAGE package. Visit " \ + " on the World Wide Web for" \ + "instructions, read the file" \ + "/usr/share/doc/debian/bug-reporting.txt from the doc-debian" \ + "package, or install the reportbug package and use the command of" \ + "the same name to file a report." + fi + exit $SHELL_LIB_INTERNAL_ERROR +} + +usage_error () { + message "usage error: $*" + message "Please report a bug in the $THIS_SCRIPT script of the" \ + "$THIS_PACKAGE package, version $SOURCE_VERSION to the Debian Bug" \ + "Tracking System. Include all messages above that mention the" \ + "$THIS_PACKAGE package. Visit " \ + " on the World Wide Web for" \ + "instructions, read the file" \ + "/usr/share/doc/debian/bug-reporting.txt from the doc-debian" \ + "package, or install the reportbug package and use the command of" \ + "the same name to file a report." + exit $SHELL_LIB_USAGE_ERROR +} + +font_update () { + # run $UPDATECMDS in $FONTDIRS + + local dir cmd shortcmd x_font_dir_prefix + + x_font_dir_prefix="/usr/share/fonts/X11" + + if [ -z "$UPDATECMDS" ]; then + usage_error "font_update() called but \$UPDATECMDS not set" + fi + if [ -z "$FONTDIRS" ]; then + usage_error "font_update() called but \$FONTDIRS not set" + fi + + reject_unlikely_path_chars "$UPDATECMDS" + reject_unlikely_path_chars "$FONTDIRS" + + for dir in $FONTDIRS; do + if [ -d "$x_font_dir_prefix/$dir" ]; then + for cmd in $UPDATECMDS; do + if which "$cmd" > /dev/null 2>&1; then + shortcmd=${cmd##*/} + observe "running $shortcmd in $dir font directory" + cmd_opts= + if [ "$shortcmd" = "update-fonts-alias" ]; then + cmd_opts=--x11r7-layout + fi + if [ "$shortcmd" = "update-fonts-dir" ]; then + cmd_opts=--x11r7-layout + fi + if [ "$shortcmd" = "update-fonts-scale" ]; then + cmd_opts=--x11r7-layout + fi + $cmd $cmd_opts $dir || warn "$cmd $cmd_opts $dir" \ + "failed; font directory data may not" \ + "be up to date" + else + warn "$cmd not found; not updating corresponding $dir font" \ + "directory data" + fi + done + else + warn "$dir is not a directory; not updating font directory data" + fi + done +} + +remove_conffile_prepare () { + # syntax: remove_conffile_prepare filename official_md5sum ... + # + # Check a conffile "filename" against a list of canonical MD5 checksums. + # If the file's current MD5 checksum matches one of the "official_md5sum" + # operands provided, then prepare the conffile for removal from the system. + # We defer actual deletion until the package is configured so that we can + # roll this operation back if package installation fails. + # + # Call this function from a preinst script in the event $1 is "upgrade" or + # "install" and verify $2 to ensure the package is being upgraded from a + # version (or installed over a version removed-but-not-purged) prior to the + # one in which the conffile was obsoleted. + + local conffile current_checksum + + # validate arguments + if [ $# -lt 2 ]; then + usage_error "remove_conffile_prepare() called with wrong number of" \ + "arguments; expected at least 2, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + conffile="$1" + shift + + # does the conffile even exist? + if [ -e "$conffile" ]; then + # calculate its checksum + current_checksum=$(md5sum < "$conffile" | sed 's/[[:space:]].*//') + # compare it to each supplied checksum + while [ -n "$1" ]; do + if [ "$current_checksum" = "$1" ]; then + # we found a match; move the confffile and stop looking + observe "preparing obsolete conffile $conffile for removal" + mv "$conffile" "$conffile.$THIS_PACKAGE-tmp" + break + fi + shift + done + fi +} + +remove_conffile_lookup () { + # syntax: remove_conffile_lookup package filename + # + # Lookup the md5sum of a conffile in dpkg's database, and prepare for removal + # if it matches the actual file's md5sum. + # + # Call this function when you would call remove_conffile_prepare but only + # want to check against dpkg's status database instead of known checksums. + + local package conffile old_md5sum + + # validate arguments + if [ $# -ne 2 ]; then + usage_error "remove_conffile_lookup() called with wrong number of" \ + "arguments; expected 1, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + package="$1" + conffile="$2" + + if ! [ -e "$conffile" ]; then + return + fi + old_md5sum="$(dpkg-query -W -f='${Conffiles}' "$package" | \ + awk '{ if (match($0, "^ '"$conffile"' ")) print $2}')" + if [ -n "$old_md5sum" ]; then + remove_conffile_prepare "$conffile" "$old_md5sum" + fi +} + +remove_conffile_commit () { + # syntax: remove_conffile_commit filename + # + # Complete the removal of a conffile "filename" that has become obsolete. + # + # Call this function from a postinst script after having used + # remove_conffile_prepare() in the preinst. + + local conffile + + # validate arguments + if [ $# -ne 1 ]; then + usage_error "remove_conffile_commit() called with wrong number of" \ + "arguments; expected 1, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + conffile="$1" + + # if the temporary file created by remove_conffile_prepare() exists, remove it + if [ -e "$conffile.$THIS_PACKAGE-tmp" ]; then + observe "committing removal of obsolete conffile $conffile" + rm "$conffile.$THIS_PACKAGE-tmp" + fi +} + +remove_conffile_rollback () { + # syntax: remove_conffile_rollback filename + # + # Roll back the removal of a conffile "filename". + # + # Call this function from a postrm script in the event $1 is "abort-upgrade" + # or "abort-install" is after having used remove_conffile_prepare() in the + # preinst. + + local conffile + + # validate arguments + if [ $# -ne 1 ]; then + usage_error "remove_conffile_rollback() called with wrong number of" \ + "arguments; expected 1, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + conffile="$1" + + # if the temporary file created by remove_conffile_prepare() exists, move it + # back + if [ -e "$conffile.$THIS_PACKAGE-tmp" ]; then + observe "rolling back removal of obsolete conffile $conffile" + mv "$conffile.$THIS_PACKAGE-tmp" "$conffile" + fi +} + +replace_conffile_with_symlink_prepare () { + # syntax: replace_conffile_with_symlink_prepare oldfilename newfilename \ + # official_md5sum ... + # + # Check a conffile "oldfilename" against a list of canonical MD5 checksums. + # If the file's current MD5 checksum matches one of the "official_md5sum" + # operands provided, then prepare the conffile for removal from the system. + # We defer actual deletion until the package is configured so that we can + # roll this operation back if package installation fails. Otherwise copy it + # to newfilename and let dpkg handle it through conffiles mechanism. + # + # Call this function from a preinst script in the event $1 is "upgrade" or + # "install" and verify $2 to ensure the package is being upgraded from a + # version (or installed over a version removed-but-not-purged) prior to the + # one in which the conffile was obsoleted. + + local conffile current_checksum + + # validate arguments + if [ $# -lt 3 ]; then + usage_error "replace_conffile_with_symlink_prepare() called with wrong" \ + " number of arguments; expected at least 3, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + oldconffile="$1" + shift + newconffile="$1" + shift + + remove_conffile_prepare "$_oldconffile" "$@" + # If $oldconffile still exists, then md5sums didn't match. + # Copy it to new one. + if [ -f "$oldconffile" ]; then + cp "$oldconffile" "$newconffile" + fi + +} + +replace_conffile_with_symlink_commit () { + # syntax: replace_conffile_with_symlink_commit oldfilename + # + # Complete the removal of a conffile "oldfilename" that has been + # replaced by a symlink. + # + # Call this function from a postinst script after having used + # replace_conffile_with_symlink_prepare() in the preinst. + + local conffile + + # validate arguments + if [ $# -ne 1 ]; then + usage_error "replace_conffile_with_symlink_commit() called with wrong" \ + "number of arguments; expected 1, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + conffile="$1" + + remove_conffile_commit "$conffile" +} + +replace_conffile_with_symlink_rollback () { + # syntax: replace_conffile_with_symlink_rollback oldfilename newfilename + # + # Roll back the replacing of a conffile "oldfilename" with symlink to + # "newfilename". + # + # Call this function from a postrm script in the event $1 is "abort-upgrade" + # or "abort-install" and verify $2 to ensure the package failed to upgrade + # from a version (or install over a version removed-but-not-purged) prior + # to the one in which the conffile was obsoleted. + # You should have used replace_conffile_with_symlink_prepare() in the + # preinst. + + local conffile + + # validate arguments + if [ $# -ne 2 ]; then + usage_error "replace_conffile_with_symlink_rollback() called with wrong" \ + "number of arguments; expected 2, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + oldconffile="$1" + newconffile="$2" + + remove_conffile_rollback "$_oldconffile" + if [ -f "$newconffile" ]; then + rm "$newconffile" + fi +} + +run () { + # syntax: run command [ argument ... ] + # + # Run specified command with optional arguments and report its exit status. + # Useful for commands whose exit status may be nonzero, but still acceptable, + # or commands whose failure is not fatal to us. + # + # NOTE: Do *not* use this function with db_get or db_metaget commands; in + # those cases the return value of the debconf command *must* be checked + # before the string returned by debconf is used for anything. + + local retval + + # validate arguments + if [ $# -lt 1 ]; then + usage_error "run() called with wrong number of arguments; expected at" \ + "least 1, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + "$@" || retval=$? + + if [ ${retval:-0} -ne 0 ]; then + observe "command \"$*\" exited with status $retval" + fi +} + +make_symlink_sane () { + # syntax: make_symlink_sane symlink target + # + # Ensure that the symbolic link symlink exists, and points to target. + # + # If symlink does not exist, create it and point it at target. + # + # If symlink exists but is not a symbolic link, back it up. + # + # If symlink exists, is a symbolic link, but points to the wrong location, fix + # it. + # + # If symlink exists, is a symbolic link, and already points to target, do + # nothing. + # + # This function wouldn't be needed if ln had an -I, --idempotent option. + + # Validate arguments. + if [ $# -ne 2 ]; then + usage_error "make_symlink_sane() called with wrong number of arguments;" \ + "expected 2, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + # We could just use the positional parameters as-is, but that makes things + # harder to follow. + local symlink target + + symlink="$1" + target="$2" + + if [ -L "$symlink" ] && [ "$(readlink "$symlink")" = "$target" ]; then + observe "link from $symlink to $target already exists" + else + observe "creating symbolic link from $symlink to $target" + mkdir -p "${target%/*}" "${symlink%/*}" + ln -s -b -S ".dpkg-old" "$target" "$symlink" + fi +} + +migrate_dir_to_symlink () { + # syntax: migrate_dir_to_symlink old_location new_location + # + # Per Debian Policy section 6.5.4, "A directory will never be replaced by a + # symbolic link to a directory or vice versa; instead, the existing state + # (symlink or not) will be left alone and dpkg will follow the symlink if + # there is one." + # + # We have to do it ourselves. + # + # This function moves the contents of old_location, a directory, into + # new_location, a directory, then makes old_location a symbolic link to + # new_location. + # + # old_location need not exist, but if it does, it must be a directory (or a + # symlink to a directory). If it is not, it is backed up. If new_location + # exists already and is not a directory, it is backed up. + # + # This function should be called from a package's preinst so that other + # packages unpacked after this one --- but before this package's postinst runs + # --- are unpacked into new_location even if their payloads contain + # old_location filespecs. + + # Validate arguments. + if [ $# -ne 2 ]; then + usage_error "migrate_dir_to_symlink() called with wrong number of" + "arguments; expected 2, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + # We could just use the positional parameters as-is, but that makes things + # harder to follow. + local new old + + old="$1" + new="$2" + + # Is old location a symlink? + if [ -L "$old" ]; then + # Does it already point to new location? + if [ "$(readlink "$old")" = "$new" ]; then + # Nothing to do; migration has already been done. + observe "migration of $old to $new already done" + return 0 + else + # Back it up. + warn "backing up symbolic link $old as $old.dpkg-old" + mv -b "$old" "$old.dpkg-old" + fi + fi + + # Does old location exist, but is not a directory? + if [ -e "$old" ] && ! [ -d "$old" ]; then + # Back it up. + warn "backing up non-directory $old as $old.dpkg-old" + mv -b "$old" "$old.dpkg-old" + fi + + observe "migrating $old to $new" + + # Is new location a symlink? + if [ -L "$new" ]; then + # Does it point the wrong way, i.e., back to where we're migrating from? + if [ "$(readlink "$new")" = "$old" ]; then + # Get rid of it. + observe "removing symbolic link $new which points to $old" + rm "$new" + else + # Back it up. + warn "backing up symbolic link $new as $new.dpkg-old" + mv -b "$new" "$new.dpkg-old" + fi + fi + + # Does new location exist, but is not a directory? + if [ -e "$new" ] && ! [ -d "$new" ]; then + warn "backing up non-directory $new as $new.dpkg-old" + mv -b "$new" "$new.dpkg-old" + fi + + # Create new directory if it does not yet exist. + if ! [ -e "$new" ]; then + observe "creating $new" + mkdir -p "$new" + fi + + # Copy files in old location to new location. Back up any filenames that + # already exist in the new location with the extension ".dpkg-old". + observe "copying files from $old to $new" + if ! (cd "$old" && cp -a -b -S ".dpkg-old" . "$new"); then + die "error(s) encountered while copying files from $old to $new" + fi + + # Remove files at old location. + observe "removing $old" + rm -r "$old" + + # Create symlink from old location to new location. + make_symlink_sane "$old" "$new" +} + +# vim:set ai et sw=2 ts=2 tw=80: + +# GOBSTOPPER: The X Strike Force shell library ends here. --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/xsfbs/xsfbs.mk +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/xsfbs/xsfbs.mk @@ -0,0 +1,276 @@ +#!/usr/bin/make -f + +# Debian X Strike Force Build System (XSFBS): Make portion + +# Copyright 1996 Stephen Early +# Copyright 1997 Mark Eichin +# Copyright 1998-2005, 2007 Branden Robinson +# Copyright 2005 David Nusinow +# +# Licensed under the GNU General Public License, version 2. See the file +# /usr/share/common-licenses/GPL or . + +# Originally by Stephen Early +# Modified by Mark W. Eichin +# Modified by Adam Heath +# Modified by Branden Robinson +# Modified by Fabio Massimo Di Nitto +# Modified by David Nusinow +# Acknowledgements to Manoj Srivastava. + +# Pass $(DH_OPTIONS) into the environment for debhelper's benefit. +export DH_OPTIONS + +# force quilt to not use ~/.quiltrc and to use debian/patches +QUILT = QUILT_PATCHES=debian/patches quilt --quiltrc /dev/null + +# Set up parameters for the upstream build environment. + +# Determine (source) package name from Debian changelog. +SOURCE_NAME:=$(shell dpkg-parsechangelog -ldebian/changelog \ + | grep '^Source:' | awk '{print $$2}') + +# Determine package version from Debian changelog. +SOURCE_VERSION:=$(shell dpkg-parsechangelog -ldebian/changelog \ + | grep '^Version:' | awk '{print $$2}') + +# Determine upstream version number. +UPSTREAM_VERSION:=$(shell echo $(SOURCE_VERSION) | sed 's/-.*//') + +# Determine the source version without the epoch for make-orig-tar-gz +NO_EPOCH_VER:=$(shell echo $(UPSTREAM_VERSION) | sed 's/^.://') + +# Figure out who's building this package. +BUILDER:=$(shell echo $${DEBEMAIL:-$${EMAIL:-$$(echo $$LOGNAME@$$(cat /etc/mailname 2>/dev/null))}}) + +# Find out if this is an official build; an official build has nothing but +# digits, dots, and/or the codename of a release in the Debian part of the +# version number. Anything else indicates an unofficial build. +OFFICIAL_BUILD:=$(shell VERSION=$(SOURCE_VERSION); if ! expr "$$(echo $${VERSION\#\#*-} | sed 's/\(woody\|sarge\|etch\|lenny\)//g')" : ".*[^0-9.].*" >/dev/null 2>&1; then echo yes; fi) + +# Set up parameters for the Debian build environment. + +# Determine our architecture. +BUILD_ARCH:=$(shell dpkg-architecture -qDEB_BUILD_ARCH) +# Work around some old-time dpkg braindamage. +BUILD_ARCH:=$(subst i486,i386,$(BUILD_ARCH)) +# The DEB_HOST_ARCH variable may be set per the Debian cross-compilation policy. +ifdef DEB_HOST_ARCH + ARCH:=$(DEB_HOST_ARCH) +else + # dpkg-cross sets the ARCH environment variable; if set, use it. + ifdef ARCH + ARCH:=$(ARCH) + else + ARCH:=$(BUILD_ARCH) + endif +endif + +# $(STAMP_DIR) houses stamp files for complex targets. +STAMP_DIR:=stampdir + +# $(DEBTREEDIR) is where all install rules are told (via $(DESTDIR)) to place +# their files. +DEBTREEDIR:=$(CURDIR)/debian/tmp + +# All "important" targets have four lines: +# 1) A target name that is invoked by a package-building tool or the user. +# This consists of a dependency on a "$(STAMP_DIR)/"-prefixed counterpart. +# 2) A line delcaring 1) as a phony target (".PHONY:"). +# 3) A "$(STAMP_DIR)/"-prefixed target which does the actual work, and may +# depend on other targets. +# 4) A line declaring 3) as a member of the $(stampdir_targets) variable; the +# "$(STAMP_DIR)/" prefix is omitted. +# +# This indirection is needed so that the "stamp" files that signify when a rule +# is done can be located in a separate "stampdir". Recall that make has no way +# to know when a goal has been met for a phony target (like "build" or +# "install"). +# +# At the end of each "$(STAMP_DIR)/" target, be sure to run the command ">$@" +# so that the target will not be run again. Removing the file will make Make +# run the target over. + +# All phony targets should be declared as dependencies of .PHONY, even if they +# do not have "($STAMP_DIR)/"-prefixed counterparts. + +# Define a harmless default rule to keep things from going nuts by accident. +.PHONY: default +default: + +# Set up the $(STAMP_DIR) directory. +.PHONY: stampdir +stampdir_targets+=stampdir +stampdir: $(STAMP_DIR)/stampdir +$(STAMP_DIR)/stampdir: + mkdir $(STAMP_DIR) + >$@ + +# Set up the package build directory as quilt expects to find it. +.PHONY: prepare +stampdir_targets+=prepare +prepare: $(STAMP_DIR)/prepare +$(STAMP_DIR)/prepare: $(STAMP_DIR)/log $(STAMP_DIR)/genscripts + >$@ + +.PHONY: log +stampdir_targets+=log +log: $(STAMP_DIR)/log +$(STAMP_DIR)/log: $(STAMP_DIR)/stampdir + mkdir -p $(STAMP_DIR)/log + +# Apply all patches to the upstream source. +.PHONY: patch +stampdir_targets+=patch +patch: $(STAMP_DIR)/patch +$(STAMP_DIR)/patch: $(STAMP_DIR)/prepare + if ! [ `which quilt` ]; then \ + echo "Couldn't find quilt. Please install it or add it to the build-depends for this package."; \ + exit 1; \ + fi; \ + if $(QUILT) next >/dev/null 2>&1; then \ + echo -n "Applying patches..."; \ + if $(QUILT) push -a -v >$(STAMP_DIR)/log/patch 2>&1; then \ + cat $(STAMP_DIR)/log/patch; \ + echo "successful."; \ + else \ + cat $(STAMP_DIR)/log/patch; \ + echo "failed! (check $(STAMP_DIR)/log/patch for details)"; \ + exit 1; \ + fi; \ + else \ + echo "No patches to apply"; \ + fi; \ + >$@ + +# Revert all patches to the upstream source. +.PHONY: unpatch +unpatch: $(STAMP_DIR)/log + rm -f $(STAMP_DIR)/patch + @echo -n "Unapplying patches..."; \ + if $(QUILT) applied >/dev/null 2>/dev/null; then \ + if $(QUILT) pop -a -v >$(STAMP_DIR)/log/unpatch 2>&1; then \ + cat $(STAMP_DIR)/log/unpatch; \ + echo "successful."; \ + else \ + cat $(STAMP_DIR)/log/unpatch; \ + echo "failed! (check $(STAMP_DIR)/log/unpatch for details)"; \ + exit 1; \ + fi; \ + else \ + echo "nothing to do."; \ + fi + +# Clean the generated maintainer scripts. +.PHONY: cleanscripts +cleanscripts: + rm -f $(STAMP_DIR)/genscripts + rm -f debian/*.config \ + debian/*.postinst \ + debian/*.postrm \ + debian/*.preinst \ + debian/*.prerm + +# Clean the package build tree. +.PHONY: xsfclean +xsfclean: cleanscripts unpatch + dh_testdir + rm -rf .pc + rm -rf $(STAMP_DIR) + dh_clean + +# Remove files from the upstream source tree that we don't need, or which have +# licensing problems. It must be run before creating the .orig.tar.gz. +# +# Note: This rule is for Debian package maintainers' convenience, and is not +# needed for conventional build scenarios. +.PHONY: prune-upstream-tree +prune-upstream-tree: + # Ensure we're in the correct directory. + dh_testdir + grep -rvh '^#' debian/prune/ | xargs --no-run-if-empty rm -rf + +# Verify that there are no offsets or fuzz in the patches we apply. +# +# Note: This rule is for Debian package maintainers' convenience, and is not +# needed for conventional build scenarios. +.PHONY: patch-audit +patch-audit: prepare unpatch + @echo -n "Auditing patches..."; \ + >$(STAMP_DIR)/log/patch; \ + FUZZY=; \ + while [ -n "$$($(QUILT) next)" ]; do \ + RESULT=$$($(QUILT) push -v | tee -a $(STAMP_DIR)/log/patch | grep ^Hunk | sed 's/^Hunk.*\(succeeded\|FAILED\).*/\1/');\ + case "$$RESULT" in \ + succeeded) \ + echo "fuzzy patch: $$($(QUILT) top)" \ + | tee -a $(STAMP_DIR)/log/$$($(QUILT) top); \ + FUZZY=yes; \ + ;; \ + FAILED) \ + echo "broken patch: $$($(QUILT) next)" \ + | tee -a $(STAMP_DIR)/log/$$($(QUILT) next); \ + exit 1; \ + ;; \ + esac; \ + done; \ + if [ -n "$$FUZZY" ]; then \ + echo "there were fuzzy patches; please fix."; \ + exit 1; \ + else \ + echo "done."; \ + fi + +# Generate the maintainer scripts. +.PHONY: genscripts +stampdir_targets+=genscripts +genscripts: $(STAMP_DIR)/genscripts +$(STAMP_DIR)/genscripts: $(STAMP_DIR)/stampdir + for FILE in debian/*.config.in \ + debian/*.postinst.in \ + debian/*.postrm.in \ + debian/*.preinst.in \ + debian/*.prerm.in; do \ + if [ -e "$$FILE" ]; then \ + MAINTSCRIPT=$$(echo $$FILE | sed 's/.in$$//'); \ + sed -n '1,/^#INCLUDE_SHELL_LIB#$$/p' <$$FILE \ + | sed -e '/^#INCLUDE_SHELL_LIB#$$/d' >$$MAINTSCRIPT.tmp; \ + cat debian/xsfbs/xsfbs.sh >>$$MAINTSCRIPT.tmp; \ + sed -n '/^#INCLUDE_SHELL_LIB#$$/,$$p' <$$FILE \ + | sed -e '/^#INCLUDE_SHELL_LIB#$$/d' >>$$MAINTSCRIPT.tmp; \ + sed -e 's/@SOURCE_VERSION@/$(SOURCE_VERSION)/' \ + -e 's/@OFFICIAL_BUILD@/$(OFFICIAL_BUILD)/' \ + <$$MAINTSCRIPT.tmp >$$MAINTSCRIPT; \ + rm $$MAINTSCRIPT.tmp; \ + fi; \ + done + # Validate syntax of generated shell scripts. + #sh debian/scripts/validate-posix-sh debian/*.config \ + # debian/*.postinst \ + # debian/*.postrm \ + # debian/*.preinst \ + # debian/*.prerm + >$@ + +SERVERMINVERS = $(shell cat /usr/share/xserver-xorg/serverminver 2>/dev/null) +VIDEOABI = $(shell cat /usr/share/xserver-xorg/videoabiver 2>/dev/null) +INPUTABI = $(shell cat /usr/share/xserver-xorg/inputabiver 2>/dev/null) +SERVER_DEPENDS = xserver-xorg-core (>= $(SERVERMINVERS)) +VIDDRIVER_PROVIDES = xserver-xorg-video-$(VIDEOABI) +INPDRIVER_PROVIDES = xserver-xorg-input-$(INPUTABI) +ifeq ($(PACKAGE),) +PACKAGE=$(shell awk '/^Package:/ { print $$2; exit }' < debian/control) +endif + +.PHONY: serverabi +serverabi: install +ifeq ($(SERVERMINVERS),) + @echo error: xserver-xorg-dev needs to be installed + @exit 1 +else + echo "xserver:Depends=$(SERVER_DEPENDS)" >> debian/$(PACKAGE).substvars + echo "xviddriver:Provides=$(VIDDRIVER_PROVIDES)" >> debian/$(PACKAGE).substvars + echo "xinpdriver:Provides=$(INPDRIVER_PROVIDES)" >> debian/$(PACKAGE).substvars +endif + +# vim:set noet ai sts=8 sw=8 tw=0: --- xserver-xorg-video-openchrome-0.2.904+svn827.orig/debian/xsfbs/repack.sh +++ xserver-xorg-video-openchrome-0.2.904+svn827/debian/xsfbs/repack.sh @@ -0,0 +1,32 @@ +#!/bin/sh + +set -e + +if ! [ -d debian/prune ]; then + exit 0 +fi + +if [ "x$1" != x--upstream-version ]; then + exit 1 +fi + +version="$2" +filename="$3" + +if [ -z "$version" ] || ! [ -f "$filename" ]; then + exit 1 +fi + +dir="$(pwd)" +tempdir="$(mktemp -d)" + +cd "$tempdir" +tar xf "$dir/$filename" +cat "$dir"/debian/prune/* | while read file; do rm -f */$file; done + +tar czf "$dir/$filename" * +cd "$dir" +rm -rf "$tempdir" +echo "Done pruning upstream tarball" + +exit 0