Import boinc-app-seti_6.97~svn1409-1.debian.tar.gz
authorGuo Yixuan <culu.gyx@gmail.com>
Tue, 28 Aug 2012 03:05:07 +0000 (03:05 +0000)
committerGuo Yixuan <culu.gyx@gmail.com>
Tue, 28 Aug 2012 03:05:07 +0000 (03:05 +0000)
[dgit import tarball boinc-app-seti 6.97~svn1409-1 boinc-app-seti_6.97~svn1409-1.debian.tar.gz]

30 files changed:
README.source [new file with mode: 0644]
boinc-app-seti.README.Debian [new file with mode: 0644]
boinc-app-seti.dirs [new file with mode: 0644]
boinc-app-seti.docs [new file with mode: 0644]
boinc-app-seti.install [new file with mode: 0644]
boinc-app-seti.postinst [new file with mode: 0644]
boinc-app-seti.prerm [new file with mode: 0644]
changelog [new file with mode: 0644]
compat [new file with mode: 0644]
control [new file with mode: 0644]
copyright [new file with mode: 0644]
extra/app_info.xml.in [new file with mode: 0644]
extra/seti.cfg [new file with mode: 0644]
gbp.conf [new file with mode: 0644]
patches/002_disable_static_linkage.patch [new file with mode: 0644]
patches/003_dont_use_own_jpeglib.patch [new file with mode: 0644]
patches/004_disable_altivec_on_ppc_linux.patch [new file with mode: 0644]
patches/101_freebsd_build.patch [new file with mode: 0644]
patches/102_powerpc_altivec.patch [new file with mode: 0644]
patches/210_fix_fgets_warning.patch [new file with mode: 0644]
patches/211_give_stderr_some_output.patch [new file with mode: 0644]
patches/212_increase_buffers.patch [new file with mode: 0644]
patches/README.patches [new file with mode: 0644]
patches/const_warning_reduction.patch [new file with mode: 0644]
patches/omitting_archs.patch [new file with mode: 0644]
patches/series [new file with mode: 0644]
patches/worker_comments.patch [new file with mode: 0644]
rules [new file with mode: 0755]
source/format [new file with mode: 0644]
watch [new file with mode: 0644]

