[SCM] morituri/master: Imported Upstream version 0.2.3

js at users.alioth.debian.org js at users.alioth.debian.org
Sun Oct 19 20:10:17 UTC 2014


releasing 0.2.3
update release notes; include missing file for test
error out nicely when debug resultcache cue has no arg
remove command tree from README, the man page is uptodate
remove as-python.m4 from dist
Merge pull request #68 from jtaprogge/retag
Merge pull request #74 from JDLH/fix-eclipse-ignores
Merge pull request #77 from Freso/add-discid-tag
reorganize todo
fix up another wrong config call
Merge pull request #78 from mgorny/master
fix one more test
read cue and substitute current version to make tests pass
Merge pull request #81 from RecursiveForest/cuefile
Show morituri version in cue and update TODO.
Use standard AM_PATH_PYTHON rather than broken AS_PATH_PYTHON.
Save MusicBrainz DiscID to tags.
rework REVISION hackery
also rebuild REVISION when code to get it changes
treat REVISION as BUILT_SOURCES
use describe --all to always get a description
Support dev on Eclipse and Pydev by .gitignoring two project files.
Also show the MusicBrainz lookup ID when retagging.
Merge pull request #1 from thomasvs/master
Encode directory name when writing to stdout.
Default to 0000 for y when no metadata.
Fix rip image verify.
add a symlink to make autotools happy
README got renamed to README.md; fix build
Use newer lamemp3enc element
make profiles loggable
Make rip debug encode use the extension from profile by default
Merge pull request #43 from megies/readme_markdown
remove Rename operation currently unused and done on branch
add content to an older test
fix another pychecker warning that was actually pointing out a bug
fix pychecker warning
allow all profiles, including lossy
add note
start with a one frame interval until we know more
add
add debug resultcache cue command
Merge branch 'bug-offsets-3'
fix so first FILE goes before TRACK 01 and possible PREGAP
use more diffstrings; use it from reference to generated
add type doc
since the cached results have wrong (negative) relative for index > 01, make sure we don't use the cache by upping the version
now that we have a literal conversion of the toc, update
add note
fix expectations on surfer rosa test
strokes test case is now correct
use a common _index method for all cases
move some assignments around to be more logical
also add source for DATAFILE
make sources an object property
add more tests, after calculating expected values for this disc
add/fix debug
update debug
stop absolutizing
WIP: try to set relative offset correctly based on sources
now take relative from currentFile
update tests
create index with the correct path by using sources
use diffStrings
handle index 00 of track 1 specially
add a Source object, but don't use it yet
add doc
add all EAC cue files for surfer rosa
Set start and length properly on File
reset relative offset on SILENCE/ZERO
compare output .cue with EAC one we add
add more asserts on the current code for strokes
hack to get proper revision before generating configure/*py
make sure distcheck works too
add make rules to trigger git submodule init/sync/update
handle the case where we couldn't even import deps.
README: slight markup modifications to show formatted on github start page
work without network
use a built REVISION file as a backup revision source
Merge pull request #39 from tuomo/python2
suggestions from hydrogen audio
Run $PYTHON, not python
add flattr link
update release guide
back to development
Releasing 0.2.2
Add testcase to show that previous commit fixes #19.
remove one if path
Set proper track ids.  Fixes #34
distinguish between disc and track credit
add more FIXME
add getIds and use it to set correct ids
make sure sortname contains all artists
Extract a Credit list subclass to get name/sortname/id
add doc
add another test to fix
fix syntax error
add a test case to fix
add doc; make sure we record with rip debug musicbrainzngs
rename to discArtist to disambiguate
rename metadata to discMD to be clearer
Make rip cd info not eject.  Fixes #35.
update
handle not having cdparanoia on rip offset find
get revision from git; make it work everywhere
put space before colon
use a logging task runner
Fix rip offset find.  Fixes #33.
tell us about each try
handle exceptions on verifying empty or half-done tracks
make sure we have a traceback
remove done items
back to development
release 0.2.1
add bash-compgen.  Fixes #11.
Handle missing required argument to option.  Fixes #18.
wait before reading, to make sure we get it all
catch missing save_cache_path in xdg.BaseDirectory; closes #31
add test for directory module
make warning clearer.  Fixes #7
More quote fixing
more filtering
document config file format
use PathFilter object to filter paths
Allow getting normal and boolean from config
fix a failing test
Add path filter
pass config to program
we already get the version some other way
Merge pull request #21 from supermanvelo/master
80 character limit
get version for cdrdao too.
cleanup and comment
cleanup and comment
Really handle unknown on rip cd info.  Really fixes #30.
fix output
Handle unknown option on rip cd info.  Fixes #30.
Add new command: rip debug maxsample
Accept more than one file for checksum.
Document and fix comments.
Merge pull request #26 from dioltas/fix_pycdio_unicode_bug
Convert values returned from pycdio to str (workaround for upstream bug)
improve debug
make track/index debug uniform
update logging; bump classVersion of Table
rename our musicbrainzngs.py to mbngs.py
Merge pull request #22 from dioltas/fix_offset_count
Compare AccurateRip to num tracks -1, as last track not being checked
add another test case to work on INDEX 02
return cdrdao version used
handle encoding properly when outputting diff
Use all but last track to find offset.
break into two lines to separate logger problems from morituri
fix doc
add debugging, comments and documentation
Merge pull request #14 from alkino/with_statement
work around GStreamer bug in flacdec for really short files
change debug message
debug and cleanup
The logic was the wrong way around.
Merge pull request #13 from alkino/master
Use with statement to open files
Use os.path.join instead of hardcoded paths
Handle off-by-1 errors in cdparanoia progress parsing
set useragent on musicbrainz
after updating python-musicbrainz-ngs, symlink the package dir.
deduplicate rip directories with catalog number or barcode
store catalog number and barcode in discmetadata
update to newer musicbrainz-ngs suggested by sanoj
remove unused path
key on musicbrainz disc id by default
add a TableCache.
Update getCache to take name.  Add getReadCaches
extract code into program.getFastToc
add test case with turn on the bright lights toc
add debug
debug more
log persister
add summary
add some whitespace betwee nreleases
add how many tracks the disc is
fix whitespace
only mark as a failure if we see an expected string
make sure we mark defeatsCache as false if cdparanoia fails.
expand the right PYTHON into rip and bash-compgen
removing old musicbrainz code
check logger up front.
add note on running uninstalled
feature: add 'rip cd info'
Merge pull request #6 from Freso/add-uppercase-extension-template-variable
Add "%X" template variable for uppercase filename extension.
Don't fail on pycdio missing. Fixes trac 128.
Handle broken pycdio 0.18
handle import errors in bin/rip.in; add setuptools to deps
Document python-cddb need and how to install on Ubuntu.
Update to not import moap.util.  Fixes #2.
update submodules after clone.  Fixes #1.
update release notes
debian patch to not hardcode python
update python-deps
handle CDDB import errors
return when we don't have a ret assigned
use python-deps to handle missing dependencies.
add python-deps to handle dependencies
fix spec file
update after release
back to developing
release 0.2.0
output drive cache defeating in rip drive list
moved to github
add analyzing the drive
switch to github's url
Add CDDB and MusicBrainz disc id/URL.  Fixes #112.
retry reading toc 3 times, often fails after loading
debug and doc
Handle backslashes in name for looking up real path.
audioparsers still doesn't support seek properly for flac
better debugging and failing
add notes on flacparse bug
better debugging when sampleLength is claimed unknown
rename frame to sample to avoid confusion with cd frames
move around
return if we have an exception
debug better
raise an exception for this error
add todo
fix test after moving templates
latest command
move common template options and description
add a Directory object to get common dirs from
show us the type
fix distcheck
fix tests after adding release type to templates
FEATURE: add --working-directory option
default to include the release type (%r) in file paths
remove unused import
add to TODO
add flacparse
ignore only toplevel configure
ignore more
moap ignore
add submodules
	* morituri/common/config.py: 	* morituri/rip/cd.py: 	* morituri/rip/drive.py: 	  Handle missing config better. 	  Fixes #111.
update error message
whitespace and commenting
	* morituri/common/config.py: 	* morituri/rip/cd.py: 	* morituri/test/test_common_config.py: 	  strip model/release too.
fix test
	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  feature: add %x for extension to track/disc template.
	* morituri/common/program.py: 	  feature: add %r/%R for release type to track/disc template. 	* morituri/rip/image.py: 	  feature: add rip image rename to rename files based on metadata.
	* morituri/common/program.py: 	* morituri/rip/image.py: 	  feature: add %r/%R for release type to track/disc template.
	* morituri/common/musicbrainzngs.py: 	* morituri/rip/debug.py: 	  Also store releaseType for disc metadata.
write mb disc id
add ivar
add FIXME
	* morituri/common/program.py: 	  add release id to output. 	* morituri/rip/image.py: 	  add --release-id to rip image retag.  Fixes #96.
	* morituri/common/common.py: 	  Strip bitrate tags too for comparison of dicts. 	  Add a way to show us the different keys between dicts. 	* morituri/common/encode.py: 	  Debug different keys.
	* morituri/common/encode.py: 	  Collect all tags by replacing from newer tag messages. 	  Gets more than bitrate from flacs now.
	* morituri/rip/debug.py: 	  Add rip debug tag to debug reading tags.
log all tasks
	* morituri/rip/image.py: 	  Use getRealPath when retagging an image, fixes bug where it 	  doesn't find the files relative to the cuepath.
	* morituri/common/program.py: 	* morituri/rip/cd.py: 	* morituri/rip/image.py: 	  Add stdout to program.  Use it for getting musicbrainz info.
rename variable
	* morituri/program/cdparanoia.py: 	* morituri/test/test_program_cdparanoia.py: 	  Add a task that can analyze the drive for whether it defeats 	  the audio cache. 	* morituri/result/result.py: 	* morituri/rip/cd.py: 	  Make it possible to store whether a drive defeats audio cache 	  in the result. 	* morituri/rip/drive.py: 	  Add rip drive analyze command to analyze caching of a drive, 	  and store it in the config.
	* morituri/common/task.py: 	  Failed and done can stay unimplemented. 	  If we read stdout or stderr, reschedule immediately to process 	  all output before considering the possibility the program stopped.
	* morituri/common/config.py: 	  Add methods to get/set defeating of audio cache. 	  Make sure that we set read offset even if section is already there.
	* morituri/common/task.py: 	* morituri/program/cdrdao.py: 	  Factor out a PopenTask base class.
paranoia deserves a capital P
add output from my Plextor
add test output from cdparanoia -A
	* morituri/common/program.py: 	  Store rip result after verifying AccurateRip so those results 	  are stored too.
add profile info to rip
	* morituri/rip/cd.py: 	* morituri/result/result.py: 	  Store versions and encoding profile info in the rip result.
move import
	* morituri/test/test_common_gstreamer.py (added): 	* morituri/common/gstreamer.py: 	* morituri/test/Makefile.am: 	  add functions to get versions of gstreamer, gst-python, 	  and element factory plugins.
	* morituri/rip/debug.py: 	  add rip debug resultcache log command to generate a log 	  based on a cached result.
remove unused import
bump classVersion
	* morituri/common/common.py: 	  Remove migrated classes.
	* morituri/common/cache.py: 	  Disable the version-based persistence deleting. 	  Allow not creating a fresh ripresult when getting one.
	* morituri/common/cache.py: 	* morituri/rip/debug.py: 	* morituri/test/test_common_cache.py: 	  Add rip debug resultcache list to list cached results.
pep8 fixes
	* morituri/common/cache.py (added): 	* morituri/test/cache (added): 	* morituri/test/cache/result (added): 	* morituri/test/cache/result/fe105a11.pickle (added): 	* morituri/test/test_common_cache.py (added): 	* morituri/common/Makefile.am: 	* morituri/common/program.py: 	* morituri/test/Makefile.am: 	  Extract ResultCache object into separate file.
pychecker fixes
	* morituri/rip/drive.py: 	  rip drive list now shows configured read offset if applicable.
	* morituri/rip/cd.py: 	  Use configured read offset for drive if possible. 	  Fixes #76.
	* morituri/rip/main.py: 	  Add the config object to the root command. 	* morituri/rip/offset.py: 	  Save the drive's read offset when we find it.
	* morituri.spec.in: 	* morituri/common/config.py: 	  Use XDG if we can import xdg. 	  Fix writing the config.
	* morituri/common/drive.py: 	* morituri/rip/drive.py: 	  Extract getDeviceInfo function.
add missing tests
	* morituri/common/config.py (added): 	* morituri/test/test_common_config.py (added): 	* morituri/common/Makefile.am: 	* morituri/test/Makefile.am: 	  First stab at adding a configuration file to store 	  drive read offsets.
add TODO
pep8 fixes
	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Reset rip duration when we continue a rip but have to rerip 	  a track.
	* morituri/common/program.py: 	* morituri/program/cdparanoia.py: 	* morituri/result/result.py: 	  Track ripping speed for test and encode per-track.
	patch by: mustbenice 	* morituri/program/cdparanoia.py: 	* morituri/result/result.py: 	* morituri/rip/cd.py: 	* morituri/test/test_program_cdparanoia.py: 	  Get cdparanoia version. 	  Store both cdparanoia and cdrdao versions on rip result.
	* morituri/program/cdparanoia.py: 	  Make sure we calculate fractional speed.
	patch by: mustbenice 	* morituri/common/program.py: 	* morituri/program/cdparanoia.py: 	* morituri/result/logger.py: 	* morituri/result/result.py: 	  Calculate speed of reading track. 	  Output Test and Copy speed per track in log.
	* morituri.spec.in: 	  Add plugins directory.
	* morituri/result/logger.py: 	* morituri/result/result.py: 	* morituri/rip/cd.py: 	* morituri/rip/main.py: 	  Expose loggers as pluggable. 	  Add --logger option to rip cd rip to specify logger.
	* configure.ac: 	* morituri/configure/installed.py.in: 	* morituri/configure/uninstalled.py.in: 	  Create configure.configure.pluginsdir
	* configure.ac: 	  back to development.
mark release
	* NEWS: 	* README: 	* RELEASE: 	* configure.ac: 	* morituri.doap: 	  Releasing 0.1.3, "cranes"
	* morituri/common/encode.py: 	  Also remove buggy audio parsers when encoding. 	  Fixes #73.
	* morituri/common/encode.py: 	  Use vbr-quality instead of quality for vbr.  Fixes #94.
here's to me being stupid
update urls
fix dist
	* morituri/image/cue.py: 	* morituri/image/table.py: 	* morituri/image/toc.py: 	  Fix pychecker warnings.
	* morituri/common/program.py: 	  Add %y to template for year.  Fixes #98.
	* morituri/common/common.py: 	* morituri/common/program.py: 	* morituri/image/table.py: 	* morituri/rip/cd.py: 	* morituri/test/test_common_common.py: 	* morituri/test/test_image_toc.py: 	  Handle cases where disc_template and track_template are not in 	  the same directory.
	* morituri/test/test_common_encode.py: 	  Work around https://bugzilla.gnome.org/show_bug.cgi?id=688625
	* morituri/test/common.py: 	  Make tests log.
add tests
	* morituri/common/common.py: 	* morituri/image/cue.py: 	* morituri/image/toc.py: 	  factor out getRealPath
	* morituri/image/toc.py: 	* morituri/test/test_image_toc.py: 	  Add test for getRealPath.  Fix bug found by it for absolute paths.
	* morituri/image/table.py: 	* morituri/test/test_image_table.py: 	* morituri/test/test_image_toc.py: 	  Increase coverage.
	* Makefile.am: 	* doc/Makefile.am: 	  Adapt to changing over to git module for python-command
put symlink to github checkout
remove command externals
	* morituri/extern/task/gstreamer.py: 	  Fix wrong commit made to fix #89.
give a logname
	* gstreamer.py: 	  Only set an exception once in bus_error_cb. 	  Was triggered by morituri's checksum test, but only 	  if multiple tests were run - got the same bus error 	  twice.
simplify logic; log bus error cb
use a logging task runner
fix docstring
make a LogStub class
fix header
pep8 fixes
	* morituri/rip/offset.py: 	  Don't let an exception on testing an offset slip pass. 	  Fixes #99.
convert prints to writes
self.stdout instead of print
pep8 fixes
pep8 fixes
	* morituri/program/cdparanoia.py: 	* morituri/rip/cd.py: 	  Add a number of tries to rip a track.
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 fixes
pep8 cleanup
pep8 cleanup
	* misc/pep8.py (added): 	* Makefile.am: 	  Add pep8 target.
whitespace
log checksums
remove unused import
remove whitespace
	* morituri/extern/task/gstreamer.py: 	* morituri/test/test_common_checksum.py: 	  Protect backslashes in names.  Fixes #89.
	* morituri/common/drive.py: 	  If cdio.get_devices_with_cap finds a single drive, it returns a 	  str instead of a list.  Work around that bug.  Fixes #102. 	* morituri/test/test_common_drive.py (added): 	* morituri/test/Makefile.am: 	  Add test for it.  Caught a bug in my first implementation, too!
	* morituri/common/Makefile.am: 	* morituri/common/checksum.py: 	* morituri/common/encode.py: 	  Add a GstPipelineTask that lets us log. 	  Handle checksumming of small tracks better.
	* morituri/common/checksum.py: 	* morituri/common/encode.py: 	  Add a GstPipelineTask that lets us log. 	  Handle checksumming of small tracks better.
remove unused line
revert accidental commit
add new file
	* task.py: 	  Add a debug statement.
	* morituri/rip/main.py: 	  Handle EmptyError.
	* morituri/rip/debug.py: 	  Add encode debug.
	* morituri/common/program.py: 	  Use a temp var to make code more readable.
	* morituri/result/logger.py: 	  Fix logging of AR data
	* morituri/common/program.py: 	  Tell us which track is not in the db.
	* morituri/common/musicbrainzngs.py: 	  Handle multiple artists correctly.
	patch by: Christophe Fergeau <cfergeau at redhat.com) 	* morituri/common/program.py: 	  When morituri finds multiple matches for a given release, it only 	  keeps the releases whose length are the closest to the CD being 	  ripped. 	  However, this currently interacts badly with the --release-id 	  parameter because this duration filtering is done before trying to 	  do the release-id matching. The release that the user has specified 	  may have been removed from the potential matches by the time the 	  release 	  id match is tried. 	  This commit removes the duration filtering when the user explicitly 	  specified a release id. I've observed this bug with the first disc 	  of The Wall (Experience Edition) by the Pink Floyd. 	  Fixes #91.
	patch by: Christophe Fergeau <cfergeau at redhat.com) 	* morituri/common/program.py: 	  When --release-id is used, we are not making guesses based on the 	  CD lengths, so the message saying that we picked the closest match 	  in duration, which can still trigger, is inappropriate.
add debug
	* TODO: 	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Add rip cd rip --release-id as an option to select the exact 	  release this disc is a part of. 	  Fixes Radiohead - Pablo Honey and U2 - Achtung Baby
	* morituri/rip/debug.py: 	  Properly write utf-8 encoded strings to stdout.
add TODO
	* morituri/common/program.py: 	  Actually return the result from verifyTrack. 	  Debug the cache loading some more.  Make a note for a TODO.
	* morituri/common/musicbrainzngs.py: 	  Get the artist credit for a track/album; Fixes Gorky - Gorky.
	* morituri/common/checksum.py: 	* morituri/common/program.py: 	  Fix/add logging.
add a TODO
	* morituri.spec.in: 	  Spec fix. 	* morituri/image/image.py: 	  Log fix.
	* morituri/rip/debug.py: 	  Remove musicbrainz command.
	* configure.ac: 	  Doing a pre-release.
typo
	* morituri/test/test_common_program.py: 	  Remove use of musicbrainz module.
	* morituri/test/Makefile.am: 	  Don't package old musicbrainz test.
	* morituri/extern/Makefile.am: 	  Hopefully fix both make and make distcheck.
	* morituri/test/Makefile.am: 	* morituri/test/morituri.release.3451f29c-9bb8-4cc5-bfcc-bd50104b94f8.json (added): 	* morituri/test/test_common_musicbrainzngs.py (added): 	  Add test for previous bug of a release not having a date.
	* morituri/rip/main.py: 	* morituri/common/musicbrainzngs.py: 	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Add -R option to rip to record API results for debugging.
doc fixes
	* morituri/common/musicbrainzngs.py: 	  Fix case of metadata not having length. 	  Fix case of release not having a date.
	* morituri/common/Makefile.am: 	* morituri/common/musicbrainzngs.py: 	* morituri/common/program.py: 	* morituri/extern/Makefile.am: 	  Use musicbrainz NGS for ripping. 	  Can now rip Weezer, the Blue Album, both discs.
	* morituri/rip/debug.py: 	* morituri/common/musicbrainzngs.py (added): 	  Rewrite using python-musicbrainz-ngs. 	  Add rip debug musicbrainzngs command for testing, 	  seems to work on Weezer - Blue Album - disc 2
	* morituri/extern/Makefile.am: 	* morituri/extern/musicbrainzngs/musicbrainz.py (svn:special): 	* morituri/extern/musicbrainzngs/mbxml.py (svn:special): 	* morituri/extern/musicbrainzngs (added): 	* morituri/extern/musicbrainzngs/mbxml.py (added): 	* morituri/extern/musicbrainzngs/__init__.py (added): 	* morituri/extern/musicbrainzngs/musicbrainz.py (added): 	  Pull in my fork of python-musicbrainz-ngs
	* morituri/common/musicbrainz.py: 	* morituri/rip/debug.py: 	  Doc/output fixes.
	* morituri/rip/debug.py: 	  Adapt to splitup.
	* morituri/rip/debug.py: 	  Add rip debug musicbrainz command to look up information on 	  disc id's.
	* morituri/common/Makefile.am: 	* morituri/common/musicbrainz.py: 	* morituri/common/program.py: 	* morituri/test/test_common_program.py: 	* morituri/test/Makefile.am: 	* morituri/test/test_common_musicbrainz.py (added): 	* morituri/common/musicbrainz.py (added): 	  Split off musicbrainz-specific code.
	* morituri/common/Makefile.am: 	* morituri/common/musicbrainz.py: 	* morituri/common/program.py: 	* morituri/test/Makefile.am: 	* morituri/test/test_common_musicbrainz.py (added): 	* morituri/common/musicbrainz.py (added): 	  Split off musicbrainz-specific code.
	* TODO: 	* morituri/extern/task/task.py: 	  Instead of chaining next in multi tasks, making the call 	  chain larger (and exceed maximum depth on track 75), schedule 	  it immediately.
whitespace removal
add TODO
	* morituri/test/Makefile.am: 	  Include test .xml responses.
make things more loggable
	* morituri/common/common.py: 	  Add shrinkPath to write shorter path names. 	* morituri/test/test_common_common.py (added): 	  Add test. 	* morituri/program/cdparanoia.py: 	  Catch ENAMETOOLONG and shrink path. 	* morituri/common/program.py: 	  Update track result's filename if it was shrunk. 	* morituri/rip/cd.py: 	  set the possibly shrunk path on the result.
	* morituri/program/cdparanoia.py: 	  Log properly again. 	  Properly set exception when we can't rename the file.
	* morituri/extern/task/gstreamer.py: 	  Query using time if DEFAULT fails.
	* morituri/common/program.py: 	  Add Musicbrainz command.
add ivars to TrackMetadata
assert we get metadata
add tasks
	* morituri/common/program.py: 	  If any track is missing duration, set the whole album duration 	  to 0.
remove import
change to description.
	* morituri/common/gstreamer.py: 	  flacparse is busted in gst-plugins-good 0.10.30 too.
doc fix
make sure we stop on bad crc
	* task.py: 	  Better logging when scheduling. 	* gstreamer.py: 	  If paused() returns True, don't go to playing. 	  add a method for querying duration in the common case.
print out duration before for comparison on musicbrainz
	* morituri/common/program.py: 	  Don't fail if there is no metadata.
	* morituri/common/program.py: 	* morituri/rip/debug.py: 	  Pychecker fixes.
	* TODO: 	  Add a note about das capital disc. 	* morituri/test/release.08397059-86c1-463b-8ed0-cd596dbd174f.xml: 	* morituri/test/release.93a6268c-ddf1-4898-bf93-fb862b1c5c5e.xml: 	  Add musicbrainz ws1 results for Das Capital and Ladyhawke. 	* morituri/test/test_common_program.py: 	  Fix typos. 	  Add tests for Ladyhawke and Das Capital duration and parsing. 	* morituri/test/test_image_table.py: 	  Fix according to new algorithm. 	* morituri/test/test_image_toc.py: 	  Get frame length for both cd's. 	* morituri/image/table.py: 	  Add getFrameLength method.  Fix up duration.
	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Always print MusicBrainz URL.
	* morituri/test/release.c7d919f4-3ea0-4c4b-a230-b3605f069440.xml: 	  Add release data for Bettie Serveert, Lamprey 	* morituri/test/test_common_program.py: 	  Add a test for parsing and getting the whole duration. 	* morituri/common/common.py: 	  Add a method to format time. 	* morituri/common/program.py: 	  Add duration to tracks and release metadatas. 	  When there are multiple matches, look up the closest in duration. 	  Make sure that multiple matches closest in duration contain same 	  artist and title. 	  Complain about the other ones. 	* morituri/image/table.py: 	  Add a method to calculate a duration from the table. 	* morituri/test/test_image_table.py: 	  Add a test for it.
	* morituri/rip/cd.py: 	  Make sure we definitely fail on failed checksum.
update
	* doc/release: 	  Add note on actually running. 	* morituri/common/program.py: 	  Fix when running rip cd rip --unknown
	* task.py: 	  Remove scrubFilename call.
	* task.py: 	  Pull in getExceptionMessage privately.
	* morituri/extern/task/task.py: 	  Also stub out log calls on Runner.
	* morituri/extern/task/task.py: 	  Also handle error() log calls.
	* morituri/program/cdparanoia.py: 	  Make sure exceptions don't prevent the task from chaining up 	  to the parent stop() implementation, giving the runner a chance 	  to actually stop.
	* morituri/rip/debug.py: 	  Add checksum task for debugging.
	* gstreamer.py: 	* task.py: 	  Don't rely on the log module; users that want to log 	  should first subclass from a log class that implements 	  warning/info/debug/log
	* gstreamer.py: 	  Document bus and pipeline.  Make bus public.
update headers
	* morituri/common/checksum.py: 	* morituri/common/common.py: 	* morituri/common/encode.py: 	* morituri/image/image.py: 	* morituri/test/test_common_encode.py: 	  Moved quoteParse.
	* gstreamer.py: 	  Add quoteParse() method.
	* gstreamer.py: 	  Add getPipeline() method. 	  Base class implementation uses getPipelineDesc().
	* morituri/common/Makefile.am: 	* morituri/common/checksum.py: 	* morituri/common/gstreamer.py: 	* morituri/extern/Makefile.am: 	* morituri/extern/task/gstreamer.py: 	* morituri/common/gstreamer.py (added): 	  Extract function to remove audio parsers. 	  Fix up dist.
add module __init__
	* morituri/extern/task (added): 	* morituri/extern/task/taskgtk.py (added): 	* morituri/extern/task/gstreamer.py (added): 	* morituri/extern/task/task.py (added): 	* morituri/common/taskgtk.py (deleted): 	* morituri/common/gstreamer.py (deleted): 	* morituri/common/task.py (deleted): 	  Move task-related modules into an extern directory so other 	  projects can use them. 	* morituri/common/checksum.py: 	* morituri/common/encode.py: 	* morituri/image/image.py: 	* morituri/program/cdparanoia.py: 	* morituri/program/cdrdao.py: 	* morituri/rip/cd.py: 	* morituri/rip/debug.py: 	* morituri/rip/image.py: 	* morituri/rip/main.py: 	* morituri/rip/offset.py: 	* morituri/test/test_common_checksum.py: 	* morituri/test/test_common_encode.py: 	* morituri/test/test_image_image.py: 	  Adapt.  Tests work.
	* morituri/program/cdrdao.py: 	  Avoid floating point error.
	* morituri/common/task.py: 	  Log which task we are notifying progress on. 	* morituri/common/program.py: 	  Solve a problem where a release does not have an .id, 	  which means it's only half in musicbrainz (artist 	  and title, but no URL to the disc)
add
	* morituri/program/cdrdao.py: 	  Fix log output. 	  Do progress output while scanning TOC.
	* configure.ac: 	* doc/release: 	  Back to trunk.
releasing 0.1.2
remove fake entry
add gtk stuff to blacklist
	* morituri/rip/cd.py: 	  Use %default in options description.
	* morituri/rip/cd.py: 	  Ouch, was using the DISC TEMPLATE for the tracks.
	* morituri/test/test_common_program.py: 	  Add a test for the template in #66.
	* morituri/rip/cd.py: 	  Templates should have same number of slashes. 	  This avoids #66. 	  (Possibly, it should also be the same directory, or more code 	   should be written to handle that case). 	* morituri/rip/main.py: 	  Catch CommandError.
	* morituri/rip/cd.py: 	  Create variables for default templates.
	* morituri/test/test_common_program.py: 	  Add tests for naming of disc output location.
add debug
	* morituri/common/gstreamer.py: 	  Actually remove it if it's good and old.
	* morituri/common/gstreamer.py: 	  In -bad the plugin is called audioparsersbad.
	* morituri/common/gstreamer.py: 	  Add debugging about audioparsers removal.
	* morituri/common/gstreamer.py: 	  Also remove audioparsers if it's in bad.
	* configure.ac: 	  Time for a prerelease.
	* morituri/common/gstreamer.py: 	  Remove parsers for current git trunk of good too.
	* morituri/common/encode.py: 	  Query for duration and use it in level callback to set progress. 	  Works around F-15 bug where encode progress is not being updated.
	* morituri/rip/Makefile.am: 	* morituri/rip/main.py: 	* morituri/rip/debug.py (added): 	  Add helper command to debug tasks. 	* morituri/common/encode.py: 	  Add debug.
	* morituri/test/test_common_encode.py: 	  Use pink-noise as a wave form to make sure it's long enough. 	  Fixes last tests for F-15.
	* morituri/common/checksum.py: 	* morituri/common/gstreamer.py: 	  Remove audioparsers plugin if it has the known bug. 	  Fixes #64.
	* morituri/common/task.py: 	  Show us when we stop twice. 	* morituri/common/gstreamer.py: 	  Stop on Exceptions.
	* morituri/common/common.py: 	  Add an EmptyError. 	* morituri/common/checksum.py: 	  Set it when we don't get any frames. 	* morituri/rip/main.py: 	  Catch it and stop ripping if this happens.
	* morituri/common/task.py: 	  More exception handling and debug.
	* morituri/common/task.py: 	  add task argument to TaskRunner.schedule so we can get exceptions. 	  Add .schedule method to Task to pass self. 	* morituri/common/checksum.py: 	* morituri/common/encode.py: 	* morituri/common/gstreamer.py: 	* morituri/program/cdparanoia.py: 	* morituri/program/cdrdao.py: 	  Adapt.
comment
	* morituri/test/test_common_encode.py: 	  Write a non-sine wave so we have an actual flac file that will 	  typefind.
	* morituri/image/image.py: 	  Actually set exception so MultiTask tells us what went wrong.
	* morituri/common/task.py: 	  Document and change name of a method.
	* morituri/common/gstreamer.py: 	  Add a cvar to stop going to playing. 	* morituri/image/image.py: 	  Convert AudioLengthTask to GstPipelineTask. 	* morituri/test/test_image_image.py: 	  Adapt to new typefind error we run in.
add exception to debug
add a repr to show GError
	* morituri/common/gstreamer.py: 	  Stop task when we get an exception. 	  Don't make pipeline go to PLAYING if we got an exception 	  before doing so.
	* morituri/common/encode.py: 	  Convert TagReadTask to gstreamer.GstPipelineTask and 	  remove lots of duplicate code.
	* morituri/common/checksum.py: 	* morituri/common/encode.py: 	* morituri/common/gstreamer.py: 	  Move play to base class of GstPipelineTask.
	* morituri/common/gstreamer.py: 	  Add a stop method and a stopped overridable handler. 	* morituri/common/checksum.py: 	* morituri/common/encode.py: 	  Adapt to using stopped.
	* morituri/test/test_common_encode.py: 	  Generate an actual file by spawning gst-launch; otherwise 	  with proper error handling we get an error from wavparse that 	  there is not enough data to typefind. 	* morituri/common/gstreamer.py: 	  Move the gst import to start() and set it as a class attribute. 	  Document methods. 	* morituri/common/encode.py: 	  Convert EncodeTask to a GstPipelineTask.
	* morituri/common/encode.py: 	  Add some debug.
	* morituri/common/program.py: 	  AccurateRip responses should be treated per track; one response set 	  isn't necessarily from the same pressing. 	  The first response set contains all the highest confidence 	  checksums, and so on in decreasing order. 	  So don't assert about one track having a checksum matching from 	  a different response set. 	  Fixes #5.
remove unused var
	based on code by: Loïc Minier <lool at dooz.org> 	* morituri/rip/Makefile.am: 	* morituri/rip/main.py: 	* morituri/rip/accurip.py (added): 	  Add a rip accurip show command to show the accuraterip information 	  for a given URL.  See #5.
	* morituri/image/table.py: 	  Extract one function to write a FILE line.
	patch by: Ross Burton <ross at burtonini.com> 	* morituri/image/table.py: 	  When writing the .cue file, only write the basename, since 	  the .cue file gets stored in the album directory. 	  Fixes #10.
	* morituri/rip/main.py: 	  Give a nice error message if cdrdao cannot read the disc. 	  Fixes #62.
	* morituri/rip/main.py: 	  Give a nice error message if cdrdao cannot read the disc. 	  Fixes #29.
add comment
	* morituri/program/cdparanoia.py: 	  Since stop can be same as start, add + 1 to progress calculation. 	  Fixes #37.
	* morituri/program/cdparanoia.py: 	  Since stop can be same as start, add + 1 to progress calculation. 	  Fiexes #37.
distribute
	* morituri/common/gstreamer.py: 	  Remove unused imports. 	* morituri/image/image.py: 	  Remove halfbaked code.
	* morituri/rip/cd.py: 	  Factor out function to write .m3u lines.
	patch by: Loïc Minier <lool at dooz.org> 	* morituri/rip/cd.py: 	  Don't strip extension of HTOA track. 	  Fixes #50.
	* morituri/result/logger.py: 	  Always write strftime in C locale.  Fixes second bug 	  mentioned in #49.
	* morituri/common/checksum.py: 	* morituri/image/image.py: 	* morituri/test/test_common_checksum.py: 	* morituri/common/gstreamer.py (added): 	  Factor out GstException and GstPipelineTask.
document
	* misc/morituri-uninstalled: 	  The binary name is rip, so add an option to override. 	  Fixes #46.
	* morituri/rip/image.py: 	  Document image subcommand.  Fixes #61.
update
	* morituri/test/Makefile.am: 	  Package error progress output.  Fixes distcheck on slaves.
	* morituri/test/test_program_cdparanoia.py: 	  Update expected quality percentage. 	  Was broken since its commit in [432].
	* morituri/common/checksum.py: 	* morituri/common/encode.py: 	* morituri/image/table.py: 	* morituri/rip/cd.py: 	* morituri/rip/image.py: 	* morituri/rip/offset.py: 	* morituri/test/test_common_accurip.py: 	* morituri/test/test_common_checksum.py: 	* morituri/test/test_image_cue.py: 	* morituri/test/test_image_table.py: 	  Pychecker fixes.
	* morituri/common/checksum.py: 	  Actually raise the exception. 	* morituri/common/task.py: 	  Document interface more clearly. 	* morituri/test/test_common_checksum.py: 	  Use tcommon for test.common
	* morituri/common/common.py: 	  Don't fail on loading pickle.
	* morituri/common/encode.py: 	  Alac does not have merge_tags.  Fixes #15.
	* morituri/program/cdparanoia.py: 	* morituri/common/encode.py: 	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Add action and what args to describe task better.
	* morituri/common/task.py: 	  Add more debug.
	* morituri/rip/main.py: 	  More debug info: args, version, revision.
	* morituri/configure/configure.py (svn:keywords): 	  Expand revision. 	* morituri/configure/configure.py: 	  Set it on the revision local.
	* morituri/common/encode.py: 	  wavenc does not have merge_tags, it seems. 	  So don't call an element a tagger, don't merge tags if there is 	  no tagger, and complain if there is no merge_tags when we think 	  there should be.
remove bogus entry
	* morituri/program/cdparanoia.py: 	  cdparanoia can hang indefinitely on scsi read errors. 	  For example, on some drives, when trying negative offsets. 	  Notice them, count them, and fail after 100. 	* morituri/test/test_program_cdparanoia.py: 	* morituri/test/cdparanoia.progress.error (added): 	  Add a test for this output.
	* morituri/common/program.py: 	* morituri/rip/offset.py: 	  When finding the offset, also load and possibly unmount, resolving 	  to the real path for the device.
update README
	* morituri/common/encode.py: 	  Debug failing to write tags better.  See #60.
	* morituri/program/cdparanoia.py: 	  Extend FileSizeError with an extra message. 	* morituri/rip/offset.py: 	  Print a reasonable warning when we cannot rip with a certain offset. 	  See #57.
	* morituri/rip/drive.py: 	  Fix typo.  Fixes #59.
	* morituri/common/checksum.py: 	  Create a GstException to wrap a Gst.GError. 	  Create a base GstPipelineTask class. 	  Use it in Checksum and TRM tasks. 	  Raise and don't proceed to call .paused() when a GstError happens. 	  Should help debug https://bugs.launchpad.net/bugs/735053 	* morituri/test/test_common_checksum.py: 	  Adapt test.
add doc
change url
	patch by: Ross Burton 	* morituri/common/program.py: 	  On compilation albums the album artist is different to the artist. 	  If this is the case, morituri should write both tags. 	  Fixes #43.
	patch by: Ross Burton 	* morituri/common/program.py: 	  On compilation albums the album artist is different to the artist. 	  If this is the case, morituri should write both tags. 	  Fixes #43.
require python-CDDB
	* morituri/common/program.py: 	* morituri/image/table.py: 	* morituri/rip/cd.py: 	  Get CDDB disc id.  Use it to print info when not found on 	  MusicBrainz.
eject as well
add errors properly
	* morituri/rip/cd.py: 	  Add -U/--unknown option to continue ripping even if the CD is 	  unknown.  Default to False.
	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Add load and eject device.  Do so before and after ripping.
	patch by: Loïc Minier <lool at debian dot org> 	* examples/ARcalibrate.py: 	* examples/ARcue.py: 	* examples/readdisc.py: 	* morituri/rip/cd.py: 	* morituri/rip/offset.py: 	  s/reponse/response. 	  Fixes #51.
	* morituri/program/cdrdao.py: 	  Add logCategory to CDRDAO tasks. 	  Remove errors from parser, set them publically on task. 	  Properly raise exceptions on data cd's with correct stack origin.
add track
	* morituri/common/program.py: 	  Comment where we got the template variables from. 	* morituri/rip/cd.py: 	  Document the template variables.
	* morituri/program/cdparanoia.py: 	  Warn about missing cdparanoia too.
	* morituri/common/common.py: 	  Add MissingDependencyException. 	* morituri/program/cdrdao.py: 	* morituri/rip/main.py: 	  Use it to warn about missing cdrdao.
	* morituri/common/task.py: 	  Add exception traceback for easier debugging.
	* morituri.spec.in: 	  Add requires for python-setuptools since we use parse_version. 	  Fixes #32.
display checksum as hex instead so it is the same as the other one
	* morituri/common/program.py: 	  Set results by default so that it is set even if we get an 	  exception getting them. 	  Fixes #35.
	* morituri/test/test_image_toc.py: 	  Fix distcheck by writing unicode toc filename in a temp dir.
	* morituri/rip/cd.py: 	  Log the version at the beginning to help in bug reports.
	* morituri/rip/main.py: 	  Fix another UnicodeEncodeError problem as mentioned in #25.
add release notes
	* morituri/test/Makefile.am: 	* morituri/test/jose.toc (added): 	* morituri/test/JoséGonzález.toc (deleted): 	  Rename utf-8 file to a normal file. 	* morituri/test/common.py: 	* morituri/test/test_common_checksum.py: 	* morituri/test/test_common_encode.py: 	* morituri/test/test_image_image.py: 	* morituri/test/test_image_toc.py: 	  Copy the normal file first to the utf-8 filename, if supported. 	  Skip tests that need unicode when we are not in a utf-8 locale.
	* configure.ac: 	* doc/release: 	  Back to trunk.
releasing 0.1.1, Dead
remove print
move checksum import inline so we don't import gst again
BaseException.message is deprecated so avoid it
don't fail on htoa because we have no musicbrainz info
add note
	* morituri/common/encode.py: 	* morituri/rip/image.py: 	  Provide status on the retagging.
	patch by: Peter Oliver 	* morituri/program/cdparanoia.py: 	  Respect umask for encoded files.  Fixes #17.
	* morituri/common/encode.py: 	  Before moving the newly tagged file to overwrite the original 	  one, copy over mode.
	* morituri/common/program.py: 	  Commit one missing line from patch in #4 for multi-artist discs.
	* morituri/common/program.py: 	  Commit one missing line from patch in #4 for multi-artist discs.
	patch by: Peter Oliver. 	* morituri/common/program.py: 	  Handle multi-artist releases where track artist is unset. 	  Fixes #14.
	* morituri/rip/image.py: 	  Fix more utf-8 issues.
	* morituri/rip/image.py: 	  Fix more utf-8 issues.
fix case of not having mb info
fix case of not having mb info
	* morituri/image/image.py: 	  Remove dead code.
	* morituri/common/encode.py: 	  Fix wrong code for checksum comparison.
	* morituri/common/program.py: 	  Rename some vars to start with mbid.  Fix pychecker issues.
remove unused var
 pychecker fix
	* morituri/common/program.py: 	  Add a retagging command. 	  Add a getMusicBrainz() method. 	* morituri/rip/cd.py: 	  Use it. 	* morituri/image/image.py: 	  Add a task to retag an image. 	* morituri/rip/image.py: 	  Add a command to retag an image.
	* morituri/common/encode.py: 	  Add tasks to read, write, and safely retag flac files. 	* morituri/test/test_common_encode.py: 	  Add tests for this.
	* morituri/common/checksum.py: 	  Style fixes. 	* morituri/common/common.py: 	  Add functions to convert a gst.TagList to a dict and compare them. 	* morituri/common/task.py: 	  Add setAndRaiseException which gives us an appropriate 	  exceptionMessage as if we raised where we called this new function.
	* morituri/common/encode.py: 	  pychecker fix.
	* morituri/common/encode.py: 	  Add a task to read tags. 	* morituri/test/test_common_encode.py: 	  Add a test.
add something to check
	* morituri/common/encode.py: 	  Add a vbr profile.
	* morituri/rip/image.py: 	  Don't splitext on inputdir; fixes encoding of directories like 	  Sigur Ros - Takk... (which removed a period)
	* morituri/image/table.py: 	* morituri/program/cdparanoia.py: 	  Do some 80 character cleanups.
	* morituri/rip/image.py: 	  Fix problem to encode from files with unicode chars.
	* morituri/program/cdparanoia.py: 	  Add some debug. 	* morituri/common/encode.py: 	  Add more debug. 	  Handle the case where peak is full scale, and peakdB thus 0, 	  which triggered not setting self.peak.
pychecker fix
remove whitespace
	patch by: Peter Oliver. 	* morituri/common/program.py: 	  Allow using sortName for artist/track using %S/%s. 	  Fixes #19.
	* doc/release: 	  Document having clean test run. 	* morituri/common/encode.py: 	  Catch and properly stop on gst.QueryError. 	  Don't set peak in stop if we had an error. 	* morituri/test/test_common_encode.py: 	* morituri/test/test_common_renamer.py: 	* morituri/test/test_image_cue.py: 	  Clean up after tests.
	* morituri/common/task.py: 	* morituri/image/cue.py: 	  Add logCategory. 	* morituri/image/image.py: 	  If subtasks had an exception, retrigger the exception and stop.
	* morituri/image/image.py: 	  Fix AudioLengthTask for the case where we don't have the decoder, 	  by instead of doing get_state, waiting for an ASYNC_DONE or ERROR 	  message.  Properly raise a gst.GError in that case. 	* morituri/common/task.py: 	  Add some debug. 	* morituri/test/test_image_image.py: 	  After this fix, we now catch the TYPE_NOT_FOUND because of an 	  empty stream instead of the later gst.QueryError. 	* morituri/test/test_common_encode.py: 	  Let us know what it is if not a gst.QueryError.
clean up rip.1 in distclean
	* doc/Makefile.am: 	  Don't put rip.1 manpage in subdir.
	* morituri/common/common.py: 	  add quoteParse function to quote properly for gst.parse_launch() 	* morituri/common/checksum.py: 	  Fix single quote problem. 	  use self.setException() 	* morituri/common/encode.py: 	  Fix single quote problem. 	* morituri/image/image.py: 	  Fix single quote problem. 	  Reraise gst.QueryError. 	* morituri/test/test_common_encode.py: 	* morituri/test/test_common_encode.py (added): 	  Add tests for unicode/single/double quote. 	* morituri/test/test_image_image.py: 	* morituri/test/test_common_checksum.py: 	  Add tests for single/double quote. 	* morituri/test/common.py: 	  add twisted-like failUnlessRaises to TestCase that returns 	  the exception, so we can check wrapped exceptions in TaskException. 	  Fixes #16.
	* morituri/common/common.py: 	  add quoteParse function to quote properly for gst.parse_launch() 	* morituri/common/checksum.py: 	  Fix single quote problem. 	  use self.setException() 	* morituri/common/encode.py: 	  Fix single quote problem. 	* morituri/image/image.py: 	  Fix single quote problem. 	  Reraise gst.QueryError. 	* morituri/test/test_common_encode.py: 	* morituri/test/test_common_encode.py (added): 	  Add tests for unicode/single/double quote. 	* morituri/test/test_image_image.py: 	* morituri/test/test_common_checksum.py: 	  Add tests for single/double quote. 	* morituri/test/common.py: 	  add twisted-like failUnlessRaises to TestCase that returns 	  the exception, so we can check wrapped exceptions in TaskException.
add dir to generate man page in
	* morituri/common/task.py: 	  Wrap exceptions during tasks in a TaskException, storing the 	  message, for improved error reporting later on.
	* doc/Makefile.am: 	* morituri.spec.in: 	* morituri/extern/Makefile.am: 	  Use help2man.py to generate manpage.
make logging work
	* morituri/common/encode.py: 	* morituri/common/program.py: 	* morituri/image/image.py: 	* morituri/program/cdparanoia.py: 	* morituri/rip/cd.py: 	* morituri/rip/image.py: 	* morituri/rip/offset.py: 	  Move all gst-using imports inside functions and classes 	  to avoid 'import gst' eating our options. 	  Fixes #12.
	* bin/Makefile.am: 	  Install rip as the script.
remove result.py
	* morituri/common/Makefile.am: 	  Add missing result.py 	* morituri/test/Makefile.am: 	* morituri/test/test_image_toc.py: 	* morituri/test/JoséGonzález.toc (added): 	* morituri/test/José González.toc (deleted): 	  automake doesn't handle spaces in names, so move it.
script changed
	* bin/rip.in: 	  Add our PYTHONLIBDIR to sys.path if needed.  Should make this 	  work when doing ./configure; sudo checkinstall make install 	  on e.g. Ubuntu.
	* configure.ac: 	* bin/rip.in (added): 	* bin/rip (deleted): 	  Generate bin/rip so we can do sys.path stuff.
add note
	* morituri/rip/offset.py: 	  Add a more complete list of offsets, obtained using misc/offsets.py
	* misc/offsets.py (added): 	  Add a script to calculate list of offsets based on AccurateRip's 	  online database, according to popularity.
add a TODO
	* morituri/common/encode.py: 	  Handle utf-8 properly.
	* morituri/common/program.py: 	  Fix a problem with Arid's new album of not having an id.
	* morituri/common/accurip.py: 	  The AccuRip cache dir could exist without the file; handle that 	  case.
	* morituri/common/program.py: 	  For Various Artists releases, fall back to the release artist if 	  the track artist is None.
apparently this can also throw indexerror
handle exceptions when opening device
fix example for unicode
add TODO items
bump to gplv3
	* morituri/image/image.py: 	  Add ImageEncodeTask to encode a disk image to a different profile 	  and directory. 	* morituri/common/encode.py: 	  Add lossy encoding profiles for mp3 and vorbis. 	  Rename muxer to tagger since that's what we use it for. 	  Do progress probe after level to make sure we get samples for 	  offsets. 	* morituri/rip/image.py: 	  Add rip image encode command.
adding test file
	* morituri/common/task.py: 	  Add exceptionMessage on Task to store the result of 	  log.getExceptionMessage when the stack is still valid.
update release doc
	* configure.ac: 	  Back to TRUNK.
releasing 0.1.0
finally fix whitespace
update project urls
update doap and release notes
whitespace fixes
	* morituri/program/cdparanoia.py: 	  explicitize keyword args. 	  Break some 80+ lines.
	* morituri/rip/offset.py: 	  Pass device parameter to ReadTrackTask.  Thanks to Alex B for 	  spotting this on my blog.
update notes
	* morituri/program/cdparanoia.py: 	* morituri/rip/offset.py: 	  Another unicode fix.
another unicode fix
	* HACKING: 	  More unicode notes. 	* morituri/common/program.py: 	* morituri/image/table.py: 	* morituri/image/toc.py: 	* morituri/result/result.py: 	* morituri/rip/cd.py: 	* morituri/test/test_image_toc.py: 	  Further unicode fixes, for options, CD-Text, paths, ...
remove code.interact fix another unicode oversight
 pychecker fix
	* morituri/program/cdrdao.py: 	  Wrap read in an exception handler. 	* morituri/common/task.py: 	  Debug exceptions more.
	* HACKING: 	  Note unicode handling. 	* morituri/test/test_image_image.py: 	* morituri/image/table.py: 	* morituri/program/cdparanoia.py: 	* morituri/common/checksum.py: 	  Use unicode for paths. 	  Use repr for path representation. 	* morituri/test/test_common_checksum.py: 	  Add test for unicode audio file name.
	* morituri/image/cue.py: 	* morituri/image/toc.py: 	* morituri/test/test_image_cue.py: 	* morituri/test/test_image_toc.py: 	  Read input file as utf-8.  Fix logging of paths. 	* morituri/image/image.py: 	  Document and add asserts for unicodeness of paths. 	  Encode path in launch lines as utf-8
	* morituri/common/task.py: 	  Make SyncRunner wrap start() so we correctly handle any 	  exception being thrown.
	* morituri/common/checksum.py: 	* morituri/test/Makefile.am: 	* morituri/test/test_common_checksum.py (added): 	  Add a check to make sure that checksumming an empty file doesn't 	  hang.  Fix the hang.
update todo
update TODO
	* morituri.spec.in: 	  Add pycdio as requirement.
remove duplicate line
	* morituri/common/program.py: 	  Fix getting AccurateRip results for albums with a HTOA. 	* morituri/test/Makefile.am: 	* morituri/test/test_common_program.py: 	* morituri/test/silentalarm.result.pickle (added): 	  Add testcase for it, Bloc Party's Silent Alarm.
	* morituri.spec.in: 	  Update requirements to work around known bugs.
remove unexisting file
	* morituri/rip/cd.py: 	  Fix warning against rebuilt package.
	* README: 	  Fix up dependencies. 	* morituri.spec.in: 	  Fix dependencies and noarch install location. 	* morituri/common/Makefile.am: 	  Add result.py to dist
	* configure.ac: 	* m4/Makefile.am: 	* m4/as-ac-expand.m4 (added): 	  Correctly set installation dir for noarch python files so that it 	  works on 64 bit.
	* morituri/program/cdrdao.py: 	  Parse version number. 	* morituri/rip/cd.py: 	  Warn about cdrdao versions with a bug. 	* morituri/test/test_program_cdrdao.py: 	  Test that we can parse the version.
	* morituri/program/cdrdao.py: 	  Handle errors.  Tested by not having a CD in the drive.
	* morituri/common/task.py: 	  Document better. 	  Create an ITaskListener interface where we can document. 	  Log some more.
fix distcheck
fix for when there are no responses
	* morituri/test/test_common_program.py: 	* morituri/common/program.py: 	  Extract a common method to get textual representation of 	  AccurateRip results, and test it. 	* morituri/rip/cd.py: 	* morituri/rip/image.py: 	  Use the method.
doc update
fix i
	* morituri/image/table.py: 	  Fix deprecationwarning for python 2.6
	* morituri/test/test_common_program.py (added): 	* morituri/common/program.py: 	  Break verifyImage into two so we can test it. 	  Test it using an AccurateRip result for Luke Haines Is Dead 	  which had a wrongly ripped track 10.
pychecker fix
update docs
fix import
shorten accurip variable names
	* morituri/result/result.py: 	  Document some more.
	* morituri/test/Makefile.am: 	* morituri/test/dBAR-020-002e5023-029d8e49-040eaa14.bin (added): 	  Add AR result for Luke Haines Is Dead disc 1
remove unused import
add note
	* Makefile.am: 	* misc/pycheckerrc: 	* morituri/common/accurip.py: 	* morituri/common/checksum.py: 	* morituri/common/encode.py: 	* morituri/image/table.py: 	* morituri/rip/drive.py: 	  Fix up for pychecker warnings for 2.6 	  Fix rip drive list, which forgot some modules.
	* morituri/rip/main.py: 	* morituri/rip/image.py (added): 	  Add command to verify an image. 	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Fix AccurateRip checksum output.
declare sessions var
	* morituri/common/drive.py: 	  Really make pycdio and cdio optional. 	* morituri/rip/drive.py: 	* morituri/rip/offset.py: 	  Use drive.getAllDevicePaths()
remove code.interact
	* morituri/result/result.py: 	  Add max confidence from database. 	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Move AccurateRip checking to program.py 	  Re-rip if verification failed when continuing a rip.
	* morituri/image/cue.py: 	  Better debug.
fix htoapath setting
	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Serialize the rip result after every rip, so we can pick up 	  where we left off with all result data.
fix problem when not connected
more variable shuffling
	* morituri/common/program.py: 	  Move getPath to Program. 	  Remove arguments to ripTrack that can be gotten from 	  trackResult. 	* morituri/rip/cd.py: 	  Continue without musicbrainz metadata. 	  Unify htoa and normal track ripping. 	* morituri/result/result.py: 	  Add getTrackResult so it's easier to look up track results 	  when there's a HTOA.
	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Move HTOA checking to program.
	* morituri/result/logger.py: 	  Fix for toctable->table 	* morituri/common/program.py: 	* morituri/rip/cd.py: 	  Move lots of functionality to program module.
add another todo
	* morituri/result/result.py: 	  Change toctable to table since it's a full index table. 	* morituri/common/Makefile.am: 	* morituri/common/program.py (added): 	  Add module and class for program state. 	* morituri/rip/cd.py: 	  Use the program state to clean up the do() function.
pychecker cleanup
	* morituri/rip/cd.py: 	  Massage into 80 characters per line. 	  Make pycdio/cdio optional.
update docs
	* morituri/rip/drive.py: 	  Make pycdio and cdio optional.
split up
add HACKING as copy from README
update README
	* morituri/image/table.py: 	  Add getPregap() method. 	* morituri/rip/cd.py: 	  Use artist.name, not getUniqueName, to avoid monstruous names for 	  Muse. 	  Pass mbdiscid to getPath, so Unknown Disc can be saved with it. 	  Don't set the date if the release doesn't have one. 	  Set pregap on trackResult using new Track.getPregap() 	  Write all log/cue/m3u files as utf-8.
catch queryerror
	* morituri/test/cdparanoia.progress: 	  Add a shorter test file, 23 seconds. 	* morituri/test/test_program_cdparanoia.py: 	  Update the test to adapt.  Check for track quality. 	* morituri/program/cdparanoia.py: 	  Add a measure of track quality based on the number of reads. 	  Use the [wrote] output for progress updates, a bit more 	  jittery in its output. 	* morituri/rip/cd.py: 	  Set track quality on RipResult.
	* morituri/rip/cd.py: 	  Use RipResult to store result information. 	* morituri/result/logger.py (added): 	  Add a Logger to handle the RipResult, much like 	  EAC's log file.
	* morituri/rip/cd.py: 	  Comment out number of track setting on tag for now. 	  MusicBrainz can give us dates in YYYY, YYYY-MM, and YYYY-MM-DD 	  format, so convert to YYYY-MM-DD always. 	  Unmount the data part of the CD we want to rip if it is mounted. 	  Adapt to peak level change. 	  Don't try to write data tracks to the m3u file. 	  Resolve the device path to the actual device path.
	* morituri/result/result.py: 	  Add a Logger base class.
	* configure.ac: 	* morituri/Makefile.am: 	* morituri/result (added): 	* morituri/result/result.py (added): 	* morituri/result/__init__.py (added): 	* morituri/result/Makefile.am (added): 	  Add classes to store track and rip results in.
	* morituri/common/common.py: 	  Add an argument for the delimiter in formatting. 	* morituri/common/encode.py: 	  Most programs use peak volume, not power, so do this too.
	* morituri/test/common.py: 	  Add a method for diffing multiline strings.
	* morituri/common/encode.py: 	  Add a test() method to the profile so we can warn about bad 	  flacenc versions. 	  Encode track number and count, and release date, if possible. 	* morituri/rip/cd.py: 	  Fix another off-by-one error in the tag encoding.
	* morituri/program/cdparanoia.py: 	* morituri/rip/cd.py: 	  Handle another off-by-one error in the m3u handling. 	  Add a getTagList function. 	  Use it to encode tags.
add some goals
	* morituri/common/encode.py: 	* morituri/program/cdparanoia.py: 	* morituri/rip/cd.py: 	  Clean up the temporary unencoded file. 	  Pass profile as objects to tasks, so that temp files have the right 	  extension.
	* morituri/common/encode.py: 	* morituri/program/cdparanoia.py: 	  Add encoding profiles, kept simple for now as a class and 	  subclasses.  Use them to encode.  Calculate peak level while 	  encoding, compared to EAC and replaygain's value. 	* morituri/rip/cd.py: 	  Use the encoding profiles, ripping with the right extension. 	  Add a --profile parameter for it.
	* morituri/rip/cd.py: 	  Clean up track numbering confusion.
	* morituri/common/encode.py (added): 	* examples/encode.py (added): 	  Add an Encode Task, hardcoded to flac for now. 	  Add an example, that also sets tags.
	* morituri/common/task.py: 	  Add debug. 	* morituri/rip/drive.py: 	  Show all drives, not just the ones that happen to have an Audio CD 	  inserted.
add doc
	* morituri/rip/cd.py: 	  Add asserts for comparing id's between the simple toc and 	  the full table. 	  Create the output directory before ripping the htoa. 	  Ignore data tracks for now. 	  Don't fail if we have no AccurateRip responses. 	* morituri/image/table.py: 	  Add a session ivar to Track. 	  Factor in session leadin when calculating track length 	  of last track in a session. 	  add getMusicBrainzSubmitURL() 	  add _getSessionGap() because the session gap size is different 	  for session 2 and all following. 	  Use it in merge() to get offsets right. 	  Fix getAccurateRipURL by only using the audio tracks for the 	  'length in tracks' number 	  Temporarily disable writing out data tracks to a .cue file, 	  since it's not implemented yet. 	  Add canCue to see if we can write a .cue file from the given table, 	  and debug why not if not. 	* morituri/program/cdrdao.py: 	  Rework to rip each session separately instead of using session 9. 	  This fixes session 9 read-toc missing the pregap. 	  Add a simple LineParser for handling output from disk-info. 	  Count tracks relatively for the session, because the output for 	  session 2 for track numbers picks up where session 1 left off. 	  Don't set leadout from TOC printing since for the same reason 	  session 2's leadout is absolute, not relative to start of session. 	  Add a DiscInfoTask. 	  Convert Table and Toc reading tasks to multitasks, first getting the 	  number of sessions, then reading table/toc for each session. 	* morituri/test/test_image_table.py: 	  Fix up MusicBrainz disc id for my Ladyhawke disc. 	  Add AccurateRip URL verification, compared against EAC's. 	* morituri/test/test_image_toc.py: 	  Use two separate session read-toc output files to verify 	  the case of Das Capital. 	  Verify musicbrainz URL.
	* morituri/common/task.py: 	  Add documentation. 	  Use a _task counter instead of duplicating tasks to 	  __tasks; this allows us to add tasks after starting. 	  Catch Exceptions during next() so that we don't get 	  stuck in a main loop that doesn't exit. 	  Raise it later when we're done.
	* morituri/common/common.py: 	  Since the version was inherited from the current code 	  in unpickled objects, separate into classVersion and 	  an instanceVersion set from __init__.
	* morituri/image/toc.py: 	  Add a logName for debugging.
	* morituri/program/cdparanoia.py: 	* morituri/image/image.py: 	  Correctly chain up to parent __init__ for MultiTasks
	* morituri/test/capital.1.toc (added): 	* morituri/test/capital.2.toc (added): 	  Add two .toc's for two sessions of a 2 session disc 	* morituri/image/table.py: 	  Add a merge method to merge in a second session. 	* morituri/test/Makefile.am: 	* morituri/test/test_image_toc.py: 	  Add a test for merging the Das Capital sessions, gets 	  the CDDB disc id right.
	* morituri/common/common.py: 	  Add a persisted cache so that we can store pickles on discs. 	  Automatically delete them if the class version is newer than 	  the object's. 	* morituri/rip/cd.py: 	  Use it.
	* morituri/image/table.py: 	  Add a version ivar to help with versioning pickled objects.
	* morituri/program/cdparanoia.py: 	  Add copy and test CRC's to object.
	* morituri/common/Makefile.am: 	* morituri/common/drive.py (added): 	  Add drive module.
pychecker fixes
	* morituri/program/cdparanoia.py: 	* morituri/program/cdrdao.py: 	* morituri/rip/cd.py: 	* morituri/rip/offset.py: 	  Add device argument to ripping/scanning tasks.
	* morituri/common/accurip.py: 	* morituri/image/image.py: 	* morituri/test/Makefile.am: 	* morituri/test/test_image_image.py: 	* morituri/test/test_common_accurip.py (added): 	  Move accuraterip stuff to the accurip module. 	  Move/create new test file.
	* morituri/rip/Makefile.am: 	* morituri/rip/main.py: 	* morituri/rip/drive.py (added): 	  Add 'rip drive list' command to list available drives. 	* morituri/common/accurip.py: 	  Add force. 	* morituri/rip/cd.py: 	  Add --output-directory argument.
	* morituri/common/Makefile.am: 	* morituri/rip/cd.py: 	* morituri/common/accurip.py (added): 	  Add a module for handling a cache of AccurateRip results. 	  Use it.
	* morituri/rip/Makefile.am: 	* morituri/rip/main.py: 	* morituri/rip/cd.py (added): 	  Add second command, 'rip cd rip' before factoring out functionality.
	* morituri/rip/Makefile.am: 	* morituri/rip/main.py: 	* morituri/rip/offset.py (added): 	  Add first command, 'rip offset find'
	* Makefile.am: 	* morituri/test/Makefile.am: 	  Make distcheck work.
add notes
add README
ignore more
add test file
pychecker and docstring fixes
more pychecker fixes
more pychecker fixes
	* morituri/common/checksum.py: 	  More pychecker fixes.
pychecker fixes
should not be in
update for build
add configure
add init
add configure
	* morituri/common/common.py: 	* morituri/common/renamer.py: 	  Pychecker fixes.
adding m4 dir
moap ignore
moap ignore
add doc
add binary
ignore more
	* RELEASE: 	* misc/pycheckerrc: 	* misc/show-coverage.py: 	* morituri/image/Makefile.am: 	* morituri/program/Makefile.am: 	* RELEASE (added): 	* morituri/image/Makefile.am (added): 	* morituri/program/Makefile.am (added): 	* misc/show-coverage.py (added): 	* misc/pycheckerrc (added): 	  more additions
	* AUTHORS: 	* Makefile.am: 	* NEWS: 	* TODO: 	* autogen.sh: 	* configure.ac: 	* examples/ARcalibrate.py: 	* misc/Makefile.am: 	* misc/morituri-uninstalled: 	* morituri.spec.in: 	* morituri/Makefile.am: 	* morituri/common/Makefile.am: 	* morituri/common/logcommand.py: 	* morituri/extern/Makefile.am: 	* morituri/rip/Makefile.am: 	* morituri/rip/__init__.py: 	* morituri/rip/main.py: 	* morituri/test/Makefile: 	* morituri/test/Makefile.am: 	* configure.ac (added): 	* AUTHORS (added): 	* morituri.spec.in (added): 	* Makefile.am (added): 	* morituri/test/Makefile.am (added): 	* morituri/extern/Makefile.am (added): 	* morituri/common/logcommand.py (added): 	* morituri/common/Makefile.am (added): 	* morituri/Makefile.am (added): 	* morituri/rip (added): 	* morituri/rip/__init__.py (added): 	* morituri/rip/Makefile.am (added): 	* morituri/rip/main.py (added): 	* misc/Makefile.am (added): 	* misc/morituri-uninstalled (added): 	* autogen.sh (added): 	* NEWS (added): 	  Start autotooling.  Add a command-line application.
add etc
moap ignore
ignore more
add a test that doesn't work yet
fix bug caught  by pychecker
fix bugs caught by pychecker
fix bug caught by pychecker
use constants
	* AUTHORS: 	* Makefile.am: 	* NEWS: 	* TODO: 	* autogen.sh: 	* configure.ac: 	* examples/ARcalibrate.py: 	* misc/Makefile.am: 	* misc/morituri-uninstalled: 	* morituri.spec.in: 	* morituri/Makefile.am: 	* morituri/common/Makefile.am: 	* morituri/common/logcommand.py: 	* morituri/extern/Makefile.am: 	* morituri/rip/Makefile.am: 	* morituri/rip/__init__.py: 	* morituri/rip/main.py: 	* morituri/test/Makefile: 	* morituri/test/Makefile.am: 	* configure.ac (added): 	* AUTHORS (added): 	* morituri.spec.in (added): 	* Makefile.am (added): 	* morituri/test/Makefile.am (added): 	* morituri/extern/Makefile.am (added): 	* morituri/common/logcommand.py (added): 	* morituri/common/Makefile.am (added): 	* morituri/Makefile.am (added): 	* morituri/rip (added): 	* morituri/rip/__init__.py (added): 	* morituri/rip/Makefile.am (added): 	* morituri/rip/main.py (added): 	* misc/Makefile.am (added): 	* misc/morituri-uninstalled (added): 	* autogen.sh (added): 	* NEWS (added): 	  Start autotooling.  Add a command-line application.
add changes
	* morituri/program/cdrdao.py: 	  read all sessions by reading session 9. 	* morituri/image/toc.py: 	  Parse ZERO statements properly. 	  Also set absolute offsets when we know them from the .toc file. 	  Properly set audio flag on tracks. 	  FIXME: probably doesn't work if the .toc does not have lengths. 	* morituri/image/table.py: 	  Add some debug to cddb disc id calculation. 	  Fix absolutize function, it was going one index too far. 	  raise ValueError when overriding .absolute with a wrong value. 	* examples/readdisc.py: 	  Show CDDB disc id at the start. 	  Assert when toc and table have different disc id's (to be fixed) 	* morituri/test/test_image_cue.py: 	  Update for having the table already with absolute values. 	* morituri/test/test_image_toc.py: 	  Add Ladyhawke CDDB test, it has a data track.
add toc file with two sessions for testing
	* examples/readdisc.py: 	  Move constants to common
update docs
	* examples/readdisc.py: 	* examples/readhtoa.py: 	* examples/readtoc.py: 	  Rename IndexTable to Table.
	* morituri/image/cue.py: 	* morituri/image/image.py: 	* morituri/image/table.py: 	* morituri/image/toc.py: 	* morituri/program/cdparanoia.py: 	* morituri/program/cdrdao.py: 	* morituri/test/test_image_cue.py: 	* morituri/test/test_image_table.py: 	  Rename IndexTable to Table.
	* morituri/image/cue.py: 	* morituri/image/image.py: 	* morituri/image/table.py: 	* morituri/image/toc.py: 	* morituri/program/cdrdao.py: 	* morituri/test/test_image_cue.py: 	* morituri/test/test_image_table.py: 	  Rename ITTrack to Track.
one more symbol
	* morituri/common/common.py: 	* morituri/image/cue.py: 	  Use FRAMES_PER_SECOND where appropriate.
	* morituri/common/checksum.py: 	* morituri/common/common.py: 	* morituri/image/image.py: 	* morituri/image/table.py: 	* morituri/program/cdparanoia.py: 	  Move constants to common
add another constant before we move
add a test file
	* examples/readdisc.py: 	  Get our metadata only from the toc.
	* examples/readdisc.py: 	  Also work for discs without htoa.
add a debug line
	* examples/readdisc.py: 	  Write .m3u file.
tell us when we're wrong
	* examples/readdisc.py: 	  Rip HTOA as well.  Add disc-template parameter.
	* morituri/image/table.py: 	  Fix a subtle bug in our CDDB disc id calculation. 	  The length of the audio should be calculated as the delta 	  between leadout and start already converted (and truncated) 	  to seconds. 	* morituri/test/bloc.cue: 	* morituri/test/test_image_toc.py: 	  Fix up tests for this.
	* morituri/program/cdparanoia.py: 	  Fix up track counting so HTOA can be ripped again. 	* examples/readhtoa.py: 	  Fix up example so it works again, tested on Silent Alarm.
	* morituri/test/test_image_toc.py: 	* morituri/test/bloc.cue (added): 	  Add an expected .cue file for the bloc party toc.
	* morituri/image/toc.py: 	  Calculate the leadout from the sum of the track lengths. 	* morituri/test/breeders.cue: 	* morituri/test/cure.cue: 	  Adapt expected results for DISCID. 	* morituri/image/table.py: 	  Add an assert for hasTOC() when doing .cue() 	* morituri/test/test_image_toc.py: 	* morituri/test/test_image_cue.py: 	  absolutize before cue()
	* morituri/image/table.py: 	  Only add DISCID if our table is a TOC (which it isn't 	  with our current .toc file parsing) 	* morituri/test/test_image_cue.py: 	* morituri/test/test_image_toc.py: 	  Fix up tests; testsuite passes again.
	* morituri/image/toc.py: 	  Add some debugging.
	* morituri/image/table.py: 	  Update .cue writing: 	  - customise program name 	  - add DISCID 	  - use counter for FILE lines 	  - put FILE line before TRACK if track does not have INDEX 00 	  Take counter into account for setFile 	* examples/readdisc.py: 	  Add --track-template. 	  Pass counter to setFile.
	* morituri/image/table.py: 	  Add CDText writing to .cue() method. 	* morituri/image/toc.py: 	  Add CDText parsing. 	* morituri/test/test_image_toc.py: 	* morituri/test/breeders.cue (added): 	  Add a test for cue'ing the breeders' toc.
	* morituri/image/table.py: 	* morituri/image/toc.py: 	  Add parsing of ISRC codes. 	  Add first part of CDTEXT stuff. 	* morituri/test/test_image_toc.py: 	  Add test for converting .toc to .cue 	* morituri/test/cure.cue 	  Add reference for converted cure.toc
	* examples/readhtoa.py: 	  Fix example.
	* morituri/image/table.py: 	* morituri/test/test_image_table.py: 	  Correctly calculate MusicBrainz disc id for enhanced cd's.
	* morituri/common/task.py: 	  Log on runners too. 	* morituri/program/cdrdao.py: 	  Abort if output has ERROR by killing and setting an exception.
	* examples/readdisc.py: 	  filter out slashes when deciding on file names.
	* morituri/common/task.py: 	* morituri/image/image.py: 	  Remove prints.  Describe tasks.
	* morituri/common/task.py: 	  Add an exception ivar for tasks to set an exception on while 	  running.  Make SyncRunner raise it during done() 	* morituri/program/cdparanoia.py: 	  Set an exception if the ripped file doesn't match the expected size 	  (for example when disc is full)
	* morituri/common/common.py: 	  Set the object when we don't persist. 	* examples/readdisc.py: 	  Small fixes.
	* examples/readdisc.py: 	  Fix up cue file reading.
	* examples/readdisc.py: 	  Add musicbrainz code for disc naming.
	* morituri/image/table.py: 	* morituri/image/toc.py: 	  Delete old code.
	* morituri/image/toc.py: 	* morituri/test/test_image_toc.py: 	* morituri/test/test_program_cdrdao.py: 	  After careful vetting, fix up the expected values after toc parsing. 	  Fix (untested) INDEX handling.  Fix handling of START.
	* morituri/image/table.py: 	* morituri/test/test_image_table.py: 	  Implement MusicBrainz disc id.  Works for audio-only discs, 	  have to figure out why it fails for an Enhanced CD like the 	  Ladyhawke one.
	* morituri/image/table.py: 	  Add logging. 	  Add methods to clear a table of files, and to absolutize indexes 	  as long as the source is the same file, and to set a File on a 	  given index, adjusting all following indexes that match the 	  duration, and check if the IndexTable has all information for a TOC. 	* morituri/image/toc.py: 	  Add logging. 	  Use a counter for the source. 	  Fix up index offset calculation. 	* morituri/program/cdrdao.py: 	  Use a real IndexTable as the result, instead of a TocFile. 	* morituri/image/cue.py: 	  Use a real IndexTable to store tracks. 	* morituri/test/test_image_toc.py: 	  The toc file now has a table which has the tracks. 	  Fix the tests to adjust for wrong index calculations. 	* morituri/test/test_image_cue.py: 	* morituri/test/test_image_image.py: 	* morituri/image/image.py: 	  The cue file now has a table which has the tracks. 	* morituri/test/test_image_table.py: 	  Add assertions to make sure when the table can serve as a TOC. 	* examples/readdisc.py: 	  Adjust for changes.  Fix up to include AccurateRip results. 	  First time we can do a complete normal rip including verifying 	  against AccurateRip results!
	* examples/readdisc.py: 	* morituri/image/table.py: 	* morituri/test/test_image_table.py: 	  Fix up and deprecate stuff.
add test
	* examples/movecue.py: 	* examples/readcue.py: 	* morituri/image/cue.py: 	* morituri/image/image.py: 	* morituri/image/toc.py: 	* morituri/program/cdrdao.py: 	* morituri/test/test_image_cue.py: 	* morituri/test/test_image_toc.py: 	  Cue -> CueFile 	  TOC -> TocFile
docs and repr fixes
	* examples/readdisc.py (added): 	  Add an example to read a whole disc.  Doesn't work yet.
	* examples/readhtoa.py: 	  Fix up readhtoa example.  Add offset option.
	* examples/ARcalibrate.py: 	* examples/readhtoa.py: 	* examples/readtoc.py: 	* morituri/program/cdrdao.py: 	  Rename ReadTOCTask to ReadIndexTableTask. 	  Rename ReadTableTask to ReadTOCTask.
handle not having a toc
	* morituri/program/cdrdao.py: 	  Convert ReadTableTask to a CDRDAOTask subclass. 	* examples/ARcalibrate.py: 	* morituri/program/cdparanoia.py: 	  Adapt.
fail if we don't have a toc
	* morituri/program/cdrdao.py: 	  Fix up index scanning's progress report. 	  Add some debugging.
	* morituri/program/cdrdao.py: 	* morituri/test/test_program_cdrdao.py: 	  Fix up tests.  Use an IndexTable.
	* morituri/program/cdrdao.py: 	  Massage out a base class for running cdrdao.
	* morituri/program/cdrdao.py: 	* morituri/test/test_program_cdrdao.py (added): 	  Split out the parser from the task.  Test the parser.
	* morituri/program/cdrdao.py: 	* morituri/test/test_program_cdrdao.py (added): 	  Split out the parser from the task.  Test the parser.
add logging
	* morituri/image/cue.py: 	* morituri/image/image.py: 	* morituri/image/table.py: 	* morituri/program/cdparanoia.py: 	* morituri/test/test_image_cue.py: 	  Move to using a shared IndexTable for everything. 	  Sadly mixed with a MultiTask rename.
	* morituri/common/checksum.py: 	  Update debugging.  Add repr.
	* examples/ARcue.py: 	  Handle case where we have no matching response.
	* morituri/common/task.py: 	  Distinguish more clearly between MultiSeparateTask and 	  MultiCombinedTask.
add assert
	* morituri/image/cue.py: 	* morituri/test/test_image_cue.py: 	  Add dumping of .cue files.
docs
	* morituri/program/cdparanoia.py: 	  Use a temporary file to rip to.
remove ellipses
	* examples/readtrack.py: 	  Allow specifying the track to save.
	* morituri/common/task.py: 	  Make SyncRunner clear previous description/progress task by 	  tracking longest output given up to now.
	* morituri/program/cdparanoia.py: 	  Add a task to read and verify a track. 	* examples/readtrack.py: 	  Use it to clean up code. 	* morituri/common/task.py: 	  describe a MultiTask better.
remove prints
	* morituri/common/common.py: 	  Create a Persister class to wrap a possible pickle path. 	* examples/trm.py: 	  Use it.
remove a print
verify cdparanoia's output
	* morituri/program/cdparanoia.py: 	  Add table to __init__, so we can correctly calculate cdparanoia's 	  strange ripping regions. 	* examples/ARcalibrate.py: 	  When we found a positive match on a first track, match all the other 	  tracks too for confirmation.
add repr
	* morituri/common/taskgtk.py: 	  Bug fix.
	* morituri/common/task.py: 	* morituri/common/taskgtk.py: 	  Split off GtkProgressRunner in separate module to not import gtk 	  everywhere. 	* examples/ARcalibrate.py: 	* examples/ARcue.py: 	* examples/gtkchecksum.py: 	* examples/trm.py: 	  Adapt.
copy before splitting
	* examples/ARcalibrate.py (added): 	  Add an example that calculates the read offset of your drive 	  using AccurateRip.
	* morituri/program/cdrdao.py: 	  Add a task to read the Table.
add logging fix up for cue->table rename
change progress notify to log
add errors
doc fix
debug fix
	* morituri/common/task.py: 	* morituri/image/image.py: 	  Add some debugging.
	* examples/readhtoa.py (added): 	  Add an example that detects and rips the Hidden Track One Audio.
	* examples/readtoc.py: 	* morituri/program/cdrdao.py (added): 	  Move the ReadTocTask to the new cdrdao module.
	* examples/readtrack.py: 	* morituri/program/cdparanoia.py: 	  Move ReadTrackTask to cdparanoia module.
update example
	* examples/readtrack.py (added): 	  Add an example that reads a track using cdparanoia.
	* morituri/test/cdparanoia.progress (added): 	* morituri/test/test_program_cdparanoia.py (added): 	* morituri/program/__init__.py (added): 	* morituri/program/cdparanoia.py (added): 	  Add a module to wrap cdparanoia.  Add a test for parsing 	  the progress report output.
	* morituri/common/checksum.py: 	  Debug fixes.
	* morituri/common/common.py: 	  Create some common functions to parse MSF and back. 	* morituri/image/toc.py: 	  Use it here.
moap ignore
add to TODO
publicize path
	* examples/trm.py: 	  Allow loading and saving fingerprints from a pickle.
	* morituri/image/toc.py: 	* morituri/test/test_image_toc.py: 	* morituri/test/bloc.toc (added): 	  Fix up .toc parsing to correct index 0 behaviour. 	  Add Bloc Party's Silent Alarm .toc file to test HTOA.
	* examples/readtoc.py: 	  Update to work on my desktop.
	* morituri/common/task.py: 	  Make task subclass log.Log
	* morituri/common/log.py: 	  Add external log module and use it.
adding external log module
	* morituri/test/cure.toc (added): 	  Add an example .toc file for the test.
	* examples/readtoc.py: 	  Extract and print TOC.
	* morituri/test/test_image_toc.py (added): 	* morituri/image/toc.py (added): 	  Add first stab at .toc parsing.
	* examples/readtoc.py: 	  get errors from output too.
	* morituri/image/image.py: 	* morituri/image/table.py: 	* morituri/test/test_image_image.py: 	* morituri/test/test_image_table.py: 	  Rename toc.TOC to table.Table
	* morituri/test/test_image_table.py (added): 	* morituri/image/table.py (added): 	* morituri/test/test_image_toc.py (deleted): 	* morituri/image/toc.py (deleted): 	  Move files around in preparation for the .toc file parsing.
	* examples/movecue.py (added): 	  Add a script that moves a .cue file in its corresponding directory.
	* morituri/test/kanye.cue (added): 	  Add a cue test with mixed mode. 	* morituri/image/cue.py: 	* morituri/test/test_image_cue.py: 	  Handle it properly.
	* morituri/image/cue.py: 	  getRealPath should be here, it doesn't need anything outside 	  the .cue file 	* morituri/image/image.py: 	  Proxy it here.
	* morituri/common/checksum.py: 	  Add some debugging. 	* morituri/test/test_image_image.py: 	  Run less verbose.
	* morituri/common/task.py: 	  Allow a SyncRunner to be constructed with verbose too. 	  Separate a 'running' verbose mode from that. 	  Fixes unwanted test output. 	* morituri/test/test_image_image.py: 	  Run without verbosity.
	* morituri/test/test_image_image.py: 	  Fix name.
moap ignore
	* morituri/test/test_common_renamer.py (added): 	* morituri/common/renamer.py (added): 	  Add a way of doing transactional file renames, as well as their 	  metafile updates.
fix
update
	* morituri/common/task.py: 	  Add a 'described' method so listeners can get proper notification 	  of description changes, and update their description in between 	  progress changes. 	  Add a MultiCombinedTask that reports on progress over all tasks 	  combined. 	* examples/trm.py: 	  Add a playlist option to the example.  Still needs to store results 	  to pickles, preferably after each completed task. 	* morituri/common/checksum.py: 	  Add audioconvert to make sure we can trm ogg files.
	* morituri/common/task.py: 	* morituri/image/image.py: 	  Move MultiTask to the task module.
	* morituri/common/checksum.py: 	  Add a task to calculate a trm fingerprint. 	* examples/trm.py (added): 	  Add an example. 	  Strangely enough it starts burstily, doing 10% directly, halting, 	  then progressing quickly,
	* examples/ARcue.py: 	  Fix a bug in the gtk example.
	* examples/readtoc.py: 	  Read the toc using cdrdao.  Now sets progress based on which 	  frame it is on.
	* morituri/common/task.py: 	  Add a __main__ example using DummyTask.
	* morituri/common/task.py: 	  Make sure we also show progress when it's 0%, at the start.
	* morituri/image/cue.py: 	  Use names for matches in regexps.
	* examples/readtoc.py (added): 	  Add an example to read the TOC, not finished yet.
	* morituri/extern (added): 	* morituri/extern/__init__.py (added): 	* morituri/extern/asyncsub.py (added): 	  Add extern module; add asynchronous subprocess Popen from 	  http://code.activestate.com/recipes/440554/
add todo file
	* examples/gtkchecksum.py: 	* morituri/common/checksum.py: 	  Final crc->checksum fixes.
	* examples/ARcue.py: 	* morituri/common/checksum.py: 	* morituri/image/image.py: 	* morituri/image/toc.py: 	* examples/gtkchecksum.py (added): 	* examples/gtkcrc.py (deleted): 	  More crc->checksum changes.
add comment
	* examples/ARcue.py: 	* morituri/common/checksum.py: 	* morituri/image/image.py: 	* morituri/test/test_image_image.py: 	  Change crc to checksum everywhere.
	* morituri/image/image.py: 	* morituri/image/toc.py: 	* morituri/common/checksum.py (added): 	* morituri/common/crc.py (deleted): 	  Rename crc to checksum, because AccurateRip checksums are not CRC's.
	* examples/ARcue.py: 	* morituri/image/image.py: 	* morituri/test/test_image_image.py: 	  Make everything use TOC for the id's.
	* morituri/image/image.py: 	  Refactor to use TOC class. 	* morituri/image/toc.py: 	  Fully document.
	* morituri/test/test_image_toc.py (added): 	* morituri/image/toc.py (added): 	  Add an abstraction for a TOC. 	  Take data tracks into account correctly for CDDB and AccurateRip 	  disc ID's.
	* morituri/image/image.py: 	* morituri/test/test_image_image.py: 	  AccurateRip binary files actually contain multiple responses, so 	  parse all of them. 	* examples/ARcue.py: 	  Handle case of not having a response, and having multiple responses.
make it clear which one is ours
	* morituri/common/crc.py: 	  Actually return the CRC when checking frame 5. 	* morituri/test/test_image_image.py: 	  Update test for this fix.
	* morituri/image/image.py: 	  Also look for audio file basename relative to cue file.
	* examples/ARcue.py: 	  Make output a bit nicer, mentioning whether tracks were 	  accurately ripped.
	* morituri/image/image.py: 	  Add an object to parse the response of AccurateRip. 	* morituri/test/test_image_image.py: 	* morituri/test/dBAR-011-0010e284-009228a3-9809ff0b.bin (added): 	  Add a test for it, based on my Kings Of Leon CD.
	* morituri/image/image.py: 	  Add the 150 frames for the leadin only to the CDDB calculation. 	  Add methods to calculate AccurateRip id's and URL. 	* morituri/test/test_image_image.py: 	  Add tests for it. 	* examples/ARcue.py: 	  Show AccurateRip URL.
	* examples/ARcue.py: 	* morituri/common/crc.py: 	* morituri/image/image.py: 	* morituri/test/test_image_image.py: 	  Calculate CDDB disc id. 	  Tested on my Kings Of Leon CD.
doc and cleanup, add getIndex
	* examples/ARcue.py: 	* morituri/image/image.py: 	* morituri/test/test_image_image.py: 	  Add a task to verify a disk image, which also calculates 	  track lengths for tracks the cue file doesn't know the length of.
	* examples/ARcue.py: 	  Add option to run either command-line or gtk.
	* morituri/image/image.py: 	  Create a MultiTask base class, and make AudioRipCRCTask 	  use it.
	* morituri/image/image.py: 	* morituri/test/test_image_image.py: 	  Add a task for calculating frame length of an audio file. 	  Add a test for it.
	* morituri/common/task.py: 	  Schedule the start from the main loop, otherwise the 	  task might complete before we're in the main loop, 	  and then the loop.quit() doesn't work.
some more reorganizing
some more reorganizing
	* examples/ARcue.py: 	* examples/gtkcrc.py: 	  Rework both examples to look more similar.
	* examples/gtkcrc.py: 	* morituri/common/task.py: 	  Move the gtk-based progress bar to task.
	* examples/gtkcrc.py: 	* morituri/common/crc.py: 	* morituri/common/task.py: 	* morituri/image/image.py: 	  Add a 'schedule' call to the TaskRunner class, so that we can 	  abstract things like gobject.timeout_add and reactor.callLater 	  Pass the runner to the task in Task.start() so a task can call 	  schedule.
	* morituri/common/task.py: 	  Update the docs.
ignore more
	* morituri/test/test_image_image.py (added): 	  Add tests for AudioRip CRC'ing images.
	* morituri/test/track-separate.cue (added): 	* morituri/test/track.flac (added): 	* morituri/test/Makefile (added): 	* morituri/test/track-single.cue (added): 	  Add a simple 10 frame flac file, and two .cue files 	  using it.
	* morituri/image/image.py: 	  If paths are relative, make them relative to cue file.
	* morituri/common/task.py: 	  clear with whitespace.
	* examples/ARcue.py: 	* morituri/common/task.py: 	* morituri/image/image.py (added): 	  Add an object for handling an Image based on a .cue file. 	  Create a Task for CRC'ing the whole Image. 	  Make the example use this new task instead.
	* examples/gtkcrc.py: 	* morituri/common/task.py: 	  Add task object to listener interface methods.
	* morituri/common/task.py: 	  Move methods around.
	* examples/ARcue.py: 	* examples/gtkcrc.py: 	* morituri/common/crc.py: 	* morituri/common/task.py: 	  Split out generic task/runner from CRC tasks.
	* morituri/common/crc.py (added): 	  Copy from task.py before splitting.
	* examples/gtkcrc.py: 	* morituri/common/task.py: 	  Don't block the main loop by infinitely scheduling 	  set_state.
	* examples/ARcue.py: 	* examples/gtkcrc.py: 	* morituri/common/task.py: 	  Make a real Task interface and use it. 	  Make runners reusable for multiple tasks. 	  gtkcrc.py seems to be blocking updates however.
	* morituri/test (added): 	* morituri/test/test_image_cue.py (added): 	* morituri/test/kings-single.cue (added): 	* morituri/test/__init__.py (added): 	* morituri/test/kings-separate.cue (added): 	  Add test suite.  Add Kings Of Leon cue files.
	* examples/ARcue.py: 	  Error out when the file doesn't exist. 	* morituri/common/task.py: 	  Drag the lake. 	  Clean up prints.
	* morituri/common/task.py: 	  Remove queue to avoid race. 	  Remove prints. 	  Clean up debug. 	  Update progress after handling buffers.
remove debugging output
	* morituri/common/task.py: 	  Introduce constants for FRAMES_PER_DISC_FRAME 	* examples/ARcue.py: 	  Use the constant. 	  Get the CRC right for the last track too.
	* examples/ARcue.py: 	* morituri/common/task.py: 	  Use an adapter to assemble CD frames. 	  Take into account special rules for first and last track. 	  Mention some bugs. 	  Remember to drag the lake from the task.
	* examples/ARcue.py: 	* morituri/common/task.py: 	  First version that seems to get some AccurateRip checksums right.
add an example calculating crc's from a cue file
add example of crc'ing with gtk progress bar
add sync runner. add error check for not getting all samples.
	* morituri/image/cue.py: 	  publicize CueFile.tracks 	  Add a method to get track lengths 	* examples/readcue.py: 	  Use it.
	* morituri/common/task.py (added): 	  Add a task abstraction.
add code to read cue files
add inits
add example
add header
moap ignore
add morituri
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
X-Git-Refname: refs/heads/master
X-Git-Reftype: branch
X-Git-Oldrev: 462fb04a8bb722a0dd344b5ec2bde956d6281d07
X-Git-Newrev: 52335df43ae26686dbac52aead66eb40c38b34db

The following commit has been merged in the master branch:
commit 6b21916cb480850de2b731cbec7e302120e11a22
Merge: f17c0172f8d84771182ba4cdbaba34fb88f7e6a0 ad42eb8e320100af61fcaad9c0acf15179e99b08
Author: Jonas Smedegaard <dr at jones.dk>
Date:   Thu Jul 17 13:43:19 2014 +0200

    Imported Upstream version 0.2.3

diff --combined INSTALL
index a1e89e1,0000000..007e939
mode 100644,000000..100644
--- a/INSTALL
+++ b/INSTALL
@@@ -1,370 -1,0 +1,370 @@@
 +Installation Instructions
 +*************************
 +
- Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
++Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
 +Inc.
 +
 +   Copying and distribution of this file, with or without modification,
 +are permitted in any medium without royalty provided the copyright
 +notice and this notice are preserved.  This file is offered as-is,
 +without warranty of any kind.
 +
 +Basic Installation
 +==================
 +
 +   Briefly, the shell commands `./configure; make; make install' should
 +configure, build, and install this package.  The following
 +more-detailed instructions are generic; see the `README' file for
 +instructions specific to this package.  Some packages provide this
 +`INSTALL' file but do not implement all of the features documented
 +below.  The lack of an optional feature in a given package is not
 +necessarily a bug.  More recommendations for GNU packages can be found
 +in *note Makefile Conventions: (standards)Makefile Conventions.
 +
 +   The `configure' shell script attempts to guess correct values for
 +various system-dependent variables used during compilation.  It uses
 +those values to create a `Makefile' in each directory of the package.
 +It may also create one or more `.h' files containing system-dependent
 +definitions.  Finally, it creates a shell script `config.status' that
 +you can run in the future to recreate the current configuration, and a
 +file `config.log' containing compiler output (useful mainly for
 +debugging `configure').
 +
 +   It can also use an optional file (typically called `config.cache'
 +and enabled with `--cache-file=config.cache' or simply `-C') that saves
 +the results of its tests to speed up reconfiguring.  Caching is
 +disabled by default to prevent problems with accidental use of stale
 +cache files.
 +
 +   If you need to do unusual things to compile the package, please try
 +to figure out how `configure' could check whether to do them, and mail
 +diffs or instructions to the address given in the `README' so they can
 +be considered for the next release.  If you are using the cache, and at
 +some point `config.cache' contains results you don't want to keep, you
 +may remove or edit it.
 +
 +   The file `configure.ac' (or `configure.in') is used to create
 +`configure' by a program called `autoconf'.  You need `configure.ac' if
 +you want to change it or regenerate `configure' using a newer version
 +of `autoconf'.
 +
 +   The simplest way to compile this package is:
 +
 +  1. `cd' to the directory containing the package's source code and type
 +     `./configure' to configure the package for your system.
 +
 +     Running `configure' might take a while.  While running, it prints
 +     some messages telling which features it is checking for.
 +
 +  2. Type `make' to compile the package.
 +
 +  3. Optionally, type `make check' to run any self-tests that come with
 +     the package, generally using the just-built uninstalled binaries.
 +
 +  4. Type `make install' to install the programs and any data files and
 +     documentation.  When installing into a prefix owned by root, it is
 +     recommended that the package be configured and built as a regular
 +     user, and only the `make install' phase executed with root
 +     privileges.
 +
 +  5. Optionally, type `make installcheck' to repeat any self-tests, but
 +     this time using the binaries in their final installed location.
 +     This target does not install anything.  Running this target as a
 +     regular user, particularly if the prior `make install' required
 +     root privileges, verifies that the installation completed
 +     correctly.
 +
 +  6. You can remove the program binaries and object files from the
 +     source code directory by typing `make clean'.  To also remove the
 +     files that `configure' created (so you can compile the package for
 +     a different kind of computer), type `make distclean'.  There is
 +     also a `make maintainer-clean' target, but that is intended mainly
 +     for the package's developers.  If you use it, you may have to get
 +     all sorts of other programs in order to regenerate files that came
 +     with the distribution.
 +
 +  7. Often, you can also type `make uninstall' to remove the installed
 +     files again.  In practice, not all packages have tested that
 +     uninstallation works correctly, even though it is required by the
 +     GNU Coding Standards.
 +
 +  8. Some packages, particularly those that use Automake, provide `make
 +     distcheck', which can by used by developers to test that all other
 +     targets like `make install' and `make uninstall' work correctly.
 +     This target is generally not run by end users.
 +
 +Compilers and Options
 +=====================
 +
 +   Some systems require unusual options for compilation or linking that
 +the `configure' script does not know about.  Run `./configure --help'
 +for details on some of the pertinent environment variables.
 +
 +   You can give `configure' initial values for configuration parameters
 +by setting variables in the command line or in the environment.  Here
 +is an example:
 +
 +     ./configure CC=c99 CFLAGS=-g LIBS=-lposix
 +
 +   *Note Defining Variables::, for more details.
 +
 +Compiling For Multiple Architectures
 +====================================
 +
 +   You can compile the package for more than one kind of computer at the
 +same time, by placing the object files for each architecture in their
 +own directory.  To do this, you can use GNU `make'.  `cd' to the
 +directory where you want the object files and executables to go and run
 +the `configure' script.  `configure' automatically checks for the
 +source code in the directory that `configure' is in and in `..'.  This
 +is known as a "VPATH" build.
 +
 +   With a non-GNU `make', it is safer to compile the package for one
 +architecture at a time in the source code directory.  After you have
 +installed the package for one architecture, use `make distclean' before
 +reconfiguring for another architecture.
 +
 +   On MacOS X 10.5 and later systems, you can create libraries and
 +executables that work on multiple system types--known as "fat" or
 +"universal" binaries--by specifying multiple `-arch' options to the
 +compiler but only a single `-arch' option to the preprocessor.  Like
 +this:
 +
 +     ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
 +                 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
 +                 CPP="gcc -E" CXXCPP="g++ -E"
 +
 +   This is not guaranteed to produce working output in all cases, you
 +may have to build one architecture at a time and combine the results
 +using the `lipo' tool if you have problems.
 +
 +Installation Names
 +==================
 +
 +   By default, `make install' installs the package's commands under
 +`/usr/local/bin', include files under `/usr/local/include', etc.  You
 +can specify an installation prefix other than `/usr/local' by giving
 +`configure' the option `--prefix=PREFIX', where PREFIX must be an
 +absolute file name.
 +
 +   You can specify separate installation prefixes for
 +architecture-specific files and architecture-independent files.  If you
 +pass the option `--exec-prefix=PREFIX' to `configure', the package uses
 +PREFIX as the prefix for installing programs and libraries.
 +Documentation and other data files still use the regular prefix.
 +
 +   In addition, if you use an unusual directory layout you can give
 +options like `--bindir=DIR' to specify different values for particular
 +kinds of files.  Run `configure --help' for a list of the directories
 +you can set and what kinds of files go in them.  In general, the
 +default for these options is expressed in terms of `${prefix}', so that
 +specifying just `--prefix' will affect all of the other directory
 +specifications that were not explicitly provided.
 +
 +   The most portable way to affect installation locations is to pass the
 +correct locations to `configure'; however, many packages provide one or
 +both of the following shortcuts of passing variable assignments to the
 +`make install' command line to change installation locations without
 +having to reconfigure or recompile.
 +
 +   The first method involves providing an override variable for each
 +affected directory.  For example, `make install
 +prefix=/alternate/directory' will choose an alternate location for all
 +directory configuration variables that were expressed in terms of
 +`${prefix}'.  Any directories that were specified during `configure',
 +but not in terms of `${prefix}', must each be overridden at install
 +time for the entire installation to be relocated.  The approach of
 +makefile variable overrides for each directory variable is required by
 +the GNU Coding Standards, and ideally causes no recompilation.
 +However, some platforms have known limitations with the semantics of
 +shared libraries that end up requiring recompilation when using this
 +method, particularly noticeable in packages that use GNU Libtool.
 +
 +   The second method involves providing the `DESTDIR' variable.  For
 +example, `make install DESTDIR=/alternate/directory' will prepend
 +`/alternate/directory' before all installation names.  The approach of
 +`DESTDIR' overrides is not required by the GNU Coding Standards, and
 +does not work on platforms that have drive letters.  On the other hand,
 +it does better at avoiding recompilation issues, and works well even
 +when some directory options were not specified in terms of `${prefix}'
 +at `configure' time.
 +
 +Optional Features
 +=================
 +
 +   If the package supports it, you can cause programs to be installed
 +with an extra prefix or suffix on their names by giving `configure' the
 +option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
 +
 +   Some packages pay attention to `--enable-FEATURE' options to
 +`configure', where FEATURE indicates an optional part of the package.
 +They may also pay attention to `--with-PACKAGE' options, where PACKAGE
 +is something like `gnu-as' or `x' (for the X Window System).  The
 +`README' should mention any `--enable-' and `--with-' options that the
 +package recognizes.
 +
 +   For packages that use the X Window System, `configure' can usually
 +find the X include and library files automatically, but if it doesn't,
 +you can use the `configure' options `--x-includes=DIR' and
 +`--x-libraries=DIR' to specify their locations.
 +
 +   Some packages offer the ability to configure how verbose the
 +execution of `make' will be.  For these packages, running `./configure
 +--enable-silent-rules' sets the default to minimal output, which can be
 +overridden with `make V=1'; while running `./configure
 +--disable-silent-rules' sets the default to verbose, which can be
 +overridden with `make V=0'.
 +
 +Particular systems
 +==================
 +
 +   On HP-UX, the default C compiler is not ANSI C compatible.  If GNU
 +CC is not installed, it is recommended to use the following options in
 +order to use an ANSI C compiler:
 +
 +     ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
 +
 +and if that doesn't work, install pre-built binaries of GCC for HP-UX.
 +
 +   HP-UX `make' updates targets which have the same time stamps as
 +their prerequisites, which makes it generally unusable when shipped
 +generated files such as `configure' are involved.  Use GNU `make'
 +instead.
 +
 +   On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
 +parse its `<wchar.h>' header file.  The option `-nodtk' can be used as
 +a workaround.  If GNU CC is not installed, it is therefore recommended
 +to try
 +
 +     ./configure CC="cc"
 +
 +and if that doesn't work, try
 +
 +     ./configure CC="cc -nodtk"
 +
 +   On Solaris, don't put `/usr/ucb' early in your `PATH'.  This
 +directory contains several dysfunctional programs; working variants of
 +these programs are available in `/usr/bin'.  So, if you need `/usr/ucb'
 +in your `PATH', put it _after_ `/usr/bin'.
 +
 +   On Haiku, software installed for all users goes in `/boot/common',
 +not `/usr/local'.  It is recommended to use the following options:
 +
 +     ./configure --prefix=/boot/common
 +
 +Specifying the System Type
 +==========================
 +
 +   There may be some features `configure' cannot figure out
 +automatically, but needs to determine by the type of machine the package
 +will run on.  Usually, assuming the package is built to be run on the
 +_same_ architectures, `configure' can figure that out, but if it prints
 +a message saying it cannot guess the machine type, give it the
 +`--build=TYPE' option.  TYPE can either be a short name for the system
 +type, such as `sun4', or a canonical name which has the form:
 +
 +     CPU-COMPANY-SYSTEM
 +
 +where SYSTEM can have one of these forms:
 +
 +     OS
 +     KERNEL-OS
 +
 +   See the file `config.sub' for the possible values of each field.  If
 +`config.sub' isn't included in this package, then this package doesn't
 +need to know the machine type.
 +
 +   If you are _building_ compiler tools for cross-compiling, you should
 +use the option `--target=TYPE' to select the type of system they will
 +produce code for.
 +
 +   If you want to _use_ a cross compiler, that generates code for a
 +platform different from the build platform, you should specify the
 +"host" platform (i.e., that on which the generated programs will
 +eventually be run) with `--host=TYPE'.
 +
 +Sharing Defaults
 +================
 +
 +   If you want to set default values for `configure' scripts to share,
 +you can create a site shell script called `config.site' that gives
 +default values for variables like `CC', `cache_file', and `prefix'.
 +`configure' looks for `PREFIX/share/config.site' if it exists, then
 +`PREFIX/etc/config.site' if it exists.  Or, you can set the
 +`CONFIG_SITE' environment variable to the location of the site script.
 +A warning: not all `configure' scripts look for a site script.
 +
 +Defining Variables
 +==================
 +
 +   Variables not defined in a site shell script can be set in the
 +environment passed to `configure'.  However, some packages may run
 +configure again during the build, and the customized values of these
 +variables may be lost.  In order to avoid this problem, you should set
 +them in the `configure' command line, using `VAR=value'.  For example:
 +
 +     ./configure CC=/usr/local2/bin/gcc
 +
 +causes the specified `gcc' to be used as the C compiler (unless it is
 +overridden in the site shell script).
 +
 +Unfortunately, this technique does not work for `CONFIG_SHELL' due to
- an Autoconf bug.  Until the bug is fixed you can use this workaround:
++an Autoconf limitation.  Until the limitation is lifted, you can use
++this workaround:
 +
-      CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
++     CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
 +
 +`configure' Invocation
 +======================
 +
 +   `configure' recognizes the following options to control how it
 +operates.
 +
 +`--help'
 +`-h'
 +     Print a summary of all of the options to `configure', and exit.
 +
 +`--help=short'
 +`--help=recursive'
 +     Print a summary of the options unique to this package's
 +     `configure', and exit.  The `short' variant lists options used
 +     only in the top level, while the `recursive' variant lists options
 +     also present in any nested packages.
 +
 +`--version'
 +`-V'
 +     Print the version of Autoconf used to generate the `configure'
 +     script, and exit.
 +
 +`--cache-file=FILE'
 +     Enable the cache: use and save the results of the tests in FILE,
 +     traditionally `config.cache'.  FILE defaults to `/dev/null' to
 +     disable caching.
 +
 +`--config-cache'
 +`-C'
 +     Alias for `--cache-file=config.cache'.
 +
 +`--quiet'
 +`--silent'
 +`-q'
 +     Do not print messages saying which checks are being made.  To
 +     suppress all normal output, redirect it to `/dev/null' (any error
 +     messages will still be shown).
 +
 +`--srcdir=DIR'
 +     Look for the package's source code in directory DIR.  Usually
 +     `configure' can determine that directory automatically.
 +
 +`--prefix=DIR'
 +     Use DIR as the installation prefix.  *note Installation Names::
 +     for more details, including other options available for fine-tuning
 +     the installation locations.
 +
 +`--no-create'
 +`-n'
 +     Run the configure checks, but stop before creating any output
 +     files.
 +
 +`configure' also accepts some other, not widely useful, options.  Run
 +`configure --help' for more details.
- 
diff --combined Makefile.in
index 903fd8e,0000000..d34408e
mode 100644,000000..100644
--- a/Makefile.in
+++ b/Makefile.in
@@@ -1,795 -1,0 +1,829 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +
 +# configure.ac needs to AM_CONDITIONAL HAVE_PYCHECKER
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
++    esac; \
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
- DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
- 	$(srcdir)/Makefile.in $(srcdir)/morituri.spec.in \
- 	$(top_srcdir)/configure $(top_srcdir)/m4/pychecker.mk AUTHORS \
- 	COPYING ChangeLog INSTALL NEWS TODO install-sh missing \
++DIST_COMMON = $(top_srcdir)/m4/pychecker.mk INSTALL NEWS README \
++	AUTHORS ChangeLog $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
++	$(top_srcdir)/configure $(am__configure_deps) \
++	$(srcdir)/morituri.spec.in COPYING TODO install-sh missing \
 +	py-compile
 +subdir = .
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
 + configure.lineno config.status.lineno
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES = morituri.spec
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +DIST_SOURCES =
- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- 	html-recursive info-recursive install-data-recursive \
- 	install-dvi-recursive install-exec-recursive \
- 	install-html-recursive install-info-recursive \
- 	install-pdf-recursive install-ps-recursive install-recursive \
- 	installcheck-recursive installdirs-recursive pdf-recursive \
- 	ps-recursive uninstall-recursive
++RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
++	ctags-recursive dvi-recursive html-recursive info-recursive \
++	install-data-recursive install-dvi-recursive \
++	install-exec-recursive install-html-recursive \
++	install-info-recursive install-pdf-recursive \
++	install-ps-recursive install-recursive installcheck-recursive \
++	installdirs-recursive pdf-recursive ps-recursive \
++	tags-recursive uninstall-recursive
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
 +  distclean-recursive maintainer-clean-recursive
- AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
- 	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
- 	distdir dist dist-all distcheck
++am__recursive_targets = \
++  $(RECURSIVE_TARGETS) \
++  $(RECURSIVE_CLEAN_TARGETS) \
++  $(am__extra_recursive_targets)
++AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
++	cscope distdir dist dist-all distcheck
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
++# Read a list of newline-separated strings from the standard input,
++# and print each of them once, without duplicates.  Input order is
++# *not* preserved.
++am__uniquify_input = $(AWK) '\
++  BEGIN { nonempty = 0; } \
++  { items[$$0] = 1; nonempty = 1; } \
++  END { if (nonempty) { for (i in items) print i; }; } \
++'
++# Make sure the list of sources is unique.  This is necessary because,
++# e.g., the same source file might be shared among _SOURCES variables
++# for different programs/libraries.
++am__define_uniq_tagged_files = \
++  list='$(am__tagged_files)'; \
++  unique=`for i in $$list; do \
++    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
++  done | $(am__uniquify_input)`
 +ETAGS = etags
 +CTAGS = ctags
++CSCOPE = cscope
 +DIST_SUBDIRS = $(SUBDIRS)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +distdir = $(PACKAGE)-$(VERSION)
 +top_distdir = $(distdir)
 +am__remove_distdir = \
 +  if test -d "$(distdir)"; then \
 +    find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
 +      && rm -rf "$(distdir)" \
 +      || { sleep 5 && rm -rf "$(distdir)"; }; \
 +  else :; fi
++am__post_remove_distdir = $(am__remove_distdir)
 +am__relativize = \
 +  dir0=`pwd`; \
 +  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
 +  sed_rest='s,^[^/]*/*,,'; \
 +  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
 +  sed_butlast='s,/*[^/]*$$,,'; \
 +  while test -n "$$dir1"; do \
 +    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
 +    if test "$$first" != "."; then \
 +      if test "$$first" = ".."; then \
 +        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
 +        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
 +      else \
 +        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
 +        if test "$$first2" = "$$first"; then \
 +          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
 +        else \
 +          dir2="../$$dir2"; \
 +        fi; \
 +        dir0="$$dir0"/"$$first"; \
 +      fi; \
 +    fi; \
 +    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
 +  done; \
 +  reldir="$$dir2"
 +GZIP_ENV = --best
 +DIST_ARCHIVES = $(distdir).tar.bz2
++DIST_TARGETS = dist-bzip2
 +distuninstallcheck_listfiles = find . -type f -print
 +am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
 +  | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
 +distcleancheck_listfiles = find . -type f -print
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = -I m4
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +
 +# version first -- they are parsed LTR and later options depend on automake 1.8
 +AUTOMAKE_OPTIONS = 1.8 dist-bzip2 no-dist-gzip
 +SUBDIRS = morituri bin etc doc m4 misc
- EXTRA_DIST = morituri.spec morituri.doap RELEASE README HACKING
++EXTRA_DIST = morituri.spec morituri.doap RELEASE README.md HACKING REVISION
 +SOURCES = $(top_srcdir)/morituri/*.py $(top_srcdir)/morituri/*/*.py
 +PYCHECKER_WHITELIST = \
 +	morituri/*.py \
 +	morituri/*/*.py
 +
 +PYCHECKER_BLACKLIST = \
 +	morituri/common/taskgtk.py \
 +	morituri/extern/asyncsub.py \
 +	morituri/extern/log/log.py
 +
 +
 +# include this snippet for the pychecker stuff
 +# Makefile.am needs to define
 +# PYCHECKER_WHITELIST
 +# and
 +# PYCHECKER_BLACKLIST
 +pychecker_setup = `ls $(top_srcdir)/misc/setup.py 2> /dev/null`
 +pychecker_help = `ls $(top_srcdir)/misc/pycheckerhelp.py 2> /dev/null`
 +pychecker = \
 +	pychecker -Q -F misc/pycheckerrc	\
 +	$(pychecker_setup)			\
 +	$(pychecker_help)
 +
 +
 +# during distcheck, we get executed from $(NAME)-$(VERSION)/_build, while
 +# our python sources are one level up.  Figure this out and set a OUR_PATH
 +# this uses Makefile syntax, so we need to protect it from automake
 +thisdir = $(shell basename `pwd`)
 +OUR_PATH = $(if $(subst _build,,$(thisdir)),$(shell pwd),$(shell pwd)/..)
 +pychecker_files = $(filter-out $(PYCHECKER_BLACKLIST),$(wildcard $(PYCHECKER_WHITELIST)))
 +all: all-recursive
 +
 +.SUFFIXES:
 +am--refresh: Makefile
 +	@:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/m4/pychecker.mk $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
 +	      $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
 +		&& exit 0; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    echo ' $(SHELL) ./config.status'; \
 +	    $(SHELL) ./config.status;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
 +	esac;
 +$(top_srcdir)/m4/pychecker.mk:
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	$(SHELL) ./config.status --recheck
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	$(am__cd) $(srcdir) && $(AUTOCONF)
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
 +$(am__aclocal_m4_deps):
 +morituri.spec: $(top_builddir)/config.status $(srcdir)/morituri.spec.in
 +	cd $(top_builddir) && $(SHELL) ./config.status $@
 +
 +# This directory's subdirectories are mostly independent; you can cd
- # into them and run `make' without going through this Makefile.
- # To change the values of `make' variables: instead of editing Makefiles,
- # (1) if the variable is set in `config.status', edit `config.status'
- #     (which will cause the Makefiles to be regenerated when you run `make');
- # (2) otherwise, pass the desired values on the `make' command line.
- $(RECURSIVE_TARGETS):
- 	@fail= failcom='exit 1'; \
- 	for f in x $$MAKEFLAGS; do \
- 	  case $$f in \
- 	    *=* | --[!k]*);; \
- 	    *k*) failcom='fail=yes';; \
- 	  esac; \
- 	done; \
++# into them and run 'make' without going through this Makefile.
++# To change the values of 'make' variables: instead of editing Makefiles,
++# (1) if the variable is set in 'config.status', edit 'config.status'
++#     (which will cause the Makefiles to be regenerated when you run 'make');
++# (2) otherwise, pass the desired values on the 'make' command line.
++$(am__recursive_targets):
++	@fail=; \
++	if $(am__make_keepgoing); then \
++	  failcom='fail=yes'; \
++	else \
++	  failcom='exit 1'; \
++	fi; \
 +	dot_seen=no; \
 +	target=`echo $@ | sed s/-recursive//`; \
- 	list='$(SUBDIRS)'; for subdir in $$list; do \
++	case "$@" in \
++	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
++	  *) list='$(SUBDIRS)' ;; \
++	esac; \
++	for subdir in $$list; do \
 +	  echo "Making $$target in $$subdir"; \
 +	  if test "$$subdir" = "."; then \
 +	    dot_seen=yes; \
 +	    local_target="$$target-am"; \
 +	  else \
 +	    local_target="$$target"; \
 +	  fi; \
 +	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 +	  || eval $$failcom; \
 +	done; \
 +	if test "$$dot_seen" = "no"; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
 +	fi; test -z "$$fail"
 +
- $(RECURSIVE_CLEAN_TARGETS):
- 	@fail= failcom='exit 1'; \
- 	for f in x $$MAKEFLAGS; do \
- 	  case $$f in \
- 	    *=* | --[!k]*);; \
- 	    *k*) failcom='fail=yes';; \
- 	  esac; \
- 	done; \
- 	dot_seen=no; \
- 	case "$@" in \
- 	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- 	  *) list='$(SUBDIRS)' ;; \
- 	esac; \
- 	rev=''; for subdir in $$list; do \
- 	  if test "$$subdir" = "."; then :; else \
- 	    rev="$$subdir $$rev"; \
- 	  fi; \
- 	done; \
- 	rev="$$rev ."; \
- 	target=`echo $@ | sed s/-recursive//`; \
- 	for subdir in $$rev; do \
- 	  echo "Making $$target in $$subdir"; \
- 	  if test "$$subdir" = "."; then \
- 	    local_target="$$target-am"; \
- 	  else \
- 	    local_target="$$target"; \
- 	  fi; \
- 	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- 	  || eval $$failcom; \
- 	done && test -z "$$fail"
- tags-recursive:
- 	list='$(SUBDIRS)'; for subdir in $$list; do \
- 	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
- 	done
- ctags-recursive:
- 	list='$(SUBDIRS)'; for subdir in $$list; do \
- 	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
- 	done
++ID: $(am__tagged_files)
++	$(am__define_uniq_tagged_files); mkid -fID $$unique
++tags: tags-recursive
++TAGS: tags
 +
- ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- 	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- 	unique=`for i in $$list; do \
- 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- 	  done | \
- 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
- 	mkid -fID $$unique
- tags: TAGS
- 
- TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
- 		$(TAGS_FILES) $(LISP)
++tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
 +	set x; \
 +	here=`pwd`; \
 +	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 +	  include_option=--etags-include; \
 +	  empty_fix=.; \
 +	else \
 +	  include_option=--include; \
 +	  empty_fix=; \
 +	fi; \
 +	list='$(SUBDIRS)'; for subdir in $$list; do \
 +	  if test "$$subdir" = .; then :; else \
 +	    test ! -f $$subdir/TAGS || \
 +	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 +	  fi; \
 +	done; \
- 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
- 	unique=`for i in $$list; do \
- 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- 	  done | \
- 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
++	$(am__define_uniq_tagged_files); \
 +	shift; \
 +	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 +	  test -n "$$unique" || unique=$$empty_fix; \
 +	  if test $$# -gt 0; then \
 +	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
 +	      "$$@" $$unique; \
 +	  else \
 +	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
 +	      $$unique; \
 +	  fi; \
 +	fi
- ctags: CTAGS
- CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
- 		$(TAGS_FILES) $(LISP)
- 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
- 	unique=`for i in $$list; do \
- 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- 	  done | \
- 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
++ctags: ctags-recursive
++
++CTAGS: ctags
++ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
++	$(am__define_uniq_tagged_files); \
 +	test -z "$(CTAGS_ARGS)$$unique" \
 +	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
 +	     $$unique
 +
 +GTAGS:
 +	here=`$(am__cd) $(top_builddir) && pwd` \
 +	  && $(am__cd) $(top_srcdir) \
 +	  && gtags -i $(GTAGS_ARGS) "$$here"
++cscope: cscope.files
++	test ! -s cscope.files \
++	  || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
++clean-cscope:
++	-rm -f cscope.files
++cscope.files: clean-cscope cscopelist
++cscopelist: cscopelist-recursive
++
++cscopelist-am: $(am__tagged_files)
++	list='$(am__tagged_files)'; \
++	case "$(srcdir)" in \
++	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
++	  *) sdir=$(subdir)/$(srcdir) ;; \
++	esac; \
++	for i in $$list; do \
++	  if test -f "$$i"; then \
++	    echo "$(subdir)/$$i"; \
++	  else \
++	    echo "$$sdir/$$i"; \
++	  fi; \
++	done >> $(top_builddir)/cscope.files
 +
 +distclean-tags:
 +	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
++	-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
 +
 +distdir: $(DISTFILES)
 +	$(am__remove_distdir)
 +	test -d "$(distdir)" || mkdir "$(distdir)"
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 +	  if test "$$subdir" = .; then :; else \
 +	    $(am__make_dryrun) \
 +	      || test -d "$(distdir)/$$subdir" \
 +	      || $(MKDIR_P) "$(distdir)/$$subdir" \
 +	      || exit 1; \
 +	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
 +	    $(am__relativize); \
 +	    new_distdir=$$reldir; \
 +	    dir1=$$subdir; dir2="$(top_distdir)"; \
 +	    $(am__relativize); \
 +	    new_top_distdir=$$reldir; \
 +	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
 +	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
 +	    ($(am__cd) $$subdir && \
 +	      $(MAKE) $(AM_MAKEFLAGS) \
 +	        top_distdir="$$new_top_distdir" \
 +	        distdir="$$new_distdir" \
 +		am__remove_distdir=: \
 +		am__skip_length_check=: \
 +		am__skip_mode_fix=: \
 +	        distdir) \
 +	      || exit 1; \
 +	  fi; \
 +	done
 +	-test -n "$(am__skip_mode_fix)" \
 +	|| find "$(distdir)" -type d ! -perm -755 \
 +		-exec chmod u+rwx,go+rx {} \; -o \
 +	  ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
 +	  ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
 +	  ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
 +	|| chmod -R a+r "$(distdir)"
 +dist-gzip: distdir
 +	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
- 	$(am__remove_distdir)
++	$(am__post_remove_distdir)
 +dist-bzip2: distdir
 +	tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
- 	$(am__remove_distdir)
++	$(am__post_remove_distdir)
 +
 +dist-lzip: distdir
 +	tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
- 	$(am__remove_distdir)
- 
- dist-lzma: distdir
- 	tardir=$(distdir) && $(am__tar) | lzma -9 -c >$(distdir).tar.lzma
- 	$(am__remove_distdir)
++	$(am__post_remove_distdir)
 +
 +dist-xz: distdir
 +	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
- 	$(am__remove_distdir)
++	$(am__post_remove_distdir)
 +
 +dist-tarZ: distdir
 +	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
- 	$(am__remove_distdir)
++	$(am__post_remove_distdir)
 +
 +dist-shar: distdir
 +	shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
- 	$(am__remove_distdir)
++	$(am__post_remove_distdir)
 +
 +dist-zip: distdir
 +	-rm -f $(distdir).zip
 +	zip -rq $(distdir).zip $(distdir)
- 	$(am__remove_distdir)
++	$(am__post_remove_distdir)
 +
- dist dist-all: distdir
- 	tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
- 	$(am__remove_distdir)
++dist dist-all:
++	$(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
++	$(am__post_remove_distdir)
 +
 +# This target untars the dist file and tries a VPATH configuration.  Then
 +# it guarantees that the distribution is self-contained by making another
 +# tarfile.
 +distcheck: dist
 +	case '$(DIST_ARCHIVES)' in \
 +	*.tar.gz*) \
 +	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\
 +	*.tar.bz2*) \
 +	  bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
- 	*.tar.lzma*) \
- 	  lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
 +	*.tar.lz*) \
 +	  lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
 +	*.tar.xz*) \
 +	  xz -dc $(distdir).tar.xz | $(am__untar) ;;\
 +	*.tar.Z*) \
 +	  uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
 +	*.shar.gz*) \
 +	  GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\
 +	*.zip*) \
 +	  unzip $(distdir).zip ;;\
 +	esac
- 	chmod -R a-w $(distdir); chmod u+w $(distdir)
- 	mkdir $(distdir)/_build
- 	mkdir $(distdir)/_inst
++	chmod -R a-w $(distdir)
++	chmod u+w $(distdir)
++	mkdir $(distdir)/_build $(distdir)/_inst
 +	chmod a-w $(distdir)
 +	test -d $(distdir)/_build || exit 0; \
 +	dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
 +	  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
 +	  && am__cwd=`pwd` \
 +	  && $(am__cd) $(distdir)/_build \
 +	  && ../configure --srcdir=.. --prefix="$$dc_install_base" \
 +	    $(AM_DISTCHECK_CONFIGURE_FLAGS) \
 +	    $(DISTCHECK_CONFIGURE_FLAGS) \
 +	  && $(MAKE) $(AM_MAKEFLAGS) \
 +	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
 +	  && $(MAKE) $(AM_MAKEFLAGS) check \
 +	  && $(MAKE) $(AM_MAKEFLAGS) install \
 +	  && $(MAKE) $(AM_MAKEFLAGS) installcheck \
 +	  && $(MAKE) $(AM_MAKEFLAGS) uninstall \
 +	  && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
 +	        distuninstallcheck \
 +	  && chmod -R a-w "$$dc_install_base" \
 +	  && ({ \
 +	       (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
 +	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
 +	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
 +	       && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
 +	            distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
 +	      } || { rm -rf "$$dc_destdir"; exit 1; }) \
 +	  && rm -rf "$$dc_destdir" \
 +	  && $(MAKE) $(AM_MAKEFLAGS) dist \
 +	  && rm -rf $(DIST_ARCHIVES) \
 +	  && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
 +	  && cd "$$am__cwd" \
 +	  || exit 1
- 	$(am__remove_distdir)
++	$(am__post_remove_distdir)
 +	@(echo "$(distdir) archives ready for distribution: "; \
 +	  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
 +	  sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
 +distuninstallcheck:
 +	@test -n '$(distuninstallcheck_dir)' || { \
 +	  echo 'ERROR: trying to run $@ with an empty' \
 +	       '$$(distuninstallcheck_dir)' >&2; \
 +	  exit 1; \
 +	}; \
 +	$(am__cd) '$(distuninstallcheck_dir)' || { \
 +	  echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
 +	  exit 1; \
 +	}; \
 +	test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
 +	   || { echo "ERROR: files left after uninstall:" ; \
 +	        if test -n "$(DESTDIR)"; then \
 +	          echo "  (check DESTDIR support)"; \
 +	        fi ; \
 +	        $(distuninstallcheck_listfiles) ; \
 +	        exit 1; } >&2
 +distcleancheck: distclean
 +	@if test '$(srcdir)' = . ; then \
 +	  echo "ERROR: distcleancheck can only run from a VPATH build" ; \
 +	  exit 1 ; \
 +	fi
 +	@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
 +	  || { echo "ERROR: files left in build directory after distclean:" ; \
 +	       $(distcleancheck_listfiles) ; \
 +	       exit 1; } >&2
 +check-am: all-am
 +check: check-recursive
- all-am: Makefile
++all-am: Makefile all-local
 +installdirs: installdirs-recursive
 +installdirs-am:
 +install: install-recursive
 +install-exec: install-exec-recursive
 +install-data: install-data-recursive
 +uninstall: uninstall-recursive
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-recursive
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-recursive
 +
 +clean-am: clean-generic clean-local mostlyclean-am
 +
 +distclean: distclean-recursive
 +	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic distclean-tags
 +
 +dvi: dvi-recursive
 +
 +dvi-am:
 +
 +html: html-recursive
 +
 +html-am:
 +
 +info: info-recursive
 +
 +info-am:
 +
 +install-data-am:
 +
 +install-dvi: install-dvi-recursive
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-recursive
 +
 +install-html-am:
 +
 +install-info: install-info-recursive
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-recursive
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-recursive
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-recursive
 +	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
 +	-rm -rf $(top_srcdir)/autom4te.cache
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-recursive
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-recursive
 +
 +pdf-am:
 +
 +ps: ps-recursive
 +
 +ps-am:
 +
 +uninstall-am:
 +
- .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
- 	install-am install-strip tags-recursive
++.MAKE: $(am__recursive_targets) install-am install-strip
 +
- .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- 	all all-am am--refresh check check-am clean clean-generic \
- 	clean-local ctags ctags-recursive dist dist-all dist-bzip2 \
- 	dist-gzip dist-lzip dist-lzma dist-shar dist-tarZ dist-xz \
++.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am all-local \
++	am--refresh check check-am clean clean-cscope clean-generic \
++	clean-local cscope cscopelist-am ctags ctags-am dist dist-all \
++	dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ dist-xz \
 +	dist-zip distcheck distclean distclean-generic distclean-tags \
 +	distcleancheck distdir distuninstallcheck dvi dvi-am html \
 +	html-am info info-am install install-am install-data \
 +	install-data-am install-dvi install-dvi-am install-exec \
 +	install-exec-am install-html install-html-am install-info \
 +	install-info-am install-man install-pdf install-pdf-am \
 +	install-ps install-ps-am install-strip installcheck \
 +	installcheck-am installdirs installdirs-am maintainer-clean \
 +	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
- 	pdf-am ps ps-am tags tags-recursive uninstall uninstall-am
++	pdf-am ps ps-am tags tags-am uninstall uninstall-am
 +
 +
 +check: pychecker check-python
 +
 +check-python:
 +	PYTHONPATH=$(PYTHONPATH):$(top_srcdir) trial morituri.test
 +
 +_trial_temp/coverage: $(top_srcdir)/morituri/*.py $(top_srcdir)/morituri/*/*.py
 +	trial --coverage morituri.test
 +
 +coverage: _trial_temp/coverage
- 	python misc/show-coverage.py `ls _trial_temp/coverage/morituri* | grep -v morituri.test | grep -v morituri.extern`
++	$(PYTHON) misc/show-coverage.py `ls _trial_temp/coverage/morituri* | grep -v morituri.test | grep -v morituri.extern`
 +
 +pep8:
- 	for file in $(SOURCES); do python misc/pep8.py --repeat $$file; done
++	for file in $(SOURCES); do $(PYTHON) misc/pep8.py --repeat $$file; done
 +
 +clean-local:
 +	@rm -rf _trial_temp
 +
 +release: dist
 +	make $(PACKAGE)-$(VERSION).tar.bz2.md5
 +
++REVISION: $(top_srcdir)/.git morituri/common/common.py
++	$(PYTHON) -c 'from morituri.configure import configure; print configure.revision' > REVISION
++
 +# generate md5 sum files
 +%.md5: %
 +	md5sum $< > $@
 +
 + at HAVE_PYCHECKER_TRUE@check-local-pychecker: pychecker
 + at HAVE_PYCHECKER_FALSE@check-local-pychecker:
 + at HAVE_PYCHECKER_FALSE@	echo "Pychecker not found, passing"
 +
 +# we redirect stderr so we don't get messages like
 +# warning: couldn't find real module for class SSL.Error (module name: SSL)
 +# which can't be turned off in pychecker
 +pycheckersplit:
 +	@echo running pychecker on each file ...
 +	@for file in $(pychecker_all_files)
 +	do \
 +		$(pychecker) $$file > /dev/null 2>&1			\
 +		if test $$? -ne 0; then 				\
 +			echo "Error on $$file";				\
 +			$(pychecker) $$file; break			\
 +		fi							\
 +	done
 +
 +pychecker: 
 +	@echo running pychecker ...
 +	@$(pychecker) $(pychecker_files) 2>/dev/null || make pycheckerverbose
 +
 +pycheckerverbose:
 +	@echo "running pychecker (verbose) ..."
 +	$(pychecker) --limit 1000 $(pychecker_files)
 +
++all-local:
++	if test -e $(top_srcdir)/.git; then make REVISION; fi
++
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined README
index 6946f0e,42061c0..eb13ad8
mode 100644,120000..100644
--- a/README
+++ b/README
@@@ -1,142 -1,1 +1,172 @@@
 -README.md
 +morituri is a CD ripper aiming for accuracy over speed.
 +Its features are modeled to compare with Exact Audio Copy on Windows.
 +
 +
 +RATIONALE
 +---------
- For a more detailed rationale, see my wiki page 'The Art of the Rip'
- at https://thomas.apestaart.org/thomas/trac/wiki/DAD/Rip
++For a more detailed rationale, see my wiki page ['The Art of the Rip'](
++https://thomas.apestaart.org/thomas/trac/wiki/DAD/Rip).
 +
 +FEATURES
 +--------
 +* support for MusicBrainz for metadata lookup
 +* support for AccurateRip verification
 +* detects sample read offset and ability to defeat cache of drives
 +* performs test and copy rip
 +* detects and rips Hidden Track One Audio
 +* templates for file and directory naming
 +* support for lossless encoding and lossy encoding or re-encoding of images
 +* tagging using GStreamer, including embedding MusicBrainz id's
 +* retagging of images
 +* plugins for logging
 +* for now, only a command line client (rip) is shipped
 +
 +REQUIREMENTS
 +------------
 +- cdparanoia, for the actual ripping
 +- cdrdao, for session, TOC, pregap, and ISRC extraction
 +- GStreamer and its python bindings, for encoding
 +  - gst-plugins-base >= 0.10.22 for appsink
 +- python musicbrainz2, for metadata lookup
++- python-setuptools, for plugin support
++- python-cddb, for showing but not using disc info if not in musicbrainz
 +- pycdio, for drive identification (optional)
 +
 +GETTING MORITURI
 +----------------
 +If you are building from a source tarball or checkout, you can choose to
 +use morituri installed or uninstalled.
 +
 +- getting:
-   - Change to a directory where you want to put the morituri source code
-     (For example, $HOME/dev/ext or $HOME/prefix/src)
-   - source: download tarball, unpack, and change to its directory
-   - checkout:
-     git clone git://github.com/thomasvs/morituri.git
-     cd morituri
-     ./autogen.sh
++    - Change to a directory where you want to put the morituri source code
++      (For example, `$HOME/dev/ext` or `$HOME/prefix/src`)
++    - source: download tarball, unpack, and change to its directory
++    - checkout:
++
++            git clone git://github.com/thomasvs/morituri.git
++            cd morituri
++            git submodule init
++            git submodule update
++            ./autogen.sh
 +
 +- building:
-   ./configure
-   make
++
++        ./configure
++        make
 +
 +- you can now choose to install it or run it uninstalled.
-   - installing:
-     make install
-   - running uninstalled:
-     ln -sf `pwd`/misc/morituri-uninstalled $HOME/bin/morituri-git
-     morituri-git
-     (this drops you in a shell where everything is set up to use morituri)
++
++    - installing:
++
++            make install
++
++    - running uninstalled:
++
++            ln -sf `pwd`/misc/morituri-uninstalled $HOME/bin/morituri-git
++            morituri-git  # this drops you in a shell where everything is set up to use morituri
 +
 +RUNNING MORITURI
 +----------------
 +morituri currently only has a command-line interface called 'rip'
 +
 +rip is self-documenting.
- rip -h gives you the basic instructions.
++`rip -h` gives you the basic instructions.
 +
 +rip implements a tree of commands; for example, the top-level 'changelog'
 +command has a number of sub-commands.
 +
 +Positioning of arguments is important;
-   rip cd -d (device) rip
++
++    rip cd -d (device) rip
++
 +is correct, while
-   rip cd rip -d (device)
- is not, because the -d argument applies to the rip command.
++
++    rip cd rip -d (device)
++
++is not, because the `-d` argument applies to the rip command.
 +
 +Check the man page (rip(1)) for more information.
 +
++
++RUNNING UNINSTALLED
++-------------------
++
++To make it easier for developers, you can run morituri straight from the
++source checkout:
++
++    ./autogen.sh
++    make
++    misc/morituri-uninstalled
++
 +GETTING STARTED
 +---------------
 +The simplest way to get started making accurate rips is:
 +
 +- pick a relatively popular CD that has a good change of being in the
 +  AccurateRip database
 +- find the drive's offset by running
-   rip offset find
++
++        rip offset find
++
 +- wait for it to complete; this might take a while
 +- optionally, confirm this offset with two more discs
 +- analyze the drive's caching behaviour
-   rip drive analyze
- - rip the disc by running
-   rip cd rip --offset (the number you got before)
++
++        rip drive analyze
++
++- rip the disc by running one of
++
++        rip cd rip  # uses the offset from configuration file
++        rip cd rip --offset (the number you got before)  # manually specified offset
 +
 +FILING BUGS
 +-----------
- morituri's bug tracker is at https://thomas.apestaart.org/morituri/trac/
++morituri's bug tracker is at [https://thomas.apestaart.org/morituri/trac/](
++https://thomas.apestaart.org/morituri/trac/).
 +When filing bugs, please run the failing command with the environment variable
- RIP_DEBUG set; for example:
++`RIP_DEBUG` set; for example:
 +
-   RIP_DEBUG=5 rip offset find > morituri.log 2>&1
-   gzip morituri.log
++    RIP_DEBUG=5 rip offset find > morituri.log 2>&1
++    gzip morituri.log
 +
 +And attach the gzipped log file to your bug report.
 +
 +KNOWN ISSUES
 +------------
 +- no GUI yet
 +
 +GOALS
 +-----
 +- quality over speed
 +- support one-command automatic ripping
 +- support offline ripping (doing metadata lookup and log rewriting later)
 +  - separate the info/result about the rip from the metadata/file generation/...
 +
++CONFIGURATION FILE
++------------------
++
++The configuration file is stored according to [XDG Base Directory Specification](
++http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html)
++when possible.
++
++It lives in `$XDG_CONFIG_HOME/morituri/morituri.conf`
++
++The configuration file follows python's ConfigParser syntax.
++There is a "main" section and zero or more sections starting with "drive:"
++
++- main section:
++  - `path_filter_fat`: whether to filter path components for FAT file systems
++  - `path_filter_special`: whether to filter path components for special
++                           characters
++
++- drive section:
++  All these values are probed by morituri and should not be edited by hand.
++  - `defeats_cache`: whether this drive can defeat the audio cache
++  - `read_offset`: the read offset of the drive
++
++CONTRIBUTING
++------------
++- Please send pull requests through github.
++- You can always [flattr morituri to donate](https://flattr.com/submit/auto?%20%20user_id=thomasvs&url=https://thomas.apestaart.org/morituri/trac/&%20%20title=morituri&%20%20description=morituri&%20%20language=en_GB&tags=flattr,morituri,software&category=software)
++
 +
- rip command tree
- ----------------
- rip
-   accurip
-     show
-       show accuraterip data
-   offset
-     find
-       find drive's read offset using AccurateRip
-     verify
-       verify drive's read offset using AccurateRip
-   cd
-     rip
-       rip the cd
-   debug
-     encode
-       encode a file
-   htoa
-     find
-     rip
-       rip the htoa if it's there
-   image
-     verify
-       verify the cd image
-     encode
-       encode to a different codec
-     retag
-       retag the image with current MusicBrainz data
diff --combined REVISION
index 0000000,0000000..d61adab
new file mode 100644
--- /dev/null
+++ b/REVISION
@@@ -1,0 -1,0 +1,1 @@@
++v0.2.3-modified
diff --combined aclocal.m4
index dd3eb88,0000000..b53a1d1
mode 100644,000000..100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@@ -1,696 -1,0 +1,1014 @@@
- # generated automatically by aclocal 1.11.6 -*- Autoconf -*-
++# generated automatically by aclocal 1.13.4 -*- Autoconf -*-
++
++# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 +
- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- # 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
- # Inc.
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
++m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
 +m4_ifndef([AC_AUTOCONF_VERSION],
 +  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
- m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
- [m4_warning([this file was generated for autoconf 2.68.
++m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
++[m4_warning([this file was generated for autoconf 2.69.
 +You have another version of autoconf.  It may work, but is not guaranteed to.
 +If you have problems, you may need to regenerate the build system entirely.
- To do so, use the procedure documented by the package, typically `autoreconf'.])])
++To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 +
- # Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 2002-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 1
- 
 +# AM_AUTOMAKE_VERSION(VERSION)
 +# ----------------------------
 +# Automake X.Y traces this macro to ensure aclocal.m4 has been
 +# generated from the m4 files accompanying Automake X.Y.
 +# (This private macro should not be called outside this file.)
 +AC_DEFUN([AM_AUTOMAKE_VERSION],
- [am__api_version='1.11'
++[am__api_version='1.13'
 +dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 +dnl require some minimum version.  Point them to the right macro.
- m4_if([$1], [1.11.6], [],
++m4_if([$1], [1.13.4], [],
 +      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 +])
 +
 +# _AM_AUTOCONF_VERSION(VERSION)
 +# -----------------------------
 +# aclocal traces this macro to find the Autoconf version.
 +# This is a private macro too.  Using m4_define simplifies
 +# the logic in aclocal, which can simply ignore this definition.
 +m4_define([_AM_AUTOCONF_VERSION], [])
 +
 +# AM_SET_CURRENT_AUTOMAKE_VERSION
 +# -------------------------------
 +# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 +# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 +AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
- [AM_AUTOMAKE_VERSION([1.11.6])dnl
++[AM_AUTOMAKE_VERSION([1.13.4])dnl
 +m4_ifndef([AC_AUTOCONF_VERSION],
 +  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 +_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 +
 +# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 +
- # Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
++# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 1
- 
 +# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
- # $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
- # `$srcdir', `$srcdir/..', or `$srcdir/../..'.
++# $ac_aux_dir to '$srcdir/foo'.  In other projects, it is set to
++# '$srcdir', '$srcdir/..', or '$srcdir/../..'.
 +#
 +# Of course, Automake must honor this variable whenever it calls a
 +# tool from the auxiliary directory.  The problem is that $srcdir (and
 +# therefore $ac_aux_dir as well) can be either absolute or relative,
 +# depending on how configure is run.  This is pretty annoying, since
 +# it makes $ac_aux_dir quite unusable in subdirectories: in the top
 +# source directory, any form will work fine, but in subdirectories a
 +# relative path needs to be adjusted first.
 +#
 +# $ac_aux_dir/missing
 +#    fails when called from a subdirectory if $ac_aux_dir is relative
 +# $top_srcdir/$ac_aux_dir/missing
 +#    fails if $ac_aux_dir is absolute,
 +#    fails when called from a subdirectory in a VPATH build with
 +#          a relative $ac_aux_dir
 +#
 +# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
 +# are both prefixed by $srcdir.  In an in-source build this is usually
- # harmless because $srcdir is `.', but things will broke when you
++# harmless because $srcdir is '.', but things will broke when you
 +# start a VPATH build or use an absolute $srcdir.
 +#
 +# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
 +# iff we strip the leading $srcdir from $ac_aux_dir.  That would be:
 +#   am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
 +# and then we would define $MISSING as
 +#   MISSING="\${SHELL} $am_aux_dir/missing"
 +# This will work as long as MISSING is not called from configure, because
 +# unfortunately $(top_srcdir) has no meaning in configure.
 +# However there are other variables, like CC, which are often used in
 +# configure, and could therefore not use this "fixed" $ac_aux_dir.
 +#
 +# Another solution, used here, is to always expand $ac_aux_dir to an
 +# absolute PATH.  The drawback is that using absolute paths prevent a
 +# configured tree to be moved without reconfiguration.
 +
 +AC_DEFUN([AM_AUX_DIR_EXPAND],
 +[dnl Rely on autoconf to set up CDPATH properly.
 +AC_PREREQ([2.50])dnl
 +# expand $ac_aux_dir to an absolute path
 +am_aux_dir=`cd $ac_aux_dir && pwd`
 +])
 +
 +# AM_CONDITIONAL                                            -*- Autoconf -*-
 +
- # Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005, 2006, 2008
- # Free Software Foundation, Inc.
++# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 9
- 
 +# AM_CONDITIONAL(NAME, SHELL-CONDITION)
 +# -------------------------------------
 +# Define a conditional.
 +AC_DEFUN([AM_CONDITIONAL],
- [AC_PREREQ(2.52)dnl
-  ifelse([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
- 	[$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
++[AC_PREREQ([2.52])dnl
++ m4_if([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
++       [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
 +AC_SUBST([$1_TRUE])dnl
 +AC_SUBST([$1_FALSE])dnl
 +_AM_SUBST_NOTMAKE([$1_TRUE])dnl
 +_AM_SUBST_NOTMAKE([$1_FALSE])dnl
 +m4_define([_AM_COND_VALUE_$1], [$2])dnl
 +if $2; then
 +  $1_TRUE=
 +  $1_FALSE='#'
 +else
 +  $1_TRUE='#'
 +  $1_FALSE=
 +fi
 +AC_CONFIG_COMMANDS_PRE(
 +[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
 +  AC_MSG_ERROR([[conditional "$1" was never defined.
 +Usually this means the macro was only invoked conditionally.]])
 +fi])])
 +
 +# Do all the work for Automake.                             -*- Autoconf -*-
 +
- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- # 2005, 2006, 2008, 2009 Free Software Foundation, Inc.
++# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 16
- 
 +# This macro actually does too much.  Some checks are only needed if
 +# your package does certain things.  But this isn't really a big deal.
 +
 +# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
 +# AM_INIT_AUTOMAKE([OPTIONS])
 +# -----------------------------------------------
 +# The call with PACKAGE and VERSION arguments is the old style
 +# call (pre autoconf-2.50), which is being phased out.  PACKAGE
 +# and VERSION should now be passed to AC_INIT and removed from
 +# the call to AM_INIT_AUTOMAKE.
 +# We support both call styles for the transition.  After
 +# the next Automake release, Autoconf can make the AC_INIT
 +# arguments mandatory, and then we can depend on a new Autoconf
 +# release and drop the old call support.
 +AC_DEFUN([AM_INIT_AUTOMAKE],
- [AC_PREREQ([2.62])dnl
++[AC_PREREQ([2.65])dnl
 +dnl Autoconf wants to disallow AM_ names.  We explicitly allow
 +dnl the ones we care about.
 +m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
 +AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
 +AC_REQUIRE([AC_PROG_INSTALL])dnl
 +if test "`cd $srcdir && pwd`" != "`pwd`"; then
 +  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
 +  # is not polluted with repeated "-I."
 +  AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
 +  # test to see if srcdir already configured
 +  if test -f $srcdir/config.status; then
 +    AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
 +  fi
 +fi
 +
 +# test whether we have cygpath
 +if test -z "$CYGPATH_W"; then
 +  if (cygpath --version) >/dev/null 2>/dev/null; then
 +    CYGPATH_W='cygpath -w'
 +  else
 +    CYGPATH_W=echo
 +  fi
 +fi
 +AC_SUBST([CYGPATH_W])
 +
 +# Define the identity of the package.
 +dnl Distinguish between old-style and new-style calls.
 +m4_ifval([$2],
- [m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
++[AC_DIAGNOSE([obsolete],
++             [$0: two- and three-arguments forms are deprecated.])
++m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
 + AC_SUBST([PACKAGE], [$1])dnl
 + AC_SUBST([VERSION], [$2])],
 +[_AM_SET_OPTIONS([$1])dnl
 +dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
- m4_if(m4_ifdef([AC_PACKAGE_NAME], 1)m4_ifdef([AC_PACKAGE_VERSION], 1), 11,,
++m4_if(
++  m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
++  [ok:ok],,
 +  [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
 + AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
 + AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
 +
 +_AM_IF_OPTION([no-define],,
- [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
-  AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
++[AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
++ AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
 +
 +# Some tools Automake needs.
 +AC_REQUIRE([AM_SANITY_CHECK])dnl
 +AC_REQUIRE([AC_ARG_PROGRAM])dnl
- AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
- AM_MISSING_PROG(AUTOCONF, autoconf)
- AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
- AM_MISSING_PROG(AUTOHEADER, autoheader)
- AM_MISSING_PROG(MAKEINFO, makeinfo)
++AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
++AM_MISSING_PROG([AUTOCONF], [autoconf])
++AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
++AM_MISSING_PROG([AUTOHEADER], [autoheader])
++AM_MISSING_PROG([MAKEINFO], [makeinfo])
 +AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
 +AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
- AC_REQUIRE([AM_PROG_MKDIR_P])dnl
++AC_REQUIRE([AC_PROG_MKDIR_P])dnl
++# For better backward compatibility.  To be removed once Automake 1.9.x
++# dies out for good.  For more background, see:
++# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
++# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
++AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
 +# We need awk for the "check" target.  The system "awk" is bad on
 +# some platforms.
 +AC_REQUIRE([AC_PROG_AWK])dnl
 +AC_REQUIRE([AC_PROG_MAKE_SET])dnl
 +AC_REQUIRE([AM_SET_LEADING_DOT])dnl
 +_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
 +	      [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
 +			     [_AM_PROG_TAR([v7])])])
 +_AM_IF_OPTION([no-dependencies],,
 +[AC_PROVIDE_IFELSE([AC_PROG_CC],
- 		  [_AM_DEPENDENCIES(CC)],
- 		  [define([AC_PROG_CC],
- 			  defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
++		  [_AM_DEPENDENCIES([CC])],
++		  [m4_define([AC_PROG_CC],
++			     m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
 +AC_PROVIDE_IFELSE([AC_PROG_CXX],
- 		  [_AM_DEPENDENCIES(CXX)],
- 		  [define([AC_PROG_CXX],
- 			  defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
++		  [_AM_DEPENDENCIES([CXX])],
++		  [m4_define([AC_PROG_CXX],
++			     m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
 +AC_PROVIDE_IFELSE([AC_PROG_OBJC],
- 		  [_AM_DEPENDENCIES(OBJC)],
- 		  [define([AC_PROG_OBJC],
- 			  defn([AC_PROG_OBJC])[_AM_DEPENDENCIES(OBJC)])])dnl
++		  [_AM_DEPENDENCIES([OBJC])],
++		  [m4_define([AC_PROG_OBJC],
++			     m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
++AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
++		  [_AM_DEPENDENCIES([OBJCXX])],
++		  [m4_define([AC_PROG_OBJCXX],
++			     m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
 +])
- _AM_IF_OPTION([silent-rules], [AC_REQUIRE([AM_SILENT_RULES])])dnl
- dnl The `parallel-tests' driver may need to know about EXEEXT, so add the
- dnl `am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This macro
- dnl is hooked onto _AC_COMPILER_EXEEXT early, see below.
++AC_REQUIRE([AM_SILENT_RULES])dnl
++dnl The testsuite driver may need to know about EXEEXT, so add the
++dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This
++dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
 +AC_CONFIG_COMMANDS_PRE(dnl
 +[m4_provide_if([_AM_COMPILER_EXEEXT],
 +  [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
 +])
 +
- dnl Hook into `_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
++dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
 +dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
 +dnl mangled by Autoconf and run in a shell conditional statement.
 +m4_define([_AC_COMPILER_EXEEXT],
 +m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
 +
 +
 +# When config.status generates a header, we must update the stamp-h file.
 +# This file resides in the same directory as the config header
 +# that is generated.  The stamp files are numbered to have different names.
 +
 +# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
 +# loop where config.status creates the headers, so we can generate
 +# our stamp files there.
 +AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
 +[# Compute $1's index in $config_headers.
 +_am_arg=$1
 +_am_stamp_count=1
 +for _am_header in $config_headers :; do
 +  case $_am_header in
 +    $_am_arg | $_am_arg:* )
 +      break ;;
 +    * )
 +      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
 +  esac
 +done
 +echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 +
- # Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation,
- # Inc.
++# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 1
- 
 +# AM_PROG_INSTALL_SH
 +# ------------------
 +# Define $install_sh.
 +AC_DEFUN([AM_PROG_INSTALL_SH],
 +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 +if test x"${install_sh}" != xset; then
 +  case $am_aux_dir in
 +  *\ * | *\	*)
 +    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
 +  *)
 +    install_sh="\${SHELL} $am_aux_dir/install-sh"
 +  esac
 +fi
- AC_SUBST(install_sh)])
++AC_SUBST([install_sh])])
 +
- # Copyright (C) 2003, 2005  Free Software Foundation, Inc.
++# Copyright (C) 2003-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 2
- 
 +# Check whether the underlying file-system supports filenames
 +# with a leading dot.  For instance MS-DOS doesn't.
 +AC_DEFUN([AM_SET_LEADING_DOT],
 +[rm -rf .tst 2>/dev/null
 +mkdir .tst 2>/dev/null
 +if test -d .tst; then
 +  am__leading_dot=.
 +else
 +  am__leading_dot=_
 +fi
 +rmdir .tst 2>/dev/null
 +AC_SUBST([am__leading_dot])])
 +
 +# Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 +# From Jim Meyering
 +
- # Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008,
- # 2011 Free Software Foundation, Inc.
++# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 5
- 
 +# AM_MAINTAINER_MODE([DEFAULT-MODE])
 +# ----------------------------------
 +# Control maintainer-specific portions of Makefiles.
- # Default is to disable them, unless `enable' is passed literally.
- # For symmetry, `disable' may be passed as well.  Anyway, the user
++# Default is to disable them, unless 'enable' is passed literally.
++# For symmetry, 'disable' may be passed as well.  Anyway, the user
 +# can override the default with the --enable/--disable switch.
 +AC_DEFUN([AM_MAINTAINER_MODE],
 +[m4_case(m4_default([$1], [disable]),
 +       [enable], [m4_define([am_maintainer_other], [disable])],
 +       [disable], [m4_define([am_maintainer_other], [enable])],
 +       [m4_define([am_maintainer_other], [enable])
 +        m4_warn([syntax], [unexpected argument to AM@&t at _MAINTAINER_MODE: $1])])
 +AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
 +  dnl maintainer-mode's default is 'disable' unless 'enable' is passed
 +  AC_ARG_ENABLE([maintainer-mode],
- [  --][am_maintainer_other][-maintainer-mode  am_maintainer_other make rules and dependencies not useful
- 			  (and sometimes confusing) to the casual installer],
-       [USE_MAINTAINER_MODE=$enableval],
-       [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
++    [AS_HELP_STRING([--]am_maintainer_other[-maintainer-mode],
++      am_maintainer_other[ make rules and dependencies not useful
++      (and sometimes confusing) to the casual installer])],
++    [USE_MAINTAINER_MODE=$enableval],
++    [USE_MAINTAINER_MODE=]m4_if(am_maintainer_other, [enable], [no], [yes]))
 +  AC_MSG_RESULT([$USE_MAINTAINER_MODE])
 +  AM_CONDITIONAL([MAINTAINER_MODE], [test $USE_MAINTAINER_MODE = yes])
 +  MAINT=$MAINTAINER_MODE_TRUE
 +  AC_SUBST([MAINT])dnl
 +]
 +)
 +
- AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])
- 
 +# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 +
- # Copyright (C) 1997, 1999, 2000, 2001, 2003, 2004, 2005, 2008
- # Free Software Foundation, Inc.
++# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 6
- 
 +# AM_MISSING_PROG(NAME, PROGRAM)
 +# ------------------------------
 +AC_DEFUN([AM_MISSING_PROG],
 +[AC_REQUIRE([AM_MISSING_HAS_RUN])
 +$1=${$1-"${am_missing_run}$2"}
 +AC_SUBST($1)])
 +
- 
 +# AM_MISSING_HAS_RUN
 +# ------------------
- # Define MISSING if not defined so far and test if it supports --run.
- # If it does, set am_missing_run to use it, otherwise, to nothing.
++# Define MISSING if not defined so far and test if it is modern enough.
++# If it is, set am_missing_run to use it, otherwise, to nothing.
 +AC_DEFUN([AM_MISSING_HAS_RUN],
 +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 +AC_REQUIRE_AUX_FILE([missing])dnl
 +if test x"${MISSING+set}" != xset; then
 +  case $am_aux_dir in
 +  *\ * | *\	*)
 +    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
 +  *)
 +    MISSING="\${SHELL} $am_aux_dir/missing" ;;
 +  esac
 +fi
 +# Use eval to expand $SHELL
- if eval "$MISSING --run true"; then
-   am_missing_run="$MISSING --run "
++if eval "$MISSING --is-lightweight"; then
++  am_missing_run="$MISSING "
 +else
 +  am_missing_run=
-   AC_MSG_WARN([`missing' script is too old or missing])
++  AC_MSG_WARN(['missing' script is too old or missing])
 +fi
 +])
 +
- # Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation,
- # Inc.
- #
- # This file is free software; the Free Software Foundation
- # gives unlimited permission to copy and/or distribute it,
- # with or without modifications, as long as this notice is preserved.
- 
- # serial 1
- 
- # AM_PROG_MKDIR_P
- # ---------------
- # Check for `mkdir -p'.
- AC_DEFUN([AM_PROG_MKDIR_P],
- [AC_PREREQ([2.60])dnl
- AC_REQUIRE([AC_PROG_MKDIR_P])dnl
- dnl Automake 1.8 to 1.9.6 used to define mkdir_p.  We now use MKDIR_P,
- dnl while keeping a definition of mkdir_p for backward compatibility.
- dnl @MKDIR_P@ is magic: AC_OUTPUT adjusts its value for each Makefile.
- dnl However we cannot define mkdir_p as $(MKDIR_P) for the sake of
- dnl Makefile.ins that do not define MKDIR_P, so we do our own
- dnl adjustment using top_builddir (which is defined more often than
- dnl MKDIR_P).
- AC_SUBST([mkdir_p], ["$MKDIR_P"])dnl
- case $mkdir_p in
-   [[\\/$]]* | ?:[[\\/]]*) ;;
-   */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
- esac
- ])
- 
 +# Helper functions for option handling.                     -*- Autoconf -*-
 +
- # Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software
- # Foundation, Inc.
++# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 5
- 
 +# _AM_MANGLE_OPTION(NAME)
 +# -----------------------
 +AC_DEFUN([_AM_MANGLE_OPTION],
 +[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
 +
 +# _AM_SET_OPTION(NAME)
 +# --------------------
 +# Set option NAME.  Presently that only means defining a flag for this option.
 +AC_DEFUN([_AM_SET_OPTION],
- [m4_define(_AM_MANGLE_OPTION([$1]), 1)])
++[m4_define(_AM_MANGLE_OPTION([$1]), [1])])
 +
 +# _AM_SET_OPTIONS(OPTIONS)
 +# ------------------------
 +# OPTIONS is a space-separated list of Automake options.
 +AC_DEFUN([_AM_SET_OPTIONS],
 +[m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
 +
 +# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
 +# -------------------------------------------
 +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
 +AC_DEFUN([_AM_IF_OPTION],
 +[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 +
- # Check to make sure that the build environment is sane.    -*- Autoconf -*-
++# Copyright (C) 1999-2013 Free Software Foundation, Inc.
++#
++# This file is free software; the Free Software Foundation
++# gives unlimited permission to copy and/or distribute it,
++# with or without modifications, as long as this notice is preserved.
++
++
++# AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
++# ---------------------------------------------------------------------------
++# Adds support for distributing Python modules and packages.  To
++# install modules, copy them to $(pythondir), using the python_PYTHON
++# automake variable.  To install a package with the same name as the
++# automake package, install to $(pkgpythondir), or use the
++# pkgpython_PYTHON automake variable.
++#
++# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as
++# locations to install python extension modules (shared libraries).
++# Another macro is required to find the appropriate flags to compile
++# extension modules.
++#
++# If your package is configured with a different prefix to python,
++# users will have to add the install directory to the PYTHONPATH
++# environment variable, or create a .pth file (see the python
++# documentation for details).
++#
++# If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will
++# cause an error if the version of python installed on the system
++# doesn't meet the requirement.  MINIMUM-VERSION should consist of
++# numbers and dots only.
++AC_DEFUN([AM_PATH_PYTHON],
++ [
++  dnl Find a Python interpreter.  Python versions prior to 2.0 are not
++  dnl supported. (2.0 was released on October 16, 2000).
++  m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
++[python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7 dnl
++ python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0])
++
++  AC_ARG_VAR([PYTHON], [the Python interpreter])
++
++  m4_if([$1],[],[
++    dnl No version check is needed.
++    # Find any Python interpreter.
++    if test -z "$PYTHON"; then
++      AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :)
++    fi
++    am_display_PYTHON=python
++  ], [
++    dnl A version check is needed.
++    if test -n "$PYTHON"; then
++      # If the user set $PYTHON, use it and don't search something else.
++      AC_MSG_CHECKING([whether $PYTHON version is >= $1])
++      AM_PYTHON_CHECK_VERSION([$PYTHON], [$1],
++			      [AC_MSG_RESULT([yes])],
++			      [AC_MSG_RESULT([no])
++			       AC_MSG_ERROR([Python interpreter is too old])])
++      am_display_PYTHON=$PYTHON
++    else
++      # Otherwise, try each interpreter until we find one that satisfies
++      # VERSION.
++      AC_CACHE_CHECK([for a Python interpreter with version >= $1],
++	[am_cv_pathless_PYTHON],[
++	for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do
++	  test "$am_cv_pathless_PYTHON" = none && break
++	  AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break])
++	done])
++      # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
++      if test "$am_cv_pathless_PYTHON" = none; then
++	PYTHON=:
++      else
++        AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON])
++      fi
++      am_display_PYTHON=$am_cv_pathless_PYTHON
++    fi
++  ])
++
++  if test "$PYTHON" = :; then
++  dnl Run any user-specified action, or abort.
++    m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])
++  else
++
++  dnl Query Python for its version number.  Getting [:3] seems to be
++  dnl the best way to do this; it's what "site.py" does in the standard
++  dnl library.
++
++  AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
++    [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`])
++  AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
++
++  dnl Use the values of $prefix and $exec_prefix for the corresponding
++  dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX.  These are made
++  dnl distinct variables so they can be overridden if need be.  However,
++  dnl general consensus is that you shouldn't need this ability.
++
++  AC_SUBST([PYTHON_PREFIX], ['${prefix}'])
++  AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
++
++  dnl At times (like when building shared libraries) you may want
++  dnl to know which OS platform Python thinks this is.
++
++  AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform],
++    [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`])
++  AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
++
++  # Just factor out some code duplication.
++  am_python_setup_sysconfig="\
++import sys
++# Prefer sysconfig over distutils.sysconfig, for better compatibility
++# with python 3.x.  See automake bug#10227.
++try:
++    import sysconfig
++except ImportError:
++    can_use_sysconfig = 0
++else:
++    can_use_sysconfig = 1
++# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs:
++# <https://github.com/pypa/virtualenv/issues/118>
++try:
++    from platform import python_implementation
++    if python_implementation() == 'CPython' and sys.version[[:3]] == '2.7':
++        can_use_sysconfig = 0
++except ImportError:
++    pass"
++
++  dnl Set up 4 directories:
++
++  dnl pythondir -- where to install python scripts.  This is the
++  dnl   site-packages directory, not the python standard library
++  dnl   directory like in previous automake betas.  This behavior
++  dnl   is more consistent with lispdir.m4 for example.
++  dnl Query distutils for this directory.
++  AC_CACHE_CHECK([for $am_display_PYTHON script directory],
++    [am_cv_python_pythondir],
++    [if test "x$prefix" = xNONE
++     then
++       am_py_prefix=$ac_default_prefix
++     else
++       am_py_prefix=$prefix
++     fi
++     am_cv_python_pythondir=`$PYTHON -c "
++$am_python_setup_sysconfig
++if can_use_sysconfig:
++    sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
++else:
++    from distutils import sysconfig
++    sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
++sys.stdout.write(sitedir)"`
++     case $am_cv_python_pythondir in
++     $am_py_prefix*)
++       am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
++       am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
++       ;;
++     *)
++       case $am_py_prefix in
++         /usr|/System*) ;;
++         *)
++	  am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
++	  ;;
++       esac
++       ;;
++     esac
++    ])
++  AC_SUBST([pythondir], [$am_cv_python_pythondir])
++
++  dnl pkgpythondir -- $PACKAGE directory under pythondir.  Was
++  dnl   PYTHON_SITE_PACKAGE in previous betas, but this naming is
++  dnl   more consistent with the rest of automake.
++
++  AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
++
++  dnl pyexecdir -- directory for installing python extension modules
++  dnl   (shared libraries)
++  dnl Query distutils for this directory.
++  AC_CACHE_CHECK([for $am_display_PYTHON extension module directory],
++    [am_cv_python_pyexecdir],
++    [if test "x$exec_prefix" = xNONE
++     then
++       am_py_exec_prefix=$am_py_prefix
++     else
++       am_py_exec_prefix=$exec_prefix
++     fi
++     am_cv_python_pyexecdir=`$PYTHON -c "
++$am_python_setup_sysconfig
++if can_use_sysconfig:
++    sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
++else:
++    from distutils import sysconfig
++    sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
++sys.stdout.write(sitedir)"`
++     case $am_cv_python_pyexecdir in
++     $am_py_exec_prefix*)
++       am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
++       am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
++       ;;
++     *)
++       case $am_py_exec_prefix in
++         /usr|/System*) ;;
++         *)
++	   am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
++	   ;;
++       esac
++       ;;
++     esac
++    ])
++  AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir])
++
++  dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE)
++
++  AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
++
++  dnl Run any user-specified action.
++  $2
++  fi
++
++])
 +
- # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005, 2008
- # Free Software Foundation, Inc.
++
++# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
++# ---------------------------------------------------------------------------
++# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION.
++# Run ACTION-IF-FALSE otherwise.
++# This test uses sys.hexversion instead of the string equivalent (first
++# word of sys.version), in order to cope with versions such as 2.2c1.
++# This supports Python 2.0 or higher. (2.0 was released on October 16, 2000).
++AC_DEFUN([AM_PYTHON_CHECK_VERSION],
++ [prog="import sys
++# split strings by '.' and convert to numeric.  Append some zeros
++# because we need at least 4 digits for the hex conversion.
++# map returns an iterator in Python 3.0 and a list in 2.x
++minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]]
++minverhex = 0
++# xrange is not present in Python 3.0 and range returns an iterator
++for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]]
++sys.exit(sys.hexversion < minverhex)"
++  AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
++
++# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 5
++# AM_RUN_LOG(COMMAND)
++# -------------------
++# Run COMMAND, save the exit status in ac_status, and log it.
++# (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
++AC_DEFUN([AM_RUN_LOG],
++[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
++   ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
++   ac_status=$?
++   echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
++   (exit $ac_status); }])
++
++# Check to make sure that the build environment is sane.    -*- Autoconf -*-
++
++# Copyright (C) 1996-2013 Free Software Foundation, Inc.
++#
++# This file is free software; the Free Software Foundation
++# gives unlimited permission to copy and/or distribute it,
++# with or without modifications, as long as this notice is preserved.
 +
 +# AM_SANITY_CHECK
 +# ---------------
 +AC_DEFUN([AM_SANITY_CHECK],
 +[AC_MSG_CHECKING([whether build environment is sane])
- # Just in case
- sleep 1
- echo timestamp > conftest.file
 +# Reject unsafe characters in $srcdir or the absolute working directory
 +# name.  Accept space and tab only in the latter.
 +am_lf='
 +'
 +case `pwd` in
 +  *[[\\\"\#\$\&\'\`$am_lf]]*)
 +    AC_MSG_ERROR([unsafe absolute working directory name]);;
 +esac
 +case $srcdir in
 +  *[[\\\"\#\$\&\'\`$am_lf\ \	]]*)
-     AC_MSG_ERROR([unsafe srcdir value: `$srcdir']);;
++    AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
 +esac
 +
- # Do `set' in a subshell so we don't clobber the current shell's
++# Do 'set' in a subshell so we don't clobber the current shell's
 +# arguments.  Must try -L first in case configure is actually a
 +# symlink; some systems play weird games with the mod time of symlinks
 +# (eg FreeBSD returns the mod time of the symlink's containing
 +# directory).
 +if (
-    set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-    if test "$[*]" = "X"; then
-       # -L didn't work.
-       set X `ls -t "$srcdir/configure" conftest.file`
-    fi
-    rm -f conftest.file
-    if test "$[*]" != "X $srcdir/configure conftest.file" \
-       && test "$[*]" != "X conftest.file $srcdir/configure"; then
- 
-       # If neither matched, then we have a broken ls.  This can happen
-       # if, for instance, CONFIG_SHELL is bash and it inherits a
-       # broken ls alias from the environment.  This has actually
-       # happened.  Such a system could not be considered "sane".
-       AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
- alias in your environment])
-    fi
- 
++   am_has_slept=no
++   for am_try in 1 2; do
++     echo "timestamp, slept: $am_has_slept" > conftest.file
++     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
++     if test "$[*]" = "X"; then
++	# -L didn't work.
++	set X `ls -t "$srcdir/configure" conftest.file`
++     fi
++     if test "$[*]" != "X $srcdir/configure conftest.file" \
++	&& test "$[*]" != "X conftest.file $srcdir/configure"; then
++
++	# If neither matched, then we have a broken ls.  This can happen
++	# if, for instance, CONFIG_SHELL is bash and it inherits a
++	# broken ls alias from the environment.  This has actually
++	# happened.  Such a system could not be considered "sane".
++	AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
++  alias in your environment])
++     fi
++     if test "$[2]" = conftest.file || test $am_try -eq 2; then
++       break
++     fi
++     # Just in case.
++     sleep 1
++     am_has_slept=yes
++   done
 +   test "$[2]" = conftest.file
 +   )
 +then
 +   # Ok.
 +   :
 +else
 +   AC_MSG_ERROR([newly created file is older than distributed files!
 +Check your system clock])
 +fi
- AC_MSG_RESULT(yes)])
++AC_MSG_RESULT([yes])
++# If we didn't sleep, we still need to ensure time stamps of config.status and
++# generated files are strictly newer.
++am_sleep_pid=
++if grep 'slept: no' conftest.file >/dev/null 2>&1; then
++  ( sleep 1 ) &
++  am_sleep_pid=$!
++fi
++AC_CONFIG_COMMANDS_PRE(
++  [AC_MSG_CHECKING([that generated files are newer than configure])
++   if test -n "$am_sleep_pid"; then
++     # Hide warnings about reused PIDs.
++     wait $am_sleep_pid 2>/dev/null
++   fi
++   AC_MSG_RESULT([done])])
++rm -f conftest.file
++])
 +
- # Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
++# Copyright (C) 2009-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 1
++# AM_SILENT_RULES([DEFAULT])
++# --------------------------
++# Enable less verbose build rules; with the default set to DEFAULT
++# ("yes" being less verbose, "no" or empty being verbose).
++AC_DEFUN([AM_SILENT_RULES],
++[AC_ARG_ENABLE([silent-rules], [dnl
++AS_HELP_STRING(
++  [--enable-silent-rules],
++  [less verbose build output (undo: "make V=1")])
++AS_HELP_STRING(
++  [--disable-silent-rules],
++  [verbose build output (undo: "make V=0")])dnl
++])
++case $enable_silent_rules in @%:@ (((
++  yes) AM_DEFAULT_VERBOSITY=0;;
++   no) AM_DEFAULT_VERBOSITY=1;;
++    *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
++esac
++dnl
++dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
++dnl do not support nested variable expansions.
++dnl See automake bug#9928 and bug#10237.
++am_make=${MAKE-make}
++AC_CACHE_CHECK([whether $am_make supports nested variables],
++   [am_cv_make_support_nested_variables],
++   [if AS_ECHO([['TRUE=$(BAR$(V))
++BAR0=false
++BAR1=true
++V=1
++am__doit:
++	@$(TRUE)
++.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
++  am_cv_make_support_nested_variables=yes
++else
++  am_cv_make_support_nested_variables=no
++fi])
++if test $am_cv_make_support_nested_variables = yes; then
++  dnl Using '$V' instead of '$(V)' breaks IRIX make.
++  AM_V='$(V)'
++  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
++else
++  AM_V=$AM_DEFAULT_VERBOSITY
++  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
++fi
++AC_SUBST([AM_V])dnl
++AM_SUBST_NOTMAKE([AM_V])dnl
++AC_SUBST([AM_DEFAULT_V])dnl
++AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
++AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
++AM_BACKSLASH='\'
++AC_SUBST([AM_BACKSLASH])dnl
++_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
++])
++
++# Copyright (C) 2001-2013 Free Software Foundation, Inc.
++#
++# This file is free software; the Free Software Foundation
++# gives unlimited permission to copy and/or distribute it,
++# with or without modifications, as long as this notice is preserved.
 +
 +# AM_PROG_INSTALL_STRIP
 +# ---------------------
- # One issue with vendor `install' (even GNU) is that you can't
++# One issue with vendor 'install' (even GNU) is that you can't
 +# specify the program used to strip binaries.  This is especially
 +# annoying in cross-compiling environments, where the build's strip
 +# is unlikely to handle the host's binaries.
 +# Fortunately install-sh will honor a STRIPPROG variable, so we
- # always use install-sh in `make install-strip', and initialize
++# always use install-sh in "make install-strip", and initialize
 +# STRIPPROG with the value of the STRIP variable (set by the user).
 +AC_DEFUN([AM_PROG_INSTALL_STRIP],
 +[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
- # Installed binaries are usually stripped using `strip' when the user
- # run `make install-strip'.  However `strip' might not be the right
++# Installed binaries are usually stripped using 'strip' when the user
++# run "make install-strip".  However 'strip' might not be the right
 +# tool to use in cross-compilation environments, therefore Automake
- # will honor the `STRIP' environment variable to overrule this program.
- dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
++# will honor the 'STRIP' environment variable to overrule this program.
++dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
 +if test "$cross_compiling" != no; then
 +  AC_CHECK_TOOL([STRIP], [strip], :)
 +fi
 +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 +AC_SUBST([INSTALL_STRIP_PROGRAM])])
 +
- # Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc.
++# Copyright (C) 2006-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 3
- 
 +# _AM_SUBST_NOTMAKE(VARIABLE)
 +# ---------------------------
 +# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
 +# This macro is traced by Automake.
 +AC_DEFUN([_AM_SUBST_NOTMAKE])
 +
 +# AM_SUBST_NOTMAKE(VARIABLE)
 +# --------------------------
 +# Public sister of _AM_SUBST_NOTMAKE.
 +AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 +
 +# Check how to create a tarball.                            -*- Autoconf -*-
 +
- # Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc.
++# Copyright (C) 2004-2013 Free Software Foundation, Inc.
 +#
 +# This file is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
- # serial 2
- 
 +# _AM_PROG_TAR(FORMAT)
 +# --------------------
 +# Check how to create a tarball in format FORMAT.
- # FORMAT should be one of `v7', `ustar', or `pax'.
++# FORMAT should be one of 'v7', 'ustar', or 'pax'.
 +#
 +# Substitute a variable $(am__tar) that is a command
 +# writing to stdout a FORMAT-tarball containing the directory
 +# $tardir.
 +#     tardir=directory && $(am__tar) > result.tar
 +#
 +# Substitute a variable $(am__untar) that extract such
 +# a tarball read from stdin.
 +#     $(am__untar) < result.tar
++#
 +AC_DEFUN([_AM_PROG_TAR],
 +[# Always define AMTAR for backward compatibility.  Yes, it's still used
 +# in the wild :-(  We should find a proper way to deprecate it ...
 +AC_SUBST([AMTAR], ['$${TAR-tar}'])
- m4_if([$1], [v7],
-      [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
-      [m4_case([$1], [ustar],, [pax],,
-               [m4_fatal([Unknown tar format])])
- AC_MSG_CHECKING([how to create a $1 tar archive])
- # Loop over all known methods to create a tar archive until one works.
- _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
- _am_tools=${am_cv_prog_tar_$1-$_am_tools}
- # Do not fold the above two line into one, because Tru64 sh and
- # Solaris sh will not grok spaces in the rhs of `-'.
- for _am_tool in $_am_tools
- do
-   case $_am_tool in
-   gnutar)
-     for _am_tar in tar gnutar gtar;
-     do
-       AM_RUN_LOG([$_am_tar --version]) && break
-     done
-     am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
-     am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
-     am__untar="$_am_tar -xf -"
-     ;;
-   plaintar)
-     # Must skip GNU tar: if it does not support --format= it doesn't create
-     # ustar tarball either.
-     (tar --version) >/dev/null 2>&1 && continue
-     am__tar='tar chf - "$$tardir"'
-     am__tar_='tar chf - "$tardir"'
-     am__untar='tar xf -'
-     ;;
-   pax)
-     am__tar='pax -L -x $1 -w "$$tardir"'
-     am__tar_='pax -L -x $1 -w "$tardir"'
-     am__untar='pax -r'
-     ;;
-   cpio)
-     am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
-     am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
-     am__untar='cpio -i -H $1 -d'
-     ;;
-   none)
-     am__tar=false
-     am__tar_=false
-     am__untar=false
-     ;;
-   esac
 +
-   # If the value was cached, stop now.  We just wanted to have am__tar
-   # and am__untar set.
-   test -n "${am_cv_prog_tar_$1}" && break
++# We'll loop over all known methods to create a tar archive until one works.
++_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
 +
-   # tar/untar a dummy directory, and stop if the command works
-   rm -rf conftest.dir
-   mkdir conftest.dir
-   echo GrepMe > conftest.dir/file
-   AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
++m4_if([$1], [v7],
++  [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
++
++  [m4_case([$1],
++    [ustar],
++     [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
++      # There is notably a 21 bits limit for the UID and the GID.  In fact,
++      # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
++      # and bug#13588).
++      am_max_uid=2097151 # 2^21 - 1
++      am_max_gid=$am_max_uid
++      # The $UID and $GID variables are not portable, so we need to resort
++      # to the POSIX-mandated id(1) utility.  Errors in the 'id' calls
++      # below are definitely unexpected, so allow the users to see them
++      # (that is, avoid stderr redirection).
++      am_uid=`id -u || echo unknown`
++      am_gid=`id -g || echo unknown`
++      AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
++      if test $am_uid -le $am_max_uid; then
++         AC_MSG_RESULT([yes])
++      else
++         AC_MSG_RESULT([no])
++         _am_tools=none
++      fi
++      AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
++      if test $am_gid -le $am_max_gid; then
++         AC_MSG_RESULT([yes])
++      else
++        AC_MSG_RESULT([no])
++        _am_tools=none
++      fi],
++
++  [pax],
++    [],
++
++  [m4_fatal([Unknown tar format])])
++
++  AC_MSG_CHECKING([how to create a $1 tar archive])
++
++  # Go ahead even if we have the value already cached.  We do so because we
++  # need to set the values for the 'am__tar' and 'am__untar' variables.
++  _am_tools=${am_cv_prog_tar_$1-$_am_tools}
++
++  for _am_tool in $_am_tools; do
++    case $_am_tool in
++    gnutar)
++      for _am_tar in tar gnutar gtar; do
++        AM_RUN_LOG([$_am_tar --version]) && break
++      done
++      am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
++      am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
++      am__untar="$_am_tar -xf -"
++      ;;
++    plaintar)
++      # Must skip GNU tar: if it does not support --format= it doesn't create
++      # ustar tarball either.
++      (tar --version) >/dev/null 2>&1 && continue
++      am__tar='tar chf - "$$tardir"'
++      am__tar_='tar chf - "$tardir"'
++      am__untar='tar xf -'
++      ;;
++    pax)
++      am__tar='pax -L -x $1 -w "$$tardir"'
++      am__tar_='pax -L -x $1 -w "$tardir"'
++      am__untar='pax -r'
++      ;;
++    cpio)
++      am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
++      am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
++      am__untar='cpio -i -H $1 -d'
++      ;;
++    none)
++      am__tar=false
++      am__tar_=false
++      am__untar=false
++      ;;
++    esac
++
++    # If the value was cached, stop now.  We just wanted to have am__tar
++    # and am__untar set.
++    test -n "${am_cv_prog_tar_$1}" && break
++
++    # tar/untar a dummy directory, and stop if the command works.
++    rm -rf conftest.dir
++    mkdir conftest.dir
++    echo GrepMe > conftest.dir/file
++    AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
++    rm -rf conftest.dir
++    if test -s conftest.tar; then
++      AM_RUN_LOG([$am__untar <conftest.tar])
++      AM_RUN_LOG([cat conftest.dir/file])
++      grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
++    fi
++  done
 +  rm -rf conftest.dir
-   if test -s conftest.tar; then
-     AM_RUN_LOG([$am__untar <conftest.tar])
-     grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
-   fi
- done
- rm -rf conftest.dir
 +
- AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
- AC_MSG_RESULT([$am_cv_prog_tar_$1])])
++  AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
++  AC_MSG_RESULT([$am_cv_prog_tar_$1])])
++
 +AC_SUBST([am__tar])
 +AC_SUBST([am__untar])
 +]) # _AM_PROG_TAR
 +
 +m4_include([m4/as-ac-expand.m4])
- m4_include([m4/as-python.m4])
 +m4_include([m4/as-version.m4])
diff --combined bin/Makefile.in
index 7145e11,0000000..ad6552c
mode 100644,000000..100644
--- a/bin/Makefile.in
+++ b/bin/Makefile.in
@@@ -1,421 -1,0 +1,463 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = bin
- DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
 +	$(srcdir)/rip.in
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES = rip
 +CONFIG_CLEAN_VPATH_FILES =
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +am__installdirs = "$(DESTDIR)$(bindir)"
 +SCRIPTS = $(bin_SCRIPTS)
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +bin_SCRIPTS = rip
 +EXTRA_DIST = rip.in
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu bin/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu bin/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +rip: $(top_builddir)/config.status $(srcdir)/rip.in
 +	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 +install-binSCRIPTS: $(bin_SCRIPTS)
 +	@$(NORMAL_INSTALL)
 +	@list='$(bin_SCRIPTS)'; test -n "$(bindir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
 +	  if test -f "$$d$$p"; then echo "$$d$$p"; echo "$$p"; else :; fi; \
 +	done | \
 +	sed -e 'p;s,.*/,,;n' \
 +	    -e 'h;s|.*|.|' \
 +	    -e 'p;x;s,.*/,,;$(transform)' | sed 'N;N;N;s,\n, ,g' | \
 +	$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1; } \
 +	  { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
 +	    if ($$2 == $$4) { files[d] = files[d] " " $$1; \
 +	      if (++n[d] == $(am__install_max)) { \
 +		print "f", d, files[d]; n[d] = 0; files[d] = "" } } \
 +	    else { print "f", d "/" $$4, $$1 } } \
 +	  END { for (d in files) print "f", d, files[d] }' | \
 +	while read type dir files; do \
 +	     if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
 +	     test -z "$$files" || { \
 +	       echo " $(INSTALL_SCRIPT) $$files '$(DESTDIR)$(bindir)$$dir'"; \
 +	       $(INSTALL_SCRIPT) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
 +	     } \
 +	; done
 +
 +uninstall-binSCRIPTS:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(bin_SCRIPTS)'; test -n "$(bindir)" || exit 0; \
 +	files=`for p in $$list; do echo "$$p"; done | \
 +	       sed -e 's,.*/,,;$(transform)'`; \
 +	dir='$(DESTDIR)$(bindir)'; $(am__uninstall_files_from_dir)
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
 +all-am: Makefile $(SCRIPTS)
 +installdirs:
 +	for dir in "$(DESTDIR)$(bindir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am:
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am: install-binSCRIPTS
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am: uninstall-binSCRIPTS
 +
 +.MAKE: install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-binSCRIPTS install-data \
- 	install-data-am install-dvi install-dvi-am install-exec \
- 	install-exec-am install-html install-html-am install-info \
- 	install-info-am install-man install-pdf install-pdf-am \
- 	install-ps install-ps-am install-strip installcheck \
- 	installcheck-am installdirs maintainer-clean \
++.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
++	ctags-am distclean distclean-generic distdir dvi dvi-am html \
++	html-am info info-am install install-am install-binSCRIPTS \
++	install-data install-data-am install-dvi install-dvi-am \
++	install-exec install-exec-am install-html install-html-am \
++	install-info install-info-am install-man install-pdf \
++	install-pdf-am install-ps install-ps-am install-strip \
++	installcheck installcheck-am installdirs maintainer-clean \
 +	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
- 	pdf-am ps ps-am uninstall uninstall-am uninstall-binSCRIPTS
++	pdf-am ps ps-am tags-am uninstall uninstall-am \
++	uninstall-binSCRIPTS
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined configure
index ba93e9b,0000000..b9643c1
mode 100755,000000..100755
--- a/configure
+++ b/configure
@@@ -1,3830 -1,0 +1,4067 @@@
 +#! /bin/sh
 +# Guess values for system-dependent variables and create Makefiles.
- # Generated by GNU Autoconf 2.68 for morituri 0.2.0.
++# Generated by GNU Autoconf 2.69 for morituri 0.2.3.
 +#
 +# Report bugs to <http://thomas.apestaart.org/morituri/trac/newticket>.
 +#
 +#
- # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
- # 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
- # Foundation, Inc.
++# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
 +#
 +#
 +# This configure script is free software; the Free Software Foundation
 +# gives unlimited permission to copy, distribute and modify it.
 +## -------------------- ##
 +## M4sh Initialization. ##
 +## -------------------- ##
 +
 +# Be more Bourne compatible
 +DUALCASE=1; export DUALCASE # for MKS sh
 +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
 +  emulate sh
 +  NULLCMD=:
 +  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
 +  # is contrary to our usage.  Disable this feature.
 +  alias -g '${1+"$@"}'='"$@"'
 +  setopt NO_GLOB_SUBST
 +else
 +  case `(set -o) 2>/dev/null` in #(
 +  *posix*) :
 +    set -o posix ;; #(
 +  *) :
 +     ;;
 +esac
 +fi
 +
 +
 +as_nl='
 +'
 +export as_nl
 +# Printing a long string crashes Solaris 7 /usr/bin/printf.
 +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
 +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
 +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
 +# Prefer a ksh shell builtin over an external printf program on Solaris,
 +# but without wasting forks for bash or zsh.
 +if test -z "$BASH_VERSION$ZSH_VERSION" \
 +    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
 +  as_echo='print -r --'
 +  as_echo_n='print -rn --'
 +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
 +  as_echo='printf %s\n'
 +  as_echo_n='printf %s'
 +else
 +  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
 +    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
 +    as_echo_n='/usr/ucb/echo -n'
 +  else
 +    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
 +    as_echo_n_body='eval
 +      arg=$1;
 +      case $arg in #(
 +      *"$as_nl"*)
 +	expr "X$arg" : "X\\(.*\\)$as_nl";
 +	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
 +      esac;
 +      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
 +    '
 +    export as_echo_n_body
 +    as_echo_n='sh -c $as_echo_n_body as_echo'
 +  fi
 +  export as_echo_body
 +  as_echo='sh -c $as_echo_body as_echo'
 +fi
 +
 +# The user is always right.
 +if test "${PATH_SEPARATOR+set}" != set; then
 +  PATH_SEPARATOR=:
 +  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
 +    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
 +      PATH_SEPARATOR=';'
 +  }
 +fi
 +
 +
 +# IFS
 +# We need space, tab and new line, in precisely that order.  Quoting is
 +# there to prevent editors from complaining about space-tab.
 +# (If _AS_PATH_WALK were called with IFS unset, it would disable word
 +# splitting by setting IFS to empty value.)
 +IFS=" ""	$as_nl"
 +
 +# Find who we are.  Look in the path if we contain no directory separator.
 +as_myself=
 +case $0 in #((
 +  *[\\/]* ) as_myself=$0 ;;
 +  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
 +  done
 +IFS=$as_save_IFS
 +
 +     ;;
 +esac
 +# We did not find ourselves, most probably we were run as `sh COMMAND'
 +# in which case we are not to be found in the path.
 +if test "x$as_myself" = x; then
 +  as_myself=$0
 +fi
 +if test ! -f "$as_myself"; then
 +  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
 +  exit 1
 +fi
 +
 +# Unset variables that we do not need and which cause bugs (e.g. in
 +# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
 +# suppresses any "Segmentation fault" message there.  '((' could
 +# trigger a bug in pdksh 5.2.14.
 +for as_var in BASH_ENV ENV MAIL MAILPATH
 +do eval test x\${$as_var+set} = xset \
 +  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
 +done
 +PS1='$ '
 +PS2='> '
 +PS4='+ '
 +
 +# NLS nuisances.
 +LC_ALL=C
 +export LC_ALL
 +LANGUAGE=C
 +export LANGUAGE
 +
 +# CDPATH.
 +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 +
++# Use a proper internal environment variable to ensure we don't fall
++  # into an infinite loop, continuously re-executing ourselves.
++  if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
++    _as_can_reexec=no; export _as_can_reexec;
++    # We cannot yet assume a decent shell, so we have to provide a
++# neutralization value for shells without unset; and this also
++# works around shells that cannot unset nonexistent variables.
++# Preserve -v and -x to the replacement shell.
++BASH_ENV=/dev/null
++ENV=/dev/null
++(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
++case $- in # ((((
++  *v*x* | *x*v* ) as_opts=-vx ;;
++  *v* ) as_opts=-v ;;
++  *x* ) as_opts=-x ;;
++  * ) as_opts= ;;
++esac
++exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
++# Admittedly, this is quite paranoid, since all the known shells bail
++# out after a failed `exec'.
++$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
++as_fn_exit 255
++  fi
++  # We don't want this to propagate to other subprocesses.
++          { _as_can_reexec=; unset _as_can_reexec;}
 +if test "x$CONFIG_SHELL" = x; then
 +  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
 +  emulate sh
 +  NULLCMD=:
 +  # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
 +  # is contrary to our usage.  Disable this feature.
 +  alias -g '\${1+\"\$@\"}'='\"\$@\"'
 +  setopt NO_GLOB_SUBST
 +else
 +  case \`(set -o) 2>/dev/null\` in #(
 +  *posix*) :
 +    set -o posix ;; #(
 +  *) :
 +     ;;
 +esac
 +fi
 +"
 +  as_required="as_fn_return () { (exit \$1); }
 +as_fn_success () { as_fn_return 0; }
 +as_fn_failure () { as_fn_return 1; }
 +as_fn_ret_success () { return 0; }
 +as_fn_ret_failure () { return 1; }
 +
 +exitcode=0
 +as_fn_success || { exitcode=1; echo as_fn_success failed.; }
 +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
 +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
 +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
 +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
 +
 +else
 +  exitcode=1; echo positional parameters were not saved.
 +fi
- test x\$exitcode = x0 || exit 1"
++test x\$exitcode = x0 || exit 1
++test -x / || exit 1"
 +  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
 +  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
 +  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
 +  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1"
 +  if (eval "$as_required") 2>/dev/null; then :
 +  as_have_required=yes
 +else
 +  as_have_required=no
 +fi
 +  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
 +
 +else
 +  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +as_found=false
 +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +  as_found=:
 +  case $as_dir in #(
 +	 /*)
 +	   for as_base in sh bash ksh sh5; do
 +	     # Try only shells that exist, to save several forks.
 +	     as_shell=$as_dir/$as_base
 +	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
 +		    { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
 +  CONFIG_SHELL=$as_shell as_have_required=yes
 +		   if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
 +  break 2
 +fi
 +fi
 +	   done;;
 +       esac
 +  as_found=false
 +done
 +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
 +	      { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
 +  CONFIG_SHELL=$SHELL as_have_required=yes
 +fi; }
 +IFS=$as_save_IFS
 +
 +
 +      if test "x$CONFIG_SHELL" != x; then :
-   # We cannot yet assume a decent shell, so we have to provide a
- 	# neutralization value for shells without unset; and this also
- 	# works around shells that cannot unset nonexistent variables.
- 	# Preserve -v and -x to the replacement shell.
- 	BASH_ENV=/dev/null
- 	ENV=/dev/null
- 	(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
- 	export CONFIG_SHELL
- 	case $- in # ((((
- 	  *v*x* | *x*v* ) as_opts=-vx ;;
- 	  *v* ) as_opts=-v ;;
- 	  *x* ) as_opts=-x ;;
- 	  * ) as_opts= ;;
- 	esac
- 	exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
++  export CONFIG_SHELL
++             # We cannot yet assume a decent shell, so we have to provide a
++# neutralization value for shells without unset; and this also
++# works around shells that cannot unset nonexistent variables.
++# Preserve -v and -x to the replacement shell.
++BASH_ENV=/dev/null
++ENV=/dev/null
++(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
++case $- in # ((((
++  *v*x* | *x*v* ) as_opts=-vx ;;
++  *v* ) as_opts=-v ;;
++  *x* ) as_opts=-x ;;
++  * ) as_opts= ;;
++esac
++exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
++# Admittedly, this is quite paranoid, since all the known shells bail
++# out after a failed `exec'.
++$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
++exit 255
 +fi
 +
 +    if test x$as_have_required = xno; then :
 +  $as_echo "$0: This script requires a shell more modern than all"
 +  $as_echo "$0: the shells that I found on your system."
 +  if test x${ZSH_VERSION+set} = xset ; then
 +    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
 +    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
 +  else
 +    $as_echo "$0: Please tell bug-autoconf at gnu.org and
 +$0: http://thomas.apestaart.org/morituri/trac/newticket
 +$0: about your system, including any error possibly output
 +$0: before this message. Then install a modern shell, or
 +$0: manually run the script under such a shell if you do
 +$0: have one."
 +  fi
 +  exit 1
 +fi
 +fi
 +fi
 +SHELL=${CONFIG_SHELL-/bin/sh}
 +export SHELL
 +# Unset more variables known to interfere with behavior of common tools.
 +CLICOLOR_FORCE= GREP_OPTIONS=
 +unset CLICOLOR_FORCE GREP_OPTIONS
 +
 +## --------------------- ##
 +## M4sh Shell Functions. ##
 +## --------------------- ##
 +# as_fn_unset VAR
 +# ---------------
 +# Portably unset VAR.
 +as_fn_unset ()
 +{
 +  { eval $1=; unset $1;}
 +}
 +as_unset=as_fn_unset
 +
 +# as_fn_set_status STATUS
 +# -----------------------
 +# Set $? to STATUS, without forking.
 +as_fn_set_status ()
 +{
 +  return $1
 +} # as_fn_set_status
 +
 +# as_fn_exit STATUS
 +# -----------------
 +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
 +as_fn_exit ()
 +{
 +  set +e
 +  as_fn_set_status $1
 +  exit $1
 +} # as_fn_exit
 +
 +# as_fn_mkdir_p
 +# -------------
 +# Create "$as_dir" as a directory, including parents if necessary.
 +as_fn_mkdir_p ()
 +{
 +
 +  case $as_dir in #(
 +  -*) as_dir=./$as_dir;;
 +  esac
 +  test -d "$as_dir" || eval $as_mkdir_p || {
 +    as_dirs=
 +    while :; do
 +      case $as_dir in #(
 +      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
 +      *) as_qdir=$as_dir;;
 +      esac
 +      as_dirs="'$as_qdir' $as_dirs"
 +      as_dir=`$as_dirname -- "$as_dir" ||
 +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 +	 X"$as_dir" : 'X\(//\)[^/]' \| \
 +	 X"$as_dir" : 'X\(//\)$' \| \
 +	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
 +$as_echo X"$as_dir" |
 +    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\/\)[^/].*/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\/\)$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\).*/{
 +	    s//\1/
 +	    q
 +	  }
 +	  s/.*/./; q'`
 +      test -d "$as_dir" && break
 +    done
 +    test -z "$as_dirs" || eval "mkdir $as_dirs"
 +  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
 +
 +
 +} # as_fn_mkdir_p
++
++# as_fn_executable_p FILE
++# -----------------------
++# Test if FILE is an executable regular file.
++as_fn_executable_p ()
++{
++  test -f "$1" && test -x "$1"
++} # as_fn_executable_p
 +# as_fn_append VAR VALUE
 +# ----------------------
 +# Append the text in VALUE to the end of the definition contained in VAR. Take
 +# advantage of any shell optimizations that allow amortized linear growth over
 +# repeated appends, instead of the typical quadratic growth present in naive
 +# implementations.
 +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
 +  eval 'as_fn_append ()
 +  {
 +    eval $1+=\$2
 +  }'
 +else
 +  as_fn_append ()
 +  {
 +    eval $1=\$$1\$2
 +  }
 +fi # as_fn_append
 +
 +# as_fn_arith ARG...
 +# ------------------
 +# Perform arithmetic evaluation on the ARGs, and store the result in the
 +# global $as_val. Take advantage of shells that can avoid forks. The arguments
 +# must be portable across $(()) and expr.
 +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
 +  eval 'as_fn_arith ()
 +  {
 +    as_val=$(( $* ))
 +  }'
 +else
 +  as_fn_arith ()
 +  {
 +    as_val=`expr "$@" || test $? -eq 1`
 +  }
 +fi # as_fn_arith
 +
 +
 +# as_fn_error STATUS ERROR [LINENO LOG_FD]
 +# ----------------------------------------
 +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
 +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
 +# script with STATUS, using 1 if that was 0.
 +as_fn_error ()
 +{
 +  as_status=$1; test $as_status -eq 0 && as_status=1
 +  if test "$4"; then
 +    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
 +    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
 +  fi
 +  $as_echo "$as_me: error: $2" >&2
 +  as_fn_exit $as_status
 +} # as_fn_error
 +
 +if expr a : '\(a\)' >/dev/null 2>&1 &&
 +   test "X`expr 00001 : '.*\(...\)'`" = X001; then
 +  as_expr=expr
 +else
 +  as_expr=false
 +fi
 +
 +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
 +  as_basename=basename
 +else
 +  as_basename=false
 +fi
 +
 +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
 +  as_dirname=dirname
 +else
 +  as_dirname=false
 +fi
 +
 +as_me=`$as_basename -- "$0" ||
 +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
 +	 X"$0" : 'X\(//\)$' \| \
 +	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
 +$as_echo X/"$0" |
 +    sed '/^.*\/\([^/][^/]*\)\/*$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\/\(\/\/\)$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\/\(\/\).*/{
 +	    s//\1/
 +	    q
 +	  }
 +	  s/.*/./; q'`
 +
 +# Avoid depending upon Character Ranges.
 +as_cr_letters='abcdefghijklmnopqrstuvwxyz'
 +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
 +as_cr_Letters=$as_cr_letters$as_cr_LETTERS
 +as_cr_digits='0123456789'
 +as_cr_alnum=$as_cr_Letters$as_cr_digits
 +
 +
 +  as_lineno_1=$LINENO as_lineno_1a=$LINENO
 +  as_lineno_2=$LINENO as_lineno_2a=$LINENO
 +  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
 +  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
 +  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
 +  sed -n '
 +    p
 +    /[$]LINENO/=
 +  ' <$as_myself |
 +    sed '
 +      s/[$]LINENO.*/&-/
 +      t lineno
 +      b
 +      :lineno
 +      N
 +      :loop
 +      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
 +      t loop
 +      s/-\n.*//
 +    ' >$as_me.lineno &&
 +  chmod +x "$as_me.lineno" ||
 +    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 +
++  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
++  # already done that, so ensure we don't try to do so again and fall
++  # in an infinite loop.  This has already happened in practice.
++  _as_can_reexec=no; export _as_can_reexec
 +  # Don't try to exec as it changes $[0], causing all sort of problems
 +  # (the dirname of $[0] is not the place where we might find the
 +  # original and so on.  Autoconf is especially sensitive to this).
 +  . "./$as_me.lineno"
 +  # Exit status is that of the last command.
 +  exit
 +}
 +
 +ECHO_C= ECHO_N= ECHO_T=
 +case `echo -n x` in #(((((
 +-n*)
 +  case `echo 'xy\c'` in
 +  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
 +  xy)  ECHO_C='\c';;
 +  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
 +       ECHO_T='	';;
 +  esac;;
 +*)
 +  ECHO_N='-n';;
 +esac
 +
 +rm -f conf$$ conf$$.exe conf$$.file
 +if test -d conf$$.dir; then
 +  rm -f conf$$.dir/conf$$.file
 +else
 +  rm -f conf$$.dir
 +  mkdir conf$$.dir 2>/dev/null
 +fi
 +if (echo >conf$$.file) 2>/dev/null; then
 +  if ln -s conf$$.file conf$$ 2>/dev/null; then
 +    as_ln_s='ln -s'
 +    # ... but there are two gotchas:
 +    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
 +    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-     # In both cases, we have to default to `cp -p'.
++    # In both cases, we have to default to `cp -pR'.
 +    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-       as_ln_s='cp -p'
++      as_ln_s='cp -pR'
 +  elif ln conf$$.file conf$$ 2>/dev/null; then
 +    as_ln_s=ln
 +  else
-     as_ln_s='cp -p'
++    as_ln_s='cp -pR'
 +  fi
 +else
-   as_ln_s='cp -p'
++  as_ln_s='cp -pR'
 +fi
 +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 +rmdir conf$$.dir 2>/dev/null
 +
 +if mkdir -p . 2>/dev/null; then
 +  as_mkdir_p='mkdir -p "$as_dir"'
 +else
 +  test -d ./-p && rmdir ./-p
 +  as_mkdir_p=false
 +fi
 +
- if test -x / >/dev/null 2>&1; then
-   as_test_x='test -x'
- else
-   if ls -dL / >/dev/null 2>&1; then
-     as_ls_L_option=L
-   else
-     as_ls_L_option=
-   fi
-   as_test_x='
-     eval sh -c '\''
-       if test -d "$1"; then
- 	test -d "$1/.";
-       else
- 	case $1 in #(
- 	-*)set "./$1";;
- 	esac;
- 	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- 	???[sx]*):;;*)false;;esac;fi
-     '\'' sh
-   '
- fi
- as_executable_p=$as_test_x
++as_test_x='test -x'
++as_executable_p=as_fn_executable_p
 +
 +# Sed expression to map a string onto a valid CPP name.
 +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
 +
 +# Sed expression to map a string onto a valid variable name.
 +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
 +
 +
 +test -n "$DJDIR" || exec 7<&0 </dev/null
 +exec 6>&1
 +
 +# Name of the host.
 +# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
 +# so uname gets run too.
 +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
 +
 +#
 +# Initializations.
 +#
 +ac_default_prefix=/usr/local
 +ac_clean_files=
 +ac_config_libobj_dir=.
 +LIBOBJS=
 +cross_compiling=no
 +subdirs=
 +MFLAGS=
 +MAKEFLAGS=
 +
 +# Identity of this package.
 +PACKAGE_NAME='morituri'
 +PACKAGE_TARNAME='morituri'
- PACKAGE_VERSION='0.2.0'
- PACKAGE_STRING='morituri 0.2.0'
++PACKAGE_VERSION='0.2.3'
++PACKAGE_STRING='morituri 0.2.3'
 +PACKAGE_BUGREPORT='http://thomas.apestaart.org/morituri/trac/newticket'
 +PACKAGE_URL=''
 +
 +ac_subst_vars='LTLIBOBJS
 +LIBOBJS
 +HAVE_PYCHECKER_FALSE
 +HAVE_PYCHECKER_TRUE
 +PYCHECKER
 +HAVE_EPYDOC_FALSE
 +HAVE_EPYDOC_TRUE
 +EPYDOC
++REVISION
 +PLUGINSDIR
 +PYTHONLIBDIR
 +pkgpyexecdir
 +pyexecdir
 +pkgpythondir
 +pythondir
 +PYTHON_PLATFORM
 +PYTHON_EXEC_PREFIX
 +PYTHON_PREFIX
 +PYTHON_VERSION
 +PYTHON
 +ACLOCAL_AMFLAGS
 +MAINT
 +MAINTAINER_MODE_FALSE
 +MAINTAINER_MODE_TRUE
 +PACKAGE_VERSION_RELEASE
 +PACKAGE_VERSION_NANO
 +PACKAGE_VERSION_MICRO
 +PACKAGE_VERSION_MINOR
 +PACKAGE_VERSION_MAJOR
++AM_BACKSLASH
++AM_DEFAULT_VERBOSITY
++AM_DEFAULT_V
++AM_V
 +am__untar
 +am__tar
 +AMTAR
 +am__leading_dot
 +SET_MAKE
 +AWK
 +mkdir_p
 +MKDIR_P
 +INSTALL_STRIP_PROGRAM
 +STRIP
 +install_sh
 +MAKEINFO
 +AUTOHEADER
 +AUTOMAKE
 +AUTOCONF
 +ACLOCAL
 +VERSION
 +PACKAGE
 +CYGPATH_W
 +am__isrc
 +INSTALL_DATA
 +INSTALL_SCRIPT
 +INSTALL_PROGRAM
 +target_alias
 +host_alias
 +build_alias
 +LIBS
 +ECHO_T
 +ECHO_N
 +ECHO_C
 +DEFS
 +mandir
 +localedir
 +libdir
 +psdir
 +pdfdir
 +dvidir
 +htmldir
 +infodir
 +docdir
 +oldincludedir
 +includedir
 +localstatedir
 +sharedstatedir
 +sysconfdir
 +datadir
 +datarootdir
 +libexecdir
 +sbindir
 +bindir
 +program_transform_name
 +prefix
 +exec_prefix
 +PACKAGE_URL
 +PACKAGE_BUGREPORT
 +PACKAGE_STRING
 +PACKAGE_VERSION
 +PACKAGE_TARNAME
 +PACKAGE_NAME
 +PATH_SEPARATOR
 +SHELL'
 +ac_subst_files='AUTHORS'
 +ac_user_opts='
 +enable_option_checking
++enable_silent_rules
 +enable_maintainer_mode
 +'
 +      ac_precious_vars='build_alias
 +host_alias
- target_alias'
++target_alias
++PYTHON'
 +
 +
 +# Initialize some variables set by options.
 +ac_init_help=
 +ac_init_version=false
 +ac_unrecognized_opts=
 +ac_unrecognized_sep=
 +# The variables have the same names as the options, with
 +# dashes changed to underlines.
 +cache_file=/dev/null
 +exec_prefix=NONE
 +no_create=
 +no_recursion=
 +prefix=NONE
 +program_prefix=NONE
 +program_suffix=NONE
 +program_transform_name=s,x,x,
 +silent=
 +site=
 +srcdir=
 +verbose=
 +x_includes=NONE
 +x_libraries=NONE
 +
 +# Installation directory options.
 +# These are left unexpanded so users can "make install exec_prefix=/foo"
 +# and all the variables that are supposed to be based on exec_prefix
 +# by default will actually change.
 +# Use braces instead of parens because sh, perl, etc. also accept them.
 +# (The list follows the same order as the GNU Coding Standards.)
 +bindir='${exec_prefix}/bin'
 +sbindir='${exec_prefix}/sbin'
 +libexecdir='${exec_prefix}/libexec'
 +datarootdir='${prefix}/share'
 +datadir='${datarootdir}'
 +sysconfdir='${prefix}/etc'
 +sharedstatedir='${prefix}/com'
 +localstatedir='${prefix}/var'
 +includedir='${prefix}/include'
 +oldincludedir='/usr/include'
 +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
 +infodir='${datarootdir}/info'
 +htmldir='${docdir}'
 +dvidir='${docdir}'
 +pdfdir='${docdir}'
 +psdir='${docdir}'
 +libdir='${exec_prefix}/lib'
 +localedir='${datarootdir}/locale'
 +mandir='${datarootdir}/man'
 +
 +ac_prev=
 +ac_dashdash=
 +for ac_option
 +do
 +  # If the previous option needs an argument, assign it.
 +  if test -n "$ac_prev"; then
 +    eval $ac_prev=\$ac_option
 +    ac_prev=
 +    continue
 +  fi
 +
 +  case $ac_option in
 +  *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
 +  *=)   ac_optarg= ;;
 +  *)    ac_optarg=yes ;;
 +  esac
 +
 +  # Accept the important Cygnus configure options, so we can diagnose typos.
 +
 +  case $ac_dashdash$ac_option in
 +  --)
 +    ac_dashdash=yes ;;
 +
 +  -bindir | --bindir | --bindi | --bind | --bin | --bi)
 +    ac_prev=bindir ;;
 +  -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
 +    bindir=$ac_optarg ;;
 +
 +  -build | --build | --buil | --bui | --bu)
 +    ac_prev=build_alias ;;
 +  -build=* | --build=* | --buil=* | --bui=* | --bu=*)
 +    build_alias=$ac_optarg ;;
 +
 +  -cache-file | --cache-file | --cache-fil | --cache-fi \
 +  | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
 +    ac_prev=cache_file ;;
 +  -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
 +  | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
 +    cache_file=$ac_optarg ;;
 +
 +  --config-cache | -C)
 +    cache_file=config.cache ;;
 +
 +  -datadir | --datadir | --datadi | --datad)
 +    ac_prev=datadir ;;
 +  -datadir=* | --datadir=* | --datadi=* | --datad=*)
 +    datadir=$ac_optarg ;;
 +
 +  -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
 +  | --dataroo | --dataro | --datar)
 +    ac_prev=datarootdir ;;
 +  -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
 +  | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
 +    datarootdir=$ac_optarg ;;
 +
 +  -disable-* | --disable-*)
 +    ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
 +    # Reject names that are not valid shell variable names.
 +    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
 +      as_fn_error $? "invalid feature name: $ac_useropt"
 +    ac_useropt_orig=$ac_useropt
 +    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
 +    case $ac_user_opts in
 +      *"
 +"enable_$ac_useropt"
 +"*) ;;
 +      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
 +	 ac_unrecognized_sep=', ';;
 +    esac
 +    eval enable_$ac_useropt=no ;;
 +
 +  -docdir | --docdir | --docdi | --doc | --do)
 +    ac_prev=docdir ;;
 +  -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
 +    docdir=$ac_optarg ;;
 +
 +  -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
 +    ac_prev=dvidir ;;
 +  -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
 +    dvidir=$ac_optarg ;;
 +
 +  -enable-* | --enable-*)
 +    ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
 +    # Reject names that are not valid shell variable names.
 +    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
 +      as_fn_error $? "invalid feature name: $ac_useropt"
 +    ac_useropt_orig=$ac_useropt
 +    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
 +    case $ac_user_opts in
 +      *"
 +"enable_$ac_useropt"
 +"*) ;;
 +      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
 +	 ac_unrecognized_sep=', ';;
 +    esac
 +    eval enable_$ac_useropt=\$ac_optarg ;;
 +
 +  -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
 +  | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
 +  | --exec | --exe | --ex)
 +    ac_prev=exec_prefix ;;
 +  -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
 +  | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
 +  | --exec=* | --exe=* | --ex=*)
 +    exec_prefix=$ac_optarg ;;
 +
 +  -gas | --gas | --ga | --g)
 +    # Obsolete; use --with-gas.
 +    with_gas=yes ;;
 +
 +  -help | --help | --hel | --he | -h)
 +    ac_init_help=long ;;
 +  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
 +    ac_init_help=recursive ;;
 +  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
 +    ac_init_help=short ;;
 +
 +  -host | --host | --hos | --ho)
 +    ac_prev=host_alias ;;
 +  -host=* | --host=* | --hos=* | --ho=*)
 +    host_alias=$ac_optarg ;;
 +
 +  -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
 +    ac_prev=htmldir ;;
 +  -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
 +  | --ht=*)
 +    htmldir=$ac_optarg ;;
 +
 +  -includedir | --includedir | --includedi | --included | --include \
 +  | --includ | --inclu | --incl | --inc)
 +    ac_prev=includedir ;;
 +  -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
 +  | --includ=* | --inclu=* | --incl=* | --inc=*)
 +    includedir=$ac_optarg ;;
 +
 +  -infodir | --infodir | --infodi | --infod | --info | --inf)
 +    ac_prev=infodir ;;
 +  -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
 +    infodir=$ac_optarg ;;
 +
 +  -libdir | --libdir | --libdi | --libd)
 +    ac_prev=libdir ;;
 +  -libdir=* | --libdir=* | --libdi=* | --libd=*)
 +    libdir=$ac_optarg ;;
 +
 +  -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
 +  | --libexe | --libex | --libe)
 +    ac_prev=libexecdir ;;
 +  -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
 +  | --libexe=* | --libex=* | --libe=*)
 +    libexecdir=$ac_optarg ;;
 +
 +  -localedir | --localedir | --localedi | --localed | --locale)
 +    ac_prev=localedir ;;
 +  -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
 +    localedir=$ac_optarg ;;
 +
 +  -localstatedir | --localstatedir | --localstatedi | --localstated \
 +  | --localstate | --localstat | --localsta | --localst | --locals)
 +    ac_prev=localstatedir ;;
 +  -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
 +  | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
 +    localstatedir=$ac_optarg ;;
 +
 +  -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
 +    ac_prev=mandir ;;
 +  -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
 +    mandir=$ac_optarg ;;
 +
 +  -nfp | --nfp | --nf)
 +    # Obsolete; use --without-fp.
 +    with_fp=no ;;
 +
 +  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
 +  | --no-cr | --no-c | -n)
 +    no_create=yes ;;
 +
 +  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
 +  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
 +    no_recursion=yes ;;
 +
 +  -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
 +  | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
 +  | --oldin | --oldi | --old | --ol | --o)
 +    ac_prev=oldincludedir ;;
 +  -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
 +  | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
 +  | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
 +    oldincludedir=$ac_optarg ;;
 +
 +  -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
 +    ac_prev=prefix ;;
 +  -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
 +    prefix=$ac_optarg ;;
 +
 +  -program-prefix | --program-prefix | --program-prefi | --program-pref \
 +  | --program-pre | --program-pr | --program-p)
 +    ac_prev=program_prefix ;;
 +  -program-prefix=* | --program-prefix=* | --program-prefi=* \
 +  | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
 +    program_prefix=$ac_optarg ;;
 +
 +  -program-suffix | --program-suffix | --program-suffi | --program-suff \
 +  | --program-suf | --program-su | --program-s)
 +    ac_prev=program_suffix ;;
 +  -program-suffix=* | --program-suffix=* | --program-suffi=* \
 +  | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
 +    program_suffix=$ac_optarg ;;
 +
 +  -program-transform-name | --program-transform-name \
 +  | --program-transform-nam | --program-transform-na \
 +  | --program-transform-n | --program-transform- \
 +  | --program-transform | --program-transfor \
 +  | --program-transfo | --program-transf \
 +  | --program-trans | --program-tran \
 +  | --progr-tra | --program-tr | --program-t)
 +    ac_prev=program_transform_name ;;
 +  -program-transform-name=* | --program-transform-name=* \
 +  | --program-transform-nam=* | --program-transform-na=* \
 +  | --program-transform-n=* | --program-transform-=* \
 +  | --program-transform=* | --program-transfor=* \
 +  | --program-transfo=* | --program-transf=* \
 +  | --program-trans=* | --program-tran=* \
 +  | --progr-tra=* | --program-tr=* | --program-t=*)
 +    program_transform_name=$ac_optarg ;;
 +
 +  -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
 +    ac_prev=pdfdir ;;
 +  -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
 +    pdfdir=$ac_optarg ;;
 +
 +  -psdir | --psdir | --psdi | --psd | --ps)
 +    ac_prev=psdir ;;
 +  -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
 +    psdir=$ac_optarg ;;
 +
 +  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
 +  | -silent | --silent | --silen | --sile | --sil)
 +    silent=yes ;;
 +
 +  -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
 +    ac_prev=sbindir ;;
 +  -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
 +  | --sbi=* | --sb=*)
 +    sbindir=$ac_optarg ;;
 +
 +  -sharedstatedir | --sharedstatedir | --sharedstatedi \
 +  | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
 +  | --sharedst | --shareds | --shared | --share | --shar \
 +  | --sha | --sh)
 +    ac_prev=sharedstatedir ;;
 +  -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
 +  | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
 +  | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
 +  | --sha=* | --sh=*)
 +    sharedstatedir=$ac_optarg ;;
 +
 +  -site | --site | --sit)
 +    ac_prev=site ;;
 +  -site=* | --site=* | --sit=*)
 +    site=$ac_optarg ;;
 +
 +  -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
 +    ac_prev=srcdir ;;
 +  -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
 +    srcdir=$ac_optarg ;;
 +
 +  -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
 +  | --syscon | --sysco | --sysc | --sys | --sy)
 +    ac_prev=sysconfdir ;;
 +  -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
 +  | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
 +    sysconfdir=$ac_optarg ;;
 +
 +  -target | --target | --targe | --targ | --tar | --ta | --t)
 +    ac_prev=target_alias ;;
 +  -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
 +    target_alias=$ac_optarg ;;
 +
 +  -v | -verbose | --verbose | --verbos | --verbo | --verb)
 +    verbose=yes ;;
 +
 +  -version | --version | --versio | --versi | --vers | -V)
 +    ac_init_version=: ;;
 +
 +  -with-* | --with-*)
 +    ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
 +    # Reject names that are not valid shell variable names.
 +    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
 +      as_fn_error $? "invalid package name: $ac_useropt"
 +    ac_useropt_orig=$ac_useropt
 +    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
 +    case $ac_user_opts in
 +      *"
 +"with_$ac_useropt"
 +"*) ;;
 +      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
 +	 ac_unrecognized_sep=', ';;
 +    esac
 +    eval with_$ac_useropt=\$ac_optarg ;;
 +
 +  -without-* | --without-*)
 +    ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
 +    # Reject names that are not valid shell variable names.
 +    expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
 +      as_fn_error $? "invalid package name: $ac_useropt"
 +    ac_useropt_orig=$ac_useropt
 +    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
 +    case $ac_user_opts in
 +      *"
 +"with_$ac_useropt"
 +"*) ;;
 +      *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
 +	 ac_unrecognized_sep=', ';;
 +    esac
 +    eval with_$ac_useropt=no ;;
 +
 +  --x)
 +    # Obsolete; use --with-x.
 +    with_x=yes ;;
 +
 +  -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
 +  | --x-incl | --x-inc | --x-in | --x-i)
 +    ac_prev=x_includes ;;
 +  -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
 +  | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
 +    x_includes=$ac_optarg ;;
 +
 +  -x-libraries | --x-libraries | --x-librarie | --x-librari \
 +  | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
 +    ac_prev=x_libraries ;;
 +  -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
 +  | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
 +    x_libraries=$ac_optarg ;;
 +
 +  -*) as_fn_error $? "unrecognized option: \`$ac_option'
 +Try \`$0 --help' for more information"
 +    ;;
 +
 +  *=*)
 +    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
 +    # Reject names that are not valid shell variable names.
 +    case $ac_envvar in #(
 +      '' | [0-9]* | *[!_$as_cr_alnum]* )
 +      as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
 +    esac
 +    eval $ac_envvar=\$ac_optarg
 +    export $ac_envvar ;;
 +
 +  *)
 +    # FIXME: should be removed in autoconf 3.0.
 +    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
 +    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
 +      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
 +    : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
 +    ;;
 +
 +  esac
 +done
 +
 +if test -n "$ac_prev"; then
 +  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
 +  as_fn_error $? "missing argument to $ac_option"
 +fi
 +
 +if test -n "$ac_unrecognized_opts"; then
 +  case $enable_option_checking in
 +    no) ;;
 +    fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
 +    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
 +  esac
 +fi
 +
 +# Check all directory arguments for consistency.
 +for ac_var in	exec_prefix prefix bindir sbindir libexecdir datarootdir \
 +		datadir sysconfdir sharedstatedir localstatedir includedir \
 +		oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
 +		libdir localedir mandir
 +do
 +  eval ac_val=\$$ac_var
 +  # Remove trailing slashes.
 +  case $ac_val in
 +    */ )
 +      ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
 +      eval $ac_var=\$ac_val;;
 +  esac
 +  # Be sure to have absolute directory names.
 +  case $ac_val in
 +    [\\/$]* | ?:[\\/]* )  continue;;
 +    NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
 +  esac
 +  as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
 +done
 +
 +# There might be people who depend on the old broken behavior: `$host'
 +# used to hold the argument of --host etc.
 +# FIXME: To remove some day.
 +build=$build_alias
 +host=$host_alias
 +target=$target_alias
 +
 +# FIXME: To remove some day.
 +if test "x$host_alias" != x; then
 +  if test "x$build_alias" = x; then
 +    cross_compiling=maybe
-     $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-     If a cross compiler is detected then cross compile mode will be used" >&2
 +  elif test "x$build_alias" != "x$host_alias"; then
 +    cross_compiling=yes
 +  fi
 +fi
 +
 +ac_tool_prefix=
 +test -n "$host_alias" && ac_tool_prefix=$host_alias-
 +
 +test "$silent" = yes && exec 6>/dev/null
 +
 +
 +ac_pwd=`pwd` && test -n "$ac_pwd" &&
 +ac_ls_di=`ls -di .` &&
 +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
 +  as_fn_error $? "working directory cannot be determined"
 +test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
 +  as_fn_error $? "pwd does not report name of working directory"
 +
 +
 +# Find the source files, if location was not specified.
 +if test -z "$srcdir"; then
 +  ac_srcdir_defaulted=yes
 +  # Try the directory containing this script, then the parent directory.
 +  ac_confdir=`$as_dirname -- "$as_myself" ||
 +$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 +	 X"$as_myself" : 'X\(//\)[^/]' \| \
 +	 X"$as_myself" : 'X\(//\)$' \| \
 +	 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
 +$as_echo X"$as_myself" |
 +    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\/\)[^/].*/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\/\)$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\).*/{
 +	    s//\1/
 +	    q
 +	  }
 +	  s/.*/./; q'`
 +  srcdir=$ac_confdir
 +  if test ! -r "$srcdir/$ac_unique_file"; then
 +    srcdir=..
 +  fi
 +else
 +  ac_srcdir_defaulted=no
 +fi
 +if test ! -r "$srcdir/$ac_unique_file"; then
 +  test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
 +  as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
 +fi
 +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
 +ac_abs_confdir=`(
 +	cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
 +	pwd)`
 +# When building in place, set srcdir=.
 +if test "$ac_abs_confdir" = "$ac_pwd"; then
 +  srcdir=.
 +fi
 +# Remove unnecessary trailing slashes from srcdir.
 +# Double slashes in file names in object file debugging info
 +# mess up M-x gdb in Emacs.
 +case $srcdir in
 +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
 +esac
 +for ac_var in $ac_precious_vars; do
 +  eval ac_env_${ac_var}_set=\${${ac_var}+set}
 +  eval ac_env_${ac_var}_value=\$${ac_var}
 +  eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
 +  eval ac_cv_env_${ac_var}_value=\$${ac_var}
 +done
 +
 +#
 +# Report the --help message.
 +#
 +if test "$ac_init_help" = "long"; then
 +  # Omit some internal or obsolete options to make the list less imposing.
 +  # This message is too long to be a string in the A/UX 3.1 sh.
 +  cat <<_ACEOF
- \`configure' configures morituri 0.2.0 to adapt to many kinds of systems.
++\`configure' configures morituri 0.2.3 to adapt to many kinds of systems.
 +
 +Usage: $0 [OPTION]... [VAR=VALUE]...
 +
 +To assign environment variables (e.g., CC, CFLAGS...), specify them as
 +VAR=VALUE.  See below for descriptions of some of the useful variables.
 +
 +Defaults for the options are specified in brackets.
 +
 +Configuration:
 +  -h, --help              display this help and exit
 +      --help=short        display options specific to this package
 +      --help=recursive    display the short help of all the included packages
 +  -V, --version           display version information and exit
 +  -q, --quiet, --silent   do not print \`checking ...' messages
 +      --cache-file=FILE   cache test results in FILE [disabled]
 +  -C, --config-cache      alias for \`--cache-file=config.cache'
 +  -n, --no-create         do not create output files
 +      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
 +
 +Installation directories:
 +  --prefix=PREFIX         install architecture-independent files in PREFIX
 +                          [$ac_default_prefix]
 +  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
 +                          [PREFIX]
 +
 +By default, \`make install' will install all the files in
 +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
 +an installation prefix other than \`$ac_default_prefix' using \`--prefix',
 +for instance \`--prefix=\$HOME'.
 +
 +For better control, use the options below.
 +
 +Fine tuning of the installation directories:
 +  --bindir=DIR            user executables [EPREFIX/bin]
 +  --sbindir=DIR           system admin executables [EPREFIX/sbin]
 +  --libexecdir=DIR        program executables [EPREFIX/libexec]
 +  --sysconfdir=DIR        read-only single-machine data [PREFIX/etc]
 +  --sharedstatedir=DIR    modifiable architecture-independent data [PREFIX/com]
 +  --localstatedir=DIR     modifiable single-machine data [PREFIX/var]
 +  --libdir=DIR            object code libraries [EPREFIX/lib]
 +  --includedir=DIR        C header files [PREFIX/include]
 +  --oldincludedir=DIR     C header files for non-gcc [/usr/include]
 +  --datarootdir=DIR       read-only arch.-independent data root [PREFIX/share]
 +  --datadir=DIR           read-only architecture-independent data [DATAROOTDIR]
 +  --infodir=DIR           info documentation [DATAROOTDIR/info]
 +  --localedir=DIR         locale-dependent data [DATAROOTDIR/locale]
 +  --mandir=DIR            man documentation [DATAROOTDIR/man]
 +  --docdir=DIR            documentation root [DATAROOTDIR/doc/morituri]
 +  --htmldir=DIR           html documentation [DOCDIR]
 +  --dvidir=DIR            dvi documentation [DOCDIR]
 +  --pdfdir=DIR            pdf documentation [DOCDIR]
 +  --psdir=DIR             ps documentation [DOCDIR]
 +_ACEOF
 +
 +  cat <<\_ACEOF
 +
 +Program names:
 +  --program-prefix=PREFIX            prepend PREFIX to installed program names
 +  --program-suffix=SUFFIX            append SUFFIX to installed program names
 +  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
 +_ACEOF
 +fi
 +
 +if test -n "$ac_init_help"; then
 +  case $ac_init_help in
-      short | recursive ) echo "Configuration of morituri 0.2.0:";;
++     short | recursive ) echo "Configuration of morituri 0.2.3:";;
 +   esac
 +  cat <<\_ACEOF
 +
 +Optional Features:
 +  --disable-option-checking  ignore unrecognized --enable/--with options
 +  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
 +  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-   --enable-maintainer-mode  enable make rules and dependencies not useful
- 			  (and sometimes confusing) to the casual installer
++  --enable-silent-rules   less verbose build output (undo: "make V=1")
++  --disable-silent-rules  verbose build output (undo: "make V=0")
++  --enable-maintainer-mode
++                          enable make rules and dependencies not useful (and
++                          sometimes confusing) to the casual installer
++
++Some influential environment variables:
++  PYTHON      the Python interpreter
++
++Use these variables to override the choices made by `configure' or to help
++it to find libraries and programs with nonstandard names/locations.
 +
 +Report bugs to <http://thomas.apestaart.org/morituri/trac/newticket>.
 +_ACEOF
 +ac_status=$?
 +fi
 +
 +if test "$ac_init_help" = "recursive"; then
 +  # If there are subdirs, report their specific --help.
 +  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
 +    test -d "$ac_dir" ||
 +      { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
 +      continue
 +    ac_builddir=.
 +
 +case "$ac_dir" in
 +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 +*)
 +  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
 +  # A ".." for each directory in $ac_dir_suffix.
 +  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
 +  case $ac_top_builddir_sub in
 +  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
 +  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
 +  esac ;;
 +esac
 +ac_abs_top_builddir=$ac_pwd
 +ac_abs_builddir=$ac_pwd$ac_dir_suffix
 +# for backward compatibility:
 +ac_top_builddir=$ac_top_build_prefix
 +
 +case $srcdir in
 +  .)  # We are building in place.
 +    ac_srcdir=.
 +    ac_top_srcdir=$ac_top_builddir_sub
 +    ac_abs_top_srcdir=$ac_pwd ;;
 +  [\\/]* | ?:[\\/]* )  # Absolute name.
 +    ac_srcdir=$srcdir$ac_dir_suffix;
 +    ac_top_srcdir=$srcdir
 +    ac_abs_top_srcdir=$srcdir ;;
 +  *) # Relative name.
 +    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
 +    ac_top_srcdir=$ac_top_build_prefix$srcdir
 +    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
 +esac
 +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
 +
 +    cd "$ac_dir" || { ac_status=$?; continue; }
 +    # Check for guested configure.
 +    if test -f "$ac_srcdir/configure.gnu"; then
 +      echo &&
 +      $SHELL "$ac_srcdir/configure.gnu" --help=recursive
 +    elif test -f "$ac_srcdir/configure"; then
 +      echo &&
 +      $SHELL "$ac_srcdir/configure" --help=recursive
 +    else
 +      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
 +    fi || ac_status=$?
 +    cd "$ac_pwd" || { ac_status=$?; break; }
 +  done
 +fi
 +
 +test -n "$ac_init_help" && exit $ac_status
 +if $ac_init_version; then
 +  cat <<\_ACEOF
- morituri configure 0.2.0
- generated by GNU Autoconf 2.68
++morituri configure 0.2.3
++generated by GNU Autoconf 2.69
 +
- Copyright (C) 2010 Free Software Foundation, Inc.
++Copyright (C) 2012 Free Software Foundation, Inc.
 +This configure script is free software; the Free Software Foundation
 +gives unlimited permission to copy, distribute and modify it.
 +_ACEOF
 +  exit
 +fi
 +
 +## ------------------------ ##
 +## Autoconf initialization. ##
 +## ------------------------ ##
 +cat >config.log <<_ACEOF
 +This file contains any messages produced by compilers while
 +running configure, to aid debugging if configure makes a mistake.
 +
- It was created by morituri $as_me 0.2.0, which was
- generated by GNU Autoconf 2.68.  Invocation command line was
++It was created by morituri $as_me 0.2.3, which was
++generated by GNU Autoconf 2.69.  Invocation command line was
 +
 +  $ $0 $@
 +
 +_ACEOF
 +exec 5>>config.log
 +{
 +cat <<_ASUNAME
 +## --------- ##
 +## Platform. ##
 +## --------- ##
 +
 +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
 +uname -m = `(uname -m) 2>/dev/null || echo unknown`
 +uname -r = `(uname -r) 2>/dev/null || echo unknown`
 +uname -s = `(uname -s) 2>/dev/null || echo unknown`
 +uname -v = `(uname -v) 2>/dev/null || echo unknown`
 +
 +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
 +/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
 +
 +/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
 +/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
 +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
 +/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
 +/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
 +/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
 +/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
 +
 +_ASUNAME
 +
 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    $as_echo "PATH: $as_dir"
 +  done
 +IFS=$as_save_IFS
 +
 +} >&5
 +
 +cat >&5 <<_ACEOF
 +
 +
 +## ----------- ##
 +## Core tests. ##
 +## ----------- ##
 +
 +_ACEOF
 +
 +
 +# Keep a trace of the command line.
 +# Strip out --no-create and --no-recursion so they do not pile up.
 +# Strip out --silent because we don't want to record it for future runs.
 +# Also quote any args containing shell meta-characters.
 +# Make two passes to allow for proper duplicate-argument suppression.
 +ac_configure_args=
 +ac_configure_args0=
 +ac_configure_args1=
 +ac_must_keep_next=false
 +for ac_pass in 1 2
 +do
 +  for ac_arg
 +  do
 +    case $ac_arg in
 +    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
 +    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
 +    | -silent | --silent | --silen | --sile | --sil)
 +      continue ;;
 +    *\'*)
 +      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
 +    esac
 +    case $ac_pass in
 +    1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
 +    2)
 +      as_fn_append ac_configure_args1 " '$ac_arg'"
 +      if test $ac_must_keep_next = true; then
 +	ac_must_keep_next=false # Got value, back to normal.
 +      else
 +	case $ac_arg in
 +	  *=* | --config-cache | -C | -disable-* | --disable-* \
 +	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
 +	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
 +	  | -with-* | --with-* | -without-* | --without-* | --x)
 +	    case "$ac_configure_args0 " in
 +	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
 +	    esac
 +	    ;;
 +	  -* ) ac_must_keep_next=true ;;
 +	esac
 +      fi
 +      as_fn_append ac_configure_args " '$ac_arg'"
 +      ;;
 +    esac
 +  done
 +done
 +{ ac_configure_args0=; unset ac_configure_args0;}
 +{ ac_configure_args1=; unset ac_configure_args1;}
 +
 +# When interrupted or exit'd, cleanup temporary files, and complete
 +# config.log.  We remove comments because anyway the quotes in there
 +# would cause problems or look ugly.
 +# WARNING: Use '\'' to represent an apostrophe within the trap.
 +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
 +trap 'exit_status=$?
 +  # Save into config.log some information that might help in debugging.
 +  {
 +    echo
 +
 +    $as_echo "## ---------------- ##
 +## Cache variables. ##
 +## ---------------- ##"
 +    echo
 +    # The following way of writing the cache mishandles newlines in values,
 +(
 +  for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
 +    eval ac_val=\$$ac_var
 +    case $ac_val in #(
 +    *${as_nl}*)
 +      case $ac_var in #(
 +      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
 +      esac
 +      case $ac_var in #(
 +      _ | IFS | as_nl) ;; #(
 +      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
 +      *) { eval $ac_var=; unset $ac_var;} ;;
 +      esac ;;
 +    esac
 +  done
 +  (set) 2>&1 |
 +    case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
 +    *${as_nl}ac_space=\ *)
 +      sed -n \
 +	"s/'\''/'\''\\\\'\'''\''/g;
 +	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
 +      ;; #(
 +    *)
 +      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
 +      ;;
 +    esac |
 +    sort
 +)
 +    echo
 +
 +    $as_echo "## ----------------- ##
 +## Output variables. ##
 +## ----------------- ##"
 +    echo
 +    for ac_var in $ac_subst_vars
 +    do
 +      eval ac_val=\$$ac_var
 +      case $ac_val in
 +      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
 +      esac
 +      $as_echo "$ac_var='\''$ac_val'\''"
 +    done | sort
 +    echo
 +
 +    if test -n "$ac_subst_files"; then
 +      $as_echo "## ------------------- ##
 +## File substitutions. ##
 +## ------------------- ##"
 +      echo
 +      for ac_var in $ac_subst_files
 +      do
 +	eval ac_val=\$$ac_var
 +	case $ac_val in
 +	*\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
 +	esac
 +	$as_echo "$ac_var='\''$ac_val'\''"
 +      done | sort
 +      echo
 +    fi
 +
 +    if test -s confdefs.h; then
 +      $as_echo "## ----------- ##
 +## confdefs.h. ##
 +## ----------- ##"
 +      echo
 +      cat confdefs.h
 +      echo
 +    fi
 +    test "$ac_signal" != 0 &&
 +      $as_echo "$as_me: caught signal $ac_signal"
 +    $as_echo "$as_me: exit $exit_status"
 +  } >&5
 +  rm -f core *.core core.conftest.* &&
 +    rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
 +    exit $exit_status
 +' 0
 +for ac_signal in 1 2 13 15; do
 +  trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
 +done
 +ac_signal=0
 +
 +# confdefs.h avoids OS command line length limits that DEFS can exceed.
 +rm -f -r conftest* confdefs.h
 +
 +$as_echo "/* confdefs.h */" > confdefs.h
 +
 +# Predefined preprocessor variables.
 +
 +cat >>confdefs.h <<_ACEOF
 +#define PACKAGE_NAME "$PACKAGE_NAME"
 +_ACEOF
 +
 +cat >>confdefs.h <<_ACEOF
 +#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
 +_ACEOF
 +
 +cat >>confdefs.h <<_ACEOF
 +#define PACKAGE_VERSION "$PACKAGE_VERSION"
 +_ACEOF
 +
 +cat >>confdefs.h <<_ACEOF
 +#define PACKAGE_STRING "$PACKAGE_STRING"
 +_ACEOF
 +
 +cat >>confdefs.h <<_ACEOF
 +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
 +_ACEOF
 +
 +cat >>confdefs.h <<_ACEOF
 +#define PACKAGE_URL "$PACKAGE_URL"
 +_ACEOF
 +
 +
 +# Let the site file select an alternate cache file if it wants to.
 +# Prefer an explicitly selected file to automatically selected ones.
 +ac_site_file1=NONE
 +ac_site_file2=NONE
 +if test -n "$CONFIG_SITE"; then
 +  # We do not want a PATH search for config.site.
 +  case $CONFIG_SITE in #((
 +    -*)  ac_site_file1=./$CONFIG_SITE;;
 +    */*) ac_site_file1=$CONFIG_SITE;;
 +    *)   ac_site_file1=./$CONFIG_SITE;;
 +  esac
 +elif test "x$prefix" != xNONE; then
 +  ac_site_file1=$prefix/share/config.site
 +  ac_site_file2=$prefix/etc/config.site
 +else
 +  ac_site_file1=$ac_default_prefix/share/config.site
 +  ac_site_file2=$ac_default_prefix/etc/config.site
 +fi
 +for ac_site_file in "$ac_site_file1" "$ac_site_file2"
 +do
 +  test "x$ac_site_file" = xNONE && continue
 +  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
 +    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
 +$as_echo "$as_me: loading site script $ac_site_file" >&6;}
 +    sed 's/^/| /' "$ac_site_file" >&5
 +    . "$ac_site_file" \
 +      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 +as_fn_error $? "failed to load site script $ac_site_file
 +See \`config.log' for more details" "$LINENO" 5; }
 +  fi
 +done
 +
 +if test -r "$cache_file"; then
 +  # Some versions of bash will fail to source /dev/null (special files
 +  # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
 +  if test /dev/null != "$cache_file" && test -f "$cache_file"; then
 +    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
 +$as_echo "$as_me: loading cache $cache_file" >&6;}
 +    case $cache_file in
 +      [\\/]* | ?:[\\/]* ) . "$cache_file";;
 +      *)                      . "./$cache_file";;
 +    esac
 +  fi
 +else
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
 +$as_echo "$as_me: creating cache $cache_file" >&6;}
 +  >$cache_file
 +fi
 +
 +# Check that the precious variables saved in the cache have kept the same
 +# value.
 +ac_cache_corrupted=false
 +for ac_var in $ac_precious_vars; do
 +  eval ac_old_set=\$ac_cv_env_${ac_var}_set
 +  eval ac_new_set=\$ac_env_${ac_var}_set
 +  eval ac_old_val=\$ac_cv_env_${ac_var}_value
 +  eval ac_new_val=\$ac_env_${ac_var}_value
 +  case $ac_old_set,$ac_new_set in
 +    set,)
 +      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
 +$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
 +      ac_cache_corrupted=: ;;
 +    ,set)
 +      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
 +$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
 +      ac_cache_corrupted=: ;;
 +    ,);;
 +    *)
 +      if test "x$ac_old_val" != "x$ac_new_val"; then
 +	# differences in whitespace do not lead to failure.
 +	ac_old_val_w=`echo x $ac_old_val`
 +	ac_new_val_w=`echo x $ac_new_val`
 +	if test "$ac_old_val_w" != "$ac_new_val_w"; then
 +	  { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
 +$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
 +	  ac_cache_corrupted=:
 +	else
 +	  { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
 +$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
 +	  eval $ac_var=\$ac_old_val
 +	fi
 +	{ $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
 +$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
 +	{ $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
 +$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
 +      fi;;
 +  esac
 +  # Pass precious variables to config.status.
 +  if test "$ac_new_set" = set; then
 +    case $ac_new_val in
 +    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
 +    *) ac_arg=$ac_var=$ac_new_val ;;
 +    esac
 +    case " $ac_configure_args " in
 +      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
 +      *) as_fn_append ac_configure_args " '$ac_arg'" ;;
 +    esac
 +  fi
 +done
 +if $ac_cache_corrupted; then
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
 +$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
 +  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
 +fi
 +## -------------------- ##
 +## Main body of script. ##
 +## -------------------- ##
 +
 +ac_ext=c
 +ac_cpp='$CPP $CPPFLAGS'
 +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 +ac_compiler_gnu=$ac_cv_c_compiler_gnu
 +
 +
 +
- am__api_version='1.11'
++am__api_version='1.13'
 +
 +ac_aux_dir=
 +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
 +  if test -f "$ac_dir/install-sh"; then
 +    ac_aux_dir=$ac_dir
 +    ac_install_sh="$ac_aux_dir/install-sh -c"
 +    break
 +  elif test -f "$ac_dir/install.sh"; then
 +    ac_aux_dir=$ac_dir
 +    ac_install_sh="$ac_aux_dir/install.sh -c"
 +    break
 +  elif test -f "$ac_dir/shtool"; then
 +    ac_aux_dir=$ac_dir
 +    ac_install_sh="$ac_aux_dir/shtool install -c"
 +    break
 +  fi
 +done
 +if test -z "$ac_aux_dir"; then
 +  as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
 +fi
 +
 +# These three variables are undocumented and unsupported,
 +# and are intended to be withdrawn in a future Autoconf release.
 +# They can cause serious problems if a builder's source tree is in a directory
 +# whose full name contains unusual characters.
 +ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
 +ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
 +ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 +
 +
 +# Find a good install program.  We prefer a C program (faster),
 +# so one script is as good as another.  But avoid the broken or
 +# incompatible versions:
 +# SysV /etc/install, /usr/sbin/install
 +# SunOS /usr/etc/install
 +# IRIX /sbin/install
 +# AIX /bin/install
 +# AmigaOS /C/install, which installs bootblocks on floppy discs
 +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
 +# AFS /usr/afsws/bin/install, which mishandles nonexistent args
 +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 +# OS/2's system install, which has a completely different semantic
 +# ./install, which can be erroneously created by make from ./install.sh.
 +# Reject install programs that cannot install multiple files.
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
 +$as_echo_n "checking for a BSD-compatible install... " >&6; }
 +if test -z "$INSTALL"; then
 +if ${ac_cv_path_install+:} false; then :
 +  $as_echo_n "(cached) " >&6
 +else
 +  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    # Account for people who put trailing slashes in PATH elements.
 +case $as_dir/ in #((
 +  ./ | .// | /[cC]/* | \
 +  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
 +  ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
 +  /usr/ucb/* ) ;;
 +  *)
 +    # OSF1 and SCO ODT 3.0 have their own names for install.
 +    # Don't use installbsd from OSF since it installs stuff as root
 +    # by default.
 +    for ac_prog in ginstall scoinst install; do
 +      for ac_exec_ext in '' $ac_executable_extensions; do
- 	if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
++	if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
 +	  if test $ac_prog = install &&
 +	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 +	    # AIX install.  It has an incompatible calling convention.
 +	    :
 +	  elif test $ac_prog = install &&
 +	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 +	    # program-specific install script used by HP pwplus--don't use.
 +	    :
 +	  else
 +	    rm -rf conftest.one conftest.two conftest.dir
 +	    echo one > conftest.one
 +	    echo two > conftest.two
 +	    mkdir conftest.dir
 +	    if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
 +	      test -s conftest.one && test -s conftest.two &&
 +	      test -s conftest.dir/conftest.one &&
 +	      test -s conftest.dir/conftest.two
 +	    then
 +	      ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
 +	      break 3
 +	    fi
 +	  fi
 +	fi
 +      done
 +    done
 +    ;;
 +esac
 +
 +  done
 +IFS=$as_save_IFS
 +
 +rm -rf conftest.one conftest.two conftest.dir
 +
 +fi
 +  if test "${ac_cv_path_install+set}" = set; then
 +    INSTALL=$ac_cv_path_install
 +  else
 +    # As a last resort, use the slow shell script.  Don't cache a
 +    # value for INSTALL within a source directory, because that will
 +    # break other packages using the cache if that directory is
 +    # removed, or if the value is a relative name.
 +    INSTALL=$ac_install_sh
 +  fi
 +fi
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
 +$as_echo "$INSTALL" >&6; }
 +
 +# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
 +# It thinks the first close brace ends the variable substitution.
 +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
 +
 +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
 +
 +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 +
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
 +$as_echo_n "checking whether build environment is sane... " >&6; }
- # Just in case
- sleep 1
- echo timestamp > conftest.file
 +# Reject unsafe characters in $srcdir or the absolute working directory
 +# name.  Accept space and tab only in the latter.
 +am_lf='
 +'
 +case `pwd` in
 +  *[\\\"\#\$\&\'\`$am_lf]*)
 +    as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;;
 +esac
 +case $srcdir in
 +  *[\\\"\#\$\&\'\`$am_lf\ \	]*)
-     as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;;
++    as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;;
 +esac
 +
- # Do `set' in a subshell so we don't clobber the current shell's
++# Do 'set' in a subshell so we don't clobber the current shell's
 +# arguments.  Must try -L first in case configure is actually a
 +# symlink; some systems play weird games with the mod time of symlinks
 +# (eg FreeBSD returns the mod time of the symlink's containing
 +# directory).
 +if (
-    set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
-    if test "$*" = "X"; then
-       # -L didn't work.
-       set X `ls -t "$srcdir/configure" conftest.file`
-    fi
-    rm -f conftest.file
-    if test "$*" != "X $srcdir/configure conftest.file" \
-       && test "$*" != "X conftest.file $srcdir/configure"; then
- 
-       # If neither matched, then we have a broken ls.  This can happen
-       # if, for instance, CONFIG_SHELL is bash and it inherits a
-       # broken ls alias from the environment.  This has actually
-       # happened.  Such a system could not be considered "sane".
-       as_fn_error $? "ls -t appears to fail.  Make sure there is not a broken
- alias in your environment" "$LINENO" 5
-    fi
- 
++   am_has_slept=no
++   for am_try in 1 2; do
++     echo "timestamp, slept: $am_has_slept" > conftest.file
++     set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
++     if test "$*" = "X"; then
++	# -L didn't work.
++	set X `ls -t "$srcdir/configure" conftest.file`
++     fi
++     if test "$*" != "X $srcdir/configure conftest.file" \
++	&& test "$*" != "X conftest.file $srcdir/configure"; then
++
++	# If neither matched, then we have a broken ls.  This can happen
++	# if, for instance, CONFIG_SHELL is bash and it inherits a
++	# broken ls alias from the environment.  This has actually
++	# happened.  Such a system could not be considered "sane".
++	as_fn_error $? "ls -t appears to fail.  Make sure there is not a broken
++  alias in your environment" "$LINENO" 5
++     fi
++     if test "$2" = conftest.file || test $am_try -eq 2; then
++       break
++     fi
++     # Just in case.
++     sleep 1
++     am_has_slept=yes
++   done
 +   test "$2" = conftest.file
 +   )
 +then
 +   # Ok.
 +   :
 +else
 +   as_fn_error $? "newly created file is older than distributed files!
 +Check your system clock" "$LINENO" 5
 +fi
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 +$as_echo "yes" >&6; }
++# If we didn't sleep, we still need to ensure time stamps of config.status and
++# generated files are strictly newer.
++am_sleep_pid=
++if grep 'slept: no' conftest.file >/dev/null 2>&1; then
++  ( sleep 1 ) &
++  am_sleep_pid=$!
++fi
++
++rm -f conftest.file
++
 +test "$program_prefix" != NONE &&
 +  program_transform_name="s&^&$program_prefix&;$program_transform_name"
 +# Use a double $ so make ignores it.
 +test "$program_suffix" != NONE &&
 +  program_transform_name="s&\$&$program_suffix&;$program_transform_name"
 +# Double any \ or $.
 +# By default was `s,x,x', remove it if useless.
 +ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
 +program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
 +
 +# expand $ac_aux_dir to an absolute path
 +am_aux_dir=`cd $ac_aux_dir && pwd`
 +
 +if test x"${MISSING+set}" != xset; then
 +  case $am_aux_dir in
 +  *\ * | *\	*)
 +    MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
 +  *)
 +    MISSING="\${SHELL} $am_aux_dir/missing" ;;
 +  esac
 +fi
 +# Use eval to expand $SHELL
- if eval "$MISSING --run true"; then
-   am_missing_run="$MISSING --run "
++if eval "$MISSING --is-lightweight"; then
++  am_missing_run="$MISSING "
 +else
 +  am_missing_run=
-   { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
- $as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
++  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
++$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
 +fi
 +
 +if test x"${install_sh}" != xset; then
 +  case $am_aux_dir in
 +  *\ * | *\	*)
 +    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
 +  *)
 +    install_sh="\${SHELL} $am_aux_dir/install-sh"
 +  esac
 +fi
 +
- # Installed binaries are usually stripped using `strip' when the user
- # run `make install-strip'.  However `strip' might not be the right
++# Installed binaries are usually stripped using 'strip' when the user
++# run "make install-strip".  However 'strip' might not be the right
 +# tool to use in cross-compilation environments, therefore Automake
- # will honor the `STRIP' environment variable to overrule this program.
++# will honor the 'STRIP' environment variable to overrule this program.
 +if test "$cross_compiling" != no; then
 +  if test -n "$ac_tool_prefix"; then
 +  # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
 +set dummy ${ac_tool_prefix}strip; ac_word=$2
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 +$as_echo_n "checking for $ac_word... " >&6; }
 +if ${ac_cv_prog_STRIP+:} false; then :
 +  $as_echo_n "(cached) " >&6
 +else
 +  if test -n "$STRIP"; then
 +  ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
 +else
 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    for ac_exec_ext in '' $ac_executable_extensions; do
-   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
 +    ac_cv_prog_STRIP="${ac_tool_prefix}strip"
 +    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
 +    break 2
 +  fi
 +done
 +  done
 +IFS=$as_save_IFS
 +
 +fi
 +fi
 +STRIP=$ac_cv_prog_STRIP
 +if test -n "$STRIP"; then
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
 +$as_echo "$STRIP" >&6; }
 +else
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 +$as_echo "no" >&6; }
 +fi
 +
 +
 +fi
 +if test -z "$ac_cv_prog_STRIP"; then
 +  ac_ct_STRIP=$STRIP
 +  # Extract the first word of "strip", so it can be a program name with args.
 +set dummy strip; ac_word=$2
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 +$as_echo_n "checking for $ac_word... " >&6; }
 +if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
 +  $as_echo_n "(cached) " >&6
 +else
 +  if test -n "$ac_ct_STRIP"; then
 +  ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
 +else
 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    for ac_exec_ext in '' $ac_executable_extensions; do
-   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
 +    ac_cv_prog_ac_ct_STRIP="strip"
 +    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
 +    break 2
 +  fi
 +done
 +  done
 +IFS=$as_save_IFS
 +
 +fi
 +fi
 +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
 +if test -n "$ac_ct_STRIP"; then
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
 +$as_echo "$ac_ct_STRIP" >&6; }
 +else
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 +$as_echo "no" >&6; }
 +fi
 +
 +  if test "x$ac_ct_STRIP" = x; then
 +    STRIP=":"
 +  else
 +    case $cross_compiling:$ac_tool_warned in
 +yes:)
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 +ac_tool_warned=yes ;;
 +esac
 +    STRIP=$ac_ct_STRIP
 +  fi
 +else
 +  STRIP="$ac_cv_prog_STRIP"
 +fi
 +
 +fi
 +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 +
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
 +$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
 +if test -z "$MKDIR_P"; then
 +  if ${ac_cv_path_mkdir+:} false; then :
 +  $as_echo_n "(cached) " >&6
 +else
 +  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    for ac_prog in mkdir gmkdir; do
 +	 for ac_exec_ext in '' $ac_executable_extensions; do
- 	   { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
++	   as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
 +	   case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
 +	     'mkdir (GNU coreutils) '* | \
 +	     'mkdir (coreutils) '* | \
 +	     'mkdir (fileutils) '4.1*)
 +	       ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
 +	       break 3;;
 +	   esac
 +	 done
 +       done
 +  done
 +IFS=$as_save_IFS
 +
 +fi
 +
 +  test -d ./--version && rmdir ./--version
 +  if test "${ac_cv_path_mkdir+set}" = set; then
 +    MKDIR_P="$ac_cv_path_mkdir -p"
 +  else
 +    # As a last resort, use the slow shell script.  Don't cache a
 +    # value for MKDIR_P within a source directory, because that will
 +    # break other packages using the cache if that directory is
 +    # removed, or if the value is a relative name.
 +    MKDIR_P="$ac_install_sh -d"
 +  fi
 +fi
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
 +$as_echo "$MKDIR_P" >&6; }
 +
- mkdir_p="$MKDIR_P"
- case $mkdir_p in
-   [\\/$]* | ?:[\\/]*) ;;
-   */*) mkdir_p="\$(top_builddir)/$mkdir_p" ;;
- esac
- 
 +for ac_prog in gawk mawk nawk awk
 +do
 +  # Extract the first word of "$ac_prog", so it can be a program name with args.
 +set dummy $ac_prog; ac_word=$2
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 +$as_echo_n "checking for $ac_word... " >&6; }
 +if ${ac_cv_prog_AWK+:} false; then :
 +  $as_echo_n "(cached) " >&6
 +else
 +  if test -n "$AWK"; then
 +  ac_cv_prog_AWK="$AWK" # Let the user override the test.
 +else
 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    for ac_exec_ext in '' $ac_executable_extensions; do
-   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
 +    ac_cv_prog_AWK="$ac_prog"
 +    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
 +    break 2
 +  fi
 +done
 +  done
 +IFS=$as_save_IFS
 +
 +fi
 +fi
 +AWK=$ac_cv_prog_AWK
 +if test -n "$AWK"; then
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
 +$as_echo "$AWK" >&6; }
 +else
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 +$as_echo "no" >&6; }
 +fi
 +
 +
 +  test -n "$AWK" && break
 +done
 +
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
 +$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
 +set x ${MAKE-make}
 +ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
 +if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
 +  $as_echo_n "(cached) " >&6
 +else
 +  cat >conftest.make <<\_ACEOF
 +SHELL = /bin/sh
 +all:
 +	@echo '@@@%%%=$(MAKE)=@@@%%%'
 +_ACEOF
 +# GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
 +case `${MAKE-make} -f conftest.make 2>/dev/null` in
 +  *@@@%%%=?*=@@@%%%*)
 +    eval ac_cv_prog_make_${ac_make}_set=yes;;
 +  *)
 +    eval ac_cv_prog_make_${ac_make}_set=no;;
 +esac
 +rm -f conftest.make
 +fi
 +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
 +$as_echo "yes" >&6; }
 +  SET_MAKE=
 +else
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 +$as_echo "no" >&6; }
 +  SET_MAKE="MAKE=${MAKE-make}"
 +fi
 +
 +rm -rf .tst 2>/dev/null
 +mkdir .tst 2>/dev/null
 +if test -d .tst; then
 +  am__leading_dot=.
 +else
 +  am__leading_dot=_
 +fi
 +rmdir .tst 2>/dev/null
 +
++# Check whether --enable-silent-rules was given.
++if test "${enable_silent_rules+set}" = set; then :
++  enableval=$enable_silent_rules;
++fi
++
++case $enable_silent_rules in # (((
++  yes) AM_DEFAULT_VERBOSITY=0;;
++   no) AM_DEFAULT_VERBOSITY=1;;
++    *) AM_DEFAULT_VERBOSITY=1;;
++esac
++am_make=${MAKE-make}
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
++$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
++if ${am_cv_make_support_nested_variables+:} false; then :
++  $as_echo_n "(cached) " >&6
++else
++  if $as_echo 'TRUE=$(BAR$(V))
++BAR0=false
++BAR1=true
++V=1
++am__doit:
++	@$(TRUE)
++.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
++  am_cv_make_support_nested_variables=yes
++else
++  am_cv_make_support_nested_variables=no
++fi
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
++$as_echo "$am_cv_make_support_nested_variables" >&6; }
++if test $am_cv_make_support_nested_variables = yes; then
++    AM_V='$(V)'
++  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
++else
++  AM_V=$AM_DEFAULT_VERBOSITY
++  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
++fi
++AM_BACKSLASH='\'
++
 +if test "`cd $srcdir && pwd`" != "`pwd`"; then
 +  # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
 +  # is not polluted with repeated "-I."
 +  am__isrc=' -I$(srcdir)'
 +  # test to see if srcdir already configured
 +  if test -f $srcdir/config.status; then
 +    as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
 +  fi
 +fi
 +
 +# test whether we have cygpath
 +if test -z "$CYGPATH_W"; then
 +  if (cygpath --version) >/dev/null 2>/dev/null; then
 +    CYGPATH_W='cygpath -w'
 +  else
 +    CYGPATH_W=echo
 +  fi
 +fi
 +
 +
 +# Define the identity of the package.
 + PACKAGE='morituri'
-  VERSION='0.2.0'
++ VERSION='0.2.3'
 +
 +
 +cat >>confdefs.h <<_ACEOF
 +#define PACKAGE "$PACKAGE"
 +_ACEOF
 +
 +
 +cat >>confdefs.h <<_ACEOF
 +#define VERSION "$VERSION"
 +_ACEOF
 +
 +# Some tools Automake needs.
 +
 +ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
 +
 +
 +AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
 +
 +
 +AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
 +
 +
 +AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
 +
 +
 +MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 +
++# For better backward compatibility.  To be removed once Automake 1.9.x
++# dies out for good.  For more background, see:
++# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
++# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
++mkdir_p='$(MKDIR_P)'
++
 +# We need awk for the "check" target.  The system "awk" is bad on
 +# some platforms.
 +# Always define AMTAR for backward compatibility.  Yes, it's still used
 +# in the wild :-(  We should find a proper way to deprecate it ...
 +AMTAR='$${TAR-tar}'
 +
++
++# We'll loop over all known methods to create a tar archive until one works.
++_am_tools='gnutar  pax cpio none'
++
 +am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
 +
 +
 +
 +
 +
 +
 +
-   PACKAGE_VERSION_MAJOR=$(echo 0.2.0 | cut -d'.' -f1)
-   PACKAGE_VERSION_MINOR=$(echo 0.2.0 | cut -d'.' -f2)
-   PACKAGE_VERSION_MICRO=$(echo 0.2.0 | cut -d'.' -f3)
++
++  PACKAGE_VERSION_MAJOR=$(echo 0.2.3 | cut -d'.' -f1)
++  PACKAGE_VERSION_MINOR=$(echo 0.2.3 | cut -d'.' -f2)
++  PACKAGE_VERSION_MICRO=$(echo 0.2.3 | cut -d'.' -f3)
 +
 +
 +
 +
 +
 +
 +
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
 +$as_echo_n "checking nano version... " >&6; }
 +
-   NANO=$(echo 0.2.0 | cut -d'.' -f4)
++  NANO=$(echo 0.2.3 | cut -d'.' -f4)
 +
 +  if test x"$NANO" = x || test "x$NANO" = "x0" ; then
 +    { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5
 +$as_echo "0 (release)" >&6; }
 +    NANO=0
 +    PACKAGE_VERSION_RELEASE=1
 +    :
 +  else
 +    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NANO" >&5
 +$as_echo "$NANO" >&6; }
 +    PACKAGE_VERSION_RELEASE=0.`date +%Y%m%d.%H%M%S`
 +    :
 +  fi
 +  PACKAGE_VERSION_NANO=$NANO
 +
 +
 +
 +
 +
 +AUTHORS=$srcdir/AUTHORS
 +
 +
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
 +$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
 +    # Check whether --enable-maintainer-mode was given.
 +if test "${enable_maintainer_mode+set}" = set; then :
 +  enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
 +else
 +  USE_MAINTAINER_MODE=no
 +fi
 +
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
 +$as_echo "$USE_MAINTAINER_MODE" >&6; }
 +   if test $USE_MAINTAINER_MODE = yes; then
 +  MAINTAINER_MODE_TRUE=
 +  MAINTAINER_MODE_FALSE='#'
 +else
 +  MAINTAINER_MODE_TRUE='#'
 +  MAINTAINER_MODE_FALSE=
 +fi
 +
 +  MAINT=$MAINTAINER_MODE_TRUE
 +
 +
 +
 +ACLOCAL_AMFLAGS="-I m4"
 +
 +
 +
 +
 +
-      { $as_echo "$as_me:${as_lineno-$LINENO}: Looking for Python version >= 2.3" >&5
- $as_echo "$as_me: Looking for Python version >= 2.3" >&6;}
-         prog="
- import sys, string
- minver = '2.3'
- pyver = string.split(sys.version)[0]  # first word is version string
- # split strings by '.'. just compare textually to allow for versions like
- # 2.4.1a0
- minver = string.split(minver, '.')
- pyver = string.split(pyver, '.')
- # we can now do comparisons on the two lists:
- if pyver >= minver:
- 	sys.exit(0)
- else:
- 	sys.exit(1)"
 +
-     python_good=false
-     for python_candidate in python python2.2 python2.1 python2.0 python2 python1.6 python1.5; do
-       unset PYTHON
-       # Extract the first word of "$python_candidate", so it can be a program name with args.
- set dummy $python_candidate; ac_word=$2
++
++
++        if test -n "$PYTHON"; then
++      # If the user set $PYTHON, use it and don't search something else.
++      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version is >= 2.3" >&5
++$as_echo_n "checking whether $PYTHON version is >= 2.3... " >&6; }
++      prog="import sys
++# split strings by '.' and convert to numeric.  Append some zeros
++# because we need at least 4 digits for the hex conversion.
++# map returns an iterator in Python 3.0 and a list in 2.x
++minver = list(map(int, '2.3'.split('.'))) + [0, 0, 0]
++minverhex = 0
++# xrange is not present in Python 3.0 and range returns an iterator
++for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i]
++sys.exit(sys.hexversion < minverhex)"
++  if { echo "$as_me:$LINENO: $PYTHON -c "$prog"" >&5
++   ($PYTHON -c "$prog") >&5 2>&5
++   ac_status=$?
++   echo "$as_me:$LINENO: \$? = $ac_status" >&5
++   (exit $ac_status); }; then :
++  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
++$as_echo "yes" >&6; }
++else
++  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
++$as_echo "no" >&6; }
++			       as_fn_error $? "Python interpreter is too old" "$LINENO" 5
++fi
++      am_display_PYTHON=$PYTHON
++    else
++      # Otherwise, try each interpreter until we find one that satisfies
++      # VERSION.
++      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 2.3" >&5
++$as_echo_n "checking for a Python interpreter with version >= 2.3... " >&6; }
++if ${am_cv_pathless_PYTHON+:} false; then :
++  $as_echo_n "(cached) " >&6
++else
++
++	for am_cv_pathless_PYTHON in python python2 python3 python3.3 python3.2 python3.1 python3.0 python2.7  python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do
++	  test "$am_cv_pathless_PYTHON" = none && break
++	  prog="import sys
++# split strings by '.' and convert to numeric.  Append some zeros
++# because we need at least 4 digits for the hex conversion.
++# map returns an iterator in Python 3.0 and a list in 2.x
++minver = list(map(int, '2.3'.split('.'))) + [0, 0, 0]
++minverhex = 0
++# xrange is not present in Python 3.0 and range returns an iterator
++for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i]
++sys.exit(sys.hexversion < minverhex)"
++  if { echo "$as_me:$LINENO: $am_cv_pathless_PYTHON -c "$prog"" >&5
++   ($am_cv_pathless_PYTHON -c "$prog") >&5 2>&5
++   ac_status=$?
++   echo "$as_me:$LINENO: \$? = $ac_status" >&5
++   (exit $ac_status); }; then :
++  break
++fi
++	done
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_pathless_PYTHON" >&5
++$as_echo "$am_cv_pathless_PYTHON" >&6; }
++      # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
++      if test "$am_cv_pathless_PYTHON" = none; then
++	PYTHON=:
++      else
++        # Extract the first word of "$am_cv_pathless_PYTHON", so it can be a program name with args.
++set dummy $am_cv_pathless_PYTHON; ac_word=$2
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 +$as_echo_n "checking for $ac_word... " >&6; }
 +if ${ac_cv_path_PYTHON+:} false; then :
 +  $as_echo_n "(cached) " >&6
 +else
 +  case $PYTHON in
 +  [\\/]* | ?:[\\/]*)
 +  ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
 +  ;;
 +  *)
 +  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    for ac_exec_ext in '' $ac_executable_extensions; do
-   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
 +    ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
 +    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
 +    break 2
 +  fi
 +done
 +  done
 +IFS=$as_save_IFS
 +
 +  ;;
 +esac
 +fi
 +PYTHON=$ac_cv_path_PYTHON
 +if test -n "$PYTHON"; then
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5
 +$as_echo "$PYTHON" >&6; }
 +else
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 +$as_echo "no" >&6; }
 +fi
 +
-  1> /dev/null 2> /dev/null
- 
-       if test "x$PYTHON" = "x"; then continue; fi
 +
-       if $PYTHON -c "$prog" 1>&5 2>&5; then
-         { $as_echo "$as_me:${as_lineno-$LINENO}: checking \"$PYTHON\":" >&5
- $as_echo_n "checking \"$PYTHON\":... " >&6; }
- 	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: okay" >&5
- $as_echo "okay" >&6; }
-         python_good=true
-         break;
-       else
-                 unset ac_cv_path_PYTHON
 +      fi
-     done
- 
- 
-   if test "$python_good" != "true"; then
-     as_fn_error $? "No suitable version of python found" "$LINENO" 5
-   fi
- 
-   { $as_echo "$as_me:${as_lineno-$LINENO}: checking local Python configuration" >&5
- $as_echo_n "checking local Python configuration... " >&6; }
++      am_display_PYTHON=$am_cv_pathless_PYTHON
++    fi
 +
 +
++  if test "$PYTHON" = :; then
++      as_fn_error $? "no suitable Python interpreter found" "$LINENO" 5
++  else
 +
-     PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[:3]"`
 +
++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5
++$as_echo_n "checking for $am_display_PYTHON version... " >&6; }
++if ${am_cv_python_version+:} false; then :
++  $as_echo_n "(cached) " >&6
++else
++  am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"`
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5
++$as_echo "$am_cv_python_version" >&6; }
++  PYTHON_VERSION=$am_cv_python_version
 +
 +
 +
 +  PYTHON_PREFIX='${prefix}'
 +
- 
 +  PYTHON_EXEC_PREFIX='${exec_prefix}'
 +
 +
 +
-   PYTHON_PLATFORM=`$PYTHON -c "import sys; print sys.platform"`
- 
++  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5
++$as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
++if ${am_cv_python_platform+:} false; then :
++  $as_echo_n "(cached) " >&6
++else
++  am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5
++$as_echo "$am_cv_python_platform" >&6; }
++  PYTHON_PLATFORM=$am_cv_python_platform
++
++
++  # Just factor out some code duplication.
++  am_python_setup_sysconfig="\
++import sys
++# Prefer sysconfig over distutils.sysconfig, for better compatibility
++# with python 3.x.  See automake bug#10227.
++try:
++    import sysconfig
++except ImportError:
++    can_use_sysconfig = 0
++else:
++    can_use_sysconfig = 1
++# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs:
++# <https://github.com/pypa/virtualenv/issues/118>
++try:
++    from platform import python_implementation
++    if python_implementation() == 'CPython' and sys.version[:3] == '2.7':
++        can_use_sysconfig = 0
++except ImportError:
++    pass"
++
++
++            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5
++$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
++if ${am_cv_python_pythondir+:} false; then :
++  $as_echo_n "(cached) " >&6
++else
++  if test "x$prefix" = xNONE
++     then
++       am_py_prefix=$ac_default_prefix
++     else
++       am_py_prefix=$prefix
++     fi
++     am_cv_python_pythondir=`$PYTHON -c "
++$am_python_setup_sysconfig
++if can_use_sysconfig:
++    sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'})
++else:
++    from distutils import sysconfig
++    sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix')
++sys.stdout.write(sitedir)"`
++     case $am_cv_python_pythondir in
++     $am_py_prefix*)
++       am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'`
++       am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"`
++       ;;
++     *)
++       case $am_py_prefix in
++         /usr|/System*) ;;
++         *)
++	  am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages
++	  ;;
++       esac
++       ;;
++     esac
 +
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5
++$as_echo "$am_cv_python_pythondir" >&6; }
++  pythondir=$am_cv_python_pythondir
 +
 +
 +
-   pythondir=$PYTHON_PREFIX"/lib/python"$PYTHON_VERSION/site-packages
++  pkgpythondir=\${pythondir}/$PACKAGE
 +
 +
++        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5
++$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
++if ${am_cv_python_pyexecdir+:} false; then :
++  $as_echo_n "(cached) " >&6
++else
++  if test "x$exec_prefix" = xNONE
++     then
++       am_py_exec_prefix=$am_py_prefix
++     else
++       am_py_exec_prefix=$exec_prefix
++     fi
++     am_cv_python_pyexecdir=`$PYTHON -c "
++$am_python_setup_sysconfig
++if can_use_sysconfig:
++    sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'})
++else:
++    from distutils import sysconfig
++    sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix')
++sys.stdout.write(sitedir)"`
++     case $am_cv_python_pyexecdir in
++     $am_py_exec_prefix*)
++       am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'`
++       am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"`
++       ;;
++     *)
++       case $am_py_exec_prefix in
++         /usr|/System*) ;;
++         *)
++	   am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages
++	   ;;
++       esac
++       ;;
++     esac
 +
-   pkgpythondir=\${pythondir}/$PACKAGE
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5
++$as_echo "$am_cv_python_pyexecdir" >&6; }
++  pyexecdir=$am_cv_python_pyexecdir
 +
 +
 +
-   pyexecdir=$PYTHON_EXEC_PREFIX"/lib/python"$PYTHON_VERSION/site-packages
++  pkgpyexecdir=\${pyexecdir}/$PACKAGE
 +
 +
 +
-   pkgpyexecdir=\${pyexecdir}/$PACKAGE
++  fi
 +
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: looks good" >&5
- $as_echo "looks good" >&6; }
 +
 +
 +PYVER=`$PYTHON -c "import sys ; print sys.version[:3]"`
 +
 +
 +  EXP_VAR=PYTHONLIBDIR
 +  FROM_VAR="\${exec_prefix}/lib/python$PYVER/site-packages"
 +
 +
 +    prefix_save=$prefix
 +  exec_prefix_save=$exec_prefix
 +
 +    if test "x$prefix" = "xNONE"; then
 +    prefix="$ac_default_prefix"
 +  fi
 +    if test "x$exec_prefix" = "xNONE"; then
 +    exec_prefix=$prefix
 +  fi
 +
 +  full_var="$FROM_VAR"
 +    while true; do
 +        new_full_var="`eval echo $full_var`"
 +    if test "x$new_full_var" = "x$full_var"; then break; fi
 +    full_var=$new_full_var
 +  done
 +
 +    full_var=$new_full_var
 +  PYTHONLIBDIR="$full_var"
 +
 +
 +    prefix=$prefix_save
 +  exec_prefix=$exec_prefix_save
 +
 +
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: Installing python code in $PYTHONLIBDIR" >&5
 +$as_echo "$as_me: Installing python code in $PYTHONLIBDIR" >&6;}
 +
 +
 +
 +  EXP_VAR=PLUGINSDIR
 +  FROM_VAR="\${libdir}/morituri/plugins"
 +
 +
 +    prefix_save=$prefix
 +  exec_prefix_save=$exec_prefix
 +
 +    if test "x$prefix" = "xNONE"; then
 +    prefix="$ac_default_prefix"
 +  fi
 +    if test "x$exec_prefix" = "xNONE"; then
 +    exec_prefix=$prefix
 +  fi
 +
 +  full_var="$FROM_VAR"
 +    while true; do
 +        new_full_var="`eval echo $full_var`"
 +    if test "x$new_full_var" = "x$full_var"; then break; fi
 +    full_var=$new_full_var
 +  done
 +
 +    full_var=$new_full_var
 +  PLUGINSDIR="$full_var"
 +
 +
 +    prefix=$prefix_save
 +  exec_prefix=$exec_prefix_save
 +
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: Setting plugins directory to $PLUGINSDIR" >&5
 +$as_echo "$as_me: Setting plugins directory to $PLUGINSDIR" >&6;}
 +
++REVISION=`$PYTHON -c 'from morituri.configure import configure; print configure.revision'`
++
++{ $as_echo "$as_me:${as_lineno-$LINENO}: Setting revision to $REVISION" >&5
++$as_echo "$as_me: Setting revision to $REVISION" >&6;}
++
 +# Extract the first word of "epydoc", so it can be a program name with args.
 +set dummy epydoc; ac_word=$2
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 +$as_echo_n "checking for $ac_word... " >&6; }
 +if ${ac_cv_prog_EPYDOC+:} false; then :
 +  $as_echo_n "(cached) " >&6
 +else
 +  if test -n "$EPYDOC"; then
 +  ac_cv_prog_EPYDOC="$EPYDOC" # Let the user override the test.
 +else
 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    for ac_exec_ext in '' $ac_executable_extensions; do
-   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
 +    ac_cv_prog_EPYDOC="yes"
 +    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
 +    break 2
 +  fi
 +done
 +  done
 +IFS=$as_save_IFS
 +
 +  test -z "$ac_cv_prog_EPYDOC" && ac_cv_prog_EPYDOC="no"
 +fi
 +fi
 +EPYDOC=$ac_cv_prog_EPYDOC
 +if test -n "$EPYDOC"; then
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $EPYDOC" >&5
 +$as_echo "$EPYDOC" >&6; }
 +else
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 +$as_echo "no" >&6; }
 +fi
 +
 +
 + if test "x$EPYDOC" = "xyes"; then
 +  HAVE_EPYDOC_TRUE=
 +  HAVE_EPYDOC_FALSE='#'
 +else
 +  HAVE_EPYDOC_TRUE='#'
 +  HAVE_EPYDOC_FALSE=
 +fi
 +
 +
 +# Extract the first word of "pychecker", so it can be a program name with args.
 +set dummy pychecker; ac_word=$2
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 +$as_echo_n "checking for $ac_word... " >&6; }
 +if ${ac_cv_prog_PYCHECKER+:} false; then :
 +  $as_echo_n "(cached) " >&6
 +else
 +  if test -n "$PYCHECKER"; then
 +  ac_cv_prog_PYCHECKER="$PYCHECKER" # Let the user override the test.
 +else
 +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    for ac_exec_ext in '' $ac_executable_extensions; do
-   if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
++  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
 +    ac_cv_prog_PYCHECKER="yes"
 +    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
 +    break 2
 +  fi
 +done
 +  done
 +IFS=$as_save_IFS
 +
 +  test -z "$ac_cv_prog_PYCHECKER" && ac_cv_prog_PYCHECKER="no"
 +fi
 +fi
 +PYCHECKER=$ac_cv_prog_PYCHECKER
 +if test -n "$PYCHECKER"; then
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYCHECKER" >&5
 +$as_echo "$PYCHECKER" >&6; }
 +else
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 +$as_echo "no" >&6; }
 +fi
 +
 +
 + if test "x$PYCHECKER" = "xyes"; then
 +  HAVE_PYCHECKER_TRUE=
 +  HAVE_PYCHECKER_FALSE='#'
 +else
 +  HAVE_PYCHECKER_TRUE='#'
 +  HAVE_PYCHECKER_FALSE=
 +fi
 +
 +
 +ac_config_files="$ac_config_files bin/rip"
 +
++ac_config_files="$ac_config_files etc/bash_completion.d/bash-compgen"
++
 +
 +ac_config_files="$ac_config_files Makefile bin/Makefile etc/Makefile etc/bash_completion.d/Makefile m4/Makefile morituri/Makefile morituri/rip/Makefile morituri/common/Makefile morituri/configure/Makefile morituri/configure/uninstalled.py morituri/configure/installed.py morituri/extern/Makefile morituri/image/Makefile morituri/program/Makefile morituri/result/Makefile morituri/test/Makefile doc/Makefile misc/Makefile morituri.spec"
 +
 +cat >confcache <<\_ACEOF
 +# This file is a shell script that caches the results of configure
 +# tests run on this system so they can be shared between configure
 +# scripts and configure runs, see configure's option --config-cache.
 +# It is not useful on other systems.  If it contains results you don't
 +# want to keep, you may remove or edit it.
 +#
 +# config.status only pays attention to the cache file if you give it
 +# the --recheck option to rerun configure.
 +#
 +# `ac_cv_env_foo' variables (set or unset) will be overridden when
 +# loading this file, other *unset* `ac_cv_foo' will be assigned the
 +# following values.
 +
 +_ACEOF
 +
 +# The following way of writing the cache mishandles newlines in values,
 +# but we know of no workaround that is simple, portable, and efficient.
 +# So, we kill variables containing newlines.
 +# Ultrix sh set writes to stderr and can't be redirected directly,
 +# and sets the high bit in the cache file unless we assign to the vars.
 +(
 +  for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
 +    eval ac_val=\$$ac_var
 +    case $ac_val in #(
 +    *${as_nl}*)
 +      case $ac_var in #(
 +      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
 +      esac
 +      case $ac_var in #(
 +      _ | IFS | as_nl) ;; #(
 +      BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
 +      *) { eval $ac_var=; unset $ac_var;} ;;
 +      esac ;;
 +    esac
 +  done
 +
 +  (set) 2>&1 |
 +    case $as_nl`(ac_space=' '; set) 2>&1` in #(
 +    *${as_nl}ac_space=\ *)
 +      # `set' does not quote correctly, so add quotes: double-quote
 +      # substitution turns \\\\ into \\, and sed turns \\ into \.
 +      sed -n \
 +	"s/'/'\\\\''/g;
 +	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
 +      ;; #(
 +    *)
 +      # `set' quotes correctly as required by POSIX, so do not add quotes.
 +      sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
 +      ;;
 +    esac |
 +    sort
 +) |
 +  sed '
 +     /^ac_cv_env_/b end
 +     t clear
 +     :clear
 +     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
 +     t end
 +     s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
 +     :end' >>confcache
 +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
 +  if test -w "$cache_file"; then
 +    if test "x$cache_file" != "x/dev/null"; then
 +      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
 +$as_echo "$as_me: updating cache $cache_file" >&6;}
 +      if test ! -f "$cache_file" || test -h "$cache_file"; then
 +	cat confcache >"$cache_file"
 +      else
 +        case $cache_file in #(
 +        */* | ?:*)
 +	  mv -f confcache "$cache_file"$$ &&
 +	  mv -f "$cache_file"$$ "$cache_file" ;; #(
 +        *)
 +	  mv -f confcache "$cache_file" ;;
 +	esac
 +      fi
 +    fi
 +  else
 +    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
 +  fi
 +fi
 +rm -f confcache
 +
 +test "x$prefix" = xNONE && prefix=$ac_default_prefix
 +# Let make expand exec_prefix.
 +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
 +
 +# Transform confdefs.h into DEFS.
 +# Protect against shell expansion while executing Makefile rules.
 +# Protect against Makefile macro expansion.
 +#
 +# If the first sed substitution is executed (which looks for macros that
 +# take arguments), then branch to the quote section.  Otherwise,
 +# look for a macro that doesn't take arguments.
 +ac_script='
 +:mline
 +/\\$/{
 + N
 + s,\\\n,,
 + b mline
 +}
 +t clear
 +:clear
 +s/^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 (][^	 (]*([^)]*)\)[	 ]*\(.*\)/-D\1=\2/g
 +t quote
 +s/^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 ][^	 ]*\)[	 ]*\(.*\)/-D\1=\2/g
 +t quote
 +b any
 +:quote
 +s/[	 `~#$^&*(){}\\|;'\''"<>?]/\\&/g
 +s/\[/\\&/g
 +s/\]/\\&/g
 +s/\$/$$/g
 +H
 +:any
 +${
 +	g
 +	s/^\n//
 +	s/\n/ /g
 +	p
 +}
 +'
 +DEFS=`sed -n "$ac_script" confdefs.h`
 +
 +
 +ac_libobjs=
 +ac_ltlibobjs=
 +U=
 +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
 +  # 1. Remove the extension, and $U if already installed.
 +  ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
 +  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
 +  # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
 +  #    will be set to the directory where LIBOBJS objects are built.
 +  as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
 +  as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
 +done
 +LIBOBJS=$ac_libobjs
 +
 +LTLIBOBJS=$ac_ltlibobjs
 +
 +
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
++$as_echo_n "checking that generated files are newer than configure... " >&6; }
++   if test -n "$am_sleep_pid"; then
++     # Hide warnings about reused PIDs.
++     wait $am_sleep_pid 2>/dev/null
++   fi
++   { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
++$as_echo "done" >&6; }
 +
 +if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then
 +  as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
 +Usually this means the macro was only invoked conditionally." "$LINENO" 5
 +fi
 +if test -z "${HAVE_EPYDOC_TRUE}" && test -z "${HAVE_EPYDOC_FALSE}"; then
 +  as_fn_error $? "conditional \"HAVE_EPYDOC\" was never defined.
 +Usually this means the macro was only invoked conditionally." "$LINENO" 5
 +fi
 +if test -z "${HAVE_PYCHECKER_TRUE}" && test -z "${HAVE_PYCHECKER_FALSE}"; then
 +  as_fn_error $? "conditional \"HAVE_PYCHECKER\" was never defined.
 +Usually this means the macro was only invoked conditionally." "$LINENO" 5
 +fi
 +
 +: "${CONFIG_STATUS=./config.status}"
 +ac_write_fail=0
 +ac_clean_files_save=$ac_clean_files
 +ac_clean_files="$ac_clean_files $CONFIG_STATUS"
 +{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
 +$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
 +as_write_fail=0
 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
 +#! $SHELL
 +# Generated by $as_me.
 +# Run this file to recreate the current configuration.
 +# Compiler output produced by configure, useful for debugging
 +# configure, is in config.log if it exists.
 +
 +debug=false
 +ac_cs_recheck=false
 +ac_cs_silent=false
 +
 +SHELL=\${CONFIG_SHELL-$SHELL}
 +export SHELL
 +_ASEOF
 +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
 +## -------------------- ##
 +## M4sh Initialization. ##
 +## -------------------- ##
 +
 +# Be more Bourne compatible
 +DUALCASE=1; export DUALCASE # for MKS sh
 +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
 +  emulate sh
 +  NULLCMD=:
 +  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
 +  # is contrary to our usage.  Disable this feature.
 +  alias -g '${1+"$@"}'='"$@"'
 +  setopt NO_GLOB_SUBST
 +else
 +  case `(set -o) 2>/dev/null` in #(
 +  *posix*) :
 +    set -o posix ;; #(
 +  *) :
 +     ;;
 +esac
 +fi
 +
 +
 +as_nl='
 +'
 +export as_nl
 +# Printing a long string crashes Solaris 7 /usr/bin/printf.
 +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
 +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
 +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
 +# Prefer a ksh shell builtin over an external printf program on Solaris,
 +# but without wasting forks for bash or zsh.
 +if test -z "$BASH_VERSION$ZSH_VERSION" \
 +    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
 +  as_echo='print -r --'
 +  as_echo_n='print -rn --'
 +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
 +  as_echo='printf %s\n'
 +  as_echo_n='printf %s'
 +else
 +  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
 +    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
 +    as_echo_n='/usr/ucb/echo -n'
 +  else
 +    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
 +    as_echo_n_body='eval
 +      arg=$1;
 +      case $arg in #(
 +      *"$as_nl"*)
 +	expr "X$arg" : "X\\(.*\\)$as_nl";
 +	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
 +      esac;
 +      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
 +    '
 +    export as_echo_n_body
 +    as_echo_n='sh -c $as_echo_n_body as_echo'
 +  fi
 +  export as_echo_body
 +  as_echo='sh -c $as_echo_body as_echo'
 +fi
 +
 +# The user is always right.
 +if test "${PATH_SEPARATOR+set}" != set; then
 +  PATH_SEPARATOR=:
 +  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
 +    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
 +      PATH_SEPARATOR=';'
 +  }
 +fi
 +
 +
 +# IFS
 +# We need space, tab and new line, in precisely that order.  Quoting is
 +# there to prevent editors from complaining about space-tab.
 +# (If _AS_PATH_WALK were called with IFS unset, it would disable word
 +# splitting by setting IFS to empty value.)
 +IFS=" ""	$as_nl"
 +
 +# Find who we are.  Look in the path if we contain no directory separator.
 +as_myself=
 +case $0 in #((
 +  *[\\/]* ) as_myself=$0 ;;
 +  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 +for as_dir in $PATH
 +do
 +  IFS=$as_save_IFS
 +  test -z "$as_dir" && as_dir=.
 +    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
 +  done
 +IFS=$as_save_IFS
 +
 +     ;;
 +esac
 +# We did not find ourselves, most probably we were run as `sh COMMAND'
 +# in which case we are not to be found in the path.
 +if test "x$as_myself" = x; then
 +  as_myself=$0
 +fi
 +if test ! -f "$as_myself"; then
 +  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
 +  exit 1
 +fi
 +
 +# Unset variables that we do not need and which cause bugs (e.g. in
 +# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
 +# suppresses any "Segmentation fault" message there.  '((' could
 +# trigger a bug in pdksh 5.2.14.
 +for as_var in BASH_ENV ENV MAIL MAILPATH
 +do eval test x\${$as_var+set} = xset \
 +  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
 +done
 +PS1='$ '
 +PS2='> '
 +PS4='+ '
 +
 +# NLS nuisances.
 +LC_ALL=C
 +export LC_ALL
 +LANGUAGE=C
 +export LANGUAGE
 +
 +# CDPATH.
 +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 +
 +
 +# as_fn_error STATUS ERROR [LINENO LOG_FD]
 +# ----------------------------------------
 +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
 +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
 +# script with STATUS, using 1 if that was 0.
 +as_fn_error ()
 +{
 +  as_status=$1; test $as_status -eq 0 && as_status=1
 +  if test "$4"; then
 +    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
 +    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
 +  fi
 +  $as_echo "$as_me: error: $2" >&2
 +  as_fn_exit $as_status
 +} # as_fn_error
 +
 +
 +# as_fn_set_status STATUS
 +# -----------------------
 +# Set $? to STATUS, without forking.
 +as_fn_set_status ()
 +{
 +  return $1
 +} # as_fn_set_status
 +
 +# as_fn_exit STATUS
 +# -----------------
 +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
 +as_fn_exit ()
 +{
 +  set +e
 +  as_fn_set_status $1
 +  exit $1
 +} # as_fn_exit
 +
 +# as_fn_unset VAR
 +# ---------------
 +# Portably unset VAR.
 +as_fn_unset ()
 +{
 +  { eval $1=; unset $1;}
 +}
 +as_unset=as_fn_unset
 +# as_fn_append VAR VALUE
 +# ----------------------
 +# Append the text in VALUE to the end of the definition contained in VAR. Take
 +# advantage of any shell optimizations that allow amortized linear growth over
 +# repeated appends, instead of the typical quadratic growth present in naive
 +# implementations.
 +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
 +  eval 'as_fn_append ()
 +  {
 +    eval $1+=\$2
 +  }'
 +else
 +  as_fn_append ()
 +  {
 +    eval $1=\$$1\$2
 +  }
 +fi # as_fn_append
 +
 +# as_fn_arith ARG...
 +# ------------------
 +# Perform arithmetic evaluation on the ARGs, and store the result in the
 +# global $as_val. Take advantage of shells that can avoid forks. The arguments
 +# must be portable across $(()) and expr.
 +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
 +  eval 'as_fn_arith ()
 +  {
 +    as_val=$(( $* ))
 +  }'
 +else
 +  as_fn_arith ()
 +  {
 +    as_val=`expr "$@" || test $? -eq 1`
 +  }
 +fi # as_fn_arith
 +
 +
 +if expr a : '\(a\)' >/dev/null 2>&1 &&
 +   test "X`expr 00001 : '.*\(...\)'`" = X001; then
 +  as_expr=expr
 +else
 +  as_expr=false
 +fi
 +
 +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
 +  as_basename=basename
 +else
 +  as_basename=false
 +fi
 +
 +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
 +  as_dirname=dirname
 +else
 +  as_dirname=false
 +fi
 +
 +as_me=`$as_basename -- "$0" ||
 +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
 +	 X"$0" : 'X\(//\)$' \| \
 +	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
 +$as_echo X/"$0" |
 +    sed '/^.*\/\([^/][^/]*\)\/*$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\/\(\/\/\)$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\/\(\/\).*/{
 +	    s//\1/
 +	    q
 +	  }
 +	  s/.*/./; q'`
 +
 +# Avoid depending upon Character Ranges.
 +as_cr_letters='abcdefghijklmnopqrstuvwxyz'
 +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
 +as_cr_Letters=$as_cr_letters$as_cr_LETTERS
 +as_cr_digits='0123456789'
 +as_cr_alnum=$as_cr_Letters$as_cr_digits
 +
 +ECHO_C= ECHO_N= ECHO_T=
 +case `echo -n x` in #(((((
 +-n*)
 +  case `echo 'xy\c'` in
 +  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
 +  xy)  ECHO_C='\c';;
 +  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
 +       ECHO_T='	';;
 +  esac;;
 +*)
 +  ECHO_N='-n';;
 +esac
 +
 +rm -f conf$$ conf$$.exe conf$$.file
 +if test -d conf$$.dir; then
 +  rm -f conf$$.dir/conf$$.file
 +else
 +  rm -f conf$$.dir
 +  mkdir conf$$.dir 2>/dev/null
 +fi
 +if (echo >conf$$.file) 2>/dev/null; then
 +  if ln -s conf$$.file conf$$ 2>/dev/null; then
 +    as_ln_s='ln -s'
 +    # ... but there are two gotchas:
 +    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
 +    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-     # In both cases, we have to default to `cp -p'.
++    # In both cases, we have to default to `cp -pR'.
 +    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-       as_ln_s='cp -p'
++      as_ln_s='cp -pR'
 +  elif ln conf$$.file conf$$ 2>/dev/null; then
 +    as_ln_s=ln
 +  else
-     as_ln_s='cp -p'
++    as_ln_s='cp -pR'
 +  fi
 +else
-   as_ln_s='cp -p'
++  as_ln_s='cp -pR'
 +fi
 +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 +rmdir conf$$.dir 2>/dev/null
 +
 +
 +# as_fn_mkdir_p
 +# -------------
 +# Create "$as_dir" as a directory, including parents if necessary.
 +as_fn_mkdir_p ()
 +{
 +
 +  case $as_dir in #(
 +  -*) as_dir=./$as_dir;;
 +  esac
 +  test -d "$as_dir" || eval $as_mkdir_p || {
 +    as_dirs=
 +    while :; do
 +      case $as_dir in #(
 +      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
 +      *) as_qdir=$as_dir;;
 +      esac
 +      as_dirs="'$as_qdir' $as_dirs"
 +      as_dir=`$as_dirname -- "$as_dir" ||
 +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 +	 X"$as_dir" : 'X\(//\)[^/]' \| \
 +	 X"$as_dir" : 'X\(//\)$' \| \
 +	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
 +$as_echo X"$as_dir" |
 +    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\/\)[^/].*/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\/\)$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\).*/{
 +	    s//\1/
 +	    q
 +	  }
 +	  s/.*/./; q'`
 +      test -d "$as_dir" && break
 +    done
 +    test -z "$as_dirs" || eval "mkdir $as_dirs"
 +  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
 +
 +
 +} # as_fn_mkdir_p
 +if mkdir -p . 2>/dev/null; then
 +  as_mkdir_p='mkdir -p "$as_dir"'
 +else
 +  test -d ./-p && rmdir ./-p
 +  as_mkdir_p=false
 +fi
 +
- if test -x / >/dev/null 2>&1; then
-   as_test_x='test -x'
- else
-   if ls -dL / >/dev/null 2>&1; then
-     as_ls_L_option=L
-   else
-     as_ls_L_option=
-   fi
-   as_test_x='
-     eval sh -c '\''
-       if test -d "$1"; then
- 	test -d "$1/.";
-       else
- 	case $1 in #(
- 	-*)set "./$1";;
- 	esac;
- 	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
- 	???[sx]*):;;*)false;;esac;fi
-     '\'' sh
-   '
- fi
- as_executable_p=$as_test_x
++
++# as_fn_executable_p FILE
++# -----------------------
++# Test if FILE is an executable regular file.
++as_fn_executable_p ()
++{
++  test -f "$1" && test -x "$1"
++} # as_fn_executable_p
++as_test_x='test -x'
++as_executable_p=as_fn_executable_p
 +
 +# Sed expression to map a string onto a valid CPP name.
 +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
 +
 +# Sed expression to map a string onto a valid variable name.
 +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
 +
 +
 +exec 6>&1
 +## ----------------------------------- ##
 +## Main body of $CONFIG_STATUS script. ##
 +## ----------------------------------- ##
 +_ASEOF
 +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
 +
 +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 +# Save the log message, to keep $0 and so on meaningful, and to
 +# report actual input values of CONFIG_FILES etc. instead of their
 +# values after options handling.
 +ac_log="
- This file was extended by morituri $as_me 0.2.0, which was
- generated by GNU Autoconf 2.68.  Invocation command line was
++This file was extended by morituri $as_me 0.2.3, which was
++generated by GNU Autoconf 2.69.  Invocation command line was
 +
 +  CONFIG_FILES    = $CONFIG_FILES
 +  CONFIG_HEADERS  = $CONFIG_HEADERS
 +  CONFIG_LINKS    = $CONFIG_LINKS
 +  CONFIG_COMMANDS = $CONFIG_COMMANDS
 +  $ $0 $@
 +
 +on `(hostname || uname -n) 2>/dev/null | sed 1q`
 +"
 +
 +_ACEOF
 +
 +case $ac_config_files in *"
 +"*) set x $ac_config_files; shift; ac_config_files=$*;;
 +esac
 +
 +
 +
 +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 +# Files that config.status was made for.
 +config_files="$ac_config_files"
 +
 +_ACEOF
 +
 +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 +ac_cs_usage="\
 +\`$as_me' instantiates files and other configuration actions
 +from templates according to the current configuration.  Unless the files
 +and actions are specified as TAGs, all are instantiated by default.
 +
 +Usage: $0 [OPTION]... [TAG]...
 +
 +  -h, --help       print this help, then exit
 +  -V, --version    print version number and configuration settings, then exit
 +      --config     print configuration, then exit
 +  -q, --quiet, --silent
 +                   do not print progress messages
 +  -d, --debug      don't remove temporary files
 +      --recheck    update $as_me by reconfiguring in the same conditions
 +      --file=FILE[:TEMPLATE]
 +                   instantiate the configuration file FILE
 +
 +Configuration files:
 +$config_files
 +
 +Report bugs to <http://thomas.apestaart.org/morituri/trac/newticket>."
 +
 +_ACEOF
 +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 +ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 +ac_cs_version="\\
- morituri config.status 0.2.0
- configured by $0, generated by GNU Autoconf 2.68,
++morituri config.status 0.2.3
++configured by $0, generated by GNU Autoconf 2.69,
 +  with options \\"\$ac_cs_config\\"
 +
- Copyright (C) 2010 Free Software Foundation, Inc.
++Copyright (C) 2012 Free Software Foundation, Inc.
 +This config.status script is free software; the Free Software Foundation
 +gives unlimited permission to copy, distribute and modify it."
 +
 +ac_pwd='$ac_pwd'
 +srcdir='$srcdir'
 +INSTALL='$INSTALL'
 +MKDIR_P='$MKDIR_P'
 +AWK='$AWK'
 +test -n "\$AWK" || AWK=awk
 +_ACEOF
 +
 +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 +# The default lists apply if the user does not specify any file.
 +ac_need_defaults=:
 +while test $# != 0
 +do
 +  case $1 in
 +  --*=?*)
 +    ac_option=`expr "X$1" : 'X\([^=]*\)='`
 +    ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
 +    ac_shift=:
 +    ;;
 +  --*=)
 +    ac_option=`expr "X$1" : 'X\([^=]*\)='`
 +    ac_optarg=
 +    ac_shift=:
 +    ;;
 +  *)
 +    ac_option=$1
 +    ac_optarg=$2
 +    ac_shift=shift
 +    ;;
 +  esac
 +
 +  case $ac_option in
 +  # Handling of the options.
 +  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
 +    ac_cs_recheck=: ;;
 +  --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
 +    $as_echo "$ac_cs_version"; exit ;;
 +  --config | --confi | --conf | --con | --co | --c )
 +    $as_echo "$ac_cs_config"; exit ;;
 +  --debug | --debu | --deb | --de | --d | -d )
 +    debug=: ;;
 +  --file | --fil | --fi | --f )
 +    $ac_shift
 +    case $ac_optarg in
 +    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
 +    '') as_fn_error $? "missing file argument" ;;
 +    esac
 +    as_fn_append CONFIG_FILES " '$ac_optarg'"
 +    ac_need_defaults=false;;
 +  --he | --h |  --help | --hel | -h )
 +    $as_echo "$ac_cs_usage"; exit ;;
 +  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
 +  | -silent | --silent | --silen | --sile | --sil | --si | --s)
 +    ac_cs_silent=: ;;
 +
 +  # This is an error.
 +  -*) as_fn_error $? "unrecognized option: \`$1'
 +Try \`$0 --help' for more information." ;;
 +
 +  *) as_fn_append ac_config_targets " $1"
 +     ac_need_defaults=false ;;
 +
 +  esac
 +  shift
 +done
 +
 +ac_configure_extra_args=
 +
 +if $ac_cs_silent; then
 +  exec 6>/dev/null
 +  ac_configure_extra_args="$ac_configure_extra_args --silent"
 +fi
 +
 +_ACEOF
 +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 +if \$ac_cs_recheck; then
-   set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
++  set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
 +  shift
 +  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
 +  CONFIG_SHELL='$SHELL'
 +  export CONFIG_SHELL
 +  exec "\$@"
 +fi
 +
 +_ACEOF
 +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 +exec 5>>config.log
 +{
 +  echo
 +  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
 +## Running $as_me. ##
 +_ASBOX
 +  $as_echo "$ac_log"
 +} >&5
 +
 +_ACEOF
 +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 +_ACEOF
 +
 +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 +
 +# Handling of arguments.
 +for ac_config_target in $ac_config_targets
 +do
 +  case $ac_config_target in
 +    "bin/rip") CONFIG_FILES="$CONFIG_FILES bin/rip" ;;
++    "etc/bash_completion.d/bash-compgen") CONFIG_FILES="$CONFIG_FILES etc/bash_completion.d/bash-compgen" ;;
 +    "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
 +    "bin/Makefile") CONFIG_FILES="$CONFIG_FILES bin/Makefile" ;;
 +    "etc/Makefile") CONFIG_FILES="$CONFIG_FILES etc/Makefile" ;;
 +    "etc/bash_completion.d/Makefile") CONFIG_FILES="$CONFIG_FILES etc/bash_completion.d/Makefile" ;;
 +    "m4/Makefile") CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;;
 +    "morituri/Makefile") CONFIG_FILES="$CONFIG_FILES morituri/Makefile" ;;
 +    "morituri/rip/Makefile") CONFIG_FILES="$CONFIG_FILES morituri/rip/Makefile" ;;
 +    "morituri/common/Makefile") CONFIG_FILES="$CONFIG_FILES morituri/common/Makefile" ;;
 +    "morituri/configure/Makefile") CONFIG_FILES="$CONFIG_FILES morituri/configure/Makefile" ;;
 +    "morituri/configure/uninstalled.py") CONFIG_FILES="$CONFIG_FILES morituri/configure/uninstalled.py" ;;
 +    "morituri/configure/installed.py") CONFIG_FILES="$CONFIG_FILES morituri/configure/installed.py" ;;
 +    "morituri/extern/Makefile") CONFIG_FILES="$CONFIG_FILES morituri/extern/Makefile" ;;
 +    "morituri/image/Makefile") CONFIG_FILES="$CONFIG_FILES morituri/image/Makefile" ;;
 +    "morituri/program/Makefile") CONFIG_FILES="$CONFIG_FILES morituri/program/Makefile" ;;
 +    "morituri/result/Makefile") CONFIG_FILES="$CONFIG_FILES morituri/result/Makefile" ;;
 +    "morituri/test/Makefile") CONFIG_FILES="$CONFIG_FILES morituri/test/Makefile" ;;
 +    "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
 +    "misc/Makefile") CONFIG_FILES="$CONFIG_FILES misc/Makefile" ;;
 +    "morituri.spec") CONFIG_FILES="$CONFIG_FILES morituri.spec" ;;
 +
 +  *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
 +  esac
 +done
 +
 +
 +# If the user did not use the arguments to specify the items to instantiate,
 +# then the envvar interface is used.  Set only those that are not.
 +# We use the long form for the default assignment because of an extremely
 +# bizarre bug on SunOS 4.1.3.
 +if $ac_need_defaults; then
 +  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
 +fi
 +
 +# Have a temporary directory for convenience.  Make it in the build tree
 +# simply because there is no reason against having it here, and in addition,
 +# creating and moving files from /tmp can sometimes cause problems.
 +# Hook for its removal unless debugging.
 +# Note that there is a small window in which the directory will not be cleaned:
 +# after its creation but before its name has been assigned to `$tmp'.
 +$debug ||
 +{
 +  tmp= ac_tmp=
 +  trap 'exit_status=$?
 +  : "${ac_tmp:=$tmp}"
 +  { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
 +' 0
 +  trap 'as_fn_exit 1' 1 2 13 15
 +}
 +# Create a (secure) tmp directory for tmp files.
 +
 +{
 +  tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
 +  test -d "$tmp"
 +}  ||
 +{
 +  tmp=./conf$$-$RANDOM
 +  (umask 077 && mkdir "$tmp")
 +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
 +ac_tmp=$tmp
 +
 +# Set up the scripts for CONFIG_FILES section.
 +# No need to generate them if there are no CONFIG_FILES.
 +# This happens for instance with `./config.status config.h'.
 +if test -n "$CONFIG_FILES"; then
 +
 +if $AWK 'BEGIN { getline <"/dev/null" }' </dev/null 2>/dev/null; then
 +  ac_cs_awk_getline=:
 +  ac_cs_awk_pipe_init=
 +  ac_cs_awk_read_file='
 +      while ((getline aline < (F[key])) > 0)
 +	print(aline)
 +      close(F[key])'
 +  ac_cs_awk_pipe_fini=
 +else
 +  ac_cs_awk_getline=false
 +  ac_cs_awk_pipe_init="print \"cat <<'|#_!!_#|' &&\""
 +  ac_cs_awk_read_file='
 +      print "|#_!!_#|"
 +      print "cat " F[key] " &&"
 +      '$ac_cs_awk_pipe_init
 +  # The final `:' finishes the AND list.
 +  ac_cs_awk_pipe_fini='END { print "|#_!!_#|"; print ":" }'
 +fi
 +ac_cr=`echo X | tr X '\015'`
 +# On cygwin, bash can eat \r inside `` if the user requested igncr.
 +# But we know of no other shell where ac_cr would be empty at this
 +# point, so we can use a bashism as a fallback.
 +if test "x$ac_cr" = x; then
 +  eval ac_cr=\$\'\\r\'
 +fi
 +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
 +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
 +  ac_cs_awk_cr='\\r'
 +else
 +  ac_cs_awk_cr=$ac_cr
 +fi
 +
 +echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
 +_ACEOF
 +
 +# Create commands to substitute file output variables.
 +{
 +  echo "cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1" &&
 +  echo 'cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&' &&
 +  echo "$ac_subst_files" | sed 's/.*/F["&"]="$&"/' &&
 +  echo "_ACAWK" &&
 +  echo "_ACEOF"
 +} >conf$$files.sh &&
 +. ./conf$$files.sh ||
 +  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
 +rm -f conf$$files.sh
 +
 +{
 +  echo "cat >conf$$subs.awk <<_ACEOF" &&
 +  echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
 +  echo "_ACEOF"
 +} >conf$$subs.sh ||
 +  as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
 +ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
 +ac_delim='%!_!# '
 +for ac_last_try in false false false false false :; do
 +  . ./conf$$subs.sh ||
 +    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
 +
 +  ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
 +  if test $ac_delim_n = $ac_delim_num; then
 +    break
 +  elif $ac_last_try; then
 +    as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
 +  else
 +    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
 +  fi
 +done
 +rm -f conf$$subs.sh
 +
 +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 +cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
 +_ACEOF
 +sed -n '
 +h
 +s/^/S["/; s/!.*/"]=/
 +p
 +g
 +s/^[^!]*!//
 +:repl
 +t repl
 +s/'"$ac_delim"'$//
 +t delim
 +:nl
 +h
 +s/\(.\{148\}\)..*/\1/
 +t more1
 +s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
 +p
 +n
 +b repl
 +:more1
 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/
 +p
 +g
 +s/.\{148\}//
 +t nl
 +:delim
 +h
 +s/\(.\{148\}\)..*/\1/
 +t more2
 +s/["\\]/\\&/g; s/^/"/; s/$/"/
 +p
 +b
 +:more2
 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/
 +p
 +g
 +s/.\{148\}//
 +t delim
 +' <conf$$subs.awk | sed '
 +/^[^""]/{
 +  N
 +  s/\n//
 +}
 +' >>$CONFIG_STATUS || ac_write_fail=1
 +rm -f conf$$subs.awk
 +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 +_ACAWK
 +cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
 +  for (key in S) S_is_set[key] = 1
 +  FS = ""
 +  \$ac_cs_awk_pipe_init
 +}
 +{
 +  line = $ 0
 +  nfields = split(line, field, "@")
 +  substed = 0
 +  len = length(field[1])
 +  for (i = 2; i < nfields; i++) {
 +    key = field[i]
 +    keylen = length(key)
 +    if (S_is_set[key]) {
 +      value = S[key]
 +      line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
 +      len += length(value) + length(field[++i])
 +      substed = 1
 +    } else
 +      len += 1 + keylen
 +  }
 +  if (nfields == 3 && !substed) {
 +    key = field[2]
 +    if (F[key] != "" && line ~ /^[	 ]*@.*@[	 ]*$/) {
 +      \$ac_cs_awk_read_file
 +      next
 +    }
 +  }
 +  print line
 +}
 +\$ac_cs_awk_pipe_fini
 +_ACAWK
 +_ACEOF
 +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
 +  sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
 +else
 +  cat
 +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
 +  || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
 +_ACEOF
 +
 +# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
 +# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
 +# trailing colons and then remove the whole line if VPATH becomes empty
 +# (actually we leave an empty line to preserve line numbers).
 +if test "x$srcdir" = x.; then
 +  ac_vpsub='/^[	 ]*VPATH[	 ]*=[	 ]*/{
 +h
 +s///
 +s/^/:/
 +s/[	 ]*$/:/
 +s/:\$(srcdir):/:/g
 +s/:\${srcdir}:/:/g
 +s/:@srcdir@:/:/g
 +s/^:*//
 +s/:*$//
 +x
 +s/\(=[	 ]*\).*/\1/
 +G
 +s/\n//
 +s/^[^=]*=[	 ]*$//
 +}'
 +fi
 +
 +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 +fi # test -n "$CONFIG_FILES"
 +
 +
 +eval set X "  :F $CONFIG_FILES      "
 +shift
 +for ac_tag
 +do
 +  case $ac_tag in
 +  :[FHLC]) ac_mode=$ac_tag; continue;;
 +  esac
 +  case $ac_mode$ac_tag in
 +  :[FHL]*:*);;
 +  :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
 +  :[FH]-) ac_tag=-:-;;
 +  :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
 +  esac
 +  ac_save_IFS=$IFS
 +  IFS=:
 +  set x $ac_tag
 +  IFS=$ac_save_IFS
 +  shift
 +  ac_file=$1
 +  shift
 +
 +  case $ac_mode in
 +  :L) ac_source=$1;;
 +  :[FH])
 +    ac_file_inputs=
 +    for ac_f
 +    do
 +      case $ac_f in
 +      -) ac_f="$ac_tmp/stdin";;
 +      *) # Look for the file first in the build tree, then in the source tree
 +	 # (if the path is not absolute).  The absolute path cannot be DOS-style,
 +	 # because $ac_f cannot contain `:'.
 +	 test -f "$ac_f" ||
 +	   case $ac_f in
 +	   [\\/$]*) false;;
 +	   *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
 +	   esac ||
 +	   as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
 +      esac
 +      case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
 +      as_fn_append ac_file_inputs " '$ac_f'"
 +    done
 +
 +    # Let's still pretend it is `configure' which instantiates (i.e., don't
 +    # use $as_me), people would be surprised to read:
 +    #    /* config.h.  Generated by config.status.  */
 +    configure_input='Generated from '`
 +	  $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
 +	`' by configure.'
 +    if test x"$ac_file" != x-; then
 +      configure_input="$ac_file.  $configure_input"
 +      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
 +$as_echo "$as_me: creating $ac_file" >&6;}
 +    fi
 +    # Neutralize special characters interpreted by sed in replacement strings.
 +    case $configure_input in #(
 +    *\&* | *\|* | *\\* )
 +       ac_sed_conf_input=`$as_echo "$configure_input" |
 +       sed 's/[\\\\&|]/\\\\&/g'`;; #(
 +    *) ac_sed_conf_input=$configure_input;;
 +    esac
 +
 +    case $ac_tag in
 +    *:-:* | *:-) cat >"$ac_tmp/stdin" \
 +      || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
 +    esac
 +    ;;
 +  esac
 +
 +  ac_dir=`$as_dirname -- "$ac_file" ||
 +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 +	 X"$ac_file" : 'X\(//\)[^/]' \| \
 +	 X"$ac_file" : 'X\(//\)$' \| \
 +	 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
 +$as_echo X"$ac_file" |
 +    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\/\)[^/].*/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\/\)$/{
 +	    s//\1/
 +	    q
 +	  }
 +	  /^X\(\/\).*/{
 +	    s//\1/
 +	    q
 +	  }
 +	  s/.*/./; q'`
 +  as_dir="$ac_dir"; as_fn_mkdir_p
 +  ac_builddir=.
 +
 +case "$ac_dir" in
 +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 +*)
 +  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
 +  # A ".." for each directory in $ac_dir_suffix.
 +  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
 +  case $ac_top_builddir_sub in
 +  "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
 +  *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
 +  esac ;;
 +esac
 +ac_abs_top_builddir=$ac_pwd
 +ac_abs_builddir=$ac_pwd$ac_dir_suffix
 +# for backward compatibility:
 +ac_top_builddir=$ac_top_build_prefix
 +
 +case $srcdir in
 +  .)  # We are building in place.
 +    ac_srcdir=.
 +    ac_top_srcdir=$ac_top_builddir_sub
 +    ac_abs_top_srcdir=$ac_pwd ;;
 +  [\\/]* | ?:[\\/]* )  # Absolute name.
 +    ac_srcdir=$srcdir$ac_dir_suffix;
 +    ac_top_srcdir=$srcdir
 +    ac_abs_top_srcdir=$srcdir ;;
 +  *) # Relative name.
 +    ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
 +    ac_top_srcdir=$ac_top_build_prefix$srcdir
 +    ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
 +esac
 +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
 +
 +
 +  case $ac_mode in
 +  :F)
 +  #
 +  # CONFIG_FILE
 +  #
 +
 +  case $INSTALL in
 +  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
 +  *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
 +  esac
 +  ac_MKDIR_P=$MKDIR_P
 +  case $MKDIR_P in
 +  [\\/$]* | ?:[\\/]* ) ;;
 +  */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
 +  esac
 +_ACEOF
 +
 +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 +# If the template does not know about datarootdir, expand it.
 +# FIXME: This hack should be removed a few years after 2.60.
 +ac_datarootdir_hack=; ac_datarootdir_seen=
 +ac_sed_dataroot='
 +/datarootdir/ {
 +  p
 +  q
 +}
 +/@datadir@/p
 +/@docdir@/p
 +/@infodir@/p
 +/@localedir@/p
 +/@mandir@/p'
 +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
 +*datarootdir*) ac_datarootdir_seen=yes;;
 +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
 +_ACEOF
 +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 +  ac_datarootdir_hack='
 +  s&@datadir@&$datadir&g
 +  s&@docdir@&$docdir&g
 +  s&@infodir@&$infodir&g
 +  s&@localedir@&$localedir&g
 +  s&@mandir@&$mandir&g
 +  s&\\\${datarootdir}&$datarootdir&g' ;;
 +esac
 +_ACEOF
 +
 +# Neutralize VPATH when `$srcdir' = `.'.
 +# Shell code in configure.ac might set extrasub.
 +# FIXME: do we really want to maintain this feature?
 +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 +ac_sed_extra="$ac_vpsub
 +$extrasub
 +_ACEOF
 +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 +:t
 +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
 +s|@configure_input@|$ac_sed_conf_input|;t t
 +s&@top_builddir@&$ac_top_builddir_sub&;t t
 +s&@top_build_prefix@&$ac_top_build_prefix&;t t
 +s&@srcdir@&$ac_srcdir&;t t
 +s&@abs_srcdir@&$ac_abs_srcdir&;t t
 +s&@top_srcdir@&$ac_top_srcdir&;t t
 +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
 +s&@builddir@&$ac_builddir&;t t
 +s&@abs_builddir@&$ac_abs_builddir&;t t
 +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
 +s&@INSTALL@&$ac_INSTALL&;t t
 +s&@MKDIR_P@&$ac_MKDIR_P&;t t
 +$ac_datarootdir_hack
 +"
 +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" |
 +if $ac_cs_awk_getline; then
 +  $AWK -f "$ac_tmp/subs.awk"
 +else
 +  $AWK -f "$ac_tmp/subs.awk" | $SHELL
 +fi \
 +  >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
 +
 +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
 +  { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
 +  { ac_out=`sed -n '/^[	 ]*datarootdir[	 ]*:*=/p' \
 +      "$ac_tmp/out"`; test -z "$ac_out"; } &&
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 +which seems to be undefined.  Please make sure it is defined" >&5
 +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 +which seems to be undefined.  Please make sure it is defined" >&2;}
 +
 +  rm -f "$ac_tmp/stdin"
 +  case $ac_file in
 +  -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
 +  *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
 +  esac \
 +  || as_fn_error $? "could not create $ac_file" "$LINENO" 5
 + ;;
 +
 +
 +
 +  esac
 +
 +
 +  case $ac_file$ac_mode in
 +    "bin/rip":F) chmod +x bin/rip ;;
++    "etc/bash_completion.d/bash-compgen":F) chmod +x etc/bash_completion.d/bash-compgen ;;
 +
 +  esac
 +done # for ac_tag
 +
 +
 +as_fn_exit 0
 +_ACEOF
 +ac_clean_files=$ac_clean_files_save
 +
 +test $ac_write_fail = 0 ||
 +  as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
 +
 +
 +# configure is writing to config.log, and then calls config.status.
 +# config.status does its own redirection, appending to config.log.
 +# Unfortunately, on DOS this fails, as config.log is still kept open
 +# by configure, so config.status won't be able to write to it; its
 +# output is simply discarded.  So we exec the FD to /dev/null,
 +# effectively closing config.log, so it can be properly (re)opened and
 +# appended to by config.status.  When coming back to configure, we
 +# need to make the FD available again.
 +if test "$no_create" != yes; then
 +  ac_cs_success=:
 +  ac_config_status_args=
 +  test "$silent" = yes &&
 +    ac_config_status_args="$ac_config_status_args --quiet"
 +  exec 5>/dev/null
 +  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
 +  exec 5>>config.log
 +  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
 +  # would make configure fail if this is the last instruction.
 +  $ac_cs_success || as_fn_exit 1
 +fi
 +if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
 +  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
 +$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
 +fi
 +
diff --combined doc/Makefile.in
index c38bf02,0000000..8b6364a
mode 100644,000000..100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@@ -1,468 -1,0 +1,496 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = doc
- DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +man1dir = $(mandir)/man1
 +am__installdirs = "$(DESTDIR)$(man1dir)"
 +NROFF = nroff
 +MANS = $(man_MANS)
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +EXTRA_DIST = morituri.rss2 morituri.ics $(man_MANS)
 +DISTCLEANFILES = $(man_MANS)
 +man_MANS = rip.1
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu doc/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +install-man1: $(man_MANS)
 +	@$(NORMAL_INSTALL)
 +	@list1=''; \
 +	list2='$(man_MANS)'; \
 +	test -n "$(man1dir)" \
 +	  && test -n "`echo $$list1$$list2`" \
 +	  || exit 0; \
 +	echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
 +	$(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
 +	{ for i in $$list1; do echo "$$i"; done;  \
 +	if test -n "$$list2"; then \
 +	  for i in $$list2; do echo "$$i"; done \
 +	    | sed -n '/\.1[a-z]*$$/p'; \
 +	fi; \
 +	} | while read p; do \
 +	  if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
 +	  echo "$$d$$p"; echo "$$p"; \
 +	done | \
 +	sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
 +	      -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
 +	sed 'N;N;s,\n, ,g' | { \
 +	list=; while read file base inst; do \
 +	  if test "$$base" = "$$inst"; then list="$$list $$file"; else \
 +	    echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
 +	    $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
 +	  fi; \
 +	done; \
 +	for i in $$list; do echo "$$i"; done | $(am__base_list) | \
 +	while read files; do \
 +	  test -z "$$files" || { \
 +	    echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
 +	    $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
 +	done; }
 +
 +uninstall-man1:
 +	@$(NORMAL_UNINSTALL)
 +	@list=''; test -n "$(man1dir)" || exit 0; \
 +	files=`{ for i in $$list; do echo "$$i"; done; \
 +	l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
 +	  sed -n '/\.1[a-z]*$$/p'; \
 +	} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
 +	      -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
 +	dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
- 	@list='$(MANS)'; if test -n "$$list"; then \
- 	  list=`for p in $$list; do \
- 	    if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
- 	    if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
- 	  if test -n "$$list" && \
- 	    grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
- 	    echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
- 	    grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
- 	    echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
- 	    echo "       typically \`make maintainer-clean' will remove them" >&2; \
- 	    exit 1; \
- 	  else :; fi; \
- 	else :; fi
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
 +all-am: Makefile $(MANS) all-local
 +installdirs:
 +	for dir in "$(DESTDIR)$(man1dir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic clean-local mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am: install-man
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man: install-man1
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am: uninstall-man
 +
 +uninstall-man: uninstall-man1
 +
 +.MAKE: install-am install-strip
 +
 +.PHONY: all all-am all-local check check-am clean clean-generic \
- 	clean-local distclean distclean-generic distdir dvi dvi-am \
- 	html html-am info info-am install install-am install-data \
- 	install-data-am install-dvi install-dvi-am install-exec \
- 	install-exec-am install-html install-html-am install-info \
- 	install-info-am install-man install-man1 install-pdf \
- 	install-pdf-am install-ps install-ps-am install-strip \
- 	installcheck installcheck-am installdirs maintainer-clean \
- 	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
- 	pdf-am ps ps-am uninstall uninstall-am uninstall-man \
- 	uninstall-man1
++	clean-local cscopelist-am ctags-am distclean distclean-generic \
++	distdir dvi dvi-am html html-am info info-am install \
++	install-am install-data install-data-am install-dvi \
++	install-dvi-am install-exec install-exec-am install-html \
++	install-html-am install-info install-info-am install-man \
++	install-man1 install-pdf install-pdf-am install-ps \
++	install-ps-am install-strip installcheck installcheck-am \
++	installdirs maintainer-clean maintainer-clean-generic \
++	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags-am \
++	uninstall uninstall-am uninstall-man uninstall-man1
 +
 +
 +all-local: feeds reference
 +
 + at HAVE_EPYDOC_TRUE@reference: $(top_srcdir)/morituri/*.py feeds
 + at HAVE_EPYDOC_TRUE@	epydoc -o reference $(top_srcdir)/morituri
 + at HAVE_EPYDOC_FALSE@reference:
 + at HAVE_EPYDOC_FALSE@	@true
 +
 +# generate feeds
 +feeds: morituri.rss2 morituri.ics
 +
 +# don't fail fatally if user does not have RDF
 +morituri.rss2: $(top_srcdir)/morituri.doap
 +	-moap doap -f $(top_srcdir)/morituri.doap rss > morituri.rss2
 +
 +morituri.ics: $(top_srcdir)/morituri.doap
 +	-moap doap -f $(top_srcdir)/morituri.doap ical > morituri.ics
 +
 +rip.1: $(top_srcdir)/morituri/extern/python-command/scripts/help2man $(top_srcdir)/morituri
- 	PYTHONPATH=$(top_srcdir) python $(top_srcdir)/morituri/extern/python-command/scripts/help2man morituri.rip.main.Rip rip > rip.1
++	PYTHONPATH=$(top_srcdir) $(PYTHON) $(top_srcdir)/morituri/extern/python-command/scripts/help2man morituri.rip.main.Rip rip > rip.1
 +
 +clean-local:
 +	@rm -rf reference
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined doc/morituri.ics
index 8ec17a6,e69de29..e69de29
--- a/doc/morituri.ics
+++ b/doc/morituri.ics
@@@ -1,51 -1,0 +1,0 @@@
- BEGIN:VCALENDAR
- PRODID:-//thomas.apestaart.org//moap//EN
- VERSION:2.0
- 
- BEGIN:VEVENT
- SUMMARY:Morituri 0.1.0 'Youngblood' released
- UID:2009-09-26-morituri-0.1.0 at moap
- CLASS:PUBLIC
- PRIORITY:3
- DTSTART;VALUE=DATE:20090926
- DTEND;VALUE=DATE:20090926
- END:VEVENT
- 
- BEGIN:VEVENT
- SUMMARY:Morituri 0.1.1 'Dead' released
- UID:2010-04-16-morituri-0.1.1 at moap
- CLASS:PUBLIC
- PRIORITY:3
- DTSTART;VALUE=DATE:20100416
- DTEND;VALUE=DATE:20100416
- END:VEVENT
- 
- BEGIN:VEVENT
- SUMMARY:Morituri 0.1.2 'VCR' released
- UID:2011-06-05-morituri-0.1.2 at moap
- CLASS:PUBLIC
- PRIORITY:3
- DTSTART;VALUE=DATE:20110605
- DTEND;VALUE=DATE:20110605
- END:VEVENT
- 
- BEGIN:VEVENT
- SUMMARY:Morituri 0.1.3 'cranes' released
- UID:2012-11-23-morituri-0.1.3 at moap
- CLASS:PUBLIC
- PRIORITY:3
- DTSTART;VALUE=DATE:20121123
- DTEND;VALUE=DATE:20121123
- END:VEVENT
- 
- BEGIN:VEVENT
- SUMMARY:Morituri 0.2.0 'ears' released
- UID:2013-01-20-morituri-0.2.0 at moap
- CLASS:PUBLIC
- PRIORITY:3
- DTSTART;VALUE=DATE:20130120
- DTEND;VALUE=DATE:20130120
- END:VEVENT
- 
- 
- END:VCALENDAR
diff --combined doc/morituri.rss2
index 8df239a,e69de29..e69de29
--- a/doc/morituri.rss2
+++ b/doc/morituri.rss2
@@@ -1,96 -1,0 +1,0 @@@
- <rss version="2.0">
-   <channel>
-     <title>Release feed for Morituri</title>
-     <description>Release feed for Morituri</description>
-     <link>http://thomas.apestaart.org/morituri/trac/</link>
-     <language>en</language>
-     <item>
-       <title>Morituri 0.2.0 'ears' released</title>
-       <guid isPermaLink="false">release-morituri-0.2.0</guid>
-       <link>http://thomas.apestaart.org/morituri/trac/</link>
-       <pubDate>Sun, 20 Jan 2013 00:00:00 +0000</pubDate>
-       <description>
- - added plugins system for logger
- - added rip cd rip --logger to specify logger
- - added reading speed, cdparanoia and cdrdao version to logger
- - added rip drive analyze to detect whether we can defeat audio cache behaviour
- - store drive offsets and cache defeating in config file
- - rip drive list shows configured offset and audio cache defeating
- - added rip image retag --release-id to specify the release id to tag with
- - added %r/%R for release type to use in track/disc template
- - added %x for extension to release template
- For more information, visit
- <A HREF="http://thomas.apestaart.org/morituri/trac/">the project homepage</A>
-       </description>
-     </item><item>
-       <title>Morituri 0.1.3 'cranes' released</title>
-       <guid isPermaLink="false">release-morituri-0.1.3</guid>
-       <link>http://thomas.apestaart.org/morituri/trac/</link>
-       <pubDate>Fri, 23 Nov 2012 00:00:00 +0000</pubDate>
-       <description>
- - shorten really long file names if needed
- - support multi-disc ripping with musicbrainz NGS
- - add %y for release year in templates
- - added rip cd rip --release-id option to select the exact release
- - allow track and disc templates to create files in different directories
- - work out relative paths from cue/m3u files to audio files
- - Update mp3vbr profile
- For more information, visit
- <A HREF="http://thomas.apestaart.org/morituri/trac/">the project homepage</A>
-       </description>
-     </item><item>
-       <title>Morituri 0.1.2 'VCR' released</title>
-       <guid isPermaLink="false">release-morituri-0.1.2</guid>
-       <link>http://thomas.apestaart.org/morituri/trac/</link>
-       <pubDate>Sun, 05 Jun 2011 00:00:00 +0000</pubDate>
-       <description>
- - UTF-8/unicode handling fixes
- - improved error handling
- - ignore tags for alac and wav
- - work around GStreamer flacparse bugs
- - change how paths get referenced in .cue files
- - properly interpret AccurateRip results; no more assertions on unexpected
-   ordering of results
- - add debug command
- For more information, visit
- <A HREF="http://thomas.apestaart.org/morituri/trac/">the project homepage</A>
-       </description>
-     </item><item>
-       <title>Morituri 0.1.1 'Dead' released</title>
-       <guid isPermaLink="false">release-morituri-0.1.1</guid>
-       <link>http://thomas.apestaart.org/morituri/trac/</link>
-       <pubDate>Fri, 16 Apr 2010 00:00:00 +0000</pubDate>
-       <description>
- - added 'rip image encode' command to encode an image to a lossy codec.
- - provided lossy codec profiles for vorbis, mp3, and mp3vbr
- - added a complete list of known drive offsets from AccurateRip
- - added a generated man page
- - better exception handling in tasks
- - tag audio files with musicbrainz id's
- - added 'rip image retag' command to retag audio files in an image
- - bug fixes
- For more information, visit
- <A HREF="http://thomas.apestaart.org/morituri/trac/">the project homepage</A>
-       </description>
-     </item><item>
-       <title>Morituri 0.1.0 'Youngblood' released</title>
-       <guid isPermaLink="false">release-morituri-0.1.0</guid>
-       <link>http://thomas.apestaart.org/morituri/trac/</link>
-       <pubDate>Sat, 26 Sep 2009 00:00:00 +0000</pubDate>
-       <description>
- - first release
- - support for MusicBrainz for metadata lookup
- - support for AccurateRip verification
- - detects sample read offset of drives
- - performs test and copy rip
- - detects and rips Hidden Track One Audio
- - templates for file and directory naming
- - support for lossless encoding only for now
- - tagging using GStreamer
- - for now, only a command line client (rip) is shipped
- For more information, visit
- <A HREF="http://thomas.apestaart.org/morituri/trac/">the project homepage</A>
-       </description>
-     </item>
-   </channel>
- </rss>
diff --combined doc/rip.1
index 3da2a3a,0000000..c8a7390
mode 100644,000000..100644
--- a/doc/rip.1
+++ b/doc/rip.1
@@@ -1,402 -1,0 +1,482 @@@
 +.TH "rip" "1" "October 2009"
 +.SH rip
 +Usage: rip [command]
 +
 +Rip rips CD's.
 +
 +Rip gives you a tree of subcommands to work with. You can get help on
 +subcommands by using the -h option to the subcommand.
 +
 +Commands:
 +  accurip  Handle AccurateRip information.
 +  cd       handle CD's
 +  debug    debug internals
 +  drive    handle drives
 +  image    handle images
 +  offset   handle drive offsets
 +
 +Implemented by: morituri.rip.main.Rip
 +
 +Options:
 +  -h, --help     show this help message and exit
 +  -R, --record   record API requests for playback
 +  -v, --version  show version information
 +
 +
 +.SH rip accurip
 +Usage: rip accurip [command]
 +
 +Handle AccurateRip information.
 +
 +Commands:
 +  show  show accuraterip data
 +
 +Implemented by: morituri.rip.accurip.AccuRip
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip accurip show
 +Usage: rip accurip show 
 +
 +show accuraterip data
 +
 +Implemented by: morituri.rip.accurip.Show
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip cd
 +handle CD's
 +
 +Usage: rip cd [command]
 +
 +handle CD's
 +
 +Commands:
-   rip  rip CD
++  info  retrieve information about the currently inserted CD
++  rip   rip CD
 +
 +Implemented by: morituri.rip.cd.CD
 +
 +Options:
 +  -h, --help            show this help message and exit
 +  -d DEVICE, --device=DEVICE
 +                        CD-DA device
 +
 +
++.SH rip cd info
++Usage: rip cd info 
++
++retrieve information about the currently inserted CD
++
++Implemented by: morituri.rip.cd.Info
++
++Options:
++  -h, --help            show this help message and exit
++  -T TOC_PICKLE, --toc-pickle=TOC_PICKLE
++                        pickle to use for reading and writing the TOC
++  -R RELEASE_ID, --release-id=RELEASE_ID
++                        MusicBrainz release id to match to (if there
++                        are multiple)
++
++
 +.SH rip cd rip
 +rip CD
 +
 +Usage: rip cd rip 
 +
 +Rips a CD.
 +
 + Tracks are named according to the track template, filling in the
 +variables and adding the file extension.  Variables exclusive to the
 +track template are:
 + - %t: track number
 + - %a: track artist
 + - %n: track title
 + - %s: track sort name
 +
 +Disc files (.cue, .log, .m3u) are named according to the disc
 +template, filling in the variables and adding the file extension.
 +Variables for both disc and track template are:
 + - %A: album artist
 + - %S: album sort name
 + - %d: disc title
 + - %y: release year
 + - %r: release type, lowercase
 + - %R: Release type, normal case
-  - %x: audio extension
++ - %x: audio extension, lowercase
++ - %X: audio extension, uppercase
 +
 +
 +Paths to track files referenced in .cue and .m3u files will be made
 +relative to the directory of the disc files.
 +
 +All files will be created relative to the given output directory. Log
 +files will log the path to tracks relative to this directory.
 +
 +Implemented by: morituri.rip.cd.Rip
 +
 +Options:
 +  -h, --help            show this help message and exit
++  -T TOC_PICKLE, --toc-pickle=TOC_PICKLE
++                        pickle to use for reading and writing the TOC
++  -R RELEASE_ID, --release-id=RELEASE_ID
++                        MusicBrainz release id to match to (if there
++                        are multiple)
 +  -L LOGGER, --logger=LOGGER
 +                        logger to use (default 'morituri', choose from
 +                        'morituri')
 +  -o OFFSET, --offset=OFFSET
 +                        sample read offset (defaults to configured
 +                        value, or 0)
 +  -O OUTPUT_DIRECTORY, --output-directory=OUTPUT_DIRECTORY
 +                        output directory; will be included in file
 +                        paths in result files (defaults to absolute
 +                        path to current directory; set to empty if you
 +                        want paths to be relative instead)
 +  -W WORKING_DIRECTORY, --working-directory=WORKING_DIRECTORY
 +                        working directory; morituri will change to
 +                        this directory and files will be created
 +                        relative to it when not absolute
-   -T TOC_PICKLE, --toc-pickle=TOC_PICKLE
-                         pickle to use for reading and writing the TOC
 +  --track-template=TRACK_TEMPLATE
 +                        template for track file naming (default %r/%A
 +                        - %d/%t. %a - %n)
 +  --disc-template=DISC_TEMPLATE
 +                        template for disc file naming (default %r/%A -
 +                        %d/%A - %d)
-   -R RELEASE_ID, --release-id=RELEASE_ID
-                         MusicBrainz release id to match to (if there
-                         are multiple)
 +  --profile=PROFILE     profile for encoding (default 'flac', choices
 +                        'wav', 'wavpack', 'alac', 'flac')
 +  -U, --unknown         whether to continue ripping if the CD is
 +                        unknown (False)
 +
 +
 +.SH rip debug
 +debug internals
 +
 +Usage: rip debug [command]
 +
 +debug internals
 +
 +Commands:
 +  checksum        run a checksum task
 +  encode          run an encode task
++  maxsample       run a max sample task
 +  musicbrainzngs  examine MusicBrainz NGS info
 +  resultcache     debug result cache
 +  tag             run a tag reading task
++  version         debug version getting
 +
 +Implemented by: morituri.rip.debug.Debug
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip debug checksum
 +Usage: rip debug checksum 
 +
 +run a checksum task
 +
 +Implemented by: morituri.rip.debug.Checksum
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip debug encode
 +Usage: rip debug encode 
 +
 +run an encode task
 +
 +Implemented by: morituri.rip.debug.Encode
 +
 +Options:
 +  -h, --help         show this help message and exit
 +  --profile=PROFILE  profile for encoding (default 'flac', choices
-                      'wav', 'wavpack', 'alac', 'flac')
++                     'alac', 'mp3', 'flac', 'wav', 'wavpack',
++                     'mp3vbr', 'vorbis')
++
++
++.SH rip debug maxsample
++Usage: rip debug maxsample 
++
++run a max sample task
++
++Implemented by: morituri.rip.debug.MaxSample
++
++Options:
++  -h, --help  show this help message and exit
 +
 +
 +.SH rip debug musicbrainzngs
 +examine MusicBrainz NGS info
 +
 +Usage: rip debug musicbrainzngs [MusicBrainz disc id]
 +
 +Look up a MusicBrainz disc id and output information.
 +
++You can get the MusicBrainz disc id with rip cd info.
++
 +Example disc id: KnpGsLhvH.lPrNc1PBL21lb9Bg4-
 +
 +Implemented by: morituri.rip.debug.MusicBrainzNGS
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip debug resultcache
 +debug result cache
 +
 +Usage: rip debug resultcache [command]
 +
 +debug result cache
 +
 +Aliases: rc
 +
 +Commands:
++  cue   write a cue file for the cached result
 +  list  list cached results
 +  log   write a log file for the cached result
 +
 +Implemented by: morituri.rip.debug.ResultCache
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
++.SH rip debug resultcache cue
++Usage: rip debug resultcache cue 
++
++write a cue file for the cached result
++
++Implemented by: morituri.rip.debug.RCCue
++
++Options:
++  -h, --help  show this help message and exit
++
++
 +.SH rip debug resultcache list
 +Usage: rip debug resultcache list 
 +
 +list cached results
 +
 +Implemented by: morituri.rip.debug.RCList
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip debug resultcache log
 +Usage: rip debug resultcache log 
 +
 +write a log file for the cached result
 +
 +Implemented by: morituri.rip.debug.RCLog
 +
 +Options:
 +  -h, --help            show this help message and exit
 +  -L LOGGER, --logger=LOGGER
 +                        logger to use (default 'morituri', choose from
 +                        'morituri')
 +
 +
 +.SH rip debug tag
 +Usage: rip debug tag 
 +
 +run a tag reading task
 +
 +Implemented by: morituri.rip.debug.Tag
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
++.SH rip debug version
++debug version getting
++
++Usage: rip debug version [command]
++
++debug version getting
++
++Commands:
++  cdparanoia  
++  cdrdao      
++
++Implemented by: morituri.rip.debug.Version
++
++Options:
++  -h, --help  show this help message and exit
++
++
++.SH rip debug version cdparanoia
++Usage: rip debug version cdparanoia 
++
++Options:
++  -h, --help  show this help message and exit
++
++
++.SH rip debug version cdrdao
++Usage: rip debug version cdrdao 
++
++Options:
++  -h, --help  show this help message and exit
++
++
 +.SH rip drive
 +handle drives
 +
 +Usage: rip drive [command]
 +
 +handle drives
 +
 +Commands:
 +  analyze  analyze caching behaviour of drive
 +  list     list drives
 +
 +Implemented by: morituri.rip.drive.Drive
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip drive analyze
 +Usage: rip drive analyze 
 +
 +analyze caching behaviour of drive
 +
 +Implemented by: morituri.rip.drive.Analyze
 +
 +Options:
 +  -h, --help            show this help message and exit
 +  -d DEVICE, --device=DEVICE
 +                        CD-DA device
 +
 +
 +.SH rip drive list
 +Usage: rip drive list 
 +
 +list drives
 +
 +Implemented by: morituri.rip.drive.List
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip image
 +handle images
 +
 +Usage: rip image [command]
 +
 +Handle disc images.  Disc images are described by a .cue file. Disc
 +images can be encoded to another format (for example, to make a
 +compressed encoding), retagged and verified.
 +
 +Commands:
 +  encode  encode image
 +  retag   retag image files
 +  verify  verify image
 +
 +Implemented by: morituri.rip.image.Image
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip image encode
 +Usage: rip image encode 
 +
 +encode image
 +
 +Implemented by: morituri.rip.image.Encode
 +
 +Options:
 +  -h, --help            show this help message and exit
 +  -O OUTPUT_DIRECTORY, --output-directory=OUTPUT_DIRECTORY
 +                        output directory (defaults to current
 +                        directory)
 +  --profile=PROFILE     profile for encoding (default 'vorbis',
 +                        choices 'alac', 'mp3', 'flac', 'wav',
 +                        'wavpack', 'mp3vbr', 'vorbis')
 +
 +
 +.SH rip image retag
 +Usage: rip image retag 
 +
 +retag image files
 +
 +Implemented by: morituri.rip.image.Retag
 +
 +Options:
 +  -h, --help            show this help message and exit
 +  -R RELEASE_ID, --release-id=RELEASE_ID
 +                        MusicBrainz release id to match to (if there
 +                        are multiple)
 +
 +
 +.SH rip image verify
- Usage: rip image verify 
- 
 +verify image
 +
++Usage: rip image verify [CUEFILE]...
++
++Verifies the image from the given .cue files against the AccurateRip
++database.
++
 +Implemented by: morituri.rip.image.Verify
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip offset
 +handle drive offsets
 +
 +Usage: rip offset [command]
 +
 +handle drive offsets
 +
 +Commands:
 +  find  find drive read offset
 +
 +Implemented by: morituri.rip.offset.Offset
 +
 +Options:
 +  -h, --help  show this help message and exit
 +
 +
 +.SH rip offset find
 +find drive read offset
 +
 +Usage: rip offset find 
 +
 +Find drive's read offset by ripping tracks from a CD in the
 +AccurateRip database.
 +
 +Implemented by: morituri.rip.offset.Find
 +
 +Options:
 +  -h, --help            show this help message and exit
 +  -o OFFSETS, --offsets=OFFSETS
 +                        list of offsets, comma-separated, colon-
 +                        separated for ranges (defaults to +6, +48,
 +                        +102, +667, +12, +30, +618, +594, +738, -472,
 +                        +98, +116, +96, +733, +120, +691, +685, +97,
 +                        +600, +690, +1292, +99, +676, +686, +1182,
 +                        -24, +704, +572, +688, +91, +696, +103, -491,
 +                        +689, +145, +708, +697, +564, +86, +679, +355,
 +                        -496, -1164, +1160, +694, 0, -436, +79, +94,
 +                        +684, +681, +106, +692, +943, +1194, +92,
 +                        +117, +680, +682, +1268, +678, -582, +1473,
 +                        +1279, -54, +1508, +740, +1272, +534, +976,
 +                        +687, +675, +1303, +674, +1263, +108, +974,
 +                        +122, +111, -489, +772, +732, -495, -494,
 +                        +975, +935, +87, +668, +1776, +1364, +1336,
 +                        +1127)
 +  -d DEVICE, --device=DEVICE
 +                        CD-DA device
 +
 +
diff --combined etc/Makefile.in
index 0aad8d8,0000000..ce7772b
mode 100644,000000..100644
--- a/etc/Makefile.in
+++ b/etc/Makefile.in
@@@ -1,547 -1,0 +1,570 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
++    esac; \
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = etc
- DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- 	html-recursive info-recursive install-data-recursive \
- 	install-dvi-recursive install-exec-recursive \
- 	install-html-recursive install-info-recursive \
- 	install-pdf-recursive install-ps-recursive install-recursive \
- 	installcheck-recursive installdirs-recursive pdf-recursive \
- 	ps-recursive uninstall-recursive
++RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
++	ctags-recursive dvi-recursive html-recursive info-recursive \
++	install-data-recursive install-dvi-recursive \
++	install-exec-recursive install-html-recursive \
++	install-info-recursive install-pdf-recursive \
++	install-ps-recursive install-recursive installcheck-recursive \
++	installdirs-recursive pdf-recursive ps-recursive \
++	tags-recursive uninstall-recursive
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
 +  distclean-recursive maintainer-clean-recursive
- AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
- 	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
++am__recursive_targets = \
++  $(RECURSIVE_TARGETS) \
++  $(RECURSIVE_CLEAN_TARGETS) \
++  $(am__extra_recursive_targets)
++AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
 +	distdir
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
++# Read a list of newline-separated strings from the standard input,
++# and print each of them once, without duplicates.  Input order is
++# *not* preserved.
++am__uniquify_input = $(AWK) '\
++  BEGIN { nonempty = 0; } \
++  { items[$$0] = 1; nonempty = 1; } \
++  END { if (nonempty) { for (i in items) print i; }; } \
++'
++# Make sure the list of sources is unique.  This is necessary because,
++# e.g., the same source file might be shared among _SOURCES variables
++# for different programs/libraries.
++am__define_uniq_tagged_files = \
++  list='$(am__tagged_files)'; \
++  unique=`for i in $$list; do \
++    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
++  done | $(am__uniquify_input)`
 +ETAGS = etags
 +CTAGS = ctags
 +DIST_SUBDIRS = $(SUBDIRS)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +am__relativize = \
 +  dir0=`pwd`; \
 +  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
 +  sed_rest='s,^[^/]*/*,,'; \
 +  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
 +  sed_butlast='s,/*[^/]*$$,,'; \
 +  while test -n "$$dir1"; do \
 +    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
 +    if test "$$first" != "."; then \
 +      if test "$$first" = ".."; then \
 +        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
 +        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
 +      else \
 +        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
 +        if test "$$first2" = "$$first"; then \
 +          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
 +        else \
 +          dir2="../$$dir2"; \
 +        fi; \
 +        dir0="$$dir0"/"$$first"; \
 +      fi; \
 +    fi; \
 +    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
 +  done; \
 +  reldir="$$dir2"
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +SUBDIRS = bash_completion.d
 +all: all-recursive
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu etc/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu etc/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +
 +# This directory's subdirectories are mostly independent; you can cd
- # into them and run `make' without going through this Makefile.
- # To change the values of `make' variables: instead of editing Makefiles,
- # (1) if the variable is set in `config.status', edit `config.status'
- #     (which will cause the Makefiles to be regenerated when you run `make');
- # (2) otherwise, pass the desired values on the `make' command line.
- $(RECURSIVE_TARGETS):
- 	@fail= failcom='exit 1'; \
- 	for f in x $$MAKEFLAGS; do \
- 	  case $$f in \
- 	    *=* | --[!k]*);; \
- 	    *k*) failcom='fail=yes';; \
- 	  esac; \
- 	done; \
++# into them and run 'make' without going through this Makefile.
++# To change the values of 'make' variables: instead of editing Makefiles,
++# (1) if the variable is set in 'config.status', edit 'config.status'
++#     (which will cause the Makefiles to be regenerated when you run 'make');
++# (2) otherwise, pass the desired values on the 'make' command line.
++$(am__recursive_targets):
++	@fail=; \
++	if $(am__make_keepgoing); then \
++	  failcom='fail=yes'; \
++	else \
++	  failcom='exit 1'; \
++	fi; \
 +	dot_seen=no; \
 +	target=`echo $@ | sed s/-recursive//`; \
- 	list='$(SUBDIRS)'; for subdir in $$list; do \
++	case "$@" in \
++	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
++	  *) list='$(SUBDIRS)' ;; \
++	esac; \
++	for subdir in $$list; do \
 +	  echo "Making $$target in $$subdir"; \
 +	  if test "$$subdir" = "."; then \
 +	    dot_seen=yes; \
 +	    local_target="$$target-am"; \
 +	  else \
 +	    local_target="$$target"; \
 +	  fi; \
 +	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 +	  || eval $$failcom; \
 +	done; \
 +	if test "$$dot_seen" = "no"; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
 +	fi; test -z "$$fail"
 +
- $(RECURSIVE_CLEAN_TARGETS):
- 	@fail= failcom='exit 1'; \
- 	for f in x $$MAKEFLAGS; do \
- 	  case $$f in \
- 	    *=* | --[!k]*);; \
- 	    *k*) failcom='fail=yes';; \
- 	  esac; \
- 	done; \
- 	dot_seen=no; \
- 	case "$@" in \
- 	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- 	  *) list='$(SUBDIRS)' ;; \
- 	esac; \
- 	rev=''; for subdir in $$list; do \
- 	  if test "$$subdir" = "."; then :; else \
- 	    rev="$$subdir $$rev"; \
- 	  fi; \
- 	done; \
- 	rev="$$rev ."; \
- 	target=`echo $@ | sed s/-recursive//`; \
- 	for subdir in $$rev; do \
- 	  echo "Making $$target in $$subdir"; \
- 	  if test "$$subdir" = "."; then \
- 	    local_target="$$target-am"; \
- 	  else \
- 	    local_target="$$target"; \
- 	  fi; \
- 	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- 	  || eval $$failcom; \
- 	done && test -z "$$fail"
- tags-recursive:
- 	list='$(SUBDIRS)'; for subdir in $$list; do \
- 	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
- 	done
- ctags-recursive:
- 	list='$(SUBDIRS)'; for subdir in $$list; do \
- 	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
- 	done
++ID: $(am__tagged_files)
++	$(am__define_uniq_tagged_files); mkid -fID $$unique
++tags: tags-recursive
++TAGS: tags
 +
- ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- 	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- 	unique=`for i in $$list; do \
- 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- 	  done | \
- 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
- 	mkid -fID $$unique
- tags: TAGS
- 
- TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
- 		$(TAGS_FILES) $(LISP)
++tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
 +	set x; \
 +	here=`pwd`; \
 +	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 +	  include_option=--etags-include; \
 +	  empty_fix=.; \
 +	else \
 +	  include_option=--include; \
 +	  empty_fix=; \
 +	fi; \
 +	list='$(SUBDIRS)'; for subdir in $$list; do \
 +	  if test "$$subdir" = .; then :; else \
 +	    test ! -f $$subdir/TAGS || \
 +	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 +	  fi; \
 +	done; \
- 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
- 	unique=`for i in $$list; do \
- 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- 	  done | \
- 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
++	$(am__define_uniq_tagged_files); \
 +	shift; \
 +	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 +	  test -n "$$unique" || unique=$$empty_fix; \
 +	  if test $$# -gt 0; then \
 +	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
 +	      "$$@" $$unique; \
 +	  else \
 +	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
 +	      $$unique; \
 +	  fi; \
 +	fi
- ctags: CTAGS
- CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
- 		$(TAGS_FILES) $(LISP)
- 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
- 	unique=`for i in $$list; do \
- 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- 	  done | \
- 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
++ctags: ctags-recursive
++
++CTAGS: ctags
++ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
++	$(am__define_uniq_tagged_files); \
 +	test -z "$(CTAGS_ARGS)$$unique" \
 +	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
 +	     $$unique
 +
 +GTAGS:
 +	here=`$(am__cd) $(top_builddir) && pwd` \
 +	  && $(am__cd) $(top_srcdir) \
 +	  && gtags -i $(GTAGS_ARGS) "$$here"
++cscopelist: cscopelist-recursive
++
++cscopelist-am: $(am__tagged_files)
++	list='$(am__tagged_files)'; \
++	case "$(srcdir)" in \
++	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
++	  *) sdir=$(subdir)/$(srcdir) ;; \
++	esac; \
++	for i in $$list; do \
++	  if test -f "$$i"; then \
++	    echo "$(subdir)/$$i"; \
++	  else \
++	    echo "$$sdir/$$i"; \
++	  fi; \
++	done >> $(top_builddir)/cscope.files
 +
 +distclean-tags:
 +	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 +	  if test "$$subdir" = .; then :; else \
 +	    $(am__make_dryrun) \
 +	      || test -d "$(distdir)/$$subdir" \
 +	      || $(MKDIR_P) "$(distdir)/$$subdir" \
 +	      || exit 1; \
 +	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
 +	    $(am__relativize); \
 +	    new_distdir=$$reldir; \
 +	    dir1=$$subdir; dir2="$(top_distdir)"; \
 +	    $(am__relativize); \
 +	    new_top_distdir=$$reldir; \
 +	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
 +	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
 +	    ($(am__cd) $$subdir && \
 +	      $(MAKE) $(AM_MAKEFLAGS) \
 +	        top_distdir="$$new_top_distdir" \
 +	        distdir="$$new_distdir" \
 +		am__remove_distdir=: \
 +		am__skip_length_check=: \
 +		am__skip_mode_fix=: \
 +	        distdir) \
 +	      || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-recursive
 +all-am: Makefile
 +installdirs: installdirs-recursive
 +installdirs-am:
 +install: install-recursive
 +install-exec: install-exec-recursive
 +install-data: install-data-recursive
 +uninstall: uninstall-recursive
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-recursive
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-recursive
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-recursive
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic distclean-tags
 +
 +dvi: dvi-recursive
 +
 +dvi-am:
 +
 +html: html-recursive
 +
 +html-am:
 +
 +info: info-recursive
 +
 +info-am:
 +
 +install-data-am:
 +
 +install-dvi: install-dvi-recursive
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-recursive
 +
 +install-html-am:
 +
 +install-info: install-info-recursive
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-recursive
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-recursive
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-recursive
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-recursive
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-recursive
 +
 +pdf-am:
 +
 +ps: ps-recursive
 +
 +ps-am:
 +
 +uninstall-am:
 +
- .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
- 	install-am install-strip tags-recursive
- 
- .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- 	all all-am check check-am clean clean-generic ctags \
- 	ctags-recursive distclean distclean-generic distclean-tags \
- 	distdir dvi dvi-am html html-am info info-am install \
- 	install-am install-data install-data-am install-dvi \
- 	install-dvi-am install-exec install-exec-am install-html \
- 	install-html-am install-info install-info-am install-man \
- 	install-pdf install-pdf-am install-ps install-ps-am \
- 	install-strip installcheck installcheck-am installdirs \
- 	installdirs-am maintainer-clean maintainer-clean-generic \
- 	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
- 	tags-recursive uninstall uninstall-am
++.MAKE: $(am__recursive_targets) install-am install-strip
++
++.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
++	check-am clean clean-generic cscopelist-am ctags ctags-am \
++	distclean distclean-generic distclean-tags distdir dvi dvi-am \
++	html html-am info info-am install install-am install-data \
++	install-data-am install-dvi install-dvi-am install-exec \
++	install-exec-am install-html install-html-am install-info \
++	install-info-am install-man install-pdf install-pdf-am \
++	install-ps install-ps-am install-strip installcheck \
++	installcheck-am installdirs installdirs-am maintainer-clean \
++	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
++	pdf-am ps ps-am tags tags-am uninstall uninstall-am
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined etc/bash_completion.d/Makefile.in
index 6ae4173,0000000..8bc2f15
mode 100644,000000..100644
--- a/etc/bash_completion.d/Makefile.in
+++ b/etc/bash_completion.d/Makefile.in
@@@ -1,418 -1,0 +1,462 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = etc/bash_completion.d
- DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
++	$(srcdir)/bash-compgen.in
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
- CONFIG_CLEAN_FILES =
++CONFIG_CLEAN_FILES = bash-compgen
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +am__installdirs = "$(DESTDIR)$(completiondir)"
 +DATA = $(completion_DATA)
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +completiondir = $(sysconfdir)/bash_completion.d
 +completion_DATA = rip
 +BUILT_SOURCES = rip
 +CLEANFILES = rip
- EXTRA_DIST = bash-compgen
++EXTRA_DIST = bash-compgen.in bash-compgen
 +ENTRY = morituri.rip.main.Rip
 +all: $(BUILT_SOURCES)
 +	$(MAKE) $(AM_MAKEFLAGS) all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu etc/bash_completion.d/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu etc/bash_completion.d/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
++bash-compgen: $(top_builddir)/config.status $(srcdir)/bash-compgen.in
++	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 +install-completionDATA: $(completion_DATA)
 +	@$(NORMAL_INSTALL)
 +	@list='$(completion_DATA)'; test -n "$(completiondir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(completiondir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(completiondir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
 +	  echo "$$d$$p"; \
 +	done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(completiondir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(completiondir)" || exit $$?; \
 +	done
 +
 +uninstall-completionDATA:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(completion_DATA)'; test -n "$(completiondir)" || list=; \
 +	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
 +	dir='$(DESTDIR)$(completiondir)'; $(am__uninstall_files_from_dir)
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: $(BUILT_SOURCES)
 +	$(MAKE) $(AM_MAKEFLAGS) check-am
 +all-am: Makefile $(DATA)
 +installdirs:
 +	for dir in "$(DESTDIR)$(completiondir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: $(BUILT_SOURCES)
 +	$(MAKE) $(AM_MAKEFLAGS) install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +	-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am: install-completionDATA
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am: uninstall-completionDATA
 +
 +.MAKE: all check install install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-completionDATA install-data \
- 	install-data-am install-dvi install-dvi-am install-exec \
- 	install-exec-am install-html install-html-am install-info \
- 	install-info-am install-man install-pdf install-pdf-am \
- 	install-ps install-ps-am install-strip installcheck \
- 	installcheck-am installdirs maintainer-clean \
++.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
++	ctags-am distclean distclean-generic distdir dvi dvi-am html \
++	html-am info info-am install install-am install-completionDATA \
++	install-data install-data-am install-dvi install-dvi-am \
++	install-exec install-exec-am install-html install-html-am \
++	install-info install-info-am install-man install-pdf \
++	install-pdf-am install-ps install-ps-am install-strip \
++	installcheck installcheck-am installdirs maintainer-clean \
 +	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
- 	pdf-am ps ps-am uninstall uninstall-am \
++	pdf-am ps ps-am tags-am uninstall uninstall-am \
 +	uninstall-completionDATA
 +
 +
 +rip: bash-compgen $(top_srcdir)/morituri $(top_srcdir)/morituri/*
 +	PYTHONPATH=$(top_srcdir):$$PYTHONPATH $(srcdir)/bash-compgen \
 +		$(completion_DATA) $(ENTRY) > $@
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined etc/bash_completion.d/bash-compgen
index bf21563,263250c..4c09790
--- a/etc/bash_completion.d/bash-compgen
+++ b/etc/bash_completion.d/bash-compgen
@@@ -1,4 -1,4 +1,4 @@@
- #!/usr/bin/env python
 -#!@PYTHON@
++#!/usr/bin/python
  # -*- Mode: Python -*-
  # vi:si:et:sw=4:sts=4:ts=4
  
diff --combined install-sh
index a9244eb,0000000..377bb86
mode 100755,000000..100755
--- a/install-sh
+++ b/install-sh
@@@ -1,527 -1,0 +1,527 @@@
 +#!/bin/sh
 +# install - install a program, script, or datafile
 +
- scriptversion=2011-01-19.21; # UTC
++scriptversion=2011-11-20.07; # UTC
 +
 +# This originates from X11R5 (mit/util/scripts/install.sh), which was
 +# later released in X11R6 (xc/config/util/install.sh) with the
 +# following copyright and license.
 +#
 +# Copyright (C) 1994 X Consortium
 +#
 +# 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, sublicense, 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 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 NONINFRINGEMENT.  IN NO EVENT SHALL THE
 +# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
 +# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
 +# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 +#
 +# Except as contained in this notice, the name of the X Consortium shall not
 +# be used in advertising or otherwise to promote the sale, use or other deal-
 +# ings in this Software without prior written authorization from the X Consor-
 +# tium.
 +#
 +#
 +# FSF changes to this file are in the public domain.
 +#
 +# Calling this script install-sh is preferred over install.sh, to prevent
- # `make' implicit rules from creating a file called install from it
++# 'make' implicit rules from creating a file called install from it
 +# when there is no Makefile.
 +#
 +# This script is compatible with the BSD install script, but was written
 +# from scratch.
 +
 +nl='
 +'
 +IFS=" ""	$nl"
 +
 +# set DOITPROG to echo to test this script
 +
 +# Don't use :- since 4.3BSD and earlier shells don't like it.
 +doit=${DOITPROG-}
 +if test -z "$doit"; then
 +  doit_exec=exec
 +else
 +  doit_exec=$doit
 +fi
 +
 +# Put in absolute file names if you don't have them in your path;
 +# or use environment vars.
 +
 +chgrpprog=${CHGRPPROG-chgrp}
 +chmodprog=${CHMODPROG-chmod}
 +chownprog=${CHOWNPROG-chown}
 +cmpprog=${CMPPROG-cmp}
 +cpprog=${CPPROG-cp}
 +mkdirprog=${MKDIRPROG-mkdir}
 +mvprog=${MVPROG-mv}
 +rmprog=${RMPROG-rm}
 +stripprog=${STRIPPROG-strip}
 +
 +posix_glob='?'
 +initialize_posix_glob='
 +  test "$posix_glob" != "?" || {
 +    if (set -f) 2>/dev/null; then
 +      posix_glob=
 +    else
 +      posix_glob=:
 +    fi
 +  }
 +'
 +
 +posix_mkdir=
 +
 +# Desired mode of installed file.
 +mode=0755
 +
 +chgrpcmd=
 +chmodcmd=$chmodprog
 +chowncmd=
 +mvcmd=$mvprog
 +rmcmd="$rmprog -f"
 +stripcmd=
 +
 +src=
 +dst=
 +dir_arg=
 +dst_arg=
 +
 +copy_on_change=false
 +no_target_directory=
 +
 +usage="\
 +Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
 +   or: $0 [OPTION]... SRCFILES... DIRECTORY
 +   or: $0 [OPTION]... -t DIRECTORY SRCFILES...
 +   or: $0 [OPTION]... -d DIRECTORIES...
 +
 +In the 1st form, copy SRCFILE to DSTFILE.
 +In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
 +In the 4th, create DIRECTORIES.
 +
 +Options:
 +     --help     display this help and exit.
 +     --version  display version info and exit.
 +
 +  -c            (ignored)
 +  -C            install only if different (preserve the last data modification time)
 +  -d            create directories instead of installing files.
 +  -g GROUP      $chgrpprog installed files to GROUP.
 +  -m MODE       $chmodprog installed files to MODE.
 +  -o USER       $chownprog installed files to USER.
 +  -s            $stripprog installed files.
 +  -t DIRECTORY  install into DIRECTORY.
 +  -T            report an error if DSTFILE is a directory.
 +
 +Environment variables override the default commands:
 +  CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
 +  RMPROG STRIPPROG
 +"
 +
 +while test $# -ne 0; do
 +  case $1 in
 +    -c) ;;
 +
 +    -C) copy_on_change=true;;
 +
 +    -d) dir_arg=true;;
 +
 +    -g) chgrpcmd="$chgrpprog $2"
 +	shift;;
 +
 +    --help) echo "$usage"; exit $?;;
 +
 +    -m) mode=$2
 +	case $mode in
 +	  *' '* | *'	'* | *'
 +'*	  | *'*'* | *'?'* | *'['*)
 +	    echo "$0: invalid mode: $mode" >&2
 +	    exit 1;;
 +	esac
 +	shift;;
 +
 +    -o) chowncmd="$chownprog $2"
 +	shift;;
 +
 +    -s) stripcmd=$stripprog;;
 +
 +    -t) dst_arg=$2
- 	# Protect names problematic for `test' and other utilities.
++	# Protect names problematic for 'test' and other utilities.
 +	case $dst_arg in
 +	  -* | [=\(\)!]) dst_arg=./$dst_arg;;
 +	esac
 +	shift;;
 +
 +    -T) no_target_directory=true;;
 +
 +    --version) echo "$0 $scriptversion"; exit $?;;
 +
 +    --)	shift
 +	break;;
 +
 +    -*)	echo "$0: invalid option: $1" >&2
 +	exit 1;;
 +
 +    *)  break;;
 +  esac
 +  shift
 +done
 +
 +if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
 +  # When -d is used, all remaining arguments are directories to create.
 +  # When -t is used, the destination is already specified.
 +  # Otherwise, the last argument is the destination.  Remove it from $@.
 +  for arg
 +  do
 +    if test -n "$dst_arg"; then
 +      # $@ is not empty: it contains at least $arg.
 +      set fnord "$@" "$dst_arg"
 +      shift # fnord
 +    fi
 +    shift # arg
 +    dst_arg=$arg
-     # Protect names problematic for `test' and other utilities.
++    # Protect names problematic for 'test' and other utilities.
 +    case $dst_arg in
 +      -* | [=\(\)!]) dst_arg=./$dst_arg;;
 +    esac
 +  done
 +fi
 +
 +if test $# -eq 0; then
 +  if test -z "$dir_arg"; then
 +    echo "$0: no input file specified." >&2
 +    exit 1
 +  fi
-   # It's OK to call `install-sh -d' without argument.
++  # It's OK to call 'install-sh -d' without argument.
 +  # This can happen when creating conditional directories.
 +  exit 0
 +fi
 +
 +if test -z "$dir_arg"; then
 +  do_exit='(exit $ret); exit $ret'
 +  trap "ret=129; $do_exit" 1
 +  trap "ret=130; $do_exit" 2
 +  trap "ret=141; $do_exit" 13
 +  trap "ret=143; $do_exit" 15
 +
 +  # Set umask so as not to create temps with too-generous modes.
 +  # However, 'strip' requires both read and write access to temps.
 +  case $mode in
 +    # Optimize common cases.
 +    *644) cp_umask=133;;
 +    *755) cp_umask=22;;
 +
 +    *[0-7])
 +      if test -z "$stripcmd"; then
 +	u_plus_rw=
 +      else
 +	u_plus_rw='% 200'
 +      fi
 +      cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
 +    *)
 +      if test -z "$stripcmd"; then
 +	u_plus_rw=
 +      else
 +	u_plus_rw=,u+rw
 +      fi
 +      cp_umask=$mode$u_plus_rw;;
 +  esac
 +fi
 +
 +for src
 +do
-   # Protect names problematic for `test' and other utilities.
++  # Protect names problematic for 'test' and other utilities.
 +  case $src in
 +    -* | [=\(\)!]) src=./$src;;
 +  esac
 +
 +  if test -n "$dir_arg"; then
 +    dst=$src
 +    dstdir=$dst
 +    test -d "$dstdir"
 +    dstdir_status=$?
 +  else
 +
 +    # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
 +    # might cause directories to be created, which would be especially bad
 +    # if $src (and thus $dsttmp) contains '*'.
 +    if test ! -f "$src" && test ! -d "$src"; then
 +      echo "$0: $src does not exist." >&2
 +      exit 1
 +    fi
 +
 +    if test -z "$dst_arg"; then
 +      echo "$0: no destination specified." >&2
 +      exit 1
 +    fi
 +    dst=$dst_arg
 +
 +    # If destination is a directory, append the input filename; won't work
 +    # if double slashes aren't ignored.
 +    if test -d "$dst"; then
 +      if test -n "$no_target_directory"; then
 +	echo "$0: $dst_arg: Is a directory" >&2
 +	exit 1
 +      fi
 +      dstdir=$dst
 +      dst=$dstdir/`basename "$src"`
 +      dstdir_status=0
 +    else
 +      # Prefer dirname, but fall back on a substitute if dirname fails.
 +      dstdir=`
 +	(dirname "$dst") 2>/dev/null ||
 +	expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
 +	     X"$dst" : 'X\(//\)[^/]' \| \
 +	     X"$dst" : 'X\(//\)$' \| \
 +	     X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
 +	echo X"$dst" |
 +	    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 +		   s//\1/
 +		   q
 +		 }
 +		 /^X\(\/\/\)[^/].*/{
 +		   s//\1/
 +		   q
 +		 }
 +		 /^X\(\/\/\)$/{
 +		   s//\1/
 +		   q
 +		 }
 +		 /^X\(\/\).*/{
 +		   s//\1/
 +		   q
 +		 }
 +		 s/.*/./; q'
 +      `
 +
 +      test -d "$dstdir"
 +      dstdir_status=$?
 +    fi
 +  fi
 +
 +  obsolete_mkdir_used=false
 +
 +  if test $dstdir_status != 0; then
 +    case $posix_mkdir in
 +      '')
 +	# Create intermediate dirs using mode 755 as modified by the umask.
 +	# This is like FreeBSD 'install' as of 1997-10-28.
 +	umask=`umask`
 +	case $stripcmd.$umask in
 +	  # Optimize common cases.
 +	  *[2367][2367]) mkdir_umask=$umask;;
 +	  .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
 +
 +	  *[0-7])
 +	    mkdir_umask=`expr $umask + 22 \
 +	      - $umask % 100 % 40 + $umask % 20 \
 +	      - $umask % 10 % 4 + $umask % 2
 +	    `;;
 +	  *) mkdir_umask=$umask,go-w;;
 +	esac
 +
 +	# With -d, create the new directory with the user-specified mode.
 +	# Otherwise, rely on $mkdir_umask.
 +	if test -n "$dir_arg"; then
 +	  mkdir_mode=-m$mode
 +	else
 +	  mkdir_mode=
 +	fi
 +
 +	posix_mkdir=false
 +	case $umask in
 +	  *[123567][0-7][0-7])
 +	    # POSIX mkdir -p sets u+wx bits regardless of umask, which
 +	    # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
 +	    ;;
 +	  *)
 +	    tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
 +	    trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
 +
 +	    if (umask $mkdir_umask &&
 +		exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
 +	    then
 +	      if test -z "$dir_arg" || {
 +		   # Check for POSIX incompatibilities with -m.
 +		   # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
- 		   # other-writeable bit of parent directory when it shouldn't.
++		   # other-writable bit of parent directory when it shouldn't.
 +		   # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
 +		   ls_ld_tmpdir=`ls -ld "$tmpdir"`
 +		   case $ls_ld_tmpdir in
 +		     d????-?r-*) different_mode=700;;
 +		     d????-?--*) different_mode=755;;
 +		     *) false;;
 +		   esac &&
 +		   $mkdirprog -m$different_mode -p -- "$tmpdir" && {
 +		     ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
 +		     test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
 +		   }
 +		 }
 +	      then posix_mkdir=:
 +	      fi
 +	      rmdir "$tmpdir/d" "$tmpdir"
 +	    else
 +	      # Remove any dirs left behind by ancient mkdir implementations.
 +	      rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
 +	    fi
 +	    trap '' 0;;
 +	esac;;
 +    esac
 +
 +    if
 +      $posix_mkdir && (
 +	umask $mkdir_umask &&
 +	$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
 +      )
 +    then :
 +    else
 +
 +      # The umask is ridiculous, or mkdir does not conform to POSIX,
 +      # or it failed possibly due to a race condition.  Create the
 +      # directory the slow way, step by step, checking for races as we go.
 +
 +      case $dstdir in
 +	/*) prefix='/';;
 +	[-=\(\)!]*) prefix='./';;
 +	*)  prefix='';;
 +      esac
 +
 +      eval "$initialize_posix_glob"
 +
 +      oIFS=$IFS
 +      IFS=/
 +      $posix_glob set -f
 +      set fnord $dstdir
 +      shift
 +      $posix_glob set +f
 +      IFS=$oIFS
 +
 +      prefixes=
 +
 +      for d
 +      do
 +	test X"$d" = X && continue
 +
 +	prefix=$prefix$d
 +	if test -d "$prefix"; then
 +	  prefixes=
 +	else
 +	  if $posix_mkdir; then
 +	    (umask=$mkdir_umask &&
 +	     $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
 +	    # Don't fail if two instances are running concurrently.
 +	    test -d "$prefix" || exit 1
 +	  else
 +	    case $prefix in
 +	      *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
 +	      *) qprefix=$prefix;;
 +	    esac
 +	    prefixes="$prefixes '$qprefix'"
 +	  fi
 +	fi
 +	prefix=$prefix/
 +      done
 +
 +      if test -n "$prefixes"; then
 +	# Don't fail if two instances are running concurrently.
 +	(umask $mkdir_umask &&
 +	 eval "\$doit_exec \$mkdirprog $prefixes") ||
 +	  test -d "$dstdir" || exit 1
 +	obsolete_mkdir_used=true
 +      fi
 +    fi
 +  fi
 +
 +  if test -n "$dir_arg"; then
 +    { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
 +    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
 +    { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
 +      test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
 +  else
 +
 +    # Make a couple of temp file names in the proper directory.
 +    dsttmp=$dstdir/_inst.$$_
 +    rmtmp=$dstdir/_rm.$$_
 +
 +    # Trap to clean up those temp files at exit.
 +    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
 +
 +    # Copy the file name to the temp name.
 +    (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
 +
 +    # and set any options; do chmod last to preserve setuid bits.
 +    #
 +    # If any of these fail, we abort the whole thing.  If we want to
 +    # ignore errors from any of these, just make sure not to ignore
 +    # errors from the above "$doit $cpprog $src $dsttmp" command.
 +    #
 +    { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
 +    { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
 +    { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
 +    { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
 +
 +    # If -C, don't bother to copy if it wouldn't change the file.
 +    if $copy_on_change &&
 +       old=`LC_ALL=C ls -dlL "$dst"	2>/dev/null` &&
 +       new=`LC_ALL=C ls -dlL "$dsttmp"	2>/dev/null` &&
 +
 +       eval "$initialize_posix_glob" &&
 +       $posix_glob set -f &&
 +       set X $old && old=:$2:$4:$5:$6 &&
 +       set X $new && new=:$2:$4:$5:$6 &&
 +       $posix_glob set +f &&
 +
 +       test "$old" = "$new" &&
 +       $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
 +    then
 +      rm -f "$dsttmp"
 +    else
 +      # Rename the file to the real destination.
 +      $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
 +
 +      # The rename failed, perhaps because mv can't rename something else
 +      # to itself, or perhaps because mv is so ancient that it does not
 +      # support -f.
 +      {
 +	# Now remove or move aside any old file at destination location.
 +	# We try this two ways since rm can't unlink itself on some
 +	# systems and the destination file might be busy for other
 +	# reasons.  In this case, the final cleanup might fail but the new
 +	# file should still install successfully.
 +	{
 +	  test ! -f "$dst" ||
 +	  $doit $rmcmd -f "$dst" 2>/dev/null ||
 +	  { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
 +	    { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
 +	  } ||
 +	  { echo "$0: cannot unlink or rename $dst" >&2
 +	    (exit 1); exit 1
 +	  }
 +	} &&
 +
 +	# Now rename the file to the real destination.
 +	$doit $mvcmd "$dsttmp" "$dst"
 +      }
 +    fi || exit 1
 +
 +    trap '' 0
 +  fi
 +done
 +
 +# Local variables:
 +# eval: (add-hook 'write-file-hooks 'time-stamp)
 +# time-stamp-start: "scriptversion="
 +# time-stamp-format: "%:y-%02m-%02d.%02H"
 +# time-stamp-time-zone: "UTC"
 +# time-stamp-end: "; # UTC"
 +# End:
diff --combined m4/Makefile.in
index 2df9af3,0000000..c6e4d56
mode 100644,000000..100644
--- a/m4/Makefile.in
+++ b/m4/Makefile.in
@@@ -1,348 -1,0 +1,390 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
++    esac; \
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = m4
- DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
- EXTRA_DIST = as-version.m4 as-python.m4 as-ac-expand.m4
++EXTRA_DIST = as-version.m4 as-ac-expand.m4
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu m4/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu m4/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
 +all-am: Makefile
 +installdirs:
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am:
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am:
 +
 +.MAKE: install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-data install-data-am install-dvi \
- 	install-dvi-am install-exec install-exec-am install-html \
- 	install-html-am install-info install-info-am install-man \
- 	install-pdf install-pdf-am install-ps install-ps-am \
- 	install-strip installcheck installcheck-am installdirs \
- 	maintainer-clean maintainer-clean-generic mostlyclean \
- 	mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am
++.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
++	ctags-am distclean distclean-generic distdir dvi dvi-am html \
++	html-am info info-am install install-am install-data \
++	install-data-am install-dvi install-dvi-am install-exec \
++	install-exec-am install-html install-html-am install-info \
++	install-info-am install-man install-pdf install-pdf-am \
++	install-ps install-ps-am install-strip installcheck \
++	installcheck-am installdirs maintainer-clean \
++	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
++	pdf-am ps ps-am tags-am uninstall uninstall-am
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined misc/Makefile.in
index 0b51eb5,0000000..5330ca6
mode 100644,000000..100644
--- a/misc/Makefile.in
+++ b/misc/Makefile.in
@@@ -1,353 -1,0 +1,395 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
++    esac; \
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = misc
- DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +EXTRA_DIST = \
 +	pycheckerrc \
 +	header.py \
 +	morituri-uninstalled \
 +	show-coverage.py
 +
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu misc/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu misc/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
 +all-am: Makefile
 +installdirs:
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am:
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am:
 +
 +.MAKE: install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-data install-data-am install-dvi \
- 	install-dvi-am install-exec install-exec-am install-html \
- 	install-html-am install-info install-info-am install-man \
- 	install-pdf install-pdf-am install-ps install-ps-am \
- 	install-strip installcheck installcheck-am installdirs \
- 	maintainer-clean maintainer-clean-generic mostlyclean \
- 	mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am
++.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
++	ctags-am distclean distclean-generic distdir dvi dvi-am html \
++	html-am info info-am install install-am install-data \
++	install-data-am install-dvi install-dvi-am install-exec \
++	install-exec-am install-html install-html-am install-info \
++	install-info-am install-man install-pdf install-pdf-am \
++	install-ps install-ps-am install-strip installcheck \
++	installcheck-am installdirs maintainer-clean \
++	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
++	pdf-am ps ps-am tags-am uninstall uninstall-am
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined missing
index 86a8fc3,0000000..cdea514
mode 100755,000000..100755
--- a/missing
+++ b/missing
@@@ -1,331 -1,0 +1,215 @@@
 +#! /bin/sh
- # Common stub for a few missing GNU programs while installing.
++# Common wrapper for a few potentially missing GNU programs.
 +
- scriptversion=2012-01-06.13; # UTC
++scriptversion=2012-06-26.16; # UTC
 +
- # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
- # 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
- # Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
++# Copyright (C) 1996-2013 Free Software Foundation, Inc.
++# Originally written by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
 +
 +# 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.  If not, see <http://www.gnu.org/licenses/>.
 +
 +# As a special exception to the GNU General Public License, if you
 +# distribute this file as part of a program that contains a
 +# configuration script generated by Autoconf, you may include it under
 +# the same distribution terms that you use for the rest of that program.
 +
 +if test $# -eq 0; then
-   echo 1>&2 "Try \`$0 --help' for more information"
++  echo 1>&2 "Try '$0 --help' for more information"
 +  exit 1
 +fi
 +
- run=:
- sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
- sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
- 
- # In the cases where this matters, `missing' is being run in the
- # srcdir already.
- if test -f configure.ac; then
-   configure_ac=configure.ac
- else
-   configure_ac=configure.in
- fi
++case $1 in
 +
- msg="missing on your system"
++  --is-lightweight)
++    # Used by our autoconf macros to check whether the available missing
++    # script is modern enough.
++    exit 0
++    ;;
 +
- case $1 in
- --run)
-   # Try to run requested program, and just exit if it succeeds.
-   run=
-   shift
-   "$@" && exit 0
-   # Exit code 63 means version mismatch.  This often happens
-   # when the user try to use an ancient version of a tool on
-   # a file that requires a minimum version.  In this case we
-   # we should proceed has if the program had been absent, or
-   # if --run hadn't been passed.
-   if test $? = 63; then
-     run=:
-     msg="probably too old"
-   fi
-   ;;
++  --run)
++    # Back-compat with the calling convention used by older automake.
++    shift
++    ;;
 +
 +  -h|--h|--he|--hel|--help)
 +    echo "\
 +$0 [OPTION]... PROGRAM [ARGUMENT]...
 +
- Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
- error status if there is no known handling for PROGRAM.
++Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
++to PROGRAM being missing or too old.
 +
 +Options:
 +  -h, --help      display this help and exit
 +  -v, --version   output version information and exit
-   --run           try to run the given command, and emulate it if it fails
 +
 +Supported PROGRAM values:
-   aclocal      touch file \`aclocal.m4'
-   autoconf     touch file \`configure'
-   autoheader   touch file \`config.h.in'
-   autom4te     touch the output file, or create a stub one
-   automake     touch all \`Makefile.in' files
-   bison        create \`y.tab.[ch]', if possible, from existing .[ch]
-   flex         create \`lex.yy.c', if possible, from existing .c
-   help2man     touch the output file
-   lex          create \`lex.yy.c', if possible, from existing .c
-   makeinfo     touch the output file
-   yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
++  aclocal   autoconf  autoheader   autom4te  automake  makeinfo
++  bison     yacc      flex         lex       help2man
 +
- Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
- \`g' are ignored when checking the name.
++Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
++'g' are ignored when checking the name.
 +
 +Send bug reports to <bug-automake at gnu.org>."
 +    exit $?
 +    ;;
 +
 +  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
 +    echo "missing $scriptversion (GNU Automake)"
 +    exit $?
 +    ;;
 +
 +  -*)
-     echo 1>&2 "$0: Unknown \`$1' option"
-     echo 1>&2 "Try \`$0 --help' for more information"
++    echo 1>&2 "$0: unknown '$1' option"
++    echo 1>&2 "Try '$0 --help' for more information"
 +    exit 1
 +    ;;
 +
 +esac
 +
- # normalize program name to check for.
- program=`echo "$1" | sed '
-   s/^gnu-//; t
-   s/^gnu//; t
-   s/^g//; t'`
- 
- # Now exit if we have it, but it failed.  Also exit now if we
- # don't have it and --version was passed (most likely to detect
- # the program).  This is about non-GNU programs, so use $1 not
- # $program.
- case $1 in
-   lex*|yacc*)
-     # Not GNU programs, they don't have --version.
-     ;;
- 
-   *)
-     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-        # We have it, but it failed.
-        exit 1
-     elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-        # Could not run --version or --help.  This is probably someone
-        # running `$TOOL --version' or `$TOOL --help' to check whether
-        # $TOOL exists and not knowing $TOOL uses missing.
-        exit 1
-     fi
-     ;;
- esac
- 
- # If it does not exist, or fails to run (possibly an outdated version),
- # try to emulate it.
- case $program in
-   aclocal*)
-     echo 1>&2 "\
- WARNING: \`$1' is $msg.  You should only need it if
-          you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
-          to install the \`Automake' and \`Perl' packages.  Grab them from
-          any GNU archive site."
-     touch aclocal.m4
-     ;;
- 
-   autoconf*)
-     echo 1>&2 "\
- WARNING: \`$1' is $msg.  You should only need it if
-          you modified \`${configure_ac}'.  You might want to install the
-          \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
-          archive site."
-     touch configure
-     ;;
- 
-   autoheader*)
-     echo 1>&2 "\
- WARNING: \`$1' is $msg.  You should only need it if
-          you modified \`acconfig.h' or \`${configure_ac}'.  You might want
-          to install the \`Autoconf' and \`GNU m4' packages.  Grab them
-          from any GNU archive site."
-     files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
-     test -z "$files" && files="config.h"
-     touch_files=
-     for f in $files; do
-       case $f in
-       *:*) touch_files="$touch_files "`echo "$f" |
- 				       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
-       *) touch_files="$touch_files $f.in";;
-       esac
-     done
-     touch $touch_files
-     ;;
- 
-   automake*)
-     echo 1>&2 "\
- WARNING: \`$1' is $msg.  You should only need it if
-          you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
-          You might want to install the \`Automake' and \`Perl' packages.
-          Grab them from any GNU archive site."
-     find . -type f -name Makefile.am -print |
- 	   sed 's/\.am$/.in/' |
- 	   while read f; do touch "$f"; done
-     ;;
- 
-   autom4te*)
-     echo 1>&2 "\
- WARNING: \`$1' is needed, but is $msg.
-          You might have modified some files without having the
-          proper tools for further handling them.
-          You can get \`$1' as part of \`Autoconf' from any GNU
-          archive site."
- 
-     file=`echo "$*" | sed -n "$sed_output"`
-     test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-     if test -f "$file"; then
- 	touch $file
-     else
- 	test -z "$file" || exec >$file
- 	echo "#! /bin/sh"
- 	echo "# Created by GNU Automake missing as a replacement of"
- 	echo "#  $ $@"
- 	echo "exit 0"
- 	chmod +x $file
- 	exit 1
-     fi
-     ;;
- 
-   bison*|yacc*)
-     echo 1>&2 "\
- WARNING: \`$1' $msg.  You should only need it if
-          you modified a \`.y' file.  You may need the \`Bison' package
-          in order for those modifications to take effect.  You can get
-          \`Bison' from any GNU archive site."
-     rm -f y.tab.c y.tab.h
-     if test $# -ne 1; then
-         eval LASTARG=\${$#}
- 	case $LASTARG in
- 	*.y)
- 	    SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
- 	    if test -f "$SRCFILE"; then
- 	         cp "$SRCFILE" y.tab.c
- 	    fi
- 	    SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
- 	    if test -f "$SRCFILE"; then
- 	         cp "$SRCFILE" y.tab.h
- 	    fi
- 	  ;;
- 	esac
-     fi
-     if test ! -f y.tab.h; then
- 	echo >y.tab.h
-     fi
-     if test ! -f y.tab.c; then
- 	echo 'main() { return 0; }' >y.tab.c
-     fi
-     ;;
- 
-   lex*|flex*)
-     echo 1>&2 "\
- WARNING: \`$1' is $msg.  You should only need it if
-          you modified a \`.l' file.  You may need the \`Flex' package
-          in order for those modifications to take effect.  You can get
-          \`Flex' from any GNU archive site."
-     rm -f lex.yy.c
-     if test $# -ne 1; then
-         eval LASTARG=\${$#}
- 	case $LASTARG in
- 	*.l)
- 	    SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
- 	    if test -f "$SRCFILE"; then
- 	         cp "$SRCFILE" lex.yy.c
- 	    fi
- 	  ;;
- 	esac
-     fi
-     if test ! -f lex.yy.c; then
- 	echo 'main() { return 0; }' >lex.yy.c
-     fi
-     ;;
- 
-   help2man*)
-     echo 1>&2 "\
- WARNING: \`$1' is $msg.  You should only need it if
- 	 you modified a dependency of a manual page.  You may need the
- 	 \`Help2man' package in order for those modifications to take
- 	 effect.  You can get \`Help2man' from any GNU archive site."
- 
-     file=`echo "$*" | sed -n "$sed_output"`
-     test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-     if test -f "$file"; then
- 	touch $file
-     else
- 	test -z "$file" || exec >$file
- 	echo ".ab help2man is required to generate this page"
- 	exit $?
-     fi
-     ;;
- 
-   makeinfo*)
-     echo 1>&2 "\
- WARNING: \`$1' is $msg.  You should only need it if
-          you modified a \`.texi' or \`.texinfo' file, or any other file
-          indirectly affecting the aspect of the manual.  The spurious
-          call might also be the consequence of using a buggy \`make' (AIX,
-          DU, IRIX).  You might want to install the \`Texinfo' package or
-          the \`GNU make' package.  Grab either from any GNU archive site."
-     # The file to touch is that specified with -o ...
-     file=`echo "$*" | sed -n "$sed_output"`
-     test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-     if test -z "$file"; then
-       # ... or it is the one specified with @setfilename ...
-       infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-       file=`sed -n '
- 	/^@setfilename/{
- 	  s/.* \([^ ]*\) *$/\1/
- 	  p
- 	  q
- 	}' $infile`
-       # ... or it is derived from the source name (dir/f.texi becomes f.info)
-       test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
-     fi
-     # If the file does not exist, the user really needs makeinfo;
-     # let's fail without touching anything.
-     test -f $file || exit 1
-     touch $file
-     ;;
++# Run the given program, remember its exit status.
++"$@"; st=$?
++
++# If it succeeded, we are done.
++test $st -eq 0 && exit 0
++
++# Also exit now if we it failed (or wasn't found), and '--version' was
++# passed; such an option is passed most likely to detect whether the
++# program is present and works.
++case $2 in --version|--help) exit $st;; esac
++
++# Exit code 63 means version mismatch.  This often happens when the user
++# tries to use an ancient version of a tool on a file that requires a
++# minimum version.
++if test $st -eq 63; then
++  msg="probably too old"
++elif test $st -eq 127; then
++  # Program was missing.
++  msg="missing on your system"
++else
++  # Program was found and executed, but failed.  Give up.
++  exit $st
++fi
 +
-   *)
-     echo 1>&2 "\
- WARNING: \`$1' is needed, and is $msg.
-          You might have modified some files without having the
-          proper tools for further handling them.  Check the \`README' file,
-          it often tells you about the needed prerequisites for installing
-          this package.  You may also peek at any GNU archive site, in case
-          some other package would contain this missing \`$1' program."
-     exit 1
++perl_URL=http://www.perl.org/
++flex_URL=http://flex.sourceforge.net/
++gnu_software_URL=http://www.gnu.org/software
++
++program_details ()
++{
++  case $1 in
++    aclocal|automake)
++      echo "The '$1' program is part of the GNU Automake package:"
++      echo "<$gnu_software_URL/automake>"
++      echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
++      echo "<$gnu_software_URL/autoconf>"
++      echo "<$gnu_software_URL/m4/>"
++      echo "<$perl_URL>"
++      ;;
++    autoconf|autom4te|autoheader)
++      echo "The '$1' program is part of the GNU Autoconf package:"
++      echo "<$gnu_software_URL/autoconf/>"
++      echo "It also requires GNU m4 and Perl in order to run:"
++      echo "<$gnu_software_URL/m4/>"
++      echo "<$perl_URL>"
++      ;;
++  esac
++}
++
++give_advice ()
++{
++  # Normalize program name to check for.
++  normalized_program=`echo "$1" | sed '
++    s/^gnu-//; t
++    s/^gnu//; t
++    s/^g//; t'`
++
++  printf '%s\n' "'$1' is $msg."
++
++  configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
++  case $normalized_program in
++    autoconf*)
++      echo "You should only need it if you modified 'configure.ac',"
++      echo "or m4 files included by it."
++      program_details 'autoconf'
++      ;;
++    autoheader*)
++      echo "You should only need it if you modified 'acconfig.h' or"
++      echo "$configure_deps."
++      program_details 'autoheader'
++      ;;
++    automake*)
++      echo "You should only need it if you modified 'Makefile.am' or"
++      echo "$configure_deps."
++      program_details 'automake'
++      ;;
++    aclocal*)
++      echo "You should only need it if you modified 'acinclude.m4' or"
++      echo "$configure_deps."
++      program_details 'aclocal'
++      ;;
++   autom4te*)
++      echo "You might have modified some maintainer files that require"
++      echo "the 'automa4te' program to be rebuilt."
++      program_details 'autom4te'
++      ;;
++    bison*|yacc*)
++      echo "You should only need it if you modified a '.y' file."
++      echo "You may want to install the GNU Bison package:"
++      echo "<$gnu_software_URL/bison/>"
++      ;;
++    lex*|flex*)
++      echo "You should only need it if you modified a '.l' file."
++      echo "You may want to install the Fast Lexical Analyzer package:"
++      echo "<$flex_URL>"
++      ;;
++    help2man*)
++      echo "You should only need it if you modified a dependency" \
++           "of a man page."
++      echo "You may want to install the GNU Help2man package:"
++      echo "<$gnu_software_URL/help2man/>"
 +    ;;
- esac
- 
- exit 0
++    makeinfo*)
++      echo "You should only need it if you modified a '.texi' file, or"
++      echo "any other file indirectly affecting the aspect of the manual."
++      echo "You might want to install the Texinfo package:"
++      echo "<$gnu_software_URL/texinfo/>"
++      echo "The spurious makeinfo call might also be the consequence of"
++      echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
++      echo "want to install GNU make:"
++      echo "<$gnu_software_URL/make/>"
++      ;;
++    *)
++      echo "You might have modified some files without having the proper"
++      echo "tools for further handling them.  Check the 'README' file, it"
++      echo "often tells you about the needed prerequisites for installing"
++      echo "this package.  You may also peek at any GNU archive site, in"
++      echo "case some other package contains this missing '$1' program."
++      ;;
++  esac
++}
++
++give_advice "$1" | sed -e '1s/^/WARNING: /' \
++                       -e '2,$s/^/         /' >&2
++
++# Propagate the correct exit status (expected to be 127 for a program
++# not found, 63 for a program that failed due to version mismatch).
++exit $st
 +
 +# Local variables:
 +# eval: (add-hook 'write-file-hooks 'time-stamp)
 +# time-stamp-start: "scriptversion="
 +# time-stamp-format: "%:y-%02m-%02d.%02H"
 +# time-stamp-time-zone: "UTC"
 +# time-stamp-end: "; # UTC"
 +# End:
diff --combined morituri.spec
index 44e908b,2efe03b..14c0928
--- a/morituri.spec
+++ b/morituri.spec
@@@ -2,10 -2,10 +2,10 @@@
  %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
  
  Name:           morituri
- Version:        0.2.0
 -Version:        @PACKAGE_VERSION@
 -Release:        @PACKAGE_VERSION_RELEASE@%{?dist}
++Version:        0.2.3
 +Release:        1%{?dist}
  Summary:        CD ripper
- Source:         %{name}-%{version}.tar.bz2
+ Source:         http://thomas.apestaart.org/download/morituri/%{name}-%{version}.tar.bz2
  URL:            https://thomas.apestaart.org/morituri/trac/
  License:        GPLv3
  Group:          Applications/Archiving
@@@ -49,15 -49,18 +49,18 @@@ rm -rf $RPM_BUILD_ROO
  
  %files
  %defattr(-,root,root)
- %doc README morituri.doap NEWS RELEASE ChangeLog
+ %doc README.md morituri.doap NEWS RELEASE ChangeLog
  %{_bindir}/rip
  %{_libdir}/morituri/plugins
  %{_mandir}/man1/rip.1*
  %{python_sitelib}/morituri
- %{_sysconfdir}/bash_completion.d/
+ %{_sysconfdir}/bash_completion.d/rip
  
  %changelog
  * Sun Jan 20 2013 Thomas Vander Stichele <thomas at apestaart dot org>
+ - put rip completion file directly in package, not parent dir
+ 
+ * Sun Jan 20 2013 Thomas Vander Stichele <thomas at apestaart dot org>
  - Added python-setuptools now that we use it for plugins
  
  * Sun Dec 02 2012 Thomas Vander Stichele <thomas at apestaart dot org>
diff --combined morituri/Makefile.in
index 224e56d,0000000..9cd3614
mode 100644,000000..100644
--- a/morituri/Makefile.in
+++ b/morituri/Makefile.in
@@@ -1,626 -1,0 +1,661 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = morituri
- DIST_COMMON = $(morituri_PYTHON) $(srcdir)/Makefile.am \
- 	$(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
++	$(morituri_PYTHON) $(top_srcdir)/py-compile
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
- 	html-recursive info-recursive install-data-recursive \
- 	install-dvi-recursive install-exec-recursive \
- 	install-html-recursive install-info-recursive \
- 	install-pdf-recursive install-ps-recursive install-recursive \
- 	installcheck-recursive installdirs-recursive pdf-recursive \
- 	ps-recursive uninstall-recursive
++RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
++	ctags-recursive dvi-recursive html-recursive info-recursive \
++	install-data-recursive install-dvi-recursive \
++	install-exec-recursive install-html-recursive \
++	install-info-recursive install-pdf-recursive \
++	install-ps-recursive install-recursive installcheck-recursive \
++	installdirs-recursive pdf-recursive ps-recursive \
++	tags-recursive uninstall-recursive
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile)
 +am__installdirs = "$(DESTDIR)$(morituridir)"
++am__pep3147_tweak = \
++  sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|'
 +py_compile = $(top_srcdir)/py-compile
 +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
 +  distclean-recursive maintainer-clean-recursive
- AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
- 	$(RECURSIVE_CLEAN_TARGETS:-recursive=) tags TAGS ctags CTAGS \
++am__recursive_targets = \
++  $(RECURSIVE_TARGETS) \
++  $(RECURSIVE_CLEAN_TARGETS) \
++  $(am__extra_recursive_targets)
++AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
 +	distdir
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
++# Read a list of newline-separated strings from the standard input,
++# and print each of them once, without duplicates.  Input order is
++# *not* preserved.
++am__uniquify_input = $(AWK) '\
++  BEGIN { nonempty = 0; } \
++  { items[$$0] = 1; nonempty = 1; } \
++  END { if (nonempty) { for (i in items) print i; }; } \
++'
++# Make sure the list of sources is unique.  This is necessary because,
++# e.g., the same source file might be shared among _SOURCES variables
++# for different programs/libraries.
++am__define_uniq_tagged_files = \
++  list='$(am__tagged_files)'; \
++  unique=`for i in $$list; do \
++    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
++  done | $(am__uniquify_input)`
 +ETAGS = etags
 +CTAGS = ctags
 +DIST_SUBDIRS = $(SUBDIRS)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +am__relativize = \
 +  dir0=`pwd`; \
 +  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
 +  sed_rest='s,^[^/]*/*,,'; \
 +  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
 +  sed_butlast='s,/*[^/]*$$,,'; \
 +  while test -n "$$dir1"; do \
 +    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
 +    if test "$$first" != "."; then \
 +      if test "$$first" = ".."; then \
 +        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
 +        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
 +      else \
 +        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
 +        if test "$$first2" = "$$first"; then \
 +          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
 +        else \
 +          dir2="../$$dir2"; \
 +        fi; \
 +        dir0="$$dir0"/"$$first"; \
 +      fi; \
 +    fi; \
 +    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
 +  done; \
 +  reldir="$$dir2"
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +CLEANFILES = *.py{c,o}
 +morituridir = $(PYTHONLIBDIR)/morituri
 +morituri_PYTHON = \
 +	__init__.py
 +
 +SUBDIRS = common configure extern image program result rip test
 +all: all-recursive
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu morituri/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu morituri/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +install-morituriPYTHON: $(morituri_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(morituri_PYTHON)'; dlist=; list2=; test -n "$(morituridir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(morituridir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(morituridir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(morituridir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(morituridir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(morituridir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-morituriPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(morituri_PYTHON)'; test -n "$(morituridir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(morituridir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
 +
 +# This directory's subdirectories are mostly independent; you can cd
- # into them and run `make' without going through this Makefile.
- # To change the values of `make' variables: instead of editing Makefiles,
- # (1) if the variable is set in `config.status', edit `config.status'
- #     (which will cause the Makefiles to be regenerated when you run `make');
- # (2) otherwise, pass the desired values on the `make' command line.
- $(RECURSIVE_TARGETS):
- 	@fail= failcom='exit 1'; \
- 	for f in x $$MAKEFLAGS; do \
- 	  case $$f in \
- 	    *=* | --[!k]*);; \
- 	    *k*) failcom='fail=yes';; \
- 	  esac; \
- 	done; \
++# into them and run 'make' without going through this Makefile.
++# To change the values of 'make' variables: instead of editing Makefiles,
++# (1) if the variable is set in 'config.status', edit 'config.status'
++#     (which will cause the Makefiles to be regenerated when you run 'make');
++# (2) otherwise, pass the desired values on the 'make' command line.
++$(am__recursive_targets):
++	@fail=; \
++	if $(am__make_keepgoing); then \
++	  failcom='fail=yes'; \
++	else \
++	  failcom='exit 1'; \
++	fi; \
 +	dot_seen=no; \
 +	target=`echo $@ | sed s/-recursive//`; \
- 	list='$(SUBDIRS)'; for subdir in $$list; do \
++	case "$@" in \
++	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
++	  *) list='$(SUBDIRS)' ;; \
++	esac; \
++	for subdir in $$list; do \
 +	  echo "Making $$target in $$subdir"; \
 +	  if test "$$subdir" = "."; then \
 +	    dot_seen=yes; \
 +	    local_target="$$target-am"; \
 +	  else \
 +	    local_target="$$target"; \
 +	  fi; \
 +	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
 +	  || eval $$failcom; \
 +	done; \
 +	if test "$$dot_seen" = "no"; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
 +	fi; test -z "$$fail"
 +
- $(RECURSIVE_CLEAN_TARGETS):
- 	@fail= failcom='exit 1'; \
- 	for f in x $$MAKEFLAGS; do \
- 	  case $$f in \
- 	    *=* | --[!k]*);; \
- 	    *k*) failcom='fail=yes';; \
- 	  esac; \
- 	done; \
- 	dot_seen=no; \
- 	case "$@" in \
- 	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
- 	  *) list='$(SUBDIRS)' ;; \
- 	esac; \
- 	rev=''; for subdir in $$list; do \
- 	  if test "$$subdir" = "."; then :; else \
- 	    rev="$$subdir $$rev"; \
- 	  fi; \
- 	done; \
- 	rev="$$rev ."; \
- 	target=`echo $@ | sed s/-recursive//`; \
- 	for subdir in $$rev; do \
- 	  echo "Making $$target in $$subdir"; \
- 	  if test "$$subdir" = "."; then \
- 	    local_target="$$target-am"; \
- 	  else \
- 	    local_target="$$target"; \
- 	  fi; \
- 	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
- 	  || eval $$failcom; \
- 	done && test -z "$$fail"
- tags-recursive:
- 	list='$(SUBDIRS)'; for subdir in $$list; do \
- 	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
- 	done
- ctags-recursive:
- 	list='$(SUBDIRS)'; for subdir in $$list; do \
- 	  test "$$subdir" = . || ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
- 	done
++ID: $(am__tagged_files)
++	$(am__define_uniq_tagged_files); mkid -fID $$unique
++tags: tags-recursive
++TAGS: tags
 +
- ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- 	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- 	unique=`for i in $$list; do \
- 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- 	  done | \
- 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
- 	mkid -fID $$unique
- tags: TAGS
- 
- TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
- 		$(TAGS_FILES) $(LISP)
++tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
 +	set x; \
 +	here=`pwd`; \
 +	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
 +	  include_option=--etags-include; \
 +	  empty_fix=.; \
 +	else \
 +	  include_option=--include; \
 +	  empty_fix=; \
 +	fi; \
 +	list='$(SUBDIRS)'; for subdir in $$list; do \
 +	  if test "$$subdir" = .; then :; else \
 +	    test ! -f $$subdir/TAGS || \
 +	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
 +	  fi; \
 +	done; \
- 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
- 	unique=`for i in $$list; do \
- 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- 	  done | \
- 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
++	$(am__define_uniq_tagged_files); \
 +	shift; \
 +	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
 +	  test -n "$$unique" || unique=$$empty_fix; \
 +	  if test $$# -gt 0; then \
 +	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
 +	      "$$@" $$unique; \
 +	  else \
 +	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
 +	      $$unique; \
 +	  fi; \
 +	fi
- ctags: CTAGS
- CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
- 		$(TAGS_FILES) $(LISP)
- 	list='$(SOURCES) $(HEADERS)  $(LISP) $(TAGS_FILES)'; \
- 	unique=`for i in $$list; do \
- 	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- 	  done | \
- 	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
- 	      END { if (nonempty) { for (i in files) print i; }; }'`; \
++ctags: ctags-recursive
++
++CTAGS: ctags
++ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
++	$(am__define_uniq_tagged_files); \
 +	test -z "$(CTAGS_ARGS)$$unique" \
 +	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
 +	     $$unique
 +
 +GTAGS:
 +	here=`$(am__cd) $(top_builddir) && pwd` \
 +	  && $(am__cd) $(top_srcdir) \
 +	  && gtags -i $(GTAGS_ARGS) "$$here"
++cscopelist: cscopelist-recursive
++
++cscopelist-am: $(am__tagged_files)
++	list='$(am__tagged_files)'; \
++	case "$(srcdir)" in \
++	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
++	  *) sdir=$(subdir)/$(srcdir) ;; \
++	esac; \
++	for i in $$list; do \
++	  if test -f "$$i"; then \
++	    echo "$(subdir)/$$i"; \
++	  else \
++	    echo "$$sdir/$$i"; \
++	  fi; \
++	done >> $(top_builddir)/cscope.files
 +
 +distclean-tags:
 +	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 +	  if test "$$subdir" = .; then :; else \
 +	    $(am__make_dryrun) \
 +	      || test -d "$(distdir)/$$subdir" \
 +	      || $(MKDIR_P) "$(distdir)/$$subdir" \
 +	      || exit 1; \
 +	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
 +	    $(am__relativize); \
 +	    new_distdir=$$reldir; \
 +	    dir1=$$subdir; dir2="$(top_distdir)"; \
 +	    $(am__relativize); \
 +	    new_top_distdir=$$reldir; \
 +	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
 +	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
 +	    ($(am__cd) $$subdir && \
 +	      $(MAKE) $(AM_MAKEFLAGS) \
 +	        top_distdir="$$new_top_distdir" \
 +	        distdir="$$new_distdir" \
 +		am__remove_distdir=: \
 +		am__skip_length_check=: \
 +		am__skip_mode_fix=: \
 +	        distdir) \
 +	      || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-recursive
 +all-am: Makefile
 +installdirs: installdirs-recursive
 +installdirs-am:
 +	for dir in "$(DESTDIR)$(morituridir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: install-recursive
 +install-exec: install-exec-recursive
 +install-data: install-data-recursive
 +uninstall: uninstall-recursive
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-recursive
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-recursive
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-recursive
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic distclean-tags
 +
 +dvi: dvi-recursive
 +
 +dvi-am:
 +
 +html: html-recursive
 +
 +html-am:
 +
 +info: info-recursive
 +
 +info-am:
 +
 +install-data-am: install-morituriPYTHON
 +
 +install-dvi: install-dvi-recursive
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-recursive
 +
 +install-html-am:
 +
 +install-info: install-info-recursive
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-recursive
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-recursive
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-recursive
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-recursive
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-recursive
 +
 +pdf-am:
 +
 +ps: ps-recursive
 +
 +ps-am:
 +
 +uninstall-am: uninstall-morituriPYTHON
 +
- .MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \
- 	install-am install-strip tags-recursive
- 
- .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
- 	all all-am check check-am clean clean-generic ctags \
- 	ctags-recursive distclean distclean-generic distclean-tags \
- 	distdir dvi dvi-am html html-am info info-am install \
- 	install-am install-data install-data-am install-dvi \
- 	install-dvi-am install-exec install-exec-am install-html \
- 	install-html-am install-info install-info-am install-man \
- 	install-morituriPYTHON install-pdf install-pdf-am install-ps \
- 	install-ps-am install-strip installcheck installcheck-am \
- 	installdirs installdirs-am maintainer-clean \
- 	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
- 	pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
- 	uninstall-morituriPYTHON
++.MAKE: $(am__recursive_targets) install-am install-strip
++
++.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
++	check-am clean clean-generic cscopelist-am ctags ctags-am \
++	distclean distclean-generic distclean-tags distdir dvi dvi-am \
++	html html-am info info-am install install-am install-data \
++	install-data-am install-dvi install-dvi-am install-exec \
++	install-exec-am install-html install-html-am install-info \
++	install-info-am install-man install-morituriPYTHON install-pdf \
++	install-pdf-am install-ps install-ps-am install-strip \
++	installcheck installcheck-am installdirs installdirs-am \
++	maintainer-clean maintainer-clean-generic mostlyclean \
++	mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \
++	uninstall-am uninstall-morituriPYTHON
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined morituri/common/Makefile.in
index 8beea89,0000000..9ef3601
mode 100644,000000..100644
--- a/morituri/common/Makefile.in
+++ b/morituri/common/Makefile.in
@@@ -1,441 -1,0 +1,497 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = morituri/common
- DIST_COMMON = $(morituri_PYTHON) $(srcdir)/Makefile.am \
- 	$(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
++	$(morituri_PYTHON) $(top_srcdir)/py-compile
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile)
 +am__installdirs = "$(DESTDIR)$(morituridir)"
++am__pep3147_tweak = \
++  sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|'
 +py_compile = $(top_srcdir)/py-compile
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +CLEANFILES = *.py{c,o}
 +morituridir = $(PYTHONLIBDIR)/morituri/common
 +morituri_PYTHON = \
 +	__init__.py \
 +	accurip.py \
 +	checksum.py \
 +	cache.py \
 +	common.py \
 +	config.py \
++	deps.py \
 +	directory.py \
 +	drive.py \
 +	encode.py \
 +	gstreamer.py \
 +	log.py \
 +	logcommand.py \
- 	musicbrainzngs.py \
++	mbngs.py \
++	path.py \
 +	program.py \
 +	renamer.py \
 +	task.py
 +
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu morituri/common/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu morituri/common/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +install-morituriPYTHON: $(morituri_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(morituri_PYTHON)'; dlist=; list2=; test -n "$(morituridir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(morituridir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(morituridir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(morituridir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(morituridir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(morituridir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-morituriPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(morituri_PYTHON)'; test -n "$(morituridir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(morituridir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
 +all-am: Makefile
 +installdirs:
 +	for dir in "$(DESTDIR)$(morituridir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am: install-morituriPYTHON
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am: uninstall-morituriPYTHON
 +
 +.MAKE: install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-data install-data-am install-dvi \
- 	install-dvi-am install-exec install-exec-am install-html \
- 	install-html-am install-info install-info-am install-man \
- 	install-morituriPYTHON install-pdf install-pdf-am install-ps \
- 	install-ps-am install-strip installcheck installcheck-am \
- 	installdirs maintainer-clean maintainer-clean-generic \
- 	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
- 	uninstall-am uninstall-morituriPYTHON
++.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
++	ctags-am distclean distclean-generic distdir dvi dvi-am html \
++	html-am info info-am install install-am install-data \
++	install-data-am install-dvi install-dvi-am install-exec \
++	install-exec-am install-html install-html-am install-info \
++	install-info-am install-man install-morituriPYTHON install-pdf \
++	install-pdf-am install-ps install-ps-am install-strip \
++	installcheck installcheck-am installdirs maintainer-clean \
++	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
++	pdf-am ps ps-am tags-am uninstall uninstall-am \
++	uninstall-morituriPYTHON
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined morituri/configure/Makefile.in
index efd9094,0000000..d99115c
mode 100644,000000..100644
--- a/morituri/configure/Makefile.in
+++ b/morituri/configure/Makefile.in
@@@ -1,443 -1,0 +1,561 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = morituri/configure
- DIST_COMMON = $(morituri_PYTHON) $(noinst_PYTHON) \
- 	$(srcdir)/Makefile.am $(srcdir)/Makefile.in \
- 	$(srcdir)/installed.py.in $(srcdir)/uninstalled.py.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
++	$(srcdir)/uninstalled.py.in $(srcdir)/installed.py.in \
++	$(morituri_PYTHON) $(noinst_PYTHON) $(top_srcdir)/py-compile
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES = uninstalled.py installed.py
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile)
 +am__installdirs = "$(DESTDIR)$(morituridir)"
++am__pep3147_tweak = \
++  sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|'
 +py_compile = $(top_srcdir)/py-compile
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
++# Read a list of newline-separated strings from the standard input,
++# and print each of them once, without duplicates.  Input order is
++# *not* preserved.
++am__uniquify_input = $(AWK) '\
++  BEGIN { nonempty = 0; } \
++  { items[$$0] = 1; nonempty = 1; } \
++  END { if (nonempty) { for (i in items) print i; }; } \
++'
++# Make sure the list of sources is unique.  This is necessary because,
++# e.g., the same source file might be shared among _SOURCES variables
++# for different programs/libraries.
++am__define_uniq_tagged_files = \
++  list='$(am__tagged_files)'; \
++  unique=`for i in $$list; do \
++    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
++  done | $(am__uniquify_input)`
++ETAGS = etags
++CTAGS = ctags
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +CLEANFILES = *.py{c,o}
 +morituridir = $(PYTHONLIBDIR)/morituri/configure
 +morituri_PYTHON = \
 +	__init__.py \
 +	configure.py \
 +	installed.py
 +
 +noinst_PYTHON = uninstalled.py
 +BUILT_SOURCES = installed.py uninstalled.py
 +TAGS_FILES = installed.py.in uninstalled.py.in
 +DISTCLEANFILES = installed.pyc installed.pyo uninstalled.pyc uninstalled.pyo
 +EXTRA_DIST = $(morituri_PYTHON) installed.py.in uninstalled.py.in
 +all: $(BUILT_SOURCES)
 +	$(MAKE) $(AM_MAKEFLAGS) all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu morituri/configure/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu morituri/configure/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +uninstalled.py: $(top_builddir)/config.status $(srcdir)/uninstalled.py.in
 +	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 +installed.py: $(top_builddir)/config.status $(srcdir)/installed.py.in
 +	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 +install-morituriPYTHON: $(morituri_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(morituri_PYTHON)'; dlist=; list2=; test -n "$(morituridir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(morituridir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(morituridir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(morituridir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(morituridir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(morituridir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-morituriPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(morituri_PYTHON)'; test -n "$(morituridir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(morituridir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
- tags: TAGS
- TAGS:
 +
- ctags: CTAGS
- CTAGS:
++ID: $(am__tagged_files)
++	$(am__define_uniq_tagged_files); mkid -fID $$unique
++tags: tags-am
++TAGS: tags
++
++tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
++	set x; \
++	here=`pwd`; \
++	$(am__define_uniq_tagged_files); \
++	shift; \
++	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
++	  test -n "$$unique" || unique=$$empty_fix; \
++	  if test $$# -gt 0; then \
++	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
++	      "$$@" $$unique; \
++	  else \
++	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
++	      $$unique; \
++	  fi; \
++	fi
++ctags: ctags-am
++
++CTAGS: ctags
++ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
++	$(am__define_uniq_tagged_files); \
++	test -z "$(CTAGS_ARGS)$$unique" \
++	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
++	     $$unique
++
++GTAGS:
++	here=`$(am__cd) $(top_builddir) && pwd` \
++	  && $(am__cd) $(top_srcdir) \
++	  && gtags -i $(GTAGS_ARGS) "$$here"
++cscopelist: cscopelist-am
++
++cscopelist-am: $(am__tagged_files)
++	list='$(am__tagged_files)'; \
++	case "$(srcdir)" in \
++	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
++	  *) sdir=$(subdir)/$(srcdir) ;; \
++	esac; \
++	for i in $$list; do \
++	  if test -f "$$i"; then \
++	    echo "$(subdir)/$$i"; \
++	  else \
++	    echo "$$sdir/$$i"; \
++	  fi; \
++	done >> $(top_builddir)/cscope.files
 +
++distclean-tags:
++	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: $(BUILT_SOURCES)
 +	$(MAKE) $(AM_MAKEFLAGS) check-am
 +all-am: Makefile
 +installdirs:
 +	for dir in "$(DESTDIR)$(morituridir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: $(BUILT_SOURCES)
 +	$(MAKE) $(AM_MAKEFLAGS) install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +	-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
- distclean-am: clean-am distclean-generic
++distclean-am: clean-am distclean-generic distclean-tags
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am: install-morituriPYTHON
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am: uninstall-morituriPYTHON
 +
 +.MAKE: all check install install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
++.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
++	cscopelist-am ctags ctags-am distclean distclean-generic \
++	distclean-tags distdir dvi dvi-am html html-am info info-am \
 +	install install-am install-data install-data-am install-dvi \
 +	install-dvi-am install-exec install-exec-am install-html \
 +	install-html-am install-info install-info-am install-man \
 +	install-morituriPYTHON install-pdf install-pdf-am install-ps \
 +	install-ps-am install-strip installcheck installcheck-am \
 +	installdirs maintainer-clean maintainer-clean-generic \
- 	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
- 	uninstall-am uninstall-morituriPYTHON
++	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
++	tags-am uninstall uninstall-am uninstall-morituriPYTHON
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined morituri/configure/installed.py
index 9349bac,0000000..a8ab1c3
mode 100644,000000..100644
--- a/morituri/configure/installed.py
+++ b/morituri/configure/installed.py
@@@ -1,10 -1,0 +1,11 @@@
 +# -*- Mode: Python -*-
 +# vi:si:et:sw=4:sts=4:ts=4
 +
 +
 +def get():
 +    return {
 +        'isinstalled': True,
 +        'pluginsdir': '/usr/local/lib/morituri/plugins',
-         'version': '0.2.0',
++        'version': '0.2.3',
++        'revision': 'v0.2.3',
 +    }
diff --combined morituri/configure/uninstalled.py
index c88959a,a8155f8..f0a3929
--- a/morituri/configure/uninstalled.py
+++ b/morituri/configure/uninstalled.py
@@@ -1,7 -1,9 +1,9 @@@
  # -*- Mode: Python -*-
  # vi:si:et:sw=4:sts=4:ts=4
  
- import os
+ import os.path
+ 
+ from morituri.common import common
  
  
  __thisdir = os.path.dirname(os.path.abspath(__file__))
@@@ -12,5 -14,6 +14,6 @@@ def get()
          'isinstalled': False,
          'pluginsdir': os.path.abspath(os.path.join(
              __thisdir, '..', '..', 'plugins')),
-         'version': '0.2.0',
 -        'version': '@VERSION@',
++        'version': '0.2.3',
+         'revision': common.getRevision(),
      }
diff --combined morituri/extern/Makefile.in
index 7badc4a,0000000..cc65fda
mode 100644,000000..100644
--- a/morituri/extern/Makefile.in
+++ b/morituri/extern/Makefile.in
@@@ -1,616 -1,0 +1,776 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = morituri/extern
- DIST_COMMON = $(command_PYTHON) $(log_PYTHON) $(morituri_PYTHON) \
- 	$(musicbrainzngs_PYTHON) $(srcdir)/Makefile.am \
- 	$(srcdir)/Makefile.in $(task_PYTHON)
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
++	$(command_PYTHON) $(deps_PYTHON) $(log_PYTHON) \
++	$(morituri_PYTHON) $(musicbrainzngs_PYTHON) $(task_PYTHON) \
++	$(top_srcdir)/py-compile
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile)
- am__installdirs = "$(DESTDIR)$(commanddir)" "$(DESTDIR)$(logdir)" \
- 	"$(DESTDIR)$(morituridir)" "$(DESTDIR)$(musicbrainzngsdir)" \
- 	"$(DESTDIR)$(taskdir)"
++am__installdirs = "$(DESTDIR)$(commanddir)" "$(DESTDIR)$(depsdir)" \
++	"$(DESTDIR)$(logdir)" "$(DESTDIR)$(morituridir)" \
++	"$(DESTDIR)$(musicbrainzngsdir)" "$(DESTDIR)$(taskdir)"
++am__pep3147_tweak = \
++  sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|'
 +py_compile = $(top_srcdir)/py-compile
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +CLEANFILES = *.py{c,o} command/*.py{c,o} log/*.py{c,o}
 +morituridir = $(PYTHONLIBDIR)/morituri/extern
 +morituri_PYTHON = \
 +	__init__.py \
 +	asyncsub.py
 +
 +logdir = $(PYTHONLIBDIR)/morituri/extern/log
 +log_PYTHON = \
 +	log/__init__.py \
 +	log/log.py
 +
 +commanddir = $(PYTHONLIBDIR)/morituri/extern/command
 +command_PYTHON = \
 +	command/__init__.py \
 +	command/command.py
 +
++depsdir = $(PYTHONLIBDIR)/morituri/extern/deps
++deps_PYTHON = \
++	deps/__init__.py \
++	deps/deps.py \
++	deps/distro.py
++
 +taskdir = $(PYTHONLIBDIR)/morituri/extern/task
 +task_PYTHON = \
 +	task/__init__.py \
 +	task/task.py \
 +	task/taskgtk.py \
 +	task/gstreamer.py
 +
 +musicbrainzngsdir = $(PYTHONLIBDIR)/morituri/extern/musicbrainzngs
 +musicbrainzngs_PYTHON = \
 +	musicbrainzngs/__init__.py \
 +	musicbrainzngs/musicbrainz.py \
 +	musicbrainzngs/mbxml.py
 +
 +EXTRA_DIST = python-command/scripts/help2man
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu morituri/extern/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu morituri/extern/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +install-commandPYTHON: $(command_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(command_PYTHON)'; dlist=; list2=; test -n "$(commanddir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(commanddir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(commanddir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(commanddir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(commanddir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(commanddir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-commandPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(command_PYTHON)'; test -n "$(commanddir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(commanddir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
++	  $(am__uninstall_files_from_dir) || st=$$?; \
++	done; \
++	exit $$st
++install-depsPYTHON: $(deps_PYTHON)
++	@$(NORMAL_INSTALL)
++	@list='$(deps_PYTHON)'; dlist=; list2=; test -n "$(depsdir)" || list=; \
++	if test -n "$$list"; then \
++	  echo " $(MKDIR_P) '$(DESTDIR)$(depsdir)'"; \
++	  $(MKDIR_P) "$(DESTDIR)$(depsdir)" || exit 1; \
++	fi; \
++	for p in $$list; do \
++	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
++	  if test -f $$b$$p; then \
++	    $(am__strip_dir) \
++	    dlist="$$dlist $$f"; \
++	    list2="$$list2 $$b$$p"; \
++	  else :; fi; \
++	done; \
++	for file in $$list2; do echo $$file; done | $(am__base_list) | \
++	while read files; do \
++	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(depsdir)'"; \
++	  $(INSTALL_DATA) $$files "$(DESTDIR)$(depsdir)" || exit $$?; \
++	done || exit $$?; \
++	if test -n "$$dlist"; then \
++	  $(am__py_compile) --destdir "$(DESTDIR)" \
++	                    --basedir "$(depsdir)" $$dlist; \
++	else :; fi
++
++uninstall-depsPYTHON:
++	@$(NORMAL_UNINSTALL)
++	@list='$(deps_PYTHON)'; test -n "$(depsdir)" || list=; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
++	dir='$(DESTDIR)$(depsdir)'; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
++	st=0; \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
 +install-logPYTHON: $(log_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(log_PYTHON)'; dlist=; list2=; test -n "$(logdir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(logdir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(logdir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(logdir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(logdir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(logdir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-logPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(log_PYTHON)'; test -n "$(logdir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(logdir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
 +install-morituriPYTHON: $(morituri_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(morituri_PYTHON)'; dlist=; list2=; test -n "$(morituridir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(morituridir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(morituridir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(morituridir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(morituridir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(morituridir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-morituriPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(morituri_PYTHON)'; test -n "$(morituridir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(morituridir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
 +install-musicbrainzngsPYTHON: $(musicbrainzngs_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(musicbrainzngs_PYTHON)'; dlist=; list2=; test -n "$(musicbrainzngsdir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(musicbrainzngsdir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(musicbrainzngsdir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(musicbrainzngsdir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(musicbrainzngsdir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(musicbrainzngsdir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-musicbrainzngsPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(musicbrainzngs_PYTHON)'; test -n "$(musicbrainzngsdir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(musicbrainzngsdir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
 +install-taskPYTHON: $(task_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(task_PYTHON)'; dlist=; list2=; test -n "$(taskdir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(taskdir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(taskdir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(taskdir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(taskdir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(taskdir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-taskPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(task_PYTHON)'; test -n "$(taskdir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(taskdir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
- all-am: Makefile
++all-am: Makefile all-local
 +installdirs:
- 	for dir in "$(DESTDIR)$(commanddir)" "$(DESTDIR)$(logdir)" "$(DESTDIR)$(morituridir)" "$(DESTDIR)$(musicbrainzngsdir)" "$(DESTDIR)$(taskdir)"; do \
++	for dir in "$(DESTDIR)$(commanddir)" "$(DESTDIR)$(depsdir)" "$(DESTDIR)$(logdir)" "$(DESTDIR)$(morituridir)" "$(DESTDIR)$(musicbrainzngsdir)" "$(DESTDIR)$(taskdir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
- install-data-am: install-commandPYTHON install-logPYTHON \
- 	install-morituriPYTHON install-musicbrainzngsPYTHON \
- 	install-taskPYTHON
++install-data-am: install-commandPYTHON install-depsPYTHON \
++	install-logPYTHON install-morituriPYTHON \
++	install-musicbrainzngsPYTHON install-taskPYTHON
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
- uninstall-am: uninstall-commandPYTHON uninstall-logPYTHON \
- 	uninstall-morituriPYTHON uninstall-musicbrainzngsPYTHON \
- 	uninstall-taskPYTHON
++uninstall-am: uninstall-commandPYTHON uninstall-depsPYTHON \
++	uninstall-logPYTHON uninstall-morituriPYTHON \
++	uninstall-musicbrainzngsPYTHON uninstall-taskPYTHON
 +
 +.MAKE: install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-commandPYTHON install-data \
- 	install-data-am install-dvi install-dvi-am install-exec \
++.PHONY: all all-am all-local check check-am clean clean-generic \
++	cscopelist-am ctags-am distclean distclean-generic distdir dvi \
++	dvi-am html html-am info info-am install install-am \
++	install-commandPYTHON install-data install-data-am \
++	install-depsPYTHON install-dvi install-dvi-am install-exec \
 +	install-exec-am install-html install-html-am install-info \
 +	install-info-am install-logPYTHON install-man \
 +	install-morituriPYTHON install-musicbrainzngsPYTHON \
 +	install-pdf install-pdf-am install-ps install-ps-am \
 +	install-strip install-taskPYTHON installcheck installcheck-am \
 +	installdirs maintainer-clean maintainer-clean-generic \
- 	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
- 	uninstall-am uninstall-commandPYTHON uninstall-logPYTHON \
++	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags-am \
++	uninstall uninstall-am uninstall-commandPYTHON \
++	uninstall-depsPYTHON uninstall-logPYTHON \
 +	uninstall-morituriPYTHON uninstall-musicbrainzngsPYTHON \
 +	uninstall-taskPYTHON
 +
 +
- musicbrainzngs/musicbrainz.py: all
++log:
++	make git-submodule
++musicbrainzngs:
++	make git-submodule
++
++git-submodule:
++	cd $(top_srcdir) && git submodule init && git submodule sync && git submodule update
++
++.PHONY: git-submodule
++
++all-local: log musicbrainzngs
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined morituri/extern/command/command.py
index fc30fed,0000000..9b4c220
mode 100644,000000..100644
--- a/morituri/extern/command/command.py
+++ b/morituri/extern/command/command.py
@@@ -1,606 -1,0 +1,622 @@@
 +# -*- Mode: Python; test-case-name: test_command -*-
 +# vi:si:et:sw=4:sts=4:ts=4
 +
 +# This file is released under the standard PSF license.
 +
 +"""
 +Command class.
 +"""
 +
 +import optparse
 +import sys
 +
 +
 +class CommandHelpFormatter(optparse.IndentedHelpFormatter):
 +    """
 +    I format the description as usual, but add an overview of commands
 +    after it if there are any, formatted like the options.
 +    """
 +
 +    _commands = None
 +    _aliases = None
 +    _klass = None
 +
 +    def addCommand(self, name, description):
 +        if self._commands is None:
 +            self._commands = {}
 +        self._commands[name] = description
 +
 +    def addAlias(self, alias):
 +        if self._aliases is None:
 +            self._aliases = []
 +        self._aliases.append(alias)
 +
 +    def setClass(self, klass):
 +        self._klass = klass
 +
 +    def getCommands(self):
 +        ret = ""
 +
 +        if self._commands:
 +            commandDesc = []
 +            commandDesc.append("Commands:")
 +            keys = self._commands.keys()
 +            keys.sort()
 +            length = 0
 +            for key in keys:
 +                if len(key) > length:
 +                    length = len(key)
 +            for name in keys:
 +                formatString = "  %-" + "%d" % length + "s  %s"
 +                commandDesc.append(formatString % (name, self._commands[name]))
 +            ret += "\n" + "\n".join(commandDesc) + "\n"
 +
 +        return ret
 +
 +
 +    ### override parent method
 +
 +    def format_description(self, description, width=None):
 +        # textwrap doesn't allow for a way to preserve double newlines
 +        # to separate paragraphs, so we do it here.
 +        paragraphs = description.split('\n\n')
 +        rets = []
 +
 +        for paragraph in paragraphs:
 +            # newlines starting with a space/dash are treated as a table, ie as
 +            # is
 +            lines = paragraph.split('\n -')
 +            formatted = []
 +            for line in lines:
 +                formatted.append(
 +                    optparse.IndentedHelpFormatter.format_description(
 +                        self, line))
 +            rets.append(" -".join(formatted))
 +
 +        ret = "\n".join(rets)
 +
 +        # add aliases
 +        if self._aliases:
 +            ret += "\nAliases: " + ", ".join(self._aliases) + "\n"
 +
 +        # add subcommands
 +        ret += self.getCommands()
 +
 +        # add class info
 +        ret += "\nImplemented by: %s.%s\n" % (
 +            self._klass.__module__, self._klass.__name__)
 +
 +        return ret
 +
 +
 +class CommandOptionParser(optparse.OptionParser):
 +    """
 +    I parse options as usual, but I explicitly allow setting stdout
 +    so that our print_help() method (invoked by default with -h/--help)
 +    defaults to writing there.
 +
 +    I also override exit() so that I can be used in interactive shells.
 +
 +    @ivar help_printed:  whether help was printed during parsing
 +    @ivar usage_printed: whether usage was printed during parsing
 +    """
 +    help_printed = False
 +    usage_printed = False
 +
 +    _stdout = sys.stdout
++    _stderr = sys.stderr
 +
 +    def set_stdout(self, stdout):
 +        self._stdout = stdout
 +
++    def set_stderr(self, stderr):
++        self._stderr = stderr
++
 +    def parse_args(self, args=None, values=None):
 +        self.help_printed = False
 +        self.usage_printed = False
-         return optparse.OptionParser.parse_args(self, args, values)
++        try:
++            return optparse.OptionParser.parse_args(self, args, values)
++        except UnboundLocalError:
++            raise
++            # this can happen when an option is used that requires a
++            # value but none is specified
++            raise CommandError("Missing argument to option")
++
 +    # we're overriding the built-in file, but we need to since this is
 +    # the signature from the base class
 +    __pychecker__ = 'no-shadowbuiltin'
 +
 +    def print_commands(self, file=None):
 +        if file is None:
 +            file = self._stdout
 +        file.write(self.formatter.getCommands())
 +
 +    def print_help(self, file=None):
 +        # we are overriding a parent method so we can't do anything about file
 +        __pychecker__ = 'no-shadowbuiltin'
 +        if file is None:
 +            file = self._stdout
 +        file.write(self.format_help())
 +        self.help_printed = True
 +
 +    def print_usage(self, file=None):
 +        optparse.OptionParser.print_usage(self, file)
 +        self.usage_printed = True
 +
 +    def exit(self, status=0, msg=None):
 +        if msg:
-             sys.stderr.write(msg)
++            self._stderr.write(msg)
 +
 +        return status
 +
++    # since we override exit not to exit, we need to override error to do
++    def error(self, msg):
++        self.print_usage(self._stderr)
++        raise CommandError(msg)
 +
 +class Command(object):
 +    """
 +    I am a class that handles a command for a program.
 +    Commands can be nested underneath a command for further processing.
 +
 +    @cvar name:        name of the command, lowercase;
 +                       defaults to the lowercase version of the class name
 +    @cvar aliases:     list of alternative lowercase names recognized
 +    @type aliases:     list of str
 +    @cvar usage:       short one-line usage string;
 +                       %command gets expanded to a sub-command or [commands]
 +                       as appropriate.  Don't specify the command name itself,
 +                       it will be added automatically.  If not set, defaults
 +                       to name.
 +    @cvar summary:     short one-line summary of the command
 +    @cvar description: longer paragraph explaining the command
 +    @cvar subCommands: dict of name -> commands below this command
 +    @type subCommands: dict of str  -> L{Command}
 +    @cvar parser:      the option parser used for parsing
 +    @type parser:      L{optparse.OptionParser}
 +    """
 +    name = None
 +    aliases = None
 +    usage = None
 +    summary = None
 +    description = None
 +    parentCommand = None
 +    subCommands = None
 +    subCommandClasses = None
 +    aliasedSubCommands = None
 +    parser = None
 +
 +    def __init__(self, parentCommand=None, stdout=None,
 +        stderr=None, width=None):
 +        """
 +        Create a new command instance, with the given parent.
 +        Allows for redirecting stdout and stderr if needed.
 +        This redirection will be passed on to child commands.
 +        """
 +        if not self.name:
 +            self.name = self.__class__.__name__.lower()
 +        self._stdout = stdout
 +        self._stderr = stderr
 +        self.parentCommand = parentCommand
 +
 +        # create subcommands if we have them
 +        self.subCommands = {}
 +        self.aliasedSubCommands = {}
 +        if self.subCommandClasses:
 +            for C in self.subCommandClasses:
 +                c = C(self, stdout=stdout, stderr=stderr, width=width)
 +                self.subCommands[c.name] = c
 +                if c.aliases:
 +                    for alias in c.aliases:
 +                        self.aliasedSubCommands[alias] = c
 +
 +        # create our formatter and add subcommands if we have them
 +        formatter = CommandHelpFormatter(width=width)
 +        formatter.setClass(self.__class__)
 +        if self.subCommands:
 +            if not self.description:
 +                if self.summary:
 +                    self.description = self.summary
 +                else:
 +                    raise AttributeError, \
 +                        "%r needs a summary or description " \
 +                        "for help formatting" % self
 +
 +            for name, command in self.subCommands.items():
 +                formatter.addCommand(name, command.summary or
 +                    command.description or '')
 +
 +        if self.aliases:
 +            for alias in self.aliases:
 +                formatter.addAlias(alias)
 +
 +        # expand %command for the bottom usage
 +        usage = self.usage or ''
 +        if not usage:
 +            # if no usage, but subcommands, then default to showing that
 +            if self.subCommands:
 +                usage = "%command"
 +
 +        # the main program name shouldn't get prepended, because %prog
 +        # already expands to the name
 +        if not usage.startswith('%prog'):
 +            usage = self.name + ' ' + usage
 +
 +        usages = [usage, ]
 +        if usage.find("%command") > -1:
 +            if self.subCommands:
 +                usage = usage.split("%command")[0] + '[command]'
 +                usages = [usage, ]
 +            else:
 +                # %command used in a leaf command
 +                usages = usage.split("%command")
 +                usages.reverse()
 +
 +        # FIXME: abstract this into getUsage that takes an optional
 +        # parentCommand on where to stop recursing up
 +        # useful for implementing subshells
 +
 +        # walk the tree up for our usage
 +        c = self.parentCommand
 +        while c:
 +            usage = c.usage or c.name
 +            if usage.find(" %command") > -1:
 +                usage = usage.split(" %command")[0]
 +            usages.append(usage)
 +            c = c.parentCommand
 +        usages.reverse()
 +        usage = " ".join(usages)
 +
 +        # create our parser
 +        description = self.description or self.summary
 +        if description:
 +            description = description.strip()
 +        self.parser = CommandOptionParser(
 +            usage=usage, description=description,
 +            formatter=formatter)
 +        self.parser.set_stdout(self.stdout)
++        self.parser.set_stderr(self.stderr)
 +        self.parser.disable_interspersed_args()
 +
 +        # allow subclasses to add options
 +        self.addOptions()
 +
 +    def addOptions(self):
 +        """
 +        Override me to add options to the parser.
 +        """
 +        pass
 +
 +    def do(self, args):
 +        """
 +        Override me to implement the functionality of the command.
 +
 +        @rtype:   int
 +        @returns: an exit code, or None if no actual action was taken.
 +        """
 +        raise NotImplementedError('Implement %s.do()' % self.__class__)
 +        # by default, return 1 and hopefully show help
 +        return 1
 +
 +    def parse(self, argv):
 +        """
 +        Parse the given arguments and act on them.
 +
 +        @param argv: list of arguments to parse
 +        @type  argv: list of unicode
 +
 +        @rtype:   int
 +        @returns: an exit code, or None if no actual action was taken.
 +        """
 +        # note: no arguments should be passed as an empty list, not a list
 +        # with an empty str as ''.split(' ') returns
 +        self.debug('calling %r.parse_args(%r)' % (self, argv))
 +        self.options, args = self.parser.parse_args(argv)
 +        self.debug('called %r.parse_args' % self)
 +
 +        # if we were asked to print help or usage, we are done
 +        if self.parser.usage_printed or self.parser.help_printed:
 +            return None
 +
 +        # FIXME: make handleOptions not take options, since we store it
 +        # in self.options now
 +        self.debug('calling %r.handleOptions(%r)' % (self, self.options))
 +        ret = self.handleOptions(self.options)
 +        self.debug('called %r.handleOptions, returned %r' % (self, ret))
 +        if ret:
 +            return ret
 +
 +        # handle pleas for help
 +        if args and args[0] == 'help':
 +            self.debug('Asked for help, args %r' % args)
 +
 +            # give help on current command if only 'help' is passed
 +            if len(args) == 1:
 +                # start on a newline for the case where we're in the
 +                # interpreter
 +                self.stdout.write('\n')
 +                self.outputHelp()
 +                return 0
 +
 +            # complain if we were asked for help on a subcommand, but we don't
 +            # have any
 +            if not self.subCommands:
 +                self.stderr.write('No subcommands defined.\n')
 +                self.parser.print_usage(file=self.stderr)
 +                self.stderr.write(
 +                    "Use --help to get more information about this command.\n")
 +                return 1
 +
 +            # rewrite the args the other way around;
 +            # help doap becomes doap help so it gets deferred to the doap
 +            # command
 +            args = [args[1], args[0]]
 +
 +        # if we don't have args or don't have subcommands,
 +        # defer to our do() method
 +        # allows implementing a do() for commands that also have subcommands
 +        if not args or not self.subCommands:
 +            self.debug('no args or no subcommands, calling %r.do(%r)' % (
 +                self, args))
 +            try:
 +                ret = self.do(args)
 +                self.debug('done ok, returned %r', ret)
 +            except CommandOk, e:
 +                self.debug('done with exception, raised %r', e)
 +                ret = e.status
 +                if e.output is not None:
 +                    self.stdout.write(e.output + '\n')
 +            except CommandExited, e:
 +                self.debug('done with exception, raised %r', e)
 +                ret = e.status
 +                if e.output is not None:
 +                    self.stderr.write(e.output + '\n')
 +            except NotImplementedError:
 +                self.debug('done with NotImplementedError')
 +                self.parser.print_usage(file=self.stderr)
 +                self.stderr.write(
 +                    "Use --help to get a list of commands.\n")
 +                ret = 1
 +
 +
 +            # if everything's fine, we return 0
 +            if not ret:
 +                ret = 0
 +
 +            return ret
 +
 +        # if we do have subcommands, defer to them
 +        try:
 +            command = args[0]
 +        except IndexError:
 +            self.parser.print_usage(file=self.stderr)
 +            self.stderr.write(
 +                "Use --help to get a list of commands.\n")
 +            return 1
 +
 +        # FIXME: check users and enable this
 +        # assert type(command) is unicode
 +        if command in self.subCommands.keys():
 +            return self.subCommands[command].parse(args[1:])
 +
 +        if self.aliasedSubCommands:
 +            if command in self.aliasedSubCommands.keys():
 +                return self.aliasedSubCommands[command].parse(args[1:])
 +
 +        if not command:
 +            self.stderr.write("Please specify a subcommand.\n")
 +        else:
 +            self.stderr.write("Unknown command '%s'.\n"
 +                % command.encode('utf-8'))
 +            self.parser.print_commands(file=self.stderr)
 +        return 1
 +
 +    def handleOptions(self, options):
 +        """
 +        Handle the parsed options.
 +        """
 +        pass
 +
 +    def outputHelp(self, file=None):
 +        """
 +        Output help information.
 +        """
 +        __pychecker__ = 'no-shadowbuiltin'
 +        self.debug('outputHelp')
 +        if not file:
 +            file = self.stderr
 +        self.parser.print_help(file=file)
 +
 +    def outputUsage(self, file=None):
 +        """
 +        Output usage information.
 +        Used when the options or arguments were missing or wrong.
 +        """
 +        __pychecker__ = 'no-shadowbuiltin'
 +        self.debug('outputUsage')
 +        if not file:
 +            file = self.stderr
 +        self.parser.print_usage(file=file)
 +
 +    def getRootCommand(self):
 +        """
 +        Return the top-level command, which is typically the program.
 +        """
 +        c = self
 +        while c.parentCommand:
 +            c = c.parentCommand
 +        return c
 +
 +    def warning(self, format, *args):
 +        """
 +        Override me to handle warning output from this class.
 +        """
 +        pass
 +
 +    def info(self, format, *args):
 +        """
 +        Override me to handle info output from this class.
 +        """
 +        pass
 +
 +
 +    def debug(self, format, *args):
 +        """
 +        Override me to handle debug output from this class.
 +        """
 +        pass
 +
 +    def getFullName(self):
 +        names = []
 +        c = self
 +        while c:
 +            names.append(c.name)
 +            c = c.parentCommand
 +        names.reverse()
 +        return " ".join(names)
 +
 +    def _getStd(self, what):
 +
 +        ret = getattr(self, '_' + what, None)
 +        if ret:
 +            return ret
 +
 +        # if I am the root command, default
 +        if not self.parentCommand:
 +            return getattr(sys, what)
 +
 +        # otherwise delegate to my parent
 +        return getattr(self.parentCommand, what)
 +
 +    def _getStdOut(self):
 +        return self._getStd('stdout')
 +
 +    def _getStdErr(self):
 +        return self._getStd('stderr')
 +
 +    stdout = property(_getStdOut)
 +    stderr = property(_getStdErr)
 +
 +
 +class CommandExited(Exception):
 +
 +    def __init__(self, status, output=None):
 +        self.args = (status, output)
 +        self.status = status
 +        self.output = output
 +
 +
 +class CommandOk(CommandExited):
 +
 +    def __init__(self, output=None):
 +        CommandExited.__init__(self, 0, output)
 +
 +
 +class CommandError(CommandExited):
 +
 +    def __init__(self, output=None):
 +        CommandExited.__init__(self, 3, output)
 +
 +
 +def commandToCmdClass(command):
 +    """
 +    @type  command: L{Command}
 +
 +    Take a Command instance and create a L{cmd.Cmd} class from it that
 +    implements a command line interpreter, using the commands under the given
 +    Command instance as its subcommands.
 +
 +    Example use in a command:
 +
 +    >>> def do(self, args):
 +    ...     cmd = command.commandToCmdClass(self)()
 +    ...     cmd.prompt = 'prompt> '
 +    ...     while not cmd.exited:
 +    ...         cmd.cmdloop()
 +
 +    @rtype: L{cmd.Cmd}
 +    """
 +    import cmd
 +
 +    # internal class to subclass cmd.Cmd with a Ctrl-D handler
 +
 +    class _CommandWrappingCmd(cmd.Cmd):
 +        prompt = '(command) '
 +        exited = False
 +        command = None # the original Command subclass
 +
 +        def __repr__(self):
 +            return "<_CommandWrappingCmd for Command %r>" % self.command
 +
 +        def do_EOF(self, args):
 +            self.stdout.write('\n')
 +            self.exited = True
 +            sys.exit(0)
 +
 +        def do_exit(self, args):
 +            self.exited = True
 +            sys.exit(0)
 +
 +        def help_EOF(self):
 +            print 'Exit.'
 +
 +        def help_exit(self):
 +            print 'Exit.'
 +
 +    # populate the Cmd interpreter from our command class
 +    cmdClass = _CommandWrappingCmd
 +    cmdClass.command = command
 +
 +    for name, subCommand in command.subCommands.items() \
 +        + command.aliasedSubCommands.items():
 +        if name == 'shell':
 +            continue
 +        command.debug('Adding shell command %s for %r' % (name, subCommand))
 +
 +        # add do command
 +        methodName = 'do_' + name
 +
 +        def generateDo(c):
 +
 +            def do_(s, line):
 +                # line is coming from a terminal; usually it is a utf-8 encoded
 +                # string.
 +                # Instead of making every Command subclass implement do with
 +                # unicode decoding, we do it here.
 +                line = line.decode('utf-8')
 +                # the do_ method is passed a single argument consisting of
 +                # the remainder of the line
 +                args = line.split(' ')
 +                command.debug('Asking %r to parse %r' % (c, args))
 +                return c.parse(args)
 +            return do_
 +
 +        method = generateDo(subCommand)
 +        setattr(cmdClass, methodName, method)
 +
 +
 +        # add help command
 +        methodName = 'help_' + name
 +
 +        def generateHelp(c):
 +
 +            def help_(s):
 +                # add a newline because we're still at the end of the help
 +                # command on the prompt
 +                c.debug('Getting help for %r', s)
 +                s.stdout.write('\n')
 +                c.parser.print_help(file=s.stdout)
 +            return help_
 +
 +        method = generateHelp(subCommand)
 +        command.debug('Adding method %r with name %r to %r' % (
 +            method, methodName, cmdClass))
 +        setattr(cmdClass, methodName, method)
 +
 +    return cmdClass
 +
 +
 +def commandToCmd(command):
 +    # for compatibility reasons
 +    return commandToCmdClass(command)()
diff --combined morituri/extern/deps/deps.py
index 0000000,0000000..752964e
new file mode 100644
--- /dev/null
+++ b/morituri/extern/deps/deps.py
@@@ -1,0 -1,0 +1,170 @@@
++# -*- Mode: Python -*-
++# vi:si:et:sw=4:sts=4:ts=4
++
++# code to handle import errors and tell us more information about the
++# missing dependency
++
++import sys
++
++from . import distro
++
++class DependencyError(Exception):
++    pass
++
++class Dependency:
++
++    module = None
++    egg = None
++    name = None
++    homepage = None
++
++    def install(self, distro):
++        """
++        Return an explanation on how to install the given dependency
++        for the given distro/version/arch.
++
++        @type  distro: L{distro.Distro}
++
++        @rtype:   str or None
++        @returns: an explanation on how to install the dependency, or None.
++        """
++        name = distro.distributor + '_install'
++        m = getattr(self, name, None)
++        if m:
++            return m(distro)
++
++    def validate(self):
++        """
++        Allow the dependency to validate itself, for example based on
++        package version.
++
++        @returns: None if ok, or an explanation of the problem if not.
++        """
++        pass
++
++    # base methods that can be used by subclasses
++    def Fedora_yum(self, packageName):
++        """
++        Returns a string explaining how to install the given package.
++        """
++        return "On Fedora, you can install %s with:\n" \
++                "su -c \"yum install %s\"" % (self.module, packageName)
++
++    def Debian_apt(self, packageName):
++        """
++        Returns a string explaining how to install the given package.
++        """
++        return "On Debian, you can install %s with:\n" \
++                "sudo apt-get install %s" % (self.module, packageName)
++
++    def Ubuntu_apt(self, packageName):
++        """
++        Returns a string explaining how to install the given package.
++        """
++        return "On Ubuntu, you can install %s with:\n" \
++                "sudo apt-get install %s" % (self.module, packageName)
++
++    # distro aliases
++    def FedoraCore_install(self, distro):
++        self.Fedora_install(distro)
++
++
++    def version(self):
++        return self.version_egg()
++
++    def version_egg(self):
++        if not self.egg:
++            return None
++
++        import pkg_resources
++        try:
++            return pkg_resources.get_distribution(self.egg).version
++        except pkg_resources.DistributionNotFound:
++            pass
++
++
++class DepsHandler(object):
++    """
++    I handle dependencies and related exceptions.
++    """
++
++    _deps = None
++
++    def __init__(self, name):
++        self._deps = {}
++        self._name = name
++
++    def add(self, dependency):
++        self._deps[dependency.module] = dependency
++
++
++    def validate(self):
++        for dep in self._deps.values():
++            ret = dep.validate()
++            if ret:
++                sys.stderr.write("Cannot use module '%s'\n" % dep.module)
++                sys.stderr.write('This module is part of %s.\n' % dep.name)
++                sys.stderr.write(ret + '\n')
++
++                raise DependencyError(dep.module)
++
++
++    def handleImportError(self, exception):
++        """
++        Handle dependency import errors by displaying more information about
++        the dependency.
++        """
++        first = exception.args[0]
++        if first.find('No module named ') < 0:
++            raise
++        module = first[len('No module named '):]
++        module = module.split('.')[0]
++
++        if module in self._deps.keys():
++            dep = self._deps[module]
++            sys.stderr.write("Could not import python module '%s'\n" % module)
++            sys.stderr.write('This module is part of %s.\n' % dep.name)
++
++            self.handleMissingDependency(dep)
++
++            # how to confirm the python module got installed
++            sys.stderr.write("\n")
++            sys.stderr.write(
++                'You can confirm it is installed by starting Python and running:\n')
++            sys.stderr.write('import %s\n' % module)
++
++            return
++
++        # re-raise if we didn't have it
++        raise
++
++    def report(self, summary):
++        raise NotImplementedError
++
++    def handleMissingDependency(self, dep):
++        if dep.homepage:
++            sys.stderr.write('See %s for more information.\n\n' % dep.homepage)
++
++        d = distro.getDistroFromRelease()
++        if d:
++            howto = dep.install(d)
++            if howto:
++                sys.stderr.write(howto)
++            else:
++                url = self.report('DEP: %s, %s' % (dep.module, d.description))
++                sys.stderr.write("""On %s, %s does not know how to install %s.
++    Please file a bug at:
++    %s
++    with instructions on how to install the dependency so we can add it.
++    """ % (d.description, dep.module, self._name, url))
++        else:
++            url = self.report('DISTRO: Unknown')
++            sys.stderr.write("""%s does not know your distribution.
++    Please file a bug at:
++    %s
++    with instructions on how to recognize your distribution so we can add it.
++    """ % (self._name, url))
++
++        sys.stderr.write('\n')
++
++        sys.stderr.write('Please install %s and try again.\n' % dep.module)
diff --combined morituri/extern/deps/distro.py
index 0000000,0000000..f860c9e
new file mode 100644
--- /dev/null
+++ b/morituri/extern/deps/distro.py
@@@ -1,0 -1,0 +1,83 @@@
++# -*- Mode: Python; test-case-name: test.test_distro -*-
++# vi:si:et:sw=4:sts=4:ts=4
++
++import commands
++import os
++
++import distutils.version
++
++"""
++Figure out what distribution, architecture and version the user is on.
++"""
++
++class DistroException(Exception):
++    pass
++
++class Distro:
++    """
++    @cvar description: a longer human-readable name for the distro
++    @type description: str
++    @cvar distributor: a short lower-case identifier for the distro
++    @type distributor: str
++    @cvar release:     the version of the distro
++    @type release:     str
++    @cvar arch:        the architecture of the distro
++    @type arch:        str
++    """
++    description = None
++    distributor = None
++    release = None
++    arch = None
++
++    def __init__(self, description, distributor, release, arch):
++        self.description = description
++        self.distributor = distributor
++        self.release = release
++        self.arch = arch
++
++    def atLeast(self, release):
++        """
++        @param release: release to compare with
++        @type  release: str
++
++        Returns: whether the distro is at least as new as the given release,
++                 taking non-numbers into account.
++        """
++        mine = distutils.version.LooseVersion(self.release)
++        theirs = distutils.version.LooseVersion(release)
++        return mine >= theirs
++
++def getSysName():
++    """
++    Get the system name.  Typically the first item in the os.uname tuple.
++    """
++    return os.uname()[1]
++
++def getMachine():
++    """
++    Get the machine architecture.  Typically the fifth item in os.uname.
++    """
++    return os.uname()[4]
++
++def getDistroFromRelease():
++    """
++    Decide on the distro based on the presence of a distro-specific release
++    file.
++
++    rtype: L{Distro} or None.
++    """
++    # start with lsb_release
++    (status, output) = commands.getstatusoutput("lsb_release -i")
++    if os.WIFEXITED(status):
++        ret = os.WEXITSTATUS(status)
++        if ret == 127:
++            raise DistroException('lsb_release binary not found')
++
++    if output and output.startswith('Distributor ID:'):
++        distributor = output.split(':', 2)[1].strip()
++        output = commands.getoutput("lsb_release -d")
++        description = output.split(':', 2)[1].strip()
++        output = commands.getoutput("lsb_release -r")
++        release = output.split(':', 2)[1].strip()
++
++        return Distro(description, distributor, release, None)
diff --combined morituri/extern/musicbrainzngs/__init__.py
index e69de29,0000000..c58a0dd
mode 100644,000000..100644
--- a/morituri/extern/musicbrainzngs/__init__.py
+++ b/morituri/extern/musicbrainzngs/__init__.py
@@@ -1,0 -1,0 +1,1 @@@
++from musicbrainz import *
diff --combined morituri/extern/musicbrainzngs/mbxml.py
index 4177e51,0000000..0cd188a
mode 100644,000000..100644
--- a/morituri/extern/musicbrainzngs/mbxml.py
+++ b/morituri/extern/musicbrainzngs/mbxml.py
@@@ -1,545 -1,0 +1,564 @@@
++# This file is part of the musicbrainzngs library
++# Copyright (C) Alastair Porter, Adrian Sampson, and others
++# This file is distributed under a BSD-2-Clause type license.
++# See the COPYING file for more information.
++
 +import xml.etree.ElementTree as ET
 +import string
 +import StringIO
 +import logging
 +try:
 +	from ET import fixtag
 +except:
 +	# Python < 2.7
 +	def fixtag(tag, namespaces):
 +		# given a decorated tag (of the form {uri}tag), return prefixed
 +		# tag and namespace declaration, if any
 +		if isinstance(tag, ET.QName):
 +			tag = tag.text
 +		namespace_uri, tag = string.split(tag[1:], "}", 1)
 +		prefix = namespaces.get(namespace_uri)
 +		if prefix is None:
 +			prefix = "ns%d" % len(namespaces)
 +			namespaces[namespace_uri] = prefix
 +			if prefix == "xml":
 +				xmlns = None
 +			else:
 +				xmlns = ("xmlns:%s" % prefix, namespace_uri)
 +		else:
 +			xmlns = None
 +		return "%s:%s" % (prefix, tag), xmlns
 +
 +NS_MAP = {"http://musicbrainz.org/ns/mmd-2.0#": "ws2"}
++_log = logging.getLogger("python-musicbrainz-ngs")
 +
 +def make_artist_credit(artists):
 +	names = []
 +	for artist in artists:
 +		if isinstance(artist, dict):
 +			names.append(artist.get("artist", {}).get("name", ""))
 +		else:
 +			names.append(artist)
 +	return "".join(names)
 +
 +def parse_elements(valid_els, element):
 +	""" Extract single level subelements from an element.
 +	    For example, given the element:
 +	    <element>
 +	        <subelement>Text</subelement>
 +	    </element>
 +	    and a list valid_els that contains "subelement",
 +	    return a dict {'subelement': 'Text'}
 +	"""
 +	result = {}
 +	for sub in element:
 +		t = fixtag(sub.tag, NS_MAP)[0]
 +		if ":" in t:
 +			t = t.split(":")[1]
 +		if t in valid_els:
 +			result[t] = sub.text
 +		else:
- 			logging.debug("in <%s>, uncaught <%s>", fixtag(element.tag, NS_MAP)[0], t)
++			_log.debug("in <%s>, uncaught <%s>", fixtag(element.tag, NS_MAP)[0], t)
 +	return result
 +
 +def parse_attributes(attributes, element):
 +	""" Extract attributes from an element.
 +	    For example, given the element:
 +	    <element type="Group" />
 +	    and a list attributes that contains "type",
 +	    return a dict {'type': 'Group'}
 +	"""
 +	result = {}
 +	for attr in attributes:
 +		if attr in element.attrib:
 +			result[attr] = element.attrib[attr]
 +		else:
- 			logging.debug("in <%s>, uncaught attribute %s", fixtag(element.tag, NS_MAP)[0], attr)
++			_log.debug("in <%s>, uncaught attribute %s", fixtag(element.tag, NS_MAP)[0], attr)
 +	return result
 +
 +def parse_inner(inner_els, element):
 +	""" Delegate the parsing of a subelement to another function.
 +	    For example, given the element:
 +	    <element>
 +	        <subelement>
 +	            <a>Foo</a><b>Bar</b>
 +		</subelement>
 +	    </element>
 +	    and a dictionary {'subelement': parse_subelement},
 +	    call parse_subelement(<subelement>) and
 +	    return a dict {'subelement': <result>}
 +	    if parse_subelement returns a tuple of the form
 +	    ('subelement-key', <result>) then return a dict
 +	    {'subelement-key': <result>} instead
 +	"""
 +	result = {}
 +	for sub in element:
 +		t = fixtag(sub.tag, NS_MAP)[0]
 +		if ":" in t:
 +			t = t.split(":")[1]
 +		if t in inner_els.keys():
 +			inner_result = inner_els[t](sub)
 +			if isinstance(inner_result, tuple):
 +				result[inner_result[0]] = inner_result[1]
 +			else:
 +				result[t] = inner_result
 +		else:
- 			logging.debug("in <%s>, not delegating <%s>", fixtag(element.tag, NS_MAP)[0], t)
++			_log.debug("in <%s>, not delegating <%s>", fixtag(element.tag, NS_MAP)[0], t)
 +	return result
 +
 +def parse_message(message):
 +	s = message.read()
 +	f = StringIO.StringIO(s)
 +	tree = ET.ElementTree(file=f)
 +	root = tree.getroot()
 +	result = {}
 +	valid_elements = {"artist": parse_artist,
 +	                  "label": parse_label,
 +	                  "release": parse_release,
 +	                  "release-group": parse_release_group,
 +	                  "recording": parse_recording,
 +	                  "work": parse_work,
 +
 +	                  "disc": parse_disc,
 +	                  "puid": parse_puid,
 +	                  "echoprint": parse_puid,
 +
 +	                  "artist-list": parse_artist_list,
 +	                  "label-list": parse_label_list,
 +	                  "release-list": parse_release_list,
 +	                  "release-group-list": parse_release_group_list,
 +	                  "recording-list": parse_recording_list,
 +	                  "work-list": parse_work_list,
 +	
 +	                  "collection-list": parse_collection_list,
 +	                  "collection": parse_collection,
 +
 +	                  "message": parse_response_message
 +	                  }
 +	result.update(parse_inner(valid_elements, root))
 +	return result
 +
 +def parse_response_message(message):
 +    return parse_elements(["text"], message)
 +
 +def parse_collection_list(cl):
 +	return [parse_collection(c) for c in cl]
 +
 +def parse_collection(collection):
 +	result = {}
 +	attribs = ["id"]
 +	elements = ["name", "editor"]
 +	inner_els = {"release-list": parse_release_list}
 +	result.update(parse_attributes(attribs, collection))
 +	result.update(parse_elements(elements, collection))
 +	result.update(parse_inner(inner_els, collection))
 +
 +	return result
 +
 +def parse_collection_release_list(rl):
 +	attribs = ["count"]
 +	return parse_attributes(attribs, rl)
 +
 +def parse_artist_lifespan(lifespan):
 +	parts = parse_elements(["begin", "end"], lifespan)
- 	beginval = parts.get("begin", "")
- 	endval = parts.get("end", "")
- 		
- 	return (beginval, endval)
++
++	return parts
 +
 +def parse_artist_list(al):
 +	return [parse_artist(a) for a in al]
 +
 +def parse_artist(artist):
 +	result = {}
 +	attribs = ["id", "type"]
 +	elements = ["name", "sort-name", "country", "user-rating"]
 +	inner_els = {"life-span": parse_artist_lifespan,
 +	             "recording-list": parse_recording_list,
 +	             "release-list": parse_release_list,
 +	             "release-group-list": parse_release_group_list,
 +	             "work-list": parse_work_list,
 +	             "tag-list": parse_tag_list,
 +	             "user-tag-list": parse_tag_list,
 +	             "rating": parse_rating,
 +	             "alias-list": parse_alias_list}
 +
 +	result.update(parse_attributes(attribs, artist))
 +	result.update(parse_elements(elements, artist))
 +	result.update(parse_inner(inner_els, artist))
 +
 +	return result
 +
 +def parse_label_list(ll):
 +	return [parse_label(l) for l in ll]
 +
 +def parse_label(label):
 +	result = {}
 +	attribs = ["id", "type"]
 +	elements = ["name", "sort-name", "country", "label-code", "user-rating"]
 +	inner_els = {"life-span": parse_artist_lifespan,
 +	             "release-list": parse_release_list,
 +	             "tag-list": parse_tag_list,
 +	             "user-tag-list": parse_tag_list,
 +	             "rating": parse_rating,
 +	             "alias-list": parse_alias_list}
 +
 +	result.update(parse_attributes(attribs, label))
 +	result.update(parse_elements(elements, label))
 +	result.update(parse_inner(inner_els, label))
 +
 +	return result
 +
 +def parse_attribute_list(al):
 +    return [parse_attribute_tag(a) for a in al]
 +
 +def parse_attribute_tag(attribute):
 +    return attribute.text
 +
 +def parse_relation_list(rl):
 +    attribs = ["target-type"]
 +    ttype = parse_attributes(attribs, rl)
 +    key = "%s-relation-list" % ttype["target-type"]
 +    return (key, [parse_relation(r) for r in rl])
 +
 +def parse_relation(relation):
 +    result = {}
 +    attribs = ["type"]
 +    elements = ["target", "direction"]
 +    inner_els = {"artist": parse_artist,
 +                 "label": parse_label,
 +                 "recording": parse_recording,
 +                 "release": parse_release,
 +                 "release-group": parse_release_group,
 +                 "attribute-list": parse_attribute_list,
 +                 "work": parse_work
 +                }
 +    result.update(parse_attributes(attribs, relation))
 +    result.update(parse_elements(elements, relation))
 +    result.update(parse_inner(inner_els, relation))
 +
 +    return result
 +
 +def parse_release(release):
 +	result = {}
 +	attribs = ["id"]
 +	elements = ["title", "status", "disambiguation", "quality", "country", "barcode", "date", "packaging", "asin"]
 +	inner_els = {"text-representation": parse_text_representation,
 +	             "artist-credit": parse_artist_credit,
 +	             "label-info-list": parse_label_info_list,
 +	             "medium-list": parse_medium_list,
 +	             "release-group": parse_release_group,
 +	             "relation-list": parse_relation_list}
 +
 +	result.update(parse_attributes(attribs, release))
 +	result.update(parse_elements(elements, release))
 +	result.update(parse_inner(inner_els, release))
 +	if "artist-credit" in result:
 +		result["artist-credit-phrase"] = make_artist_credit(result["artist-credit"])
 +
 +	return result
 +
 +def parse_medium_list(ml):
 +	return [parse_medium(m) for m in ml]
 +
 +def parse_medium(medium):
 +	result = {}
 +	elements = ["position", "format", "title"]
 +	inner_els = {"disc-list": parse_disc_list,
 +	             "track-list": parse_track_list}
 +
 +	result.update(parse_elements(elements, medium))
 +	result.update(parse_inner(inner_els, medium))
 +	return result
 +
 +def parse_disc_list(dl):
 +	return [parse_disc(d) for d in dl]
 +
 +def parse_text_representation(textr):
 +	return parse_elements(["language", "script"], textr)
 +
 +def parse_release_group(rg):
 +	result = {}
 +	attribs = ["id", "type"]
 +	elements = ["title", "user-rating", "first-release-date"]
 +	inner_els = {"artist-credit": parse_artist_credit,
 +	             "release-list": parse_release_list,
 +	             "tag-list": parse_tag_list,
 +	             "user-tag-list": parse_tag_list,
 +	             "rating": parse_rating}
 +
 +	result.update(parse_attributes(attribs, rg))
 +	result.update(parse_elements(elements, rg))
 +	result.update(parse_inner(inner_els, rg))
 +	if "artist-credit" in result:
 +		result["artist-credit-phrase"] = make_artist_credit(result["artist-credit"])
 +
 +	return result
 +
 +def parse_recording(recording):
 +	result = {}
 +	attribs = ["id"]
 +	elements = ["title", "length", "user-rating"]
 +	inner_els = {"artist-credit": parse_artist_credit,
 +	             "release-list": parse_release_list,
 +	             "tag-list": parse_tag_list,
 +	             "user-tag-list": parse_tag_list,
 +	             "rating": parse_rating,
 +	             "puid-list": parse_external_id_list,
 +	             "isrc-list": parse_external_id_list,
 +	             "echoprint-list": parse_external_id_list}
 +
 +	result.update(parse_attributes(attribs, recording))
 +	result.update(parse_elements(elements, recording))
 +	result.update(parse_inner(inner_els, recording))
 +	if "artist-credit" in result:
 +		result["artist-credit-phrase"] = make_artist_credit(result["artist-credit"])
 +
 +	return result
 +
 +def parse_external_id_list(pl):
 +	return [parse_attributes(["id"], p)["id"] for p in pl]
 +
 +def parse_work_list(wl):
 +	result = []
 +	for w in wl:
 +		result.append(parse_work(w))
 +	return result
 +
 +def parse_work(work):
 +	result = {}
 +	attribs = ["id"]
 +	elements = ["title", "user-rating"]
 +	inner_els = {"tag-list": parse_tag_list,
 +	             "user-tag-list": parse_tag_list,
 +	             "rating": parse_rating,
 +	             "alias-list": parse_alias_list}
 +
 +	result.update(parse_attributes(attribs, work))
 +	result.update(parse_elements(elements, work))
 +	result.update(parse_inner(inner_els, work))
 +
 +	return result
 +
 +def parse_disc(disc):
 +	result = {}
 +	attribs = ["id"]
 +	elements = ["sectors"]
 +	inner_els = {"release-list": parse_release_list}
 +
 +	result.update(parse_attributes(attribs, disc))
 +	result.update(parse_elements(elements, disc))
 +	result.update(parse_inner(inner_els, disc))
 +
 +	return result
 +
 +def parse_release_list(rl):
 +	result = []
 +	for r in rl:
 +		result.append(parse_release(r))
 +	return result
 +
 +def parse_release_group_list(rgl):
 +	result = []
 +	for rg in rgl:
 +		result.append(parse_release_group(rg))
 +	return result
 +
 +def parse_puid(puid):
 +	result = {}
 +	attribs = ["id"]
 +	inner_els = {"recording-list": parse_recording_list}
 +
 +	result.update(parse_attributes(attribs, puid))
 +	result.update(parse_inner(inner_els, puid))
 +
 +	return result
 +
 +def parse_recording_list(recs):
 +	result = []
 +	for r in recs:
 +		result.append(parse_recording(r))
 +	return result
 +
 +def parse_artist_credit(ac):
 +	result = []
 +	for namecredit in ac:
 +		result.append(parse_name_credit(namecredit))
 +		join = parse_attributes(["joinphrase"], namecredit)
 +		if "joinphrase" in join:
 +			result.append(join["joinphrase"])
 +	return result
 +
 +def parse_name_credit(nc):
 +	result = {}
 +	elements = ["name"]
 +	inner_els = {"artist": parse_artist}
 +
 +	result.update(parse_elements(elements, nc))
 +	result.update(parse_inner(inner_els, nc))
 +
 +	return result
 +
 +def parse_label_info_list(lil):
 +	result = []
 +
 +	for li in lil:
 +		result.append(parse_label_info(li))
 +	return result
 +
 +def parse_label_info(li):
 +	result = {}
 +	elements = ["catalog-number"]
 +	inner_els = {"label": parse_label}
 +
 +	result.update(parse_elements(elements, li))
 +	result.update(parse_inner(inner_els, li))
 +	return result
 +
 +def parse_track_list(tl):
 +	result = []
 +	for t in tl:
 +		result.append(parse_track(t))
 +	return result
 +
 +def parse_track(track):
 +	result = {}
- 	elements = ["position"]
++	elements = ["position", "title"]
 +	inner_els = {"recording": parse_recording}
 +
 +	result.update(parse_elements(elements, track))
 +	result.update(parse_inner(inner_els, track))
 +	return result
 +
 +def parse_tag_list(tl):
 +	result = []
 +	for t in tl:
 +		result.append(parse_tag(t))
 +	return result
 +
 +def parse_tag(tag):
 +	result = {}
 +	attribs = ["count"]
 +	elements = ["name"]
 +
 +	result.update(parse_attributes(attribs, tag))
 +	result.update(parse_elements(elements, tag))
 +
 +	return result
 +
 +def parse_rating(rating):
 +	result = {}
 +	attribs = ["votes-count"]
 +
 +	result.update(parse_attributes(attribs, rating))
 +	result["rating"] = rating.text
 +
 +	return result
 +
 +def parse_alias_list(al):
 +	result = []
 +	for a in al:
 +		result.append(a.text)
 +	return result
 +
 +###
 +def make_barcode_request(barcodes):
 +	NS = "http://musicbrainz.org/ns/mmd-2.0#"
 +	root = ET.Element("{%s}metadata" % NS)
 +	rel_list = ET.SubElement(root, "{%s}release-list" % NS)
 +	for release, barcode in barcodes.items():
 +		rel_xml = ET.SubElement(rel_list, "{%s}release" % NS)
 +		bar_xml = ET.SubElement(rel_xml, "{%s}barcode" % NS)
 +		rel_xml.set("{%s}id" % NS, release)
 +		bar_xml.text = barcode
 +
 +	return ET.tostring(root, "utf-8")
 +
 +def make_puid_request(puids):
 +	NS = "http://musicbrainz.org/ns/mmd-2.0#"
 +	root = ET.Element("{%s}metadata" % NS)
 +	rec_list = ET.SubElement(root, "{%s}recording-list" % NS)
 +	for recording, puid_list in puids.items():
 +		rec_xml = ET.SubElement(rec_list, "{%s}recording" % NS)
 +		rec_xml.set("id", recording)
 +		p_list_xml = ET.SubElement(rec_xml, "{%s}puid-list" % NS)
 +		l = puid_list if isinstance(puid_list, list) else [puid_list]
 +		for p in l:
 +			p_xml = ET.SubElement(p_list_xml, "{%s}puid" % NS)
 +			p_xml.set("id", p)
 +
 +	return ET.tostring(root, "utf-8")
 +
 +def make_echoprint_request(echoprints):
 +	NS = "http://musicbrainz.org/ns/mmd-2.0#"
 +	root = ET.Element("{%s}metadata" % NS)
 +	rec_list = ET.SubElement(root, "{%s}recording-list" % NS)
 +	for recording, echoprint_list in echoprints.items():
 +		rec_xml = ET.SubElement(rec_list, "{%s}recording" % NS)
 +		rec_xml.set("id", recording)
 +		e_list_xml = ET.SubElement(rec_xml, "{%s}echoprint-list" % NS)
 +		l = echoprint_list if isinstance(echoprint_list, list) else [echoprint_list]
 +		for e in l:
 +			e_xml = ET.SubElement(e_list_xml, "{%s}echoprint" % NS)
 +			e_xml.set("id", e)
 +
 +	return ET.tostring(root, "utf-8")
 +
 +def make_tag_request(artist_tags, recording_tags):
 +	NS = "http://musicbrainz.org/ns/mmd-2.0#"
 +	root = ET.Element("{%s}metadata" % NS)
 +	rec_list = ET.SubElement(root, "{%s}recording-list" % NS)
 +	for rec, tags in recording_tags.items():
 +		rec_xml = ET.SubElement(rec_list, "{%s}recording" % NS)
 +		rec_xml.set("{%s}id" % NS, rec)
 +		taglist = ET.SubElement(rec_xml, "{%s}user-tag-list" % NS)
 +		for t in tags:
 +			usertag_xml = ET.SubElement(taglist, "{%s}user-tag" % NS)
 +			name_xml = ET.SubElement(usertag_xml, "{%s}name" % NS)
 +			name_xml.text = t
 +	art_list = ET.SubElement(root, "{%s}artist-list" % NS)
 +	for art, tags in artist_tags.items():
 +		art_xml = ET.SubElement(art_list, "{%s}artist" % NS)
 +		art_xml.set("{%s}id" % NS, art)
 +		taglist = ET.SubElement(art_xml, "{%s}user-tag-list" % NS)
 +		for t in tags:
 +			usertag_xml = ET.SubElement(taglist, "{%s}user-tag" % NS)
 +			name_xml = ET.SubElement(usertag_xml, "{%s}name" % NS)
 +			name_xml.text = t
 +
 +	return ET.tostring(root, "utf-8")
 +
 +def make_rating_request(artist_ratings, recording_ratings):
 +	NS = "http://musicbrainz.org/ns/mmd-2.0#"
 +	root = ET.Element("{%s}metadata" % NS)
 +	rec_list = ET.SubElement(root, "{%s}recording-list" % NS)
 +	for rec, rating in recording_ratings.items():
 +		rec_xml = ET.SubElement(rec_list, "{%s}recording" % NS)
 +		rec_xml.set("{%s}id" % NS, rec)
 +		rating_xml = ET.SubElement(rec_xml, "{%s}user-rating" % NS)
 +		if isinstance(rating, int):
 +			rating = "%d" % rating
 +		rating_xml.text = rating
 +	art_list = ET.SubElement(root, "{%s}artist-list" % NS)
 +	for art, rating in artist_ratings.items():
 +		art_xml = ET.SubElement(art_list, "{%s}artist" % NS)
 +		art_xml.set("{%s}id" % NS, art)
- 		rating_xml = ET.SubElement(rec_xml, "{%s}user-rating" % NS)
++		rating_xml = ET.SubElement(art_xml, "{%s}user-rating" % NS)
 +		if isinstance(rating, int):
 +			rating = "%d" % rating
 +		rating_xml.text = rating
 +
 +	return ET.tostring(root, "utf-8")
++
++def make_isrc_request(recordings_isrcs):
++	NS = "http://musicbrainz.org/ns/mmd-2.0#"
++	root = ET.Element("{%s}metadata" % NS)
++	rec_list = ET.SubElement(root, "{%s}recording-list" % NS)
++	for rec, isrcs in recordings_isrcs.items():
++		if len(isrcs) > 0:
++			rec_xml = ET.SubElement(rec_list, "{%s}recording" % NS)
++			rec_xml.set("{%s}id" % NS, rec)
++			isrc_list_xml = ET.SubElement(rec_xml, "{%s}isrc-list" % NS)
++			isrc_list_xml.set("{%s}count" % NS, str(len(isrcs)))
++			for isrc in isrcs:
++				isrc_xml = ET.SubElement(isrc_list_xml, "{%s}isrc" % NS)
++				isrc_xml.set("{%s}id" % NS, isrc)
++	return ET.tostring(root, "utf-8")
diff --combined morituri/extern/musicbrainzngs/musicbrainz.py
index 0769067,0000000..fb21b30
mode 100644,000000..100644
--- a/morituri/extern/musicbrainzngs/musicbrainz.py
+++ b/morituri/extern/musicbrainzngs/musicbrainz.py
@@@ -1,738 -1,0 +1,767 @@@
++# This file is part of the musicbrainzngs library
++# Copyright (C) Alastair Porter, Adrian Sampson, and others
++# This file is distributed under a BSD-2-Clause type license.
++# See the COPYING file for more information.
++
 +import urlparse
 +import urllib2
 +import urllib
 +import mbxml
 +import re
 +import threading
 +import time
 +import logging
 +import httplib
++import socket
 +import xml.etree.ElementTree as etree
++from xml.parsers import expat
 +
- _useragent = "pythonmusicbrainzngs-0.1"
- _log = logging.getLogger("python-musicbrainz-ngs")
++_version = "0.3dev"
++_log = logging.getLogger("musicbrainzngs")
 +
 +
 +# Constants for validation.
 +
 +VALID_INCLUDES = {
 +	'artist': [
 +		"recordings", "releases", "release-groups", "works", # Subqueries
 +		"various-artists", "discids", "media",
 +		"aliases", "tags", "user-tags", "ratings", "user-ratings", # misc
 +		"artist-rels", "label-rels", "recording-rels", "release-rels",
 +		"release-group-rels", "url-rels", "work-rels"
- 	], 
++	],
 +	'label': [
 +		"releases", # Subqueries
 +	    "discids", "media",
 +	    "aliases", "tags", "user-tags", "ratings", "user-ratings", # misc
 +		"artist-rels", "label-rels", "recording-rels", "release-rels",
 +		"release-group-rels", "url-rels", "work-rels"
 +	],
 +	'recording': [
 +		"artists", "releases", # Subqueries
 +	    "discids", "media", "artist-credits",
 +	    "tags", "user-tags", "ratings", "user-ratings", # misc
 +		"artist-rels", "label-rels", "recording-rels", "release-rels",
 +		"release-group-rels", "url-rels", "work-rels"
 +	],
 +	'release': [
 +		"artists", "labels", "recordings", "release-groups", "media",
 +		"artist-credits", "discids", "puids", "echoprints", "isrcs",
 +		"artist-rels", "label-rels", "recording-rels", "release-rels",
 +		"release-group-rels", "url-rels", "work-rels", "recording-level-rels",
 +		"work-level-rels"
 +	],
 +	'release-group': [
 +		"artists", "releases", "discids", "media",
 +		"artist-credits", "tags", "user-tags", "ratings", "user-ratings", # misc
 +		"artist-rels", "label-rels", "recording-rels", "release-rels",
 +		"release-group-rels", "url-rels", "work-rels"
 +	],
 +	'work': [
 +		"artists", # Subqueries
 +	    "aliases", "tags", "user-tags", "ratings", "user-ratings", # misc
 +		"artist-rels", "label-rels", "recording-rels", "release-rels",
 +		"release-group-rels", "url-rels", "work-rels"
 +	],
 +	'discid': [
- 		"artists", "labels", "recordings", "release-groups", "puids",
- 		"echoprints", "isrcs"
++		"artists", "labels", "recordings", "release-groups", "media",
++		"artist-credits", "discids", "puids", "echoprints", "isrcs",
++		"artist-rels", "label-rels", "recording-rels", "release-rels",
++		"release-group-rels", "url-rels", "work-rels", "recording-level-rels",
++		"work-level-rels"
 +	],
 +	'echoprint': ["artists", "releases"],
 +	'puid': ["artists", "releases", "puids", "echoprints", "isrcs"],
 +	'isrc': ["artists", "releases", "puids", "echoprints", "isrcs"],
 +	'iswc': ["artists"],
 +}
 +VALID_RELEASE_TYPES = [
 +	"nat", "album", "single", "ep", "compilation", "soundtrack", "spokenword",
 +	"interview", "audiobook", "live", "remix", "other"
 +]
 +VALID_RELEASE_STATUSES = ["official", "promotion", "bootleg", "pseudo-release"]
 +VALID_SEARCH_FIELDS = {
 +	'artist': [
 +		'arid', 'artist', 'sortname', 'type', 'begin', 'end', 'comment',
 +		'alias', 'country', 'gender', 'tag'
 +	],
 +	'release-group': [
 +		'rgid', 'releasegroup', 'reid', 'release', 'arid', 'artist',
 +		'artistname', 'creditname', 'type', 'tag'
 +	],
 +	'release': [
 +		'reid', 'release', 'arid', 'artist', 'artistname', 'creditname',
 +		'type', 'status', 'tracks', 'tracksmedium', 'discids',
 +		'discidsmedium', 'mediums', 'date', 'asin', 'lang', 'script',
 +		'country', 'date', 'label', 'catno', 'barcode', 'puid'
 +	],
 +	'recording': [
 +		'rid', 'recording', 'isrc', 'arid', 'artist', 'artistname',
 +		'creditname', 'reid', 'release', 'type', 'status', 'tracks',
 +		'tracksrelease', 'dur', 'qdur', 'tnum', 'position', 'tag'
 +	],
 +	'label': [
 +		'laid', 'label', 'sortname', 'type', 'code', 'country', 'begin',
 +		'end', 'comment', 'alias', 'tag'
 +	],
 +	'work': [
 +		'wid', 'work', 'iswc', 'type', 'arid', 'artist', 'alias', 'tag'
 +	],
 +}
 +
 +
 +# Exceptions.
 +
 +class MusicBrainzError(Exception):
 +	"""Base class for all exceptions related to MusicBrainz."""
 +	pass
 +
 +class UsageError(MusicBrainzError):
 +	"""Error related to misuse of the module API."""
 +	pass
 +
 +class InvalidSearchFieldError(UsageError):
 +	pass
 +
 +class InvalidIncludeError(UsageError):
 +	def __init__(self, msg='Invalid Includes', reason=None):
 +		super(InvalidIncludeError, self).__init__(self)
 +		self.msg = msg
 +		self.reason = reason
 +
 +	def __str__(self):
 +		return self.msg
 +
 +class InvalidFilterError(UsageError):
 +	def __init__(self, msg='Invalid Includes', reason=None):
 +		super(InvalidFilterError, self).__init__(self)
 +		self.msg = msg
 +		self.reason = reason
 +
 +	def __str__(self):
 +		return self.msg
 +
 +class WebServiceError(MusicBrainzError):
 +	"""Error related to MusicBrainz API requests."""
 +	def __init__(self, message=None, cause=None):
 +		"""Pass ``cause`` if this exception was caused by another
 +		exception.
 +		"""
 +		self.message = message
 +		self.cause = cause
- 	
++
 +	def __str__(self):
 +		if self.message:
 +			msg = "%s, " % self.message
 +		else:
 +			msg = ""
 +		msg += "caused by: %s" % str(self.cause)
 +		return msg
 +
 +class NetworkError(WebServiceError):
 +	"""Problem communicating with the MB server."""
 +	pass
 +
 +class ResponseError(WebServiceError):
 +	"""Bad response sent by the MB server."""
 +	pass
 +
 +
 +# Helpers for validating and formatting allowed sets.
 +
 +def _check_includes_impl(includes, valid_includes):
 +    for i in includes:
 +        if i not in valid_includes:
 +            raise InvalidIncludeError("Bad includes", "%s is not a valid include" % i)
 +def _check_includes(entity, inc):
 +    _check_includes_impl(inc, VALID_INCLUDES[entity])
 +
 +def _check_filter(values, valid):
 +	for v in values:
 +		if v not in valid:
 +			raise InvalidFilterError(v)
 +
- def _check_filter_and_make_params(includes, release_status=[], release_type=[]):
++def _check_filter_and_make_params(entity, includes, release_status=[], release_type=[]):
 +	"""Check that the status or type values are valid. Then, check that
 +	the filters can be used with the given includes. Return a params
 +	dict that can be passed to _do_mb_query.
 +	"""
 +	if isinstance(release_status, basestring):
 +		release_status = [release_status]
 +	if isinstance(release_type, basestring):
 +		release_type = [release_type]
 +	_check_filter(release_status, VALID_RELEASE_STATUSES)
 +	_check_filter(release_type, VALID_RELEASE_TYPES)
 +
 +	if release_status and "releases" not in includes:
 +		raise InvalidFilterError("Can't have a status with no release include")
 +	if release_type and ("release-groups" not in includes and
- 					     "releases" not in includes):
++					     "releases" not in includes and
++					      entity != "release-group"):
 +		raise InvalidFilterError("Can't have a release type with no "
 +								 "release-group include")
 +
 +	# Build parameters.
 +	params = {}
 +	if len(release_status):
 +		params["status"] = "|".join(release_status)
 +	if len(release_type):
 +		params["type"] = "|".join(release_type)
 +	return params
 +
 +
 +# Global authentication and endpoint details.
 +
 +user = password = ""
 +hostname = "musicbrainz.org"
 +_client = ""
++_useragent = ""
 +
 +def auth(u, p):
 +	"""Set the username and password to be used in subsequent queries to
 +	the MusicBrainz XML API that require authentication.
 +	"""
 +	global user, password
 +	user = u
 +	password = p
 +
- def set_client(c):
- 	""" Set the client to be used in requests. This must be set before any
- 	data submissions are made.
- 	"""
- 	global _client
- 	_client = c
- 
++def set_useragent(app, version, contact=None):
++    """ Set the User-Agent to be used for requests to the MusicBrainz webservice.
++    This should be set before requests are made."""
++    global _useragent, _client
++    if contact is not None:
++        _useragent = "%s/%s python-musicbrainz-ngs/%s ( %s )" % (app, version, _version, contact)
++    else:
++        _useragent = "%s/%s python-musicbrainz-ngs/%s" % (app, version, _version)
++    _client = "%s-%s" % (app, version)
++    _log.debug("set user-agent to %s" % _useragent)
++
++def set_hostname(new_hostname):
++	global hostname
++	hostname = new_hostname
 +
 +# Rate limiting.
 +
 +limit_interval = 1.0
 +limit_requests = 1
 +
 +def set_rate_limit(new_interval=1.0, new_requests=1):
 +	"""Sets the rate limiting behavior of the module. Must be invoked
 +	before the first Web service call.  Specify the number of requests
 +	(`new_requests`) that may be made per given interval
 +	(`new_interval`).
 +	"""
 +	global limit_interval
 +	global limit_requests
 +	limit_interval = new_interval
 +	limit_requests = new_requests
 +
 +class _rate_limit(object):
 +	"""A decorator that limits the rate at which the function may be
 +	called. The rate is controlled by the `limit_interval` and
 +	`limit_requests` global variables.  The limiting is thread-safe;
 +	only one thread may be in the function at a time (acts like a
 +	monitor in this sense). The globals must be set before the first
 +	call to the limited function.
 +	"""
 +	def __init__(self, fun):
 +		self.fun = fun
 +		self.last_call = 0.0
 +		self.lock = threading.Lock()
 +		self.remaining_requests = None # Set on first invocation.
 +
 +	def _update_remaining(self):
 +		"""Update remaining requests based on the elapsed time since
 +		they were last calculated.
 +		"""
 +		# On first invocation, we have the maximum number of requests
 +		# available.
 +		if self.remaining_requests is None:
 +			self.remaining_requests = float(limit_requests)
 +
 +		else:
 +			since_last_call = time.time() - self.last_call
 +			self.remaining_requests += since_last_call * \
 +									   (limit_requests / limit_interval)
 +			self.remaining_requests = min(self.remaining_requests,
 +										  float(limit_requests))
 +
 +		self.last_call = time.time()
 +
 +	def __call__(self, *args, **kwargs):
 +		with self.lock:
 +			self._update_remaining()
 +
 +			# Delay if necessary.
 +			while self.remaining_requests < 0.999:
 +				time.sleep((1.0 - self.remaining_requests) *
 +						   (limit_requests / limit_interval))
 +				self._update_remaining()
 +
 +			# Call the original function, "paying" for this call.
 +			self.remaining_requests -= 1.0
 +			return self.fun(*args, **kwargs)
 +
 +
 +# Generic support for making HTTP requests.
 +
 +# From pymb2
 +class _RedirectPasswordMgr(urllib2.HTTPPasswordMgr):
 +	def __init__(self):
 +		self._realms = { }
 +
 +	def find_user_password(self, realm, uri):
 +		# ignoring the uri parameter intentionally
 +		try:
 +			return self._realms[realm]
 +		except KeyError:
 +			return (None, None)
 +
 +	def add_password(self, realm, uri, username, password):
 +		# ignoring the uri parameter intentionally
 +		self._realms[realm] = (username, password)
 +
 +class _DigestAuthHandler(urllib2.HTTPDigestAuthHandler):
 +	def get_authorization (self, req, chal):
 +		qop = chal.get ('qop', None)
 +		if qop and ',' in qop and 'auth' in qop.split (','):
 +			chal['qop'] = 'auth'
 +
 +		return urllib2.HTTPDigestAuthHandler.get_authorization (self, req, chal)
 +
 +class _MusicbrainzHttpRequest(urllib2.Request):
 +	""" A custom request handler that allows DELETE and PUT"""
 +	def __init__(self, method, url, data=None):
 +		urllib2.Request.__init__(self, url, data)
 +		allowed_m = ["GET", "POST", "DELETE", "PUT"]
 +		if method not in allowed_m:
 +			raise ValueError("invalid method: %s" % method)
 +		self.method = method
 +
 +	def get_method(self):
 +		return self.method
 +
 +
 +# Core (internal) functions for calling the MB API.
 +
 +def _safe_open(opener, req, body=None, max_retries=8, retry_delay_delta=2.0):
 +	"""Open an HTTP request with a given URL opener and (optionally) a
 +	request body. Transient errors lead to retries.  Permanent errors
 +	and repeated errors are translated into a small set of handleable
 +	exceptions. Returns a file-like object.
 +	"""
 +	last_exc = None
 +	for retry_num in range(max_retries):
 +		if retry_num: # Not the first try: delay an increasing amount.
 +			_log.debug("retrying after delay (#%i)" % retry_num)
 +			time.sleep(retry_num * retry_delay_delta)
 +
 +		try:
 +			if body:
 +				f = opener.open(req, body)
 +			else:
 +				f = opener.open(req)
 +
 +		except urllib2.HTTPError, exc:
 +			if exc.code in (400, 404):
 +				# Bad request, not found, etc.
 +				raise ResponseError(cause=exc)
 +			elif exc.code in (503, 502, 500):
 +				# Rate limiting, internal overloading...
 +				_log.debug("HTTP error %i" % exc.code)
 +			else:
 +				# Other, unknown error. Should handle more cases, but
 +				# retrying for now.
 +				_log.debug("unknown HTTP error %i" % exc.code)
 +			last_exc = exc
 +		except httplib.BadStatusLine, exc:
 +			_log.debug("bad status line")
 +			last_exc = exc
 +		except httplib.HTTPException, exc:
 +			_log.debug("miscellaneous HTTP exception: %s" % str(exc))
 +			last_exc = exc
 +		except urllib2.URLError, exc:
++			if isinstance(exc.reason, socket.error):
++				code = exc.reason.errno
++				if code == 104: # "Connection reset by peer."
++					continue
 +			raise NetworkError(cause=exc)
 +		except IOError, exc:
 +			raise NetworkError(cause=exc)
 +		else:
 +			# No exception! Yay!
 +			return f
- 	
++
 +	# Out of retries!
 +	raise NetworkError("retried %i times" % max_retries, last_exc)
 +
++# Get the XML parsing exceptions to catch. The behavior chnaged with Python 2.7
++# and ElementTree 1.3.
++if hasattr(etree, 'ParseError'):
++	ETREE_EXCEPTIONS = (etree.ParseError, expat.ExpatError)
++else:
++	ETREE_EXCEPTIONS = (expat.ExpatError)
++
 + at _rate_limit
 +def _mb_request(path, method='GET', auth_required=False, client_required=False,
 +				args=None, data=None, body=None):
 +	"""Makes a request for the specified `path` (endpoint) on /ws/2 on
 +	the globally-specified hostname. Parses the responses and returns
 +	the resulting object.  `auth_required` and `client_required` control
 +	whether exceptions should be raised if the client and
 +	username/password are left unspecified, respectively.
 +	"""
- 	args = dict(args) or {}
++	if args is None:
++		args = {}
++	else:
++		args = dict(args) or {}
++
++	if _useragent == "":
++		raise UsageError("set a proper user-agent with "
++						 "musicbrainz.set_useragent(\"application name\", \"application version\", \"contact info (preferably URL or email for your application)\")")
 +
- 	# Add client if required.
- 	if client_required and _client == "":
- 		raise UsageError("set a client name with "
- 						 "musicbrainz.set_client(\"client-version\")")
- 	elif client_required:
++	if client_required:
 +		args["client"] = _client
 +
++	# Encode Unicode arguments using UTF-8.
++	for key, value in args.items():
++		if isinstance(value, unicode):
++			args[key] = value.encode('utf8')
++
 +	# Construct the full URL for the request, including hostname and
 +	# query string.
 +	url = urlparse.urlunparse((
 +		'http',
 +		hostname,
 +		'/ws/2/%s' % path,
 +		'',
 +		urllib.urlencode(args),
 +		''
 +	))
 +	_log.debug("%s request for %s" % (method, url))
- 	
++
 +	# Set up HTTP request handler and URL opener.
 +	httpHandler = urllib2.HTTPHandler(debuglevel=0)
 +	handlers = [httpHandler]
- 	opener = urllib2.build_opener(*handlers)
 +
 +	# Add credentials if required.
 +	if auth_required:
++		_log.debug("Auth required for %s" % url)
 +		if not user:
 +			raise UsageError("authorization required; "
 +							 "use musicbrainz.auth(u, p) first")
 +		passwordMgr = _RedirectPasswordMgr()
 +		authHandler = _DigestAuthHandler(passwordMgr)
 +		authHandler.add_password("musicbrainz.org", (), user, password)
 +		handlers.append(authHandler)
- 	
++
++	opener = urllib2.build_opener(*handlers)
++
 +	# Make request.
 +	req = _MusicbrainzHttpRequest(method, url, data)
 +	req.add_header('User-Agent', _useragent)
++	_log.debug("requesting with UA %s" % _useragent)
 +	if body:
 +		req.add_header('Content-Type', 'application/xml; charset=UTF-8')
 +	f = _safe_open(opener, req, body)
 +
 +	# Parse the response.
 +	try:
 +		return mbxml.parse_message(f)
 +	except etree.ParseError, exc:
 +		raise ResponseError(cause=exc)
 +	except UnicodeError, exc:
 +		raise ResponseError(cause=exc)
 +
 +def _is_auth_required(entity, includes):
 +	""" Some calls require authentication. This returns
 +	True if a call does, False otherwise
 +	"""
 +	if "user-tags" in includes or "user-ratings" in includes:
 +		return True
 +	elif entity.startswith("collection"):
 +		return True
 +	else:
 +		return False
 +
 +def _do_mb_query(entity, id, includes=[], params={}):
 +	"""Make a single GET call to the MusicBrainz XML API. `entity` is a
 +	string indicated the type of object to be retrieved. The id may be
 +	empty, in which case the query is a search. `includes` is a list
 +	of strings that must be valid includes for the entity type. `params`
 +	is a dictionary of additional parameters for the API call. The
 +	response is parsed and returned.
 +	"""
 +	# Build arguments.
 +	_check_includes(entity, includes)
 +	auth_required = _is_auth_required(entity, includes)
 +	args = dict(params)
 +	if len(includes) > 0:
 +		inc = " ".join(includes)
 +		args["inc"] = inc
 +
 +	# Build the endpoint components.
 +	path = '%s/%s' % (entity, id)
 +	return _mb_request(path, 'GET', auth_required, args=args)
 +
 +def _do_mb_search(entity, query='', fields={}, limit=None, offset=None):
 +	"""Perform a full-text search on the MusicBrainz search server.
 +	`query` is a free-form query string and `fields` is a dictionary
 +	of key/value query parameters. They keys in `fields` must be valid
 +	for the given entity type.
 +	"""
 +	# Encode the query terms as a Lucene query string.
 +	query_parts = [query.replace('\x00', '').strip()]
 +	for key, value in fields.iteritems():
 +		# Ensure this is a valid search field.
 +		if key not in VALID_SEARCH_FIELDS[entity]:
 +			raise InvalidSearchFieldError(
 +				'%s is not a valid search field for %s' % (key, entity)
 +			)
 +
 +		# Escape Lucene's special characters.
 +		value = re.sub(r'([+\-&|!(){}\[\]\^"~*?:\\])', r'\\\1', value)
 +		value = value.replace('\x00', '').strip()
 +		if value:
 +			query_parts.append(u'%s:(%s)' % (key, value))
 +	full_query = u' '.join(query_parts).strip()
 +	if not full_query:
 +		raise ValueError('at least one query term is required')
 +
 +	# Additional parameters to the search.
 +	params = {'query': full_query}
 +	if limit:
 +		params['limit'] = str(limit)
 +	if offset:
 +		params['offset'] = str(offset)
 +
 +	return _do_mb_query(entity, '', [], params)
 +
 +def _do_mb_delete(path):
 +	"""Send a DELETE request for the specified object.
 +	"""
 +	return _mb_request(path, 'DELETE', True, True)
 +
 +def _do_mb_put(path):
 +	"""Send a PUT request for the specified object.
 +	"""
 +	return _mb_request(path, 'PUT', True, True)
 +
 +def _do_mb_post(path, body):
 +	"""Perform a single POST call for an endpoint with a specified
 +	request body.
 +	"""
- 	return _mb_request(path, 'PUT', True, True, body=body)
++	return _mb_request(path, 'POST', True, True, body=body)
 +
 +
 +# The main interface!
 +
 +# Single entity by ID
 +def get_artist_by_id(id, includes=[], release_status=[], release_type=[]):
 +	params = _check_filter_and_make_params(includes, release_status, release_type)
 +	return _do_mb_query("artist", id, includes, params)
 +
 +def get_label_by_id(id, includes=[], release_status=[], release_type=[]):
 +	params = _check_filter_and_make_params(includes, release_status, release_type)
 +	return _do_mb_query("label", id, includes, params)
 +
 +def get_recording_by_id(id, includes=[], release_status=[], release_type=[]):
 +	params = _check_filter_and_make_params(includes, release_status, release_type)
 +	return _do_mb_query("recording", id, includes, params)
 +
 +def get_release_by_id(id, includes=[], release_status=[], release_type=[]):
 +	params = _check_filter_and_make_params(includes, release_status, release_type)
 +	return _do_mb_query("release", id, includes, params)
 +
 +def get_release_group_by_id(id, includes=[], release_status=[], release_type=[]):
 +	params = _check_filter_and_make_params(includes, release_status, release_type)
 +	return _do_mb_query("release-group", id, includes, params)
 +
 +def get_work_by_id(id, includes=[]):
 +	return _do_mb_query("work", id, includes)
 +
 +
 +# Searching
 +
- def artist_search(query='', limit=None, offset=None, **fields):
++def search_artists(query='', limit=None, offset=None, **fields):
 +	"""Search for artists by a free-form `query` string and/or any of
 +	the following keyword arguments specifying field queries:
 +	arid, artist, sortname, type, begin, end, comment, alias, country,
 +	gender, tag
 +	"""
 +	return _do_mb_search('artist', query, fields, limit, offset)
 +
- def label_search(query='', limit=None, offset=None, **fields):
++def search_labels(query='', limit=None, offset=None, **fields):
 +	"""Search for labels by a free-form `query` string and/or any of
 +	the following keyword arguments specifying field queries:
 +	laid, label, sortname, type, code, country, begin, end, comment,
 +	alias, tag
 +	"""
 +	return _do_mb_search('label', query, fields, limit, offset)
 +
- def recording_search(query='', limit=None, offset=None, **fields):
++def search_recordings(query='', limit=None, offset=None, **fields):
 +	"""Search for recordings by a free-form `query` string and/or any of
 +	the following keyword arguments specifying field queries:
 +	rid, recording, isrc, arid, artist, artistname, creditname, reid,
 +	release, type, status, tracks, tracksrelease, dur, qdur, tnum,
 +	position, tag
 +	"""
 +	return _do_mb_search('recording', query, fields, limit, offset)
 +
- def release_search(query='', limit=None, offset=None, **fields):
++def search_releases(query='', limit=None, offset=None, **fields):
 +	"""Search for releases by a free-form `query` string and/or any of
 +	the following keyword arguments specifying field queries:
 +	reid, release, arid, artist, artistname, creditname, type, status,
 +	tracks, tracksmedium, discids, discidsmedium, mediums, date, asin,
 +	lang, script, country, date, label, catno, barcode, puid
 +	"""
 +	return _do_mb_search('release', query, fields, limit, offset)
 +
- def release_group_search(query='', limit=None, offset=None, **fields):
++def search_release_groups(query='', limit=None, offset=None, **fields):
 +	"""Search for release groups by a free-form `query` string and/or
 +	any of the following keyword arguments specifying field queries:
 +	rgid, releasegroup, reid, release, arid, artist, artistname,
 +	creditname, type, tag
 +	"""
 +	return _do_mb_search('release-group', query, fields, limit, offset)
 +
- def work_search(query='', limit=None, offset=None, **fields):
++def search_works(query='', limit=None, offset=None, **fields):
 +	"""Search for works by a free-form `query` string and/or any of
 +	the following keyword arguments specifying field queries:
 +	wid, work, iswc, type, arid, artist, alias, tag
 +	"""
 +	return _do_mb_search('work', query, fields, limit, offset)
 +
 +
 +# Lists of entities
- def get_releases_by_discid(id, includes=[], release_type=[]):
- 	params = _check_filter_and_make_params(includes, release_type=release_type)
++def get_releases_by_discid(id, includes=[], release_status=[], release_type=[]):
++	params = _check_filter_and_make_params(includes, release_status, release_type=release_type)
 +	return _do_mb_query("discid", id, includes, params)
 +
 +def get_recordings_by_echoprint(echoprint, includes=[], release_status=[], release_type=[]):
 +	params = _check_filter_and_make_params(includes, release_status, release_type)
 +	return _do_mb_query("echoprint", echoprint, includes, params)
 +
 +def get_recordings_by_puid(puid, includes=[], release_status=[], release_type=[]):
 +	params = _check_filter_and_make_params(includes, release_status, release_type)
 +	return _do_mb_query("puid", puid, includes, params)
 +
 +def get_recordings_by_isrc(isrc, includes=[], release_status=[], release_type=[]):
 +	params = _check_filter_and_make_params(includes, release_status, release_type)
 +	return _do_mb_query("isrc", isrc, includes, params)
 +
 +def get_works_by_iswc(iswc, includes=[]):
 +	return _do_mb_query("iswc", iswc, includes)
 +
- # Browse methods
- # Browse include are a subset of regular get includes, so we check them here
- # and the test in _do_mb_query will pass anyway.
- def browse_artist(recording=None, release=None, release_group=None, includes=[], limit=None, offset=None):
-     # optional parameter work?
-     _check_includes_impl(includes, ["aliases", "tags", "ratings", "user-tags", "user-ratings"])
-     p = {}
-     if recording: p["recording"] = recording
-     if release: p["release"] = release
-     if release_group: p["release-group"] = release_group
-     #if work: p["work"] = work
-     if len(p) > 1:
-         raise Exception("Can't have more than one of recording, release, release_group, work")
-     if limit: p["limit"] = limit
-     if offset: p["offset"] = offset
-     return _do_mb_query("artist", "", includes, p)
- 
- def browse_label(release=None, includes=[], limit=None, offset=None):
-     _check_includes_impl(includes, ["aliases", "tags", "ratings", "user-tags", "user-ratings"])
-     p = {"release": release}
-     if limit: p["limit"] = limit
-     if offset: p["offset"] = offset
-     return _do_mb_query("label", "", includes, p)
- 
- def browse_recording(artist=None, release=None, includes=[], limit=None, offset=None):
-     _check_includes_impl(includes, ["artist-credits", "tags", "ratings", "user-tags", "user-ratings"])
-     p = {}
-     if artist: p["artist"] = artist
-     if release: p["release"] = release
-     if len(p) > 1:
-         raise Exception("Can't have more than one of artist, release")
-     if limit: p["limit"] = limit
-     if offset: p["offset"] = offset
-     return _do_mb_query("recording", "", includes, p)
- 
- def browse_release(artist=None, label=None, recording=None, release_group=None, release_status=[], release_type=[], includes=[], limit=None, offset=None):
-     # track_artist param doesn't work yet
-     _check_includes_impl(includes, ["artist-credits", "labels", "recordings"])
++def _browse_impl(entity, includes, valid_includes, limit, offset, params, release_status=[], release_type=[]):
++    _check_includes_impl(includes, valid_includes)
 +    p = {}
-     if artist: p["artist"] = artist
-     #if track_artist: p["track_artist"] = track_artist
-     if label: p["label"] = label
-     if recording: p["recording"] = recording
-     if release_group: p["release-group"] = release_group
++    for k,v in params.items():
++        if v:
++            p[k] = v
 +    if len(p) > 1:
-         raise Exception("Can't have more than one of artist, label, recording, release_group")
++        raise Exception("Can't have more than one of " + ", ".join(params.keys()))
 +    if limit: p["limit"] = limit
 +    if offset: p["offset"] = offset
-     filterp = _check_filter_and_make_params("releases", release_status, release_type)
++    filterp = _check_filter_and_make_params(entity, includes, release_status, release_type)
 +    p.update(filterp)
-     if len(release_status) == 0 and len(release_type) == 0:
-         raise InvalidFilterError("Need at least one release status or type")
-     return _do_mb_query("release", "", includes, p)
++    return _do_mb_query(entity, "", includes, p)
 +
- def browse_release_group(artist=None, release=None, release_type=[], includes=[], limit=None, offset=None):
-     _check_includes_impl(includes, ["artist-credits", "tags", "ratings", "user-tags", "user-ratings"])
-     p = {}
-     if artist: p["artist"] = artist
-     if release: p["release"] = release
-     if len(p) > 1:
-         raise Exception("Can't have more than one of artist, release")
-     if limit: p["limit"] = limit
-     if offset: p["offset"] = offset
-     filterp = _check_filter_and_make_params("release-groups", [], release_type)
-     p.update(filterp)
-     if len(release_type) == 0:
-         raise InvalidFilterError("Need at least one release type")
-     return _do_mb_query("release-group", "", includes, p)
++# Browse methods
++# Browse include are a subset of regular get includes, so we check them here
++# and the test in _do_mb_query will pass anyway.
++def browse_artists(recording=None, release=None, release_group=None, includes=[], limit=None, offset=None):
++    # optional parameter work?
++    valid_includes = ["aliases", "tags", "ratings", "user-tags", "user-ratings"]
++    params = {"recording": recording,
++              "release": release,
++              "release-group": release_group}
++    return _browse_impl("artist", includes, valid_includes, limit, offset, params)
++
++def browse_labels(release=None, includes=[], limit=None, offset=None):
++    valid_includes = ["aliases", "tags", "ratings", "user-tags", "user-ratings"]
++    params = {"release": release}
++    return _browse_impl("label", includes, valid_includes, limit, offset, params)
++
++def browse_recordings(artist=None, release=None, includes=[], limit=None, offset=None):
++    valid_includes = ["artist-credits", "tags", "ratings", "user-tags", "user-ratings"]
++    params = {"artist": artist,
++              "release": release}
++    return _browse_impl("recording", includes, valid_includes, limit, offset, params)
++
++def browse_releases(artist=None, label=None, recording=None, release_group=None, release_status=[], release_type=[], includes=[], limit=None, offset=None):
++    # track_artist param doesn't work yet
++    valid_includes = ["artist-credits", "labels", "recordings", "release-groups"]
++    params = {"artist": artist,
++              "label": label,
++              "recording": recording,
++              "release-group": release_group}
++    return _browse_impl("release", includes, valid_includes, limit, offset, params, release_status, release_type)
++
++def browse_release_groups(artist=None, release=None, release_type=[], includes=[], limit=None, offset=None):
++    valid_includes = ["artist-credits", "tags", "ratings", "user-tags", "user-ratings"]
++    params = {"artist": artist,
++              "release": release}
++    return _browse_impl("release-group", includes, valid_includes, limit, offset, params, [], release_type)
 +
 +# browse_work is defined in the docs but has no browse criteria
 +
 +# Collections
- def get_all_collections():
++def get_collections():
 +	# Missing <release-list count="n"> the count in the reply
 +	return _do_mb_query("collection", '')
 +
 +def get_releases_in_collection(collection):
 +	return _do_mb_query("collection", "%s/releases" % collection)
 +
 +# Submission methods
 +
 +def submit_barcodes(barcodes):
 +	"""
 +	Submits a set of {release1: barcode1, release2:barcode2}
 +	Must call auth(user, pass) first
 +	"""
 +	query = mbxml.make_barcode_request(barcodes)
 +	return _do_mb_post("release", query)
 +
 +def submit_puids(puids):
 +	query = mbxml.make_puid_request(puids)
 +	return _do_mb_post("recording", query)
 +
 +def submit_echoprints(echoprints):
 +	query = mbxml.make_echoprint_request(echoprints)
 +	return _do_mb_post("recording", query)
 +
- def submit_isrcs(isrcs):
- 	raise NotImplementedError
++def submit_isrcs(recordings_isrcs):
++    """
++    Submit ISRCs.
++    Submits a set of {recording-id: [isrc1, irc1]}
++    Must call auth(user, pass) first
++    """
++    query = mbxml.make_isrc_request(recordings_isrcs=recordings_isrcs)
++    return _do_mb_post("recording", query)
 +
 +def submit_tags(artist_tags={}, recording_tags={}):
 +	""" Submit user tags.
 +	    Artist or recording parameters are of the form:
 +	    {'entityid': [taglist]}
 +	"""
 +	query = mbxml.make_tag_request(artist_tags, recording_tags)
 +	return _do_mb_post("tag", query)
 +
 +def submit_ratings(artist_ratings={}, recording_ratings={}):
 +	""" Submit user ratings.
 +	    Artist or recording parameters are of the form:
 +	    {'entityid': rating}
 +	"""
 +	query = mbxml.make_rating_request(artist_ratings, recording_ratings)
 +	return _do_mb_post("rating", query)
 +
 +def add_releases_to_collection(collection, releases=[]):
 +	# XXX: Maximum URI length of 16kb means we should only allow ~400 releases
 +	releaselist = ";".join(releases)
 +   	_do_mb_put("collection/%s/releases/%s" % (collection, releaselist))
 +
 +def remove_releases_from_collection(collection, releases=[]):
 +	releaselist = ";".join(releases)
 +   	_do_mb_delete("collection/%s/releases/%s" % (collection, releaselist))
diff --combined morituri/image/Makefile.in
index 6c55fac,0000000..eb88565
mode 100644,000000..100644
--- a/morituri/image/Makefile.in
+++ b/morituri/image/Makefile.in
@@@ -1,430 -1,0 +1,484 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = morituri/image
- DIST_COMMON = $(morituri_PYTHON) $(srcdir)/Makefile.am \
- 	$(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
++	$(morituri_PYTHON) $(top_srcdir)/py-compile
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile)
 +am__installdirs = "$(DESTDIR)$(morituridir)"
++am__pep3147_tweak = \
++  sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|'
 +py_compile = $(top_srcdir)/py-compile
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +CLEANFILES = *.py{c,o}
 +morituridir = $(PYTHONLIBDIR)/morituri/image
 +morituri_PYTHON = \
 +	__init__.py \
 +	cue.py \
 +	image.py \
 +	table.py \
 +	toc.py
 +
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu morituri/image/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu morituri/image/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +install-morituriPYTHON: $(morituri_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(morituri_PYTHON)'; dlist=; list2=; test -n "$(morituridir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(morituridir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(morituridir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(morituridir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(morituridir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(morituridir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-morituriPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(morituri_PYTHON)'; test -n "$(morituridir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(morituridir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
 +all-am: Makefile
 +installdirs:
 +	for dir in "$(DESTDIR)$(morituridir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am: install-morituriPYTHON
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am: uninstall-morituriPYTHON
 +
 +.MAKE: install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-data install-data-am install-dvi \
- 	install-dvi-am install-exec install-exec-am install-html \
- 	install-html-am install-info install-info-am install-man \
- 	install-morituriPYTHON install-pdf install-pdf-am install-ps \
- 	install-ps-am install-strip installcheck installcheck-am \
- 	installdirs maintainer-clean maintainer-clean-generic \
- 	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
- 	uninstall-am uninstall-morituriPYTHON
++.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
++	ctags-am distclean distclean-generic distdir dvi dvi-am html \
++	html-am info info-am install install-am install-data \
++	install-data-am install-dvi install-dvi-am install-exec \
++	install-exec-am install-html install-html-am install-info \
++	install-info-am install-man install-morituriPYTHON install-pdf \
++	install-pdf-am install-ps install-ps-am install-strip \
++	installcheck installcheck-am installdirs maintainer-clean \
++	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
++	pdf-am ps ps-am tags-am uninstall uninstall-am \
++	uninstall-morituriPYTHON
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined morituri/program/Makefile.in
index 53c9b43,0000000..5a7def1
mode 100644,000000..100644
--- a/morituri/program/Makefile.in
+++ b/morituri/program/Makefile.in
@@@ -1,428 -1,0 +1,482 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = morituri/program
- DIST_COMMON = $(morituri_PYTHON) $(srcdir)/Makefile.am \
- 	$(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
++	$(morituri_PYTHON) $(top_srcdir)/py-compile
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile)
 +am__installdirs = "$(DESTDIR)$(morituridir)"
++am__pep3147_tweak = \
++  sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|'
 +py_compile = $(top_srcdir)/py-compile
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +CLEANFILES = *.py{c,o}
 +morituridir = $(PYTHONLIBDIR)/morituri/program
 +morituri_PYTHON = \
 +	__init__.py \
 +	cdparanoia.py \
 +	cdrdao.py
 +
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu morituri/program/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu morituri/program/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +install-morituriPYTHON: $(morituri_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(morituri_PYTHON)'; dlist=; list2=; test -n "$(morituridir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(morituridir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(morituridir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(morituridir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(morituridir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(morituridir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-morituriPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(morituri_PYTHON)'; test -n "$(morituridir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(morituridir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
 +all-am: Makefile
 +installdirs:
 +	for dir in "$(DESTDIR)$(morituridir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am: install-morituriPYTHON
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am: uninstall-morituriPYTHON
 +
 +.MAKE: install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-data install-data-am install-dvi \
- 	install-dvi-am install-exec install-exec-am install-html \
- 	install-html-am install-info install-info-am install-man \
- 	install-morituriPYTHON install-pdf install-pdf-am install-ps \
- 	install-ps-am install-strip installcheck installcheck-am \
- 	installdirs maintainer-clean maintainer-clean-generic \
- 	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
- 	uninstall-am uninstall-morituriPYTHON
++.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
++	ctags-am distclean distclean-generic distdir dvi dvi-am html \
++	html-am info info-am install install-am install-data \
++	install-data-am install-dvi install-dvi-am install-exec \
++	install-exec-am install-html install-html-am install-info \
++	install-info-am install-man install-morituriPYTHON install-pdf \
++	install-pdf-am install-ps install-ps-am install-strip \
++	installcheck installcheck-am installdirs maintainer-clean \
++	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
++	pdf-am ps ps-am tags-am uninstall uninstall-am \
++	uninstall-morituriPYTHON
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined morituri/result/Makefile.in
index 760e9e1,0000000..41336ef
mode 100644,000000..100644
--- a/morituri/result/Makefile.in
+++ b/morituri/result/Makefile.in
@@@ -1,428 -1,0 +1,482 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = morituri/result
- DIST_COMMON = $(morituri_PYTHON) $(srcdir)/Makefile.am \
- 	$(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
++	$(morituri_PYTHON) $(top_srcdir)/py-compile
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile)
 +am__installdirs = "$(DESTDIR)$(morituridir)"
++am__pep3147_tweak = \
++  sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|'
 +py_compile = $(top_srcdir)/py-compile
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +CLEANFILES = *.py{c,o}
 +morituridir = $(PYTHONLIBDIR)/morituri/result
 +morituri_PYTHON = \
 +	__init__.py \
 +	logger.py \
 +	result.py
 +
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu morituri/result/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu morituri/result/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +install-morituriPYTHON: $(morituri_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(morituri_PYTHON)'; dlist=; list2=; test -n "$(morituridir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(morituridir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(morituridir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(morituridir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(morituridir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(morituridir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-morituriPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(morituri_PYTHON)'; test -n "$(morituridir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(morituridir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
 +all-am: Makefile
 +installdirs:
 +	for dir in "$(DESTDIR)$(morituridir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am: install-morituriPYTHON
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am: uninstall-morituriPYTHON
 +
 +.MAKE: install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-data install-data-am install-dvi \
- 	install-dvi-am install-exec install-exec-am install-html \
- 	install-html-am install-info install-info-am install-man \
- 	install-morituriPYTHON install-pdf install-pdf-am install-ps \
- 	install-ps-am install-strip installcheck installcheck-am \
- 	installdirs maintainer-clean maintainer-clean-generic \
- 	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
- 	uninstall-am uninstall-morituriPYTHON
++.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
++	ctags-am distclean distclean-generic distdir dvi dvi-am html \
++	html-am info info-am install install-am install-data \
++	install-data-am install-dvi install-dvi-am install-exec \
++	install-exec-am install-html install-html-am install-info \
++	install-info-am install-man install-morituriPYTHON install-pdf \
++	install-pdf-am install-ps install-ps-am install-strip \
++	installcheck installcheck-am installdirs maintainer-clean \
++	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
++	pdf-am ps ps-am tags-am uninstall uninstall-am \
++	uninstall-morituriPYTHON
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined morituri/rip/Makefile.in
index e98e419,0000000..e494fdf
mode 100644,000000..100644
--- a/morituri/rip/Makefile.in
+++ b/morituri/rip/Makefile.in
@@@ -1,434 -1,0 +1,488 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
++    esac; \
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = morituri/rip
- DIST_COMMON = $(morituri_PYTHON) $(srcdir)/Makefile.am \
- 	$(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
++	$(morituri_PYTHON) $(top_srcdir)/py-compile
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
 +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 +am__vpath_adj = case $$p in \
 +    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
 +    *) f=$$p;; \
 +  esac;
 +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
 +am__install_max = 40
 +am__nobase_strip_setup = \
 +  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
 +am__nobase_strip = \
 +  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
 +am__nobase_list = $(am__nobase_strip_setup); \
 +  for p in $$list; do echo "$$p $$p"; done | \
 +  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
 +  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
 +    if (++n[$$2] == $(am__install_max)) \
 +      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
 +    END { for (dir in files) print dir, files[dir] }'
 +am__base_list = \
 +  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
 +  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
 +am__uninstall_files_from_dir = { \
 +  test -z "$$files" \
 +    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
 +    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
 +         $(am__cd) "$$dir" && rm -f $$files; }; \
 +  }
 +am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile)
 +am__installdirs = "$(DESTDIR)$(morituridir)"
++am__pep3147_tweak = \
++  sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|'
 +py_compile = $(top_srcdir)/py-compile
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +CLEANFILES = *.py{c,o}
 +morituridir = $(PYTHONLIBDIR)/morituri/rip
 +morituri_PYTHON = \
 +	__init__.py \
 +	accurip.py \
 +	cd.py \
 +	common.py \
 +	debug.py \
 +	drive.py \
 +	image.py \
 +	main.py \
 +	offset.py
 +
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu morituri/rip/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu morituri/rip/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
 +install-morituriPYTHON: $(morituri_PYTHON)
 +	@$(NORMAL_INSTALL)
 +	@list='$(morituri_PYTHON)'; dlist=; list2=; test -n "$(morituridir)" || list=; \
 +	if test -n "$$list"; then \
 +	  echo " $(MKDIR_P) '$(DESTDIR)$(morituridir)'"; \
 +	  $(MKDIR_P) "$(DESTDIR)$(morituridir)" || exit 1; \
 +	fi; \
 +	for p in $$list; do \
 +	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 +	  if test -f $$b$$p; then \
 +	    $(am__strip_dir) \
 +	    dlist="$$dlist $$f"; \
 +	    list2="$$list2 $$b$$p"; \
 +	  else :; fi; \
 +	done; \
 +	for file in $$list2; do echo $$file; done | $(am__base_list) | \
 +	while read files; do \
 +	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(morituridir)'"; \
 +	  $(INSTALL_DATA) $$files "$(DESTDIR)$(morituridir)" || exit $$?; \
 +	done || exit $$?; \
 +	if test -n "$$dlist"; then \
 +	  $(am__py_compile) --destdir "$(DESTDIR)" \
 +	                    --basedir "$(morituridir)" $$dlist; \
 +	else :; fi
 +
 +uninstall-morituriPYTHON:
 +	@$(NORMAL_UNINSTALL)
 +	@list='$(morituri_PYTHON)'; test -n "$(morituridir)" || list=; \
- 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
- 	test -n "$$files" || exit 0; \
++	py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
++	test -n "$$py_files" || exit 0; \
 +	dir='$(DESTDIR)$(morituridir)'; \
- 	filesc=`echo "$$files" | sed 's|$$|c|'`; \
- 	fileso=`echo "$$files" | sed 's|$$|o|'`; \
++	pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \
++	pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \
++	py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \
++	echo "$$py_files_pep3147";\
++	pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \
++	pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \
 +	st=0; \
- 	for files in "$$files" "$$filesc" "$$fileso"; do \
++	for files in \
++	  "$$py_files" \
++	  "$$pyc_files" \
++	  "$$pyo_files" \
++	  "$$pyc_files_pep3147" \
++	  "$$pyo_files_pep3147" \
++	; do \
 +	  $(am__uninstall_files_from_dir) || st=$$?; \
 +	done; \
 +	exit $$st
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
 +all-am: Makefile
 +installdirs:
 +	for dir in "$(DESTDIR)$(morituridir)"; do \
 +	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 +	done
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am: install-morituriPYTHON
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am: uninstall-morituriPYTHON
 +
 +.MAKE: install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-data install-data-am install-dvi \
- 	install-dvi-am install-exec install-exec-am install-html \
- 	install-html-am install-info install-info-am install-man \
- 	install-morituriPYTHON install-pdf install-pdf-am install-ps \
- 	install-ps-am install-strip installcheck installcheck-am \
- 	installdirs maintainer-clean maintainer-clean-generic \
- 	mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
- 	uninstall-am uninstall-morituriPYTHON
++.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
++	ctags-am distclean distclean-generic distdir dvi dvi-am html \
++	html-am info info-am install install-am install-data \
++	install-data-am install-dvi install-dvi-am install-exec \
++	install-exec-am install-html install-html-am install-info \
++	install-info-am install-man install-morituriPYTHON install-pdf \
++	install-pdf-am install-ps install-ps-am install-strip \
++	installcheck installcheck-am installdirs maintainer-clean \
++	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
++	pdf-am ps ps-am tags-am uninstall uninstall-am \
++	uninstall-morituriPYTHON
 +
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined morituri/test/Makefile.in
index 5fe1d49,0000000..4001fa4
mode 100644,000000..100644
--- a/morituri/test/Makefile.in
+++ b/morituri/test/Makefile.in
@@@ -1,412 -1,0 +1,464 @@@
- # Makefile.in generated by automake 1.11.6 from Makefile.am.
++# Makefile.in generated by automake 1.13.4 from Makefile.am.
 +# @configure_input@
 +
- # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
- # 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
- # Foundation, Inc.
++# Copyright (C) 1994-2013 Free Software Foundation, Inc.
++
 +# This Makefile.in is free software; the Free Software Foundation
 +# gives unlimited permission to copy and/or distribute it,
 +# with or without modifications, as long as this notice is preserved.
 +
 +# This program is distributed in the hope that it will be useful,
 +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
 +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 +# PARTICULAR PURPOSE.
 +
 + at SET_MAKE@
 +VPATH = @srcdir@
- am__make_dryrun = \
-   { \
-     am__dry=no; \
++am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
++am__make_running_with_option = \
++  case $${target_option-} in \
++      ?) ;; \
++      *) echo "am__make_running_with_option: internal error: invalid" \
++              "target option '$${target_option-}' specified" >&2; \
++         exit 1;; \
++  esac; \
++  has_opt=no; \
++  sane_makeflags=$$MAKEFLAGS; \
++  if $(am__is_gnu_make); then \
++    sane_makeflags=$$MFLAGS; \
++  else \
 +    case $$MAKEFLAGS in \
 +      *\\[\ \	]*) \
-         echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
-           | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
-       *) \
-         for am__flg in $$MAKEFLAGS; do \
-           case $$am__flg in \
-             *=*|--*) ;; \
-             *n*) am__dry=yes; break;; \
-           esac; \
-         done;; \
++        bs=\\; \
++        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
++          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
++    esac; \
++  fi; \
++  skip_next=no; \
++  strip_trailopt () \
++  { \
++    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
++  }; \
++  for flg in $$sane_makeflags; do \
++    test $$skip_next = yes && { skip_next=no; continue; }; \
++    case $$flg in \
++      *=*|--*) continue;; \
++        -*I) strip_trailopt 'I'; skip_next=yes;; \
++      -*I?*) strip_trailopt 'I';; \
++        -*O) strip_trailopt 'O'; skip_next=yes;; \
++      -*O?*) strip_trailopt 'O';; \
++        -*l) strip_trailopt 'l'; skip_next=yes;; \
++      -*l?*) strip_trailopt 'l';; \
++      -[dEDm]) skip_next=yes;; \
++      -[JT]) skip_next=yes;; \
++    esac; \
++    case $$flg in \
++      *$$target_option*) has_opt=yes; break;; \
 +    esac; \
-     test $$am__dry = yes; \
-   }
++  done; \
++  test $$has_opt = yes
++am__make_dryrun = (target_option=n; $(am__make_running_with_option))
++am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
 +pkgdatadir = $(datadir)/@PACKAGE@
 +pkgincludedir = $(includedir)/@PACKAGE@
 +pkglibdir = $(libdir)/@PACKAGE@
 +pkglibexecdir = $(libexecdir)/@PACKAGE@
 +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 +install_sh_DATA = $(install_sh) -c -m 644
 +install_sh_PROGRAM = $(install_sh) -c
 +install_sh_SCRIPT = $(install_sh) -c
 +INSTALL_HEADER = $(INSTALL_DATA)
 +transform = $(program_transform_name)
 +NORMAL_INSTALL = :
 +PRE_INSTALL = :
 +POST_INSTALL = :
 +NORMAL_UNINSTALL = :
 +PRE_UNINSTALL = :
 +POST_UNINSTALL = :
 +subdir = morituri/test
- DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
++DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
 +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 +am__aclocal_m4_deps = $(top_srcdir)/m4/as-ac-expand.m4 \
- 	$(top_srcdir)/m4/as-python.m4 $(top_srcdir)/m4/as-version.m4 \
- 	$(top_srcdir)/configure.ac
++	$(top_srcdir)/m4/as-version.m4 $(top_srcdir)/configure.ac
 +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 +	$(ACLOCAL_M4)
 +mkinstalldirs = $(install_sh) -d
 +CONFIG_CLEAN_FILES =
 +CONFIG_CLEAN_VPATH_FILES =
++AM_V_P = $(am__v_P_ at AM_V@)
++am__v_P_ = $(am__v_P_ at AM_DEFAULT_V@)
++am__v_P_0 = false
++am__v_P_1 = :
++AM_V_GEN = $(am__v_GEN_ at AM_V@)
++am__v_GEN_ = $(am__v_GEN_ at AM_DEFAULT_V@)
++am__v_GEN_0 = @echo "  GEN     " $@;
++am__v_GEN_1 = 
++AM_V_at = $(am__v_at_ at AM_V@)
++am__v_at_ = $(am__v_at_ at AM_DEFAULT_V@)
++am__v_at_0 = @
++am__v_at_1 = 
 +SOURCES =
 +DIST_SOURCES =
 +am__can_run_installinfo = \
 +  case $$AM_UPDATE_INFO_DIR in \
 +    n|no|NO) false;; \
 +    *) (install-info --version) >/dev/null 2>&1;; \
 +  esac
++am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
 +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 +ACLOCAL = @ACLOCAL@
 +ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 +AMTAR = @AMTAR@
++AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
 +AUTOCONF = @AUTOCONF@
 +AUTOHEADER = @AUTOHEADER@
 +AUTOMAKE = @AUTOMAKE@
 +AWK = @AWK@
 +CYGPATH_W = @CYGPATH_W@
 +DEFS = @DEFS@
 +ECHO_C = @ECHO_C@
 +ECHO_N = @ECHO_N@
 +ECHO_T = @ECHO_T@
 +EPYDOC = @EPYDOC@
 +INSTALL = @INSTALL@
 +INSTALL_DATA = @INSTALL_DATA@
 +INSTALL_PROGRAM = @INSTALL_PROGRAM@
 +INSTALL_SCRIPT = @INSTALL_SCRIPT@
 +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 +LIBOBJS = @LIBOBJS@
 +LIBS = @LIBS@
 +LTLIBOBJS = @LTLIBOBJS@
 +MAINT = @MAINT@
 +MAKEINFO = @MAKEINFO@
 +MKDIR_P = @MKDIR_P@
 +PACKAGE = @PACKAGE@
 +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
 +PACKAGE_NAME = @PACKAGE_NAME@
 +PACKAGE_STRING = @PACKAGE_STRING@
 +PACKAGE_TARNAME = @PACKAGE_TARNAME@
 +PACKAGE_URL = @PACKAGE_URL@
 +PACKAGE_VERSION = @PACKAGE_VERSION@
 +PACKAGE_VERSION_MAJOR = @PACKAGE_VERSION_MAJOR@
 +PACKAGE_VERSION_MICRO = @PACKAGE_VERSION_MICRO@
 +PACKAGE_VERSION_MINOR = @PACKAGE_VERSION_MINOR@
 +PACKAGE_VERSION_NANO = @PACKAGE_VERSION_NANO@
 +PACKAGE_VERSION_RELEASE = @PACKAGE_VERSION_RELEASE@
 +PATH_SEPARATOR = @PATH_SEPARATOR@
 +PLUGINSDIR = @PLUGINSDIR@
 +PYCHECKER = @PYCHECKER@
 +PYTHON = @PYTHON@
 +PYTHONLIBDIR = @PYTHONLIBDIR@
 +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 +PYTHON_PLATFORM = @PYTHON_PLATFORM@
 +PYTHON_PREFIX = @PYTHON_PREFIX@
 +PYTHON_VERSION = @PYTHON_VERSION@
++REVISION = @REVISION@
 +SET_MAKE = @SET_MAKE@
 +SHELL = @SHELL@
 +STRIP = @STRIP@
 +VERSION = @VERSION@
 +abs_builddir = @abs_builddir@
 +abs_srcdir = @abs_srcdir@
 +abs_top_builddir = @abs_top_builddir@
 +abs_top_srcdir = @abs_top_srcdir@
 +am__leading_dot = @am__leading_dot@
 +am__tar = @am__tar@
 +am__untar = @am__untar@
 +bindir = @bindir@
 +build_alias = @build_alias@
 +builddir = @builddir@
 +datadir = @datadir@
 +datarootdir = @datarootdir@
 +docdir = @docdir@
 +dvidir = @dvidir@
 +exec_prefix = @exec_prefix@
 +host_alias = @host_alias@
 +htmldir = @htmldir@
 +includedir = @includedir@
 +infodir = @infodir@
 +install_sh = @install_sh@
 +libdir = @libdir@
 +libexecdir = @libexecdir@
 +localedir = @localedir@
 +localstatedir = @localstatedir@
 +mandir = @mandir@
 +mkdir_p = @mkdir_p@
 +oldincludedir = @oldincludedir@
 +pdfdir = @pdfdir@
 +pkgpyexecdir = @pkgpyexecdir@
 +pkgpythondir = @pkgpythondir@
 +prefix = @prefix@
 +program_transform_name = @program_transform_name@
 +psdir = @psdir@
 +pyexecdir = @pyexecdir@
 +pythondir = @pythondir@
 +sbindir = @sbindir@
 +sharedstatedir = @sharedstatedir@
 +srcdir = @srcdir@
 +sysconfdir = @sysconfdir@
 +target_alias = @target_alias@
 +top_build_prefix = @top_build_prefix@
 +top_builddir = @top_builddir@
 +top_srcdir = @top_srcdir@
 +CLEANFILES = *.py{c,o}
 +EXTRA_DIST = \
 +	__init__.py \
 +	common.py \
 +	test_common_accurip.py \
 +	test_common_cache.py \
 +	test_common_checksum.py \
 +	test_common_common.py \
 +	test_common_config.py \
++	test_common_directory.py \
 +	test_common_drive.py \
 +	test_common_encode.py \
 +	test_common_gstreamer.py \
- 	test_common_musicbrainzngs.py \
++	test_common_mbngs.py \
++	test_common_path.py \
 +	test_common_program.py \
 +	test_common_renamer.py \
 +	test_image_cue.py \
 +	test_image_image.py \
 +	test_image_table.py \
 +	test_image_toc.py \
 +	test_program_cdparanoia.py \
 +	test_program_cdrdao.py \
 +	bloc.cue \
 +	bloc.toc \
 +	breeders.cue \
 +	breeders.toc \
 +	capital.fast.toc \
 +	capital.1.toc \
 +	capital.2.toc \
 +	cure.cue \
 +	cure.toc \
 +	jose.toc \
 +	dBAR-011-0010e284-009228a3-9809ff0b.bin \
 +	dBAR-020-002e5023-029d8e49-040eaa14.bin \
 +	release.08397059-86c1-463b-8ed0-cd596dbd174f.xml \
 +	release.93a6268c-ddf1-4898-bf93-fb862b1c5c5e.xml \
 +	release.c7d919f4-3ea0-4c4b-a230-b3605f069440.xml \
 +	morituri.release.3451f29c-9bb8-4cc5-bfcc-bd50104b94f8.json \
++	morituri.release.a76714e0-32b1-4ed4-b28e-f86d99642193.json \
++	morituri.release.61c6fd9b-18f8-4a45-963a-ba3c5d990cae.json \
++	morituri.release.e32ae79a-336e-4d33-945c-8c5e8206dbd3.json \
 +	kanye.cue \
 +	kings-separate.cue \
 +	kings-single.cue \
 +	ladyhawke.toc \
 +	track-separate.cue \
 +	track-single.cue \
 +	cdparanoia.progress \
 +	cdparanoia.progress.error \
++	cdparanoia.progress.strokes \
 +	cdrdao.readtoc.progress \
 +	silentalarm.result.pickle \
++	strokes-someday.toc \
++        strokes-someday.eac.cue \
++	surferrosa.toc \
++	totbl.fast.toc \
 +	track.flac \
 +	cache/result/fe105a11.pickle \
 +	cdparanoia/MATSHITA.cdparanoia-A.log \
 +	cdparanoia/MATSHITA.cdparanoia-A.stderr \
 +	cdparanoia/PX-L890SA.cdparanoia-A.log \
 +	cdparanoia/PX-L890SA.cdparanoia-A.stderr
 +
 +all: all-am
 +
 +.SUFFIXES:
 +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 +	@for dep in $?; do \
 +	  case '$(am__configure_deps)' in \
 +	    *$$dep*) \
 +	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
 +	        && { if test -f $@; then exit 0; else break; fi; }; \
 +	      exit 1;; \
 +	  esac; \
 +	done; \
 +	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu morituri/test/Makefile'; \
 +	$(am__cd) $(top_srcdir) && \
 +	  $(AUTOMAKE) --gnu morituri/test/Makefile
 +.PRECIOUS: Makefile
 +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 +	@case '$?' in \
 +	  *config.status*) \
 +	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 +	  *) \
 +	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 +	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 +	esac;
 +
 +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +
 +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 +	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
 +$(am__aclocal_m4_deps):
- tags: TAGS
- TAGS:
++tags TAGS:
++
++ctags CTAGS:
 +
- ctags: CTAGS
- CTAGS:
++cscope cscopelist:
 +
 +
 +distdir: $(DISTFILES)
 +	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 +	list='$(DISTFILES)'; \
 +	  dist_files=`for file in $$list; do echo $$file; done | \
 +	  sed -e "s|^$$srcdirstrip/||;t" \
 +	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
 +	case $$dist_files in \
 +	  */*) $(MKDIR_P) `echo "$$dist_files" | \
 +			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
 +			   sort -u` ;; \
 +	esac; \
 +	for file in $$dist_files; do \
 +	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
 +	  if test -d $$d/$$file; then \
 +	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
 +	    if test -d "$(distdir)/$$file"; then \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
 +	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
 +	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
 +	    fi; \
 +	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
 +	  else \
 +	    test -f "$(distdir)/$$file" \
 +	    || cp -p $$d/$$file "$(distdir)/$$file" \
 +	    || exit 1; \
 +	  fi; \
 +	done
 +check-am: all-am
 +check: check-am
 +all-am: Makefile
 +installdirs:
 +install: install-am
 +install-exec: install-exec-am
 +install-data: install-data-am
 +uninstall: uninstall-am
 +
 +install-am: all-am
 +	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
 +
 +installcheck: installcheck-am
 +install-strip:
 +	if test -z '$(STRIP)'; then \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	      install; \
 +	else \
 +	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
 +	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
 +	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
 +	fi
 +mostlyclean-generic:
 +
 +clean-generic:
 +	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 +
 +distclean-generic:
 +	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 +	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
 +
 +maintainer-clean-generic:
 +	@echo "This command is intended for maintainers to use"
 +	@echo "it deletes files that may require special tools to rebuild."
 +clean: clean-am
 +
 +clean-am: clean-generic mostlyclean-am
 +
 +distclean: distclean-am
 +	-rm -f Makefile
 +distclean-am: clean-am distclean-generic
 +
 +dvi: dvi-am
 +
 +dvi-am:
 +
 +html: html-am
 +
 +html-am:
 +
 +info: info-am
 +
 +info-am:
 +
 +install-data-am:
 +
 +install-dvi: install-dvi-am
 +
 +install-dvi-am:
 +
 +install-exec-am:
 +
 +install-html: install-html-am
 +
 +install-html-am:
 +
 +install-info: install-info-am
 +
 +install-info-am:
 +
 +install-man:
 +
 +install-pdf: install-pdf-am
 +
 +install-pdf-am:
 +
 +install-ps: install-ps-am
 +
 +install-ps-am:
 +
 +installcheck-am:
 +
 +maintainer-clean: maintainer-clean-am
 +	-rm -f Makefile
 +maintainer-clean-am: distclean-am maintainer-clean-generic
 +
 +mostlyclean: mostlyclean-am
 +
 +mostlyclean-am: mostlyclean-generic
 +
 +pdf: pdf-am
 +
 +pdf-am:
 +
 +ps: ps-am
 +
 +ps-am:
 +
 +uninstall-am:
 +
 +.MAKE: install-am install-strip
 +
- .PHONY: all all-am check check-am clean clean-generic distclean \
- 	distclean-generic distdir dvi dvi-am html html-am info info-am \
- 	install install-am install-data install-data-am install-dvi \
- 	install-dvi-am install-exec install-exec-am install-html \
- 	install-html-am install-info install-info-am install-man \
- 	install-pdf install-pdf-am install-ps install-ps-am \
- 	install-strip installcheck installcheck-am installdirs \
- 	maintainer-clean maintainer-clean-generic mostlyclean \
- 	mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am
++.PHONY: all all-am check check-am clean clean-generic cscopelist-am \
++	ctags-am distclean distclean-generic distdir dvi dvi-am html \
++	html-am info info-am install install-am install-data \
++	install-data-am install-dvi install-dvi-am install-exec \
++	install-exec-am install-html install-html-am install-info \
++	install-info-am install-man install-pdf install-pdf-am \
++	install-ps install-ps-am install-strip installcheck \
++	installcheck-am installdirs maintainer-clean \
++	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
++	pdf-am ps ps-am tags-am uninstall uninstall-am
 +
 +
 +# re-generation of test files when needed
 +regenerate: track.flac
 +
 +%.regenerate:
 +	rm $*
 +	make $*
 +
 +track.flac:
 +	gst-launch audiotestsrc num-buffers=10 samplesperbuffer=588 ! audioconvert ! audio/x-raw-int,channels=2,width=16,height=16,rate=44100 ! flacenc ! filesink location=track.flac
 +
 +# Tell versions [3.59,3.63) of GNU make to not export all variables.
 +# Otherwise a system limit (for SysV at least) may be exceeded.
 +.NOEXPORT:
diff --combined py-compile
index 15c834c,0000000..46ea866
mode 100755,000000..100755
--- a/py-compile
+++ b/py-compile
@@@ -1,161 -1,0 +1,170 @@@
 +#!/bin/sh
 +# py-compile - Compile a Python program
 +
 +scriptversion=2011-06-08.12; # UTC
 +
- # Copyright (C) 2000, 2001, 2003, 2004, 2005, 2008, 2009, 2011 Free
- # Software Foundation, Inc.
++# Copyright (C) 2000-2013 Free Software Foundation, Inc.
 +
 +# 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.  If not, see <http://www.gnu.org/licenses/>.
 +
 +# As a special exception to the GNU General Public License, if you
 +# distribute this file as part of a program that contains a
 +# configuration script generated by Autoconf, you may include it under
 +# the same distribution terms that you use for the rest of that program.
 +
 +# This file is maintained in Automake, please report
 +# bugs to <bug-automake at gnu.org> or send patches to
 +# <automake-patches at gnu.org>.
 +
 +if [ -z "$PYTHON" ]; then
 +  PYTHON=python
 +fi
 +
 +me=py-compile
 +
 +usage_error ()
 +{
 +  echo "$me: $*" >&2
-   echo "Try \`$me --help' for more information." >&2
++  echo "Try '$me --help' for more information." >&2
 +  exit 1
 +}
 +
 +basedir=
 +destdir=
 +while test $# -ne 0; do
 +  case "$1" in
 +    --basedir)
 +      if test $# -lt 2; then
 +        usage_error "option '--basedir' requires an argument"
 +      else
 +        basedir=$2
 +      fi
 +      shift
 +      ;;
 +    --destdir)
 +      if test $# -lt 2; then
 +        usage_error "option '--destdir' requires an argument"
 +      else
 +        destdir=$2
 +      fi
 +      shift
 +      ;;
 +    -h|--help)
 +      cat <<\EOF
 +Usage: py-compile [--help] [--version] [--basedir DIR] [--destdir DIR] FILES..."
 +
 +Byte compile some python scripts FILES.  Use --destdir to specify any
 +leading directory path to the FILES that you don't want to include in the
 +byte compiled file.  Specify --basedir for any additional path information you
 +do want to be shown in the byte compiled file.
 +
 +Example:
 +  py-compile --destdir /tmp/pkg-root --basedir /usr/share/test test.py test2.py
 +
 +Report bugs to <bug-automake at gnu.org>.
 +EOF
 +      exit $?
 +      ;;
 +    -v|--version)
 +      echo "$me $scriptversion"
 +      exit $?
 +      ;;
 +    --)
 +      shift
 +      break
 +      ;;
 +    -*)
 +      usage_error "unrecognized option '$1'"
 +      ;;
 +    *)
 +      break
 +      ;;
 +  esac
 +  shift
 +done
 +
 +files=$*
 +if test -z "$files"; then
 +    usage_error "no files given"
 +fi
 +
 +# if basedir was given, then it should be prepended to filenames before
 +# byte compilation.
 +if [ -z "$basedir" ]; then
 +    pathtrans="path = file"
 +else
 +    pathtrans="path = os.path.join('$basedir', file)"
 +fi
 +
 +# if destdir was given, then it needs to be prepended to the filename to
 +# byte compile but not go into the compiled file.
 +if [ -z "$destdir" ]; then
 +    filetrans="filepath = path"
 +else
 +    filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)"
 +fi
 +
 +$PYTHON -c "
- import sys, os, py_compile
++import sys, os, py_compile, imp
 +
 +files = '''$files'''
 +
 +sys.stdout.write('Byte-compiling python modules...\n')
 +for file in files.split():
 +    $pathtrans
 +    $filetrans
 +    if not os.path.exists(filepath) or not (len(filepath) >= 3
 +                                            and filepath[-3:] == '.py'):
 +	    continue
 +    sys.stdout.write(file)
 +    sys.stdout.flush()
-     py_compile.compile(filepath, filepath + 'c', path)
++    if hasattr(imp, 'get_tag'):
++        py_compile.compile(filepath, imp.cache_from_source(filepath), path)
++    else:
++        py_compile.compile(filepath, filepath + 'c', path)
 +sys.stdout.write('\n')" || exit $?
 +
 +# this will fail for python < 1.5, but that doesn't matter ...
 +$PYTHON -O -c "
- import sys, os, py_compile
++import sys, os, py_compile, imp
++
++# pypy does not use .pyo optimization
++if hasattr(sys, 'pypy_translation_info'):
++    sys.exit(0)
 +
 +files = '''$files'''
 +sys.stdout.write('Byte-compiling python modules (optimized versions) ...\n')
 +for file in files.split():
 +    $pathtrans
 +    $filetrans
 +    if not os.path.exists(filepath) or not (len(filepath) >= 3
 +                                            and filepath[-3:] == '.py'):
 +	    continue
 +    sys.stdout.write(file)
 +    sys.stdout.flush()
-     py_compile.compile(filepath, filepath + 'o', path)
++    if hasattr(imp, 'get_tag'):
++        py_compile.compile(filepath, imp.cache_from_source(filepath, False), path)
++    else:
++        py_compile.compile(filepath, filepath + 'o', path)
 +sys.stdout.write('\n')" 2>/dev/null || :
 +
 +# Local Variables:
 +# mode: shell-script
 +# sh-indentation: 2
 +# eval: (add-hook 'write-file-hooks 'time-stamp)
 +# time-stamp-start: "scriptversion="
 +# time-stamp-format: "%:y-%02m-%02d.%02H"
 +# time-stamp-time-zone: "UTC"
 +# time-stamp-end: "; # UTC"
 +# End:

-- 
morituri packaging



More information about the pkg-multimedia-commits mailing list