diff --git a/README.source b/README.source
new file mode 100644 (file)
index 0000000..9996853
--- /dev/null
@@ -0,0 +1,40 @@
+Modifications to the upstream source:
+ Some files are removed for various reasons.
+
+ Prebuilt windows binary:
+    client/win_build/jpeg.lib
+    client/win_build/libfftw3f-3-1-1a_upx.dll
+    client/win_build/libfftw3f-3.exp
+    client/win_build/libfftw3f.lib
+
+ Duplicate:
+    client/win_build/work_unit.sah: the same as client/test_workunits/reference_work_unit.sah
+
+ Not used in building:
+    jpeglib/
+    sah_config.h
+
+Repackaged upstream source:
+ The SETI@home project does not distribute source code releases as
+ tarballs, only tarballs of nightly Subversion snapshots are available.
+ These can be downloaded from this location:
+
+   http://setiweb.ssl.berkeley.edu/sah/seti_source/nightly/
+
+ For more information about the SETI@home source code see:
+
+   http://setiathome.berkeley.edu/sah_porting.php
+
+ The Debian BOINC Maintainers use a script called 'download-seti' to
+ download nightly tarballs and to prepare them for release in Debian.
+ This script is available in our Subversion repository:
+
+   http://svn.debian.org/wsvn/pkg-boinc/scripts/download-seti?op=file
+
+ For example, to download the SETI@home .orig.tar.gz tarball from the
+ 16th May 2006 this script is invoked as:
+
+   $ download-seti 2006-05-16
+
+ The latest .orig.tar.gz tarball can always be retrieved, using this
+ script, by invoking the get-orig-source target of debian/rules.
diff --git a/boinc-app-seti.README.Debian b/boinc-app-seti.README.Debian
new file mode 100644 (file)
index 0000000..cf340c4
--- /dev/null
@@ -0,0 +1,40 @@
+BOINC version of SETI@home (boinc-app-seti) for Debian
+======================================================
+
+This package creates symlinks for the SETI@home binary and its app_info.xml
+file in Debian's default BOINC data directory /var/lib/boinc-client. If you
+are not using the default data directory you need to create these symlinks
+yourself.
+
+Refer to the paragraph "Installing and configuring BOINC application packages"
+in /usr/share/doc/boinc-client/README.Debian for detailed instructions.
+
+
+About optimizing and compiler flags
+-----------------------------------
+
+The package uses only default -O3 optimization flags for the compiler.
+Consequently, users are not unlikely to be unsatisfied with the
+performance of the Debian-binary when comparing it with the results
+achieved on other systems.
+
+However, there is little else that can be done about it, the build daemons
+that assemble the packages across all platforms cannot know on which
+particular machine the resulting binary will be executed. To rescue us
+just a bit:
+ * i686 machines are all presumed to have SSE2, a respective configure
+   option to SETI is set
+ * amd64 machines are all presumed to have SSE2 and SSE3, also passed
+   to the SETI configuration
+It is straightforward to self-compile the package. The debian/rules
+file already accommodates for a substitution e.g. of the compiler and
+extra flags for further improvements.
+
+
+About CUDA support
+------------------
+
+The CUDA code is separated from the regular SETI client, i.e. demanding
+a separate checkout from the source code repository. Upstream plans to
+merge that with the regular distribution, eventually. We will wait for that
+rather than complicating things on our end.
diff --git a/boinc-app-seti.dirs b/boinc-app-seti.dirs
new file mode 100644 (file)
index 0000000..ce55e76
--- /dev/null
@@ -0,0 +1,3 @@
+usr/lib/boinc-app-seti
+usr/share/boinc-app-seti
+usr/share/boinc-apps/info
diff --git a/boinc-app-seti.docs b/boinc-app-seti.docs
new file mode 100644 (file)
index 0000000..62deb04
--- /dev/null
@@ -0,0 +1 @@
+AUTHORS
diff --git a/boinc-app-seti.install b/boinc-app-seti.install
new file mode 100644 (file)
index 0000000..9d7501c
--- /dev/null
@@ -0,0 +1,3 @@
+client/setiathome_enhanced  usr/lib/boinc-app-seti
+debian/extra/app_info.xml   usr/share/boinc-app-seti
+debian/extra/seti.cfg       usr/share/boinc-apps/info
diff --git a/boinc-app-seti.postinst b/boinc-app-seti.postinst
new file mode 100644 (file)
index 0000000..4b37f74
--- /dev/null
@@ -0,0 +1,39 @@
+#!/bin/sh
+# postinst script for boinc-app-seti
+
+set -e
+
+BOINC_DIR=/var/lib/boinc-client
+
+init_boinc_client()
+{
+    if which invoke-rc.d >/dev/null 2>&1; then
+        invoke-rc.d boinc-client $1
+    else
+        /etc/init.d/boinc-client $1
+    fi
+}
+
+case "$1" in
+    configure)
+        update-boinc-applinks --create --project=seti --data-dir=$BOINC_DIR
+        chown -R boinc:boinc $BOINC_DIR/projects 2>/dev/null || true
+
+        # Restart the BOINC core client after update-boinc-applinks has
+        # created the symlinks for the anonymous application(s) and the
+        # app_info.xml file.
+        init_boinc_client restart
+    ;;
+
+    abort-upgrade|abort-remove|abort-deconfigure)
+    ;;
+
+    *)
+        echo "postinst called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+#DEBHELPER#
+
+exit 0
diff --git a/boinc-app-seti.prerm b/boinc-app-seti.prerm
new file mode 100644 (file)
index 0000000..83f1920
--- /dev/null
@@ -0,0 +1,43 @@
+#!/bin/sh
+# prerm script for boinc-app-seti
+
+set -e
+
+BOINC_DIR=/var/lib/boinc-client
+
+init_boinc_client()
+{
+    if which invoke-rc.d >/dev/null 2>&1; then
+        invoke-rc.d boinc-client $1
+    else
+        /etc/init.d/boinc-client $1
+    fi
+}
+
+case "$1" in
+    remove)
+        # Stop the core client and wait one second to give it the
+        # chance to shut down gracefully before removing the S@h
+        # application. Start the client then again.
+        init_boinc_client stop
+        sleep 1
+        update-boinc-applinks --remove --project=seti --data-dir=$BOINC_DIR
+        init_boinc_client start
+    ;;
+    
+    upgrade)
+        update-boinc-applinks --remove --project=seti --data-dir=$BOINC_DIR
+    ;;
+
+    failed-upgrade|deconfigure)
+    ;;
+
+    *)
+        echo "prerm called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+#DEBHELPER#
+
+exit 0
diff --git a/changelog b/changelog
new file mode 100644 (file)
index 0000000..2a59c22
--- /dev/null
+++ b/changelog
@@ -0,0 +1,229 @@
+boinc-app-seti (6.97~svn1409-1) unstable; urgency=low
+
+  [Eric J. Korpela]
+  * app_info.xml: setiathome_enhanced replies to version 6 and 7 jobs
+
+  [Guo Yixuan]
+  * Removed Windows binaries in source tree, and some other files, see
+    README.source.
+  * New upstream version:
+    - sah_v7 branch becomes trunk.
+    - new feature: autocorrelation.
+    - re-enabled 003_dont_use_own_jpeglib.patch, and refreshed some patches.
+
+  [Steffen Moeller]
+  * debian/control: boinc-app-seti suggests boinc-manager
+
+ -- Guo Yixuan <culu.gyx@gmail.com>  Tue, 28 Aug 2012 11:05:07 +0800
+
+boinc-app-seti (6.12~svn1385-3) unstable; urgency=low
+
+  * Correcting for previous dependency on libs of BOINC 7.0.33.
+
+ -- Steffen Moeller <moeller@debian.org>  Mon, 20 Aug 2012 23:11:29 +0200
+
+boinc-app-seti (6.12~svn1385-2) UNRELEASED; urgency=low
+
+  [Guo Yixuan]
+
+  * debian/patches/004_disable_altivec_on_ppc_linux.patch: Disable use of
+    altivec on PPC in the case of LINUX. Fixes FTBFS, thanks to Ben Collins
+    <bcollins@ubuntu.com>.
+
+  [Steffen Moeller]
+
+  * Removed Fernando from uploaders.
+  * SETI DMUA flag for Guo Yixuan.
+
+ -- Guo Yixuan <culu.gyx@gmail.com>  Sun, 19 Aug 2012 14:56:37 +0800
+
+boinc-app-seti (6.12~svn1385-1) unstable; urgency=low
+
+  * New upstream version.
+  * Reduced warnings during compilation.
+
+ -- Steffen Moeller <moeller@debian.org>  Sat, 18 Aug 2012 19:49:53 +0200
+
+boinc-app-seti (6.12~svn1306-3) UNRELEASED; urgency=low
+
+  * Platform-specific optimisations back in
+  * Disabled AltiVec for PowerPC because of FTBFS otherwise
+
+ -- Steffen Moeller <moeller@debian.org>  Wed, 15 Aug 2012 13:18:56 +0200
+
+boinc-app-seti (6.12~svn1306-2) unstable; urgency=low
+
+  * debian/rules: auto_clean improved.
+  * increased verbosity of stderr
+  * someone somewhen changed build-dependency to boinc-dev
+    (from libboinc-app-dev) (Closes: #679757).
+  * fixes crash on amd64 as it seems (Closes: #674248)
+
+ -- Steffen Moeller <moeller@debian.org>  Sun, 12 Aug 2012 00:31:34 +0200
+
+boinc-app-seti (6.12~svn1306-1) unstable; urgency=low
+
+  * New upstream version.
+  * Added inclusion<cmath> for kfreebsd (Closes: #675839)
+
+ -- Steffen Moeller <moeller@debian.org>  Tue, 29 May 2012 23:52:47 +0200
+
+boinc-app-seti (6.12~svn1305-3) UNRELEASED; urgency=low
+
+  [ Steffen Moeller ]
+  * Rebuilt against libboinc-app, and libboinc with it,
+    substituting dependency on boinc-dev.
+
+  [ Guo Yixuan ]
+  * Try to fix ftbfs on freebsd and powerpc.
+  * Install checkin_notes as upstream changelog.
+
+ -- Steffen Moeller <moeller@debian.org>  Mon, 28 May 2012 20:00:10 +0200
+
+boinc-app-seti (6.12~svn1305-2) unstable; urgency=low
+
+  * debian/control:
+    - remove quilt from build-depends.
+    - add myself in Uploaders.
+  * debian/rules:
+    - add dh_install in override target to install app_info.xml and seti.cfg.
+    - use dpkg-buildflags to add -g and default hardening options.
+
+ -- Guo Yixuan <culu.gyx@gmail.com>  Thu, 24 May 2012 23:16:40 +0800
+
+boinc-app-seti (6.12~svn1305-1) unstable; urgency=low
+
+  * New upstream version.
+    - Removed all patches
+    - Adjusted debian/rules for dynamic linking
+  * Updated debian/control
+    - Steffen's uploader's email address, removed Martin
+    - Set priority to extra (from optional)
+  * Bumped policy compliance to 3.9.3
+    - Source format 3.0
+    - Adjusted clean target to allow repeated builds with git
+    - added build-arch/-indep debian/rules targets
+  * README.Debian and README.source get some extra wording
+
+ -- Steffen Moeller <moeller@debian.org>  Sat, 19 May 2012 15:17:06 +0200
+
+boinc-app-seti (5.28~20080105-1) UNRELEASED; urgency=low
+
+  [ Frank S. Thomas ]
+  * New upstream snapshot from 05 Jan 2008.
+  * debian/patches/:
+    - Removed 001_build_fixes.patch and 004_include_new_str_util.h.patch
+      because they are not required for the new upstream version.
+    - Updated 002_disable_static_linkage.patch and
+      003_dont_use_own_jpeglib.patch for the new release.
+  * debian/control:
+    - Bumped Standards-Version from 3.8.0 to 3.8.1, no changes required.
+    - Removed myself from Uploaders.
+
+  [ Fernando C. Estrada ]
+  * debian/control:
+    - Bumped Standards-Version from 3.8.1 to 3.8.4, no changes required.
+    - Added my self as a Uploader.
+
+ -- Fernando C. Estrada <fcestrada@fcestrada.com>  Tue, 23 Mar 2010 21:55:22 -0600
+
+boinc-app-seti (5.13+cvs20060510-7.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Includes Ilya Barygin <barygin@gmail.com> patchs to fix a FTBFS
+    coming since the last upgrade of boinc-dev, thanks for the
+    patches! (Closes: #614443)
+
+ -- Ying-Chun Liu (PaulLiu) <paulliu@debian.org>  Mon, 14 May 2012 23:58:40 +0800
+
+boinc-app-seti (5.13+cvs20060510-5) unstable; urgency=low
+
+  [ Frank S. Thomas ]
+  * Use debhelper V7 instead of CDBS to minimize debian/rules.
+  * debian/control:
+    - Fix spelling error in long description. (closes: #501205)
+    - Updated Vcs-* fields since we are now using Git.
+    - Wrapped Uploaders field because this is permitted since policy 3.8.0.
+    - Removed -1 revision from boinc-dev build dependency to satisfy Lintian.
+    - Bumped Standards-Version from 3.7.3 to 3.8.0. This required to rename
+      debian/README.Debian-source to debian/README.source and to add a note
+      that we use quilt for patch management.
+  * Added a dummy debian/watch file that explains why upstream tarballs cannot
+    be meaningfully monitored to fix Lintian's debian-watch-file-is-missing
+    informational tag.
+  * debian/patches/:
+    - Added 102_fix_typo_for_gcc4.4.patch to fix a FTBFS with GCC 4.4. Thanks
+      to Martin Michlmayr <tbm@cyrius.com> for the bug report and the patch.
+      (closes: #505012)
+    - Added missing descriptions to some patch files to appease Lintian.
+
+ -- Frank S. Thomas <fst@debian.org>  Sun, 08 Feb 2009 11:47:26 +0100
+
+boinc-app-seti (5.13+cvs20060510-4) unstable; urgency=low
+
+  [ Steffen Moeller ]
+  * debian/rules: Wrote get-orig-source target that downloads the latest
+    nightly tarball.
+
+  [ Frank S. Thomas ]
+  * debian/control.in:
+    - Bumped Standards-Version from 3.7.2 to 3.7.3, no changes required.
+    - Changed my maintainer address to fst@debian.org.
+  * debian/rules: Remove --disable-dependency-tracking from configure's
+    arguments, because it breaks some handwritten rules in client/Makefile.am
+    which require that $(DEPDIR) exists.
+  * Bumped debhelper compat level from V5 to V6 since this is the current
+    recommended level and raised the build dependency to "debhelper (>= 6)".
+  * debian/patches/: Added 201_missing_header_for_gcc4.3.patch in order to
+    fix a FTBFS with recent GCC 4.3 snapshots. Thanks to Martin Michlmayr
+    <tbm@cyrius.com> for the bug report. (closes: #462051)
+
+ -- Frank S. Thomas <fst@debian.org>  Wed, 23 Jan 2008 21:27:23 +0100
+
+boinc-app-seti (5.13+cvs20060510-3) unstable; urgency=low
+
+  * debian/rules: Remove two binary files that are not removed by "make clean"
+    and use clean instead of distclean as DEB_MAKE_CLEAN_TARGET, because
+    distclean removes files that are needed to build this package. These
+    changes fixes the FTBFS if build twice in a row. (closes: #442513)
+  * debian/control.in:
+    - Moved Homepage pseudo field in the long description to the source stanza
+      because this is now a propper debian/control field supported by dpkg.
+    - fftw3-dev was renamed to libfftw3-dev, adjusted Build-Depends
+      accordingly.
+
+ -- Frank S. Thomas <frank@thomas-alfeld.de>  Thu, 11 Oct 2007 16:21:39 +0200
+
+boinc-app-seti (5.13+cvs20060510-2) unstable; urgency=low
+
+  * debian/boinc-app-seti-prerm: Stop the BOINC core client before removing
+    the SETI@home symlinks from the data directory to prevent the client from
+    downloading new work units although no application to process these is
+    present. (related to: #415765)
+  * debian/control.in:
+    - Added XS-Vcs fields to the source stanza.
+    - Improved the description of the package and explicitly stated that this
+      package is not needed on i386 and amd64 hosts since SETI@home supports
+      those architectures officially.
+  * debian/copyright: Added copyright information for glut/Roman.stroke and
+    glut/stroke.h and added a copyright note about the Debian packaging.
+  * Changed from dpatch to the quilt patch system.
+  * debian/patches/:
+    - 004_include_new_str_util.h.patch added. The strlcpy() and strlcat()
+      functions that were previously declared in boinc-dev/lib/util.h have
+      been moved in BOINC 5.10 to the new boinc-dev/lib/str_util.h header
+      file, so we need to include this new header in some files. Bumped build
+      dependency to "boinc-dev (>= 5.10.8-1)" accordingly. (closes: #433737)
+    - 003_dont_use_own_jpeglib.patch modified to prevent that setiathome is
+      linked against libjpeg. This ensures predictability of the dependecy
+      list, see http://lists.debian.org/debian-devel/2007/07/msg00588.html for
+      details.
+
+ -- Frank S. Thomas <frank@thomas-alfeld.de>  Thu, 19 Jul 2007 14:21:27 +0200
+
+boinc-app-seti (5.13+cvs20060510-1) unstable; urgency=low
+
+  * Initial release based on Steffen Moeller's boinc-client-seti package.
+
+ -- Frank S. Thomas <frank@thomas-alfeld.de>  Mon, 22 May 2006 09:09:03 +0200
+
diff --git a/compat b/compat
new file mode 100644 (file)
index 0000000..7f8f011
--- /dev/null
+++ b/compat
@@ -0,0 +1 @@
+7
diff --git a/control b/control
new file mode 100644 (file)
index 0000000..922e790
--- /dev/null
+++ b/control
@@ -0,0 +1,55 @@
+Source: boinc-app-seti
+Section: science
+Priority: extra
+Maintainer: Debian BOINC Maintainers <pkg-boinc-devel@lists.alioth.debian.org>
+Uploaders: Steffen Moeller <moeller@debian.org>,
+ Guo Yixuan <culu.gyx@gmail.com>
+DM-Upload-Allowed: yes
+Standards-Version: 3.9.3
+Build-Depends: debhelper (>= 7.0.50~), automake1.9 (>= 1.9.3),
+ autoconf (>= 2.59),
+ boinc-dev (>= 7) | libboinc-app-dev,
+ libfftw3-dev
+Vcs-Git: git://git.debian.org/git/pkg-boinc/boinc-app-seti.git
+Vcs-Browser: http://git.debian.org/?p=pkg-boinc/boinc-app-seti.git
+Homepage: http://setiathome.berkeley.edu/
+
+Package: boinc-app-seti
+Architecture: any
+Depends: ${misc:Depends},${shlibs:Depends}, boinc-client (>= 5.4.3-1)
+Suggests: boinc-manager
+Description: SETI@home application for the BOINC client
+ SETI@home is a distributed computing project using Internet-connected
+ computers for the Search for Extraterrestrial Intelligence (SETI). It
+ searches for possible evidence of extraterrestrial intelligence in
+ radio transmissions collected by the Arecibo radio telescope.
+ .
+ This package contains the SETI@home Enhanced application for the BOINC
+ distributed computing platform. The BOINC client downloads the radio
+ data which the SETI@home application analyzes looking for signals of
+ extraterrestrial origin. Results are then send back to the SETI@home
+ server by the BOINC client.
+ .
+ Note that this package has been primarily created for users of
+ architectures for which SETI@home does not provide its application.
+ If your architecture is x86 or AMD64 the BOINC client automatically
+ downloads the latest SETI@home application if you participate in this
+ project. There is no need to install this package then, except for
+ it to take all technical hurdles from you to have your very custom
+ SETI patch or new compiler flags evaluated. The configuration of
+ BOINC to find the local SETI binary is all performed by the package.
+
+Package: boinc-app-seti-dbg
+Architecture: any
+Depends: ${misc:Depends}, boinc-app-seti (= ${binary:Version})
+Section: debug
+Description: debug symbols for SETI@home
+ SETI@home is a distributed computing project using Internet-connected
+ computers for the Search for Extraterrestrial Intelligence (SETI). It
+ searches for possible evidence of extraterrestrial intelligence in
+ radio transmissions collected by the Arecibo radio telescope.
+ .
+ This package provide debug information. It comes handy when you have
+ optimised the code of SETI yourself and find it crash or be stuck in
+ an infinite loop or you may be asked to install the package for some
+ joint investigation with the SETI core developers.
diff --git a/copyright b/copyright
new file mode 100644 (file)
index 0000000..1083ae3
--- /dev/null
+++ b/copyright
@@ -0,0 +1,139 @@
+This package was debianized by Steffen Moeller <moeller@pzr.uni-rostock.de> on
+Sat, 13 Nov 2004 23:28:53 +0100 and updated by Frank S. Thomas
+<frank@thomas-alfeld.de> on Mon, 28 Mar 2005 23:08:37 +0200.
+
+It was downloaded from http://setiweb.ssl.berkeley.edu/sah/seti_source/nightly/
+
+Upstream Authors: Eric J. Korpela <korpela@ssl.berkeley.edu>
+                  Jeff Cobb <jeffc@ssl.berkeley.edu>
+                  Matt Lebofsky <mattl@ssl.berkeley.edu>
+                  David Anderson <davea@ssl.berkeley.edu>
+                  Charlie Fenton
+                  Rom Walton <rwalton@ssl.berkeley.edu>
+                  Tetsuji Rai <t-rai@umin.ac.jp>
+                  Eric Heien
+                  Hiram Clawson
+
+Copyright Â© 1999-2007 Regents of the University of California
+
+License:
+
+   This program 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 2, or (at your option)
+   any later version.
+
+   This program 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 program; see the file COPYING.  If not, write to the
+   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+   Boston, MA 02110-1301, USA.
+
+   In addition, as a special exception, the Regents of the University
+   of California give permission to link the code of this program with
+   libraries that provide specific optimized fast Fourier transform
+   (FFT) functions as an alternative to FFTW and distribute a linked
+   executable and source code. You must obey the GNU General Public
+   License in all respects for all of the code used other than the FFT
+   library itself. Any modification required to support these libraries
+   must be distributed under the terms of this license. If you modify
+   this program, you may extend this exception to your version of the
+   program, but you are not obligated to do so. If you do not wish to
+   do so, delete this exception statement from your version. Please be
+   aware that FFTW is not covered by this exception, therefore you may
+   not use FFTW in any derivative work so modified without permission
+   of the authors of FFTW.
+
+On Debian systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL-2'.
+
+
+Copyright and license notices for additional software included in this package:
+
+client/fft8g.cpp, client/fftg8.h
+================================
+
+Author: Takuya OOURA <ooura@kurims.kyoto-u.ac.jp>
+
+Copyright Â© 1995-2001 Takya OOURA
+
+License:
+
+   You may use, copy, modify and distribute this code for any purpose
+   (include commercial use) and without fee. Please refer to this
+   package when you modify this code.
+
+
+glut/*
+======
+
+Copyright Â© 1994-1998 Mark J. Kilgard
+Copyright Â© 1997 Nate Robins
+
+License:
+
+   This program is freely distributable without licensing fees
+   and is provided without guarantee or warrantee expressed or
+   implied. This program is -not- in the public domain.
+
+
+glut/Roman.stroke, glut/stroke.h
+================================
+
+Copyright Â© 1989,1990, 1991 by Sun Microsystems, Inc. and the X Consortium.
+
+                           All Rights Reserved
+
+   Permission to use, copy, modify, and distribute this software and its
+   documentation for any purpose and without fee is hereby granted,
+   provided that the above copyright notice appear in all copies and that
+   both that copyright notice and this permission notice appear in
+   supporting documentation, and that the names of Sun Microsystems,
+   the X Consortium, and MIT not be used in advertising or publicity
+   pertaining to distribution of the software without specific, written
+   prior permission.
+
+   SUN MICROSYSTEMS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+   EVENT SHALL SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
+   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
+   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+   PERFORMANCE OF THIS SOFTWARE.
+
+
+vector_lib/*
+============
+
+Author: Eric J. Korpela
+
+Copyright Â© 2004 Regents of the University of California
+
+License:
+
+   libSIMD++ 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 2, or (at your
+   option) any later version.
+
+   libSIMD++ 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 libSIMD++; see the file COPYING.  If not, write to the
+   Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+   Boston, MA 02110-1301, USA.
+
+On Debian systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL-2'.
+
+
+The Debian packaging is Â© 2004-2009 Debian BOINC Maintainers
+<pkg-boinc-devel@lists.alioth.debian.org> and is licensed under
+the GPL, see above.
diff --git a/extra/app_info.xml.in b/extra/app_info.xml.in
new file mode 100644 (file)
index 0000000..209d205
--- /dev/null
@@ -0,0 +1,25 @@
+<app_info>
+    <app>
+        <name>setiathome_enhanced</name>
+    </app>
+    <file_info>
+        <name>setiathome_enhanced</name>
+        <executable/>
+    </file_info>
+    <app_version>
+        <app_name>setiathome_enhanced</app_name>
+        <version_num>VERSION</version_num>
+        <file_ref>
+            <file_name>setiathome_enhanced</file_name>
+            <main_program/>
+        </file_ref>
+    </app_version>
+    <app_version>
+        <app_name>setiathome_v7</app_name>
+        <version_num>VERSION</version_num>
+        <file_ref>
+            <file_name>setiathome_enhanced</file_name>
+            <main_program/>
+        </file_ref>
+    </app_version>
+</app_info>
diff --git a/extra/seti.cfg b/extra/seti.cfg
new file mode 100644 (file)
index 0000000..aa1d126
--- /dev/null
@@ -0,0 +1,7 @@
+[DEFAULT]
+project = seti
+app_info = /usr/share/boinc-app-seti/app_info.xml
+apps = /usr/lib/boinc-app-seti/setiathome_enhanced
+urls = setiathome.berkeley.edu
+ setiathome.ssl.berkeley.edu
+ setiweb.ssl.berkeley.edu
diff --git a/gbp.conf b/gbp.conf
new file mode 100644 (file)
index 0000000..2cbc5cb
--- /dev/null
+++ b/gbp.conf
@@ -0,0 +1,6 @@
+[DEFAULT]
+upstream-branch = upstream
+debian-branch = master
+
+[git-buildpackage]
+pristine-tar = True
diff --git a/patches/002_disable_static_linkage.patch b/patches/002_disable_static_linkage.patch
new file mode 100644 (file)
index 0000000..4135141
--- /dev/null
@@ -0,0 +1,29 @@
+--- boinc-app-seti.orig/configure.ac
++++ boinc-app-seti/configure.ac
+@@ -156,15 +156,18 @@
+ AC_SYS_LARGEFILE
+ ACX_PTHREAD([AC_DEFINE(HAVE_PTHREAD,1, [Have pthread])])
+-STATIC_LIB_LIST="stdc++ gcc gcc_eh gtk* gdk* gmodule gthread glib wx* tiff jpeg
+-png Xi glut socket z fftw3f"
++#STATIC_LIB_LIST="stdc++ gcc gcc_eh gtk* gdk* gmodule gthread glib wx* tiff jpeg
++#png Xi glut socket z fftw3f"
++#
++#case ${target} in
++#        *-linux*)       STATIC_LIB_LIST="${STATIC_LIB_LIST} nsl ssl crypto"
++#        ;;
++#        *-solaris*)     STATIC_LIB_LIST="${STATIC_LIB_LIST} X* ssl crypto"
++#        ;;
++#esac
+-case ${target} in
+-        *-linux*)       STATIC_LIB_LIST="${STATIC_LIB_LIST} nsl ssl crypto"
+-        ;;
+-        *-solaris*)     STATIC_LIB_LIST="${STATIC_LIB_LIST} X* ssl crypto"
+-        ;;
+-esac
++# This needs at least one word, so I'm using nolib, which isn't a lib. :-)
++STATIC_LIB_LIST="nolib"
+ # Checks for libraries.
+ CHECK_SSL
diff --git a/patches/003_dont_use_own_jpeglib.patch b/patches/003_dont_use_own_jpeglib.patch
new file mode 100644 (file)
index 0000000..86fd30b
--- /dev/null
@@ -0,0 +1,38 @@
+
+The commented SAH_CHECK_JPEGLIB in configure.ac prevents that setiathome
+will be linked against libjpeg. If the package should be configured with
+"--enable-graphics" this needs to be uncommented.
+
+Index: boinc-app-seti/Makefile.am
+===================================================================
+--- boinc-app-seti.orig/Makefile.am    2012-08-30 11:16:30.436114900 +0800
++++ boinc-app-seti/Makefile.am 2012-08-30 11:24:16.796133060 +0800
+@@ -27,7 +27,7 @@
+ endif
+-SUBDIRS = $(JPEGDIR) $(IMDIR) $(GLUTDIR) $(CLIENT_SUBDIRS) $(SERVER_SUBDIRS)
++SUBDIRS = $(IMDIR) $(GLUTDIR) $(CLIENT_SUBDIRS) $(SERVER_SUBDIRS)
+ dist-hook:
+       rm -rf `find $(distdir) -name .backup -prune -o -name '*~' -o -name CVS`
+Index: boinc-app-seti/configure.ac
+===================================================================
+--- boinc-app-seti.orig/configure.ac   2012-08-30 11:17:17.416116730 +0800
++++ boinc-app-seti/configure.ac        2012-08-30 11:24:16.796133060 +0800
+@@ -420,6 +420,7 @@
+ SAH_AVX
++AM_CONDITIONAL(USE_MY_LIBJPEG, [false])
+ AM_CONDITIONAL(USE_MY_IMAGELIBS, [false])
+ AM_CONDITIONAL(USE_MY_GLUT, [false])
+ AM_CONDITIONAL(ENABLE_TESTS, [test "${enable_tests}" = yes])
+@@ -484,7 +485,6 @@
+ ])
+ AC_CONFIG_FILES([Makefile
+-                 jpeglib/Makefile
+                  client/Makefile
+                tools/Makefile
+                  db/Makefile
diff --git a/patches/004_disable_altivec_on_ppc_linux.patch b/patches/004_disable_altivec_on_ppc_linux.patch
new file mode 100644 (file)
index 0000000..7f2ac9f
--- /dev/null
@@ -0,0 +1,26 @@
+Description: Disable altivec on PPC if !LINUX
+ Taken from Ubuntu's 6.12~svn1305-2ubuntu1, at Tue, 12 Jun 2012 22:28:38 -0400.
+Author: Ben Collins <bcollins@ubuntu.com>
+
+Index: boinc-app-seti/client/Makefile.am
+===================================================================
+--- boinc-app-seti.orig/client/Makefile.am     2012-08-28 11:10:30.540414584 +0800
++++ boinc-app-seti/client/Makefile.am  2012-08-28 11:20:56.320438950 +0800
+@@ -195,7 +195,8 @@
+ endif
+ if PPC
+-# allow use of altivec instructions on PPC
++if !LINUX
++# allow use of altivec instructions on PPC/MacOS
+ seti_boinc-analyzeFuncs_altivec.o:  vector/analyzeFuncs_altivec.cpp
+       if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(seti_boinc_CXXFLAGS) $(CXXFLAGS) -DUSE_ALTIVEC \
+@@ -209,6 +210,7 @@
+       -c -o $@ $<; then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+       else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+ endif
++endif
+ if LINUX
diff --git a/patches/101_freebsd_build.patch b/patches/101_freebsd_build.patch
new file mode 100644 (file)
index 0000000..5fbbbf6
--- /dev/null
@@ -0,0 +1,21 @@
+Index: boinc-app-seti/client/vector/analyzeFuncs_sse.cpp
+===================================================================
+--- boinc-app-seti.orig/client/vector/analyzeFuncs_sse.cpp     2012-08-28 11:10:30.000000000 +0800
++++ boinc-app-seti/client/vector/analyzeFuncs_sse.cpp  2012-08-28 11:17:21.156430572 +0800
+@@ -32,6 +32,7 @@
+ // This file is empty is __i386__ is not defined
+ #include "sah_config.h"
+ #include <vector>
++#include <cmath>
+ #if defined(__i386__) || defined(__x86_64__) || defined(USE_SSE)
+@@ -790,7 +791,7 @@
+ #elif defined(_WIN64) || defined(SUPPORTS_ATTRIB_OPT)
+     val -= ((val + roundVal) - roundVal);  // TODO: ADD CHECK THAT THIS WORKS
+ #else
+-    val -= floor(val + 0.5);
++    val -= std::floor(val + 0.5);
+ #endif
+     return val;
+ }     
diff --git a/patches/102_powerpc_altivec.patch b/patches/102_powerpc_altivec.patch
new file mode 100644 (file)
index 0000000..88a27a7
--- /dev/null
@@ -0,0 +1,11 @@
+--- a/client/Makefile.am
++++ b/client/Makefile.am
+@@ -165,7 +165,7 @@
+ seti_boinc-analyzeFuncs_altivec.o:  vector/analyzeFuncs_altivec.cpp
+       if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+       $(CPPFLAGS) $(seti_boinc_CXXFLAGS) $(CXXFLAGS) -DUSE_ALTIVEC \
+-      -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -faltivec \
++      -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -maltivec \
+       -c -o $@ $<; then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
+       else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+ seti_boinc-analyzeFuncs_vector.o:  vector/analyzeFuncs_vector.cpp
diff --git a/patches/210_fix_fgets_warning.patch b/patches/210_fix_fgets_warning.patch
new file mode 100644 (file)
index 0000000..058fc7a
--- /dev/null
@@ -0,0 +1,62 @@
+Index: boinc-app-seti/client/seti_header.cpp
+===================================================================
+--- boinc-app-seti.orig/client/seti_header.cpp 2012-08-12 11:22:38.866054523 +0200
++++ boinc-app-seti/client/seti_header.cpp      2012-08-12 11:45:01.923825804 +0200
+@@ -170,8 +170,9 @@
+ static workunit *wu;
+ int seti_parse_wu_header(FILE* f) {
+-  char buf[256];
++  char buf[2560];
+   int found=0;
++  buf[0]=0;
+  
+   std::string buffer("");
+   buffer.reserve(10*1024);
+@@ -183,13 +184,14 @@
+   //swi.fft_len=2048;
+   //swi.ifft_len=8;
++  char *fgets_return_value;
+   do {
+-    fgets(buf, 256, f);
+-  } while (!feof(f) && !xml_match_tag(buf,"<workunit_header")) ;
++    fgets_return_value=fgets(buf, sizeof(buf), f);
++  } while (!feof(f) && fgets_return_value && !xml_match_tag(buf,"<workunit_header")) ;
+  
+   buffer+=buf;
+-  while (fgets(buf, 256, f) && !xml_match_tag(buf,"</workunit_header")) {
++  while (fgets(buf, sizeof(buf), f) && !xml_match_tag(buf,"</workunit_header")) {
+     buffer+=buf;
+   }
+   buffer+=buf;
+@@ -207,8 +209,9 @@
+ }
+ int seti_parse_wu_header(FILE* f, SETI_WU_INFO &swi) {
+-  char buf[256];
++  char buf[2560];
+   int found=0;
++  buf[0]=0;
+   
+   std::string buffer("");
+   buffer.reserve(10*1024);
+@@ -219,13 +222,14 @@
+   //swi.fft_len=2048;
+   //swi.ifft_len=8;
++  char *fgets_return_value;
+   do {
+-    fgets(buf, 256, f);
+-  } while (!feof(f) && !xml_match_tag(buf,"<workunit_header")) ;
++    fgets_return_value=fgets_return_value=fgets(buf, sizeof(buf), f);
++  } while (!feof(f) && fgets_return_value && !xml_match_tag(buf,"<workunit_header")) ;
+   
+   buffer+=buf;
+-  while (fgets(buf, 256, f) && !xml_match_tag(buf,"</workunit_header")) {
++  while (fgets(buf, sizeof(buf), f) && !xml_match_tag(buf,"</workunit_header")) {
+     buffer+=buf;
+   }
+   buffer+=buf;
diff --git a/patches/211_give_stderr_some_output.patch b/patches/211_give_stderr_some_output.patch
new file mode 100644 (file)
index 0000000..e55759d
--- /dev/null
@@ -0,0 +1,55 @@
+Index: boinc-app-seti/client/main.cpp
+===================================================================
+--- boinc-app-seti.orig/client/main.cpp        2012-08-12 11:22:38.806055337 +0200
++++ boinc-app-seti/client/main.cpp     2012-08-12 14:26:58.348202488 +0200
+@@ -160,7 +160,7 @@
+ extern APP_INIT_DATA app_init_data;
+-int main(int argc, char** argv) {
++int main(int argc, char* argv[]) {
+   int retval = 0, i;
+   FORCE_FRAME_POINTER;
+   run_stage=PREGRX;
+@@ -176,7 +176,10 @@
+   bool standalone = false;
+   g_argv[0]=argv[0];
++  fprintf(stderr,"boinc-app-seti is invoked with the following arguments: \n");
++  fprintf(stderr,"--start\n");
+   for (i=1; i<argc; i++) {
++    fprintf(stderr,"  %d: '%s'\n",i,argv[i]);
+     g_argv[i]=argv[i];
+     char *p=argv[i];
+     while (*p=='-') p++;
+@@ -204,6 +207,7 @@
+       exit(1);
+     }
+   }
++  fprintf(stderr,"--end.\n");
+   try {
+@@ -236,16 +240,22 @@
+     // Initialize BOINC
+     //
++    fprintf(stderr,"I: boinc_parse_init_data_file\n");
+     boinc_parse_init_data_file();
++    fprintf(stderr,"I: boinc_get_init_data\n");
+     boinc_get_init_data(app_init_data);
+ #ifdef BOINC_APP_GRAPHICS
++    fprintf(stderr,"I: sah_graphics_init\n");
+     sah_graphics_init(app_init_data);
+ #endif
++    fprintf(stderr,"I: boinc_init\n");
+     retval = boinc_init();
+     if (retval) {
+       SETIERROR(retval, "from boinc_init()");
+     }
++    fprintf(stderr,"I: worker\n");
+     worker();
++    fprintf(stderr,"I: end.\n");
+   }
+   catch (seti_error e) {
+     e.print();
diff --git a/patches/212_increase_buffers.patch b/patches/212_increase_buffers.patch
new file mode 100644 (file)
index 0000000..db880b3
--- /dev/null
@@ -0,0 +1,39 @@
+Index: boinc-app-seti/client/seti.cpp
+===================================================================
+--- boinc-app-seti.orig/client/seti.cpp        2012-08-28 11:10:30.000000000 +0800
++++ boinc-app-seti/client/seti.cpp     2012-08-28 11:20:31.904438000 +0800
+@@ -844,10 +844,11 @@
+   unsigned long nbytes, nsamples,samples_per_byte;
+   sah_complex *data;
+   unsigned long i;
+-  char *p, buf[256];
++  char *p, buf[2560];
+   sah_complex *bin_data=0;
+   int retval=0;
+   FORCE_FRAME_POINTER;
++  buf[0]=0;
+   nsamples = swi.nsamples;
+   samples_per_byte=(8/swi.bits_per_sample);
+@@ -859,7 +860,7 @@
+   switch(swi.data_type) {
+     case DATA_ASCII:
+       for (i=0; i<nsamples; i++) {
+-        p = fgets(buf, 256, f);
++        p = fgets(buf, sizeof(buf), f);
+         if (!p) {
+           SETIERROR(READ_FAILED,"in seti_parse_data");
+         }
+Index: boinc-app-seti/tools/workunit_resample.cpp
+===================================================================
+--- boinc-app-seti.orig/tools/workunit_resample.cpp    2012-08-24 13:34:04.000000000 +0800
++++ boinc-app-seti/tools/workunit_resample.cpp 2012-08-28 11:20:31.904438000 +0800
+@@ -62,7 +62,7 @@
+ workunit_header header;
+ int main(int argc, char *argv[]) {
+-  char *outfile=NULL, buf[256];
++  char *outfile=NULL, buf[2560];
+   struct stat statbuf;
+   int nbytes,nread,nsamples;
+   std::string tmpbuf("");
diff --git a/patches/README.patches b/patches/README.patches
new file mode 100644 (file)
index 0000000..b06bbf3
--- /dev/null
@@ -0,0 +1,9 @@
+0xx patches are Debian-specific build patches, that have not and will not be
+proposed upstream; they don't need to be.
+
+If there are any:
+
+1xx patches have been proposed upstream and accepted; these can safely be
+deleted when updating to a new release.
+
+2xx patches are awaiting the approval of upstream.
diff --git a/patches/const_warning_reduction.patch b/patches/const_warning_reduction.patch
new file mode 100644 (file)
index 0000000..2f05cbe
--- /dev/null
@@ -0,0 +1,55 @@
+Index: boinc-app-seti/client/main.cpp
+===================================================================
+--- boinc-app-seti.orig/client/main.cpp        2012-08-15 14:36:17.964705315 +0200
++++ boinc-app-seti/client/main.cpp     2012-08-15 23:36:18.529901259 +0200
+@@ -105,7 +105,7 @@
+ }
+ void print_error(int e) {
+-  char* p;
++  const char* p;
+   p = error_string(e);
+   fprintf(stderr,"%s\n",p);
+Index: boinc-app-seti/client/s_util.cpp
+===================================================================
+--- boinc-app-seti.orig/client/s_util.cpp      2012-08-12 11:22:38.826055066 +0200
++++ boinc-app-seti/client/s_util.cpp   2012-08-15 23:35:17.086787513 +0200
+@@ -211,8 +211,8 @@
+   return 0;
+ }
+-char* error_string(int e) {
+-  char* p;
++const char* error_string(int e) {
++  const char* p;
+   static char buf[256];
+   switch(e) {
+Index: boinc-app-seti/client/s_util.h
+===================================================================
+--- boinc-app-seti.orig/client/s_util.h        2012-08-15 23:18:15.760862431 +0200
++++ boinc-app-seti/client/s_util.h     2012-08-15 23:35:55.886227805 +0200
+@@ -150,6 +150,6 @@
+     float float_element[], unsigned char char_element[],
+     long num_elements, float scale_factor
+   );
+-extern char* error_string(int);
++extern const char* error_string(int);
+ #endif
+Index: boinc-app-seti/client/seti_header.cpp
+===================================================================
+--- boinc-app-seti.orig/client/seti_header.cpp 2012-08-15 14:36:18.344700191 +0200
++++ boinc-app-seti/client/seti_header.cpp      2012-08-15 23:37:53.128537837 +0200
+@@ -63,8 +63,8 @@
+ // Write a SETI work unit header to a file
+-char *receivers[]={"invalid","synthetic","ao1420"};
+-char *datatypes[]={"invalid","ascii","encoded","sun_binary"};
++const char *const receivers[]={"invalid","synthetic","ao1420"};
++const char *const datatypes[]={"invalid","ascii","encoded","sun_binary"};
+ SETI_WU_INFO::SETI_WU_INFO(const workunit &w) :
+     track_mem<SETI_WU_INFO>("SETI_WU_INFO"),
diff --git a/patches/omitting_archs.patch b/patches/omitting_archs.patch
new file mode 100644 (file)
index 0000000..31b1fbc
--- /dev/null
@@ -0,0 +1,50 @@
+Index: boinc-app-seti/m4/optimizations.m4
+===================================================================
+--- boinc-app-seti.orig/m4/optimizations.m4    2012-08-12 11:22:39.746042577 +0200
++++ boinc-app-seti/m4/optimizations.m4 2012-08-15 14:17:23.807993057 +0200
+@@ -13,7 +13,7 @@
+     [Define to 1 if you want to use SSE3 optimizations])
+ # put compiler specific flags here
+   if test x_$ac_cv_c_compiler_gnu = x_yes ; then
+-    CFLAGS="-march=prescott -msse3  -mfpmath=sse ${CFLAGS}"
++    CFLAGS="-msse3  -mfpmath=sse ${CFLAGS}"
+   fi
+ fi
+@@ -28,9 +28,6 @@
+ # put compiler specific flags here
+   if test x_$ac_cv_c_compiler_gnu = x_yes ; then
+     CFLAGS="-msse2 -mfpmath=sse ${CFLAGS}"
+-    if test -z "echo $CFLAGS | grep march=" ; then
+-      CFLAGS="-march=pentium4 ${CFLAGS}" 
+-    fi
+   fi
+ fi
+@@ -44,7 +41,7 @@
+     [Define to 1 if you want to use SSE optimizations])
+ # put compiler specific flags here
+   if test x_$ac_cv_c_compiler_gnu = x_yes ; then
+-    CFLAGS="-march=pentium3 -msse -mfpmath=sse ${CFLAGS}"
++    CFLAGS="-msse -mfpmath=sse ${CFLAGS}"
+   fi
+ fi
+@@ -58,7 +55,7 @@
+     [Define to 1 if you want to use MMX optimizations])
+ # put compiler specific flags here
+   if test x_$ac_cv_c_compiler_gnu = x_yes ; then
+-    CFLAGS="-march=pentium2 -mmmx -mfpmath=387 ${CFLAGS}"
++    CFLAGS="-mmmx -mfpmath=387 ${CFLAGS}"
+   fi
+ fi
+@@ -73,7 +70,7 @@
+     [Define to 1 if you want to use 3D-Now optimizations])
+ # put compiler specific flags here
+   if test x_$ac_cv_c_compiler_gnu = x_yes ; then
+-    CFLAGS="-march=pentium2 -m3dnow -mfpmath=387 ${CFLAGS}"
++    CFLAGS="-m3dnow -mfpmath=387 ${CFLAGS}"
+   fi
+ fi
diff --git a/patches/series b/patches/series
new file mode 100644 (file)
index 0000000..d2819ea
--- /dev/null
@@ -0,0 +1,11 @@
+#002_disable_static_linkage.patch
+003_dont_use_own_jpeglib.patch
+101_freebsd_build.patch
+#102_powerpc_altivec.patch
+210_fix_fgets_warning.patch
+211_give_stderr_some_output.patch
+212_increase_buffers.patch
+omitting_archs.patch
+004_disable_altivec_on_ppc_linux.patch
+const_warning_reduction.patch
+worker_comments.patch
diff --git a/patches/worker_comments.patch b/patches/worker_comments.patch
new file mode 100644 (file)
index 0000000..e57ca67
--- /dev/null
@@ -0,0 +1,41 @@
+Index: boinc-app-seti/client/worker.cpp
+===================================================================
+--- boinc-app-seti.orig/client/worker.cpp      2012-08-28 11:10:30.000000000 +0800
++++ boinc-app-seti/client/worker.cpp   2012-08-28 11:25:05.888448668 +0800
+@@ -114,7 +114,7 @@
+         fclose(f);
+         if (retval) SETIERROR(retval,"from seti_parse_wu() in read_wu_state()");
+     } else {
+-      char msg[1024];
++      char msg[MAXPATHLEN+50];
+       sprintf(msg,"(%s) in read_wu_state() errno=%d\n",path.c_str(),errno);
+       SETIERROR(FOPEN_FAILED,msg);
+     }
+@@ -144,15 +144,19 @@
+   __asm__ __volatile__ ("andl $-16, %esp");
+ #endif
+   try {
++    fprintf(stderr,"I: worker() - common_init\n");
+     retval = common_init();
+     if (retval) SETIERROR(retval,"from common_init() in worker()");
++    fprintf(stderr,"I: worker() - read_wu_state\n");
+     retval = read_wu_state();
+     if (retval) SETIERROR(retval,"from read_wu_state() in worker()");
+     
++    fprintf(stderr,"I: worker() - seti_do_work\n");
+     retval = seti_do_work();
+     if (retval) SETIERROR(retval,"from seti_do_work() in worker()");
++    fprintf(stderr,"I: worker() - boinc_finish\n");
+     boinc_finish(retval);
+   }
+   catch (seti_error e) {
+@@ -167,6 +171,7 @@
+         boinc_finish(0);
+         exit(0);            // an overflow is not an app error
+     } else {
++        fprintf(stderr,"E: printing backtrace\n");
+         e.print();
+       exit(static_cast<int>(e));
+     }
diff --git a/rules b/rules
new file mode 100755 (executable)
index 0000000..b5c7649
--- /dev/null
+++ b/rules
@@ -0,0 +1,136 @@
+#!/usr/bin/make -f
+
+# Uncomment this to compile with gcc-snapshot.
+#export  CC=/usr/lib/gcc-snapshot/bin/gcc
+#export CXX=/usr/lib/gcc-snapshot/bin/g++
+#export CPP=/usr/lib/gcc-snapshot/bin/cpp
+
+
+DEB_BUILD_GNU_CPU  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_CPU)
+DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+
+# PKG = boinc-app-seti
+
+export CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS)
+export CFLAGS   := $(shell dpkg-buildflags --get CFLAGS)
+export CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS)
+export LDFLAGS  := $(shell dpkg-buildflags --get LDFLAGS)
+
+# Uncomment this to enable compilation with UltraSPARC specific compiler
+# flags. This will most probably increase setiathome's performance or if
+# your are unlucky will break it.
+#
+#CPUTYPE = $(shell head -1 /proc/cpuinfo | cut -f 2 -d ':' | cut -f 3 -d '\' )
+#ifeq (UltraSparc, $(CPUTYPE))
+#  CPUSUBTYPE = $(shell head -1 /proc/cpuinfo | cut -f 2 -d ':' | \
+#    cut -f 4 -d '\' | cut -f 1 -d '+')
+#  CFLAGS += -mcpu=v9
+#  CXXFLAGS += -mcpu=v9
+#  ifeq (III, $(CPUSUBTYPE))
+#    CFLAGS += -mcpu=ultrasparc3
+#    CXXFLAGS += -mcpu=ultrasparc3
+#  else
+#    CFLAGS += -mcpu=ultrasparc
+#    CXXFLAGS += -mcpu=ultrasparc
+#  endif
+#  CFLAGS += -m64
+#  CXXFLAGS += -m64
+#  DEB_CONFIGURE_EXTRA_FLAGS += --enable-bitness=64
+#endif
+
+
+# Append this to CFLAGS and CXXFLAGS.
+CFLAGS_APPEND += -O3
+CFLAGS_APPEND += -I/usr/include/boinc -I/usr/include/boinc/lib -I/usr/include/boinc/api
+
+# Although all source file are C++, some handwritten rules in
+# client/Makefile.am seem to use CFLAGS only.
+CFLAGS   += $(CFLAGS_APPEND)
+CXXFLAGS += $(CFLAGS_APPEND)
+
+
+# This is a shame, but there is yet no AltiVec for Linux PowerPC with SETI
+SETIEXTRAFLAGS= --disable-altivec
+
+ifeq ($(DEB_BUILD_GNU_CPU),x86_64)
+  SETIEXTRAFLAGS += --enable-sse3
+#  SETIEXTRAFLAGS += --enable-sse2 --enable-sse --enable-mmx
+endif
+
+ifeq ($(DEB_BUILD_GNU_CPU),i686)
+  SETIEXTRAFLAGS += --enable-sse2 --enable-sse --enable-mmx
+endif
+
+
+# Get upstream version from debian version.
+UPSTREAM_VERSION = $(shell dpkg-parsechangelog | egrep '^Version:' | \
+  cut -d ' ' -f 2 | cut -d '-' -f 1 | cut -d '+' -f 1 | cut -d '~' -f 1 | perl -pe 's/^.*?://')
+# Remove dot "." in upstream version for use in app_info.xml
+APP_INFO_VERSION = $(subst .,,$(UPSTREAM_VERSION))
+
+
+%:
+       dh $@ --parallel
+
+override_dh_auto_configure:
+       aclocal-1.9 -I m4 && autoheader && automake-1.9 && autoconf
+       # Remember to not configure with --disable-dependency-tracking, because
+       # it breaks some handwritten rules in client/Makefile.am which require
+       # that DEPDIR exists.
+       CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \
+       BOINCDIR=/usr/include/boinc ./configure \
+         --disable-static-client \
+         --disable-static \
+         --enable-shared \
+         --enable-client \
+         --disable-graphics \
+         --disable-server \
+         --enable-dependency-tracking \
+         --with-gnu-ld $(SETIEXTRAFLAGS)
+
+override_dh_auto_clean:
+       if [ -r Makefile ]; then make clean; fi
+       find . -name "*.o" -delete
+       find . -name ".deps" -a -type d | xargs -r rm -r
+       rm -f client/seti_boinc client/hires_timer_test tools/fakedata tools/workunit_resample tools/workunit_to_ascii
+       dh_clean \
+         client/setiathome-$(UPSTREAM_VERSION).* \
+         client/setiathome_enhanced \
+         debian/extra/app_info.xml
+       # may be seen after invoking binary
+       rm -f client/boinc_finish_called client/result.sah client/state.sah client/stderr.txt client/wisdom.sah client/work_unit.sah client/boinc_lockfile
+       # generated by autoconf
+       rm -f  Makefile Makefile.in aclocal.m4 assimilator/Makefile assimilator/Makefile.in client/Makefile client/Makefile.in config.log config.status configure db/Makefile db/schema_to_class db/tools/Makefile jpeglib/Makefile jpeglib/Makefile.in libtool sah_config.h.in splitter/Makefile splitter/Makefile.in stamp-h1 tools/Makefile tools/Makefile.in validate/Makefile
+       rm -f sah_config.h
+
+override_dh_installchangelogs:
+       dh_installchangelogs -k checkin_notes
+
+override_dh_install: 
+       cp -f client/seti_boinc client/setiathome_enhanced
+       cat debian/extra/app_info.xml.in | \
+         sed -e 's/VERSION/$(APP_INFO_VERSION)/' > debian/extra/app_info.xml
+       dh_install
+
+
+override_dh_strip:
+       dh_strip --dbg-package=boinc-app-seti-dbg
+
+
+origDir ?= .
+
+get-orig-source:
+       if [ ! -d "$(origDir)" ]; then \
+         echo "Destination directory '$(origDir)' does not exist."; \
+         exit; \
+       fi; \
+       cd $(origDir); \
+       EXP=/tmp/download-seti; \
+       TODAY=`date +%Y-%m-%d | tr -d '\n'`; \
+       nice="nice -5"; if [ -x /usr/bin/ionice ]; then nice="$$nice ionice -c 3"; fi ; \
+       $$nice wget -O$$EXP "http://git.debian.org/?p=pkg-boinc/scripts.git;a=blob_plain;f=export-seti;hb=HEAD" --quiet && \
+       chmod +x $$EXP && $$EXP && rm -f $$EXP
+
+.PHONY: get-orig-source
diff --git a/source/format b/source/format
new file mode 100644 (file)
index 0000000..163aaf8
--- /dev/null
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/watch b/watch
new file mode 100644 (file)
index 0000000..8db71c2
--- /dev/null
+++ b/watch
@@ -0,0 +1,4 @@
+# The SETI@home project does not distribute source code releases as
+# tarballs, only tarballs of nightly Subversion snapshots are available.
+# Therefore a proper debian/watch file is not very useful under these
+# circumstances.