[Pkg-gtkpod-devel] r251 - in libgpod/branches/upstream/current: . bindings bindings/python bindings/python/examples bindings/python/tests bindings/python/tests/resources docs docs/reference docs/reference/html docs/reference/tmpl docs/reference/xml m4 po src tests tools

djpig at alioth.debian.org djpig at alioth.debian.org
Mon Nov 12 21:03:06 UTC 2007


Author: djpig
Date: 2007-11-12 21:03:04 +0000 (Mon, 12 Nov 2007)
New Revision: 251

Added:
   libgpod/branches/upstream/current/README.SysInfo
   libgpod/branches/upstream/current/bindings/python/examples/save_photos.py
   libgpod/branches/upstream/current/bindings/python/tests/resources/tiny.png
   libgpod/branches/upstream/current/bindings/python/tests/tests.py
   libgpod/branches/upstream/current/m4/gtk-doc.m4
   libgpod/branches/upstream/current/m4/intltool.m4
   libgpod/branches/upstream/current/po/POTFILES.skip
   libgpod/branches/upstream/current/po/ro.po
   libgpod/branches/upstream/current/src/itdb_sha1.c
   libgpod/branches/upstream/current/src/itdb_sha1.h
   libgpod/branches/upstream/current/src/itdb_sysinfo.c
   libgpod/branches/upstream/current/src/sha1.c
   libgpod/branches/upstream/current/src/sha1.h
   libgpod/branches/upstream/current/tests/test-checksum.c
   libgpod/branches/upstream/current/tests/test-fw-id.c
   libgpod/branches/upstream/current/tools/
   libgpod/branches/upstream/current/tools/20-libgpod-sysinfo-extended.fdi
   libgpod/branches/upstream/current/tools/Makefile.am
   libgpod/branches/upstream/current/tools/Makefile.in
   libgpod/branches/upstream/current/tools/hal-callout.c
   libgpod/branches/upstream/current/tools/ipod-scsi-inquiry.c
   libgpod/branches/upstream/current/tools/read-sysinfoextended-sgutils.c
Removed:
   libgpod/branches/upstream/current/src/glib-compat.h
Modified:
   libgpod/branches/upstream/current/ChangeLog
   libgpod/branches/upstream/current/Makefile.am
   libgpod/branches/upstream/current/Makefile.in
   libgpod/branches/upstream/current/NEWS
   libgpod/branches/upstream/current/README
   libgpod/branches/upstream/current/TROUBLESHOOTING
   libgpod/branches/upstream/current/aclocal.m4
   libgpod/branches/upstream/current/bindings/Makefile.in
   libgpod/branches/upstream/current/bindings/python/Makefile.am
   libgpod/branches/upstream/current/bindings/python/Makefile.in
   libgpod/branches/upstream/current/bindings/python/README
   libgpod/branches/upstream/current/bindings/python/README.in
   libgpod/branches/upstream/current/bindings/python/examples/Makefile.am
   libgpod/branches/upstream/current/bindings/python/examples/Makefile.in
   libgpod/branches/upstream/current/bindings/python/examples/coverart_fetch.py
   libgpod/branches/upstream/current/bindings/python/gpod.i.in
   libgpod/branches/upstream/current/bindings/python/ipod.py
   libgpod/branches/upstream/current/bindings/python/tests/Makefile.am
   libgpod/branches/upstream/current/bindings/python/tests/Makefile.in
   libgpod/branches/upstream/current/compile
   libgpod/branches/upstream/current/config.guess
   libgpod/branches/upstream/current/config.h.in
   libgpod/branches/upstream/current/config.sub
   libgpod/branches/upstream/current/configure
   libgpod/branches/upstream/current/configure.ac
   libgpod/branches/upstream/current/depcomp
   libgpod/branches/upstream/current/docs/Makefile.in
   libgpod/branches/upstream/current/docs/reference/Makefile.in
   libgpod/branches/upstream/current/docs/reference/html/ch01.html
   libgpod/branches/upstream/current/docs/reference/html/index.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Artwork.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Device.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-File-handling-functions.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Low-level-functions.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Photo-database.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Playlists.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Smart-Playlists.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-The-Itdb-iTunesDB-structure.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Time-handling.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Tracks.html
   libgpod/branches/upstream/current/docs/reference/tmpl/artwork.sgml
   libgpod/branches/upstream/current/docs/reference/tmpl/device.sgml
   libgpod/branches/upstream/current/docs/reference/tmpl/itunesdb-db.sgml
   libgpod/branches/upstream/current/docs/reference/xml/artwork.xml
   libgpod/branches/upstream/current/docs/reference/xml/device.xml
   libgpod/branches/upstream/current/docs/reference/xml/itunesdb-db.xml
   libgpod/branches/upstream/current/docs/reference/xml/smart-playlists.xml
   libgpod/branches/upstream/current/docs/reference/xml/track.xml
   libgpod/branches/upstream/current/install-sh
   libgpod/branches/upstream/current/intltool-extract.in
   libgpod/branches/upstream/current/intltool-merge.in
   libgpod/branches/upstream/current/intltool-update.in
   libgpod/branches/upstream/current/libgpod-1.0.pc.in
   libgpod/branches/upstream/current/ltmain.sh
   libgpod/branches/upstream/current/m4/Makefile.in
   libgpod/branches/upstream/current/m4/python.m4
   libgpod/branches/upstream/current/missing
   libgpod/branches/upstream/current/mkinstalldirs
   libgpod/branches/upstream/current/po/Makefile.in.in
   libgpod/branches/upstream/current/po/POTFILES.in
   libgpod/branches/upstream/current/po/de.po
   libgpod/branches/upstream/current/po/es.po
   libgpod/branches/upstream/current/po/fr.po
   libgpod/branches/upstream/current/po/he.po
   libgpod/branches/upstream/current/po/it.po
   libgpod/branches/upstream/current/po/ja.po
   libgpod/branches/upstream/current/po/sv.po
   libgpod/branches/upstream/current/py-compile
   libgpod/branches/upstream/current/src/Makefile.am
   libgpod/branches/upstream/current/src/Makefile.in
   libgpod/branches/upstream/current/src/db-artwork-debug.c
   libgpod/branches/upstream/current/src/db-artwork-parser.c
   libgpod/branches/upstream/current/src/db-artwork-writer.c
   libgpod/branches/upstream/current/src/db-image-parser.c
   libgpod/branches/upstream/current/src/db-image-parser.h
   libgpod/branches/upstream/current/src/db-itunes-parser.h
   libgpod/branches/upstream/current/src/db-parse-context.c
   libgpod/branches/upstream/current/src/db-parse-context.h
   libgpod/branches/upstream/current/src/itdb.h
   libgpod/branches/upstream/current/src/itdb_artwork.c
   libgpod/branches/upstream/current/src/itdb_device.c
   libgpod/branches/upstream/current/src/itdb_device.h
   libgpod/branches/upstream/current/src/itdb_itunesdb.c
   libgpod/branches/upstream/current/src/itdb_photoalbum.c
   libgpod/branches/upstream/current/src/itdb_private.h
   libgpod/branches/upstream/current/src/itdb_track.c
   libgpod/branches/upstream/current/src/ithumb-writer.c
   libgpod/branches/upstream/current/tests/Makefile.am
   libgpod/branches/upstream/current/tests/Makefile.in
   libgpod/branches/upstream/current/tests/itdb_main.c
   libgpod/branches/upstream/current/tests/test-covers.c
   libgpod/branches/upstream/current/tests/test-init-ipod.c
   libgpod/branches/upstream/current/tests/test-photos.c
Log:
[svn-upgrade] Integrating new upstream version, libgpod (0.6.0)

Modified: libgpod/branches/upstream/current/ChangeLog
===================================================================
--- libgpod/branches/upstream/current/ChangeLog	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/ChangeLog	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,6 +1,603 @@
+====== libgpod 0.6.0 ======
+
+2007-11-10  Christophe Fergeau <teuf at gnome.org>
+
+	* Makefile.am: add README.SysInfo to EXTRADIST
+
+2007-11-10  Christophe Fergeau <teuf at gnome.org>
+
+	* NEWS: update for 0.6.0 release
+	* README.SysInfo: explain how to get the firewire id from an iPod Touch
+
+2007-11-10  Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* src/db-artwork-parser.c (parse_mhba): fix double g_free on mhba
+	  chunks with multiple mhods. Currently only mhods of type 1 are
+	  handled, the rest (type 2: image transition style) are being
+	  discarded.
+
+	* src/itdb_device.c: added photo thumbnail definitions for iPod
+	  Touch. I'm not sure how reasonable the "PHOTO_LARGE,
+	  _FULL_SCREEN, _TV_SCREEN" classification is, however...
+
+	* src/itdb_device.c: use the same photo thumbnail definitions for
+	  the iPhone as well as the iPod Touch until further input is
+	  received.
+
+2007-11-09  Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* src/db-parse-context.c (db_parse_context_get_m_header_internal):
+	  fixed memory leak.
+
+2007-11-08  Christophe Fergeau <teuf at gnome.org>
+
+	* src/itdb_device.c: (itdb_device_requires_checksum): the iPod Touch
+	needs a firewire id as well
+
+2007-11-08  Christophe Fergeau  <teuf at gnome.org>
+
+	* tools/hal-callout.c: (mount_ipod): use g_get_tmp_dir instead of
+	hardcoding /tmp
+
+2007-11-07  Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* tools/hal-callout.c (mount_ipod): fix bug that prevented
+	  creation of the SysInfoExtended file if it hadn't already
+	  existed.
+	  Add copyright header.
+
+	* tools/ipod-scsi-inquiry.c: added project name to the copyright
+	  header. 
+
+2007-11-06  Christophe Fergeau  <teuf at gnome.org>
+
+	* configure.ac: raise version number and soname in preparation for a
+	0.6.0 release
+
+2007-11-06  Christophe Fergeau  <teuf at gnome.org>
+
+	* configure.ac:
+	* tools/20-libgpod-sysinfo-extended.fdi:
+	* tools/Makefile.am:
+	* tools/hal-callout.c: 
+	* tools/ipod-scsi-inquiry.c: 
+	* tools/read-sysinfoextended-sgutils.c: add hal callout which
+	automatically write SysinfoExtended to iPods when they are plugged
+	if it's properly installed
+
+2007-11-06  Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* itdb_itunesdb.c (itdb_create_directories): Add support for
+	  iPod Touch (wrong directories were created).
+
+2007-11-04  Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* itdb_itunesdb.c (itdb_create_directories): Add support for
+	  iPhones (wrong directories were created). Thanks to Jesse
+	  Bouwman for the patch.
+	
+	Added support for video output of photos for iPod Nano Videos and
+	iPod Classics.
+
+	* src/ithumb-writer.c
+	  (pack_I420): added packer for iPod Nano Video and iPod Classic
+	  TV output photo format.
+	  (itdb_write_ithumb_files): make sure only valid thumbnail types
+	  are written.
+
+	* src/db-image-parser.h: added declaration for
+	  itdb_thumb_type_is_valid_for_db() 
+
+	* src/itdb_photoalbum.c (itdb_photodb_add_photo_internal): make
+	  sure only photo thumbnails are added.
+
+	* src/db-artwork-writer.c
+
+	  (write_mhii): correctly skip unneeded thumbnails (thumbnails not
+	  relevant for the current iPod type).
+
+	  (should_write): renamed to itdb_thumb_type_is_valid_for_db()
+
+	  src/itdb.h
+	  src/itdb_artwork.c: minor formatting.
+
+2007-10-30  Christophe Fergeau  <christophe at anevia.com>
+
+	Additional clean-ups after the glib requirement bumping pointed out by
+	tmz on IRC
+
+	* libgpod-1.0.pc.in: bump glib requirement there as well
+	* src/Makefile.am:
+	* src/db-parse-context.c:
+	* src/glib-compat.h:
+	* src/itdb_artwork.c:
+	* src/itdb_itunesdb.c:
+	* src/itdb_photoalbum.c:
+	* src/itdb_private.h:
+	* src/ithumb-writer.c: get rid of glib-compat.h since we raised the
+	  minimum version to 2.8
+
+2007-10-30  Christophe Fergeau <teuf at gnome.org>
+
+	Patch from Filippo Giunchedi <filippo at esaurito.net>
+
+	* src/db-artwork-debug.c: (dump_mhni): another endianness fix
+
+2007-10-29  Christophe Fergeau <teuf at gnome.org>
+
+	* src/itdb_artwork.c:
+	* src/ithumb-writer.c: replace // comments with /* */ pairs, fixes
+	  compilation on my machine
+
+2007-10-29  Christophe Fergeau <teuf at gnome.org>
+
+	Patch from Filippo Giunchedi <filippo at esaurito.net>
+
+	* src/itdb_artwork.c: add I420 unpacker
+	* src/itdb_device.c: iPod classic full screen photo format is I420
+	* src/itdb_device.h: add I420 format
+	* src/ithumb-writer.c: add stub for an I420 packer
+
+2007-10-29  Christophe Fergeau <teuf at gnome.org>
+
+	* src/itdb_device.c: the iPod Touch probably uses the same image format
+	  as the iPhone
+
+2007-10-29  Christophe Fergeau <teuf at gnome.org>
+
+	* configure.ac: raise glib requirement to 2.8 (because of
+	  g_file_set_contents)
+
+2007-10-29  Christophe Fergeau <teuf at gnome.org>
+
+	* configure.ac: remove mremap check
+	* src/db-artwork-writer.c: get rid mmap/mremap use
+
+2007-10-29  Christophe Fergeau <teuf at gnome.org>
+
+	* src/db-artwork-writer.c: reread the pointer for memory mapped
+	  buffers when it may have changed
+	    
+	  Artwork writing works by mapping structs to memory and by
+	  directly accessing/modifying it. This works until we need to
+	  move the mmap base address. This patch makes sure we reset the
+	  struct mapping every time the mmap base pointer may have changed
+
+2007-10-27 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+        * src/itdb_device.c (ipod_classic_1_artwork_info)
+	  src/ithumb-writer.c (pack_RGB_888, pack_RGB_565, pack_RGB_555,
+	                       pack_rec_RGB_555, ithumb_writer_write_thumbnail)
+	  src/db-image-parser.h (_888 definitions)
+	  src/itdb_device.h (RGB888 thumb format enum definitions)
+	  src/itdb_artwork.c (unpack_RGB_888, unpack_experimental,
+	                      itdb_thumb_get_rgb_data)
+
+	  Partial support for photos on new iPod Nano 3G and iPod
+	  Classics.
+
+	  Photos should be displayed correctly on the iPod but the video
+	  output will show garbage (couldn't try video output per se, but
+	  from the data iTunes produces this is clear).
+
+2007-10-24  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/db-artwork-writer.c: (write_mhif), (should_write),
+	  (write_mhlf): don't hardcode the number of mhif entries we
+	  write, but write as many entries as the number of thumbnail
+	  formats supported by the device
+
+2007-10-24  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/db-artwork-writer.c: (write_mhla): yet another missing endianness
+	conversion
+
+2007-10-24  Christophe Fergeau  <teuf at gnome.org>
+
+	Patch from Filippo Giunchedi <filippo at esaurito.net>
+
+	* src/db-artwork-parser.c: (parse_mhba): another missing endianness
+	conversion
+
+2007-10-21  Christophe Fergeau  <teuf at gnome.org>
+
+	Patch from Filippo Giunchedi <filippo at esaurito.net>
+
+	* src/db-artwork-debug.c: (dump_mhod_type_3): add missing byte-swap
+	which resulted in over huge allocation
+
+2007-10-21  Christophe Fergeau  <teuf at gnome.org>
+
+	Patch from Filippo Giunchedi <filippo at esaurito.net>
+
+	* src/db-artwork-debug.c: (dump_mhba): fix dumping function in debug
+	mode
+	* src/db-itunes-parser.h: indentation fixes
+
+2007-10-21  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_photoalbum.c: (itdb_get_photos_dir):
+	* src/ithumb-writer.c: (ipod_image_get_ithmb_filename):
+
+2007-10-16  Todd Zullinger  <tmzullinger at users.sourceforge.net>
+
+	* autogen.sh: add --enable-gtk-doc to the gnome-autogen.sh
+	call. This allows make distcheck to work correctly and to use
+	an unmodified copy of gnome-autogen.sh from the upstream
+	gnome-common package.
+
+2007-10-16  Christophe Fergeau  <teuf at gnome.org>
+
+	* gnome-autogen.sh: switch to newer version of that file 
+	(with automake 1.10 support)
+
+2007-10-09  Christophe Fergeau <teuf at gnome.org>
+
+	* src/itdb_device.c: (itdb_device_requires_checksum): add missing 
+	(unreachable) return
+
+2007-10-07  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_device.c: (itdb_device_requires_checksum):
+	* src/itdb_itunesdb.c: (write_db_checksum):
+	* src/itdb_private.h: add an itdb_device_requires_checksum function so 
+	that we only error out because of checksum writing issues on ipods which 
+	require a checksum. Ideally, we should restore the old file when there is
+	a fatal checksum writing error, but libgpod isn't currently doing that
+
+2007-10-05  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_sha1.c: (generate_key): move cryptic calculations 
+	into the precomputed tables. Patch by Simon Schulz.
+
+2007-10-05  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_device.c:
+          Remove duplicate reference to ithmb file
+
+          The iPod classic artwork formats contained two references to an 
+	  ithmb file using 1060 as its filename. This confuses the ithumb 
+	  writing code which can't handle that properly. Fixes that for now by
+	  removing the entry. We could probably be more clever in 
+	  itdb_write_ithumb_files and generate two lists of iThumbWriters,
+	  one for artwork and another one for photos. This would fix that bug 
+	  as well
+
+2007-10-05  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/db-artwork-writer.c: (itdb_track_filter_thumbnails),
+	(itdb_filter_thumbnails), (ipod_write_artwork_db):
+	* src/itdb_track.c: (itdb_track_set_thumbnails_internal):
+         Set thumbnails for all known cover types in itdb_track_set_thumbnails
+
+         itdb_track_set_thumbnails can be called when the track isn't attached
+	 to any device (eg it's natural to create a track, fill its metadata 
+	 including the cover art, and then add it to an iTunesDB and its 
+	 associated device). This means we can't know which artwork types the
+	 iPod corresponding to the iTunesDB will be able to handle. i
+	 Consequently, we create Itdb_Thumb objects for all known cover types,
+	 and we filter that list when we don't have a choice (ie when we're 
+	 about to write the ArtworkDB and the thumbnails)
+
+2007-10-05  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_itunesdb.c: (itdb_write_file): set Itdb_Track::id
+	before writing the artwork since artwork writing uses them
+
+2007-10-01  Christophe Fergeau <teuf at gnome.org>
+
+	* README.SysInfo: add explanations about how the iPod needs to be 
+	set up so that libgpod can read the firewire id
+
+2007-10-01  Christophe Fergeau <teuf at gnome.org>
+
+	* src/itdb_itunesdb.c: get rid of unused headers
+
+2007-09-26 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+        * src/itdb_itunesdb.c (mk_mhit): write extended mhit header for
+	  new iPod Nanos and Classics so they display artwork (Christophe)
+
+	* src/db-artwork-writer (ipod_artwork_set_ids): modify the
+	  assignment of IDs for artwork (Christophe)
+
+	* src/itdb_device.c: added artwork definition file (cover only)
+	  for iPod Nano Videos (3G). Thanks to Simon Schulz.
+
+	* src/itdb_itunesdb.c: integrate checksum writing into the
+	  creation of the iTunesDB instead of modifying the iTunesDB file
+	  in place (Christophe)
+
+	* src/itdb_device.c: re-use artwork definition for iPod classic
+	  also for iPod Nanos 3G.
+
+2007-09-30  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_itunesdb.c: (itdb_write_checksum): remove debugging g_print
+
+2007-09-30  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_device.c: fix typo and don't mark iPod Classic as read-only
+
+2007-09-28  Christophe Fergeau  <teuf at gnome.org>
+
+	* tools/read-sysinfoextended-sgutils.c: (main): use g_build_filename
+	instead of itdb_resolve_filename since the latter will fail if
+	SysInfoExtended does not already exist
+
+2007-09-27  Christophe Fergeau  <teuf at gnome.org>
+
+	* configure.ac: build tool to generate the iPod SysInfoExtended file
+	if sgutils is detected
+	* Makefile.am:
+	* tools/
+	* tools/Makefile.am: changes to optionally build the sgutils-based tool
+	* tools/read-sysinfoextended-sgutils.c: (do_sg_inquiry),
+	(read_sysinfo_extended), (main): new file, reads the SysInfoExtended
+	file from the iPod using SCSI queries
+
+2007-09-27  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_itunesdb.c: (calculate_db_checksum),
+	(itdb_write_checksum):
+	* src/itdb_sha1.c: (itdb_compute_hash):
+	* src/itdb_sha1.h: propagate the calculated checksum length as an out
+	parameter to the checksumming functions, fixes a bug where a partial 
+	checksum would be written if it contained a \0
+	* tests/test-checksum.c: (calculate_db_checksum): update test program
+	to that API change
+
+2007-09-26 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* src/itdb_device.c: remove "read only" notice on Nano Video
+          description.
+
+	* ChangeLog: explained better about SysInfo* files.
+
+2007-09-24 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	** code courtesy of Christophe Fergeau **
+
+	* src/itdb_itunesdb.c (mk_mhbd): write extended header needed
+          for new iPod Nanos (3G Video) and iPod Classics (must fill
+          in SysInfo or SysInfoFileExtended -- see below).
+
+	  src/itdb_sysinfo.c
+	  src/itdb_device.c
+	  src/itdb_device.h: Code to parse SysInfoExtended and SysInfo
+	  for the FireWireGUID. You must either copy the iPod
+	  description XML file to Device/SysInfoExtended or add a line
+	  'FirewireGuid: 000A27....' to Device/SysInfo. You can get
+	  your FirewireGuid by looking at /proc/bus/usb/devices and
+	  search for a serial number close to the "Apple" entry. The
+	  serial number will probably start with 000A27.
+
+	* src/sha1.c
+	  src/sha1.h
+	  src/itdb_sha1.c
+	  src/itdb_sha1.h
+	  New files for obscure hash generation code.
+
+	* src/Makefile.am: added new files.
+
+        * tests/test-checksum.c
+	  tests/test-fw-id.c
+	  tests/Makefile.am: test programs to retrieve the
+	  FirewireGuid and calculate/write the obscure hash.
+
+2007-09-15 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* src/itdb_device.c:
+	  Re-organized the representation of iPod models -- instead of 1st
+	  to 7th generation more well-known names like "iPod Nano 1G",
+	  "iPod Nano 2G"... are used.
+
+	  Added untested support for iPod Classic Artwork. Not clear which
+	  thumbnail type is used for what.
+
+	  src/itdb_track.c (itdb_track_set_thumbnails_internal):
+	  Please note: itdb_track_set_thumbnails() needs to be thought
+	  over to make sure all thumbnail types are added properly. Please
+	  see note in itdb_track.c for details.
+
+	  src/itdb.h: Added symbols for the new representation indicated
+	  above: ITDB_IPOD_GENERATION_*, ITDB_IPOD_MODEL_*
+
+2007-09-08 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* src/db-image-parser.c
+	  src/itdb_device.c
+	  src/ithumb-writer.c
+	  src/db-image-parser.h
+	  src/itdb_device.h
+	  src/itdb.h
+	  src/itdb_artwork.c
+	  tests/test-covers.c: added support to read and write coverart on
+	  iPhones. New cover formats are: MEDIUM, XLARGE, XSMALL, SMEDIUM
+	  -- should be renamed if function becomes clearer.
+
+	  Introduced New image formats for the thumbnails
+	  (THUMB_FORMAT_RGB555, THUMB_FORMAT_REC_RGB555). Coding/decoding
+	  functions are pack_/unpack_RGB_555() and
+	  pack_/unpack_REC_RGB_555().
+
+	  Introduced possible padding for thumbnail files
+	  (Itdb_ArtworkFormat).
+
+	  * src/db-artwork-parser.c: make output filename unique.
+
+2007-09-04 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* itdb_itunesdb.c (itdb_get_control_dir):
+	  added support for iPhones
+
+	* itdb.h: added ITDB_IPOD_MODEL_IPHONE_1 enum
+
+	* itdb_device.c: added iPhone description
+	
+	TODO: define artwork definition in itdb_device.c -- currently
+	artwork is not supported.
+
+2007-08-18 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* src/db-artwork-writer.c (write_mhod_type_3): don't assume that
+	  length of a utf16 string is twice the length of a utf8 string
+	  (even though this was safe here because the strings in question
+	  were ASCII). Thanks to Javier Kohen for the patch.
+
+	  (write_mhod_type_1), (write_mhod_type_3):
+	  Don't pad by 4 bytes as this achieves nothing. Thanks to Javier
+	  Kohen to point this out.
+
+	* src/itdb_itunesdb.c: make calls to utf16_strlen()
+	  unnecessary. Thanks to Javier Kohen for the patch.
+
+	* src/itdb_itunesdb (itdb_parse): don't call
+	  ipod_parse_artwork_db() if iTunesDB was not read successfully.
+
+	* src/itdb_artwork.c (itdb_thumb_get_filename): check
+          returnvalue of strchr(). Thanks to Javier Kohen.
+
+2007-08-07  Nicholas Piper  <nicholas at users.sourceforge.net>
+
+	* bindings/python/gpod.i.in: Return an integer for time_t (note,
+	no to/from mac timestamp mapping required), accept an integer or
+	datetime object for a time_t
+
+	* bindings/python/ipod.py (Track.__getitem__): for the Python OO
+	interface, map reading time_* attributes in Tracks to a datetime
+	object
+
+	* bindings/python/tests/tests.py (TestiPodFunctions.testDatestampSetting): 
+	test reading/writing the Track timestamp attributes
+
+2007-08-04  Todd Zullinger  <tmzullinger at users.sourceforge.net>
+
+	* src/db-parse-context.h:
+	  remove duplicate copyright header
+
+2007-07-31  Todd Zullinger  <tmzullinger at users.sourceforge.net>
+
+	* bindings/python
+	  bindings/python/examples/coverart_fetch.py
+	  bindings/python/examples/save_photos.py
+	  bindings/python/gpod.i.in
+	  bindings/python/ipod.py
+	  bindings/python/tests
+	  bindings/python/tests/resources/tiny.png
+	  bindings/python/tests/tests.py
+	  configure.ac
+	  m4/python.m4
+	  TROUBLESHOOTING:
+	  merge changes from the bug-1723660 branch
+
+	* bindings/python/ipod.py:
+	  ignore reserved (and chapterdata) attributes which are
+	  returned as gpointers
+	  cleanup some trailing whitespace
+
+2007-07-27  Todd Zullinger  <tmzullinger at users.sourceforge.net>
+
+	* bindings/python/gpod.i.in:
+	  s/top_srcdir/top_builddir to fix make distcheck
+
+	* configure.ac
+	  m4/python.m4:
+	  don't make the python gtk module a hard requirement
+
+	* TROUBLESHOOTING:
+	  note additional requirements for full python photo/thumbnail
+	  support
+
+2007-07-13  Nicholas Piper  <nicholas at users.sourceforge.net>
+
+	* bindings/python/ipod.py (Track.set_coverart_from_file): Rename
+	set_thumbnail function to set_coverart_from_file
+
+	* bindings/python/ipod.py Improve support for adding
+	Photos. Thanks to John Carr.
+
+	* bindings/python/examples/coverart_fetch.py: Adjust to
+	demonstrate new gtk pixbuf based coverart API
+
+2007-07-13  Todd Zullinger <tmzullinger at users.sourceforge.net>
+
+	* bindings/python/examples/Makefile.am:
+	  add save_photos.py to EXTRA_DIST
+
+2007-07-12 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* po/ro.po: nobody told me I forgot to actually add this file to
+	  the repository...
+
+2007-07-12  Nicholas Piper  <nicholas at users.sourceforge.net>
+
+	* bindings/python/gpod.i.in: Add version and version_info
+	attributes to the Python bindings
+
+2007-07-11  Todd Zullinger <tmzullinger at users.sourceforge.net>
+
+	* bindings/python/Makefile.am:
+	  try to convert the xml docs into python docstrings even when
+	  ENABLE_GTK_DOC isn't set so that tarball builds can get the
+	  full documentation in python.
+
+2007-07-07 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* configure.ac
+	  po/ro.po: added Romanian catalog. Thanks to Alex Eftimie.
+
+2007-07-05  Todd Zullinger <tmzullinger at users.sourceforge.net>
+
+	* configure.ac:
+	  s/PACKAGE_/LIBGPOD_/ in configuration output
+
+	* src/itdb.h:
+	  remove references to Mac type timestamps
+
+	* README
+	  docs/reference/tmpl/itunesdb-db.sgml:
+	  fix a few typos
+
+2007-07-04  Todd Zullinger <tmzullinger at users.sourceforge.net>
+
+	* po/fr.po:
+	  updated French translation (thanks to Eric Lassauge)
+
+2007-07-02  Todd Zullinger <tmzullinger at users.sourceforge.net>
+
+	* TROUBLESHOOTING:
+	  python bindings now use the mutagen module instead of eyeD3
+
+2007-06-29 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+        * po/libgpod.pot: added to SVN repository (new translators may be
+	  looking for it -- like yesterday).
+
+	* po/*.po: run 'make update-po'.
+
+2007-06-29  Todd Zullinger <tmzullinger at users.sourceforge.net>
+
+	* bindings/python/tests/Makefile.am:
+	  include tests.py in EXTRA_DIST
+
+2007-06-29 Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* src/itdb_artwork.c (itdb_thumb_free, itdb_thumb_duplicate): fix
+	  compile time error when compiling without GDKPIXBUF. Alternative
+	  fix: add '#include <glib-object.h>'. Thanks to Olivier Crête.
+
+2007-06-28  Nicholas Piper  <nicholas at users.sourceforge.net>
+
+	* bindings/python/ipod.py: Remove hard-coding of
+	  Track/Artwork/Album attributes
+
 2007-06-23  Todd Zullinger <tmzullinger at users.sourceforge.net>
 
 	* configure.ac:
+	  bump version to 0.5.3SVN for further development
+
+	* configure.ac:
 	  bump version for 0.5.2 release
 
 2007-06-23 Jorg Schuler <jcsjcs at users.sourceforge.net>

Modified: libgpod/branches/upstream/current/Makefile.am
===================================================================
--- libgpod/branches/upstream/current/Makefile.am	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/Makefile.am	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,4 +1,4 @@
-SUBDIRS=src tests po m4 docs bindings 
+SUBDIRS=src tools tests po m4 docs bindings 
 
 # build documentation when doing a distcheck.
 DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc
@@ -8,6 +8,7 @@
 
 EXTRA_DIST =                    \
 	TROUBLESHOOTING		\
+	README.SysInfo		\
         intltool-merge.in       \
         intltool-update.in      \
         intltool-extract.in     \

Modified: libgpod/branches/upstream/current/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/Makefile.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# Free Software Foundation, Inc.
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
@@ -21,7 +21,6 @@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 top_builddir = .
-
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
@@ -35,7 +34,56 @@
 NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
+build_triplet = @build@
 host_triplet = @host@
+DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
+	$(srcdir)/Makefile.in $(srcdir)/config.h.in \
+	$(srcdir)/libgpod-1.0.pc.in $(top_srcdir)/configure AUTHORS \
+	COPYING ChangeLog INSTALL NEWS compile config.guess config.sub \
+	depcomp install-sh ltmain.sh missing mkinstalldirs py-compile
+subdir = .
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.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 configure.status.lineno
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = config.h
+CONFIG_CLEAN_FILES = libgpod-1.0.pc
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+	html-recursive info-recursive install-data-recursive \
+	install-exec-recursive install-info-recursive \
+	install-recursive installcheck-recursive installdirs-recursive \
+	pdf-recursive ps-recursive uninstall-info-recursive \
+	uninstall-recursive
+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 = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
+pkgconfigDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(pkgconfig_DATA)
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+distdir = $(PACKAGE)-$(VERSION)
+top_distdir = $(distdir)
+am__remove_distdir = \
+  { test ! -d $(distdir) \
+    || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
+         && rm -fr $(distdir); }; }
+DIST_ARCHIVES = $(distdir).tar.gz
+GZIP_ENV = --best
+distuninstallcheck_listfiles = find . -type f -print
+distcleancheck_listfiles = find . -type f -print
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -80,10 +128,19 @@
 GREP = @GREP@
 GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
 GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
 HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
 HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
 HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
 HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
 HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
 HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
 HTML_DIR = @HTML_DIR@
@@ -97,14 +154,12 @@
 INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
 INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_ICONV = @INTLTOOL_ICONV@
 INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
 INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@
-INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@
 INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
 INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
 INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
 INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
@@ -116,12 +171,14 @@
 INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
 INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@
 INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
 INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 LDFLAGS = @LDFLAGS@
 LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@
 LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
 LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
 LIBGPOD_VERSION = @LIBGPOD_VERSION@
 LIBOBJS = @LIBOBJS@
@@ -149,6 +206,8 @@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
 PYTHON = @PYTHON@
 PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 PYTHON_INCLUDES = @PYTHON_INCLUDES@
@@ -159,6 +218,7 @@
 RANLIB = @RANLIB@
 SED = @SED@
 SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
 SHELL = @SHELL@
 STRIP = @STRIP@
 SWIG = @SWIG@
@@ -178,6 +238,8 @@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -203,6 +265,7 @@
 localedir = @localedir@
 localstatedir = @localstatedir@
 mandir = @mandir@
+mkdir_p = @mkdir_p@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
 pkgpyexecdir = @pkgpyexecdir@
@@ -216,66 +279,61 @@
 sharedstatedir = @sharedstatedir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-SUBDIRS = src tests po m4 docs bindings 
+SUBDIRS = src tools tests po m4 docs bindings 
 
 # build documentation when doing a distcheck.
 DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc
-
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = libgpod-1.0.pc
-
 EXTRA_DIST = \
 	TROUBLESHOOTING		\
+	README.SysInfo		\
         intltool-merge.in       \
         intltool-update.in      \
         intltool-extract.in     \
         libgpod-1.0.pc.in
 
-
 DISTCLEANFILES = \
         intltool-extract        \
         intltool-merge          \
         intltool-update
 
-subdir = .
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = config.h
-CONFIG_CLEAN_FILES = libgpod-1.0.pc
-DIST_SOURCES =
-DATA = $(pkgconfig_DATA)
-
-
-RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
-	ps-recursive install-info-recursive uninstall-info-recursive \
-	all-recursive install-data-recursive install-exec-recursive \
-	installdirs-recursive install-recursive uninstall-recursive \
-	check-recursive installcheck-recursive
-DIST_COMMON = README $(srcdir)/Makefile.in $(srcdir)/configure AUTHORS \
-	COPYING ChangeLog INSTALL Makefile.am NEWS aclocal.m4 compile \
-	config.guess config.h.in config.sub configure configure.ac \
-	depcomp install-sh libgpod-1.0.pc.in ltmain.sh missing \
-	mkinstalldirs py-compile
-DIST_SUBDIRS = $(SUBDIRS)
 all: config.h
 	$(MAKE) $(AM_MAKEFLAGS) all-recursive
 
 .SUFFIXES:
-
-am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
- configure.lineno
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+am--refresh:
+	@:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
+	      cd $(srcdir) && $(AUTOMAKE) --gnu  \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  Makefile'; \
 	cd $(top_srcdir) && \
 	  $(AUTOMAKE) --gnu  Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
-	cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)
+.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_builddir)/config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 	$(SHELL) ./config.status --recheck
-$(srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(srcdir)/configure.ac $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES)
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
 	cd $(srcdir) && $(AUTOCONF)
-
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ configure.ac 
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
 	cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
 
 config.h: stamp-h1
@@ -287,14 +345,14 @@
 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
 	@rm -f stamp-h1
 	cd $(top_builddir) && $(SHELL) ./config.status config.h
-
-$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(top_srcdir)/configure.ac $(ACLOCAL_M4) 
+$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) 
 	cd $(top_srcdir) && $(AUTOHEADER)
-	touch $(srcdir)/config.h.in
+	rm -f stamp-h1
+	touch $@
 
 distclean-hdr:
 	-rm -f config.h stamp-h1
-libgpod-1.0.pc: $(top_builddir)/config.status libgpod-1.0.pc.in
+libgpod-1.0.pc: $(top_builddir)/config.status $(srcdir)/libgpod-1.0.pc.in
 	cd $(top_builddir) && $(SHELL) ./config.status $@
 
 mostlyclean-libtool:
@@ -306,23 +364,22 @@
 distclean-libtool:
 	-rm -f libtool
 uninstall-info-am:
-pkgconfigDATA_INSTALL = $(INSTALL_DATA)
 install-pkgconfigDATA: $(pkgconfig_DATA)
 	@$(NORMAL_INSTALL)
-	$(mkinstalldirs) $(DESTDIR)$(pkgconfigdir)
+	test -z "$(pkgconfigdir)" || $(mkdir_p) "$(DESTDIR)$(pkgconfigdir)"
 	@list='$(pkgconfig_DATA)'; for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f="`echo $$p | sed -e 's|^.*/||'`"; \
-	  echo " $(pkgconfigDATA_INSTALL) $$d$$p $(DESTDIR)$(pkgconfigdir)/$$f"; \
-	  $(pkgconfigDATA_INSTALL) $$d$$p $(DESTDIR)$(pkgconfigdir)/$$f; \
+	  f=$(am__strip_dir) \
+	  echo " $(pkgconfigDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
+	  $(pkgconfigDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgconfigdir)/$$f"; \
 	done
 
 uninstall-pkgconfigDATA:
 	@$(NORMAL_UNINSTALL)
 	@list='$(pkgconfig_DATA)'; for p in $$list; do \
-	  f="`echo $$p | sed -e 's|^.*/||'`"; \
-	  echo " rm -f $(DESTDIR)$(pkgconfigdir)/$$f"; \
-	  rm -f $(DESTDIR)$(pkgconfigdir)/$$f; \
+	  f=$(am__strip_dir) \
+	  echo " rm -f '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
+	  rm -f "$(DESTDIR)$(pkgconfigdir)/$$f"; \
 	done
 
 # This directory's subdirectories are mostly independent; you can cd
@@ -332,7 +389,13 @@
 #     (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):
-	@set fnord $$MAKEFLAGS; amf=$$2; \
+	@failcom='exit 1'; \
+	for f in x $$MAKEFLAGS; do \
+	  case $$f in \
+	    *=* | --[!k]*);; \
+	    *k*) failcom='fail=yes';; \
+	  esac; \
+	done; \
 	dot_seen=no; \
 	target=`echo $@ | sed s/-recursive//`; \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -344,7 +407,7 @@
 	    local_target="$$target"; \
 	  fi; \
 	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
 	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@@ -352,7 +415,13 @@
 
 mostlyclean-recursive clean-recursive distclean-recursive \
 maintainer-clean-recursive:
-	@set fnord $$MAKEFLAGS; amf=$$2; \
+	@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)' ;; \
@@ -373,7 +442,7 @@
 	    local_target="$$target"; \
 	  fi; \
 	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -384,14 +453,6 @@
 	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
-ETAGS = etags
-ETAGSFLAGS =
-
-CTAGS = ctags
-CTAGSFLAGS =
-
-tags: TAGS
-
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
@@ -400,19 +461,22 @@
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
 	mkid -fID $$unique
+tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
 	tags=; \
 	here=`pwd`; \
-	if (etags --etags-include --version) >/dev/null 2>&1; then \
+	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 && \
+	    test ! -f $$subdir/TAGS || \
 	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
@@ -422,10 +486,11 @@
 	  done | \
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
-	test -z "$(ETAGS_ARGS)$$tags$$unique" \
-	  || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	     $$tags $$unique
-
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
@@ -448,24 +513,11 @@
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-top_distdir = .
-distdir = $(PACKAGE)-$(VERSION)
-
-am__remove_distdir = \
-  { test ! -d $(distdir) \
-    || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
-         && rm -fr $(distdir); }; }
-
-GZIP_ENV = --best
-distuninstallcheck_listfiles = find . -type f -print
-distcleancheck_listfiles = find . -type f -print
-
 distdir: $(DISTFILES)
 	$(am__remove_distdir)
 	mkdir $(distdir)
-	$(mkinstalldirs) $(distdir)/. $(distdir)/bindings/python $(distdir)/docs/reference $(distdir)/po
+	$(mkdir_p) $(distdir)/. $(distdir)/bindings/python $(distdir)/docs/reference $(distdir)/m4 $(distdir)/po
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
 	list='$(DISTFILES)'; for file in $$list; do \
@@ -477,7 +529,7 @@
 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
 	    dir="/$$dir"; \
-	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
 	  else \
 	    dir=''; \
 	  fi; \
@@ -492,15 +544,17 @@
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(SUBDIRS)'; for subdir in $$list; do \
+	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
-	    test -d $(distdir)/$$subdir \
-	    || mkdir $(distdir)/$$subdir \
+	    test -d "$(distdir)/$$subdir" \
+	    || $(mkdir_p) "$(distdir)/$$subdir" \
 	    || exit 1; \
+	    distdir=`$(am__cd) $(distdir) && pwd`; \
+	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
 	    (cd $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$(top_distdir)" \
-	        distdir=../$(distdir)/$$subdir \
+	        top_distdir="$$top_distdir" \
+	        distdir="$$distdir/$$subdir" \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -511,19 +565,46 @@
 	  ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
 	|| chmod -R a+r $(distdir)
 dist-gzip: distdir
-	$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
 	$(am__remove_distdir)
 
+dist-bzip2: distdir
+	tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
+	$(am__remove_distdir)
+
+dist-tarZ: distdir
+	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
+	$(am__remove_distdir)
+
+dist-shar: distdir
+	shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
+	$(am__remove_distdir)
+
+dist-zip: distdir
+	-rm -f $(distdir).zip
+	zip -rq $(distdir).zip $(distdir)
+	$(am__remove_distdir)
+
 dist dist-all: distdir
-	$(AMTAR) chof - $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
+	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
 	$(am__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
-	$(am__remove_distdir)
-	GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(AMTAR) xf -
+	case '$(DIST_ARCHIVES)' in \
+	*.tar.gz*) \
+	  GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
+	*.tar.bz2*) \
+	  bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
+	*.tar.Z*) \
+	  uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
+	*.shar.gz*) \
+	  GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
+	*.zip*) \
+	  unzip $(distdir).zip ;;\
+	esac
 	chmod -R a-w $(distdir); chmod a+w $(distdir)
 	mkdir $(distdir)/_build
 	mkdir $(distdir)/_inst
@@ -543,19 +624,20 @@
 	        distuninstallcheck \
 	  && chmod -R a-w "$$dc_install_base" \
 	  && ({ \
-	       (cd ../.. && $(mkinstalldirs) "$$dc_destdir") \
+	       (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-gzip \
-	  && rm -f $(distdir).tar.gz \
+	  && $(MAKE) $(AM_MAKEFLAGS) dist \
+	  && rm -rf $(DIST_ARCHIVES) \
 	  && $(MAKE) $(AM_MAKEFLAGS) distcleancheck
 	$(am__remove_distdir)
-	@echo "$(distdir).tar.gz is ready for distribution" | \
-	  sed 'h;s/./=/g;p;x;p;x'
+	@(echo "$(distdir) archives ready for distribution: "; \
+	  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
+	  sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
 distuninstallcheck:
 	@cd $(distuninstallcheck_dir) \
 	&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
@@ -579,8 +661,9 @@
 all-am: Makefile $(DATA) config.h
 installdirs: installdirs-recursive
 installdirs-am:
-	$(mkinstalldirs) $(DESTDIR)$(pkgconfigdir)
-
+	for dir in "$(DESTDIR)$(pkgconfigdir)"; do \
+	  test -z "$$dir" || $(mkdir_p) "$$dir"; \
+	done
 install: install-recursive
 install-exec: install-exec-recursive
 install-data: install-data-recursive
@@ -600,7 +683,7 @@
 clean-generic:
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -613,13 +696,15 @@
 distclean: distclean-recursive
 	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
 	-rm -f Makefile
-distclean-am: clean-am distclean-generic distclean-hdr distclean-libtool \
-	distclean-tags
+distclean-am: clean-am distclean-generic distclean-hdr \
+	distclean-libtool distclean-tags
 
 dvi: dvi-recursive
 
 dvi-am:
 
+html: html-recursive
+
 info: info-recursive
 
 info-am:
@@ -656,25 +741,22 @@
 
 uninstall-info: uninstall-info-recursive
 
-.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
-	clean-generic clean-libtool clean-recursive ctags \
-	ctags-recursive dist dist-all dist-gzip distcheck distclean \
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \
+	check-am clean clean-generic clean-libtool clean-recursive \
+	ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \
+	dist-shar dist-tarZ dist-zip distcheck distclean \
 	distclean-generic distclean-hdr distclean-libtool \
 	distclean-recursive distclean-tags distcleancheck distdir \
-	distuninstallcheck dvi dvi-am dvi-recursive info info-am \
-	info-recursive install install-am install-data install-data-am \
-	install-data-recursive install-exec install-exec-am \
-	install-exec-recursive install-info install-info-am \
-	install-info-recursive install-man install-pkgconfigDATA \
-	install-recursive install-strip installcheck installcheck-am \
-	installdirs installdirs-am installdirs-recursive \
-	maintainer-clean maintainer-clean-generic \
-	maintainer-clean-recursive mostlyclean mostlyclean-generic \
-	mostlyclean-libtool mostlyclean-recursive pdf pdf-am \
-	pdf-recursive ps ps-am ps-recursive tags tags-recursive \
+	distuninstallcheck dvi dvi-am html html-am info info-am \
+	install install-am install-data install-data-am install-exec \
+	install-exec-am install-info install-info-am install-man \
+	install-pkgconfigDATA install-strip installcheck \
+	installcheck-am installdirs installdirs-am maintainer-clean \
+	maintainer-clean-generic maintainer-clean-recursive \
+	mostlyclean mostlyclean-generic mostlyclean-libtool \
+	mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
 	uninstall uninstall-am uninstall-info-am \
-	uninstall-info-recursive uninstall-pkgconfigDATA \
-	uninstall-recursive
+	uninstall-pkgconfigDATA
 
 # 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.

Modified: libgpod/branches/upstream/current/NEWS
===================================================================
--- libgpod/branches/upstream/current/NEWS	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/NEWS	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,56 @@
+Overview of changes in libgpod 0.6.0
+====================================
+
+* support for iPod Classics and Video Nanos
+
+The database from these models is protected by a checksum. When this checksum 
+doesn't match the content of the iPod database, the iPod won't show any 
+track (ie it will look empty). Support for writing this checksum has been 
+implemented in this release thanks to the awesome work of a few people in
+#gtkpod. However, to calculate this checksum, a so called "firewire ID" is 
+needed which is different from iPod to iPod. Since reading it from the iPod
+requires special permissions, the firewire ID must be written in a regular 
+file on the iPod so that libgpod can find it and use it to generate the
+checksum. 
+
+libgpod installs a HAL callout to do that automatically when 
+everything is installed in an appropriate place. It can also be done manually,
+see README.SysInfo for more information.
+
+Cover art should be working except for non square covers, preliminary photo 
+support but this hasn't been widely tested yet.
+
+
+* support for iPhone and iPod Touch
+
+This requires manual user intervention: the devices must be jailbroken and 
+mounted through sshfs. The iPod Touch also needs a firewire ID which must be
+manually set, see README.SysInfo
+
+Cover art is implemented but not tested at all, ditto for photo support on 
+the iPod Touch
+
+
+* additional tools to get the firewire id from new iPods including a HAL
+  callout which will make the process totally automatic when it's properly 
+  installed. These tools need libsgutils to be installed.
+
+* endianness fixes in the artwork writing code
+* now depends on glib 2.8 or newer
+
+Huge thanks to wtbw and Simon Schulz without whom that release wouldn't have 
+been possible. Thanks as well to the people on #gtkpod for the testing they 
+provided.
+
+Other contributors to the release:
+- Jesse Bouwman
+- Alex Eftimie
+- Christophe Fergeau
+- Filippo Giunchedi
+- Javier Kohen
+- Tobias Kreisel
+- Eric Lassauge
+- Nicholas Piper
+- Jorg Schuler
+- Simon Schulz
+- Todd Zullinger

Modified: libgpod/branches/upstream/current/README
===================================================================
--- libgpod/branches/upstream/current/README	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/README	2007-11-12 21:03:04 UTC (rev 251)
@@ -16,8 +16,8 @@
 
 Quick HOWTO use libgpod for audio
 
-itdb_parse(): read the iTunesDB and ArtbookDB
-itdb_write(): write the iTunesDB and ArtbookDB
+itdb_parse(): read the iTunesDB and ArtworkDB
+itdb_write(): write the iTunesDB and ArtworkDB
 
 itdb_parse() will return a Itdb_iTunesDB structure with GLists
 containing all tracks (each track is represented by a Itdb_Track
@@ -58,13 +58,13 @@
 original music file. That's also from where the data is read when
 artwork is displayed in iTunes, and there can be more than one piece
 of artwork. libgpod does not store the artwork as tags in the original
-music file. As a consequence, if you iTunes attempts to access the
+music file. As a consequence, if iTunes attempts to access the
 artwork, it will find none, and remove libgpod's artwork. Luckily,
 iTunes will only attempt to access the artwork if you select a track
-in Tunes. (To work around this, gtkpod keeps a list of the original
+in iTunes. (To work around this, gtkpod keeps a list of the original
 filename of all artwork and silently adds the thumbnails if they were
 'lost'. Your application might want to do something similar, or you
-can supply patches for optionally! adding tags to the original music
+can supply patches for (optionally!) adding tags to the original music
 files.)
 
 The Itdb_iTunesDB, Itdb_Playlist and Itdb_Track structures each have a

Added: libgpod/branches/upstream/current/README.SysInfo
===================================================================
--- libgpod/branches/upstream/current/README.SysInfo	                        (rev 0)
+++ libgpod/branches/upstream/current/README.SysInfo	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,41 @@
+Starting with the iPod Classics and the Video Nanos, libgpod needs an 
+additional configuration step to correctly modify the iPod content. libgpod 
+needs to know the so-called iPod "firewire id", otherwise the iPod won't 
+recognize what libgpod wrote to it and will behave as if it's empty.
+
+There are two ways to set up the iPod to make libgpod able to find its firewire
+id.
+
+The 1st one is mostly automated. First, make sure you have libsgutils installed
+before running configure/autogen.sh. If you built libgpod without it, install 
+it and run configure/make/make install. You should now have an 
+ipod-read-sysinfo-extended tool available. Run it with the iPod device path 
+(eg /dev/sda) and the iPod mount point (eg /mnt/ipod) as arguments. This may 
+require root privileges. ipod-read-sysinfo-extended will read an XML
+file from the iPod and write it as 
+/mnt/ipod/iPod_Control/Device/SysInfoExtended. See 
+http://ipodlinux.org/Device_Information for more details about the method used.
+Having that file is enough for libgpod to figure out the iPod firewire id.
+
+The 2nd method requires more manual intervention. First, you need to get your
+firewire id manually. To do that, run "sudo lsusb -v | grep -i Serial" (without
+the "") with your iPod plugged in, this should print a 16 character long string
+like 00A1234567891231. For an iPod Touch, this number will be much longer than
+16 characters, the firewire ID is constituted by the first 16 characters.
+Once you have that number, create/edit /mnt/ipod/iPod_Control/Device/SysInfo 
+(if your iPod is mounted at /mnt/ipod). Add to that file the line below:
+FirewireGuid: 0xffffffffffffffff
+(replace ffffffffffffffff with the string you obtained at the previous step
+and don't forget the trailing 0x before the string)
+Save that file, and you should be all set. Be careful when using apps which 
+lets you manually specify which iPod model you own, they may overwrite that 
+file when you do that. So if after doing that libgpod still seems to write 
+invalid content to the iPod, double-check the content of that SysInfo file to
+make sure the FirewireGuid line you added isn't gone. If that happens, readd it
+to the end of the file, and make sure libgpod rewrite the iPod content.
+
+
+
+Once that is done, if you compiled libgpod from source, you can test that 
+libgpod can find the firewire ID on your iPod by running 
+libgpod/tests/test-firewire-id /ipod/mount/point

Modified: libgpod/branches/upstream/current/TROUBLESHOOTING
===================================================================
--- libgpod/branches/upstream/current/TROUBLESHOOTING	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/TROUBLESHOOTING	2007-11-12 21:03:04 UTC (rev 251)
@@ -88,7 +88,10 @@
 
 python (e.g. python2.4)
 python-dev (e.g. python2.4-dev)
-python-eye3D
+python-mutagen
 
+These are needed for full photo/thumbnail support:
+python-gtk2-dev (and python-gobject-dev, if using python-gtk2-dev >= 2.10)
+
 ------------------------------------------------------------
 

Modified: libgpod/branches/upstream/current/aclocal.m4
===================================================================
--- libgpod/branches/upstream/current/aclocal.m4	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/aclocal.m4	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,7 +1,7 @@
-# generated automatically by aclocal 1.7.9 -*- Autoconf -*-
+# generated automatically by aclocal 1.9.6 -*- Autoconf -*-
 
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002
-# Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005  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.
@@ -11,896 +11,443 @@
 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
 # PARTICULAR PURPOSE.
 
-# Like AC_CONFIG_HEADER, but automatically create stamp file. -*- Autoconf -*-
-
-# Copyright 1996, 1997, 2000, 2001 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-AC_PREREQ([2.52])
-
-# serial 6
-
-# AM_CONFIG_HEADER is obsolete.  It has been replaced by AC_CONFIG_HEADERS.
-AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
-
-# Do all the work for Automake.                            -*- Autoconf -*-
-
-# 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.
-
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 10
-
-AC_PREREQ([2.54])
-
-# Autoconf 2.50 wants to disallow AM_ names.  We explicitly allow
-# the ones we care about.
-m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
-
-# 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_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
- AC_REQUIRE([AC_PROG_INSTALL])dnl
-# test to see if srcdir already configured
-if test "`cd $srcdir && pwd`" != "`pwd`" &&
-   test -f $srcdir/config.status; then
-  AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
-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_SUBST([PACKAGE], [$1])dnl
- AC_SUBST([VERSION], [$2])],
-[_AM_SET_OPTIONS([$1])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
-
-# 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(AMTAR, tar)
-AM_PROG_INSTALL_SH
-AM_PROG_INSTALL_STRIP
-# 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([no-dependencies],,
-[AC_PROVIDE_IFELSE([AC_PROG_CC],
-                  [_AM_DEPENDENCIES(CC)],
-                  [define([AC_PROG_CC],
-                          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
-])
-])
-
-
-# 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_stamp_count=1
-for _am_header in $config_headers :; do
-  case $_am_header in
-    $1 | $1:* )
-      break ;;
-    * )
-      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
-  esac
-done
-echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
-
-# Copyright 2002  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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-
-# 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.
-AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.7"])
-
-# AM_SET_CURRENT_AUTOMAKE_VERSION
-# -------------------------------
-# Call AM_AUTOMAKE_VERSION so it can be traced.
-# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
-AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-	 [AM_AUTOMAKE_VERSION([1.7.9])])
-
-# Helper functions for option handling.                    -*- Autoconf -*-
-
-# Copyright 2001, 2002  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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 2
-
-# _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)])
-
-# _AM_SET_OPTIONS(OPTIONS)
-# ----------------------------------
-# OPTIONS is a space-separated list of Automake options.
-AC_DEFUN([_AM_SET_OPTIONS],
-[AC_FOREACH([_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])])
-
+# Copyright (C) 1995-2002 Free Software Foundation, Inc.
+# Copyright (C) 2001-2003,2004 Red Hat, Inc.
 #
-# Check to make sure that the build environment is sane.
+# This file is free software, distributed under the terms of the GNU
+# General Public License.  As a special exception to the GNU General
+# Public License, this file may be distributed as part of a program
+# that contains a configuration script generated by Autoconf, under
+# the same distribution terms as the rest of that program.
 #
-
-# Copyright 1996, 1997, 2000, 2001 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 3
-
-# 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
-# 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
-
-   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)])
-
-#  -*- Autoconf -*-
-
-
-# Copyright 1997, 1999, 2000, 2001 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 3
-
-# 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.
-AC_DEFUN([AM_MISSING_HAS_RUN],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
-# Use eval to expand $SHELL
-if eval "$MISSING --run true"; then
-  am_missing_run="$MISSING --run "
-else
-  am_missing_run=
-  AC_MSG_WARN([`missing' script is too old or missing])
-fi
-])
-
-# AM_AUX_DIR_EXPAND
-
-# Copyright 2001 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# 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/../..'.
+# This file can be copied and used freely without restrictions.  It can
+# be used in projects which are not available under the GNU Public License
+# but which still want to provide support for the GNU gettext functionality.
 #
-# 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.
+# Macro to add for using GNU gettext.
+# Ulrich Drepper <drepper at cygnus.com>, 1995, 1996
 #
-# $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
+# Modified to never use included libintl. 
+# Owen Taylor <otaylor at redhat.com>, 12/15/1998
 #
-# 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
-# start a VPATH build or use an absolute $srcdir.
+# Major rework to remove unused code
+# Owen Taylor <otaylor at redhat.com>, 12/11/2002
 #
-# 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.
+# Added better handling of ALL_LINGUAS from GNU gettext version 
+# written by Bruno Haible, Owen Taylor <otaylor.redhat.com> 5/30/3002
 #
-# 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.
-
-# Rely on autoconf to set up CDPATH properly.
-AC_PREREQ([2.50])
-
-AC_DEFUN([AM_AUX_DIR_EXPAND], [
-# expand $ac_aux_dir to an absolute path
-am_aux_dir=`cd $ac_aux_dir && pwd`
-])
-
-# AM_PROG_INSTALL_SH
-# ------------------
-# Define $install_sh.
-
-# Copyright 2001 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-AC_DEFUN([AM_PROG_INSTALL_SH],
-[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-install_sh=${install_sh-"$am_aux_dir/install-sh"}
-AC_SUBST(install_sh)])
-
-# AM_PROG_INSTALL_STRIP
-
-# Copyright 2001 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# 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
-# 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
-# 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'.
-if test "$cross_compiling" != no; then
-  AC_CHECK_TOOL([STRIP], [strip], :)
-fi
-INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
-AC_SUBST([INSTALL_STRIP_PROGRAM])])
-
-#                                                          -*- Autoconf -*-
-# Copyright (C) 2003  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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 1
-
-# 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])])
-
-# serial 5						-*- Autoconf -*-
-
-# Copyright (C) 1999, 2000, 2001, 2002, 2003  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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-
-# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
-# written in clear, in which case automake, when reading aclocal.m4,
-# will think it sees a *use*, and therefore will trigger all it's
-# C support machinery.  Also note that it means that autoscan, seeing
-# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
-
-
-
-# _AM_DEPENDENCIES(NAME)
-# ----------------------
-# See how the compiler implements dependency checking.
-# NAME is "CC", "CXX", "GCJ", or "OBJC".
-# We try a few techniques and use that to set a single cache variable.
+# Modified to require ngettext
+# Matthias Clasen <mclasen at redhat.com> 08/06/2004
 #
-# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
-# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
-# dependency, and given that the user is not expected to run this macro,
-# just rely on AC_PROG_CC.
-AC_DEFUN([_AM_DEPENDENCIES],
-[AC_REQUIRE([AM_SET_DEPDIR])dnl
-AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
-AC_REQUIRE([AM_MAKE_INCLUDE])dnl
-AC_REQUIRE([AM_DEP_TRACK])dnl
+# We need this here as well, since someone might use autoconf-2.5x
+# to configure GLib then an older version to configure a package
+# using AM_GLIB_GNU_GETTEXT
+AC_PREREQ(2.53)
 
-ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
-       [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
-       [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
-       [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
-                   [depcc="$$1"   am_compiler_list=])
+dnl
+dnl We go to great lengths to make sure that aclocal won't 
+dnl try to pull in the installed version of these macros
+dnl when running aclocal in the glib directory.
+dnl
+m4_copy([AC_DEFUN],[glib_DEFUN])
+m4_copy([AC_REQUIRE],[glib_REQUIRE])
+dnl
+dnl At the end, if we're not within glib, we'll define the public
+dnl definitions in terms of our private definitions.
+dnl
 
-AC_CACHE_CHECK([dependency style of $depcc],
-               [am_cv_$1_dependencies_compiler_type],
-[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
-  # We make a subdir and do the tests there.  Otherwise we can end up
-  # making bogus files that we don't know about and never remove.  For
-  # instance it was reported that on HP-UX the gcc test will end up
-  # making a dummy file named `D' -- because `-MD' means `put the output
-  # in D'.
-  mkdir conftest.dir
-  # Copy depcomp to subdir because otherwise we won't find it if we're
-  # using a relative directory.
-  cp "$am_depcomp" conftest.dir
-  cd conftest.dir
-  # We will build objects and dependencies in a subdirectory because
-  # it helps to detect inapplicable dependency modes.  For instance
-  # both Tru64's cc and ICC support -MD to output dependencies as a
-  # side effect of compilation, but ICC will put the dependencies in
-  # the current directory while Tru64 will put them in the object
-  # directory.
-  mkdir sub
+# GLIB_LC_MESSAGES
+#--------------------
+glib_DEFUN([GLIB_LC_MESSAGES],
+  [AC_CHECK_HEADERS([locale.h])
+    if test $ac_cv_header_locale_h = yes; then
+    AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
+      [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
+       am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
+    if test $am_cv_val_LC_MESSAGES = yes; then
+      AC_DEFINE(HAVE_LC_MESSAGES, 1,
+        [Define if your <locale.h> file defines LC_MESSAGES.])
+    fi
+  fi])
 
-  am_cv_$1_dependencies_compiler_type=none
-  if test "$am_compiler_list" = ""; then
-     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
-  fi
-  for depmode in $am_compiler_list; do
-    # Setup a source with many dependencies, because some compilers
-    # like to wrap large dependency lists on column 80 (with \), and
-    # we should not choose a depcomp mode which is confused by this.
-    #
-    # We need to recreate these files for each test, as the compiler may
-    # overwrite some of them when testing with obscure command lines.
-    # This happens at least with the AIX C compiler.
-    : > sub/conftest.c
-    for i in 1 2 3 4 5 6; do
-      echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      : > sub/conftst$i.h
-    done
-    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
-
-    case $depmode in
-    nosideeffect)
-      # after this tag, mechanisms are not by side-effect, so they'll
-      # only be used when explicitly requested
-      if test "x$enable_dependency_tracking" = xyes; then
-	continue
-      else
+# GLIB_PATH_PROG_WITH_TEST
+#----------------------------
+dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
+dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
+glib_DEFUN([GLIB_PATH_PROG_WITH_TEST],
+[# Extract the first word of "$2", so it can be a program name with args.
+set dummy $2; ac_word=[$]2
+AC_MSG_CHECKING([for $ac_word])
+AC_CACHE_VAL(ac_cv_path_$1,
+[case "[$]$1" in
+  /*)
+  ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
+  ;;
+  *)
+  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}:"
+  for ac_dir in ifelse([$5], , $PATH, [$5]); do
+    test -z "$ac_dir" && ac_dir=.
+    if test -f $ac_dir/$ac_word; then
+      if [$3]; then
+	ac_cv_path_$1="$ac_dir/$ac_word"
 	break
       fi
-      ;;
-    none) break ;;
-    esac
-    # We check with `-c' and `-o' for the sake of the "dashmstdout"
-    # mode.  It turns out that the SunPro C++ compiler does not properly
-    # handle `-M -o', and we need to detect this.
-    if depmode=$depmode \
-       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
-       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
-       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
-         >/dev/null 2>conftest.err &&
-       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
-       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
-       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
-      # icc doesn't choke on unknown options, it will just issue warnings
-      # (even with -Werror).  So we grep stderr for any message
-      # that says an option was ignored.
-      if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
-        am_cv_$1_dependencies_compiler_type=$depmode
-        break
-      fi
     fi
   done
-
-  cd ..
-  rm -rf conftest.dir
+  IFS="$ac_save_ifs"
+dnl If no 4th arg is given, leave the cache variable unset,
+dnl so AC_PATH_PROGS will keep looking.
+ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
+])dnl
+  ;;
+esac])dnl
+$1="$ac_cv_path_$1"
+if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
+  AC_MSG_RESULT([$]$1)
 else
-  am_cv_$1_dependencies_compiler_type=none
+  AC_MSG_RESULT(no)
 fi
+AC_SUBST($1)dnl
 ])
-AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
-AM_CONDITIONAL([am__fastdep$1], [
-  test "x$enable_dependency_tracking" != xno \
-  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
-])
 
+# GLIB_WITH_NLS
+#-----------------
+glib_DEFUN([GLIB_WITH_NLS],
+  dnl NLS is obligatory
+  [AC_REQUIRE([AC_CANONICAL_HOST])dnl
+    USE_NLS=yes
+    AC_SUBST(USE_NLS)
 
-# AM_SET_DEPDIR
-# -------------
-# Choose a directory name for dependency files.
-# This macro is AC_REQUIREd in _AM_DEPENDENCIES
-AC_DEFUN([AM_SET_DEPDIR],
-[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
-AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
-])
+    gt_cv_have_gettext=no
 
+    CATOBJEXT=NONE
+    XGETTEXT=:
+    INTLLIBS=
 
-# AM_DEP_TRACK
-# ------------
-AC_DEFUN([AM_DEP_TRACK],
-[AC_ARG_ENABLE(dependency-tracking,
-[  --disable-dependency-tracking Speeds up one-time builds
-  --enable-dependency-tracking  Do not reject slow dependency extractors])
-if test "x$enable_dependency_tracking" != xno; then
-  am_depcomp="$ac_aux_dir/depcomp"
-  AMDEPBACKSLASH='\'
-fi
-AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
-AC_SUBST([AMDEPBACKSLASH])
-])
+    AC_CHECK_HEADER(libintl.h,
+     [gt_cv_func_dgettext_libintl="no"
+      libintl_extra_libs=""
 
-# Generate code to set up dependency tracking.   -*- Autoconf -*-
+      #
+      # First check in libc
+      #
+      AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc,
+        [AC_TRY_LINK([
+#include <libintl.h>
+],
+         [return !ngettext ("","", 1)],
+	  gt_cv_func_ngettext_libc=yes,
+          gt_cv_func_ngettext_libc=no)
+        ])
+  
+      if test "$gt_cv_func_ngettext_libc" = "yes" ; then
+	      AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc,
+        	[AC_TRY_LINK([
+#include <libintl.h>
+],
+	          [return !dgettext ("","")],
+		  gt_cv_func_dgettext_libc=yes,
+	          gt_cv_func_dgettext_libc=no)
+        	])
+      fi
+  
+      if test "$gt_cv_func_ngettext_libc" = "yes" ; then
+        AC_CHECK_FUNCS(bind_textdomain_codeset)
+      fi
 
-# Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+      #
+      # If we don't have everything we want, check in libintl
+      #
+      if test "$gt_cv_func_dgettext_libc" != "yes" \
+	 || test "$gt_cv_func_ngettext_libc" != "yes" \
+         || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
+        
+        AC_CHECK_LIB(intl, bindtextdomain,
+	    [AC_CHECK_LIB(intl, ngettext,
+		    [AC_CHECK_LIB(intl, dgettext,
+			          gt_cv_func_dgettext_libintl=yes)])])
 
-# 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.
+	if test "$gt_cv_func_dgettext_libintl" != "yes" ; then
+	  AC_MSG_CHECKING([if -liconv is needed to use gettext])
+	  AC_MSG_RESULT([])
+  	  AC_CHECK_LIB(intl, ngettext,
+          	[AC_CHECK_LIB(intl, dcgettext,
+		       [gt_cv_func_dgettext_libintl=yes
+			libintl_extra_libs=-liconv],
+			:,-liconv)],
+		:,-liconv)
+        fi
 
-# 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.
+        #
+        # If we found libintl, then check in it for bind_textdomain_codeset();
+        # we'll prefer libc if neither have bind_textdomain_codeset(),
+        # and both have dgettext and ngettext
+        #
+        if test "$gt_cv_func_dgettext_libintl" = "yes" ; then
+          glib_save_LIBS="$LIBS"
+          LIBS="$LIBS -lintl $libintl_extra_libs"
+          unset ac_cv_func_bind_textdomain_codeset
+          AC_CHECK_FUNCS(bind_textdomain_codeset)
+          LIBS="$glib_save_LIBS"
 
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+          if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then
+            gt_cv_func_dgettext_libc=no
+          else
+            if test "$gt_cv_func_dgettext_libc" = "yes" \
+		&& test "$gt_cv_func_ngettext_libc" = "yes"; then
+              gt_cv_func_dgettext_libintl=no
+            fi
+          fi
+        fi
+      fi
 
-#serial 2
+      if test "$gt_cv_func_dgettext_libc" = "yes" \
+	|| test "$gt_cv_func_dgettext_libintl" = "yes"; then
+        gt_cv_have_gettext=yes
+      fi
+  
+      if test "$gt_cv_func_dgettext_libintl" = "yes"; then
+        INTLLIBS="-lintl $libintl_extra_libs"
+      fi
+  
+      if test "$gt_cv_have_gettext" = "yes"; then
+	AC_DEFINE(HAVE_GETTEXT,1,
+	  [Define if the GNU gettext() function is already present or preinstalled.])
+	GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
+	  [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
+	if test "$MSGFMT" != "no"; then
+          glib_save_LIBS="$LIBS"
+          LIBS="$LIBS $INTLLIBS"
+	  AC_CHECK_FUNCS(dcgettext)
+	  MSGFMT_OPTS=
+	  AC_MSG_CHECKING([if msgfmt accepts -c])
+	  GLIB_RUN_PROG([$MSGFMT -c -o /dev/null],[
+msgid ""
+msgstr ""
+"Content-Type: text/plain; charset=UTF-8\n"
+"Project-Id-Version: test 1.0\n"
+"PO-Revision-Date: 2007-02-15 12:01+0100\n"
+"Last-Translator: test <foo at bar.xx>\n"
+"Language-Team: C <LL at li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Transfer-Encoding: 8bit\n"
+], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])])
+	  AC_SUBST(MSGFMT_OPTS)
+	  AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
+	  GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
+	    [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
+	  AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
+			 return _nl_msg_cat_cntr],
+	    [CATOBJEXT=.gmo 
+             DATADIRNAME=share],
+	    [case $host in
+	    *-*-solaris*)
+	    dnl On Solaris, if bind_textdomain_codeset is in libc,
+	    dnl GNU format message catalog is always supported,
+            dnl since both are added to the libc all together.
+	    dnl Hence, we'd like to go with DATADIRNAME=share and
+	    dnl and CATOBJEXT=.gmo in this case.
+            AC_CHECK_FUNC(bind_textdomain_codeset,
+	      [CATOBJEXT=.gmo 
+               DATADIRNAME=share],
+	      [CATOBJEXT=.mo
+               DATADIRNAME=lib])
+	    ;;
+	    *)
+	    CATOBJEXT=.mo
+            DATADIRNAME=lib
+	    ;;
+	    esac])
+          LIBS="$glib_save_LIBS"
+	  INSTOBJEXT=.mo
+	else
+	  gt_cv_have_gettext=no
+	fi
+      fi
+    ])
 
-# _AM_OUTPUT_DEPENDENCY_COMMANDS
-# ------------------------------
-AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
-[for mf in $CONFIG_FILES; do
-  # Strip MF so we end up with the name of the file.
-  mf=`echo "$mf" | sed -e 's/:.*$//'`
-  # Check whether this is an Automake generated Makefile or not.
-  # We used to match only the files named `Makefile.in', but
-  # some people rename them; so instead we look at the file content.
-  # Grep'ing the first line is not enough: some people post-process
-  # each Makefile.in and add a new line on top of each file to say so.
-  # So let's grep whole file.
-  if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
-    dirpart=`AS_DIRNAME("$mf")`
-  else
-    continue
-  fi
-  grep '^DEP_FILES *= *[[^ @%:@]]' < "$mf" > /dev/null || continue
-  # Extract the definition of DEP_FILES from the Makefile without
-  # running `make'.
-  DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
-  test -z "$DEPDIR" && continue
-  # When using ansi2knr, U may be empty or an underscore; expand it
-  U=`sed -n -e '/^U = / s///p' < "$mf"`
-  test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
-  # We invoke sed twice because it is the simplest approach to
-  # changing $(DEPDIR) to its actual value in the expansion.
-  for file in `sed -n -e '
-    /^DEP_FILES = .*\\\\$/ {
-      s/^DEP_FILES = //
-      :loop
-	s/\\\\$//
-	p
-	n
-	/\\\\$/ b loop
-      p
-    }
-    /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \
-       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
-    # Make sure the directory exists.
-    test -f "$dirpart/$file" && continue
-    fdir=`AS_DIRNAME(["$file"])`
-    AS_MKDIR_P([$dirpart/$fdir])
-    # echo "creating $dirpart/$file"
-    echo '# dummy' > "$dirpart/$file"
-  done
-done
-])# _AM_OUTPUT_DEPENDENCY_COMMANDS
+    if test "$gt_cv_have_gettext" = "yes" ; then
+      AC_DEFINE(ENABLE_NLS, 1,
+        [always defined to indicate that i18n is enabled])
+    fi
 
+    dnl Test whether we really found GNU xgettext.
+    if test "$XGETTEXT" != ":"; then
+      dnl If it is not GNU xgettext we define it as : so that the
+      dnl Makefiles still can work.
+      if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
+        : ;
+      else
+        AC_MSG_RESULT(
+	  [found xgettext program is not GNU xgettext; ignore it])
+        XGETTEXT=":"
+      fi
+    fi
 
-# AM_OUTPUT_DEPENDENCY_COMMANDS
-# -----------------------------
-# This macro should only be invoked once -- use via AC_REQUIRE.
-#
-# This code is only required when automatic dependency tracking
-# is enabled.  FIXME.  This creates each `.P' file that we will
-# need in order to bootstrap the dependency handling code.
-AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
-[AC_CONFIG_COMMANDS([depfiles],
-     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
-     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
+    # We need to process the po/ directory.
+    POSUB=po
 
-# Check to see how 'make' treats includes.	-*- Autoconf -*-
+    AC_OUTPUT_COMMANDS(
+      [case "$CONFIG_FILES" in *po/Makefile.in*)
+        sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
+      esac])
 
-# Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
+    dnl These rules are solely for the distribution goal.  While doing this
+    dnl we only have to keep exactly one list of the available catalogs
+    dnl in configure.in.
+    for lang in $ALL_LINGUAS; do
+      GMOFILES="$GMOFILES $lang.gmo"
+      POFILES="$POFILES $lang.po"
+    done
 
-# 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.
+    dnl Make all variables we use known to autoconf.
+    AC_SUBST(CATALOGS)
+    AC_SUBST(CATOBJEXT)
+    AC_SUBST(DATADIRNAME)
+    AC_SUBST(GMOFILES)
+    AC_SUBST(INSTOBJEXT)
+    AC_SUBST(INTLLIBS)
+    AC_SUBST(PO_IN_DATADIR_TRUE)
+    AC_SUBST(PO_IN_DATADIR_FALSE)
+    AC_SUBST(POFILES)
+    AC_SUBST(POSUB)
+  ])
 
-# 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.
+# AM_GLIB_GNU_GETTEXT
+# -------------------
+# Do checks necessary for use of gettext. If a suitable implementation 
+# of gettext is found in either in libintl or in the C library,
+# it will set INTLLIBS to the libraries needed for use of gettext
+# and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable
+# gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST()
+# on various variables needed by the Makefile.in.in installed by 
+# glib-gettextize.
+dnl
+glib_DEFUN([GLIB_GNU_GETTEXT],
+  [AC_REQUIRE([AC_PROG_CC])dnl
+   AC_REQUIRE([AC_HEADER_STDC])dnl
+   
+   GLIB_LC_MESSAGES
+   GLIB_WITH_NLS
 
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+   if test "$gt_cv_have_gettext" = "yes"; then
+     if test "x$ALL_LINGUAS" = "x"; then
+       LINGUAS=
+     else
+       AC_MSG_CHECKING(for catalogs to be installed)
+       NEW_LINGUAS=
+       for presentlang in $ALL_LINGUAS; do
+         useit=no
+         if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then
+           desiredlanguages="$LINGUAS"
+         else
+           desiredlanguages="$ALL_LINGUAS"
+         fi
+         for desiredlang in $desiredlanguages; do
+ 	   # Use the presentlang catalog if desiredlang is
+           #   a. equal to presentlang, or
+           #   b. a variant of presentlang (because in this case,
+           #      presentlang can be used as a fallback for messages
+           #      which are not translated in the desiredlang catalog).
+           case "$desiredlang" in
+             "$presentlang"*) useit=yes;;
+           esac
+         done
+         if test $useit = yes; then
+           NEW_LINGUAS="$NEW_LINGUAS $presentlang"
+         fi
+       done
+       LINGUAS=$NEW_LINGUAS
+       AC_MSG_RESULT($LINGUAS)
+     fi
 
-# serial 2
+     dnl Construct list of names of catalog files to be constructed.
+     if test -n "$LINGUAS"; then
+       for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
+     fi
+   fi
 
-# AM_MAKE_INCLUDE()
-# -----------------
-# Check to see how make treats includes.
-AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
-am__doit:
-	@echo done
-.PHONY: am__doit
-END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
-am__include="#"
-am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# We grep out `Entering directory' and `Leaving directory'
-# messages which can occur if `w' ends up in MAKEFLAGS.
-# In particular we don't look at `^make:' because GNU make might
-# be invoked under some other name (usually "gmake"), in which
-# case it prints its new name instead of `make'.
-if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
-   am__include=include
-   am__quote=
-   _am_result=GNU
-fi
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
-   echo '.include "confinc"' > confmf
-   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
-      am__include=.include
-      am__quote="\""
-      _am_result=BSD
+   dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
+   dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
+   dnl Try to locate is.
+   MKINSTALLDIRS=
+   if test -n "$ac_aux_dir"; then
+     MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
    fi
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
+   if test -z "$MKINSTALLDIRS"; then
+     MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
+   fi
+   AC_SUBST(MKINSTALLDIRS)
 
-# AM_CONDITIONAL                                              -*- Autoconf -*-
+   dnl Generate list of files to be processed by xgettext which will
+   dnl be included in po/Makefile.
+   test -d po || mkdir po
+   if test "x$srcdir" != "x."; then
+     if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
+       posrcprefix="$srcdir/"
+     else
+       posrcprefix="../$srcdir/"
+     fi
+   else
+     posrcprefix="../"
+   fi
+   rm -f po/POTFILES
+   sed -e "/^#/d" -e "/^\$/d" -e "s,.*,	$posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
+	< $srcdir/po/POTFILES.in > po/POTFILES
+  ])
 
-# Copyright 1997, 2000, 2001 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 5
-
-AC_PREREQ(2.52)
-
-# AM_CONDITIONAL(NAME, SHELL-CONDITION)
-# -------------------------------------
-# Define a conditional.
-AC_DEFUN([AM_CONDITIONAL],
-[ifelse([$1], [TRUE],  [AC_FATAL([$0: invalid condition: $1])],
-        [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
-AC_SUBST([$1_TRUE])
-AC_SUBST([$1_FALSE])
-if $2; then
-  $1_TRUE=
-  $1_FALSE='#'
+# AM_GLIB_DEFINE_LOCALEDIR(VARIABLE)
+# -------------------------------
+# Define VARIABLE to the location where catalog files will
+# be installed by po/Makefile.
+glib_DEFUN([GLIB_DEFINE_LOCALEDIR],
+[glib_REQUIRE([GLIB_GNU_GETTEXT])dnl
+glib_save_prefix="$prefix"
+glib_save_exec_prefix="$exec_prefix"
+glib_save_datarootdir="$datarootdir"
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+test "x$exec_prefix" = xNONE && exec_prefix=$prefix
+datarootdir=`eval echo "${datarootdir}"`
+if test "x$CATOBJEXT" = "x.mo" ; then
+  localedir=`eval echo "${libdir}/locale"`
 else
-  $1_TRUE='#'
-  $1_FALSE=
+  localedir=`eval echo "${datadir}/locale"`
 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])])
+prefix="$glib_save_prefix"
+exec_prefix="$glib_save_exec_prefix"
+datarootdir="$glib_save_datarootdir"
+AC_DEFINE_UNQUOTED($1, "$localedir",
+  [Define the location where the catalogs will be installed])
+])
 
-# Add --enable-maintainer-mode option to configure.
-# From Jim Meyering
+dnl
+dnl Now the definitions that aclocal will find
+dnl
+ifdef(glib_configure_in,[],[
+AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)])
+AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)])
+])dnl
 
-# Copyright 1996, 1998, 2000, 2001, 2002  Free Software Foundation, Inc.
+# GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL])
+# 
+# Create a temporary file with TEST-FILE as its contents and pass the
+# file name to PROGRAM.  Perform ACTION-IF-PASS if PROGRAM exits with
+# 0 and perform ACTION-IF-FAIL for any other exit status.
+AC_DEFUN([GLIB_RUN_PROG],
+[cat >conftest.foo <<_ACEOF
+$2
+_ACEOF
+if AC_RUN_LOG([$1 conftest.foo]); then
+  m4_ifval([$3], [$3], [:])
+m4_ifvaln([$4], [else $4])dnl
+echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD
+sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD
+fi])
 
-# 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
-# serial 2
-
-AC_DEFUN([AM_MAINTAINER_MODE],
-[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
-  dnl maintainer-mode is disabled by default
-  AC_ARG_ENABLE(maintainer-mode,
-[  --enable-maintainer-mode enable make rules and dependencies not useful
-                          (and sometimes confusing) to the casual installer],
-      USE_MAINTAINER_MODE=$enableval,
-      USE_MAINTAINER_MODE=no)
-  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])
-
 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
 
-# serial 48 AC_PROG_LIBTOOL
+# serial 51 Debian 1.5.24-1ubuntu1 AC_PROG_LIBTOOL
 
 
 # AC_PROVIDE_IFELSE(MACRO-NAME, IF-PROVIDED, IF-NOT-PROVIDED)
@@ -1063,7 +610,7 @@
 test -z "$ac_objext" && ac_objext=o
 
 # Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
 old_postinstall_cmds='chmod 644 $oldlib'
 old_postuninstall_cmds=
 
@@ -1150,8 +697,9 @@
 # Check for compiler boilerplate output or warnings with
 # the simple compiler test code.
 AC_DEFUN([_LT_COMPILER_BOILERPLATE],
-[ac_outfile=conftest.$ac_objext
-printf "$lt_simple_compile_test_code" >conftest.$ac_ext
+[AC_REQUIRE([LT_AC_PROG_SED])dnl
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_compiler_boilerplate=`cat conftest.err`
 $rm conftest*
@@ -1163,8 +711,9 @@
 # Check for linker boilerplate output or warnings with
 # the simple link test code.
 AC_DEFUN([_LT_LINKER_BOILERPLATE],
-[ac_outfile=conftest.$ac_objext
-printf "$lt_simple_link_test_code" >conftest.$ac_ext
+[AC_REQUIRE([LT_AC_PROG_SED])dnl
+ac_outfile=conftest.$ac_objext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
 $rm conftest*
@@ -1180,12 +729,20 @@
 # If we don't find anything, use the default library path according
 # to the aix ld manual.
 AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX],
-[AC_LINK_IFELSE(AC_LANG_PROGRAM,[
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`
+[AC_REQUIRE([LT_AC_PROG_SED])dnl
+AC_LINK_IFELSE(AC_LANG_PROGRAM,[
+lt_aix_libpath_sed='
+    /Import File Strings/,/^$/ {
+	/^0/ {
+	    s/^0  *\(.*\)$/\1/
+	    p
+	}
+    }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 # Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`; fi],[])
+if test -z "$aix_libpath"; then
+  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi],[])
 if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
 ])# _LT_AC_SYS_LIBPATH_AIX
 
@@ -1416,13 +973,17 @@
   rm -rf conftest*
   ;;
 
-x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+s390*-*linux*|sparc*-*linux*)
   # Find out which ABI we are using.
   echo 'int i;' > conftest.$ac_ext
   if AC_TRY_EVAL(ac_compile); then
     case `/usr/bin/file conftest.o` in
     *32-bit*)
       case $host in
+        x86_64-*kfreebsd*-gnu)
+          LD="${LD-ld} -m elf_i386_fbsd"
+          ;;
         x86_64-*linux*)
           LD="${LD-ld} -m elf_i386"
           ;;
@@ -1439,6 +1000,9 @@
       ;;
     *64-bit*)
       case $host in
+        x86_64-*kfreebsd*-gnu)
+          LD="${LD-ld} -m elf_x86_64_fbsd"
+          ;;
         x86_64-*linux*)
           LD="${LD-ld} -m elf_x86_64"
           ;;
@@ -1510,7 +1074,7 @@
 AC_CACHE_CHECK([$1], [$2],
   [$2=no
   ifelse([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$3"
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
@@ -1551,11 +1115,12 @@
 # ------------------------------------------------------------
 # Check whether the given compiler option works
 AC_DEFUN([AC_LIBTOOL_LINKER_OPTION],
-[AC_CACHE_CHECK([$1], [$2],
+[AC_REQUIRE([LT_AC_PROG_SED])dnl
+AC_CACHE_CHECK([$1], [$2],
   [$2=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $3"
-   printf "$lt_simple_link_test_code" > conftest.$ac_ext
+   echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
      # The linker can only warn and ignore the option if not recognized
      # So say no if there are warnings
@@ -1669,24 +1234,27 @@
     fi
     ;;
   *)
-    # If test is not a shell built-in, we'll probably end up computing a
-    # maximum length that is only half of the actual maximum length, but
-    # we can't tell.
-    SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
-    while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \
+    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+    if test -n "$lt_cv_sys_max_cmd_len"; then
+      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+    else
+      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
+      while (test "X"`$SHELL [$]0 --fallback-echo "X$teststring" 2>/dev/null` \
 	       = "XX$teststring") >/dev/null 2>&1 &&
-	    new_result=`expr "X$teststring" : ".*" 2>&1` &&
-	    lt_cv_sys_max_cmd_len=$new_result &&
-	    test $i != 17 # 1/2 MB should be enough
-    do
-      i=`expr $i + 1`
-      teststring=$teststring$teststring
-    done
-    teststring=
-    # Add a significant safety factor because C++ compilers can tack on massive
-    # amounts of additional arguments before passing them to the linker.
-    # It appears as though 1/2 is a usable value.
-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+	      new_result=`expr "X$teststring" : ".*" 2>&1` &&
+	      lt_cv_sys_max_cmd_len=$new_result &&
+	      test $i != 17 # 1/2 MB should be enough
+      do
+        i=`expr $i + 1`
+        teststring=$teststring$teststring
+      done
+      teststring=
+      # Add a significant safety factor because C++ compilers can tack on massive
+      # amounts of additional arguments before passing them to the linker.
+      # It appears as though 1/2 is a usable value.
+      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+    fi
     ;;
   esac
 ])
@@ -1913,7 +1481,8 @@
 # ---------------------------------
 # Check to see if options -c and -o are simultaneously supported by compiler
 AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O],
-[AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
+[AC_REQUIRE([LT_AC_PROG_SED])dnl
+AC_REQUIRE([_LT_AC_SYS_COMPILER])dnl
 AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
   [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
   [_LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
@@ -1921,7 +1490,7 @@
    mkdir conftest
    cd conftest
    mkdir out
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
    lt_compiler_flag="-o out/conftest2.$ac_objext"
    # Insert the option either (1) after the last *FLAGS variable, or
@@ -2061,6 +1630,7 @@
    darwin*)
        if test -n "$STRIP" ; then
          striplib="$STRIP -x"
+         old_striplib="$STRIP -S"
          AC_MSG_RESULT([yes])
        else
   AC_MSG_RESULT([no])
@@ -2078,7 +1648,8 @@
 # -----------------------------
 # PORTME Fill in your ld.so characteristics
 AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER],
-[AC_MSG_CHECKING([dynamic linker characteristics])
+[AC_REQUIRE([LT_AC_PROG_SED])dnl
+AC_MSG_CHECKING([dynamic linker characteristics])
 library_names_spec=
 libname_spec='lib$name'
 soname_spec=
@@ -2092,20 +1663,58 @@
 version_type=none
 dynamic_linker="$host_os ld.so"
 sys_lib_dlsearch_path_spec="/lib /usr/lib"
+m4_if($1,[],[
 if test "$GCC" = yes; then
-  sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
-  if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then
+  case $host_os in
+    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
+    *) lt_awk_arg="/^libraries:/" ;;
+  esac
+  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+  if echo "$lt_search_path_spec" | grep ';' >/dev/null ; then
     # if the path contains ";" then we assume it to be the separator
     # otherwise default to the standard path separator (i.e. ":") - it is
     # assumed that no part of a normal pathname contains ";" but that should
     # okay in the real world where ";" in dirpaths is itself problematic.
-    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
+    lt_search_path_spec=`echo "$lt_search_path_spec" | $SED -e 's/;/ /g'`
   else
-    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
+    lt_search_path_spec=`echo "$lt_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
   fi
+  # Ok, now we have the path, separated by spaces, we can step through it
+  # and add multilib dir if necessary.
+  lt_tmp_lt_search_path_spec=
+  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+  for lt_sys_path in $lt_search_path_spec; do
+    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
+      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
+    else
+      test -d "$lt_sys_path" && \
+	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
+    fi
+  done
+  lt_search_path_spec=`echo $lt_tmp_lt_search_path_spec | awk '
+BEGIN {RS=" "; FS="/|\n";} {
+  lt_foo="";
+  lt_count=0;
+  for (lt_i = NF; lt_i > 0; lt_i--) {
+    if ($lt_i != "" && $lt_i != ".") {
+      if ($lt_i == "..") {
+        lt_count++;
+      } else {
+        if (lt_count == 0) {
+          lt_foo="/" $lt_i lt_foo;
+        } else {
+          lt_count--;
+        }
+      }
+    }
+  }
+  if (lt_foo != "") { lt_freq[[lt_foo]]++; }
+  if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
+}'`
+  sys_lib_search_path_spec=`echo $lt_search_path_spec`
 else
   sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi
+fi])
 need_lib_prefix=unknown
 hardcode_into_libs=no
 
@@ -2262,12 +1871,8 @@
   shlibpath_overrides_runpath=yes
   shlibpath_var=DYLD_LIBRARY_PATH
   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-  # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
-  if test "$GCC" = yes; then
-    sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
-  else
-    sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib'
-  fi
+  m4_if([$1], [],[
+  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) 
   sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
   ;;
 
@@ -2284,18 +1889,6 @@
   dynamic_linker=no
   ;;
 
-kfreebsd*-gnu)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  dynamic_linker='GNU ld.so'
-  ;;
-
 freebsd* | dragonfly*)
   # DragonFly does not have aout.  When/if they implement a new
   # versioning mechanism, adjust this.
@@ -2333,7 +1926,7 @@
     shlibpath_overrides_runpath=no
     hardcode_into_libs=yes
     ;;
-  freebsd*) # from 4.6 on
+  *) # from 4.6 on, and DragonFly
     shlibpath_overrides_runpath=yes
     hardcode_into_libs=yes
     ;;
@@ -2396,7 +1989,7 @@
   postinstall_cmds='chmod 555 $lib'
   ;;
 
-interix3*)
+interix[[3-9]]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -2451,7 +2044,7 @@
   ;;
 
 # This must be Linux ELF.
-linux*)
+linux* | k*bsd*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -2465,27 +2058,10 @@
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # find out which ABI we are using
-  libsuff=
-  case "$host_cpu" in
-  x86_64*|s390x*|powerpc64*)
-    echo '[#]line __oline__ "configure"' > conftest.$ac_ext
-    if AC_TRY_EVAL(ac_compile); then
-      case `/usr/bin/file conftest.$ac_objext` in
-      *64-bit*)
-        libsuff=64
-        sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
-        ;;
-      esac
-    fi
-    rm -rf conftest*
-    ;;
-  esac
-
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/^[	 ]*//;s/#.*//;/^[^\/]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ 	]*hwcap[ 	]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
   # We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -2497,7 +2073,7 @@
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
-knetbsd*-gnu)
+netbsdelf*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -2506,7 +2082,7 @@
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
-  dynamic_linker='GNU ld.so'
+  dynamic_linker='NetBSD ld.elf_so'
   ;;
 
 netbsd*)
@@ -2590,6 +2166,10 @@
   sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
   ;;
 
+rdos*)
+  dynamic_linker=no
+  ;;
+
 solaris*)
   version_type=linux
   need_lib_prefix=no
@@ -2695,7 +2275,8 @@
 # _LT_AC_TAGCONFIG
 # ----------------
 AC_DEFUN([_LT_AC_TAGCONFIG],
-[AC_ARG_WITH([tags],
+[AC_REQUIRE([LT_AC_PROG_SED])dnl
+AC_ARG_WITH([tags],
     [AC_HELP_STRING([--with-tags@<:@=TAGS@:>@],
         [include additional configurations @<:@automatic@:>@])],
     [tagnames="$withval"])
@@ -2956,7 +2537,7 @@
 
 # AC_PATH_TOOL_PREFIX
 # -------------------
-# find a file program which can recognise shared library
+# find a file program which can recognize shared library
 AC_DEFUN([AC_PATH_TOOL_PREFIX],
 [AC_REQUIRE([AC_PROG_EGREP])dnl
 AC_MSG_CHECKING([for $1])
@@ -3019,7 +2600,7 @@
 
 # AC_PATH_MAGIC
 # -------------
-# find a file program which can recognise a shared library
+# find a file program which can recognize a shared library
 AC_DEFUN([AC_PATH_MAGIC],
 [AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
 if test -z "$lt_cv_path_MAGIC_CMD"; then
@@ -3166,7 +2747,7 @@
 # how to check for library dependencies
 #  -- PORTME fill in with the dynamic library characteristics
 AC_DEFUN([AC_DEPLIBS_CHECK_METHOD],
-[AC_CACHE_CHECK([how to recognise dependent libraries],
+[AC_CACHE_CHECK([how to recognize dependent libraries],
 lt_cv_deplibs_check_method,
 [lt_cv_file_magic_cmd='$MAGIC_CMD'
 lt_cv_file_magic_test_file=
@@ -3205,16 +2786,22 @@
 
 mingw* | pw32*)
   # Base MSYS/MinGW do not provide the 'file' command needed by
-  # func_win32_libid shell function, so use a weaker test based on 'objdump'.
-  lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
-  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  # func_win32_libid shell function, so use a weaker test based on 'objdump',
+  # unless we find 'file', for example because we are cross-compiling.
+  if ( file / ) >/dev/null 2>&1; then
+    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+    lt_cv_file_magic_cmd='func_win32_libid'
+  else
+    lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
+    lt_cv_file_magic_cmd='$OBJDUMP -f'
+  fi
   ;;
 
 darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-freebsd* | kfreebsd*-gnu | dragonfly*)
+freebsd* | dragonfly*)
   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
     case $host_cpu in
     i*86 )
@@ -3252,7 +2839,7 @@
   esac
   ;;
 
-interix3*)
+interix[[3-9]]*)
   # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
   lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
   ;;
@@ -3268,11 +2855,11 @@
   ;;
 
 # This must be Linux ELF.
-linux*)
+linux* | k*bsd*-gnu)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-netbsd*)
+netbsd* | netbsdelf*-gnu)
   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
     lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
   else
@@ -3302,6 +2889,10 @@
   lt_cv_deplibs_check_method=pass_all
   ;;
 
+rdos*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
 solaris*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -3354,7 +2945,7 @@
   lt_cv_path_NM="$NM"
 else
   lt_nm_to_check="${ac_tool_prefix}nm"
-  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then 
+  if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
     lt_nm_to_check="$lt_nm_to_check nm"
   fi
   for lt_tmp_nm in $lt_nm_to_check; do
@@ -3570,10 +3161,10 @@
 _LT_AC_TAGVAR(objext, $1)=$objext
 
 # Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;\n"
+lt_simple_compile_test_code="int some_variable = 0;"
 
 # Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}\n'
+lt_simple_link_test_code='int main(){return(0);}'
 
 _LT_AC_SYS_COMPILER
 
@@ -3675,10 +3266,10 @@
 _LT_AC_TAGVAR(objext, $1)=$objext
 
 # Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;\n"
+lt_simple_compile_test_code="int some_variable = 0;"
 
 # Code to be used in simple link tests
-lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }\n'
+lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
 
 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
 _LT_AC_SYS_COMPILER
@@ -3824,7 +3415,7 @@
 	   strings "$collect2name" | grep resolve_lib_name >/dev/null
 	then
 	  # We have reworked collect2
-	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+	  :
 	else
 	  # We have old collect2
 	  _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
@@ -3983,10 +3574,10 @@
       case $cc_basename in
         xlc*)
          output_verbose_link_cmd='echo'
-          _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
+          _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $xlcverstring'
           _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
           # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-          _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+          _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $xlcverstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           ;;
        *)
@@ -4020,7 +3611,7 @@
   freebsd-elf*)
     _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
     ;;
-  freebsd* | kfreebsd*-gnu | dragonfly*)
+  freebsd* | dragonfly*)
     # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
     # conventions
     _LT_AC_TAGVAR(ld_shlibs, $1)=yes
@@ -4069,9 +3660,7 @@
       _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
 
       case $host_cpu in
-      hppa*64*|ia64*)
-	_LT_AC_TAGVAR(hardcode_libdir_flag_spec_ld, $1)='+b $libdir'
-        ;;
+      hppa*64*|ia64*) ;;
       *)
 	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
         ;;
@@ -4139,7 +3728,7 @@
 	;;
     esac
     ;;
-  interix3*)
+  interix[[3-9]]*)
     _LT_AC_TAGVAR(hardcode_direct, $1)=no
     _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
@@ -4179,7 +3768,7 @@
     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath ${wl}$libdir'
     _LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
     ;;
-  linux*)
+  linux* | k*bsd*-gnu)
     case $cc_basename in
       KCC*)
 	# Kuck and Associates, Inc. (KAI) C++ Compiler
@@ -4259,6 +3848,29 @@
 	# dependencies.
 	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
 	;;
+      *)
+	case `$CC -V 2>&1 | sed 5q` in
+	*Sun\ C*)
+	  # Sun C++ 5.9
+	  _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
+	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+	  _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
+	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+	  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+
+	  # Not sure whether something based on
+	  # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
+	  # would be better.
+	  output_verbose_link_cmd='echo'
+
+	  # Archives containing C++ object files must be created using
+	  # "CC -xar", where "CC" is the Sun C++ compiler.  This is
+	  # necessary to make sure instantiated templates are included
+	  # in the archive.
+	  _LT_AC_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
+	  ;;
+	esac
+	;;
     esac
     ;;
   lynxos*)
@@ -4281,7 +3893,7 @@
 	;;
     esac
     ;;
-  netbsd*)
+  netbsd* | netbsdelf*-gnu)
     if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
       _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
       wlarc=
@@ -4297,16 +3909,20 @@
     _LT_AC_TAGVAR(ld_shlibs, $1)=no
     ;;
   openbsd*)
-    _LT_AC_TAGVAR(hardcode_direct, $1)=yes
-    _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
-    _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
-    _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-    if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-      _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
-      _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
-      _LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+    if test -f /usr/libexec/ld.so; then
+      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+      _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+      _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
+	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+	_LT_AC_TAGVAR(whole_archive_flag_spec, $1)="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+      fi
+      output_verbose_link_cmd='echo'
+    else
+      _LT_AC_TAGVAR(ld_shlibs, $1)=no
     fi
-    output_verbose_link_cmd='echo'
     ;;
   osf3*)
     case $cc_basename in
@@ -4468,15 +4084,10 @@
 	case $host_os in
 	  solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
 	  *)
-	    # The C++ compiler is used as linker so we must use $wl
-	    # flag to pass the commands to the underlying system
-	    # linker. We must also pass each convience library through
-	    # to the system linker between allextract/defaultextract.
-	    # The C++ compiler will combine linker options so we
-	    # cannot just pass the convience library names through
-	    # without $wl.
+	    # The compiler driver will combine and reorder linker options,
+	    # but understands `-z linker_flag'.
 	    # Supported since Solaris 2.6 (maybe 2.5.1?)
-	    _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract'
+	    _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
 	    ;;
 	esac
 	_LT_AC_TAGVAR(link_all_deplibs, $1)=yes
@@ -4523,6 +4134,12 @@
 	  fi
 
 	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-R $wl$libdir'
+	  case $host_os in
+	  solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
+	  *)
+	    _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+	    ;;
+	  esac
 	fi
 	;;
     esac
@@ -4766,7 +4383,7 @@
 # PORTME: override above test on systems where it is broken
 ifelse([$1],[CXX],
 [case $host_os in
-interix3*)
+interix[[3-9]]*)
   # Interix 3.5 installs completely hosed .la files for C++, so rather than
   # hack all around it, let's just trust "g++" to DTRT.
   _LT_AC_TAGVAR(predep_objects,$1)=
@@ -4774,13 +4391,46 @@
   _LT_AC_TAGVAR(postdeps,$1)=
   ;;
 
+linux*)
+  case `$CC -V 2>&1 | sed 5q` in
+  *Sun\ C*)
+    # Sun C++ 5.9
+    #
+    # The more standards-conforming stlport4 library is
+    # incompatible with the Cstd library. Avoid specifying
+    # it if it's in CXXFLAGS. Ignore libCrun as
+    # -library=stlport4 depends on it.
+    case " $CXX $CXXFLAGS " in
+    *" -library=stlport4 "*)
+      solaris_use_stlport4=yes
+      ;;
+    esac
+    if test "$solaris_use_stlport4" != yes; then
+      _LT_AC_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
+    fi
+    ;;
+  esac
+  ;;
+
 solaris*)
   case $cc_basename in
   CC*)
+    # The more standards-conforming stlport4 library is
+    # incompatible with the Cstd library. Avoid specifying
+    # it if it's in CXXFLAGS. Ignore libCrun as
+    # -library=stlport4 depends on it.
+    case " $CXX $CXXFLAGS " in
+    *" -library=stlport4 "*)
+      solaris_use_stlport4=yes
+      ;;
+    esac
+
     # Adding this requires a known-good setup of shared libraries for
     # Sun compiler versions before 5.6, else PIC objects from an old
     # archive will be linked into the output, leading to subtle bugs.
-    _LT_AC_TAGVAR(postdeps,$1)='-lCstd -lCrun'
+    if test "$solaris_use_stlport4" != yes; then
+      _LT_AC_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
+    fi
     ;;
   esac
   ;;
@@ -4829,10 +4479,17 @@
 _LT_AC_TAGVAR(objext, $1)=$objext
 
 # Code to be used in simple compile tests
-lt_simple_compile_test_code="      subroutine t\n      return\n      end\n"
+lt_simple_compile_test_code="\
+      subroutine t
+      return
+      end
+"
 
 # Code to be used in simple link tests
-lt_simple_link_test_code="      program t\n      end\n"
+lt_simple_link_test_code="\
+      program t
+      end
+"
 
 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
 _LT_AC_SYS_COMPILER
@@ -4911,10 +4568,10 @@
 _LT_AC_TAGVAR(objext, $1)=$objext
 
 # Code to be used in simple compile tests
-lt_simple_compile_test_code="class foo {}\n"
+lt_simple_compile_test_code="class foo {}"
 
 # Code to be used in simple link tests
-lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }\n'
+lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
 
 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
 _LT_AC_SYS_COMPILER
@@ -4967,7 +4624,7 @@
 _LT_AC_TAGVAR(objext, $1)=$objext
 
 # Code to be used in simple compile tests
-lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n'
+lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
 
 # Code to be used in simple link tests
 lt_simple_link_test_code="$lt_simple_compile_test_code"
@@ -5056,6 +4713,7 @@
     _LT_AC_TAGVAR(module_cmds, $1) \
     _LT_AC_TAGVAR(module_expsym_cmds, $1) \
     _LT_AC_TAGVAR(lt_cv_prog_compiler_c_o, $1) \
+    _LT_AC_TAGVAR(fix_srcfile_path, $1) \
     _LT_AC_TAGVAR(exclude_expsyms, $1) \
     _LT_AC_TAGVAR(include_expsyms, $1); do
 
@@ -5102,7 +4760,7 @@
 # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
 # Free Software Foundation, Inc.
 #
 # This file is part of GNU Libtool:
@@ -5427,7 +5085,7 @@
 sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
 
 # Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path="$_LT_AC_TAGVAR(fix_srcfile_path, $1)"
+fix_srcfile_path=$lt_fix_srcfile_path
 
 # Set to yes if exported symbols are required.
 always_export_symbols=$_LT_AC_TAGVAR(always_export_symbols, $1)
@@ -5510,6 +5168,7 @@
 # ---------------------------------
 AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE],
 [AC_REQUIRE([AC_CANONICAL_HOST])
+AC_REQUIRE([LT_AC_PROG_SED])
 AC_REQUIRE([AC_PROG_NM])
 AC_REQUIRE([AC_OBJEXT])
 # Check for command to grab the raw symbol name followed by C symbol from nm.
@@ -5546,7 +5205,7 @@
   lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
   lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
   ;;
-linux*)
+linux* | k*bsd*-gnu)
   if test "$host_cpu" = ia64; then
     symcode='[[ABCDGIRSTW]]'
     lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
@@ -5736,12 +5395,14 @@
       # like `-m68040'.
       _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
       ;;
-    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
-    mingw* | os2* | pw32*)
+    mingw* | cygwin* | os2* | pw32*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
+      # Although the cygwin gcc ignores -fPIC, still need this for old-style
+      # (--disable-auto-import) libraries
       _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
       ;;
     darwin* | rhapsody*)
@@ -5753,7 +5414,7 @@
       # DJGPP does not support shared libraries at all
       _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)=
       ;;
-    interix3*)
+    interix[[3-9]]*)
       # Interix 3.x gcc -fpic/-fPIC options generate broken code.
       # Instead, we relocate shared libraries at runtime.
       ;;
@@ -5819,7 +5480,7 @@
 	    ;;
 	esac
 	;;
-      freebsd* | kfreebsd*-gnu | dragonfly*)
+      freebsd* | dragonfly*)
 	# FreeBSD uses GNU C++
 	;;
       hpux9* | hpux10* | hpux11*)
@@ -5862,7 +5523,7 @@
 	    ;;
 	esac
 	;;
-      linux*)
+      linux* | k*bsd*-gnu)
 	case $cc_basename in
 	  KCC*)
 	    # KAI C++ Compiler
@@ -5889,6 +5550,14 @@
 	    _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
 	    ;;
 	  *)
+	    case `$CC -V 2>&1 | sed 5q` in
+	    *Sun\ C*)
+	      # Sun C++ 5.9
+	      _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+	      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+	      _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
+	      ;;
+	    esac
 	    ;;
 	esac
 	;;
@@ -5905,7 +5574,7 @@
 	    ;;
 	esac
 	;;
-      netbsd*)
+      netbsd* | netbsdelf*-gnu)
 	;;
       osf3* | osf4* | osf5*)
 	case $cc_basename in
@@ -6009,13 +5678,15 @@
       _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
       ;;
 
-    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
+      # Although the cygwin gcc ignores -fPIC, still need this for old-style
+      # (--disable-auto-import) libraries
       _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
       ;;
 
@@ -6025,7 +5696,7 @@
       _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
       ;;
 
-    interix3*)
+    interix[[3-9]]*)
       # Interix 3.x gcc -fpic/-fPIC options generate broken code.
       # Instead, we relocate shared libraries at runtime.
       ;;
@@ -6083,7 +5754,7 @@
        esac
        ;;
 
-    mingw* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'
@@ -6116,7 +5787,7 @@
       _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
       ;;
 
-    linux*)
+    linux* | k*bsd*-gnu)
       case $cc_basename in
       icc* | ecc*)
 	_LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
@@ -6135,6 +5806,22 @@
         # All Alpha code is PIC.
         _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
         ;;
+      *)
+        case `$CC -V 2>&1 | sed 5q` in
+	*Sun\ C*)
+	  # Sun C 5.9
+	  _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+	  _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+	  _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+	  ;;
+	*Sun\ F*)
+	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
+	  _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
+	  _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
+	  _LT_AC_TAGVAR(lt_prog_compiler_wl, $1)=''
+	  ;;
+	esac
+	;;
       esac
       ;;
 
@@ -6144,6 +5831,10 @@
       _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
       ;;
 
+    rdos*)
+      _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
+      ;;
+
     solaris*)
       _LT_AC_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
       _LT_AC_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
@@ -6238,7 +5929,8 @@
 # ------------------------------------
 # See if the linker supports building shared libraries.
 AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS],
-[AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
+[AC_REQUIRE([LT_AC_PROG_SED])dnl
+AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
 ifelse([$1],[CXX],[
   _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   case $host_os in
@@ -6255,8 +5947,11 @@
     _LT_AC_TAGVAR(export_symbols_cmds, $1)="$ltdll_cmds"
   ;;
   cygwin* | mingw*)
-    _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/;/^.* __nm__/s/^.* __nm__\([[^ ]]*\) [[^ ]]*/\1 DATA/;/^I /d;/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
+    _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;/^.*[[ ]]__nm__/s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
   ;;
+  linux* | k*bsd*-gnu)
+    _LT_AC_TAGVAR(link_all_deplibs, $1)=no
+  ;;
   *)
     _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   ;;
@@ -6394,7 +6089,7 @@
       _LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
       _LT_AC_TAGVAR(always_export_symbols, $1)=no
       _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
-      _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]] /s/.* \([[^ ]]*\)/\1 DATA/'\'' | $SED -e '\''/^[[AITW]] /s/.* //'\'' | sort | uniq > $export_symbols'
+      _LT_AC_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/'\'' -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
 
       if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
@@ -6412,7 +6107,7 @@
       fi
       ;;
 
-    interix3*)
+    interix[[3-9]]*)
       _LT_AC_TAGVAR(hardcode_direct, $1)=no
       _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
       _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
@@ -6427,7 +6122,7 @@
       _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
-    linux*)
+    gnu* | linux* | k*bsd*-gnu)
       if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
 	tmp_addflag=
 	case $cc_basename,$host_cpu in
@@ -6445,20 +6140,30 @@
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
 	esac
-	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+	case `$CC -V 2>&1 | sed 5q` in
+	*Sun\ C*)			# Sun C 5.9
+	  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+	  tmp_sharedflag='-G' ;;
+	*Sun\ F*)			# Sun Fortran 8.3
+	  tmp_sharedflag='-G' ;;
+	*)
+	  tmp_sharedflag='-shared' ;;
+	esac
+	_LT_AC_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
 	if test $supports_anon_versioning = yes; then
 	  _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $output_objdir/$libname.ver~
   cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
   $echo "local: *; };" >> $output_objdir/$libname.ver~
-	  $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+	  $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
 	fi
+	_LT_AC_TAGVAR(link_all_deplibs, $1)=no
       else
 	_LT_AC_TAGVAR(ld_shlibs, $1)=no
       fi
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
 	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
 	wlarc=
@@ -6491,7 +6196,7 @@
 
     sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
       case `$LD -v 2>&1` in
-        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) 
+        *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
 	_LT_AC_TAGVAR(ld_shlibs, $1)=no
 	cat <<_LT_EOF 1>&2
 
@@ -6610,7 +6315,7 @@
   	   strings "$collect2name" | grep resolve_lib_name >/dev/null
 	  then
   	  # We have reworked collect2
-  	  _LT_AC_TAGVAR(hardcode_direct, $1)=yes
+  	  :
 	  else
   	  # We have old collect2
   	  _LT_AC_TAGVAR(hardcode_direct, $1)=unsupported
@@ -6703,7 +6408,7 @@
       # The linker will automatically build a .lib file if we build a DLL.
       _LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true'
       # FIXME: Should let the user specify the lib program.
-      _LT_AC_TAGVAR(old_archive_cmds, $1)='lib /OUT:$oldlib$oldobjs$old_deplibs'
+      _LT_AC_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
       _LT_AC_TAGVAR(fix_srcfile_path, $1)='`cygpath -w "$srcfile"`'
       _LT_AC_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
       ;;
@@ -6745,10 +6450,10 @@
       case $cc_basename in
         xlc*)
          output_verbose_link_cmd='echo'
-         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
+         _LT_AC_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $xlcverstring'
          _LT_AC_TAGVAR(module_cmds, $1)='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
           # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-         _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+         _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $xlcverstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           ;;
        *)
@@ -6788,7 +6493,7 @@
       ;;
 
     # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | kfreebsd*-gnu | dragonfly*)
+    freebsd* | dragonfly*)
       _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
       _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
       _LT_AC_TAGVAR(hardcode_direct, $1)=yes
@@ -6890,7 +6595,7 @@
       _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
 	_LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
       else
@@ -6910,24 +6615,28 @@
       ;;
 
     openbsd*)
-      _LT_AC_TAGVAR(hardcode_direct, $1)=yes
-      _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
-      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	_LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	_LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+      if test -f /usr/libexec/ld.so; then
+	_LT_AC_TAGVAR(hardcode_direct, $1)=yes
+	_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
+	if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+	  _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
+	  _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+	  _LT_AC_TAGVAR(export_dynamic_flag_spec, $1)='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
+	     _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
+	     ;;
+	   *)
+	     _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+        fi
       else
-       case $host_os in
-	 openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*)
-	   _LT_AC_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	   _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
-	   ;;
-	 *)
-	   _LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	   _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}-rpath,$libdir'
-	   ;;
-       esac
+	_LT_AC_TAGVAR(ld_shlibs, $1)=no
       fi
       ;;
 
@@ -6986,17 +6695,16 @@
       case $host_os in
       solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
       *)
- 	# The compiler driver will combine linker options so we
- 	# cannot just pass the convience library names through
- 	# without $wl, iff we do not link with $LD.
- 	# Luckily, gcc supports the same syntax we need for Sun Studio.
+	# The compiler driver will combine and reorder linker options,
+	# but understands `-z linker_flag'.  GCC discards it without `$wl',
+	# but is careful enough not to reorder.
  	# Supported since Solaris 2.6 (maybe 2.5.1?)
- 	case $wlarc in
- 	'')
- 	  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' ;;
- 	*)
- 	  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' ;;
- 	esac ;;
+	if test "$GCC" = yes; then
+	  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+	else
+	  _LT_AC_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
+	fi
+	;;
       esac
       _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
       ;;
@@ -7053,7 +6761,7 @@
       fi
       ;;
 
-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7*)
+    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
       _LT_AC_TAGVAR(no_undefined_flag, $1)='${wl}-z,text'
       _LT_AC_TAGVAR(archive_cmds_need_lc, $1)=no
       _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -7128,7 +6836,7 @@
       # to ld, don't add -lc before -lgcc.
       AC_MSG_CHECKING([whether -lc should be explicitly linked in])
       $rm conftest*
-      printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+      echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
       if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
         soname=conftest
@@ -7231,6 +6939,30 @@
 [AC_CHECK_TOOL(RC, windres, no)
 ])
 
+
+# Cheap backport of AS_EXECUTABLE_P and required macros
+# from Autoconf 2.59; we should not use $as_executable_p directly.
+
+# _AS_TEST_PREPARE
+# ----------------
+m4_ifndef([_AS_TEST_PREPARE],
+[m4_defun([_AS_TEST_PREPARE],
+[if test -x / >/dev/null 2>&1; then
+  as_executable_p='test -x'
+else
+  as_executable_p='test -f'
+fi
+])])# _AS_TEST_PREPARE
+
+# AS_EXECUTABLE_P
+# ---------------
+# Check whether a file is executable.
+m4_ifndef([AS_EXECUTABLE_P],
+[m4_defun([AS_EXECUTABLE_P],
+[AS_REQUIRE([_AS_TEST_PREPARE])dnl
+$as_executable_p $1[]dnl
+])])# AS_EXECUTABLE_P
+
 # NOTE: This macro has been submitted for inclusion into   #
 #  GNU Autoconf as AC_PROG_SED.  When it is available in   #
 #  a released version of Autoconf we should remove this    #
@@ -7251,7 +6983,7 @@
   test -z "$as_dir" && as_dir=.
   for lt_ac_prog in sed gsed; do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
+      if AS_EXECUTABLE_P(["$as_dir/$lt_ac_prog$ac_exec_ext"]); then
         lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
       fi
     done
@@ -7294,211 +7026,6 @@
 AC_MSG_RESULT([$SED])
 ])
 
-
-dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml])
-# serial 35 IT_PROG_INTLTOOL
-AC_DEFUN([IT_PROG_INTLTOOL],
-[AC_PREREQ([2.50])dnl
-
-case "$am__api_version" in
-    1.[01234])
-	AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool])
-    ;;
-    *)
-    ;;
-esac
-
-if test -n "$1"; then
-    AC_MSG_CHECKING(for intltool >= $1)
-
-    INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
-    INTLTOOL_APPLIED_VERSION=`awk -F\" '/\\$VERSION / { print $ 2; }' ${ac_aux_dir}/intltool-update.in`
-    [INTLTOOL_APPLIED_VERSION_AS_INT=`awk -F\" '/\\$VERSION / { split($ 2, VERSION, "."); print VERSION[1] * 1000 + VERSION[2] * 100 + VERSION[3];}' ${ac_aux_dir}/intltool-update.in`
-    ]
-    AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found])
-    test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" ||
-	AC_MSG_ERROR([Your intltool is too old.  You need intltool $1 or later.])
-fi
-
-  INTLTOOL_DESKTOP_RULE='%.desktop:   %.desktop.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-     INTLTOOL_KEYS_RULE='%.keys:      %.keys.in      $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-     INTLTOOL_PROP_RULE='%.prop:      %.prop.in      $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-      INTLTOOL_OAF_RULE='%.oaf:       %.oaf.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@'
-     INTLTOOL_PONG_RULE='%.pong:      %.pong.in      $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-   INTLTOOL_SERVER_RULE='%.server:    %.server.in    $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-    INTLTOOL_SHEET_RULE='%.sheet:     %.sheet.in     $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-       INTLTOOL_UI_RULE='%.ui:        %.ui.in        $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-      INTLTOOL_XML_RULE='%.xml:       %.xml.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-      INTLTOOL_XML_NOMERGE_RULE='%.xml:       %.xml.in       $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@' 
-      INTLTOOL_XAM_RULE='%.xam:       %.xml.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-      INTLTOOL_KBD_RULE='%.kbd:       %.kbd.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-    INTLTOOL_CAVES_RULE='%.caves:     %.caves.in     $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-  INTLTOOL_SCHEMAS_RULE='%.schemas:   %.schemas.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-    INTLTOOL_THEME_RULE='%.theme:     %.theme.in     $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
-    INTLTOOL_SERVICE_RULE='%.service: %.service.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
-
-AC_SUBST(INTLTOOL_DESKTOP_RULE)
-AC_SUBST(INTLTOOL_DIRECTORY_RULE)
-AC_SUBST(INTLTOOL_KEYS_RULE)
-AC_SUBST(INTLTOOL_PROP_RULE)
-AC_SUBST(INTLTOOL_OAF_RULE)
-AC_SUBST(INTLTOOL_PONG_RULE)
-AC_SUBST(INTLTOOL_SERVER_RULE)
-AC_SUBST(INTLTOOL_SHEET_RULE)
-AC_SUBST(INTLTOOL_SOUNDLIST_RULE)
-AC_SUBST(INTLTOOL_UI_RULE)
-AC_SUBST(INTLTOOL_XAM_RULE)
-AC_SUBST(INTLTOOL_KBD_RULE)
-AC_SUBST(INTLTOOL_XML_RULE)
-AC_SUBST(INTLTOOL_XML_NOMERGE_RULE)
-AC_SUBST(INTLTOOL_CAVES_RULE)
-AC_SUBST(INTLTOOL_SCHEMAS_RULE)
-AC_SUBST(INTLTOOL_THEME_RULE)
-AC_SUBST(INTLTOOL_SERVICE_RULE)
-
-# Use the tools built into the package, not the ones that are installed.
-AC_SUBST(INTLTOOL_EXTRACT, '$(top_builddir)/intltool-extract')
-AC_SUBST(INTLTOOL_MERGE, '$(top_builddir)/intltool-merge')
-AC_SUBST(INTLTOOL_UPDATE, '$(top_builddir)/intltool-update')
-
-AC_PATH_PROG(INTLTOOL_PERL, perl)
-if test -z "$INTLTOOL_PERL"; then
-   AC_MSG_ERROR([perl not found; required for intltool])
-fi
-if test -z "`$INTLTOOL_PERL -v | fgrep '5.' 2> /dev/null`"; then
-   AC_MSG_ERROR([perl 5.x required for intltool])
-fi
-if test "x$2" != "xno-xml"; then
-   AC_MSG_CHECKING([for XML::Parser])
-   if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then
-       AC_MSG_RESULT([ok])
-   else
-       AC_MSG_ERROR([XML::Parser perl module is required for intltool])
-   fi
-fi
-
-AC_PATH_PROG(INTLTOOL_ICONV, iconv, iconv)
-AC_PATH_PROG(INTLTOOL_MSGFMT, msgfmt, msgfmt)
-AC_PATH_PROG(INTLTOOL_MSGMERGE, msgmerge, msgmerge)
-AC_PATH_PROG(INTLTOOL_XGETTEXT, xgettext, xgettext)
-
-# Substitute ALL_LINGUAS so we can use it in po/Makefile
-AC_SUBST(ALL_LINGUAS)
-
-# Set DATADIRNAME correctly if it is not set yet
-# (copied from glib-gettext.m4)
-if test -z "$DATADIRNAME"; then
-  AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
-                 return _nl_msg_cat_cntr],
-    [DATADIRNAME=share],
-    [case $host in
-    *-*-solaris*)
-    dnl On Solaris, if bind_textdomain_codeset is in libc,
-    dnl GNU format message catalog is always supported,
-    dnl since both are added to the libc all together.
-    dnl Hence, we'd like to go with DATADIRNAME=share
-    dnl in this case.
-    AC_CHECK_FUNC(bind_textdomain_codeset,
-      [DATADIRNAME=share], [DATADIRNAME=lib])
-    ;;
-    *)
-    [DATADIRNAME=lib]
-    ;;
-    esac])
-fi
-AC_SUBST(DATADIRNAME)
-
-IT_PO_SUBDIR([po])
-
-dnl The following is very similar to
-dnl
-dnl	AC_CONFIG_FILES([intltool-extract intltool-merge intltool-update])
-dnl
-dnl with the following slight differences:
-dnl  - the *.in files are in ac_aux_dir,
-dnl  - if the file haven't changed upon reconfigure, it's not touched,
-dnl  - the evaluation of the third parameter enables a hack which computes
-dnl    the actual value of $libdir,
-dnl  - the user sees "executing intltool commands", instead of
-dnl    "creating intltool-extract" and such.
-dnl
-dnl Nothing crucial here, and we could use AC_CONFIG_FILES, if there were
-dnl a reason for it.
-
-AC_CONFIG_COMMANDS([intltool], [
-
-for file in intltool-extract intltool-merge intltool-update; do
-  sed -e "s|@INTLTOOL_EXTRACT@|`pwd`/intltool-extract|g" \
-      -e "s|@INTLTOOL_LIBDIR@|${INTLTOOL_LIBDIR}|g" \
-      -e "s|@INTLTOOL_ICONV@|${INTLTOOL_ICONV}|g" \
-      -e "s|@INTLTOOL_MSGFMT@|${INTLTOOL_MSGFMT}|g" \
-      -e "s|@INTLTOOL_MSGMERGE@|${INTLTOOL_MSGMERGE}|g" \
-      -e "s|@INTLTOOL_XGETTEXT@|${INTLTOOL_XGETTEXT}|g" \
-      -e "s|@INTLTOOL_PERL@|${INTLTOOL_PERL}|g" \
-	< ${ac_aux_dir}/${file}.in > ${file}.out
-  if cmp -s ${file} ${file}.out 2>/dev/null; then
-    rm -f ${file}.out
-  else
-    mv -f ${file}.out ${file}
-  fi
-  chmod ugo+x ${file}
-  chmod u+w ${file}
-done
-
-],
-[INTLTOOL_PERL='${INTLTOOL_PERL}' ac_aux_dir='${ac_aux_dir}'
-prefix="$prefix" exec_prefix="$exec_prefix" INTLTOOL_LIBDIR="$libdir" 
-INTLTOOL_EXTRACT='${INTLTOOL_EXTRACT}' INTLTOOL_ICONV='${INTLTOOL_ICONV}'
-INTLTOOL_MSGFMT='${INTLTOOL_MSGFMT}' INTLTOOL_MSGMERGE='${INTLTOOL_MSGMERGE}'
-INTLTOOL_XGETTEXT='${INTLTOOL_XGETTEXT}'])
-
-])
-
-
-# IT_PO_SUBDIR(DIRNAME)
-# ---------------------
-# All po subdirs have to be declared with this macro; the subdir "po" is
-# declared by IT_PROG_INTLTOOL.
-#
-AC_DEFUN([IT_PO_SUBDIR],
-[AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS.
-dnl
-dnl The following CONFIG_COMMANDS should be exetuted at the very end
-dnl of config.status.
-AC_CONFIG_COMMANDS_PRE([
-  AC_CONFIG_COMMANDS([$1/stamp-it], [
-    rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp"
-    >"$1/stamp-it.tmp"
-    [sed '/^#/d
-	 s/^[[].*] *//
-	 /^[ 	]*$/d
-	'"s|^|	$ac_top_srcdir/|" \
-      "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES"
-    ]
-    if test ! -f "$1/Makefile"; then
-      AC_MSG_ERROR([$1/Makefile is not ready.])
-    fi
-    mv "$1/Makefile" "$1/Makefile.tmp"
-    [sed '/^POTFILES =/,/[^\\]$/ {
-		/^POTFILES =/!d
-		r $1/POTFILES
-	  }
-	 ' "$1/Makefile.tmp" >"$1/Makefile"]
-    rm -f "$1/Makefile.tmp"
-    mv "$1/stamp-it.tmp" "$1/stamp-it"
-  ])
-])dnl
-])
-
-
-# deprecated macros
-AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL])
-# A hint is needed for aclocal from Automake <= 1.9.4:
-# AC_DEFUN([AC_PROG_INTLTOOL], ...)
-
-
 # pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
 # 
 # Copyright © 2004 Scott James Remnant <scott at netsplit.com>.
@@ -7647,7 +7174,7 @@
 
 _PKG_TEXT
 
-To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>.])],
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
 		[$4])
 else
 	$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
@@ -7657,691 +7184,753 @@
 fi[]dnl
 ])# PKG_CHECK_MODULES
 
-# Copyright (C) 1995-2002 Free Software Foundation, Inc.
-# Copyright (C) 2001-2003,2004 Red Hat, Inc.
+# Copyright (C) 2002, 2003, 2005  Free Software Foundation, Inc.
 #
-# This file is free software, distributed under the terms of the GNU
-# General Public License.  As a special exception to the GNU General
-# Public License, this file may be distributed as part of a program
-# that contains a configuration script generated by Autoconf, under
-# the same distribution terms as the rest of that program.
+# 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_AUTOMAKE_VERSION(VERSION)
+# ----------------------------
+# Automake X.Y traces this macro to ensure aclocal.m4 has been
+# generated from the m4 files accompanying Automake X.Y.
+AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"])
+
+# AM_SET_CURRENT_AUTOMAKE_VERSION
+# -------------------------------
+# Call AM_AUTOMAKE_VERSION so it can be traced.
+# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
+	 [AM_AUTOMAKE_VERSION([1.9.6])])
+
+# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
+
+# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
 #
-# This file can be copied and used freely without restrictions.  It can
-# be used in projects which are not available under the GNU Public License
-# but which still want to provide support for the GNU gettext functionality.
+# 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.
+
+# 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/../..'.
 #
-# Macro to add for using GNU gettext.
-# Ulrich Drepper <drepper at cygnus.com>, 1995, 1996
+# 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.
 #
-# Modified to never use included libintl. 
-# Owen Taylor <otaylor at redhat.com>, 12/15/1998
+# $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
 #
-# Major rework to remove unused code
-# Owen Taylor <otaylor at redhat.com>, 12/11/2002
+# 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
+# start a VPATH build or use an absolute $srcdir.
 #
-# Added better handling of ALL_LINGUAS from GNU gettext version 
-# written by Bruno Haible, Owen Taylor <otaylor.redhat.com> 5/30/3002
+# 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.
 #
-# Modified to require ngettext
-# Matthias Clasen <mclasen at redhat.com> 08/06/2004
+# 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
+# Free Software Foundation, Inc.
 #
-# We need this here as well, since someone might use autoconf-2.5x
-# to configure GLib then an older version to configure a package
-# using AM_GLIB_GNU_GETTEXT
-AC_PREREQ(2.53)
+# 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.
 
-dnl
-dnl We go to great lengths to make sure that aclocal won't 
-dnl try to pull in the installed version of these macros
-dnl when running aclocal in the glib directory.
-dnl
-m4_copy([AC_DEFUN],[glib_DEFUN])
-m4_copy([AC_REQUIRE],[glib_REQUIRE])
-dnl
-dnl At the end, if we're not within glib, we'll define the public
-dnl definitions in terms of our private definitions.
-dnl
+# serial 7
 
-# GLIB_LC_MESSAGES
-#--------------------
-glib_DEFUN([GLIB_LC_MESSAGES],
-  [AC_CHECK_HEADERS([locale.h])
-    if test $ac_cv_header_locale_h = yes; then
-    AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
-      [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
-       am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
-    if test $am_cv_val_LC_MESSAGES = yes; then
-      AC_DEFINE(HAVE_LC_MESSAGES, 1,
-        [Define if your <locale.h> file defines LC_MESSAGES.])
-    fi
-  fi])
+# 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_SUBST([$1_TRUE])
+AC_SUBST([$1_FALSE])
+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])])
 
-# GLIB_PATH_PROG_WITH_TEST
-#----------------------------
-dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
-dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
-glib_DEFUN([GLIB_PATH_PROG_WITH_TEST],
-[# Extract the first word of "$2", so it can be a program name with args.
-set dummy $2; ac_word=[$]2
-AC_MSG_CHECKING([for $ac_word])
-AC_CACHE_VAL(ac_cv_path_$1,
-[case "[$]$1" in
-  /*)
-  ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
-  ;;
-  *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}:"
-  for ac_dir in ifelse([$5], , $PATH, [$5]); do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      if [$3]; then
-	ac_cv_path_$1="$ac_dir/$ac_word"
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# 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 8
+
+# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
+# written in clear, in which case automake, when reading aclocal.m4,
+# will think it sees a *use*, and therefore will trigger all it's
+# C support machinery.  Also note that it means that autoscan, seeing
+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
+
+
+# _AM_DEPENDENCIES(NAME)
+# ----------------------
+# See how the compiler implements dependency checking.
+# NAME is "CC", "CXX", "GCJ", or "OBJC".
+# We try a few techniques and use that to set a single cache variable.
+#
+# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
+# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
+# dependency, and given that the user is not expected to run this macro,
+# just rely on AC_PROG_CC.
+AC_DEFUN([_AM_DEPENDENCIES],
+[AC_REQUIRE([AM_SET_DEPDIR])dnl
+AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
+AC_REQUIRE([AM_MAKE_INCLUDE])dnl
+AC_REQUIRE([AM_DEP_TRACK])dnl
+
+ifelse([$1], CC,   [depcc="$CC"   am_compiler_list=],
+       [$1], CXX,  [depcc="$CXX"  am_compiler_list=],
+       [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
+       [$1], GCJ,  [depcc="$GCJ"  am_compiler_list='gcc3 gcc'],
+                   [depcc="$$1"   am_compiler_list=])
+
+AC_CACHE_CHECK([dependency style of $depcc],
+               [am_cv_$1_dependencies_compiler_type],
+[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+  # We make a subdir and do the tests there.  Otherwise we can end up
+  # making bogus files that we don't know about and never remove.  For
+  # instance it was reported that on HP-UX the gcc test will end up
+  # making a dummy file named `D' -- because `-MD' means `put the output
+  # in D'.
+  mkdir conftest.dir
+  # Copy depcomp to subdir because otherwise we won't find it if we're
+  # using a relative directory.
+  cp "$am_depcomp" conftest.dir
+  cd conftest.dir
+  # We will build objects and dependencies in a subdirectory because
+  # it helps to detect inapplicable dependency modes.  For instance
+  # both Tru64's cc and ICC support -MD to output dependencies as a
+  # side effect of compilation, but ICC will put the dependencies in
+  # the current directory while Tru64 will put them in the object
+  # directory.
+  mkdir sub
+
+  am_cv_$1_dependencies_compiler_type=none
+  if test "$am_compiler_list" = ""; then
+     am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
+  fi
+  for depmode in $am_compiler_list; do
+    # Setup a source with many dependencies, because some compilers
+    # like to wrap large dependency lists on column 80 (with \), and
+    # we should not choose a depcomp mode which is confused by this.
+    #
+    # We need to recreate these files for each test, as the compiler may
+    # overwrite some of them when testing with obscure command lines.
+    # This happens at least with the AIX C compiler.
+    : > sub/conftest.c
+    for i in 1 2 3 4 5 6; do
+      echo '#include "conftst'$i'.h"' >> sub/conftest.c
+      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+      # Solaris 8's {/usr,}/bin/sh.
+      touch sub/conftst$i.h
+    done
+    echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+    case $depmode in
+    nosideeffect)
+      # after this tag, mechanisms are not by side-effect, so they'll
+      # only be used when explicitly requested
+      if test "x$enable_dependency_tracking" = xyes; then
+	continue
+      else
 	break
       fi
+      ;;
+    none) break ;;
+    esac
+    # We check with `-c' and `-o' for the sake of the "dashmstdout"
+    # mode.  It turns out that the SunPro C++ compiler does not properly
+    # handle `-M -o', and we need to detect this.
+    if depmode=$depmode \
+       source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+       depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+       $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+         >/dev/null 2>conftest.err &&
+       grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+       grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+       ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+      # icc doesn't choke on unknown options, it will just issue warnings
+      # or remarks (even with -Werror).  So we grep stderr for any message
+      # that says an option was ignored or not supported.
+      # When given -MP, icc 7.0 and 7.1 complain thusly:
+      #   icc: Command line warning: ignoring option '-M'; no argument required
+      # The diagnosis changed in icc 8.0:
+      #   icc: Command line remark: option '-MP' not supported
+      if (grep 'ignoring option' conftest.err ||
+          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+        am_cv_$1_dependencies_compiler_type=$depmode
+        break
+      fi
     fi
   done
-  IFS="$ac_save_ifs"
-dnl If no 4th arg is given, leave the cache variable unset,
-dnl so AC_PATH_PROGS will keep looking.
-ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
-])dnl
-  ;;
-esac])dnl
-$1="$ac_cv_path_$1"
-if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
-  AC_MSG_RESULT([$]$1)
+
+  cd ..
+  rm -rf conftest.dir
 else
-  AC_MSG_RESULT(no)
+  am_cv_$1_dependencies_compiler_type=none
 fi
-AC_SUBST($1)dnl
 ])
+AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
+AM_CONDITIONAL([am__fastdep$1], [
+  test "x$enable_dependency_tracking" != xno \
+  && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
+])
 
-# GLIB_WITH_NLS
-#-----------------
-glib_DEFUN([GLIB_WITH_NLS],
-  dnl NLS is obligatory
-  [AC_REQUIRE([AC_CANONICAL_HOST])dnl
-    USE_NLS=yes
-    AC_SUBST(USE_NLS)
 
-    gt_cv_have_gettext=no
+# AM_SET_DEPDIR
+# -------------
+# Choose a directory name for dependency files.
+# This macro is AC_REQUIREd in _AM_DEPENDENCIES
+AC_DEFUN([AM_SET_DEPDIR],
+[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
+])
 
-    CATOBJEXT=NONE
-    XGETTEXT=:
-    INTLLIBS=
 
-    AC_CHECK_HEADER(libintl.h,
-     [gt_cv_func_dgettext_libintl="no"
-      libintl_extra_libs=""
+# AM_DEP_TRACK
+# ------------
+AC_DEFUN([AM_DEP_TRACK],
+[AC_ARG_ENABLE(dependency-tracking,
+[  --disable-dependency-tracking  speeds up one-time build
+  --enable-dependency-tracking   do not reject slow dependency extractors])
+if test "x$enable_dependency_tracking" != xno; then
+  am_depcomp="$ac_aux_dir/depcomp"
+  AMDEPBACKSLASH='\'
+fi
+AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
+AC_SUBST([AMDEPBACKSLASH])
+])
 
-      #
-      # First check in libc
-      #
-      AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc,
-        [AC_TRY_LINK([
-#include <libintl.h>
-],
-         [return !ngettext ("","", 1)],
-	  gt_cv_func_ngettext_libc=yes,
-          gt_cv_func_ngettext_libc=no)
-        ])
-  
-      if test "$gt_cv_func_ngettext_libc" = "yes" ; then
-	      AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc,
-        	[AC_TRY_LINK([
-#include <libintl.h>
-],
-	          [return !dgettext ("","")],
-		  gt_cv_func_dgettext_libc=yes,
-	          gt_cv_func_dgettext_libc=no)
-        	])
-      fi
-  
-      if test "$gt_cv_func_ngettext_libc" = "yes" ; then
-        AC_CHECK_FUNCS(bind_textdomain_codeset)
-      fi
+# Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-      #
-      # If we don't have everything we want, check in libintl
-      #
-      if test "$gt_cv_func_dgettext_libc" != "yes" \
-	 || test "$gt_cv_func_ngettext_libc" != "yes" \
-         || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
-        
-        AC_CHECK_LIB(intl, bindtextdomain,
-	    [AC_CHECK_LIB(intl, ngettext,
-		    [AC_CHECK_LIB(intl, dgettext,
-			          gt_cv_func_dgettext_libintl=yes)])])
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# 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.
 
-	if test "$gt_cv_func_dgettext_libintl" != "yes" ; then
-	  AC_MSG_CHECKING([if -liconv is needed to use gettext])
-	  AC_MSG_RESULT([])
-  	  AC_CHECK_LIB(intl, ngettext,
-          	[AC_CHECK_LIB(intl, dcgettext,
-		       [gt_cv_func_dgettext_libintl=yes
-			libintl_extra_libs=-liconv],
-			:,-liconv)],
-		:,-liconv)
-        fi
+#serial 3
 
-        #
-        # If we found libintl, then check in it for bind_textdomain_codeset();
-        # we'll prefer libc if neither have bind_textdomain_codeset(),
-        # and both have dgettext and ngettext
-        #
-        if test "$gt_cv_func_dgettext_libintl" = "yes" ; then
-          glib_save_LIBS="$LIBS"
-          LIBS="$LIBS -lintl $libintl_extra_libs"
-          unset ac_cv_func_bind_textdomain_codeset
-          AC_CHECK_FUNCS(bind_textdomain_codeset)
-          LIBS="$glib_save_LIBS"
+# _AM_OUTPUT_DEPENDENCY_COMMANDS
+# ------------------------------
+AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
+[for mf in $CONFIG_FILES; do
+  # Strip MF so we end up with the name of the file.
+  mf=`echo "$mf" | sed -e 's/:.*$//'`
+  # Check whether this is an Automake generated Makefile or not.
+  # We used to match only the files named `Makefile.in', but
+  # some people rename them; so instead we look at the file content.
+  # Grep'ing the first line is not enough: some people post-process
+  # each Makefile.in and add a new line on top of each file to say so.
+  # So let's grep whole file.
+  if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+    dirpart=`AS_DIRNAME("$mf")`
+  else
+    continue
+  fi
+  # Extract the definition of DEPDIR, am__include, and am__quote
+  # from the Makefile without running `make'.
+  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+  test -z "$DEPDIR" && continue
+  am__include=`sed -n 's/^am__include = //p' < "$mf"`
+  test -z "am__include" && continue
+  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+  # When using ansi2knr, U may be empty or an underscore; expand it
+  U=`sed -n 's/^U = //p' < "$mf"`
+  # Find all dependency output files, they are included files with
+  # $(DEPDIR) in their names.  We invoke sed twice because it is the
+  # simplest approach to changing $(DEPDIR) to its actual value in the
+  # expansion.
+  for file in `sed -n "
+    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+       sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+    # Make sure the directory exists.
+    test -f "$dirpart/$file" && continue
+    fdir=`AS_DIRNAME(["$file"])`
+    AS_MKDIR_P([$dirpart/$fdir])
+    # echo "creating $dirpart/$file"
+    echo '# dummy' > "$dirpart/$file"
+  done
+done
+])# _AM_OUTPUT_DEPENDENCY_COMMANDS
 
-          if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then
-            gt_cv_func_dgettext_libc=no
-          else
-            if test "$gt_cv_func_dgettext_libc" = "yes" \
-		&& test "$gt_cv_func_ngettext_libc" = "yes"; then
-              gt_cv_func_dgettext_libintl=no
-            fi
-          fi
-        fi
-      fi
 
-      if test "$gt_cv_func_dgettext_libc" = "yes" \
-	|| test "$gt_cv_func_dgettext_libintl" = "yes"; then
-        gt_cv_have_gettext=yes
-      fi
-  
-      if test "$gt_cv_func_dgettext_libintl" = "yes"; then
-        INTLLIBS="-lintl $libintl_extra_libs"
-      fi
-  
-      if test "$gt_cv_have_gettext" = "yes"; then
-	AC_DEFINE(HAVE_GETTEXT,1,
-	  [Define if the GNU gettext() function is already present or preinstalled.])
-	GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
-	  [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
-	if test "$MSGFMT" != "no"; then
-          glib_save_LIBS="$LIBS"
-          LIBS="$LIBS $INTLLIBS"
-	  AC_CHECK_FUNCS(dcgettext)
-	  MSGFMT_OPTS=
-	  AC_MSG_CHECKING([if msgfmt accepts -c])
-	  GLIB_RUN_PROG([msgfmt -c -o /dev/null],[
-msgid ""
-msgstr ""
-"Content-Type: text/plain; charset=UTF-8\n"
-"Project-Id-Version: test 1.0\n"
-"PO-Revision-Date: 2007-02-15 12:01+0100\n"
-"Last-Translator: test <foo at bar.xx>\n"
-"Language-Team: C <LL at li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Transfer-Encoding: 8bit\n"
-], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])])
-	  AC_SUBST(MSGFMT_OPTS)
-	  AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
-	  GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
-	    [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
-	  AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
-			 return _nl_msg_cat_cntr],
-	    [CATOBJEXT=.gmo 
-             DATADIRNAME=share],
-	    [case $host in
-	    *-*-solaris*)
-	    dnl On Solaris, if bind_textdomain_codeset is in libc,
-	    dnl GNU format message catalog is always supported,
-            dnl since both are added to the libc all together.
-	    dnl Hence, we'd like to go with DATADIRNAME=share and
-	    dnl and CATOBJEXT=.gmo in this case.
-            AC_CHECK_FUNC(bind_textdomain_codeset,
-	      [CATOBJEXT=.gmo 
-               DATADIRNAME=share],
-	      [CATOBJEXT=.mo
-               DATADIRNAME=lib])
-	    ;;
-	    *)
-	    CATOBJEXT=.mo
-            DATADIRNAME=lib
-	    ;;
-	    esac])
-          LIBS="$glib_save_LIBS"
-	  INSTOBJEXT=.mo
-	else
-	  gt_cv_have_gettext=no
-	fi
-      fi
-    ])
+# AM_OUTPUT_DEPENDENCY_COMMANDS
+# -----------------------------
+# This macro should only be invoked once -- use via AC_REQUIRE.
+#
+# This code is only required when automatic dependency tracking
+# is enabled.  FIXME.  This creates each `.P' file that we will
+# need in order to bootstrap the dependency handling code.
+AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
+[AC_CONFIG_COMMANDS([depfiles],
+     [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
+     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
+])
 
-    if test "$gt_cv_have_gettext" = "yes" ; then
-      AC_DEFINE(ENABLE_NLS, 1,
-        [always defined to indicate that i18n is enabled])
-    fi
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# 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.
 
-    dnl Test whether we really found GNU xgettext.
-    if test "$XGETTEXT" != ":"; then
-      dnl If it is not GNU xgettext we define it as : so that the
-      dnl Makefiles still can work.
-      if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
-        : ;
-      else
-        AC_MSG_RESULT(
-	  [found xgettext program is not GNU xgettext; ignore it])
-        XGETTEXT=":"
-      fi
-    fi
+# serial 8
 
-    # We need to process the po/ directory.
-    POSUB=po
+# AM_CONFIG_HEADER is obsolete.  It has been replaced by AC_CONFIG_HEADERS.
+AU_DEFUN([AM_CONFIG_HEADER], [AC_CONFIG_HEADERS($@)])
 
-    AC_OUTPUT_COMMANDS(
-      [case "$CONFIG_FILES" in *po/Makefile.in*)
-        sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
-      esac])
+# Do all the work for Automake.                             -*- Autoconf -*-
 
-    dnl These rules are solely for the distribution goal.  While doing this
-    dnl we only have to keep exactly one list of the available catalogs
-    dnl in configure.in.
-    for lang in $ALL_LINGUAS; do
-      GMOFILES="$GMOFILES $lang.gmo"
-      POFILES="$POFILES $lang.po"
-    done
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# 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.
 
-    dnl Make all variables we use known to autoconf.
-    AC_SUBST(CATALOGS)
-    AC_SUBST(CATOBJEXT)
-    AC_SUBST(DATADIRNAME)
-    AC_SUBST(GMOFILES)
-    AC_SUBST(INSTOBJEXT)
-    AC_SUBST(INTLLIBS)
-    AC_SUBST(PO_IN_DATADIR_TRUE)
-    AC_SUBST(PO_IN_DATADIR_FALSE)
-    AC_SUBST(POFILES)
-    AC_SUBST(POSUB)
-  ])
+# serial 12
 
-# AM_GLIB_GNU_GETTEXT
-# -------------------
-# Do checks necessary for use of gettext. If a suitable implementation 
-# of gettext is found in either in libintl or in the C library,
-# it will set INTLLIBS to the libraries needed for use of gettext
-# and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable
-# gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST()
-# on various variables needed by the Makefile.in.in installed by 
-# glib-gettextize.
-dnl
-glib_DEFUN([GLIB_GNU_GETTEXT],
-  [AC_REQUIRE([AC_PROG_CC])dnl
-   AC_REQUIRE([AC_HEADER_STDC])dnl
-   
-   GLIB_LC_MESSAGES
-   GLIB_WITH_NLS
+# 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.
 
-   if test "$gt_cv_have_gettext" = "yes"; then
-     if test "x$ALL_LINGUAS" = "x"; then
-       LINGUAS=
-     else
-       AC_MSG_CHECKING(for catalogs to be installed)
-       NEW_LINGUAS=
-       for presentlang in $ALL_LINGUAS; do
-         useit=no
-         if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then
-           desiredlanguages="$LINGUAS"
-         else
-           desiredlanguages="$ALL_LINGUAS"
-         fi
-         for desiredlang in $desiredlanguages; do
- 	   # Use the presentlang catalog if desiredlang is
-           #   a. equal to presentlang, or
-           #   b. a variant of presentlang (because in this case,
-           #      presentlang can be used as a fallback for messages
-           #      which are not translated in the desiredlang catalog).
-           case "$desiredlang" in
-             "$presentlang"*) useit=yes;;
-           esac
-         done
-         if test $useit = yes; then
-           NEW_LINGUAS="$NEW_LINGUAS $presentlang"
-         fi
-       done
-       LINGUAS=$NEW_LINGUAS
-       AC_MSG_RESULT($LINGUAS)
-     fi
+# 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.58])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
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+   test -f $srcdir/config.status; then
+  AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
+fi
 
-     dnl Construct list of names of catalog files to be constructed.
-     if test -n "$LINGUAS"; then
-       for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
-     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])
 
-   dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
-   dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
-   dnl Try to locate is.
-   MKINSTALLDIRS=
-   if test -n "$ac_aux_dir"; then
-     MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
-   fi
-   if test -z "$MKINSTALLDIRS"; then
-     MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
-   fi
-   AC_SUBST(MKINSTALLDIRS)
+# 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_SUBST([PACKAGE], [$1])dnl
+ AC_SUBST([VERSION], [$2])],
+[_AM_SET_OPTIONS([$1])dnl
+ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
+ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
 
-   dnl Generate list of files to be processed by xgettext which will
-   dnl be included in po/Makefile.
-   test -d po || mkdir po
-   if test "x$srcdir" != "x."; then
-     if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
-       posrcprefix="$srcdir/"
-     else
-       posrcprefix="../$srcdir/"
-     fi
-   else
-     posrcprefix="../"
-   fi
-   rm -f po/POTFILES
-   sed -e "/^#/d" -e "/^\$/d" -e "s,.*,	$posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
-	< $srcdir/po/POTFILES.in > po/POTFILES
-  ])
+_AM_IF_OPTION([no-define],,
+[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+ AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
 
-# AM_GLIB_DEFINE_LOCALEDIR(VARIABLE)
-# -------------------------------
-# Define VARIABLE to the location where catalog files will
-# be installed by po/Makefile.
-glib_DEFUN([GLIB_DEFINE_LOCALEDIR],
-[glib_REQUIRE([GLIB_GNU_GETTEXT])dnl
-glib_save_prefix="$prefix"
-glib_save_exec_prefix="$exec_prefix"
-glib_save_datarootdir="$datarootdir"
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-test "x$exec_prefix" = xNONE && exec_prefix=$prefix
-datarootdir=`eval echo "${datarootdir}"`
-if test "x$CATOBJEXT" = "x.mo" ; then
-  localedir=`eval echo "${libdir}/locale"`
-else
-  localedir=`eval echo "${datadir}/locale"`
-fi
-prefix="$glib_save_prefix"
-exec_prefix="$glib_save_exec_prefix"
-datarootdir="$glib_save_datarootdir"
-AC_DEFINE_UNQUOTED($1, "$localedir",
-  [Define the location where the catalogs will be installed])
+# 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_PROG_INSTALL_SH
+AM_PROG_INSTALL_STRIP
+AC_REQUIRE([AM_PROG_MKDIR_P])dnl
+# 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
+AC_PROVIDE_IFELSE([AC_PROG_CXX],
+                  [_AM_DEPENDENCIES(CXX)],
+                  [define([AC_PROG_CXX],
+                          defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
 ])
+])
 
-dnl
-dnl Now the definitions that aclocal will find
-dnl
-ifdef(glib_configure_in,[],[
-AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)])
-AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)])
-])dnl
 
-# GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL])
-# 
-# Create a temporary file with TEST-FILE as its contents and pass the
-# file name to PROGRAM.  Perform ACTION-IF-PASS if PROGRAM exits with
-# 0 and perform ACTION-IF-FAIL for any other exit status.
-AC_DEFUN([GLIB_RUN_PROG],
-[cat >conftest.foo <<_ACEOF
-$2
-_ACEOF
-if AC_RUN_LOG([$1 conftest.foo]); then
-  m4_ifval([$3], [$3], [:])
-m4_ifvaln([$4], [else $4])dnl
-echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD
-sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD
-fi])
+# 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_stamp_count=1
+for _am_header in $config_headers :; do
+  case $_am_header in
+    $1 | $1:* )
+      break ;;
+    * )
+      _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+  esac
+done
+echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
 
-dnl -*- mode: autoconf -*-
+# Copyright (C) 2001, 2003, 2005  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
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+AC_SUBST(install_sh)])
 
-dnl Usage:
-dnl   GTK_DOC_CHECK([minimum-gtk-doc-version])
-AC_DEFUN([GTK_DOC_CHECK],
-[
-  AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
-  AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
-  dnl for overriding the documentation installation directory
-  AC_ARG_WITH(html-dir,
-    AC_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),,
-    [with_html_dir='${datadir}/gtk-doc/html'])
-  HTML_DIR="$with_html_dir"
-  AC_SUBST(HTML_DIR)
+# Copyright (C) 2003, 2005  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.
 
-  dnl enable/disable documentation building
-  AC_ARG_ENABLE(gtk-doc,
-    AC_HELP_STRING([--enable-gtk-doc],
-                   [use gtk-doc to build documentation [default=no]]),,
-    enable_gtk_doc=no)
+# serial 2
 
-  have_gtk_doc=no
-  if test x$enable_gtk_doc = xyes; then
-    if test -z "$PKG_CONFIG"; then
-      AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
-    fi
-    if test "$PKG_CONFIG" != "no" && $PKG_CONFIG --exists gtk-doc; then
-      have_gtk_doc=yes
-    fi
+# 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])])
 
-  dnl do we want to do a version check?
-ifelse([$1],[],,
-    [gtk_doc_min_version=$1
-    if test "$have_gtk_doc" = yes; then
-      AC_MSG_CHECKING([gtk-doc version >= $gtk_doc_min_version])
-      if $PKG_CONFIG --atleast-version $gtk_doc_min_version gtk-doc; then
-        AC_MSG_RESULT(yes)
-      else
-        AC_MSG_RESULT(no)
-        have_gtk_doc=no
-      fi
-    fi
-])
-    if test "$have_gtk_doc" != yes; then
-      enable_gtk_doc=no
-    fi
-  fi
+# Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
+# From Jim Meyering
 
-  AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
-  AM_CONDITIONAL(GTK_DOC_USE_LIBTOOL, test -n "$LIBTOOL")
-])
+# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005
+# 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.
 
-dnl copied from pygtk
-dnl
-dnl a macro to check for ability to create python extensions
-dnl  AM_CHECK_PYTHON_HEADERS([ACTION-IF-POSSIBLE], [ACTION-IF-NOT-POSSIBLE])
-dnl function also defines PYTHON_INCLUDES
-AC_DEFUN([AM_CHECK_PYTHON_HEADERS],
-[AC_REQUIRE([AM_PATH_PYTHON])
-AC_MSG_CHECKING(for python development headers)
-dnl deduce PYTHON_INCLUDES
-py_prefix=`$PYTHON -c "import sys; print sys.prefix"`
-py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"`
-PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}"
-if test "$py_prefix" != "$py_exec_prefix"; then
-  PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}"
-fi
-AC_SUBST(PYTHON_INCLUDES)
-dnl check if the headers exist:
-save_CPPFLAGS="$CPPFLAGS"
-CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES"
-AC_TRY_CPP([#include <Python.h>],dnl
-[AC_MSG_RESULT(found)
-$1],dnl
-[AC_MSG_RESULT(not found)
-$2])
-CPPFLAGS="$save_CPPFLAGS"
-])
+# serial 4
 
-dnl copied and modified from gnome-python
-dnl
-dnl AM_CHECK_PYMOD(MODNAME [,VERSION, VERSION_MATCHER [,ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]]])
-dnl Check if a module of a particular version is visible to python.
-AC_DEFUN([AM_CHECK_PYMOD],
-[AC_REQUIRE([AM_PATH_PYTHON])
-py_mod_var=`echo $1`
-AC_MSG_CHECKING(for python module $1 ifelse([$2],[],,[>= $2]))
-AC_CACHE_VAL(py_cv_mod_$py_mod_var, [
-ifelse([$2],[], [prog="
-import sys
-try:
-        import $1
-except ImportError:
-        sys.exit(1)
-except:
-        sys.exit(0)
-sys.exit(0)"], [prog="
-import sys, string, $1
-curverstr = $3
-# use method from AM_PYTHON_CHECK_VERSION
-minver = map(int, string.split('$2', '.'))
-length = len[(minver)]
-minver += [[0, 0, 0]]
-minverhex = 0
-for i in xrange(0, 4): minverhex = (minverhex << 8) + minver[[i]]
-curver = map(int, string.split(curverstr, '.')[[:length]])
-curver += [[0, 0, 0]]
-curverhex = 0
-for i in xrange(0, 4): curverhex = (curverhex << 8) + curver[[i]]
-if (curverhex >= minverhex):
-        sys.exit(0)
-else:
-        sys.exit(1)
-sys.exit(0)"])
-if $PYTHON -c "$prog" 1>&AC_FD_CC 2>&AC_FD_CC
-  then
-    eval "py_cv_mod_$py_mod_var=yes"
-  else
-    eval "py_cv_mod_$py_mod_var=no"
-  fi
-])
-py_val=`eval "echo \`echo '$py_cv_mod_'$py_mod_var\`"`
-if test "x$py_val" != xno; then
-  AC_MSG_RESULT(yes)
-  ifelse([$4], [],, [$4
-])dnl
-else
-  AC_MSG_RESULT(no)
-  ifelse([$5], [],, [$5
-])dnl
+AC_DEFUN([AM_MAINTAINER_MODE],
+[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
+  dnl maintainer-mode is disabled by default
+  AC_ARG_ENABLE(maintainer-mode,
+[  --enable-maintainer-mode  enable make rules and dependencies not useful
+			  (and sometimes confusing) to the casual installer],
+      USE_MAINTAINER_MODE=$enableval,
+      USE_MAINTAINER_MODE=no)
+  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])
+
+# Check to see how 'make' treats includes.	            -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005  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_MAKE_INCLUDE()
+# -----------------
+# Check to see how make treats includes.
+AC_DEFUN([AM_MAKE_INCLUDE],
+[am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+	@echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+AC_MSG_CHECKING([for style of include used by $am_make])
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
+   am__include=include
+   am__quote=
+   _am_result=GNU
 fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+   echo '.include "confinc"' > confmf
+   if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+      am__include=.include
+      am__quote="\""
+      _am_result=BSD
+   fi
+fi
+AC_SUBST([am__include])
+AC_SUBST([am__quote])
+AC_MSG_RESULT([$_am_result])
+rm -f confinc confmf
 ])
 
-dnl check for python
-AC_DEFUN([LIBGPOD_CHECK_PYTHON],
-[
-    dnl aclocal-1.7 is missing this when version is used in AM_PATH_PYTHON, fudge it
-    am_display_PYTHON=python
+# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-    AC_ARG_WITH(python,
-        AC_HELP_STRING([--with-python=PATH],
-            [build python bindings [[default=yes]]]),
-        [with_python=$withval],[with_python=yes])
+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005
+# 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.
 
-    AC_MSG_CHECKING(whether to build python bindings)
-    if test "X$with_python" != Xno; then
-        if test "X$with_python" != Xyes; then
-            PYTHON=$with_python
-        fi
-        with_python=yes
-    fi
-    AC_MSG_RESULT($with_python)
+# serial 4
 
-    if test "X$with_python" == Xyes; then
-        if test -z "$PYTHON"; then
-            AC_PATH_PROG(PYTHON, python)
-        fi
-    
-        if test -n "$PYTHON"; then
-            AM_PATH_PYTHON($PYTHON_MIN_VERSION)
-            AM_CHECK_PYTHON_HEADERS(with_python="yes",with_python="no")
-    
-            if test "X$with_python" == Xyes; then
-                dnl test for python ldflags
-                dnl copied from the Redland RDF bindings, http://librdf.org/
-                if test `uname` = Darwin; then
-                    PYTHON_LDFLAGS="-Wl,-F. -Wl,-F. -bundle"
-                    if $PYTHON -c 'import sys, string; sys.exit(string.find(sys.prefix,"Framework")+1)'; then
-                        :
-                    else
-                        PYTHON_LDFLAGS="$PYTHON_LDFLAGS -framework Python"
-                    fi
-                else
-                    PYTHON_LDFLAGS="-shared"
-                fi
-                AC_SUBST(PYTHON_LDFLAGS)
+# 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)])
 
-                dnl check for mutagen module >= $PYTHON_MUTAGEN_MIN_VERSION
-                AM_CHECK_PYMOD(mutagen,$PYTHON_MUTAGEN_MIN_VERSION,mutagen.version_string,,with_python=no)
 
-                dnl check for swig
-                if test "X$with_python" == Xyes; then
-                    AC_PROG_SWIG($SWIG_MIN_VERSION)
-                    with_python="$has_swig"
-                fi
-            fi
-        else
-            AC_MSG_WARN(python not found.  try --with-python=/path/to/python)
-            with_python="no"
-        fi
-    fi
-    AM_CONDITIONAL(HAVE_PYTHON, test x$with_python = xyes)
-])dnl
+# 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.
+AC_DEFUN([AM_MISSING_HAS_RUN],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+  am_missing_run="$MISSING --run "
+else
+  am_missing_run=
+  AC_MSG_WARN([`missing' script is too old or missing])
+fi
+])
 
+# Copyright (C) 2003, 2004, 2005  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_MKDIR_P
+# ---------------
+# Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise.
+#
+# Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories
+# created by `make install' are always world readable, even if the
+# installer happens to have an overly restrictive umask (e.g. 077).
+# This was a mistake.  There are at least two reasons why we must not
+# use `-m 0755':
+#   - it causes special bits like SGID to be ignored,
+#   - it may be too restrictive (some setups expect 775 directories).
+#
+# Do not use -m 0755 and let people choose whatever they expect by
+# setting umask.
+#
+# We cannot accept any implementation of `mkdir' that recognizes `-p'.
+# Some implementations (such as Solaris 8's) are not thread-safe: if a
+# parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c'
+# concurrently, both version can detect that a/ is missing, but only
+# one can create it and the other will error out.  Consequently we
+# restrict ourselves to GNU make (using the --version option ensures
+# this.)
+AC_DEFUN([AM_PROG_MKDIR_P],
+[if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+  # We used to keeping the `.' as first argument, in order to
+  # allow $(mkdir_p) to be used without argument.  As in
+  #   $(mkdir_p) $(somedir)
+  # where $(somedir) is conditionally defined.  However this is wrong
+  # for two reasons:
+  #  1. if the package is installed by a user who cannot write `.'
+  #     make install will fail,
+  #  2. the above comment should most certainly read
+  #     $(mkdir_p) $(DESTDIR)$(somedir)
+  #     so it does not work when $(somedir) is undefined and
+  #     $(DESTDIR) is not.
+  #  To support the latter case, we have to write
+  #     test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+  #  so the `.' trick is pointless.
+  mkdir_p='mkdir -p --'
+else
+  # On NextStep and OpenStep, the `mkdir' command does not
+  # recognize any option.  It will interpret all options as
+  # directories to create, and then abort because `.' already
+  # exists.
+  for d in ./-p ./--version;
+  do
+    test -d $d && rmdir $d
+  done
+  # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+  if test -f "$ac_aux_dir/mkinstalldirs"; then
+    mkdir_p='$(mkinstalldirs)'
+  else
+    mkdir_p='$(install_sh) -d'
+  fi
+fi
+AC_SUBST([mkdir_p])])
 
-# Copyright 1999, 2000, 2001, 2002, 2003  Free Software Foundation, Inc.
+# Helper functions for option handling.                     -*- Autoconf -*-
 
-# 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.
+# Copyright (C) 2001, 2002, 2003, 2005  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; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
+# serial 3
 
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+# _AM_MANGLE_OPTION(NAME)
+# -----------------------
+AC_DEFUN([_AM_MANGLE_OPTION],
+[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
 
-# AM_PATH_PYTHON([MINIMUM-VERSION])
+# _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)])
 
+# _AM_SET_OPTIONS(OPTIONS)
+# ----------------------------------
+# OPTIONS is a space-separated list of Automake options.
+AC_DEFUN([_AM_SET_OPTIONS],
+[AC_FOREACH([_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])])
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# 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 1.5 are not
   dnl supported because the default installation locations changed from
   dnl $prefix/lib/site-python in 1.4 to $prefix/lib/python1.5/site-packages
   dnl in 1.5.
-  m4_define([_AM_PYTHON_INTERPRETER_LIST],
-	    [python python2 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5])
+  m4_define_default([_AM_PYTHON_INTERPRETER_LIST],
+                    [python python2 python2.5 python2.4 python2.3 python2.2 dnl
+python2.1 python2.0 python1.6 python1.5])
 
   m4_if([$1],[],[
     dnl No version check is needed.
     # Find any Python interpreter.
-    AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST)
+    if test -z "$PYTHON"; then
+      AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :)
+    fi
     am_display_PYTHON=python
   ], [
     dnl A version check is needed.
@@ -8351,23 +7940,31 @@
       AM_PYTHON_CHECK_VERSION([$PYTHON], [$1],
 			      [AC_MSG_RESULT(yes)],
 			      [AC_MSG_ERROR(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 : ; do
-          if test "$am_cv_pathless_PYTHON" = : ; then
-            AC_MSG_ERROR([no suitable Python interpreter found])
-	  fi
-          AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break])
-        done])
+	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.
-      AC_PATH_PROG([PYTHON], [$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.
@@ -8427,6 +8024,11 @@
   dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE)
 
   AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
+
+  dnl Run any user-specified action.
+  $2
+  fi
+
 ])
 
 
@@ -8448,23 +8050,12 @@
 sys.exit(sys.hexversion < minverhex)"
   AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
 
-# Copyright 2001 Free Software Foundation, Inc.             -*- Autoconf -*-
+# Copyright (C) 2001, 2003, 2005  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 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, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
-
 # AM_RUN_LOG(COMMAND)
 # -------------------
 # Run COMMAND, save the exit status in ac_status, and log it.
@@ -8476,160 +8067,183 @@
    echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
    (exit $ac_status); }])
 
-dnl @synopsis AC_PROG_SWIG([major.minor.micro])
-dnl
-dnl This macro searches for a SWIG installation on your system. If
-dnl found you should call SWIG via $(SWIG). You can use the optional
-dnl first argument to check if the version of the available SWIG is
-dnl greater than or equal to the value of the argument. It should have
-dnl the format: N[.N[.N]] (N is a number between 0 and 999. Only the
-dnl first N is mandatory.)
-dnl
-dnl If the version argument is given (e.g. 1.3.17), AC_PROG_SWIG checks
-dnl that the swig package is this version number or higher.
-dnl
-dnl In configure.in, use as:
-dnl
-dnl             AC_PROG_SWIG(1.3.17)
-dnl             SWIG_ENABLE_CXX
-dnl             SWIG_MULTI_MODULE_SUPPORT
-dnl             SWIG_PYTHON
-dnl
-dnl @category InstalledPackages
-dnl @author Sebastian Huber <sebastian-huber at web.de>
-dnl @author Alan W. Irwin <irwin at beluga.phys.uvic.ca>
-dnl @author Rafael Laboissiere <rafael at laboissiere.net>
-dnl @author Andrew Collier <abcollier at yahoo.com>
-dnl @version 2004-09-20
-dnl @license GPLWithACException
+# Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-AC_DEFUN([AC_PROG_SWIG],[
-        AC_PATH_PROG([SWIG],[swig])
-        if test -z "$SWIG" ; then
-                AC_MSG_WARN([cannot find 'swig' program. You should look at http://www.swig.org])
-                SWIG='echo "Error: SWIG is not installed. You should look at http://www.swig.org" ; false'
-        elif test -n "$1" ; then
-                AC_MSG_CHECKING([for SWIG version])
-                [swig_version=`$SWIG -version 2>&1 | grep 'SWIG Version' | sed 's/.*\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*/\1/g'`]
-                AC_MSG_RESULT([$swig_version])
-                if test -n "$swig_version" ; then
-                        # Calculate the required version number components
-                        [required=$1]
-                        [required_major=`echo $required | sed 's/[^0-9].*//'`]
-                        if test -z "$required_major" ; then
-                                [required_major=0]
-                        fi
-                        [required=`echo $required | sed 's/[0-9]*[^0-9]//'`]
-                        [required_minor=`echo $required | sed 's/[^0-9].*//'`]
-                        if test -z "$required_minor" ; then
-                                [required_minor=0]
-                        fi
-                        [required=`echo $required | sed 's/[0-9]*[^0-9]//'`]
-                        [required_patch=`echo $required | sed 's/[^0-9].*//'`]
-                        if test -z "$required_patch" ; then
-                                [required_patch=0]
-                        fi
-                        # Calculate the available version number components
-                        [available=$swig_version]
-                        [available_major=`echo $available | sed 's/[^0-9].*//'`]
-                        if test -z "$available_major" ; then
-                                [available_major=0]
-                        fi
-                        [available=`echo $available | sed 's/[0-9]*[^0-9]//'`]
-                        [available_minor=`echo $available | sed 's/[^0-9].*//'`]
-                        if test -z "$available_minor" ; then
-                                [available_minor=0]
-                        fi
-                        [available=`echo $available | sed 's/[0-9]*[^0-9]//'`]
-                        [available_patch=`echo $available | sed 's/[^0-9].*//'`]
-                        if test -z "$available_patch" ; then
-                                [available_patch=0]
-                        fi
-                        if test $available_major -ne $required_major \
-                                -o $available_minor -ne $required_minor \
-                                -o $available_patch -lt $required_patch ; then
-                                AC_MSG_WARN([SWIG version >= $1 is required.  You have $swig_version.  You should look at http://www.swig.org])
-                                SWIG='echo "Error: SWIG version >= $1 is required.  You have '"$swig_version"'.  You should look at http://www.swig.org" ; false'
-                                has_swig="no"
-                        else
-                                SWIG_LIB=`$SWIG -swiglib`
-                                has_swig="yes"
-                        fi
-                else
-                        AC_MSG_WARN([cannot determine SWIG version])
-                        SWIG='echo "Error: Cannot determine SWIG version.  You should look at http://www.swig.org" ; false'
-                        has_swig="no"
-                fi
-        fi
-        AC_SUBST([SWIG_LIB])
-])
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# 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.
 
-# SWIG_ENABLE_CXX()
+# serial 4
+
+# 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
+# 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
+
+   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)])
+
+# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
 #
-# Enable SWIG C++ support.  This affects all invocations of $(SWIG).
-AC_DEFUN([SWIG_ENABLE_CXX],[
-        AC_REQUIRE([AC_PROG_SWIG])
-        AC_REQUIRE([AC_PROG_CXX])
-        SWIG="$SWIG -c++"
-])
+# 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.
 
-# SWIG_MULTI_MODULE_SUPPORT()
+# AM_PROG_INSTALL_STRIP
+# ---------------------
+# 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
+# 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
+# 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'.
+if test "$cross_compiling" != no; then
+  AC_CHECK_TOOL([STRIP], [strip], :)
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+AC_SUBST([INSTALL_STRIP_PROGRAM])])
+
+# Check how to create a tarball.                            -*- Autoconf -*-
+
+# Copyright (C) 2004, 2005  Free Software Foundation, Inc.
 #
-# Enable support for multiple modules.  This effects all invocations
-# of $(SWIG).  You have to link all generated modules against the
-# appropriate SWIG runtime library.  If you want to build Python
-# modules for example, use the SWIG_PYTHON() macro and link the
-# modules against $(SWIG_PYTHON_LIBS).
-#
-AC_DEFUN([SWIG_MULTI_MODULE_SUPPORT],[
-        AC_REQUIRE([AC_PROG_SWIG])
-        SWIG="$SWIG -noruntime"
-])
+# 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.
 
-# SWIG_PYTHON([use-shadow-classes = {no, yes}])
+# serial 2
+
+# _AM_PROG_TAR(FORMAT)
+# --------------------
+# Check how to create a tarball in format FORMAT.
+# FORMAT should be one of `v7', `ustar', or `pax'.
 #
-# Checks for Python and provides the $(SWIG_PYTHON_CPPFLAGS),
-# and $(SWIG_PYTHON_OPT) output variables.
+# 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
 #
-# $(SWIG_PYTHON_OPT) contains all necessary SWIG options to generate
-# code for Python.  Shadow classes are enabled unless the value of the
-# optional first argument is exactly 'no'.  If you need multi module
-# support (provided by the SWIG_MULTI_MODULE_SUPPORT() macro) use
-# $(SWIG_PYTHON_LIBS) to link against the appropriate library.  It
-# contains the SWIG Python runtime library that is needed by the type
-# check system for example.
-AC_DEFUN([SWIG_PYTHON],[
-        AC_REQUIRE([AC_PROG_SWIG])
-        AC_REQUIRE([AC_PYTHON_DEVEL])
-        test "x$1" != "xno" || swig_shadow=" -noproxy"
-        AC_SUBST([SWIG_PYTHON_OPT],[-python$swig_shadow])
-        AC_SUBST([SWIG_PYTHON_CPPFLAGS],[$PYTHON_CPPFLAGS])
-])
+# 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.
+AM_MISSING_PROG([AMTAR], [tar])
+m4_if([$1], [v7],
+     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} 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
 
-dnl @synopsis AC_LIB_WAD
-dnl
-dnl This macro searches for installed WAD library.
-dnl
-AC_DEFUN([AC_LIB_WAD],
-[
-        AC_REQUIRE([AC_PYTHON_DEVEL])
-        AC_ARG_ENABLE(wad,
-        AC_HELP_STRING([--enable-wad], [enable wad module]),
-        [
-                case "${enableval}" in
-                        no)     ;;
-                        *)      if test "x${enableval}" = xyes;
-                                then
-                                        check_wad="yes"
-                                fi ;;
-                esac
-        ], [])
+  # 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])
+    grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+  fi
+done
+rm -rf conftest.dir
 
-        if test -n "$check_wad";
-        then
-                AC_CHECK_LIB(wadpy, _init, [WADPY=-lwadpy], [], $PYTHON_LDFLAGS $PYTHON_EXTRA_LIBS)
-                AC_SUBST(WADPY)
-        fi
-])
+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/gtk-doc.m4])
+m4_include([m4/intltool.m4])
+m4_include([m4/python.m4])
+m4_include([m4/swig.m4])

Modified: libgpod/branches/upstream/current/bindings/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/bindings/Makefile.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# Free Software Foundation, Inc.
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
@@ -13,7 +13,6 @@
 # PARTICULAR PURPOSE.
 
 @SET_MAKE@
-
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
 VPATH = @srcdir@
@@ -21,7 +20,6 @@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 top_builddir = ..
-
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
@@ -35,7 +33,31 @@
 NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
+build_triplet = @build@
 host_triplet = @host@
+subdir = bindings
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+	html-recursive info-recursive install-data-recursive \
+	install-exec-recursive install-info-recursive \
+	install-recursive installcheck-recursive installdirs-recursive \
+	pdf-recursive ps-recursive uninstall-info-recursive \
+	uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = python
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -80,10 +102,19 @@
 GREP = @GREP@
 GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
 GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
 HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
 HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
 HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
 HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
 HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
 HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
 HTML_DIR = @HTML_DIR@
@@ -97,14 +128,12 @@
 INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
 INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_ICONV = @INTLTOOL_ICONV@
 INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
 INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@
-INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@
 INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
 INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
 INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
 INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
@@ -116,12 +145,14 @@
 INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
 INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@
 INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
 INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 LDFLAGS = @LDFLAGS@
 LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@
 LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
 LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
 LIBGPOD_VERSION = @LIBGPOD_VERSION@
 LIBOBJS = @LIBOBJS@
@@ -149,6 +180,8 @@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
 PYTHON = @PYTHON@
 PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 PYTHON_INCLUDES = @PYTHON_INCLUDES@
@@ -159,6 +192,7 @@
 RANLIB = @RANLIB@
 SED = @SED@
 SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
 SHELL = @SHELL@
 STRIP = @STRIP@
 SWIG = @SWIG@
@@ -178,6 +212,8 @@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -203,6 +239,7 @@
 localedir = @localedir@
 localstatedir = @localstatedir@
 mandir = @mandir@
+mkdir_p = @mkdir_p@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
 pkgpyexecdir = @pkgpyexecdir@
@@ -217,29 +254,39 @@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
 @HAVE_PYTHON_TRUE at SUBDIRS = python
-subdir = bindings
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-DIST_SOURCES =
-
-RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
-	ps-recursive install-info-recursive uninstall-info-recursive \
-	all-recursive install-data-recursive install-exec-recursive \
-	installdirs-recursive install-recursive uninstall-recursive \
-	check-recursive installcheck-recursive
-DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
-DIST_SUBDIRS = python
 all: all-recursive
 
 .SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+$(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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  bindings/Makefile'; \
 	cd $(top_srcdir) && \
 	  $(AUTOMAKE) --gnu  bindings/Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
-	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
+.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
+
 mostlyclean-libtool:
 	-rm -f *.lo
 
@@ -257,7 +304,13 @@
 #     (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):
-	@set fnord $$MAKEFLAGS; amf=$$2; \
+	@failcom='exit 1'; \
+	for f in x $$MAKEFLAGS; do \
+	  case $$f in \
+	    *=* | --[!k]*);; \
+	    *k*) failcom='fail=yes';; \
+	  esac; \
+	done; \
 	dot_seen=no; \
 	target=`echo $@ | sed s/-recursive//`; \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -269,7 +322,7 @@
 	    local_target="$$target"; \
 	  fi; \
 	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
 	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@@ -277,7 +330,13 @@
 
 mostlyclean-recursive clean-recursive distclean-recursive \
 maintainer-clean-recursive:
-	@set fnord $$MAKEFLAGS; amf=$$2; \
+	@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)' ;; \
@@ -298,7 +357,7 @@
 	    local_target="$$target"; \
 	  fi; \
 	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -309,14 +368,6 @@
 	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
-ETAGS = etags
-ETAGSFLAGS =
-
-CTAGS = ctags
-CTAGSFLAGS =
-
-tags: TAGS
-
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
@@ -325,19 +376,22 @@
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
 	mkid -fID $$unique
+tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
 	tags=; \
 	here=`pwd`; \
-	if (etags --etags-include --version) >/dev/null 2>&1; then \
+	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 && \
+	    test ! -f $$subdir/TAGS || \
 	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
@@ -347,10 +401,11 @@
 	  done | \
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
-	test -z "$(ETAGS_ARGS)$$tags$$unique" \
-	  || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	     $$tags $$unique
-
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
@@ -373,11 +428,7 @@
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-top_distdir = ..
-distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
-
 distdir: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
@@ -390,7 +441,7 @@
 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
 	    dir="/$$dir"; \
-	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
 	  else \
 	    dir=''; \
 	  fi; \
@@ -407,13 +458,15 @@
 	done
 	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
-	    test -d $(distdir)/$$subdir \
-	    || mkdir $(distdir)/$$subdir \
+	    test -d "$(distdir)/$$subdir" \
+	    || $(mkdir_p) "$(distdir)/$$subdir" \
 	    || exit 1; \
+	    distdir=`$(am__cd) $(distdir) && pwd`; \
+	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
 	    (cd $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$(top_distdir)" \
-	        distdir=../$(distdir)/$$subdir \
+	        top_distdir="$$top_distdir" \
+	        distdir="$$distdir/$$subdir" \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -423,7 +476,6 @@
 all-am: Makefile
 installdirs: installdirs-recursive
 installdirs-am:
-
 install: install-recursive
 install-exec: install-exec-recursive
 install-data: install-data-recursive
@@ -443,7 +495,7 @@
 clean-generic:
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -461,6 +513,8 @@
 
 dvi-am:
 
+html: html-recursive
+
 info: info-recursive
 
 info-am:
@@ -495,22 +549,18 @@
 
 uninstall-info: uninstall-info-recursive
 
-.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
-	clean-generic clean-libtool clean-recursive ctags \
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+	clean clean-generic clean-libtool clean-recursive ctags \
 	ctags-recursive distclean distclean-generic distclean-libtool \
-	distclean-recursive distclean-tags distdir dvi dvi-am \
-	dvi-recursive info info-am info-recursive install install-am \
-	install-data install-data-am install-data-recursive \
-	install-exec install-exec-am install-exec-recursive \
-	install-info install-info-am install-info-recursive install-man \
-	install-recursive install-strip installcheck installcheck-am \
-	installdirs installdirs-am installdirs-recursive \
-	maintainer-clean maintainer-clean-generic \
-	maintainer-clean-recursive mostlyclean mostlyclean-generic \
-	mostlyclean-libtool mostlyclean-recursive pdf pdf-am \
-	pdf-recursive ps ps-am ps-recursive tags tags-recursive \
-	uninstall uninstall-am uninstall-info-am \
-	uninstall-info-recursive uninstall-recursive
+	distclean-recursive distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-exec install-exec-am install-info \
+	install-info-am install-man install-strip installcheck \
+	installcheck-am installdirs installdirs-am maintainer-clean \
+	maintainer-clean-generic maintainer-clean-recursive \
+	mostlyclean mostlyclean-generic mostlyclean-libtool \
+	mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+	uninstall uninstall-am uninstall-info-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.

Modified: libgpod/branches/upstream/current/bindings/python/Makefile.am
===================================================================
--- libgpod/branches/upstream/current/bindings/python/Makefile.am	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/Makefile.am	2007-11-12 21:03:04 UTC (rev 251)
@@ -46,11 +46,11 @@
 
 gpod_doc.i: $(srcdir)/gpod_doc.i.in $(srcdir)/gtkdoc-to-swig.xsl
 	cat $< > $@
-if ENABLE_GTK_DOC
-	-for xml in $(top_srcdir)/docs/reference/xml/*.xml; do \
-	    xsltproc $(srcdir)/gtkdoc-to-swig.xsl $$xml; \
-	done >> $@
-endif
+	-if test -x "`which xsltproc 2>/dev/null`"; then \
+	    for xml in $(top_srcdir)/docs/reference/xml/*.xml; do \
+		xsltproc $(srcdir)/gtkdoc-to-swig.xsl $$xml; \
+	    done >> $@; \
+	fi
 
 gpod_wrap.c: $(SWIG_INTERFACES) $(nodist_gpod_PYTHON)
 	$(SWIG) -python $(INCLUDES) -o $@ $<

Modified: libgpod/branches/upstream/current/bindings/python/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/bindings/python/Makefile.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# Free Software Foundation, Inc.
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
@@ -21,7 +21,6 @@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 top_builddir = ../..
-
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
@@ -35,8 +34,64 @@
 NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
+build_triplet = @build@
 host_triplet = @host@
 @HAVE_PYTHON_TRUE at am__append_1 = -fno-strict-aliasing
+subdir = bindings/python
+DIST_COMMON = README $(am__gpod_PYTHON_DIST) $(srcdir)/Makefile.am \
+	$(srcdir)/Makefile.in $(srcdir)/gpod.i.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES = gpod.i
+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 = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(gpoddir)" "$(DESTDIR)$(gpoddir)" \
+	"$(DESTDIR)$(gpoddir)"
+gpodLTLIBRARIES_INSTALL = $(INSTALL)
+LTLIBRARIES = $(gpod_LTLIBRARIES)
+am__DEPENDENCIES_1 =
+ at HAVE_PYTHON_TRUE@_gpod_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
+ at HAVE_PYTHON_TRUE@	$(top_builddir)/src/libgpod.la
+ at HAVE_PYTHON_TRUE@nodist__gpod_la_OBJECTS = _gpod_la-gpod_wrap.lo
+_gpod_la_OBJECTS = $(nodist__gpod_la_OBJECTS)
+ at HAVE_PYTHON_TRUE@am__gpod_la_rpath = -rpath $(gpoddir)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(nodist__gpod_la_SOURCES)
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+	html-recursive info-recursive install-data-recursive \
+	install-exec-recursive install-info-recursive \
+	install-recursive installcheck-recursive installdirs-recursive \
+	pdf-recursive ps-recursive uninstall-info-recursive \
+	uninstall-recursive
+am__gpod_PYTHON_DIST = __init__.py gtkpod.py ipod.py
+gpodPYTHON_INSTALL = $(INSTALL_DATA)
+nodist_gpodPYTHON_INSTALL = $(INSTALL_DATA)
+py_compile = $(top_srcdir)/py-compile
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -81,10 +136,19 @@
 GREP = @GREP@
 GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
 GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
 HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
 HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
 HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
 HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
 HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
 HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
 HTML_DIR = @HTML_DIR@
@@ -98,14 +162,12 @@
 INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
 INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_ICONV = @INTLTOOL_ICONV@
 INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
 INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@
-INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@
 INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
 INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
 INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
 INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
@@ -117,12 +179,14 @@
 INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
 INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@
 INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
 INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 LDFLAGS = @LDFLAGS@
 LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@ $(am__append_1)
 LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
 LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
 LIBGPOD_VERSION = @LIBGPOD_VERSION@
 LIBOBJS = @LIBOBJS@
@@ -150,6 +214,8 @@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
 PYTHON = @PYTHON@
 PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 PYTHON_INCLUDES = @PYTHON_INCLUDES@
@@ -160,6 +226,7 @@
 RANLIB = @RANLIB@
 SED = @SED@
 SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
 SHELL = @SHELL@
 STRIP = @STRIP@
 SWIG = @SWIG@
@@ -179,6 +246,8 @@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -204,6 +273,7 @@
 localedir = @localedir@
 localstatedir = @localstatedir@
 mandir = @mandir@
+mkdir_p = @mkdir_p@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
 pkgpyexecdir = @pkgpyexecdir@
@@ -218,7 +288,6 @@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
 SUBDIRS = examples tests
-
 EXTRA_DIST = \
         README.in           \
         __init__.py         \
@@ -228,7 +297,6 @@
         gtkpod.py           \
         ipod.py
 
-
 CLEANFILES = \
         *.pyc               \
         *.pyo               \
@@ -237,16 +305,13 @@
         gpod_doc.i          \
         gpod_wrap.*
 
-
 DISTCLEANFILES = \
         README              \
         gpod.i
 
-
 @HAVE_PYTHON_TRUE at BUILT_SOURCES = gpod_wrap.c
 @HAVE_PYTHON_TRUE at SWIG_INTERFACES = gpod.i gpod_doc.i
 @HAVE_PYTHON_TRUE at INCLUDES = -I$(top_srcdir)/src
-
 @HAVE_PYTHON_TRUE at gpoddir = $(pyexecdir)/gpod
 @HAVE_PYTHON_TRUE at gpod_PYTHON = __init__.py gtkpod.py ipod.py
 @HAVE_PYTHON_TRUE at nodist_gpod_PYTHON = gpod.py
@@ -255,87 +320,74 @@
 @HAVE_PYTHON_TRUE at _gpod_la_CPPFLAGS = $(PYTHON_INCLUDES) $(LIBGPOD_CFLAGS) $(INCLUDES)
 @HAVE_PYTHON_TRUE at _gpod_la_LDFLAGS = -module -avoid-version
 @HAVE_PYTHON_TRUE at _gpod_la_LIBADD = $(LIBGPOD_LIBS) $(top_builddir)/src/libgpod.la
-subdir = bindings/python
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES = gpod.i
-LTLIBRARIES = $(gpod_LTLIBRARIES)
-
- at HAVE_PYTHON_TRUE@_gpod_la_DEPENDENCIES = $(top_builddir)/src/libgpod.la
- at HAVE_PYTHON_FALSE@_gpod_la_DEPENDENCIES =
- at HAVE_PYTHON_TRUE@nodist__gpod_la_OBJECTS = _gpod_la-gpod_wrap.lo
-_gpod_la_OBJECTS = $(nodist__gpod_la_OBJECTS)
-
-DEFAULT_INCLUDES =  -I. -I$(srcdir) -I$(top_builddir)
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
- at AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/_gpod_la-gpod_wrap.Plo
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \
-	$(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-	$(AM_LDFLAGS) $(LDFLAGS) -o $@
-DIST_SOURCES =
-py_compile = $(top_srcdir)/py-compile
-
-RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
-	ps-recursive install-info-recursive uninstall-info-recursive \
-	all-recursive install-data-recursive install-exec-recursive \
-	installdirs-recursive install-recursive uninstall-recursive \
-	check-recursive installcheck-recursive
-DIST_COMMON = README $(gpod_PYTHON) $(srcdir)/Makefile.in Makefile.am \
-	gpod.i.in
-DIST_SUBDIRS = $(SUBDIRS)
-SOURCES = $(nodist__gpod_la_SOURCES)
-
 all: $(BUILT_SOURCES)
 	$(MAKE) $(AM_MAKEFLAGS) all-recursive
 
 .SUFFIXES:
 .SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+$(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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  bindings/python/Makefile'; \
 	cd $(top_srcdir) && \
 	  $(AUTOMAKE) --gnu  bindings/python/Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
-	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
-gpod.i: $(top_builddir)/config.status gpod.i.in
+.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
+gpod.i: $(top_builddir)/config.status $(srcdir)/gpod.i.in
 	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
-gpodLTLIBRARIES_INSTALL = $(INSTALL)
 install-gpodLTLIBRARIES: $(gpod_LTLIBRARIES)
 	@$(NORMAL_INSTALL)
-	$(mkinstalldirs) $(DESTDIR)$(gpoddir)
+	test -z "$(gpoddir)" || $(mkdir_p) "$(DESTDIR)$(gpoddir)"
 	@list='$(gpod_LTLIBRARIES)'; for p in $$list; do \
 	  if test -f $$p; then \
-	    f="`echo $$p | sed -e 's|^.*/||'`"; \
-	    echo " $(LIBTOOL) --mode=install $(gpodLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(gpoddir)/$$f"; \
-	    $(LIBTOOL) --mode=install $(gpodLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(gpoddir)/$$f; \
+	    f=$(am__strip_dir) \
+	    echo " $(LIBTOOL) --mode=install $(gpodLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(gpoddir)/$$f'"; \
+	    $(LIBTOOL) --mode=install $(gpodLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(gpoddir)/$$f"; \
 	  else :; fi; \
 	done
 
 uninstall-gpodLTLIBRARIES:
 	@$(NORMAL_UNINSTALL)
-	@list='$(gpod_LTLIBRARIES)'; for p in $$list; do \
-	    p="`echo $$p | sed -e 's|^.*/||'`"; \
-	  echo " $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(gpoddir)/$$p"; \
-	  $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(gpoddir)/$$p; \
+	@set -x; list='$(gpod_LTLIBRARIES)'; for p in $$list; do \
+	  p=$(am__strip_dir) \
+	  echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(gpoddir)/$$p'"; \
+	  $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(gpoddir)/$$p"; \
 	done
 
 clean-gpodLTLIBRARIES:
 	-test -z "$(gpod_LTLIBRARIES)" || rm -f $(gpod_LTLIBRARIES)
 	@list='$(gpod_LTLIBRARIES)'; for p in $$list; do \
 	  dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
-	  test "$$dir" = "$$p" && dir=.; \
+	  test "$$dir" != "$$p" || dir=.; \
 	  echo "rm -f \"$${dir}/so_locations\""; \
 	  rm -f "$${dir}/so_locations"; \
 	done
 _gpod.la: $(_gpod_la_OBJECTS) $(_gpod_la_DEPENDENCIES) 
-	$(LINK) -rpath $(gpoddir) $(_gpod_la_LDFLAGS) $(_gpod_la_OBJECTS) $(_gpod_la_LIBADD) $(LIBS)
+	$(LINK) $(am__gpod_la_rpath) $(_gpod_la_LDFLAGS) $(_gpod_la_OBJECTS) $(_gpod_la_LIBADD) $(LIBS)
 
 mostlyclean-compile:
-	-rm -f *.$(OBJEXT) core *.core
+	-rm -f *.$(OBJEXT)
 
 distclean-compile:
 	-rm -f *.tab.c
@@ -343,70 +395,32 @@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/_gpod_la-gpod_wrap.Plo at am__quote@
 
 .c.o:
- at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(COMPILE) -c $<
 
 .c.obj:
- at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
- at am__fastdepCC_TRUE@	if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
 
-_gpod_la-gpod_wrap.o: gpod_wrap.c
- at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(_gpod_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT _gpod_la-gpod_wrap.o -MD -MP -MF "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o _gpod_la-gpod_wrap.o `test -f 'gpod_wrap.c' || echo '$(srcdir)/'`gpod_wrap.c; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo" "$(DEPDIR)/_gpod_la-gpod_wrap.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gpod_wrap.c' object='_gpod_la-gpod_wrap.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/_gpod_la-gpod_wrap.Po' tmpdepfile='$(DEPDIR)/_gpod_la-gpod_wrap.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(_gpod_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o _gpod_la-gpod_wrap.o `test -f 'gpod_wrap.c' || echo '$(srcdir)/'`gpod_wrap.c
-
-_gpod_la-gpod_wrap.obj: gpod_wrap.c
- at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(_gpod_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT _gpod_la-gpod_wrap.obj -MD -MP -MF "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o _gpod_la-gpod_wrap.obj `if test -f 'gpod_wrap.c'; then $(CYGPATH_W) 'gpod_wrap.c'; else $(CYGPATH_W) '$(srcdir)/gpod_wrap.c'; fi`; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo" "$(DEPDIR)/_gpod_la-gpod_wrap.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gpod_wrap.c' object='_gpod_la-gpod_wrap.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/_gpod_la-gpod_wrap.Po' tmpdepfile='$(DEPDIR)/_gpod_la-gpod_wrap.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(_gpod_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o _gpod_la-gpod_wrap.obj `if test -f 'gpod_wrap.c'; then $(CYGPATH_W) 'gpod_wrap.c'; else $(CYGPATH_W) '$(srcdir)/gpod_wrap.c'; fi`
-
 _gpod_la-gpod_wrap.lo: gpod_wrap.c
- at am__fastdepCC_TRUE@	if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(_gpod_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT _gpod_la-gpod_wrap.lo -MD -MP -MF "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o _gpod_la-gpod_wrap.lo `test -f 'gpod_wrap.c' || echo '$(srcdir)/'`gpod_wrap.c; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo" "$(DEPDIR)/_gpod_la-gpod_wrap.Plo"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(_gpod_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT _gpod_la-gpod_wrap.lo -MD -MP -MF "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo" -c -o _gpod_la-gpod_wrap.lo `test -f 'gpod_wrap.c' || echo '$(srcdir)/'`gpod_wrap.c; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo" "$(DEPDIR)/_gpod_la-gpod_wrap.Plo"; else rm -f "$(DEPDIR)/_gpod_la-gpod_wrap.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='gpod_wrap.c' object='_gpod_la-gpod_wrap.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/_gpod_la-gpod_wrap.Plo' tmpdepfile='$(DEPDIR)/_gpod_la-gpod_wrap.TPlo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(_gpod_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o _gpod_la-gpod_wrap.lo `test -f 'gpod_wrap.c' || echo '$(srcdir)/'`gpod_wrap.c
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(_gpod_la_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o _gpod_la-gpod_wrap.lo `test -f 'gpod_wrap.c' || echo '$(srcdir)/'`gpod_wrap.c
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -417,51 +431,61 @@
 distclean-libtool:
 	-rm -f libtool
 uninstall-info-am:
-gpodPYTHON_INSTALL = $(INSTALL_DATA)
 install-gpodPYTHON: $(gpod_PYTHON)
 	@$(NORMAL_INSTALL)
-	$(mkinstalldirs) $(DESTDIR)$(gpoddir)
+	test -z "$(gpoddir)" || $(mkdir_p) "$(DESTDIR)$(gpoddir)"
 	@list='$(gpod_PYTHON)'; dlist=''; for p in $$list; do\
 	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 	  if test -f $$b$$p; then \
-	    d=`echo "$$p" | sed -e 's,^.*/,,'`; \
-	    dlist="$$dlist $$d"; \
-	    echo " $(gpodPYTHON_INSTALL) $$b$$p $(DESTDIR)$(gpoddir)/$$d"; \
-	    $(gpodPYTHON_INSTALL) $$b$$p $(DESTDIR)$(gpoddir)/$$d; \
+	    f=$(am__strip_dir) \
+	    dlist="$$dlist $$f"; \
+	    echo " $(gpodPYTHON_INSTALL) '$$b$$p' '$(DESTDIR)$(gpoddir)/$$f'"; \
+	    $(gpodPYTHON_INSTALL) "$$b$$p" "$(DESTDIR)$(gpoddir)/$$f"; \
 	  else :; fi; \
 	done; \
-	PYTHON=$(PYTHON) $(py_compile) --basedir $(DESTDIR)$(gpoddir) $$dlist
+	if test -n "$$dlist"; then \
+	  if test -z "$(DESTDIR)"; then \
+	    PYTHON=$(PYTHON) $(py_compile) --basedir "$(gpoddir)" $$dlist; \
+	  else \
+	    PYTHON=$(PYTHON) $(py_compile) --destdir "$(DESTDIR)" --basedir "$(gpoddir)" $$dlist; \
+	  fi; \
+	else :; fi
 
 uninstall-gpodPYTHON:
 	@$(NORMAL_UNINSTALL)
-	list='$(gpod_PYTHON)'; for p in $$list; do \
-	  d=`echo "$$p" | sed -e 's,^.*/,,'`; \
-	  rm -f $(DESTDIR)$(gpoddir)/$$d; \
-	  rm -f $(DESTDIR)$(gpoddir)/$${d}c; \
-	  rm -f $(DESTDIR)$(gpoddir)/$${d}o; \
+	@list='$(gpod_PYTHON)'; dlist=''; for p in $$list; do\
+	  f=$(am__strip_dir) \
+	  rm -f "$(DESTDIR)$(gpoddir)/$$f"; \
+	  rm -f "$(DESTDIR)$(gpoddir)/$${f}c"; \
+	  rm -f "$(DESTDIR)$(gpoddir)/$${f}o"; \
 	done
-nodist_gpodPYTHON_INSTALL = $(INSTALL_DATA)
 install-nodist_gpodPYTHON: $(nodist_gpod_PYTHON)
 	@$(NORMAL_INSTALL)
-	$(mkinstalldirs) $(DESTDIR)$(gpoddir)
+	test -z "$(gpoddir)" || $(mkdir_p) "$(DESTDIR)$(gpoddir)"
 	@list='$(nodist_gpod_PYTHON)'; dlist=''; for p in $$list; do\
 	  if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
 	  if test -f $$b$$p; then \
-	    d=`echo "$$p" | sed -e 's,^.*/,,'`; \
-	    dlist="$$dlist $$d"; \
-	    echo " $(nodist_gpodPYTHON_INSTALL) $$b$$p $(DESTDIR)$(gpoddir)/$$d"; \
-	    $(nodist_gpodPYTHON_INSTALL) $$b$$p $(DESTDIR)$(gpoddir)/$$d; \
+	    f=$(am__strip_dir) \
+	    dlist="$$dlist $$f"; \
+	    echo " $(nodist_gpodPYTHON_INSTALL) '$$b$$p' '$(DESTDIR)$(gpoddir)/$$f'"; \
+	    $(nodist_gpodPYTHON_INSTALL) "$$b$$p" "$(DESTDIR)$(gpoddir)/$$f"; \
 	  else :; fi; \
 	done; \
-	PYTHON=$(PYTHON) $(py_compile) --basedir $(DESTDIR)$(gpoddir) $$dlist
+	if test -n "$$dlist"; then \
+	  if test -z "$(DESTDIR)"; then \
+	    PYTHON=$(PYTHON) $(py_compile) --basedir "$(gpoddir)" $$dlist; \
+	  else \
+	    PYTHON=$(PYTHON) $(py_compile) --destdir "$(DESTDIR)" --basedir "$(gpoddir)" $$dlist; \
+	  fi; \
+	else :; fi
 
 uninstall-nodist_gpodPYTHON:
 	@$(NORMAL_UNINSTALL)
-	list='$(nodist_gpod_PYTHON)'; for p in $$list; do \
-	  d=`echo "$$p" | sed -e 's,^.*/,,'`; \
-	  rm -f $(DESTDIR)$(gpoddir)/$$d; \
-	  rm -f $(DESTDIR)$(gpoddir)/$${d}c; \
-	  rm -f $(DESTDIR)$(gpoddir)/$${d}o; \
+	@list='$(nodist_gpod_PYTHON)'; dlist=''; for p in $$list; do\
+	  f=$(am__strip_dir) \
+	  rm -f "$(DESTDIR)$(gpoddir)/$$f"; \
+	  rm -f "$(DESTDIR)$(gpoddir)/$${f}c"; \
+	  rm -f "$(DESTDIR)$(gpoddir)/$${f}o"; \
 	done
 
 # This directory's subdirectories are mostly independent; you can cd
@@ -471,7 +495,13 @@
 #     (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):
-	@set fnord $$MAKEFLAGS; amf=$$2; \
+	@failcom='exit 1'; \
+	for f in x $$MAKEFLAGS; do \
+	  case $$f in \
+	    *=* | --[!k]*);; \
+	    *k*) failcom='fail=yes';; \
+	  esac; \
+	done; \
 	dot_seen=no; \
 	target=`echo $@ | sed s/-recursive//`; \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -483,7 +513,7 @@
 	    local_target="$$target"; \
 	  fi; \
 	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
 	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@@ -491,7 +521,13 @@
 
 mostlyclean-recursive clean-recursive distclean-recursive \
 maintainer-clean-recursive:
-	@set fnord $$MAKEFLAGS; amf=$$2; \
+	@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)' ;; \
@@ -512,7 +548,7 @@
 	    local_target="$$target"; \
 	  fi; \
 	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -523,14 +559,6 @@
 	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
-ETAGS = etags
-ETAGSFLAGS =
-
-CTAGS = ctags
-CTAGSFLAGS =
-
-tags: TAGS
-
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
@@ -539,19 +567,22 @@
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
 	mkid -fID $$unique
+tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
 	tags=; \
 	here=`pwd`; \
-	if (etags --etags-include --version) >/dev/null 2>&1; then \
+	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 && \
+	    test ! -f $$subdir/TAGS || \
 	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
@@ -561,10 +592,11 @@
 	  done | \
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
-	test -z "$(ETAGS_ARGS)$$tags$$unique" \
-	  || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	     $$tags $$unique
-
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
@@ -587,11 +619,7 @@
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-top_distdir = ../..
-distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
-
 distdir: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
@@ -604,7 +632,7 @@
 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
 	    dir="/$$dir"; \
-	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
 	  else \
 	    dir=''; \
 	  fi; \
@@ -619,15 +647,17 @@
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(SUBDIRS)'; for subdir in $$list; do \
+	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
-	    test -d $(distdir)/$$subdir \
-	    || mkdir $(distdir)/$$subdir \
+	    test -d "$(distdir)/$$subdir" \
+	    || $(mkdir_p) "$(distdir)/$$subdir" \
 	    || exit 1; \
+	    distdir=`$(am__cd) $(distdir) && pwd`; \
+	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
 	    (cd $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$(top_distdir)" \
-	        distdir=../$(distdir)/$$subdir \
+	        top_distdir="$$top_distdir" \
+	        distdir="$$distdir/$$subdir" \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -638,8 +668,9 @@
 all-am: Makefile $(LTLIBRARIES)
 installdirs: installdirs-recursive
 installdirs-am:
-	$(mkinstalldirs) $(DESTDIR)$(gpoddir) $(DESTDIR)$(gpoddir) $(DESTDIR)$(gpoddir)
-
+	for dir in "$(DESTDIR)$(gpoddir)" "$(DESTDIR)$(gpoddir)" "$(DESTDIR)$(gpoddir)"; do \
+	  test -z "$$dir" || $(mkdir_p) "$$dir"; \
+	done
 install: $(BUILT_SOURCES)
 	$(MAKE) $(AM_MAKEFLAGS) install-recursive
 install-exec: install-exec-recursive
@@ -661,7 +692,7 @@
 	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 	-test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
 
 maintainer-clean-generic:
@@ -683,6 +714,8 @@
 
 dvi-am:
 
+html: html-recursive
+
 info: info-recursive
 
 info-am:
@@ -721,25 +754,22 @@
 
 uninstall-info: uninstall-info-recursive
 
-.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
-	clean-generic clean-gpodLTLIBRARIES clean-libtool \
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+	clean clean-generic clean-gpodLTLIBRARIES clean-libtool \
 	clean-recursive ctags ctags-recursive distclean \
 	distclean-compile distclean-generic distclean-libtool \
-	distclean-recursive distclean-tags distdir dvi dvi-am \
-	dvi-recursive info info-am info-recursive install install-am \
-	install-data install-data-am install-data-recursive \
-	install-exec install-exec-am install-exec-recursive \
+	distclean-recursive distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-exec install-exec-am \
 	install-gpodLTLIBRARIES install-gpodPYTHON install-info \
-	install-info-am install-info-recursive install-man \
-	install-nodist_gpodPYTHON install-recursive install-strip \
-	installcheck installcheck-am installdirs installdirs-am \
-	installdirs-recursive maintainer-clean maintainer-clean-generic \
+	install-info-am install-man install-nodist_gpodPYTHON \
+	install-strip installcheck installcheck-am installdirs \
+	installdirs-am maintainer-clean maintainer-clean-generic \
 	maintainer-clean-recursive mostlyclean mostlyclean-compile \
 	mostlyclean-generic mostlyclean-libtool mostlyclean-recursive \
-	pdf pdf-am pdf-recursive ps ps-am ps-recursive tags \
-	tags-recursive uninstall uninstall-am uninstall-gpodLTLIBRARIES \
-	uninstall-gpodPYTHON uninstall-info-am uninstall-info-recursive \
-	uninstall-nodist_gpodPYTHON uninstall-recursive
+	pdf pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
+	uninstall-gpodLTLIBRARIES uninstall-gpodPYTHON \
+	uninstall-info-am uninstall-nodist_gpodPYTHON
 
 
 README: README.in gpod.i
@@ -752,9 +782,11 @@
 
 @HAVE_PYTHON_TRUE at gpod_doc.i: $(srcdir)/gpod_doc.i.in $(srcdir)/gtkdoc-to-swig.xsl
 @HAVE_PYTHON_TRUE@	cat $< > $@
- at ENABLE_GTK_DOC_TRUE@@HAVE_PYTHON_TRUE@	-for xml in $(top_srcdir)/docs/reference/xml/*.xml; do \
- at ENABLE_GTK_DOC_TRUE@@HAVE_PYTHON_TRUE@	    xsltproc $(srcdir)/gtkdoc-to-swig.xsl $$xml; \
- at ENABLE_GTK_DOC_TRUE@@HAVE_PYTHON_TRUE@	done >> $@
+ at HAVE_PYTHON_TRUE@	-if test -x "`which xsltproc 2>/dev/null`"; then \
+ at HAVE_PYTHON_TRUE@	    for xml in $(top_srcdir)/docs/reference/xml/*.xml; do \
+ at HAVE_PYTHON_TRUE@		xsltproc $(srcdir)/gtkdoc-to-swig.xsl $$xml; \
+ at HAVE_PYTHON_TRUE@	    done >> $@; \
+ at HAVE_PYTHON_TRUE@	fi
 
 @HAVE_PYTHON_TRUE at gpod_wrap.c: $(SWIG_INTERFACES) $(nodist_gpod_PYTHON)
 @HAVE_PYTHON_TRUE@	$(SWIG) -python $(INCLUDES) -o $@ $<

Modified: libgpod/branches/upstream/current/bindings/python/README
===================================================================
--- libgpod/branches/upstream/current/bindings/python/README	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/README	2007-11-12 21:03:04 UTC (rev 251)
@@ -53,7 +53,55 @@
 sw_get_tracks
 sw_get_track_userdata
 sw_ipod_device_to_dict
-sw_save_itdb_thumb
 sw_set_track_userdata
 
 Please see the example scripts for ideas on how to use these functions.
+
+
+The time_t mapping has changed recently:
+
++------------------------+-------------+-------------+
+|Version                 | Reading     | Writing     |
+|                        |             |             |
++------------------------+-------------+-------------+
+|libgpod >= 0.5.4        |C style API: |C style API: |
+|(SVN >= r1672)          |As a unix    |As a unix    |
+|                        |timestamp    |timestamp    |
+|                        |integer      |integer or a |
+|                        |             |Python       |
+|                        |OO style API:|datetime     |
+|                        |As a Python  |instance     |
+|                        |datetime     |             |
+|                        |             |OO style API:|
+|                        |             |As a unix    |
+|                        |             |timestamp    |
+|                        |             |integer or a |
+|                        |             |Python       |
+|                        |             |datetime     |
+|                        |             |instance     |
+|                        |             |             |
++------------------------+-------------+-------------+
+|libgpod 0.5.0 - 0.5.2   |As a unix    |As a unix    |
+|(SVN r1433 - r1669)     |timestamp    |timestamp    |
+|                        |integer      |integer      |
+|                        |             |             |
++------------------------+-------------+-------------+
+|libgpod <= 0.4.2        |As an integer|As an integer|
+|(SVN < r1417)           |with a       |with a       |
+|                        |2082844800   |2082844800   |
+|                        |offset       |offset       |
++------------------------+-------------+-------------+
+
+This table means that as a user of the Python bindings, you likely
+want to detect libgpod < 0.5.0. One way would be to test for the
+presence of some of the renamed constants in libgpod >= 0.5.0:
+
+    # libgpod >= 0.5.0 doesn't use mac-type timestamps anymore.  check
+    # if we're using a newer version by looking for a renamed constant.
+    if hasattr(gpod, 'ITDB_SPL_STRING_MAXLEN'):
+        track.time_released = int(time.mktime(ipod_date)
+    else:
+        track.time_release = int(time.mktime(ipod_date) + 2082844800
+
+(Since libgpod 0.5.4 (SVN r1633) there exists a gpod.version_info
+tuple, which will make such things easier to cope with in the future.)

Modified: libgpod/branches/upstream/current/bindings/python/README.in
===================================================================
--- libgpod/branches/upstream/current/bindings/python/README.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/README.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -41,3 +41,52 @@
 @WRAPPER_LIST@
 
 Please see the example scripts for ideas on how to use these functions.
+
+
+The time_t mapping has changed recently:
+
++------------------------+-------------+-------------+
+|Version                 | Reading     | Writing     |
+|                        |             |             |
++------------------------+-------------+-------------+
+|libgpod >= 0.5.4        |C style API: |C style API: |
+|(SVN >= r1672)          |As a unix    |As a unix    |
+|                        |timestamp    |timestamp    |
+|                        |integer      |integer or a |
+|                        |             |Python       |
+|                        |OO style API:|datetime     |
+|                        |As a Python  |instance     |
+|                        |datetime     |             |
+|                        |             |OO style API:|
+|                        |             |As a unix    |
+|                        |             |timestamp    |
+|                        |             |integer or a |
+|                        |             |Python       |
+|                        |             |datetime     |
+|                        |             |instance     |
+|                        |             |             |
++------------------------+-------------+-------------+
+|libgpod 0.5.0 - 0.5.2   |As a unix    |As a unix    |
+|(SVN r1433 - r1669)     |timestamp    |timestamp    |
+|                        |integer      |integer      |
+|                        |             |             |
++------------------------+-------------+-------------+
+|libgpod <= 0.4.2        |As an integer|As an integer|
+|(SVN < r1417)           |with a       |with a       |
+|                        |2082844800   |2082844800   |
+|                        |offset       |offset       |
++------------------------+-------------+-------------+
+
+This table means that as a user of the Python bindings, you likely
+want to detect libgpod < 0.5.0. One way would be to test for the
+presence of some of the renamed constants in libgpod >= 0.5.0:
+
+    # libgpod >= 0.5.0 doesn't use mac-type timestamps anymore.  check
+    # if we're using a newer version by looking for a renamed constant.
+    if hasattr(gpod, 'ITDB_SPL_STRING_MAXLEN'):
+        track.time_released = int(time.mktime(ipod_date)
+    else:
+        track.time_release = int(time.mktime(ipod_date) + 2082844800
+
+(Since libgpod 0.5.4 (SVN r1633) there exists a gpod.version_info
+tuple, which will make such things easier to cope with in the future.)

Modified: libgpod/branches/upstream/current/bindings/python/examples/Makefile.am
===================================================================
--- libgpod/branches/upstream/current/bindings/python/examples/Makefile.am	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/examples/Makefile.am	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,4 +1,9 @@
-EXTRA_DIST = coverart_fetch.py toy_around.py \
-             tag_genre_from_audioscrobber.py add_song.py \
-             play_with_ipod_api.py create_mp3_tags_from_itdb.py \
-             play_with_smart_playlists.py
+EXTRA_DIST =                            \
+        add_song.py                     \
+        coverart_fetch.py               \
+        create_mp3_tags_from_itdb.py    \
+        play_with_ipod_api.py           \
+        play_with_smart_playlists.py    \
+        save_photos.py                  \
+        tag_genre_from_audioscrobber.py \
+        toy_around.py

Modified: libgpod/branches/upstream/current/bindings/python/examples/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/bindings/python/examples/Makefile.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/examples/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# Free Software Foundation, Inc.
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
@@ -13,7 +13,6 @@
 # PARTICULAR PURPOSE.
 
 @SET_MAKE@
-
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
 VPATH = @srcdir@
@@ -21,7 +20,6 @@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 top_builddir = ../../..
-
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
@@ -35,7 +33,22 @@
 NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
+build_triplet = @build@
 host_triplet = @host@
+subdir = bindings/python/examples
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -80,10 +93,19 @@
 GREP = @GREP@
 GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
 GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
 HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
 HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
 HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
 HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
 HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
 HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
 HTML_DIR = @HTML_DIR@
@@ -97,14 +119,12 @@
 INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
 INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_ICONV = @INTLTOOL_ICONV@
 INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
 INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@
-INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@
 INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
 INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
 INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
 INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
@@ -116,12 +136,14 @@
 INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
 INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@
 INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
 INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 LDFLAGS = @LDFLAGS@
 LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@
 LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
 LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
 LIBGPOD_VERSION = @LIBGPOD_VERSION@
 LIBOBJS = @LIBOBJS@
@@ -149,6 +171,8 @@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
 PYTHON = @PYTHON@
 PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 PYTHON_INCLUDES = @PYTHON_INCLUDES@
@@ -159,6 +183,7 @@
 RANLIB = @RANLIB@
 SED = @SED@
 SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
 SHELL = @SHELL@
 STRIP = @STRIP@
 SWIG = @SWIG@
@@ -178,6 +203,8 @@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -203,6 +230,7 @@
 localedir = @localedir@
 localstatedir = @localstatedir@
 mandir = @mandir@
+mkdir_p = @mkdir_p@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
 pkgpyexecdir = @pkgpyexecdir@
@@ -216,27 +244,49 @@
 sharedstatedir = @sharedstatedir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-EXTRA_DIST = coverart_fetch.py toy_around.py \
-             tag_genre_from_audioscrobber.py add_song.py \
-             play_with_ipod_api.py create_mp3_tags_from_itdb.py \
-             play_with_smart_playlists.py
+EXTRA_DIST = \
+        add_song.py                     \
+        coverart_fetch.py               \
+        create_mp3_tags_from_itdb.py    \
+        play_with_ipod_api.py           \
+        play_with_smart_playlists.py    \
+        save_photos.py                  \
+        tag_genre_from_audioscrobber.py \
+        toy_around.py
 
-subdir = bindings/python/examples
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-DIST_SOURCES =
-DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
 all: all-am
 
 .SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+$(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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  bindings/python/examples/Makefile'; \
 	cd $(top_srcdir) && \
 	  $(AUTOMAKE) --gnu  bindings/python/examples/Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
-	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
+.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
+
 mostlyclean-libtool:
 	-rm -f *.lo
 
@@ -252,11 +302,7 @@
 ctags: CTAGS
 CTAGS:
 
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-top_distdir = ../../..
-distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
-
 distdir: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
@@ -269,7 +315,7 @@
 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
 	    dir="/$$dir"; \
-	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
 	  else \
 	    dir=''; \
 	  fi; \
@@ -287,7 +333,6 @@
 check-am: all-am
 check: check-am
 all-am: Makefile
-
 installdirs:
 install: install-am
 install-exec: install-exec-am
@@ -308,7 +353,7 @@
 clean-generic:
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -325,6 +370,8 @@
 
 dvi-am:
 
+html: html-am
+
 info: info-am
 
 info-am:
@@ -359,10 +406,10 @@
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
 	distclean distclean-generic distclean-libtool distdir dvi \
-	dvi-am info info-am install install-am install-data \
-	install-data-am install-exec install-exec-am install-info \
-	install-info-am install-man install-strip installcheck \
-	installcheck-am installdirs maintainer-clean \
+	dvi-am html html-am info info-am install install-am \
+	install-data install-data-am install-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
 	maintainer-clean-generic mostlyclean mostlyclean-generic \
 	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
 	uninstall-info-am

Modified: libgpod/branches/upstream/current/bindings/python/examples/coverart_fetch.py
===================================================================
--- libgpod/branches/upstream/current/bindings/python/examples/coverart_fetch.py	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/examples/coverart_fetch.py	2007-11-12 21:03:04 UTC (rev 251)
@@ -20,44 +20,45 @@
 ##  License along with this code; if not, write to the Free Software
 ##  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
-##  $Id: coverart_fetch.py 1233 2006-04-08 08:23:14Z nicholas $
+##  $Id: coverart_fetch.py 1662 2007-07-31 20:42:54Z tmzullinger $
 
 import os, os.path
 import gpod
 import sys
 import amazon
 import urllib
-import Image
-import tempfile
+import gtk
+from optparse import OptionParser
 
-ipod_mount = '/mnt/ipod'
-itdb = gpod.itdb_parse(ipod_mount, None)
-if not itdb:
-    print "Failed to read ipod at mountpoint %s" % ipod_mount
-    sys.exit(2)
+parser = OptionParser()
+parser.add_option("-m", "--mountpoint", dest="mountpoint",
+                  default="/mnt/ipod",
+                  help="use iPod at MOUNTPOINT", metavar="MOUNTPOINT")
+(options, args) = parser.parse_args()
 
+db = gpod.Database(options.mountpoint)
+
 # set your key here, or see amazon.py for a list of other places to
 # store it.
 amazon.setLicense('')
 
 images = {}
 
-for track in gpod.sw_get_tracks(itdb):
-    print track.artist, track.album, track.title, " :",
+for track in db:
+    if track.get_coverart().thumbnails:
+        #print " Already has artwork, skipping."
+        # note we could remove it with track.set_coverart(None)
+        continue
 
-    #gpod.itdb_track_remove_thumbnails(track)
+    print "%(artist)s, %(album)s, %(title)s" % track
 
-    if track.artwork.artwork_size:
-        print "Already has artwork, skipping."
+    if not (track['artist'] and track['album']):
+        print " Need an artist AND album name, skipping."       
         continue
-
-    if not (track.artist and track.album):
-        print "Need an artist AND album name, skipping."       
-        continue
     
     # avoid fetching again if we already had a suitable image
-    if not images.has_key((track.album,track.artist)):
-        query = "%s + %s" % (track.artist, track.album)
+    if not images.has_key((track['album'],track['artist'])):
+        query = "%(album)s + %(artist)s" % track
         # nasty hacks to get better hits. Is there a library out there
         # for this?  Note we take out double quotes too: Amazon place 
         # this string literally into their XML response, so can end up 
@@ -65,10 +66,11 @@
         # name="KeywordSearch"> which is not well formed :-( 
         for term in ["Disk 1", "Disk 2", '12"', '12 "','"','&']: 
             query = query.replace(term,"") 
-        print "Searching for %s: " % query,
+        print " Searching for %s: " % query
         try:
             albums = amazon.searchByKeyword(query,
-                                            type="lite",product_line="music")
+                                            type="lite",
+                                            product_line="music")
         except amazon.AmazonError, e:
             print e
             albums = []
@@ -77,32 +79,26 @@
             continue
         album = albums[0]
 
-        hdle, filename = tempfile.mkstemp()
-        i = urllib.urlopen(album.ImageUrlLarge)
-        open(filename,"w").write(i.read())
-        img = Image.open(filename)
-        if not (img.size[0] > 10 or img.size[1] > 10):
-            os.unlink(filename)
-        else:
-            print "Fetched image for %s, %s" % (track.album,track.artist)
-            images[(track.album,track.artist)] = filename
+        try:
+            image_data = urllib.urlopen(album.ImageUrlLarge).read()
+        except:
+            print " Failed to download from %s" % album.ImageUrlLarge
+            continue
+        loader = gtk.gdk.PixbufLoader()
+        loader.write(image_data)
+        loader.close()
+        pixbuf = loader.get_pixbuf()
+        if (pixbuf.get_width() > 10 or pixbuf.get_height() > 10):
+            print " Fetched image"
+            images[(track['album'],track['artist'])] = pixbuf
 
     try:
-        r = gpod.itdb_track_set_thumbnails(track,images[(track.album,track.artist)])
-        if r != 1:
-            print "Failed to save image thumbnail to ipod."
-        else:
-            print "Added thumbnails for %s, %s" % (track.album,track.artist)
+        track.set_coverart(images[(track['album'],track['artist'])])
+        print " Added thumbnails"
     except KeyError:
-        print "No image available for %s, %s" % (track.album,track.artist)
+        print " No image available"
 
 
-print "Writing ipod database..."
-gpod.itdb_write(itdb, None)
-
-print "Cleaning up downloaded images..."
-# really, we should do this if any of the real work threw an exception
-# too. This is just a demo script :-)
-for filename in images.values():
-    os.unlink(filename)
-
+print "Saving database"
+db.close()
+print "Saved db"

Added: libgpod/branches/upstream/current/bindings/python/examples/save_photos.py
===================================================================
--- libgpod/branches/upstream/current/bindings/python/examples/save_photos.py	                        (rev 0)
+++ libgpod/branches/upstream/current/bindings/python/examples/save_photos.py	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,43 @@
+#!/usr/bin/python
+
+##  Copyright (C) 2007 Nick Piper <nick-gtkpod at nickpiper co uk>
+##  Part of the gtkpod project.
+ 
+##  URL: http://www.gtkpod.org/
+##  URL: http://gtkpod.sourceforge.net/
+
+##  The code contained in this file is free software; you can redistribute
+##  it and/or modify it under the terms of the GNU Lesser General Public
+##  License as published by the Free Software Foundation; either version
+##  2.1 of the License, or (at your option) any later version.
+
+##  This file 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
+##  Lesser General Public License for more details.
+
+##  You should have received a copy of the GNU Lesser General Public
+##  License along with this code; if not, write to the Free Software
+##  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+# this file is just a little example to see how you could read photos
+
+import gpod
+
+if not hasattr(gpod.Thumbnail, 'get_pixbuf'):
+    print 'Sorry, gpod was built without pixbuf support.'
+    raise SystemExit
+
+photodb = gpod.PhotoDatabase("/mnt/ipod")
+
+print photodb
+for album in photodb.PhotoAlbums:
+    print " ", album
+    for photo in album:
+        print "  ", photo
+        for thumbnail, n in zip(photo.thumbnails,
+                                range(0,len(photo.thumbnails))):
+            print "   ", thumbnail
+            thumbnail.get_pixbuf().save("/tmp/%d-%d.png" % (photo['id'],n),"png")
+
+photodb.close()


Property changes on: libgpod/branches/upstream/current/bindings/python/examples/save_photos.py
___________________________________________________________________
Name: svn:executable
   + *

Modified: libgpod/branches/upstream/current/bindings/python/gpod.i.in
===================================================================
--- libgpod/branches/upstream/current/bindings/python/gpod.i.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/gpod.i.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -21,7 +21,7 @@
  License along with this code; if not, write to the Free Software
  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
- $Id: gpod.i.in 1433 2007-05-13 17:30:27Z tmzullinger $
+ $Id: gpod.i.in 1674 2007-08-08 07:14:36Z nicholas $
 
 Please send any fixes, improvements or suggestions to
 <nick-gtkpod at nickpiper co uk>.
@@ -38,8 +38,16 @@
 interface."
 %enddef
 
+%pythoncode %{
+version_info = (@LIBGPOD_MAJOR_VERSION@, 
+		@LIBGPOD_MINOR_VERSION@, 
+		@LIBGPOD_MICRO_VERSION@)
+version = '.'.join(map(str, version_info))  
+%}
+
 %module(docstring=DOCSTRING) gpod
 %{
+#include "@top_builddir@/config.h"
 #include "db-artwork-debug.h" 
 #include "db-artwork-parser.h" 
 #include "db-image-parser.h" 
@@ -48,8 +56,16 @@
 #include "itdb.h" 
 #include "itdb_device.h" 
 #include "itdb_private.h"
+#include <time.h>
+#include <datetime.h>
+#ifdef HAVE_GDKPIXBUF
+#ifdef HAVE_PYGOBJECT
 #include <gdk-pixbuf/gdk-pixbuf.h>
+#include <pygobject.h>
+#endif
+#endif
 
+
 /* include prototypes for all functions so builds using
  * -Wmissing-prototypes don't fail. */
 PyObject* sw_get_tracks(Itdb_iTunesDB *itdb);
@@ -69,7 +85,6 @@
 PyObject* sw_get_artwork_thumbnails(Itdb_Artwork *artwork);
 PyObject* sw_get_photoalbum_members(Itdb_PhotoAlbum *album);
 PyObject* sw_ipod_device_to_dict(Itdb_Device *device);
-PyObject* sw_save_itdb_thumb(Itdb_PhotoDB *itdb, Itdb_Thumb *thumb, const gchar *filename);
 void sw__track_extra_destroy (PyObject *data);
 void hash_table_to_pydict(gpointer key, gpointer value, gpointer user_data);
 void SWIG_init(void);
@@ -279,38 +294,80 @@
    }
  }
 
- PyObject* sw_save_itdb_thumb(Itdb_PhotoDB *itdb, Itdb_Thumb *thumb, const gchar *filename) {
-   GdkPixbuf *pixbuf;
-	
-   pixbuf = itdb_thumb_get_gdk_pixbuf (itdb->device, thumb);
-   
-   if (pixbuf != NULL) {
-     gdk_pixbuf_save (pixbuf, filename, "png", NULL, NULL);
-     gdk_pixbuf_unref (pixbuf);
-     Py_INCREF(Py_True);
-     return Py_True;
-   } else {
-     Py_INCREF(Py_False);
-     return Py_False;
-   }
- }
- 
 %}
 
 %init %{
+#ifdef HAVE_GDKPIXBUF
+#ifdef HAVE_PYGOBJECT
    g_type_init ();
+   init_pygobject ();
+#endif
+#endif
+   PyDateTime_IMPORT;
 %}
 
 %include "gpod_doc.i"
+%include "@top_builddir@/config.h"
 
 # be nicer to decode these utf8 strings into Unicode objects in the C
 # layer. Here we are leaving it to the Python side, and just giving
 # them utf8 encoded Strings.
 typedef char gchar;
 
-# treat time_t as long
-typedef long time_t;
+%typemap(in) time_t {
+  struct tm tmvalue;
+  PyObject* pydatetime = NULL;
+  if (PyDateTime_Check($input)) {
+    pydatetime = $input;
+    Py_INCREF(pydatetime);
+  } else if  ((PyInt_Check($input)) || (PyLong_Check($input)) || (PyFloat_Check($input))) {
+    PyObject* pyargs;
+    Py_INCREF($input);
+    pyargs = PyTuple_Pack(1, $input);
+    if ((pydatetime = PyDateTime_FromTimestamp(pyargs)) == NULL) {
+      Py_DECREF(pyargs);
+      Py_DECREF($input);
+      SWIG_fail;
+    }
+    Py_DECREF(pyargs);
+    Py_DECREF($input);
+  } else {
+    PyErr_SetString(PyExc_ValueError, "$symname: Value must be a datetime.datetime, int or float");
+    SWIG_fail;
+  }
+  tmvalue.tm_year = PyDateTime_GET_YEAR(pydatetime)  - 1900;
+  tmvalue.tm_mon  = PyDateTime_GET_MONTH(pydatetime) - 1;
+  tmvalue.tm_mday = PyDateTime_GET_DAY(pydatetime);
+  tmvalue.tm_hour = PyDateTime_DATE_GET_HOUR(pydatetime);
+  tmvalue.tm_min  = PyDateTime_DATE_GET_MINUTE(pydatetime);
+  tmvalue.tm_sec  = PyDateTime_DATE_GET_SECOND(pydatetime);
 
+  Py_DECREF(pydatetime);
+  
+  $1 = mktime(&tmvalue);
+  if ($1 == -1) {
+    PyErr_SetString(PyExc_ValueError, "$symname: Failed to parse provided time");	
+    SWIG_fail;    
+  }
+}
+
+%typemap(out) time_t {
+#ifdef 0
+  /* for libgpod 0.6.x.. maybe ? */
+  struct tm *tmvalue;
+  tmvalue = localtime(&$1);
+  $result = PyDateTime_FromDateAndTime(tmvalue->tm_year + 1900,
+				       tmvalue->tm_mon  + 1,
+				       tmvalue->tm_mday,
+				       tmvalue->tm_hour,
+				       tmvalue->tm_min,
+				       tmvalue->tm_sec,
+				       0);
+#else
+  $result = PyLong_FromUnsignedLong((unsigned long) $1);
+#endif
+}
+
 %typemap(in) guint8 {
    unsigned long ival;
    ival = PyInt_AsUnsignedLongMask($input);
@@ -428,6 +485,19 @@
 typedef int gboolean;
 typedef int gint;
 
+#ifdef HAVE_GDKPIXBUF
+#ifdef HAVE_PYGOBJECT
+%typemap(out) gpointer itdb_thumb_get_gdk_pixbuf {
+  $result = pygobject_new((GObject *)$1);
+  g_object_unref($1);
+}
+
+%typemap(in) gpointer pixbuf {
+  $1 = GDK_PIXBUF(pygobject_get($input));
+}
+#endif
+#endif
+
 #define G_BEGIN_DECLS
 #define G_END_DECLS
 
@@ -447,6 +517,5 @@
 PyObject* sw_get_photoalbum_members(Itdb_PhotoAlbum *album);
 PyObject* sw_get_artwork_thumbnails(Itdb_Artwork *artwork);
 PyObject* sw_ipod_device_to_dict(Itdb_Device *device);
-PyObject* sw_save_itdb_thumb(Itdb_PhotoDB *itdb, Itdb_Thumb *thumb, const gchar *filename);
 
 %include "@top_srcdir@/src/itdb.h"

Modified: libgpod/branches/upstream/current/bindings/python/ipod.py
===================================================================
--- libgpod/branches/upstream/current/bindings/python/ipod.py	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/ipod.py	2007-11-12 21:03:04 UTC (rev 251)
@@ -15,6 +15,15 @@
 import socket
 import datetime
 
+if hasattr(gpod, 'HAVE_GDKPIXBUF') and hasattr(gpod, 'HAVE_PYGOBJECT'):
+    try:
+        import gtk
+        pixbuf_support = True
+    except ImportError:
+        pixbuf_support = False
+else:
+    pixbuf_support = False
+
 defaultencoding = locale.getpreferredencoding()
 
 class DatabaseException(RuntimeError):
@@ -102,7 +111,7 @@
 
         if not gpod.itdb_write_file(self._itdb, self._itdb_file, None):
             raise DatabaseException("Unable to save iTunes database %s" % self)
-        itdbext_file = "%s.ext" % (self._itdb_file)        
+        itdbext_file = "%s.ext" % (self._itdb_file)
         gtkpod.write(itdbext_file, self, self._itdb_file)
 
     def __getitem__(self, index):
@@ -196,7 +205,7 @@
 
     Master   = property(get_master)
     Podcasts = property(get_podcasts)
-    Playlists= property(get_playlists) 
+    Playlists= property(get_playlists)
 
     def smart_update(self):
         """Update all smart playlists."""
@@ -224,7 +233,7 @@
             self.Podcasts.add(track)
         else:
             self.Master.add(track)
-        track.__database = self # so the db doesn't get gc'd            
+        track.__database = self # so the db doesn't get gc'd
         return track
 
     def copy_delayed_files(self,callback=False):
@@ -277,21 +286,10 @@
     # Note we don't free the underlying structure, as it's still used
     # by the itdb.
 
-    _proxied_attributes = ("title","ipod_path","album","artist","genre","filetype",
-                           "comment","category","composer","grouping","description",
-                           "podcasturl","podcastrss","chapterdata","subtitle","id",
-                           "size","tracklen","cd_nr","cds","track_nr","tracks",
-                           "bitrate","samplerate","samplerate_low","year","volume",
-                           "soundcheck","time_added","time_played","time_modified",
-                           "bookmark_time","rating","playcount","playcount2",
-                           "recent_playcount","transferred","BPM","app_rating",
-                           "type1","type2","compilation","starttime","stoptime",
-                           "checked","dbid","drm_userid","visible","filetype_marker",
-                           "artwork_count","artwork_size","samplerate2", "remember_playback_position",
-                           "time_released","has_artwork","flag4", "skip_when_shuffling",
-                           "lyrics_flag","movie_flag","mark_unplayed","samplecount",
-                           "chapterdata_raw","chapterdata_raw_length","artwork",
-                           "usertype")
+    _proxied_attributes = [k for k in gpod._Itdb_Track.__dict__.keys()
+                            if not (k.startswith("_") or
+                                    k.startswith("reserved") or
+                                    k == "chapterdata")]
 
     def __init__(self, filename=None,
                  proxied_track=None, podcast=False, ownerdb=None):
@@ -304,7 +302,7 @@
         object.
 
         If podcast is True then the track will be setup as a Podcast,
-        unless proxied_track is set. 
+        unless proxied_track is set.
 
         """
 
@@ -336,7 +334,7 @@
                         if len(parts) == 2:
                             self[attrib[0]], self[attrib[1]] = parts
                         elif len(parts) == 1:
-                            self[attrib[0]] = parts[0]                           
+                            self[attrib[0]] = parts[0]
                     elif isinstance(value,mutagen.id3.TextFrame):
                         self[attrib] = value.text[0].encode('UTF-8','replace')
                 except KeyError:
@@ -378,10 +376,23 @@
             unicode_value = self['userdata']['%s_locale' % key].decode(self['userdata']['charset'])
         return unicode_value.encode(defaultencoding)
 
-    def set_thumbnail(self, filename):
+    def set_coverart_from_file(self, filename):
         gpod.itdb_track_set_thumbnails(self._track, filename)
         self._set_userdata_utf8('thumbnail', filename)
 
+    def set_coverart(self, pixbuf):
+        if pixbuf == None:
+            gpod.itdb_track_remove_thumbnails(self._track)
+        elif isinstance(pixbuf, Photo):
+            raise NotImplemented("Can't set coverart from existing coverart yet")
+        else:
+            gpod.itdb_track_set_thumbnails_from_pixbuf(self._track,
+                                                       pixbuf)
+
+    def get_coverart(self):
+        return Photo(proxied_photo=self._track.artwork,
+                     ownerdb=self._track.itdb)
+
     def copy_to_ipod(self):
         """Copy the track to the iPod."""
         self['userdata']['sha1_hash'] = gtkpod.sha1_hash(self._userdata_into_default_locale('filename'))
@@ -444,13 +455,16 @@
         return [self[k] for k in self._proxied_attributes]
 
     def pairs(self):
-        return [(k, self[k]) for k in self._proxied_attributes]        
+        return [(k, self[k]) for k in self._proxied_attributes]
 
     def __getitem__(self, item):
         if item == "userdata":
             return gpod.sw_get_track_userdata(self._track)
         elif item in self._proxied_attributes:
-            return getattr(self._track, item)
+            if item.startswith("time_"):
+                return datetime.datetime.fromtimestamp(getattr(self._track, item))
+            else:
+                return getattr(self._track, item)
         else:
             raise KeyError('No such key: %s' % item)
 
@@ -664,7 +678,7 @@
     id     = property(get_id)
     smart  = property(get_smart)
     master = property(get_master)
-    podcast= property(get_podcast)    
+    podcast= property(get_podcast)
     order  = property(get_sort, set_sort)
 
     def __str__(self):
@@ -730,7 +744,9 @@
     def __init__(self, mountpoint="/mnt/ipod"):
         """Create a Photo database object"""
         self._itdb = gpod.itdb_photodb_parse(mountpoint, None)
-        
+        if self._itdb == None:
+            self._itdb = gpod.itdb_photodb_create(mountpoint)
+
     def __str__(self):
         return self.__repr__()
 
@@ -741,7 +757,8 @@
             len(self))
 
     def close(self):
-        pass
+        gpod.itdb_photodb_write(self._itdb, None)
+        gpod.itdb_photodb_free(self._itdb)
 
     def __len__(self):
         return gpod.sw_get_list_len(self._itdb.photos)
@@ -754,8 +771,35 @@
                 index += len(self)
             return Photo(proxied_photo=gpod.sw_get_photo(self._itdb.photos, index),
                          ownerdb=self)
+
+    def new_PhotoAlbum(self,**kwargs):
+        """Create a new PhotoAlbum.
+        """
+        album = PhotoAlbum(self, **kwargs)
+        return album
+
+    def new_Photo(self,**kwargs):
+        """Create a new Photo.
+        """
+        kwargs['ownerdb'] = self
+        photo = Photo(**kwargs)
+        return photo
+
+    def remove(self, item):
+        """Remove a photo or album from a database.
+
+        item is either a Photo or PhotoAlbum object.
+        """
+
+        if isinstance(item, PhotoAlbum):
+            gpod.itdb_photodb_photoalbum_remove(self._itdb, item._pa, False)
+        elif isinstance(item, Photo):
+            gpod.itdb_photodb_remove_photo(self._itdb, None, item._photo)
+        else:
+            raise DatabaseException("Unable to remove a %s from database" % type(item))
+
     def get_device(self):
-        return gpod.sw_ipod_device_to_dict(self._itdb.device)        
+        return gpod.sw_ipod_device_to_dict(self._itdb.device)
 
     def get_photoalbums(self):
         """Get all photo albums."""
@@ -810,8 +854,15 @@
         if proxied_photoalbum:
             self._pa = proxied_photoalbum
         else:
-            raise NotImplemented("Can't create new Photo Albums yet")
+            self._pa = gpod.itdb_photodb_photoalbum_create(self._db._itdb, title, pos)
 
+    def add(self, photo):
+        """Add photo to photo album."""
+        gpod.itdb_photodb_photoalbum_add_photo(self._db._itdb, self._pa, photo._photo, -1)
+
+    def remove(self, photo):
+        gpod.itdb_photodb_remove_photo(self._db._itdb, self._pa, photo._photo)
+
     def get_name(self):
         """Get the name of the photo album."""
         return self._pa.name
@@ -825,7 +876,7 @@
 
     name       = property(get_name, set_name)
     album_type = property(get_album_type)
-    
+
     def __str__(self):
         return self.__repr__()
 
@@ -853,21 +904,23 @@
 class Photo:
     """A photo in an iTunes Photo database."""
 
-    _proxied_attributes = ("id","creation_date","digitized_date","artwork_size")  
+    _proxied_attributes = [k for k in gpod._Itdb_Artwork.__dict__.keys()
+                            if not (k.startswith("_") or k.startswith("reserved"))]
 
     def __init__(self, filename=None,
                  proxied_photo=None, ownerdb=None):
         """Create a Photo object."""
+        error = None
 
         if filename:
-            # maybe use itdb_photodb_add_photo ?
-            raise NotImplemented("Can't create new Photos from files yet")
+            self._photo = gpod.itdb_photodb_add_photo(ownerdb._itdb, filename, -1, 0, error)
+            self._database = ownerdb
         elif proxied_photo:
             self._photo = proxied_photo
             self._database = ownerdb
         else:
             self._photo = gpod.itdb_artwork_new()
-            
+
     def __str__(self):
         return self.__repr__()
 
@@ -885,7 +938,7 @@
         return [self[k] for k in self._proxied_attributes]
 
     def pairs(self):
-        return [(k, self[k]) for k in self._proxied_attributes]        
+        return [(k, self[k]) for k in self._proxied_attributes]
 
     def __getitem__(self, item):
         if item in self._proxied_attributes:
@@ -907,27 +960,29 @@
             return setattr(self._photo, item, value)
         else:
             raise KeyError('No such key: %s' % item)
-    
+
     def get_thumbnails(self):
-        return [Thumbnail(proxied_thumbnail=t, ownerphoto=self) for t in gpod.sw_get_artwork_thumbnails(self._photo)]
+        return [Thumbnail(proxied_thumbnail=t,
+                          ownerobject=self) for t in gpod.sw_get_artwork_thumbnails(
+            self._photo)]
 
     thumbnails = property(get_thumbnails)
 
 class Thumbnail:
     """A thumbnail in an Photo."""
 
-    _proxied_attributes = ("type","filename","rotation","offset","size","width","height",
-                           "horizontal_padding", "vertical_padding")
+    _proxied_attributes = [k for k in gpod._Itdb_Thumb.__dict__.keys()
+                            if not (k.startswith("_") or k.startswith("reserved"))]
 
-    def __init__(self, proxied_thumbnail=None, ownerphoto=None):
+    def __init__(self, proxied_thumbnail=None, ownerobject=None):
         """Create a thumbnail object."""
 
         if not proxied_thumbnail:
             raise NotImplemented("Can't create new Thumbnails from scratch, create Photos instead")
 
         self._thumbnail = proxied_thumbnail
-        self.__photo = ownerphoto # so the photo doesn't get gc'd
-            
+        self.__ownerobject = ownerobject
+
     def __str__(self):
         return self.__repr__()
 
@@ -945,7 +1000,7 @@
         return [self[k] for k in self._proxied_attributes]
 
     def pairs(self):
-        return [(k, self[k]) for k in self._proxied_attributes]        
+        return [(k, self[k]) for k in self._proxied_attributes]
 
     def __getitem__(self, item):
         if item in self._proxied_attributes:
@@ -961,7 +1016,14 @@
         else:
             raise KeyError('No such key: %s' % item)
 
-    def save_image(self,filename):
-        return gpod.sw_save_itdb_thumb(
-            self.__photo._database._itdb,
-            self._thumbnail,filename)
+    if pixbuf_support:
+        def get_pixbuf(self):
+            # this deals with coverart and photo albums
+            if hasattr(self.__ownerobject._database,"_itdb"):
+                return gpod.itdb_thumb_get_gdk_pixbuf(
+                    self.__ownerobject._database._itdb.device,
+                    self._thumbnail)
+            else:
+                return gpod.itdb_thumb_get_gdk_pixbuf(
+                    self.__ownerobject._database.device,
+                    self._thumbnail)

Modified: libgpod/branches/upstream/current/bindings/python/tests/Makefile.am
===================================================================
--- libgpod/branches/upstream/current/bindings/python/tests/Makefile.am	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/tests/Makefile.am	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,4 +1,6 @@
-EXTRA_DIST = resources
+EXTRA_DIST =            \
+        resources       \
+        tests.py
 
 dist-hook:
 	rm -rf `find $(distdir)/resources -type d -name .svn`

Modified: libgpod/branches/upstream/current/bindings/python/tests/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/bindings/python/tests/Makefile.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/bindings/python/tests/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# Free Software Foundation, Inc.
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
@@ -13,7 +13,6 @@
 # PARTICULAR PURPOSE.
 
 @SET_MAKE@
-
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
 VPATH = @srcdir@
@@ -21,7 +20,6 @@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 top_builddir = ../../..
-
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
@@ -35,7 +33,22 @@
 NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
+build_triplet = @build@
 host_triplet = @host@
+subdir = bindings/python/tests
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -80,10 +93,19 @@
 GREP = @GREP@
 GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
 GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
 HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
 HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
 HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
 HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
 HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
 HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
 HTML_DIR = @HTML_DIR@
@@ -97,14 +119,12 @@
 INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
 INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_ICONV = @INTLTOOL_ICONV@
 INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
 INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@
-INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@
 INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
 INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
 INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
 INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
@@ -116,12 +136,14 @@
 INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
 INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@
 INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
 INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 LDFLAGS = @LDFLAGS@
 LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@
 LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
 LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
 LIBGPOD_VERSION = @LIBGPOD_VERSION@
 LIBOBJS = @LIBOBJS@
@@ -149,6 +171,8 @@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
 PYTHON = @PYTHON@
 PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 PYTHON_INCLUDES = @PYTHON_INCLUDES@
@@ -159,6 +183,7 @@
 RANLIB = @RANLIB@
 SED = @SED@
 SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
 SHELL = @SHELL@
 STRIP = @STRIP@
 SWIG = @SWIG@
@@ -178,6 +203,8 @@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -203,6 +230,7 @@
 localedir = @localedir@
 localstatedir = @localstatedir@
 mandir = @mandir@
+mkdir_p = @mkdir_p@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
 pkgpyexecdir = @pkgpyexecdir@
@@ -216,23 +244,43 @@
 sharedstatedir = @sharedstatedir@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
-EXTRA_DIST = resources
-subdir = bindings/python/tests
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-DIST_SOURCES =
-DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
+EXTRA_DIST = \
+        resources       \
+        tests.py
+
 all: all-am
 
 .SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+$(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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  bindings/python/tests/Makefile'; \
 	cd $(top_srcdir) && \
 	  $(AUTOMAKE) --gnu  bindings/python/tests/Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
-	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
+.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
+
 mostlyclean-libtool:
 	-rm -f *.lo
 
@@ -248,11 +296,7 @@
 ctags: CTAGS
 CTAGS:
 
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-top_distdir = ../../..
-distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
-
 distdir: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
@@ -265,7 +309,7 @@
 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
 	    dir="/$$dir"; \
-	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
 	  else \
 	    dir=''; \
 	  fi; \
@@ -286,7 +330,6 @@
 check-am: all-am
 check: check-am
 all-am: Makefile
-
 installdirs:
 install: install-am
 install-exec: install-exec-am
@@ -307,7 +350,7 @@
 clean-generic:
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -324,6 +367,8 @@
 
 dvi-am:
 
+html: html-am
+
 info: info-am
 
 info-am:
@@ -357,14 +402,14 @@
 uninstall-am: uninstall-info-am
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
-	distclean distclean-generic distclean-libtool distdir dvi \
-	dvi-am info info-am install install-am install-data \
-	install-data-am install-exec install-exec-am install-info \
-	install-info-am install-man install-strip installcheck \
-	installcheck-am installdirs maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-generic \
-	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
-	uninstall-info-am
+	dist-hook distclean distclean-generic distclean-libtool \
+	distdir dvi dvi-am html html-am info info-am install \
+	install-am install-data install-data-am install-exec \
+	install-exec-am install-info install-info-am install-man \
+	install-strip installcheck installcheck-am installdirs \
+	maintainer-clean maintainer-clean-generic mostlyclean \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	uninstall uninstall-am uninstall-info-am
 
 
 dist-hook:

Added: libgpod/branches/upstream/current/bindings/python/tests/resources/tiny.png
===================================================================
(Binary files differ)


Property changes on: libgpod/branches/upstream/current/bindings/python/tests/resources/tiny.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: libgpod/branches/upstream/current/bindings/python/tests/tests.py
===================================================================
--- libgpod/branches/upstream/current/bindings/python/tests/tests.py	                        (rev 0)
+++ libgpod/branches/upstream/current/bindings/python/tests/tests.py	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,191 @@
+import unittest
+import shutil
+import tempfile
+import os
+import datetime
+import time
+import types
+
+gpod = __import__('__init__')
+
+class TestiPodFunctions(unittest.TestCase):
+    def setUp(self):
+        self.mp = tempfile.mkdtemp()
+        control_dir = os.path.join(self.mp,'iPod_Control')
+        music_dir = os.path.join(control_dir, 'Music')
+        shutil.copytree('resources',
+                        control_dir)
+        os.mkdir(music_dir)
+        for i in range(0,20):
+            os.mkdir(os.path.join(music_dir,"f%02d" % i))
+        self.db = gpod.Database(self.mp)        
+
+    def tearDown(self):
+        shutil.rmtree(self.mp)
+
+    def testClose(self):
+        self.db.close()
+
+    def testListPlaylists(self):
+        [p for p in self.db.Playlists]
+
+    def testCreatePlaylist(self):
+        self.assertEqual(len(self.db.Playlists),2)
+        pl = self.db.new_Playlist('my title')
+        self.assertEqual(len(self.db.Playlists),3)
+
+    def testPopulatePlaylist(self):
+        trackname = os.path.join(self.mp,
+                                 'iPod_Control',
+                                 'tiny.mp3')
+                                 
+        pl = self.db.new_Playlist('my title')
+        self.assertEqual(len(pl),0)
+        t = self.db.new_Track(filename=trackname)
+        pl.add(t)
+        self.assertEqual(len(pl),1)
+                                 
+    def testAddTrack(self):
+        trackname = os.path.join(self.mp,
+                                 'iPod_Control',
+                                 'tiny.mp3')
+        for n in range(1,5):
+            t = self.db.new_Track(filename=trackname)
+            self.assertEqual(len(self.db),n)
+        self.db.copy_delayed_files()
+        for track in self.db:
+            self.failUnless(os.path.exists(track.ipod_filename()))
+
+    def testAddRemoveTrack(self):
+        self.testAddTrack()
+        for n in range(4,0,-1):
+            track = self.db[0]
+            track_file = track.ipod_filename()
+            self.assertEqual(len(self.db),n)
+            self.db.remove(track, ipod=True)
+            self.failIf(os.path.exists(track_file))
+
+    def testDatestampSetting(self):
+        trackname = os.path.join(self.mp,
+                                 'iPod_Control',
+                                 'tiny.mp3')
+        t = self.db.new_Track(filename=trackname)
+        date = datetime.datetime.now()
+        t['time_added'] = date
+        self.assertEqual(date.year, t['time_added'].year)
+        self.assertEqual(date.second, t['time_added'].second)
+        # microsecond won't match, that's lost in the itdb
+        date = datetime.datetime.now()
+        t['time_added'] = time.mktime(date.timetuple())
+        self.assertEqual(date.year, t['time_added'].year)
+        self.assertEqual(date.second, t['time_added'].second)
+            
+    def testVersion(self):
+        self.assertEqual(type(gpod.version_info), 
+                         types.TupleType)
+
+class TestPhotoDatabase(unittest.TestCase):
+    def setUp(self):
+        self.mp = tempfile.mkdtemp()
+        control_dir = os.path.join(self.mp,'iPod_Control')
+        photo_dir = os.path.join(control_dir, 'Photos')
+        shutil.copytree('resources',
+                        control_dir)
+        os.mkdir(photo_dir)
+        self.db = gpod.PhotoDatabase(self.mp)
+        gpod.itdb_device_set_sysinfo (self.db._itdb.device, "ModelNumStr", "MA450");
+
+    def tearDown(self):
+        shutil.rmtree(self.mp)
+
+    def testClose(self):
+        self.db.close()
+
+    def testAddPhotoAlbum(self):
+        """ Test adding 5 photo albums to the database """
+        for i in range(0, 5):
+            count = len(self.db.PhotoAlbums)
+            album = self.db.new_PhotoAlbum(title="Test %s" % i)
+            self.failUnless(len(self.db.PhotoAlbums) == (count + 1))
+
+    def testAddRemovePhotoAlbum(self):
+        """ Test removing all albums but "Photo Library" """
+        self.testAddPhotoAlbum()
+        pas = [x for x in self.db.PhotoAlbums if x.name != "Photo Library"]
+        for pa in pas:
+            self.db.remove(pa)
+        self.assertEqual(len(self.db.PhotoAlbums), 1)
+
+    def testRenamePhotoAlbum(self):
+        bad = []
+        good = []
+
+        self.testAddPhotoAlbum()
+        pas = [x for x in self.db.PhotoAlbums if x.name != "Photo Library"]
+        for pa in pas:
+            bad.append(pa.name)
+            pa.name = "%s (renamed)" % pa.name
+            good.append(pa.name)
+
+        pas = [x for x in self.db.PhotoAlbums if x.name != "Photo Library"]
+        for pa in pas:
+            self.failUnless(pa.name in bad)
+            self.failUnless(pa.name not in good)
+
+    def testEnumeratePhotoAlbums(self):
+        [photo for photo in self.db.PhotoAlbums]
+        
+    def testAddPhoto(self):
+        photoname = os.path.join(self.mp,
+                                 'iPod_Control',
+                                 'tiny.png')
+        self.failUnless(os.path.exists(photoname))
+        for n in range(1,5):
+            t = self.db.new_Photo(filename=photoname)
+            self.assertEqual(len(self.db), n)
+
+    def testAddPhotoToAlbum(self):
+        self.testAddPhoto()
+        pa = self.db.new_PhotoAlbum(title="Add To Album Test")
+        count = len(pa)
+        for p in self.db.PhotoAlbums[0]:
+            pa.add(p)
+        self.assertEqual(len(pa), len(self.db.PhotoAlbums[0]))
+        self.failUnless(len(pa) > count)
+
+    def testRemovePhotoFromAlbum(self):
+        self.testAddPhotoToAlbum()
+        pa = self.db.PhotoAlbums[1]
+        for p in pa[:]:
+            pa.remove(p)
+        # make sure we didn't delete the photo
+        self.failUnless(len(self.db.PhotoAlbums[0]) > 0)
+        # but that we did remove them from album
+        self.assertEqual(len(pa), 0)
+
+    def testAddRemovePhoto(self):
+        self.testAddPhoto()
+        self.failUnless(len(self.db) > 0)
+        for photo in self.db.PhotoAlbums[0][:]:
+            self.db.remove(photo)
+        self.assertEqual(len(self.db), 0)
+
+    def testAddCountPhotos(self):
+        count = len(self.db)
+        self.testAddPhoto()
+        self.failUnless(len(self.db) > count)
+
+    def testEnumeratePhotoAlbums(self):
+        [photo for photo in self.db.PhotoAlbums]
+
+    def testEnumeratePhotos(self):
+        for album in self.db.PhotoAlbums:
+            [photo for photo in album]
+
+    def testEnumeratePhotosThumbs(self):
+        for album in self.db.PhotoAlbums:
+            for photo in album:
+                [thumb for thumb in photo.thumbnails]            
+                
+if __name__ == '__main__':
+    unittest.main()

Modified: libgpod/branches/upstream/current/compile
===================================================================
--- libgpod/branches/upstream/current/compile	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/compile	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,9 @@
 #! /bin/sh
-
 # Wrapper for compilers which do not understand `-c -o'.
 
-# Copyright 1999, 2000 Free Software Foundation, Inc.
+scriptversion=2005-05-14.22
+
+# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
 # Written by Tom Tromey <tromey at cygnus.com>.
 #
 # This program is free software; you can redistribute it and/or modify
@@ -17,83 +18,125 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 
 # 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.
 
-# Usage:
-# compile PROGRAM [ARGS]...
-# `-o FOO.o' is removed from the args passed to the actual compile.
+# This file is maintained in Automake, please report
+# bugs to <bug-automake at gnu.org> or send patches to
+# <automake-patches at gnu.org>.
 
-prog=$1
-shift
+case $1 in
+  '')
+     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
+     exit 1;
+     ;;
+  -h | --h*)
+    cat <<\EOF
+Usage: compile [--help] [--version] PROGRAM [ARGS]
 
+Wrapper for compilers which do not understand `-c -o'.
+Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
+arguments, and rename the output as expected.
+
+If you are trying to build a whole package this is not the
+right script to run: please start by reading the file `INSTALL'.
+
+Report bugs to <bug-automake at gnu.org>.
+EOF
+    exit $?
+    ;;
+  -v | --v*)
+    echo "compile $scriptversion"
+    exit $?
+    ;;
+esac
+
 ofile=
 cfile=
-args=
-while test $# -gt 0; do
-   case "$1" in
-    -o)
-       # configure might choose to run compile as `compile cc -o foo foo.c'.
-       # So we do something ugly here.
-       ofile=$2
-       shift
-       case "$ofile" in
-	*.o | *.obj)
-	   ;;
-	*)
-	   args="$args -o $ofile"
-	   ofile=
-	   ;;
-       esac
-       ;;
-    *.c)
-       cfile=$1
-       args="$args $1"
-       ;;
-    *)
-       args="$args $1"
-       ;;
-   esac
-   shift
+eat=
+
+for arg
+do
+  if test -n "$eat"; then
+    eat=
+  else
+    case $1 in
+      -o)
+	# configure might choose to run compile as `compile cc -o foo foo.c'.
+	# So we strip `-o arg' only if arg is an object.
+	eat=1
+	case $2 in
+	  *.o | *.obj)
+	    ofile=$2
+	    ;;
+	  *)
+	    set x "$@" -o "$2"
+	    shift
+	    ;;
+	esac
+	;;
+      *.c)
+	cfile=$1
+	set x "$@" "$1"
+	shift
+	;;
+      *)
+	set x "$@" "$1"
+	shift
+	;;
+    esac
+  fi
+  shift
 done
 
 if test -z "$ofile" || test -z "$cfile"; then
-   # If no `-o' option was seen then we might have been invoked from a
-   # pattern rule where we don't need one.  That is ok -- this is a
-   # normal compilation that the losing compiler can handle.  If no
-   # `.c' file was seen then we are probably linking.  That is also
-   # ok.
-   exec "$prog" $args
+  # If no `-o' option was seen then we might have been invoked from a
+  # pattern rule where we don't need one.  That is ok -- this is a
+  # normal compilation that the losing compiler can handle.  If no
+  # `.c' file was seen then we are probably linking.  That is also
+  # ok.
+  exec "$@"
 fi
 
 # Name of file we expect compiler to create.
-cofile=`echo $cfile | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
+cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'`
 
 # Create the lock directory.
 # Note: use `[/.-]' here to ensure that we don't use the same name
 # that we are using for the .o file.  Also, base the name on the expected
 # object file name, since that is what matters with a parallel build.
-lockdir=`echo $cofile | sed -e 's|[/.-]|_|g'`.d
+lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d
 while true; do
-   if mkdir $lockdir > /dev/null 2>&1; then
-      break
-   fi
-   sleep 1
+  if mkdir "$lockdir" >/dev/null 2>&1; then
+    break
+  fi
+  sleep 1
 done
 # FIXME: race condition here if user kills between mkdir and trap.
-trap "rmdir $lockdir; exit 1" 1 2 15
+trap "rmdir '$lockdir'; exit 1" 1 2 15
 
 # Run the compile.
-"$prog" $args
-status=$?
+"$@"
+ret=$?
 
 if test -f "$cofile"; then
-   mv "$cofile" "$ofile"
+  mv "$cofile" "$ofile"
+elif test -f "${cofile}bj"; then
+  mv "${cofile}bj" "$ofile"
 fi
 
-rmdir $lockdir
-exit $status
+rmdir "$lockdir"
+exit $ret
+
+# 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-end: "$"
+# End:

Modified: libgpod/branches/upstream/current/config.guess
===================================================================
--- libgpod/branches/upstream/current/config.guess	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/config.guess	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,9 +1,10 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+#   Inc.
 
-timestamp='2003-10-03'
+timestamp='2007-03-06'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -17,13 +18,15 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
+# 02110-1301, USA.
 #
 # 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.
 
+
 # Originally written by Per Bothner <per at bothner.com>.
 # Please send patches to <config-patches at gnu.org>.  Submit a context
 # diff and a properly formatted ChangeLog entry.
@@ -53,7 +56,7 @@
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
@@ -66,11 +69,11 @@
 while test $# -gt 0 ; do
   case $1 in
     --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit 0 ;;
+       echo "$timestamp" ; exit ;;
     --version | -v )
-       echo "$version" ; exit 0 ;;
+       echo "$version" ; exit ;;
     --help | --h* | -h )
-       echo "$usage"; exit 0 ;;
+       echo "$usage"; exit ;;
     -- )     # Stop option processing
        shift; break ;;
     - )	# Use stdin as input.
@@ -104,7 +107,7 @@
 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
 : ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
  { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
  { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
  { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
@@ -123,7 +126,7 @@
 	;;
  ,,*)   CC_FOR_BUILD=$CC ;;
  ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-esac ;'
+esac ; set_cc_for_build= ;'
 
 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
 # (ghazi at noc.rutgers.edu 1994-08-24)
@@ -158,6 +161,7 @@
 	    arm*) machine=arm-unknown ;;
 	    sh3el) machine=shl-unknown ;;
 	    sh3eb) machine=sh-unknown ;;
+	    sh5el) machine=sh5le-unknown ;;
 	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
 	esac
 	# The Operating System including object format, if it has switched
@@ -196,50 +200,32 @@
 	# contains redundant information, the shorter form:
 	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
 	echo "${machine}-${os}${release}"
-	exit 0 ;;
-    amiga:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    arc:OpenBSD:*:*)
-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    hp300:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    mac68k:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    macppc:OpenBSD:*:*)
-	echo powerpc-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    mvme68k:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    mvme88k:OpenBSD:*:*)
-	echo m88k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    mvmeppc:OpenBSD:*:*)
-	echo powerpc-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    pmax:OpenBSD:*:*)
-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    sgi:OpenBSD:*:*)
-	echo mipseb-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    sun3:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    wgrisc:OpenBSD:*:*)
-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     *:OpenBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
+	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
+	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+	exit ;;
+    *:ekkoBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+	exit ;;
+    *:SolidBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+	exit ;;
+    macppc:MirBSD:*:*)
+	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
+	exit ;;
+    *:MirBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+	exit ;;
     alpha:OSF1:*:*)
-	if test $UNAME_RELEASE = "V4.0"; then
+	case $UNAME_RELEASE in
+	*4.0)
 		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
-	fi
+		;;
+	*5.*)
+	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+		;;
+	esac
 	# According to Compaq, /usr/sbin/psrinfo has been available on
 	# OSF/1 and Tru64 systems produced since 1995.  I hope that
 	# covers most systems running today.  This code pipes the CPU
@@ -277,42 +263,49 @@
 	    "EV7.9 (21364A)")
 		UNAME_MACHINE="alphaev79" ;;
 	esac
+	# A Pn.n version is a patched version.
 	# A Vn.n version is a released version.
 	# A Tn.n version is a released field test version.
 	# A Xn.n version is an unreleased experimental baselevel.
 	# 1.2 uses "1.2" for uname -r.
-	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-	exit 0 ;;
-    Alpha*:OpenVMS:*:*)
-	echo alpha-hp-vms
-	exit 0 ;;
+	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+	exit ;;
     Alpha\ *:Windows_NT*:*)
 	# How do we know it's Interix rather than the generic POSIX subsystem?
 	# Should we change UNAME_MACHINE based on the output of uname instead
 	# of the specific Alpha model?
 	echo alpha-pc-interix
-	exit 0 ;;
+	exit ;;
     21064:Windows_NT:50:3)
 	echo alpha-dec-winnt3.5
-	exit 0 ;;
+	exit ;;
     Amiga*:UNIX_System_V:4.0:*)
 	echo m68k-unknown-sysv4
-	exit 0;;
+	exit ;;
     *:[Aa]miga[Oo][Ss]:*:*)
 	echo ${UNAME_MACHINE}-unknown-amigaos
-	exit 0 ;;
+	exit ;;
     *:[Mm]orph[Oo][Ss]:*:*)
 	echo ${UNAME_MACHINE}-unknown-morphos
-	exit 0 ;;
+	exit ;;
     *:OS/390:*:*)
 	echo i370-ibm-openedition
-	exit 0 ;;
+	exit ;;
+    *:z/VM:*:*)
+	echo s390-ibm-zvmoe
+	exit ;;
+    *:OS400:*:*)
+        echo powerpc-ibm-os400
+	exit ;;
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
 	echo arm-acorn-riscix${UNAME_RELEASE}
-	exit 0;;
+	exit ;;
+    arm:riscos:*:*|arm:RISCOS:*:*)
+	echo arm-unknown-riscos
+	exit ;;
     SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
 	echo hppa1.1-hitachi-hiuxmpp
-	exit 0;;
+	exit ;;
     Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
 	# akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
 	if test "`(/bin/universe) 2>/dev/null`" = att ; then
@@ -320,32 +313,32 @@
 	else
 		echo pyramid-pyramid-bsd
 	fi
-	exit 0 ;;
+	exit ;;
     NILE*:*:*:dcosx)
 	echo pyramid-pyramid-svr4
-	exit 0 ;;
+	exit ;;
     DRS?6000:unix:4.0:6*)
 	echo sparc-icl-nx6
-	exit 0 ;;
-    DRS?6000:UNIX_SV:4.2*:7*)
+	exit ;;
+    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
 	case `/usr/bin/uname -p` in
-	    sparc) echo sparc-icl-nx7 && exit 0 ;;
+	    sparc) echo sparc-icl-nx7; exit ;;
 	esac ;;
     sun4H:SunOS:5.*:*)
 	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit 0 ;;
+	exit ;;
     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
 	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit 0 ;;
+	exit ;;
     i86pc:SunOS:5.*:*)
 	echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit 0 ;;
+	exit ;;
     sun4*:SunOS:6*:*)
 	# According to config.sub, this is the proper way to canonicalize
 	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
 	# it's likely to be more like Solaris than SunOS4.
 	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit 0 ;;
+	exit ;;
     sun4*:SunOS:*:*)
 	case "`/usr/bin/arch -k`" in
 	    Series*|S4*)
@@ -354,10 +347,10 @@
 	esac
 	# Japanese Language versions have a version number like `4.1.3-JL'.
 	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
-	exit 0 ;;
+	exit ;;
     sun3*:SunOS:*:*)
 	echo m68k-sun-sunos${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     sun*:*:4.2BSD:*)
 	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
 	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
@@ -369,10 +362,10 @@
 		echo sparc-sun-sunos${UNAME_RELEASE}
 		;;
 	esac
-	exit 0 ;;
+	exit ;;
     aushp:SunOS:*:*)
 	echo sparc-auspex-sunos${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     # The situation for MiNT is a little confusing.  The machine name
     # can be virtually everything (everything which is not
     # "atarist" or "atariste" at least should have a processor
@@ -383,37 +376,40 @@
     # be no problem.
     atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
         echo m68k-atari-mint${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
 	echo m68k-atari-mint${UNAME_RELEASE}
-        exit 0 ;;
+        exit ;;
     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
         echo m68k-atari-mint${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
         echo m68k-milan-mint${UNAME_RELEASE}
-        exit 0 ;;
+        exit ;;
     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
         echo m68k-hades-mint${UNAME_RELEASE}
-        exit 0 ;;
+        exit ;;
     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
         echo m68k-unknown-mint${UNAME_RELEASE}
-        exit 0 ;;
+        exit ;;
+    m68k:machten:*:*)
+	echo m68k-apple-machten${UNAME_RELEASE}
+	exit ;;
     powerpc:machten:*:*)
 	echo powerpc-apple-machten${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     RISC*:Mach:*:*)
 	echo mips-dec-mach_bsd4.3
-	exit 0 ;;
+	exit ;;
     RISC*:ULTRIX:*:*)
 	echo mips-dec-ultrix${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     VAX*:ULTRIX*:*:*)
 	echo vax-dec-ultrix${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     2020:CLIX:*:* | 2430:CLIX:*:*)
 	echo clipper-intergraph-clix${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     mips:*:*:UMIPS | mips:*:*:RISCos)
 	eval $set_cc_for_build
 	sed 's/^	//' << EOF >$dummy.c
@@ -437,32 +433,33 @@
 	  exit (-1);
 	}
 EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c \
-	  && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
-	  && exit 0
+	$CC_FOR_BUILD -o $dummy $dummy.c &&
+	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+	  SYSTEM_NAME=`$dummy $dummyarg` &&
+	    { echo "$SYSTEM_NAME"; exit; }
 	echo mips-mips-riscos${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     Motorola:PowerMAX_OS:*:*)
 	echo powerpc-motorola-powermax
-	exit 0 ;;
+	exit ;;
     Motorola:*:4.3:PL8-*)
 	echo powerpc-harris-powermax
-	exit 0 ;;
+	exit ;;
     Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
 	echo powerpc-harris-powermax
-	exit 0 ;;
+	exit ;;
     Night_Hawk:Power_UNIX:*:*)
 	echo powerpc-harris-powerunix
-	exit 0 ;;
+	exit ;;
     m88k:CX/UX:7*:*)
 	echo m88k-harris-cxux7
-	exit 0 ;;
+	exit ;;
     m88k:*:4*:R4*)
 	echo m88k-motorola-sysv4
-	exit 0 ;;
+	exit ;;
     m88k:*:3*:R3*)
 	echo m88k-motorola-sysv3
-	exit 0 ;;
+	exit ;;
     AViiON:dgux:*:*)
         # DG/UX returns AViiON for all architectures
         UNAME_PROCESSOR=`/usr/bin/uname -p`
@@ -478,29 +475,29 @@
 	else
 	    echo i586-dg-dgux${UNAME_RELEASE}
 	fi
- 	exit 0 ;;
+ 	exit ;;
     M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
 	echo m88k-dolphin-sysv3
-	exit 0 ;;
+	exit ;;
     M88*:*:R3*:*)
 	# Delta 88k system running SVR3
 	echo m88k-motorola-sysv3
-	exit 0 ;;
+	exit ;;
     XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
 	echo m88k-tektronix-sysv3
-	exit 0 ;;
+	exit ;;
     Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
 	echo m68k-tektronix-bsd
-	exit 0 ;;
+	exit ;;
     *:IRIX*:*:*)
 	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
-	exit 0 ;;
+	exit ;;
     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
-	echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
-	exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
+	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
+	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
     i*86:AIX:*:*)
 	echo i386-ibm-aix
-	exit 0 ;;
+	exit ;;
     ia64:AIX:*:*)
 	if [ -x /usr/bin/oslevel ] ; then
 		IBM_REV=`/usr/bin/oslevel`
@@ -508,7 +505,7 @@
 		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
 	fi
 	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-	exit 0 ;;
+	exit ;;
     *:AIX:2:3)
 	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
 		eval $set_cc_for_build
@@ -523,14 +520,18 @@
 			exit(0);
 			}
 EOF
-		$CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
-		echo rs6000-ibm-aix3.2.5
+		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+		then
+			echo "$SYSTEM_NAME"
+		else
+			echo rs6000-ibm-aix3.2.5
+		fi
 	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
 		echo rs6000-ibm-aix3.2.4
 	else
 		echo rs6000-ibm-aix3.2
 	fi
-	exit 0 ;;
+	exit ;;
     *:AIX:*:[45])
 	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
 	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
@@ -544,28 +545,28 @@
 		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
 	fi
 	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
-	exit 0 ;;
+	exit ;;
     *:AIX:*:*)
 	echo rs6000-ibm-aix
-	exit 0 ;;
+	exit ;;
     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
 	echo romp-ibm-bsd4.4
-	exit 0 ;;
+	exit ;;
     ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
 	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
-	exit 0 ;;                           # report: romp-ibm BSD 4.3
+	exit ;;                             # report: romp-ibm BSD 4.3
     *:BOSX:*:*)
 	echo rs6000-bull-bosx
-	exit 0 ;;
+	exit ;;
     DPX/2?00:B.O.S.:*:*)
 	echo m68k-bull-sysv3
-	exit 0 ;;
+	exit ;;
     9000/[34]??:4.3bsd:1.*:*)
 	echo m68k-hp-bsd
-	exit 0 ;;
+	exit ;;
     hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
 	echo m68k-hp-bsd4.4
-	exit 0 ;;
+	exit ;;
     9000/[34678]??:HP-UX:*:*)
 	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
 	case "${UNAME_MACHINE}" in
@@ -627,9 +628,19 @@
 	esac
 	if [ ${HP_ARCH} = "hppa2.0w" ]
 	then
-	    # avoid double evaluation of $set_cc_for_build
-	    test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
-	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
+	    eval $set_cc_for_build
+
+	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
+	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
+	    # generating 64-bit code.  GNU and HP use different nomenclature:
+	    #
+	    # $ CC_FOR_BUILD=cc ./config.guess
+	    # => hppa2.0w-hp-hpux11.23
+	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
+	    # => hppa64-hp-hpux11.23
+
+	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
+		grep __LP64__ >/dev/null
 	    then
 		HP_ARCH="hppa2.0w"
 	    else
@@ -637,11 +648,11 @@
 	    fi
 	fi
 	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
-	exit 0 ;;
+	exit ;;
     ia64:HP-UX:*:*)
 	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
 	echo ia64-hp-hpux${HPUX_REV}
-	exit 0 ;;
+	exit ;;
     3050*:HI-UX:*:*)
 	eval $set_cc_for_build
 	sed 's/^	//' << EOF >$dummy.c
@@ -669,153 +680,182 @@
 	  exit (0);
 	}
 EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
+	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+		{ echo "$SYSTEM_NAME"; exit; }
 	echo unknown-hitachi-hiuxwe2
-	exit 0 ;;
+	exit ;;
     9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
 	echo hppa1.1-hp-bsd
-	exit 0 ;;
+	exit ;;
     9000/8??:4.3bsd:*:*)
 	echo hppa1.0-hp-bsd
-	exit 0 ;;
+	exit ;;
     *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
 	echo hppa1.0-hp-mpeix
-	exit 0 ;;
+	exit ;;
     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
 	echo hppa1.1-hp-osf
-	exit 0 ;;
+	exit ;;
     hp8??:OSF1:*:*)
 	echo hppa1.0-hp-osf
-	exit 0 ;;
+	exit ;;
     i*86:OSF1:*:*)
 	if [ -x /usr/sbin/sysversion ] ; then
 	    echo ${UNAME_MACHINE}-unknown-osf1mk
 	else
 	    echo ${UNAME_MACHINE}-unknown-osf1
 	fi
-	exit 0 ;;
+	exit ;;
     parisc*:Lites*:*:*)
 	echo hppa1.1-hp-lites
-	exit 0 ;;
+	exit ;;
     C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
 	echo c1-convex-bsd
-        exit 0 ;;
+        exit ;;
     C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
 	if getsysinfo -f scalar_acc
 	then echo c32-convex-bsd
 	else echo c2-convex-bsd
 	fi
-        exit 0 ;;
+        exit ;;
     C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
 	echo c34-convex-bsd
-        exit 0 ;;
+        exit ;;
     C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
 	echo c38-convex-bsd
-        exit 0 ;;
+        exit ;;
     C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
 	echo c4-convex-bsd
-        exit 0 ;;
+        exit ;;
     CRAY*Y-MP:*:*:*)
 	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit 0 ;;
+	exit ;;
     CRAY*[A-Z]90:*:*:*)
 	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
 	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
 	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
 	      -e 's/\.[^.]*$/.X/'
-	exit 0 ;;
+	exit ;;
     CRAY*TS:*:*:*)
 	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit 0 ;;
+	exit ;;
     CRAY*T3E:*:*:*)
 	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit 0 ;;
+	exit ;;
     CRAY*SV1:*:*:*)
 	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit 0 ;;
+	exit ;;
     *:UNICOS/mp:*:*)
-	echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit 0 ;;
+	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit ;;
     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
 	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
         FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
         FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
         echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-        exit 0 ;;
+        exit ;;
+    5000:UNIX_System_V:4.*:*)
+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+	exit ;;
     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
 	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     sparc*:BSD/OS:*:*)
 	echo sparc-unknown-bsdi${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     *:BSD/OS:*:*)
 	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-	exit 0 ;;
-    *:FreeBSD:*:*|*:GNU/FreeBSD:*:*)
-	# Determine whether the default compiler uses glibc.
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#include <features.h>
-	#if __GLIBC__ >= 2
-	LIBC=gnu
-	#else
-	LIBC=
-	#endif
-EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
-	# GNU/FreeBSD systems have a "k" prefix to indicate we are using
-	# FreeBSD's kernel, but not the complete OS.
-	case ${LIBC} in gnu) kernel_only='k' ;; esac
-	echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
-	exit 0 ;;
+	exit ;;
+    *:FreeBSD:*:*)
+	case ${UNAME_MACHINE} in
+	    pc98)
+		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	    amd64)
+		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	    *)
+		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+	esac
+	exit ;;
     i*:CYGWIN*:*)
 	echo ${UNAME_MACHINE}-pc-cygwin
-	exit 0 ;;
-    i*:MINGW*:*)
+	exit ;;
+    *:MINGW*:*)
 	echo ${UNAME_MACHINE}-pc-mingw32
-	exit 0 ;;
+	exit ;;
+    i*:windows32*:*)
+    	# uname -m includes "-pc" on this system.
+    	echo ${UNAME_MACHINE}-mingw32
+	exit ;;
     i*:PW*:*)
 	echo ${UNAME_MACHINE}-pc-pw32
-	exit 0 ;;
-    x86:Interix*:[34]*)
-	echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
-	exit 0 ;;
+	exit ;;
+    *:Interix*:[3456]*)
+    	case ${UNAME_MACHINE} in
+	    x86) 
+		echo i586-pc-interix${UNAME_RELEASE}
+		exit ;;
+	    EM64T | authenticamd)
+		echo x86_64-unknown-interix${UNAME_RELEASE}
+		exit ;;
+	esac ;;
     [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
 	echo i${UNAME_MACHINE}-pc-mks
-	exit 0 ;;
+	exit ;;
     i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
 	# How do we know it's Interix rather than the generic POSIX subsystem?
 	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
 	# UNAME_MACHINE based on the output of uname instead of i386?
 	echo i586-pc-interix
-	exit 0 ;;
+	exit ;;
     i*:UWIN*:*)
 	echo ${UNAME_MACHINE}-pc-uwin
-	exit 0 ;;
+	exit ;;
+    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
+	echo x86_64-unknown-cygwin
+	exit ;;
     p*:CYGWIN*:*)
 	echo powerpcle-unknown-cygwin
-	exit 0 ;;
+	exit ;;
     prep*:SunOS:5.*:*)
 	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit 0 ;;
+	exit ;;
     *:GNU:*:*)
+	# the GNU system
 	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-	exit 0 ;;
+	exit ;;
+    *:GNU/*:*:*)
+	# other systems with GNU libc and userland
+	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+	exit ;;
     i*86:Minix:*:*)
 	echo ${UNAME_MACHINE}-pc-minix
-	exit 0 ;;
+	exit ;;
     arm*:Linux:*:*)
 	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit 0 ;;
+	exit ;;
+    avr32*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
     cris:Linux:*:*)
 	echo cris-axis-linux-gnu
-	exit 0 ;;
+	exit ;;
+    crisv32:Linux:*:*)
+	echo crisv32-axis-linux-gnu
+	exit ;;
+    frv:Linux:*:*)
+    	echo frv-unknown-linux-gnu
+	exit ;;
     ia64:Linux:*:*)
 	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit 0 ;;
+	exit ;;
+    m32r*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit ;;
     m68*:Linux:*:*)
 	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit 0 ;;
+	exit ;;
     mips:Linux:*:*)
 	eval $set_cc_for_build
 	sed 's/^	//' << EOF >$dummy.c
@@ -832,8 +872,12 @@
 	#endif
 	#endif
 EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
-	test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^CPU/{
+		s: ::g
+		p
+	    }'`"
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
 	;;
     mips64:Linux:*:*)
 	eval $set_cc_for_build
@@ -851,15 +895,22 @@
 	#endif
 	#endif
 EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
-	test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^CPU/{
+		s: ::g
+		p
+	    }'`"
+	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
 	;;
+    or32:Linux:*:*)
+	echo or32-unknown-linux-gnu
+	exit ;;
     ppc:Linux:*:*)
 	echo powerpc-unknown-linux-gnu
-	exit 0 ;;
+	exit ;;
     ppc64:Linux:*:*)
 	echo powerpc64-unknown-linux-gnu
-	exit 0 ;;
+	exit ;;
     alpha:Linux:*:*)
 	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
 	  EV5)   UNAME_MACHINE=alphaev5 ;;
@@ -873,7 +924,7 @@
 	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
 	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
 	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-	exit 0 ;;
+	exit ;;
     parisc:Linux:*:* | hppa:Linux:*:*)
 	# Look for CPU level
 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
@@ -881,25 +932,31 @@
 	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
 	  *)    echo hppa-unknown-linux-gnu ;;
 	esac
-	exit 0 ;;
+	exit ;;
     parisc64:Linux:*:* | hppa64:Linux:*:*)
 	echo hppa64-unknown-linux-gnu
-	exit 0 ;;
+	exit ;;
     s390:Linux:*:* | s390x:Linux:*:*)
 	echo ${UNAME_MACHINE}-ibm-linux
-	exit 0 ;;
+	exit ;;
     sh64*:Linux:*:*)
     	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit 0 ;;
+	exit ;;
     sh*:Linux:*:*)
 	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit 0 ;;
+	exit ;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
 	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit 0 ;;
+	exit ;;
+    vax:Linux:*:*)
+	echo ${UNAME_MACHINE}-dec-linux-gnu
+	exit ;;
     x86_64:Linux:*:*)
 	echo x86_64-unknown-linux-gnu
-	exit 0 ;;
+	exit ;;
+    xtensa:Linux:*:*)
+    	echo xtensa-unknown-linux-gnu
+	exit ;;
     i*86:Linux:*:*)
 	# The BFD linker knows what the default object file format is, so
 	# first see if it will tell us. cd to the root directory to prevent
@@ -917,15 +974,15 @@
 		;;
 	  a.out-i386-linux)
 		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
-		exit 0 ;;
+		exit ;;
 	  coff-i386)
 		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
-		exit 0 ;;
+		exit ;;
 	  "")
 		# Either a pre-BFD a.out linker (linux-gnuoldld) or
 		# one that does not give us useful --help.
 		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
-		exit 0 ;;
+		exit ;;
 	esac
 	# Determine whether the default compiler is a.out or elf
 	eval $set_cc_for_build
@@ -942,7 +999,7 @@
 	LIBC=gnulibc1
 	# endif
 	#else
-	#ifdef __INTEL_COMPILER
+	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
 	LIBC=gnu
 	#else
 	LIBC=gnuaout
@@ -952,16 +1009,23 @@
 	LIBC=dietlibc
 	#endif
 EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
-	test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
-	test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
+	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
+	    /^LIBC/{
+		s: ::g
+		p
+	    }'`"
+	test x"${LIBC}" != x && {
+		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
+		exit
+	}
+	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
 	;;
     i*86:DYNIX/ptx:4*:*)
 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
 	# earlier versions are messed up and put the nodename in both
 	# sysname and nodename.
 	echo i386-sequent-sysv4
-	exit 0 ;;
+	exit ;;
     i*86:UNIX_SV:4.2MP:2.*)
         # Unixware is an offshoot of SVR4, but it has its own version
         # number series starting with 2...
@@ -969,24 +1033,27 @@
 	# I just have to hope.  -- rms.
         # Use sysv4.2uw... so that sysv4* matches it.
 	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
-	exit 0 ;;
+	exit ;;
     i*86:OS/2:*:*)
 	# If we were able to find `uname', then EMX Unix compatibility
 	# is probably installed.
 	echo ${UNAME_MACHINE}-pc-os2-emx
-	exit 0 ;;
+	exit ;;
     i*86:XTS-300:*:STOP)
 	echo ${UNAME_MACHINE}-unknown-stop
-	exit 0 ;;
+	exit ;;
     i*86:atheos:*:*)
 	echo ${UNAME_MACHINE}-unknown-atheos
-	exit 0 ;;
+	exit ;;
+    i*86:syllable:*:*)
+	echo ${UNAME_MACHINE}-pc-syllable
+	exit ;;
     i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
 	echo i386-unknown-lynxos${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     i*86:*DOS:*:*)
 	echo ${UNAME_MACHINE}-pc-msdosdjgpp
-	exit 0 ;;
+	exit ;;
     i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
 	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
 	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
@@ -994,15 +1061,16 @@
 	else
 		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
 	fi
-	exit 0 ;;
-    i*86:*:5:[78]*)
+	exit ;;
+    i*86:*:5:[678]*)
+    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
 	case `/bin/uname -X | grep "^Machine"` in
 	    *486*)	     UNAME_MACHINE=i486 ;;
 	    *Pentium)	     UNAME_MACHINE=i586 ;;
 	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
 	esac
 	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-	exit 0 ;;
+	exit ;;
     i*86:*:3.2:*)
 	if test -f /usr/options/cb.name; then
 		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
@@ -1020,73 +1088,73 @@
 	else
 		echo ${UNAME_MACHINE}-pc-sysv32
 	fi
-	exit 0 ;;
+	exit ;;
     pc:*:*:*)
 	# Left here for compatibility:
         # uname -m prints for DJGPP always 'pc', but it prints nothing about
         # the processor, so we play safe by assuming i386.
 	echo i386-pc-msdosdjgpp
-        exit 0 ;;
+        exit ;;
     Intel:Mach:3*:*)
 	echo i386-pc-mach3
-	exit 0 ;;
+	exit ;;
     paragon:*:*:*)
 	echo i860-intel-osf1
-	exit 0 ;;
+	exit ;;
     i860:*:4.*:*) # i860-SVR4
 	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
 	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
 	else # Add other i860-SVR4 vendors below as they are discovered.
 	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
 	fi
-	exit 0 ;;
+	exit ;;
     mini*:CTIX:SYS*5:*)
 	# "miniframe"
 	echo m68010-convergent-sysv
-	exit 0 ;;
+	exit ;;
     mc68k:UNIX:SYSTEM5:3.51m)
 	echo m68k-convergent-sysv
-	exit 0 ;;
+	exit ;;
     M680?0:D-NIX:5.3:*)
 	echo m68k-diab-dnix
-	exit 0 ;;
-    M68*:*:R3V[567]*:*)
-	test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
-    3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0)
+	exit ;;
+    M68*:*:R3V[5678]*:*)
+	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
+    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
 	OS_REL=''
 	test -r /etc/.relid \
 	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
 	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	  && echo i486-ncr-sysv4.3${OS_REL} && exit 0
+	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
 	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	  && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
+	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-          && echo i486-ncr-sysv4 && exit 0 ;;
+          && { echo i486-ncr-sysv4; exit; } ;;
     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
 	echo m68k-unknown-lynxos${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     mc68030:UNIX_System_V:4.*:*)
 	echo m68k-atari-sysv4
-	exit 0 ;;
+	exit ;;
     TSUNAMI:LynxOS:2.*:*)
 	echo sparc-unknown-lynxos${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     rs6000:LynxOS:2.*:*)
 	echo rs6000-unknown-lynxos${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
 	echo powerpc-unknown-lynxos${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     SM[BE]S:UNIX_SV:*:*)
 	echo mips-dde-sysv${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     RM*:ReliantUNIX-*:*:*)
 	echo mips-sni-sysv4
-	exit 0 ;;
+	exit ;;
     RM*:SINIX-*:*:*)
 	echo mips-sni-sysv4
-	exit 0 ;;
+	exit ;;
     *:SINIX-*:*:*)
 	if uname -p 2>/dev/null >/dev/null ; then
 		UNAME_MACHINE=`(uname -p) 2>/dev/null`
@@ -1094,68 +1162,81 @@
 	else
 		echo ns32k-sni-sysv
 	fi
-	exit 0 ;;
+	exit ;;
     PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
                       # says <Richard.M.Bartel at ccMail.Census.GOV>
         echo i586-unisys-sysv4
-        exit 0 ;;
+        exit ;;
     *:UNIX_System_V:4*:FTX*)
 	# From Gerald Hewes <hewes at openmarket.com>.
 	# How about differentiating between stratus architectures? -djm
 	echo hppa1.1-stratus-sysv4
-	exit 0 ;;
+	exit ;;
     *:*:*:FTX*)
 	# From seanf at swdc.stratus.com.
 	echo i860-stratus-sysv4
-	exit 0 ;;
+	exit ;;
+    i*86:VOS:*:*)
+	# From Paul.Green at stratus.com.
+	echo ${UNAME_MACHINE}-stratus-vos
+	exit ;;
     *:VOS:*:*)
 	# From Paul.Green at stratus.com.
 	echo hppa1.1-stratus-vos
-	exit 0 ;;
+	exit ;;
     mc68*:A/UX:*:*)
 	echo m68k-apple-aux${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     news*:NEWS-OS:6*:*)
 	echo mips-sony-newsos6
-	exit 0 ;;
+	exit ;;
     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
 	if [ -d /usr/nec ]; then
 	        echo mips-nec-sysv${UNAME_RELEASE}
 	else
 	        echo mips-unknown-sysv${UNAME_RELEASE}
 	fi
-        exit 0 ;;
+        exit ;;
     BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
 	echo powerpc-be-beos
-	exit 0 ;;
+	exit ;;
     BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
 	echo powerpc-apple-beos
-	exit 0 ;;
+	exit ;;
     BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
 	echo i586-pc-beos
-	exit 0 ;;
+	exit ;;
     SX-4:SUPER-UX:*:*)
 	echo sx4-nec-superux${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     SX-5:SUPER-UX:*:*)
 	echo sx5-nec-superux${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     SX-6:SUPER-UX:*:*)
 	echo sx6-nec-superux${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
+    SX-7:SUPER-UX:*:*)
+	echo sx7-nec-superux${UNAME_RELEASE}
+	exit ;;
+    SX-8:SUPER-UX:*:*)
+	echo sx8-nec-superux${UNAME_RELEASE}
+	exit ;;
+    SX-8R:SUPER-UX:*:*)
+	echo sx8r-nec-superux${UNAME_RELEASE}
+	exit ;;
     Power*:Rhapsody:*:*)
 	echo powerpc-apple-rhapsody${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     *:Rhapsody:*:*)
 	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     *:Darwin:*:*)
-	case `uname -p` in
-	    *86) UNAME_PROCESSOR=i686 ;;
-	    powerpc) UNAME_PROCESSOR=powerpc ;;
+	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
+	case $UNAME_PROCESSOR in
+	    unknown) UNAME_PROCESSOR=powerpc ;;
 	esac
 	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     *:procnto*:*:* | *:QNX:[0123456789]*:*)
 	UNAME_PROCESSOR=`uname -p`
 	if test "$UNAME_PROCESSOR" = "x86"; then
@@ -1163,22 +1244,25 @@
 		UNAME_MACHINE=pc
 	fi
 	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     *:QNX:*:4*)
 	echo i386-pc-qnx
-	exit 0 ;;
-    NSR-[DGKLNPTVWY]:NONSTOP_KERNEL:*:*)
+	exit ;;
+    NSE-?:NONSTOP_KERNEL:*:*)
+	echo nse-tandem-nsk${UNAME_RELEASE}
+	exit ;;
+    NSR-?:NONSTOP_KERNEL:*:*)
 	echo nsr-tandem-nsk${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     *:NonStop-UX:*:*)
 	echo mips-compaq-nonstopux
-	exit 0 ;;
+	exit ;;
     BS2000:POSIX*:*:*)
 	echo bs2000-siemens-sysv
-	exit 0 ;;
+	exit ;;
     DS/*:UNIX_System_V:*:*)
 	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
     *:Plan9:*:*)
 	# "uname -m" is not consistent, so use $cputype instead. 386
 	# is converted to i386 for consistency with other x86
@@ -1189,28 +1273,47 @@
 	    UNAME_MACHINE="$cputype"
 	fi
 	echo ${UNAME_MACHINE}-unknown-plan9
-	exit 0 ;;
+	exit ;;
     *:TOPS-10:*:*)
 	echo pdp10-unknown-tops10
-	exit 0 ;;
+	exit ;;
     *:TENEX:*:*)
 	echo pdp10-unknown-tenex
-	exit 0 ;;
+	exit ;;
     KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
 	echo pdp10-dec-tops20
-	exit 0 ;;
+	exit ;;
     XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
 	echo pdp10-xkl-tops20
-	exit 0 ;;
+	exit ;;
     *:TOPS-20:*:*)
 	echo pdp10-unknown-tops20
-	exit 0 ;;
+	exit ;;
     *:ITS:*:*)
 	echo pdp10-unknown-its
-	exit 0 ;;
+	exit ;;
     SEI:*:*:SEIUX)
         echo mips-sei-seiux${UNAME_RELEASE}
-	exit 0 ;;
+	exit ;;
+    *:DragonFly:*:*)
+	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+	exit ;;
+    *:*VMS:*:*)
+    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
+	case "${UNAME_MACHINE}" in
+	    A*) echo alpha-dec-vms ; exit ;;
+	    I*) echo ia64-dec-vms ; exit ;;
+	    V*) echo vax-dec-vms ; exit ;;
+	esac ;;
+    *:XENIX:*:SysV)
+	echo i386-pc-xenix
+	exit ;;
+    i*86:skyos:*:*)
+	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
+	exit ;;
+    i*86:rdos:*:*)
+	echo ${UNAME_MACHINE}-pc-rdos
+	exit ;;
 esac
 
 #echo '(No uname command or uname output not recognized.)' 1>&2
@@ -1242,7 +1345,7 @@
 #endif
 
 #if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf ("arm-acorn-riscix"); exit (0);
+  printf ("arm-acorn-riscix\n"); exit (0);
 #endif
 
 #if defined (hp300) && !defined (hpux)
@@ -1331,11 +1434,12 @@
 }
 EOF
 
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+	{ echo "$SYSTEM_NAME"; exit; }
 
 # Apollos put the system type in the environment.
 
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
 
 # Convex versions that predate uname can use getsysinfo(1)
 
@@ -1344,22 +1448,22 @@
     case `getsysinfo -f cpu_type` in
     c1*)
 	echo c1-convex-bsd
-	exit 0 ;;
+	exit ;;
     c2*)
 	if getsysinfo -f scalar_acc
 	then echo c32-convex-bsd
 	else echo c2-convex-bsd
 	fi
-	exit 0 ;;
+	exit ;;
     c34*)
 	echo c34-convex-bsd
-	exit 0 ;;
+	exit ;;
     c38*)
 	echo c38-convex-bsd
-	exit 0 ;;
+	exit ;;
     c4*)
 	echo c4-convex-bsd
-	exit 0 ;;
+	exit ;;
     esac
 fi
 
@@ -1370,7 +1474,9 @@
 the operating system you are using. It is advised that you
 download the most up to date version of the config scripts from
 
-    ftp://ftp.gnu.org/pub/gnu/config/
+  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
+and
+  http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
 
 If the version you run ($0) is already up to date, please
 send the following data and any information you think might be

Modified: libgpod/branches/upstream/current/config.h.in
===================================================================
--- libgpod/branches/upstream/current/config.h.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/config.h.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -22,6 +22,9 @@
 /* Define if the GNU gettext() function is already present or preinstalled. */
 #undef HAVE_GETTEXT
 
+/* Define if you have HAL support */
+#undef HAVE_HAL
+
 /* Define to 1 if you have the <inttypes.h> header file. */
 #undef HAVE_INTTYPES_H
 
@@ -34,8 +37,9 @@
 /* Define to 1 if you have the <memory.h> header file. */
 #undef HAVE_MEMORY_H
 
-/* Define to 1 if you have the `mremap' function. */
-#undef HAVE_MREMAP
+/* Whether pygobject is installed, Python API will lack GdkPixbuf support
+   without PyGOBJECT */
+#undef HAVE_PYGOBJECT
 
 /* Define to 1 if you have the <stdint.h> header file. */
 #undef HAVE_STDINT_H

Modified: libgpod/branches/upstream/current/config.sub
===================================================================
--- libgpod/branches/upstream/current/config.sub	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/config.sub	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,9 +1,10 @@
 #! /bin/sh
 # Configuration validation subroutine script.
 #   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003 Free Software Foundation, Inc.
+#   2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
+#   Inc.
 
-timestamp='2003-08-18'
+timestamp='2007-01-18'
 
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
@@ -21,14 +22,15 @@
 #
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
-
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
+# 02110-1301, USA.
+#
 # 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.
 
+
 # Please send patches to <config-patches at gnu.org>.  Submit a context
 # diff and a properly formatted ChangeLog entry.
 #
@@ -70,7 +72,7 @@
 version="\
 GNU config.sub ($timestamp)
 
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
@@ -83,11 +85,11 @@
 while test $# -gt 0 ; do
   case $1 in
     --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit 0 ;;
+       echo "$timestamp" ; exit ;;
     --version | -v )
-       echo "$version" ; exit 0 ;;
+       echo "$version" ; exit ;;
     --help | --h* | -h )
-       echo "$usage"; exit 0 ;;
+       echo "$usage"; exit ;;
     -- )     # Stop option processing
        shift; break ;;
     - )	# Use stdin as input.
@@ -99,7 +101,7 @@
     *local*)
        # First pass through any local machine types.
        echo $1
-       exit 0;;
+       exit ;;
 
     * )
        break ;;
@@ -118,7 +120,9 @@
 # Here we must recognize all the valid KERNEL-OS combinations.
 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
-  nto-qnx* | linux-gnu* | linux-dietlibc | kfreebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
+  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
+  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
+  storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
     ;;
@@ -144,7 +148,7 @@
 	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
 	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
 	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple | -axis)
+	-apple | -axis | -knuth | -cray)
 		os=
 		basic_machine=$1
 		;;
@@ -169,6 +173,10 @@
 	-hiux*)
 		os=-hiuxwe2
 		;;
+	-sco6)
+		os=-sco5v6
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
 	-sco5)
 		os=-sco3.2v5
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -185,6 +193,10 @@
 		# Don't forget version if it is 3.2v4 or newer.
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
 		;;
+	-sco5v6*)
+		# Don't forget version if it is 3.2v4 or newer.
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
 	-sco*)
 		os=-sco3.2v2
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -229,14 +241,16 @@
 	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
 	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
 	| am33_2.0 \
-	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
+	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
+	| bfin \
 	| c4x | clipper \
 	| d10v | d30v | dlx | dsp16xx \
-	| fr30 | frv \
+	| fido | fr30 | frv \
 	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
 	| i370 | i860 | i960 | ia64 \
 	| ip2k | iq2000 \
-	| m32r | m68000 | m68k | m88k | mcore \
+	| m32c | m32r | m32rle | m68000 | m68k | m88k \
+	| maxq | mb | microblaze | mcore | mep \
 	| mips | mipsbe | mipseb | mipsel | mipsle \
 	| mips16 \
 	| mips64 | mips64el \
@@ -245,6 +259,7 @@
 	| mips64vr4100 | mips64vr4100el \
 	| mips64vr4300 | mips64vr4300el \
 	| mips64vr5000 | mips64vr5000el \
+	| mips64vr5900 | mips64vr5900el \
 	| mipsisa32 | mipsisa32el \
 	| mipsisa32r2 | mipsisa32r2el \
 	| mipsisa64 | mipsisa64el \
@@ -253,20 +268,24 @@
 	| mipsisa64sr71k | mipsisa64sr71kel \
 	| mipstx39 | mipstx39el \
 	| mn10200 | mn10300 \
+	| mt \
 	| msp430 \
+	| nios | nios2 \
 	| ns16k | ns32k \
-	| openrisc | or32 \
+	| or32 \
 	| pdp10 | pdp11 | pj | pjl \
 	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
 	| pyramid \
-	| sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+	| score \
+	| sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
 	| sh64 | sh64le \
-	| sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
-	| strongarm \
+	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
+	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
+	| spu | strongarm \
 	| tahoe | thumb | tic4x | tic80 | tron \
 	| v850 | v850e \
 	| we32k \
-	| x86 | xscale | xstormy16 | xtensa \
+	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
 	| z8k)
 		basic_machine=$basic_machine-unknown
 		;;
@@ -277,6 +296,9 @@
 		;;
 	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
 		;;
+	ms1)
+		basic_machine=mt-unknown
+		;;
 
 	# We use `pc' rather than `unknown'
 	# because (1) that's what they normally are, and
@@ -296,20 +318,20 @@
 	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
 	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
 	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
-	| avr-* \
-	| bs2000-* \
+	| avr-* | avr32-* \
+	| bfin-* | bs2000-* \
 	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
-	| clipper-* | cydra-* \
+	| clipper-* | craynv-* | cydra-* \
 	| d10v-* | d30v-* | dlx-* \
 	| elxsi-* \
-	| f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
+	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
 	| h8300-* | h8500-* \
 	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
 	| i*86-* | i860-* | i960-* | ia64-* \
 	| ip2k-* | iq2000-* \
-	| m32r-* \
+	| m32c-* | m32r-* | m32rle-* \
 	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | mcore-* \
+	| m88110-* | m88k-* | maxq-* | mcore-* \
 	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
 	| mips16-* \
 	| mips64-* | mips64el-* \
@@ -318,6 +340,7 @@
 	| mips64vr4100-* | mips64vr4100el-* \
 	| mips64vr4300-* | mips64vr4300el-* \
 	| mips64vr5000-* | mips64vr5000el-* \
+	| mips64vr5900-* | mips64vr5900el-* \
 	| mipsisa32-* | mipsisa32el-* \
 	| mipsisa32r2-* | mipsisa32r2el-* \
 	| mipsisa64-* | mipsisa64el-* \
@@ -325,24 +348,28 @@
 	| mipsisa64sb1-* | mipsisa64sb1el-* \
 	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
 	| mipstx39-* | mipstx39el-* \
+	| mmix-* \
+	| mt-* \
 	| msp430-* \
-	| none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
+	| nios-* | nios2-* \
+	| none-* | np1-* | ns16k-* | ns32k-* \
 	| orion-* \
 	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
 	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
 	| pyramid-* \
 	| romp-* | rs6000-* \
-	| sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
+	| sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
 	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-	| sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
-	| sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
+	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
+	| sparclite-* \
+	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
 	| tahoe-* | thumb-* \
 	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
 	| tron-* \
 	| v850-* | v850e-* | vax-* \
 	| we32k-* \
-	| x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
-	| xtensa-* \
+	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
+	| xstormy16-* | xtensa-* \
 	| ymp-* \
 	| z8k-*)
 		;;
@@ -362,6 +389,9 @@
 		basic_machine=a29k-amd
 		os=-udi
 		;;
+    	abacus)
+		basic_machine=abacus-unknown
+		;;
 	adobe68k)
 		basic_machine=m68010-adobe
 		os=-scout
@@ -379,6 +409,9 @@
 	amd64)
 		basic_machine=x86_64-pc
 		;;
+	amd64-*)
+		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
 	amdahl)
 		basic_machine=580-amdahl
 		os=-sysv
@@ -438,12 +471,27 @@
 		basic_machine=j90-cray
 		os=-unicos
 		;;
+	craynv)
+		basic_machine=craynv-cray
+		os=-unicosmp
+		;;
+	cr16c)
+		basic_machine=cr16c-unknown
+		os=-elf
+		;;
 	crds | unos)
 		basic_machine=m68k-crds
 		;;
+	crisv32 | crisv32-* | etraxfs*)
+		basic_machine=crisv32-axis
+		;;
 	cris | cris-* | etrax*)
 		basic_machine=cris-axis
 		;;
+	crx)
+		basic_machine=crx-unknown
+		os=-elf
+		;;
 	da30 | da30-*)
 		basic_machine=m68k-da30
 		;;
@@ -466,6 +514,10 @@
 		basic_machine=m88k-motorola
 		os=-sysv3
 		;;
+	djgpp)
+		basic_machine=i586-pc
+		os=-msdosdjgpp
+		;;
 	dpx20 | dpx20-*)
 		basic_machine=rs6000-bull
 		os=-bosx
@@ -644,10 +696,6 @@
 	mips3*)
 		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
 		;;
-	mmix*)
-		basic_machine=mmix-knuth
-		os=-mmixware
-		;;
 	monitor)
 		basic_machine=m68k-rom68k
 		os=-coff
@@ -660,6 +708,9 @@
 		basic_machine=i386-pc
 		os=-msdos
 		;;
+	ms1-*)
+		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
+		;;
 	mvs)
 		basic_machine=i370-ibm
 		os=-mvs
@@ -728,10 +779,6 @@
 	np1)
 		basic_machine=np1-gould
 		;;
-	nv1)
-		basic_machine=nv1-cray
-		os=-unicosmp
-		;;
 	nsr-tandem)
 		basic_machine=nsr-tandem
 		;;
@@ -739,10 +786,13 @@
 		basic_machine=hppa1.1-oki
 		os=-proelf
 		;;
-	or32 | or32-*)
+	openrisc | openrisc-*)
 		basic_machine=or32-unknown
-		os=-coff
 		;;
+	os400)
+		basic_machine=powerpc-ibm
+		os=-os400
+		;;
 	OSE68000 | ose68000)
 		basic_machine=m68000-ericsson
 		os=-ose
@@ -768,6 +818,12 @@
 	pc532 | pc532-*)
 		basic_machine=ns32k-pc532
 		;;
+	pc98)
+		basic_machine=i386-pc
+		;;
+	pc98-*)
+		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
 	pentium | p5 | k5 | k6 | nexgen | viac3)
 		basic_machine=i586-pc
 		;;
@@ -824,6 +880,10 @@
 		basic_machine=i586-unknown
 		os=-pw32
 		;;
+	rdos)
+		basic_machine=i386-pc
+		os=-rdos
+		;;
 	rom68k)
 		basic_machine=m68k-rom68k
 		os=-coff
@@ -850,6 +910,10 @@
 	sb1el)
 		basic_machine=mipsisa64sb1el-unknown
 		;;
+	sde)
+		basic_machine=mipsisa32-sde
+		os=-elf
+		;;
 	sei)
 		basic_machine=mips-sei
 		os=-seiux
@@ -861,6 +925,9 @@
 		basic_machine=sh-hitachi
 		os=-hms
 		;;
+	sh5el)
+		basic_machine=sh5le-unknown
+		;;
 	sh64)
 		basic_machine=sh64-unknown
 		;;
@@ -963,6 +1030,10 @@
 	tower | tower-32)
 		basic_machine=m68k-ncr
 		;;
+	tpf)
+		basic_machine=s390x-ibm
+		os=-tpf
+		;;
 	udi29k)
 		basic_machine=a29k-amd
 		os=-udi
@@ -1006,6 +1077,10 @@
 		basic_machine=hppa1.1-winbond
 		os=-proelf
 		;;
+	xbox)
+		basic_machine=i686-pc
+		os=-mingw32
+		;;
 	xps | xps100)
 		basic_machine=xps100-honeywell
 		;;
@@ -1036,6 +1111,9 @@
 	romp)
 		basic_machine=romp-ibm
 		;;
+	mmix)
+		basic_machine=mmix-knuth
+		;;
 	rs6000)
 		basic_machine=rs6000-ibm
 		;;
@@ -1052,13 +1130,10 @@
 	we32k)
 		basic_machine=we32k-att
 		;;
-	sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
+	sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
 		basic_machine=sh-unknown
 		;;
-	sh64)
-		basic_machine=sh64-unknown
-		;;
-	sparc | sparcv9 | sparcv9b)
+	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
 		basic_machine=sparc-sun
 		;;
 	cydra)
@@ -1131,19 +1206,23 @@
 	      | -aos* \
 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-	      | -hiux* | -386bsd* | -netbsd* | -openbsd* | -kfreebsd* | -freebsd* | -riscix* \
-	      | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
+	      | -openbsd* | -solidbsd* \
+	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
 	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
 	      | -chorusos* | -chorusrdb* \
 	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
+	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
+	      | -uxpv* | -beos* | -mpeix* | -udk* \
 	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
 	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
 	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
 	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
 	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
+	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
+	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
 	-qnx*)
@@ -1161,7 +1240,7 @@
 		os=`echo $os | sed -e 's|nto|nto-qnx|'`
 		;;
 	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
+	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
 	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
 		;;
 	-mac*)
@@ -1182,6 +1261,9 @@
 	-opened*)
 		os=-openedition
 		;;
+        -os400*)
+		os=-os400
+		;;
 	-wince*)
 		os=-wince
 		;;
@@ -1203,6 +1285,9 @@
 	-atheos*)
 		os=-atheos
 		;;
+	-syllable*)
+		os=-syllable
+		;;
 	-386bsd)
 		os=-bsd
 		;;
@@ -1225,6 +1310,9 @@
 	-sinix*)
 		os=-sysv4
 		;;
+        -tpf*)
+		os=-tpf
+		;;
 	-triton*)
 		os=-sysv3
 		;;
@@ -1261,6 +1349,9 @@
 	-kaos*)
 		os=-kaos
 		;;
+	-zvmoe)
+		os=-zvmoe
+		;;
 	-none)
 		;;
 	*)
@@ -1283,6 +1374,12 @@
 # system, and we'll never get to this point.
 
 case $basic_machine in
+        score-*)
+		os=-elf
+		;;
+        spu-*)
+		os=-elf
+		;;
 	*-acorn)
 		os=-riscix1.2
 		;;
@@ -1292,9 +1389,9 @@
 	arm*-semi)
 		os=-aout
 		;;
-    c4x-* | tic4x-*)
-        os=-coff
-        ;;
+        c4x-* | tic4x-*)
+        	os=-coff
+		;;
 	# This must come before the *-dec entry.
 	pdp10-*)
 		os=-tops20
@@ -1320,6 +1417,9 @@
 	m68*-cisco)
 		os=-aout
 		;;
+        mep-*)
+		os=-elf
+		;;
 	mips*-cisco)
 		os=-elf
 		;;
@@ -1338,9 +1438,15 @@
 	*-be)
 		os=-beos
 		;;
+	*-haiku)
+		os=-haiku
+		;;
 	*-ibm)
 		os=-aix
 		;;
+    	*-knuth)
+		os=-mmixware
+		;;
 	*-wec)
 		os=-proelf
 		;;
@@ -1473,9 +1579,15 @@
 			-mvs* | -opened*)
 				vendor=ibm
 				;;
+			-os400*)
+				vendor=ibm
+				;;
 			-ptx*)
 				vendor=sequent
 				;;
+			-tpf*)
+				vendor=ibm
+				;;
 			-vxsim* | -vxworks* | -windiss*)
 				vendor=wrs
 				;;
@@ -1500,7 +1612,7 @@
 esac
 
 echo $basic_machine$os
-exit 0
+exit
 
 # Local variables:
 # eval: (add-hook 'write-file-hooks 'time-stamp)

Modified: libgpod/branches/upstream/current/configure
===================================================================
--- libgpod/branches/upstream/current/configure	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/configure	2007-11-12 21:03:04 UTC (rev 251)
@@ -806,6 +806,9 @@
 host_alias
 target_alias
 LIBGPOD_SO_VERSION
+LIBGPOD_MAJOR_VERSION
+LIBGPOD_MINOR_VERSION
+LIBGPOD_MICRO_VERSION
 LIBGPOD_VERSION
 INSTALL_PROGRAM
 INSTALL_SCRIPT
@@ -818,13 +821,16 @@
 AUTOMAKE
 AUTOHEADER
 MAKEINFO
-AMTAR
 install_sh
 STRIP
 INSTALL_STRIP_PROGRAM
+mkdir_p
 AWK
 SET_MAKE
 am__leading_dot
+AMTAR
+am__tar
+am__untar
 ACLOCAL_AMFLAGS
 MAINTAINER_MODE_TRUE
 MAINTAINER_MODE_FALSE
@@ -890,19 +896,24 @@
 INTLTOOL_SCHEMAS_RULE
 INTLTOOL_THEME_RULE
 INTLTOOL_SERVICE_RULE
+INTLTOOL_POLICY_RULE
 INTLTOOL_EXTRACT
 INTLTOOL_MERGE
 INTLTOOL_UPDATE
 INTLTOOL_PERL
-INTLTOOL_ICONV
-INTLTOOL_MSGFMT
-INTLTOOL_MSGMERGE
-INTLTOOL_XGETTEXT
 ALL_LINGUAS
 DATADIRNAME
 PKG_CONFIG
 LIBGPOD_CFLAGS
 LIBGPOD_LIBS
+SGUTILS_LIBS
+HAVE_SGUTILS_TRUE
+HAVE_SGUTILS_FALSE
+HALCALLOUTSDIR
+HAL_CFLAGS
+HAL_LIBS
+HAVE_HAL_TRUE
+HAVE_HAL_FALSE
 TAGLIB_CFLAGS
 TAGLIB_LIBS
 HAVE_TAGLIB_TRUE
@@ -911,6 +922,10 @@
 GDKPIXBUF_LIBS
 HAVE_GDKPIXBUF_TRUE
 HAVE_GDKPIXBUF_FALSE
+PYGOBJECT_CFLAGS
+PYGOBJECT_LIBS
+HAVE_PYGOBJECT_TRUE
+HAVE_PYGOBJECT_FALSE
 GETTEXT_PACKAGE
 USE_NLS
 MSGFMT
@@ -968,10 +983,14 @@
 PKG_CONFIG
 LIBGPOD_CFLAGS
 LIBGPOD_LIBS
+HAL_CFLAGS
+HAL_LIBS
 TAGLIB_CFLAGS
 TAGLIB_LIBS
 GDKPIXBUF_CFLAGS
-GDKPIXBUF_LIBS'
+GDKPIXBUF_LIBS
+PYGOBJECT_CFLAGS
+PYGOBJECT_LIBS'
 
 
 # Initialize some variables set by options.
@@ -1549,17 +1568,19 @@
 Optional Features:
   --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
-  --disable-dependency-tracking Speeds up one-time builds
-  --enable-dependency-tracking  Do not reject slow dependency extractors
+  --enable-maintainer-mode  enable make rules and dependencies not useful
+			  (and sometimes confusing) to the casual installer
+  --disable-dependency-tracking  speeds up one-time build
+  --enable-dependency-tracking   do not reject slow dependency extractors
   --enable-shared[=PKGS]  build shared libraries [default=yes]
   --enable-static[=PKGS]  build static libraries [default=yes]
   --enable-fast-install[=PKGS]
                           optimize for fast installation [default=yes]
   --disable-libtool-lock  avoid locking (might break parallel builds)
   --disable-gdk-pixbuf    ArtworkDB will be disabled without gdk-pixbuf
-  --enable-gtk-doc        use gtk-doc to build documentation default=no
+  --disable-pygobject     Python API will lack GdkPixbuf support without
+                          PyGOBJECT
+  --enable-gtk-doc        use gtk-doc to build documentation [default=no]
   --enable-more-warnings  Maximum compiler warnings
 
 Optional Packages:
@@ -1569,6 +1590,10 @@
   --with-pic              try to use only PIC/non-PIC objects [default=use
                           both]
   --with-tags[=TAGS]      include additional configurations [automatic]
+  --without-hal           Disable HAL support
+  --with-hal-callouts-dir=DIR
+                          Directory where HAL expects its callout scripts to
+                          be located
   --with-html-dir=PATH    path to installed docs
   --with-python=PATH      build python bindings [default=yes]
 
@@ -1591,6 +1616,8 @@
               C compiler flags for LIBGPOD, overriding pkg-config
   LIBGPOD_LIBS
               linker flags for LIBGPOD, overriding pkg-config
+  HAL_CFLAGS  C compiler flags for HAL, overriding pkg-config
+  HAL_LIBS    linker flags for HAL, overriding pkg-config
   TAGLIB_CFLAGS
               C compiler flags for TAGLIB, overriding pkg-config
   TAGLIB_LIBS linker flags for TAGLIB, overriding pkg-config
@@ -1598,6 +1625,10 @@
               C compiler flags for GDKPIXBUF, overriding pkg-config
   GDKPIXBUF_LIBS
               linker flags for GDKPIXBUF, overriding pkg-config
+  PYGOBJECT_CFLAGS
+              C compiler flags for PYGOBJECT, overriding pkg-config
+  PYGOBJECT_LIBS
+              linker flags for PYGOBJECT, overriding pkg-config
 
 Use these variables to override the choices made by `configure' or to help
 it to find libraries and programs with nonstandard names/locations.
@@ -2032,8 +2063,8 @@
 #   LIBGPOD_SO_VERSION - see comments
 #
 LIBGPOD_MAJOR_VERSION=0
-LIBGPOD_MINOR_VERSION=5
-LIBGPOD_MICRO_VERSION=2
+LIBGPOD_MINOR_VERSION=6
+LIBGPOD_MICRO_VERSION=0
 # If you need a modifier for the version number.
 # Normally empty, but can be used to make "fixup" releases.
 LIBGPOD_EXTRAVERSION=
@@ -2045,12 +2076,15 @@
 #                 changes to the signature and the semantic)
 #  ? :+1 : ?   == just internal changes
 # CURRENT : REVISION : AGE
-LIBGPOD_SO_VERSION=2:0:0
+LIBGPOD_SO_VERSION=3:0:0
 
 
 
 
-am__api_version="1.7"
+
+
+
+am__api_version="1.9"
 ac_aux_dir=
 for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
   if test -f "$ac_dir/install-sh"; then
@@ -2220,7 +2254,6 @@
 program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
 rm -f conftest.sed
 
-
 # expand $ac_aux_dir to an absolute path
 am_aux_dir=`cd $ac_aux_dir && pwd`
 
@@ -2234,6 +2267,39 @@
 echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
 fi
 
+if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+  # We used to keeping the `.' as first argument, in order to
+  # allow $(mkdir_p) to be used without argument.  As in
+  #   $(mkdir_p) $(somedir)
+  # where $(somedir) is conditionally defined.  However this is wrong
+  # for two reasons:
+  #  1. if the package is installed by a user who cannot write `.'
+  #     make install will fail,
+  #  2. the above comment should most certainly read
+  #     $(mkdir_p) $(DESTDIR)$(somedir)
+  #     so it does not work when $(somedir) is undefined and
+  #     $(DESTDIR) is not.
+  #  To support the latter case, we have to write
+  #     test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+  #  so the `.' trick is pointless.
+  mkdir_p='mkdir -p --'
+else
+  # On NextStep and OpenStep, the `mkdir' command does not
+  # recognize any option.  It will interpret all options as
+  # directories to create, and then abort because `.' already
+  # exists.
+  for d in ./-p ./--version;
+  do
+    test -d $d && rmdir $d
+  done
+  # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+  if test -f "$ac_aux_dir/mkinstalldirs"; then
+    mkdir_p='$(mkinstalldirs)'
+  else
+    mkdir_p='$(install_sh) -d'
+  fi
+fi
+
 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.
@@ -2315,7 +2381,7 @@
 fi
 rmdir .tst 2>/dev/null
 
- # test to see if srcdir already configured
+# test to see if srcdir already configured
 if test "`cd $srcdir && pwd`" != "`pwd`" &&
    test -f $srcdir/config.status; then
   { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
@@ -2363,9 +2429,6 @@
 
 MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 
-
-AMTAR=${AMTAR-"${am_missing_run}tar"}
-
 install_sh=${install_sh-"$am_aux_dir/install-sh"}
 
 # Installed binaries are usually stripped using `strip' when the user
@@ -2474,10 +2537,17 @@
 
 # We need awk for the "check" target.  The system "awk" is bad on
 # some platforms.
+# Always define AMTAR for backward compatibility.
 
+AMTAR=${AMTAR-"${am_missing_run}tar"}
 
+am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
 
 
+
+
+
+
 ACLOCAL_AMFLAGS="$ACLOCAL_FLAGS"
 
 
@@ -3537,7 +3607,9 @@
     : > sub/conftest.c
     for i in 1 2 3 4 5 6; do
       echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      : > sub/conftst$i.h
+      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+      # Solaris 8's {/usr,}/bin/sh.
+      touch sub/conftst$i.h
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
@@ -3565,9 +3637,14 @@
        grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
       # icc doesn't choke on unknown options, it will just issue warnings
-      # (even with -Werror).  So we grep stderr for any message
-      # that says an option was ignored.
-      if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
+      # or remarks (even with -Werror).  So we grep stderr for any message
+      # that says an option was ignored or not supported.
+      # When given -MP, icc 7.0 and 7.1 complain thusly:
+      #   icc: Command line warning: ignoring option '-M'; no argument required
+      # The diagnosis changed in icc 8.0:
+      #   icc: Command line remark: option '-MP' not supported
+      if (grep 'ignoring option' conftest.err ||
+          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
         am_cv_CC_dependencies_compiler_type=$depmode
         break
       fi
@@ -4007,7 +4084,9 @@
     : > sub/conftest.c
     for i in 1 2 3 4 5 6; do
       echo '#include "conftst'$i'.h"' >> sub/conftest.c
-      : > sub/conftst$i.h
+      # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+      # Solaris 8's {/usr,}/bin/sh.
+      touch sub/conftst$i.h
     done
     echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
 
@@ -4035,9 +4114,14 @@
        grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
        ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
       # icc doesn't choke on unknown options, it will just issue warnings
-      # (even with -Werror).  So we grep stderr for any message
-      # that says an option was ignored.
-      if grep 'ignoring option' conftest.err >/dev/null 2>&1; then :; else
+      # or remarks (even with -Werror).  So we grep stderr for any message
+      # that says an option was ignored or not supported.
+      # When given -MP, icc 7.0 and 7.1 complain thusly:
+      #   icc: Command line warning: ignoring option '-M'; no argument required
+      # The diagnosis changed in icc 8.0:
+      #   icc: Command line remark: option '-MP' not supported
+      if (grep 'ignoring option' conftest.err ||
+          grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
         am_cv_CXX_dependencies_compiler_type=$depmode
         break
       fi
@@ -4083,7 +4167,7 @@
   test -z "$as_dir" && as_dir=.
   for lt_ac_prog in sed gsed; do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
+      if { test -f "$as_dir/$lt_ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$lt_ac_prog$ac_exec_ext"; }; then
         lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
       fi
     done
@@ -5127,8 +5211,8 @@
 echo "${ECHO_T}no, using $LN_S" >&6; }
 fi
 
-{ echo "$as_me:$LINENO: checking how to recognise dependent libraries" >&5
-echo $ECHO_N "checking how to recognise dependent libraries... $ECHO_C" >&6; }
+{ echo "$as_me:$LINENO: checking how to recognize dependent libraries" >&5
+echo $ECHO_N "checking how to recognize dependent libraries... $ECHO_C" >&6; }
 if test "${lt_cv_deplibs_check_method+set}" = set; then
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
@@ -5169,16 +5253,22 @@
 
 mingw* | pw32*)
   # Base MSYS/MinGW do not provide the 'file' command needed by
-  # func_win32_libid shell function, so use a weaker test based on 'objdump'.
-  lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
-  lt_cv_file_magic_cmd='$OBJDUMP -f'
+  # func_win32_libid shell function, so use a weaker test based on 'objdump',
+  # unless we find 'file', for example because we are cross-compiling.
+  if ( file / ) >/dev/null 2>&1; then
+    lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
+    lt_cv_file_magic_cmd='func_win32_libid'
+  else
+    lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
+    lt_cv_file_magic_cmd='$OBJDUMP -f'
+  fi
   ;;
 
 darwin* | rhapsody*)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-freebsd* | kfreebsd*-gnu | dragonfly*)
+freebsd* | dragonfly*)
   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
     case $host_cpu in
     i*86 )
@@ -5216,7 +5306,7 @@
   esac
   ;;
 
-interix3*)
+interix[3-9]*)
   # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
   lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
   ;;
@@ -5232,11 +5322,11 @@
   ;;
 
 # This must be Linux ELF.
-linux*)
+linux* | k*bsd*-gnu)
   lt_cv_deplibs_check_method=pass_all
   ;;
 
-netbsd*)
+netbsd* | netbsdelf*-gnu)
   if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
     lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
   else
@@ -5266,6 +5356,10 @@
   lt_cv_deplibs_check_method=pass_all
   ;;
 
+rdos*)
+  lt_cv_deplibs_check_method=pass_all
+  ;;
+
 solaris*)
   lt_cv_deplibs_check_method=pass_all
   ;;
@@ -5352,7 +5446,7 @@
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 5355 "configure"' > conftest.$ac_ext
+  echo '#line 5449 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -5387,7 +5481,8 @@
   rm -rf conftest*
   ;;
 
-x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*|s390*-*linux*|sparc*-*linux*)
+x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+s390*-*linux*|sparc*-*linux*)
   # Find out which ABI we are using.
   echo 'int i;' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
@@ -5398,6 +5493,9 @@
     case `/usr/bin/file conftest.o` in
     *32-bit*)
       case $host in
+        x86_64-*kfreebsd*-gnu)
+          LD="${LD-ld} -m elf_i386_fbsd"
+          ;;
         x86_64-*linux*)
           LD="${LD-ld} -m elf_i386"
           ;;
@@ -5414,6 +5512,9 @@
       ;;
     *64-bit*)
       case $host in
+        x86_64-*kfreebsd*-gnu)
+          LD="${LD-ld} -m elf_x86_64_fbsd"
+          ;;
         x86_64-*linux*)
           LD="${LD-ld} -m elf_x86_64"
           ;;
@@ -6324,24 +6425,27 @@
     fi
     ;;
   *)
-    # If test is not a shell built-in, we'll probably end up computing a
-    # maximum length that is only half of the actual maximum length, but
-    # we can't tell.
-    SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
-    while (test "X"`$SHELL $0 --fallback-echo "X$teststring" 2>/dev/null` \
+    lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
+    if test -n "$lt_cv_sys_max_cmd_len"; then
+      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
+      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
+    else
+      SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
+      while (test "X"`$SHELL $0 --fallback-echo "X$teststring" 2>/dev/null` \
 	       = "XX$teststring") >/dev/null 2>&1 &&
-	    new_result=`expr "X$teststring" : ".*" 2>&1` &&
-	    lt_cv_sys_max_cmd_len=$new_result &&
-	    test $i != 17 # 1/2 MB should be enough
-    do
-      i=`expr $i + 1`
-      teststring=$teststring$teststring
-    done
-    teststring=
-    # Add a significant safety factor because C++ compilers can tack on massive
-    # amounts of additional arguments before passing them to the linker.
-    # It appears as though 1/2 is a usable value.
-    lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+	      new_result=`expr "X$teststring" : ".*" 2>&1` &&
+	      lt_cv_sys_max_cmd_len=$new_result &&
+	      test $i != 17 # 1/2 MB should be enough
+      do
+        i=`expr $i + 1`
+        teststring=$teststring$teststring
+      done
+      teststring=
+      # Add a significant safety factor because C++ compilers can tack on massive
+      # amounts of additional arguments before passing them to the linker.
+      # It appears as though 1/2 is a usable value.
+      lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
+    fi
     ;;
   esac
 
@@ -6358,6 +6462,7 @@
 
 
 
+
 # Check for command to grab the raw symbol name followed by C symbol from nm.
 { echo "$as_me:$LINENO: checking command to parse $NM output from $compiler object" >&5
 echo $ECHO_N "checking command to parse $NM output from $compiler object... $ECHO_C" >&6; }
@@ -6395,7 +6500,7 @@
   lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
   lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/  {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/  {\"\2\", (lt_ptr) \&\2},/p'"
   ;;
-linux*)
+linux* | k*bsd*-gnu)
   if test "$host_cpu" = ia64; then
     symcode='[ABCDGIRSTW]'
     lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
@@ -6946,7 +7051,7 @@
 test -z "$ac_objext" && ac_objext=o
 
 # Determine commands to create old-style static archives.
-old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
 old_postinstall_cmds='chmod 644 $oldlib'
 old_postuninstall_cmds=
 
@@ -7146,10 +7251,10 @@
 objext=$objext
 
 # Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;\n"
+lt_simple_compile_test_code="int some_variable = 0;"
 
 # Code to be used in simple link tests
-lt_simple_link_test_code='int main(){return(0);}\n'
+lt_simple_link_test_code='int main(){return(0);}'
 
 
 # If no C compiler was specified, use CC.
@@ -7164,13 +7269,13 @@
 
 # save warnings/boilerplate of simple test code
 ac_outfile=conftest.$ac_objext
-printf "$lt_simple_compile_test_code" >conftest.$ac_ext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_compiler_boilerplate=`cat conftest.err`
 $rm conftest*
 
 ac_outfile=conftest.$ac_objext
-printf "$lt_simple_link_test_code" >conftest.$ac_ext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
 $rm conftest*
@@ -7190,7 +7295,7 @@
 else
   lt_cv_prog_compiler_rtti_exceptions=no
   ac_outfile=conftest.$ac_objext
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="-fno-rtti -fno-exceptions"
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
@@ -7201,11 +7306,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7204: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7309: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7208: \$? = $ac_status" >&5
+   echo "$as_me:7313: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7256,13 +7361,15 @@
       lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
       ;;
 
-    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
+      # Although the cygwin gcc ignores -fPIC, still need this for old-style
+      # (--disable-auto-import) libraries
       lt_prog_compiler_pic='-DDLL_EXPORT'
       ;;
 
@@ -7272,7 +7379,7 @@
       lt_prog_compiler_pic='-fno-common'
       ;;
 
-    interix3*)
+    interix[3-9]*)
       # Interix 3.x gcc -fpic/-fPIC options generate broken code.
       # Instead, we relocate shared libraries at runtime.
       ;;
@@ -7330,7 +7437,7 @@
        esac
        ;;
 
-    mingw* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic='-DDLL_EXPORT'
@@ -7363,7 +7470,7 @@
       lt_prog_compiler_static='-Bstatic'
       ;;
 
-    linux*)
+    linux* | k*bsd*-gnu)
       case $cc_basename in
       icc* | ecc*)
 	lt_prog_compiler_wl='-Wl,'
@@ -7382,6 +7489,22 @@
         # All Alpha code is PIC.
         lt_prog_compiler_static='-non_shared'
         ;;
+      *)
+        case `$CC -V 2>&1 | sed 5q` in
+	*Sun\ C*)
+	  # Sun C 5.9
+	  lt_prog_compiler_pic='-KPIC'
+	  lt_prog_compiler_static='-Bstatic'
+	  lt_prog_compiler_wl='-Wl,'
+	  ;;
+	*Sun\ F*)
+	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
+	  lt_prog_compiler_pic='-KPIC'
+	  lt_prog_compiler_static='-Bstatic'
+	  lt_prog_compiler_wl=''
+	  ;;
+	esac
+	;;
       esac
       ;;
 
@@ -7391,6 +7514,10 @@
       lt_prog_compiler_static='-non_shared'
       ;;
 
+    rdos*)
+      lt_prog_compiler_static='-non_shared'
+      ;;
+
     solaris*)
       lt_prog_compiler_pic='-KPIC'
       lt_prog_compiler_static='-Bstatic'
@@ -7458,7 +7585,7 @@
 else
   lt_prog_compiler_pic_works=no
   ac_outfile=conftest.$ac_objext
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic -DPIC"
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
@@ -7469,11 +7596,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7472: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7599: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7476: \$? = $ac_status" >&5
+   echo "$as_me:7603: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7522,7 +7649,7 @@
   lt_prog_compiler_static_works=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
-   printf "$lt_simple_link_test_code" > conftest.$ac_ext
+   echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
      # The linker can only warn and ignore the option if not recognized
      # So say no if there are warnings
@@ -7562,7 +7689,7 @@
    mkdir conftest
    cd conftest
    mkdir out
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
    lt_compiler_flag="-o out/conftest2.$ac_objext"
    # Insert the option either (1) after the last *FLAGS variable, or
@@ -7573,11 +7700,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7576: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7703: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7580: \$? = $ac_status" >&5
+   echo "$as_me:7707: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -7769,7 +7896,7 @@
       allow_undefined_flag=unsupported
       always_export_symbols=no
       enable_shared_with_static_runtimes=yes
-      export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS] /s/.* \([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW] /s/.* //'\'' | sort | uniq > $export_symbols'
+      export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
 
       if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
         archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
@@ -7787,7 +7914,7 @@
       fi
       ;;
 
-    interix3*)
+    interix[3-9]*)
       hardcode_direct=no
       hardcode_shlibpath_var=no
       hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
@@ -7802,7 +7929,7 @@
       archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
-    linux*)
+    gnu* | linux* | k*bsd*-gnu)
       if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
 	tmp_addflag=
 	case $cc_basename,$host_cpu in
@@ -7820,20 +7947,30 @@
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
 	esac
-	archive_cmds='$CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+	case `$CC -V 2>&1 | sed 5q` in
+	*Sun\ C*)			# Sun C 5.9
+	  whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+	  tmp_sharedflag='-G' ;;
+	*Sun\ F*)			# Sun Fortran 8.3
+	  tmp_sharedflag='-G' ;;
+	*)
+	  tmp_sharedflag='-shared' ;;
+	esac
+	archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
 	if test $supports_anon_versioning = yes; then
 	  archive_expsym_cmds='$echo "{ global:" > $output_objdir/$libname.ver~
   cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
   $echo "local: *; };" >> $output_objdir/$libname.ver~
-	  $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+	  $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
 	fi
+	link_all_deplibs=no
       else
 	ld_shlibs=no
       fi
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
 	archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
 	wlarc=
@@ -7985,7 +8122,7 @@
   	   strings "$collect2name" | grep resolve_lib_name >/dev/null
 	  then
   	  # We have reworked collect2
-  	  hardcode_direct=yes
+  	  :
 	  else
   	  # We have old collect2
   	  hardcode_direct=unsupported
@@ -8059,11 +8196,18 @@
        } && test -s conftest$ac_exeext &&
        $as_test_x conftest$ac_exeext; then
 
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`
+lt_aix_libpath_sed='
+    /Import File Strings/,/^$/ {
+	/^0/ {
+	    s/^0  *\(.*\)$/\1/
+	    p
+	}
+    }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 # Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`; fi
+if test -z "$aix_libpath"; then
+  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
@@ -8118,11 +8262,18 @@
        } && test -s conftest$ac_exeext &&
        $as_test_x conftest$ac_exeext; then
 
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`
+lt_aix_libpath_sed='
+    /Import File Strings/,/^$/ {
+	/^0/ {
+	    s/^0  *\(.*\)$/\1/
+	    p
+	}
+    }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 # Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`; fi
+if test -z "$aix_libpath"; then
+  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
@@ -8176,7 +8327,7 @@
       # The linker will automatically build a .lib file if we build a DLL.
       old_archive_From_new_cmds='true'
       # FIXME: Should let the user specify the lib program.
-      old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs'
+      old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
       fix_srcfile_path='`cygpath -w "$srcfile"`'
       enable_shared_with_static_runtimes=yes
       ;;
@@ -8218,10 +8369,10 @@
       case $cc_basename in
         xlc*)
          output_verbose_link_cmd='echo'
-         archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
+         archive_cmds='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $xlcverstring'
          module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
           # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-         archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+         archive_expsym_cmds='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $xlcverstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           module_expsym_cmds='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           ;;
        *)
@@ -8261,7 +8412,7 @@
       ;;
 
     # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | kfreebsd*-gnu | dragonfly*)
+    freebsd* | dragonfly*)
       archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
       hardcode_libdir_flag_spec='-R$libdir'
       hardcode_direct=yes
@@ -8363,7 +8514,7 @@
       link_all_deplibs=yes
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
 	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
       else
@@ -8383,24 +8534,28 @@
       ;;
 
     openbsd*)
-      hardcode_direct=yes
-      hardcode_shlibpath_var=no
-      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	export_dynamic_flag_spec='${wl}-E'
+      if test -f /usr/libexec/ld.so; then
+	hardcode_direct=yes
+	hardcode_shlibpath_var=no
+	if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+	  archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
+	  hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+	  export_dynamic_flag_spec='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+	     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     hardcode_libdir_flag_spec='-R$libdir'
+	     ;;
+	   *)
+	     archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+        fi
       else
-       case $host_os in
-	 openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	   archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	   hardcode_libdir_flag_spec='-R$libdir'
-	   ;;
-	 *)
-	   archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	   hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-	   ;;
-       esac
+	ld_shlibs=no
       fi
       ;;
 
@@ -8459,17 +8614,16 @@
       case $host_os in
       solaris2.[0-5] | solaris2.[0-5].*) ;;
       *)
- 	# The compiler driver will combine linker options so we
- 	# cannot just pass the convience library names through
- 	# without $wl, iff we do not link with $LD.
- 	# Luckily, gcc supports the same syntax we need for Sun Studio.
+	# The compiler driver will combine and reorder linker options,
+	# but understands `-z linker_flag'.  GCC discards it without `$wl',
+	# but is careful enough not to reorder.
  	# Supported since Solaris 2.6 (maybe 2.5.1?)
- 	case $wlarc in
- 	'')
- 	  whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
- 	*)
- 	  whole_archive_flag_spec='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' ;;
- 	esac ;;
+	if test "$GCC" = yes; then
+	  whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+	else
+	  whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
+	fi
+	;;
       esac
       link_all_deplibs=yes
       ;;
@@ -8526,7 +8680,7 @@
       fi
       ;;
 
-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7*)
+    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
       no_undefined_flag='${wl}-z,text'
       archive_cmds_need_lc=no
       hardcode_shlibpath_var=no
@@ -8603,7 +8757,7 @@
       { echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5
 echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6; }
       $rm conftest*
-      printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+      echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
       if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
@@ -8661,17 +8815,55 @@
 version_type=none
 dynamic_linker="$host_os ld.so"
 sys_lib_dlsearch_path_spec="/lib /usr/lib"
+
 if test "$GCC" = yes; then
-  sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
-  if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then
+  case $host_os in
+    darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
+    *) lt_awk_arg="/^libraries:/" ;;
+  esac
+  lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"`
+  if echo "$lt_search_path_spec" | grep ';' >/dev/null ; then
     # if the path contains ";" then we assume it to be the separator
     # otherwise default to the standard path separator (i.e. ":") - it is
     # assumed that no part of a normal pathname contains ";" but that should
     # okay in the real world where ";" in dirpaths is itself problematic.
-    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
+    lt_search_path_spec=`echo "$lt_search_path_spec" | $SED -e 's/;/ /g'`
   else
-    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
+    lt_search_path_spec=`echo "$lt_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
   fi
+  # Ok, now we have the path, separated by spaces, we can step through it
+  # and add multilib dir if necessary.
+  lt_tmp_lt_search_path_spec=
+  lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
+  for lt_sys_path in $lt_search_path_spec; do
+    if test -d "$lt_sys_path/$lt_multi_os_dir"; then
+      lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
+    else
+      test -d "$lt_sys_path" && \
+	lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
+    fi
+  done
+  lt_search_path_spec=`echo $lt_tmp_lt_search_path_spec | awk '
+BEGIN {RS=" "; FS="/|\n";} {
+  lt_foo="";
+  lt_count=0;
+  for (lt_i = NF; lt_i > 0; lt_i--) {
+    if ($lt_i != "" && $lt_i != ".") {
+      if ($lt_i == "..") {
+        lt_count++;
+      } else {
+        if (lt_count == 0) {
+          lt_foo="/" $lt_i lt_foo;
+        } else {
+          lt_count--;
+        }
+      }
+    }
+  }
+  if (lt_foo != "") { lt_freq[lt_foo]++; }
+  if (lt_freq[lt_foo] == 1) { print lt_foo; }
+}'`
+  sys_lib_search_path_spec=`echo $lt_search_path_spec`
 else
   sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
 fi
@@ -8831,12 +9023,8 @@
   shlibpath_overrides_runpath=yes
   shlibpath_var=DYLD_LIBRARY_PATH
   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-  # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
-  if test "$GCC" = yes; then
-    sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
-  else
-    sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib'
-  fi
+
+  sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
   sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
   ;;
 
@@ -8853,18 +9041,6 @@
   dynamic_linker=no
   ;;
 
-kfreebsd*-gnu)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  dynamic_linker='GNU ld.so'
-  ;;
-
 freebsd* | dragonfly*)
   # DragonFly does not have aout.  When/if they implement a new
   # versioning mechanism, adjust this.
@@ -8902,7 +9078,7 @@
     shlibpath_overrides_runpath=no
     hardcode_into_libs=yes
     ;;
-  freebsd*) # from 4.6 on
+  *) # from 4.6 on, and DragonFly
     shlibpath_overrides_runpath=yes
     hardcode_into_libs=yes
     ;;
@@ -8965,7 +9141,7 @@
   postinstall_cmds='chmod 555 $lib'
   ;;
 
-interix3*)
+interix[3-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -9020,7 +9196,7 @@
   ;;
 
 # This must be Linux ELF.
-linux*)
+linux* | k*bsd*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -9034,31 +9210,10 @@
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # find out which ABI we are using
-  libsuff=
-  case "$host_cpu" in
-  x86_64*|s390x*|powerpc64*)
-    echo '#line 9041 "configure"' > conftest.$ac_ext
-    if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-      case `/usr/bin/file conftest.$ac_objext` in
-      *64-bit*)
-        libsuff=64
-        sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
-        ;;
-      esac
-    fi
-    rm -rf conftest*
-    ;;
-  esac
-
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/^	 *//;s/#.*//;/^[^\/]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ 	]*hwcap[ 	]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
   # We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -9070,7 +9225,7 @@
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
-knetbsd*-gnu)
+netbsdelf*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -9079,7 +9234,7 @@
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
-  dynamic_linker='GNU ld.so'
+  dynamic_linker='NetBSD ld.elf_so'
   ;;
 
 netbsd*)
@@ -9163,6 +9318,10 @@
   sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
   ;;
 
+rdos*)
+  dynamic_linker=no
+  ;;
+
 solaris*)
   version_type=linux
   need_lib_prefix=no
@@ -9316,6 +9475,7 @@
    darwin*)
        if test -n "$STRIP" ; then
          striplib="$STRIP -x"
+         old_striplib="$STRIP -S"
          { echo "$as_me:$LINENO: result: yes" >&5
 echo "${ECHO_T}yes" >&6; }
        else
@@ -9902,7 +10062,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 9905 "configure"
+#line 10065 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10002,7 +10162,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 10005 "configure"
+#line 10165 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10200,6 +10360,7 @@
     module_cmds \
     module_expsym_cmds \
     lt_cv_prog_compiler_c_o \
+    fix_srcfile_path \
     exclude_expsyms \
     include_expsyms; do
 
@@ -10244,7 +10405,7 @@
 # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
 # Free Software Foundation, Inc.
 #
 # This file is part of GNU Libtool:
@@ -10568,7 +10729,7 @@
 sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
 
 # Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path="$fix_srcfile_path"
+fix_srcfile_path=$lt_fix_srcfile_path
 
 # Set to yes if exported symbols are required.
 always_export_symbols=$always_export_symbols
@@ -10737,10 +10898,10 @@
 objext_CXX=$objext
 
 # Code to be used in simple compile tests
-lt_simple_compile_test_code="int some_variable = 0;\n"
+lt_simple_compile_test_code="int some_variable = 0;"
 
 # Code to be used in simple link tests
-lt_simple_link_test_code='int main(int, char *[]) { return(0); }\n'
+lt_simple_link_test_code='int main(int, char *[]) { return(0); }'
 
 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
 
@@ -10756,13 +10917,13 @@
 
 # save warnings/boilerplate of simple test code
 ac_outfile=conftest.$ac_objext
-printf "$lt_simple_compile_test_code" >conftest.$ac_ext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_compiler_boilerplate=`cat conftest.err`
 $rm conftest*
 
 ac_outfile=conftest.$ac_objext
-printf "$lt_simple_link_test_code" >conftest.$ac_ext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
 $rm conftest*
@@ -11021,7 +11182,7 @@
 	   strings "$collect2name" | grep resolve_lib_name >/dev/null
 	then
 	  # We have reworked collect2
-	  hardcode_direct_CXX=yes
+	  :
 	else
 	  # We have old collect2
 	  hardcode_direct_CXX=unsupported
@@ -11095,11 +11256,18 @@
        } && test -s conftest$ac_exeext &&
        $as_test_x conftest$ac_exeext; then
 
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`
+lt_aix_libpath_sed='
+    /Import File Strings/,/^$/ {
+	/^0/ {
+	    s/^0  *\(.*\)$/\1/
+	    p
+	}
+    }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 # Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`; fi
+if test -z "$aix_libpath"; then
+  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
@@ -11155,11 +11323,18 @@
        } && test -s conftest$ac_exeext &&
        $as_test_x conftest$ac_exeext; then
 
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`
+lt_aix_libpath_sed='
+    /Import File Strings/,/^$/ {
+	/^0/ {
+	    s/^0  *\(.*\)$/\1/
+	    p
+	}
+    }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 # Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`; fi
+if test -z "$aix_libpath"; then
+  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
@@ -11278,10 +11453,10 @@
       case $cc_basename in
         xlc*)
          output_verbose_link_cmd='echo'
-          archive_cmds_CXX='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
+          archive_cmds_CXX='$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $xlcverstring'
           module_cmds_CXX='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
           # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-          archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+          archive_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj ${wl}-single_module $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $xlcverstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           module_expsym_cmds_CXX='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           ;;
        *)
@@ -11315,7 +11490,7 @@
   freebsd-elf*)
     archive_cmds_need_lc_CXX=no
     ;;
-  freebsd* | kfreebsd*-gnu | dragonfly*)
+  freebsd* | dragonfly*)
     # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
     # conventions
     ld_shlibs_CXX=yes
@@ -11364,9 +11539,7 @@
       hardcode_libdir_separator_CXX=:
 
       case $host_cpu in
-      hppa*64*|ia64*)
-	hardcode_libdir_flag_spec_ld_CXX='+b $libdir'
-        ;;
+      hppa*64*|ia64*) ;;
       *)
 	export_dynamic_flag_spec_CXX='${wl}-E'
         ;;
@@ -11434,7 +11607,7 @@
 	;;
     esac
     ;;
-  interix3*)
+  interix[3-9]*)
     hardcode_direct_CXX=no
     hardcode_shlibpath_var_CXX=no
     hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
@@ -11474,7 +11647,7 @@
     hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir'
     hardcode_libdir_separator_CXX=:
     ;;
-  linux*)
+  linux* | k*bsd*-gnu)
     case $cc_basename in
       KCC*)
 	# Kuck and Associates, Inc. (KAI) C++ Compiler
@@ -11554,6 +11727,29 @@
 	# dependencies.
 	output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | grep "ld"`; templist=`echo $templist | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; echo $list'
 	;;
+      *)
+	case `$CC -V 2>&1 | sed 5q` in
+	*Sun\ C*)
+	  # Sun C++ 5.9
+	  no_undefined_flag_CXX=' -zdefs'
+	  archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
+	  archive_expsym_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols'
+	  hardcode_libdir_flag_spec_CXX='-R$libdir'
+	  whole_archive_flag_spec_CXX='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+
+	  # Not sure whether something based on
+	  # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
+	  # would be better.
+	  output_verbose_link_cmd='echo'
+
+	  # Archives containing C++ object files must be created using
+	  # "CC -xar", where "CC" is the Sun C++ compiler.  This is
+	  # necessary to make sure instantiated templates are included
+	  # in the archive.
+	  old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
+	  ;;
+	esac
+	;;
     esac
     ;;
   lynxos*)
@@ -11576,7 +11772,7 @@
 	;;
     esac
     ;;
-  netbsd*)
+  netbsd* | netbsdelf*-gnu)
     if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
       archive_cmds_CXX='$LD -Bshareable  -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
       wlarc=
@@ -11592,16 +11788,20 @@
     ld_shlibs_CXX=no
     ;;
   openbsd*)
-    hardcode_direct_CXX=yes
-    hardcode_shlibpath_var_CXX=no
-    archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
-    hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
-    if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-      archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
-      export_dynamic_flag_spec_CXX='${wl}-E'
-      whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+    if test -f /usr/libexec/ld.so; then
+      hardcode_direct_CXX=yes
+      hardcode_shlibpath_var_CXX=no
+      archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
+      hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir'
+      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+	archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file,$export_symbols -o $lib'
+	export_dynamic_flag_spec_CXX='${wl}-E'
+	whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
+      fi
+      output_verbose_link_cmd='echo'
+    else
+      ld_shlibs_CXX=no
     fi
-    output_verbose_link_cmd='echo'
     ;;
   osf3*)
     case $cc_basename in
@@ -11763,15 +11963,10 @@
 	case $host_os in
 	  solaris2.[0-5] | solaris2.[0-5].*) ;;
 	  *)
-	    # The C++ compiler is used as linker so we must use $wl
-	    # flag to pass the commands to the underlying system
-	    # linker. We must also pass each convience library through
-	    # to the system linker between allextract/defaultextract.
-	    # The C++ compiler will combine linker options so we
-	    # cannot just pass the convience library names through
-	    # without $wl.
+	    # The compiler driver will combine and reorder linker options,
+	    # but understands `-z linker_flag'.
 	    # Supported since Solaris 2.6 (maybe 2.5.1?)
-	    whole_archive_flag_spec_CXX='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract'
+	    whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract'
 	    ;;
 	esac
 	link_all_deplibs_CXX=yes
@@ -11818,6 +12013,12 @@
 	  fi
 
 	  hardcode_libdir_flag_spec_CXX='${wl}-R $wl$libdir'
+	  case $host_os in
+	  solaris2.[0-5] | solaris2.[0-5].*) ;;
+	  *)
+	    whole_archive_flag_spec_CXX='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+	    ;;
+	  esac
 	fi
 	;;
     esac
@@ -12009,7 +12210,7 @@
 
 # PORTME: override above test on systems where it is broken
 case $host_os in
-interix3*)
+interix[3-9]*)
   # Interix 3.5 installs completely hosed .la files for C++, so rather than
   # hack all around it, let's just trust "g++" to DTRT.
   predep_objects_CXX=
@@ -12017,13 +12218,46 @@
   postdeps_CXX=
   ;;
 
+linux*)
+  case `$CC -V 2>&1 | sed 5q` in
+  *Sun\ C*)
+    # Sun C++ 5.9
+    #
+    # The more standards-conforming stlport4 library is
+    # incompatible with the Cstd library. Avoid specifying
+    # it if it's in CXXFLAGS. Ignore libCrun as
+    # -library=stlport4 depends on it.
+    case " $CXX $CXXFLAGS " in
+    *" -library=stlport4 "*)
+      solaris_use_stlport4=yes
+      ;;
+    esac
+    if test "$solaris_use_stlport4" != yes; then
+      postdeps_CXX='-library=Cstd -library=Crun'
+    fi
+    ;;
+  esac
+  ;;
+
 solaris*)
   case $cc_basename in
   CC*)
+    # The more standards-conforming stlport4 library is
+    # incompatible with the Cstd library. Avoid specifying
+    # it if it's in CXXFLAGS. Ignore libCrun as
+    # -library=stlport4 depends on it.
+    case " $CXX $CXXFLAGS " in
+    *" -library=stlport4 "*)
+      solaris_use_stlport4=yes
+      ;;
+    esac
+
     # Adding this requires a known-good setup of shared libraries for
     # Sun compiler versions before 5.6, else PIC objects from an old
     # archive will be linked into the output, leading to subtle bugs.
-    postdeps_CXX='-lCstd -lCrun'
+    if test "$solaris_use_stlport4" != yes; then
+      postdeps_CXX='-library=Cstd -library=Crun'
+    fi
     ;;
   esac
   ;;
@@ -12060,12 +12294,14 @@
       # like `-m68040'.
       lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'
       ;;
-    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
-    mingw* | os2* | pw32*)
+    mingw* | cygwin* | os2* | pw32*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
+      # Although the cygwin gcc ignores -fPIC, still need this for old-style
+      # (--disable-auto-import) libraries
       lt_prog_compiler_pic_CXX='-DDLL_EXPORT'
       ;;
     darwin* | rhapsody*)
@@ -12077,7 +12313,7 @@
       # DJGPP does not support shared libraries at all
       lt_prog_compiler_pic_CXX=
       ;;
-    interix3*)
+    interix[3-9]*)
       # Interix 3.x gcc -fpic/-fPIC options generate broken code.
       # Instead, we relocate shared libraries at runtime.
       ;;
@@ -12143,7 +12379,7 @@
 	    ;;
 	esac
 	;;
-      freebsd* | kfreebsd*-gnu | dragonfly*)
+      freebsd* | dragonfly*)
 	# FreeBSD uses GNU C++
 	;;
       hpux9* | hpux10* | hpux11*)
@@ -12186,7 +12422,7 @@
 	    ;;
 	esac
 	;;
-      linux*)
+      linux* | k*bsd*-gnu)
 	case $cc_basename in
 	  KCC*)
 	    # KAI C++ Compiler
@@ -12213,6 +12449,14 @@
 	    lt_prog_compiler_static_CXX='-non_shared'
 	    ;;
 	  *)
+	    case `$CC -V 2>&1 | sed 5q` in
+	    *Sun\ C*)
+	      # Sun C++ 5.9
+	      lt_prog_compiler_pic_CXX='-KPIC'
+	      lt_prog_compiler_static_CXX='-Bstatic'
+	      lt_prog_compiler_wl_CXX='-Qoption ld '
+	      ;;
+	    esac
 	    ;;
 	esac
 	;;
@@ -12229,7 +12473,7 @@
 	    ;;
 	esac
 	;;
-      netbsd*)
+      netbsd* | netbsdelf*-gnu)
 	;;
       osf3* | osf4* | osf5*)
 	case $cc_basename in
@@ -12327,7 +12571,7 @@
 else
   lt_prog_compiler_pic_works_CXX=no
   ac_outfile=conftest.$ac_objext
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC"
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
@@ -12338,11 +12582,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:12341: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:12585: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:12345: \$? = $ac_status" >&5
+   echo "$as_me:12589: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -12391,7 +12635,7 @@
   lt_prog_compiler_static_works_CXX=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
-   printf "$lt_simple_link_test_code" > conftest.$ac_ext
+   echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
      # The linker can only warn and ignore the option if not recognized
      # So say no if there are warnings
@@ -12431,7 +12675,7 @@
    mkdir conftest
    cd conftest
    mkdir out
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
    lt_compiler_flag="-o out/conftest2.$ac_objext"
    # Insert the option either (1) after the last *FLAGS variable, or
@@ -12442,11 +12686,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:12445: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:12689: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:12449: \$? = $ac_status" >&5
+   echo "$as_me:12693: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -12512,8 +12756,11 @@
     export_symbols_cmds_CXX="$ltdll_cmds"
   ;;
   cygwin* | mingw*)
-    export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS] /s/.* \([^ ]*\)/\1 DATA/;/^.* __nm__/s/^.* __nm__\([^ ]*\) [^ ]*/\1 DATA/;/^I /d;/^[AITW] /s/.* //'\'' | sort | uniq > $export_symbols'
+    export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;/^.*[ ]__nm__/s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
   ;;
+  linux* | k*bsd*-gnu)
+    link_all_deplibs_CXX=no
+  ;;
   *)
     export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
   ;;
@@ -12543,7 +12790,7 @@
       { echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5
 echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6; }
       $rm conftest*
-      printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+      echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
       if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
@@ -12601,20 +12848,7 @@
 version_type=none
 dynamic_linker="$host_os ld.so"
 sys_lib_dlsearch_path_spec="/lib /usr/lib"
-if test "$GCC" = yes; then
-  sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
-  if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then
-    # if the path contains ";" then we assume it to be the separator
-    # otherwise default to the standard path separator (i.e. ":") - it is
-    # assumed that no part of a normal pathname contains ";" but that should
-    # okay in the real world where ";" in dirpaths is itself problematic.
-    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
-  else
-    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
-  fi
-else
-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi
+
 need_lib_prefix=unknown
 hardcode_into_libs=no
 
@@ -12771,12 +13005,7 @@
   shlibpath_overrides_runpath=yes
   shlibpath_var=DYLD_LIBRARY_PATH
   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-  # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
-  if test "$GCC" = yes; then
-    sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
-  else
-    sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib'
-  fi
+
   sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
   ;;
 
@@ -12793,18 +13022,6 @@
   dynamic_linker=no
   ;;
 
-kfreebsd*-gnu)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  dynamic_linker='GNU ld.so'
-  ;;
-
 freebsd* | dragonfly*)
   # DragonFly does not have aout.  When/if they implement a new
   # versioning mechanism, adjust this.
@@ -12842,7 +13059,7 @@
     shlibpath_overrides_runpath=no
     hardcode_into_libs=yes
     ;;
-  freebsd*) # from 4.6 on
+  *) # from 4.6 on, and DragonFly
     shlibpath_overrides_runpath=yes
     hardcode_into_libs=yes
     ;;
@@ -12905,7 +13122,7 @@
   postinstall_cmds='chmod 555 $lib'
   ;;
 
-interix3*)
+interix[3-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -12960,7 +13177,7 @@
   ;;
 
 # This must be Linux ELF.
-linux*)
+linux* | k*bsd*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -12974,31 +13191,10 @@
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # find out which ABI we are using
-  libsuff=
-  case "$host_cpu" in
-  x86_64*|s390x*|powerpc64*)
-    echo '#line 12981 "configure"' > conftest.$ac_ext
-    if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-      case `/usr/bin/file conftest.$ac_objext` in
-      *64-bit*)
-        libsuff=64
-        sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
-        ;;
-      esac
-    fi
-    rm -rf conftest*
-    ;;
-  esac
-
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/^	 *//;s/#.*//;/^[^\/]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ 	]*hwcap[ 	]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
   # We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -13010,7 +13206,7 @@
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
-knetbsd*-gnu)
+netbsdelf*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -13019,7 +13215,7 @@
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
-  dynamic_linker='GNU ld.so'
+  dynamic_linker='NetBSD ld.elf_so'
   ;;
 
 netbsd*)
@@ -13103,6 +13299,10 @@
   sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
   ;;
 
+rdos*)
+  dynamic_linker=no
+  ;;
+
 solaris*)
   version_type=linux
   need_lib_prefix=no
@@ -13297,6 +13497,7 @@
     module_cmds_CXX \
     module_expsym_cmds_CXX \
     lt_cv_prog_compiler_c_o_CXX \
+    fix_srcfile_path_CXX \
     exclude_expsyms_CXX \
     include_expsyms_CXX; do
 
@@ -13617,7 +13818,7 @@
 sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
 
 # Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path="$fix_srcfile_path_CXX"
+fix_srcfile_path=$lt_fix_srcfile_path
 
 # Set to yes if exported symbols are required.
 always_export_symbols=$always_export_symbols_CXX
@@ -13708,10 +13909,17 @@
 objext_F77=$objext
 
 # Code to be used in simple compile tests
-lt_simple_compile_test_code="      subroutine t\n      return\n      end\n"
+lt_simple_compile_test_code="\
+      subroutine t
+      return
+      end
+"
 
 # Code to be used in simple link tests
-lt_simple_link_test_code="      program t\n      end\n"
+lt_simple_link_test_code="\
+      program t
+      end
+"
 
 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
 
@@ -13727,13 +13935,13 @@
 
 # save warnings/boilerplate of simple test code
 ac_outfile=conftest.$ac_objext
-printf "$lt_simple_compile_test_code" >conftest.$ac_ext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_compiler_boilerplate=`cat conftest.err`
 $rm conftest*
 
 ac_outfile=conftest.$ac_objext
-printf "$lt_simple_link_test_code" >conftest.$ac_ext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
 $rm conftest*
@@ -13820,13 +14028,15 @@
       lt_prog_compiler_pic_F77='-m68020 -resident32 -malways-restore-a4'
       ;;
 
-    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
+      # Although the cygwin gcc ignores -fPIC, still need this for old-style
+      # (--disable-auto-import) libraries
       lt_prog_compiler_pic_F77='-DDLL_EXPORT'
       ;;
 
@@ -13836,7 +14046,7 @@
       lt_prog_compiler_pic_F77='-fno-common'
       ;;
 
-    interix3*)
+    interix[3-9]*)
       # Interix 3.x gcc -fpic/-fPIC options generate broken code.
       # Instead, we relocate shared libraries at runtime.
       ;;
@@ -13894,7 +14104,7 @@
        esac
        ;;
 
-    mingw* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic_F77='-DDLL_EXPORT'
@@ -13927,7 +14137,7 @@
       lt_prog_compiler_static_F77='-Bstatic'
       ;;
 
-    linux*)
+    linux* | k*bsd*-gnu)
       case $cc_basename in
       icc* | ecc*)
 	lt_prog_compiler_wl_F77='-Wl,'
@@ -13946,6 +14156,22 @@
         # All Alpha code is PIC.
         lt_prog_compiler_static_F77='-non_shared'
         ;;
+      *)
+        case `$CC -V 2>&1 | sed 5q` in
+	*Sun\ C*)
+	  # Sun C 5.9
+	  lt_prog_compiler_pic_F77='-KPIC'
+	  lt_prog_compiler_static_F77='-Bstatic'
+	  lt_prog_compiler_wl_F77='-Wl,'
+	  ;;
+	*Sun\ F*)
+	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
+	  lt_prog_compiler_pic_F77='-KPIC'
+	  lt_prog_compiler_static_F77='-Bstatic'
+	  lt_prog_compiler_wl_F77=''
+	  ;;
+	esac
+	;;
       esac
       ;;
 
@@ -13955,6 +14181,10 @@
       lt_prog_compiler_static_F77='-non_shared'
       ;;
 
+    rdos*)
+      lt_prog_compiler_static_F77='-non_shared'
+      ;;
+
     solaris*)
       lt_prog_compiler_pic_F77='-KPIC'
       lt_prog_compiler_static_F77='-Bstatic'
@@ -14022,7 +14252,7 @@
 else
   lt_prog_compiler_pic_works_F77=no
   ac_outfile=conftest.$ac_objext
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic_F77"
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
@@ -14033,11 +14263,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:14036: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:14266: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:14040: \$? = $ac_status" >&5
+   echo "$as_me:14270: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -14086,7 +14316,7 @@
   lt_prog_compiler_static_works_F77=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
-   printf "$lt_simple_link_test_code" > conftest.$ac_ext
+   echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
      # The linker can only warn and ignore the option if not recognized
      # So say no if there are warnings
@@ -14126,7 +14356,7 @@
    mkdir conftest
    cd conftest
    mkdir out
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
    lt_compiler_flag="-o out/conftest2.$ac_objext"
    # Insert the option either (1) after the last *FLAGS variable, or
@@ -14137,11 +14367,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:14140: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:14370: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:14144: \$? = $ac_status" >&5
+   echo "$as_me:14374: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -14333,7 +14563,7 @@
       allow_undefined_flag_F77=unsupported
       always_export_symbols_F77=no
       enable_shared_with_static_runtimes_F77=yes
-      export_symbols_cmds_F77='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS] /s/.* \([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW] /s/.* //'\'' | sort | uniq > $export_symbols'
+      export_symbols_cmds_F77='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
 
       if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
         archive_cmds_F77='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
@@ -14351,7 +14581,7 @@
       fi
       ;;
 
-    interix3*)
+    interix[3-9]*)
       hardcode_direct_F77=no
       hardcode_shlibpath_var_F77=no
       hardcode_libdir_flag_spec_F77='${wl}-rpath,$libdir'
@@ -14366,7 +14596,7 @@
       archive_expsym_cmds_F77='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
-    linux*)
+    gnu* | linux* | k*bsd*-gnu)
       if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
 	tmp_addflag=
 	case $cc_basename,$host_cpu in
@@ -14384,20 +14614,30 @@
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
 	esac
-	archive_cmds_F77='$CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+	case `$CC -V 2>&1 | sed 5q` in
+	*Sun\ C*)			# Sun C 5.9
+	  whole_archive_flag_spec_F77='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+	  tmp_sharedflag='-G' ;;
+	*Sun\ F*)			# Sun Fortran 8.3
+	  tmp_sharedflag='-G' ;;
+	*)
+	  tmp_sharedflag='-shared' ;;
+	esac
+	archive_cmds_F77='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
 	if test $supports_anon_versioning = yes; then
 	  archive_expsym_cmds_F77='$echo "{ global:" > $output_objdir/$libname.ver~
   cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
   $echo "local: *; };" >> $output_objdir/$libname.ver~
-	  $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+	  $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
 	fi
+	link_all_deplibs_F77=no
       else
 	ld_shlibs_F77=no
       fi
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
 	archive_cmds_F77='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
 	wlarc=
@@ -14549,7 +14789,7 @@
   	   strings "$collect2name" | grep resolve_lib_name >/dev/null
 	  then
   	  # We have reworked collect2
-  	  hardcode_direct_F77=yes
+  	  :
 	  else
   	  # We have old collect2
   	  hardcode_direct_F77=unsupported
@@ -14613,11 +14853,18 @@
        } && test -s conftest$ac_exeext &&
        $as_test_x conftest$ac_exeext; then
 
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`
+lt_aix_libpath_sed='
+    /Import File Strings/,/^$/ {
+	/^0/ {
+	    s/^0  *\(.*\)$/\1/
+	    p
+	}
+    }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 # Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`; fi
+if test -z "$aix_libpath"; then
+  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
@@ -14662,11 +14909,18 @@
        } && test -s conftest$ac_exeext &&
        $as_test_x conftest$ac_exeext; then
 
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`
+lt_aix_libpath_sed='
+    /Import File Strings/,/^$/ {
+	/^0/ {
+	    s/^0  *\(.*\)$/\1/
+	    p
+	}
+    }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 # Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`; fi
+if test -z "$aix_libpath"; then
+  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
@@ -14720,7 +14974,7 @@
       # The linker will automatically build a .lib file if we build a DLL.
       old_archive_From_new_cmds_F77='true'
       # FIXME: Should let the user specify the lib program.
-      old_archive_cmds_F77='lib /OUT:$oldlib$oldobjs$old_deplibs'
+      old_archive_cmds_F77='lib -OUT:$oldlib$oldobjs$old_deplibs'
       fix_srcfile_path_F77='`cygpath -w "$srcfile"`'
       enable_shared_with_static_runtimes_F77=yes
       ;;
@@ -14762,10 +15016,10 @@
       case $cc_basename in
         xlc*)
          output_verbose_link_cmd='echo'
-         archive_cmds_F77='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
+         archive_cmds_F77='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $xlcverstring'
          module_cmds_F77='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
           # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-         archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+         archive_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $xlcverstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           module_expsym_cmds_F77='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           ;;
        *)
@@ -14805,7 +15059,7 @@
       ;;
 
     # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | kfreebsd*-gnu | dragonfly*)
+    freebsd* | dragonfly*)
       archive_cmds_F77='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
       hardcode_libdir_flag_spec_F77='-R$libdir'
       hardcode_direct_F77=yes
@@ -14907,7 +15161,7 @@
       link_all_deplibs_F77=yes
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
 	archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
       else
@@ -14927,24 +15181,28 @@
       ;;
 
     openbsd*)
-      hardcode_direct_F77=yes
-      hardcode_shlibpath_var_F77=no
-      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	archive_cmds_F77='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds_F77='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	hardcode_libdir_flag_spec_F77='${wl}-rpath,$libdir'
-	export_dynamic_flag_spec_F77='${wl}-E'
+      if test -f /usr/libexec/ld.so; then
+	hardcode_direct_F77=yes
+	hardcode_shlibpath_var_F77=no
+	if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+	  archive_cmds_F77='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_expsym_cmds_F77='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
+	  hardcode_libdir_flag_spec_F77='${wl}-rpath,$libdir'
+	  export_dynamic_flag_spec_F77='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+	     archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     hardcode_libdir_flag_spec_F77='-R$libdir'
+	     ;;
+	   *)
+	     archive_cmds_F77='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     hardcode_libdir_flag_spec_F77='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+        fi
       else
-       case $host_os in
-	 openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	   archive_cmds_F77='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	   hardcode_libdir_flag_spec_F77='-R$libdir'
-	   ;;
-	 *)
-	   archive_cmds_F77='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	   hardcode_libdir_flag_spec_F77='${wl}-rpath,$libdir'
-	   ;;
-       esac
+	ld_shlibs_F77=no
       fi
       ;;
 
@@ -15003,17 +15261,16 @@
       case $host_os in
       solaris2.[0-5] | solaris2.[0-5].*) ;;
       *)
- 	# The compiler driver will combine linker options so we
- 	# cannot just pass the convience library names through
- 	# without $wl, iff we do not link with $LD.
- 	# Luckily, gcc supports the same syntax we need for Sun Studio.
+	# The compiler driver will combine and reorder linker options,
+	# but understands `-z linker_flag'.  GCC discards it without `$wl',
+	# but is careful enough not to reorder.
  	# Supported since Solaris 2.6 (maybe 2.5.1?)
- 	case $wlarc in
- 	'')
- 	  whole_archive_flag_spec_F77='-z allextract$convenience -z defaultextract' ;;
- 	*)
- 	  whole_archive_flag_spec_F77='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' ;;
- 	esac ;;
+	if test "$GCC" = yes; then
+	  whole_archive_flag_spec_F77='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+	else
+	  whole_archive_flag_spec_F77='-z allextract$convenience -z defaultextract'
+	fi
+	;;
       esac
       link_all_deplibs_F77=yes
       ;;
@@ -15070,7 +15327,7 @@
       fi
       ;;
 
-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7*)
+    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
       no_undefined_flag_F77='${wl}-z,text'
       archive_cmds_need_lc_F77=no
       hardcode_shlibpath_var_F77=no
@@ -15147,7 +15404,7 @@
       { echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5
 echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6; }
       $rm conftest*
-      printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+      echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
       if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
@@ -15205,20 +15462,7 @@
 version_type=none
 dynamic_linker="$host_os ld.so"
 sys_lib_dlsearch_path_spec="/lib /usr/lib"
-if test "$GCC" = yes; then
-  sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
-  if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then
-    # if the path contains ";" then we assume it to be the separator
-    # otherwise default to the standard path separator (i.e. ":") - it is
-    # assumed that no part of a normal pathname contains ";" but that should
-    # okay in the real world where ";" in dirpaths is itself problematic.
-    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
-  else
-    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
-  fi
-else
-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi
+
 need_lib_prefix=unknown
 hardcode_into_libs=no
 
@@ -15375,12 +15619,7 @@
   shlibpath_overrides_runpath=yes
   shlibpath_var=DYLD_LIBRARY_PATH
   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-  # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
-  if test "$GCC" = yes; then
-    sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
-  else
-    sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib'
-  fi
+
   sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
   ;;
 
@@ -15397,18 +15636,6 @@
   dynamic_linker=no
   ;;
 
-kfreebsd*-gnu)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  dynamic_linker='GNU ld.so'
-  ;;
-
 freebsd* | dragonfly*)
   # DragonFly does not have aout.  When/if they implement a new
   # versioning mechanism, adjust this.
@@ -15446,7 +15673,7 @@
     shlibpath_overrides_runpath=no
     hardcode_into_libs=yes
     ;;
-  freebsd*) # from 4.6 on
+  *) # from 4.6 on, and DragonFly
     shlibpath_overrides_runpath=yes
     hardcode_into_libs=yes
     ;;
@@ -15509,7 +15736,7 @@
   postinstall_cmds='chmod 555 $lib'
   ;;
 
-interix3*)
+interix[3-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -15564,7 +15791,7 @@
   ;;
 
 # This must be Linux ELF.
-linux*)
+linux* | k*bsd*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -15578,31 +15805,10 @@
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # find out which ABI we are using
-  libsuff=
-  case "$host_cpu" in
-  x86_64*|s390x*|powerpc64*)
-    echo '#line 15585 "configure"' > conftest.$ac_ext
-    if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-      case `/usr/bin/file conftest.$ac_objext` in
-      *64-bit*)
-        libsuff=64
-        sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
-        ;;
-      esac
-    fi
-    rm -rf conftest*
-    ;;
-  esac
-
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/^	 *//;s/#.*//;/^[^\/]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ 	]*hwcap[ 	]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
   # We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -15614,7 +15820,7 @@
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
-knetbsd*-gnu)
+netbsdelf*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -15623,7 +15829,7 @@
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
-  dynamic_linker='GNU ld.so'
+  dynamic_linker='NetBSD ld.elf_so'
   ;;
 
 netbsd*)
@@ -15707,6 +15913,10 @@
   sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
   ;;
 
+rdos*)
+  dynamic_linker=no
+  ;;
+
 solaris*)
   version_type=linux
   need_lib_prefix=no
@@ -15901,6 +16111,7 @@
     module_cmds_F77 \
     module_expsym_cmds_F77 \
     lt_cv_prog_compiler_c_o_F77 \
+    fix_srcfile_path_F77 \
     exclude_expsyms_F77 \
     include_expsyms_F77; do
 
@@ -16221,7 +16432,7 @@
 sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
 
 # Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path="$fix_srcfile_path_F77"
+fix_srcfile_path=$lt_fix_srcfile_path
 
 # Set to yes if exported symbols are required.
 always_export_symbols=$always_export_symbols_F77
@@ -16279,10 +16490,10 @@
 objext_GCJ=$objext
 
 # Code to be used in simple compile tests
-lt_simple_compile_test_code="class foo {}\n"
+lt_simple_compile_test_code="class foo {}"
 
 # Code to be used in simple link tests
-lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }\n'
+lt_simple_link_test_code='public class conftest { public static void main(String[] argv) {}; }'
 
 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
 
@@ -16298,13 +16509,13 @@
 
 # save warnings/boilerplate of simple test code
 ac_outfile=conftest.$ac_objext
-printf "$lt_simple_compile_test_code" >conftest.$ac_ext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_compiler_boilerplate=`cat conftest.err`
 $rm conftest*
 
 ac_outfile=conftest.$ac_objext
-printf "$lt_simple_link_test_code" >conftest.$ac_ext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
 $rm conftest*
@@ -16345,7 +16556,7 @@
 else
   lt_cv_prog_compiler_rtti_exceptions=no
   ac_outfile=conftest.$ac_objext
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="-fno-rtti -fno-exceptions"
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
@@ -16356,11 +16567,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16359: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16570: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:16363: \$? = $ac_status" >&5
+   echo "$as_me:16574: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -16411,13 +16622,15 @@
       lt_prog_compiler_pic_GCJ='-m68020 -resident32 -malways-restore-a4'
       ;;
 
-    beos* | cygwin* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
+    beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
       # PIC is the default for these OSes.
       ;;
 
-    mingw* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
+      # Although the cygwin gcc ignores -fPIC, still need this for old-style
+      # (--disable-auto-import) libraries
       lt_prog_compiler_pic_GCJ='-DDLL_EXPORT'
       ;;
 
@@ -16427,7 +16640,7 @@
       lt_prog_compiler_pic_GCJ='-fno-common'
       ;;
 
-    interix3*)
+    interix[3-9]*)
       # Interix 3.x gcc -fpic/-fPIC options generate broken code.
       # Instead, we relocate shared libraries at runtime.
       ;;
@@ -16485,7 +16698,7 @@
        esac
        ;;
 
-    mingw* | pw32* | os2*)
+    mingw* | cygwin* | pw32* | os2*)
       # This hack is so that the source file can tell whether it is being
       # built for inclusion in a dll (and should export symbols for example).
       lt_prog_compiler_pic_GCJ='-DDLL_EXPORT'
@@ -16518,7 +16731,7 @@
       lt_prog_compiler_static_GCJ='-Bstatic'
       ;;
 
-    linux*)
+    linux* | k*bsd*-gnu)
       case $cc_basename in
       icc* | ecc*)
 	lt_prog_compiler_wl_GCJ='-Wl,'
@@ -16537,6 +16750,22 @@
         # All Alpha code is PIC.
         lt_prog_compiler_static_GCJ='-non_shared'
         ;;
+      *)
+        case `$CC -V 2>&1 | sed 5q` in
+	*Sun\ C*)
+	  # Sun C 5.9
+	  lt_prog_compiler_pic_GCJ='-KPIC'
+	  lt_prog_compiler_static_GCJ='-Bstatic'
+	  lt_prog_compiler_wl_GCJ='-Wl,'
+	  ;;
+	*Sun\ F*)
+	  # Sun Fortran 8.3 passes all unrecognized flags to the linker
+	  lt_prog_compiler_pic_GCJ='-KPIC'
+	  lt_prog_compiler_static_GCJ='-Bstatic'
+	  lt_prog_compiler_wl_GCJ=''
+	  ;;
+	esac
+	;;
       esac
       ;;
 
@@ -16546,6 +16775,10 @@
       lt_prog_compiler_static_GCJ='-non_shared'
       ;;
 
+    rdos*)
+      lt_prog_compiler_static_GCJ='-non_shared'
+      ;;
+
     solaris*)
       lt_prog_compiler_pic_GCJ='-KPIC'
       lt_prog_compiler_static_GCJ='-Bstatic'
@@ -16613,7 +16846,7 @@
 else
   lt_prog_compiler_pic_works_GCJ=no
   ac_outfile=conftest.$ac_objext
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
    lt_compiler_flag="$lt_prog_compiler_pic_GCJ"
    # Insert the option either (1) after the last *FLAGS variable, or
    # (2) before a word containing "conftest.", or (3) at the end.
@@ -16624,11 +16857,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16627: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16860: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:16631: \$? = $ac_status" >&5
+   echo "$as_me:16864: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -16677,7 +16910,7 @@
   lt_prog_compiler_static_works_GCJ=no
    save_LDFLAGS="$LDFLAGS"
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
-   printf "$lt_simple_link_test_code" > conftest.$ac_ext
+   echo "$lt_simple_link_test_code" > conftest.$ac_ext
    if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
      # The linker can only warn and ignore the option if not recognized
      # So say no if there are warnings
@@ -16717,7 +16950,7 @@
    mkdir conftest
    cd conftest
    mkdir out
-   printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+   echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
    lt_compiler_flag="-o out/conftest2.$ac_objext"
    # Insert the option either (1) after the last *FLAGS variable, or
@@ -16728,11 +16961,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16731: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16964: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:16735: \$? = $ac_status" >&5
+   echo "$as_me:16968: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -16924,7 +17157,7 @@
       allow_undefined_flag_GCJ=unsupported
       always_export_symbols_GCJ=no
       enable_shared_with_static_runtimes_GCJ=yes
-      export_symbols_cmds_GCJ='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS] /s/.* \([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW] /s/.* //'\'' | sort | uniq > $export_symbols'
+      export_symbols_cmds_GCJ='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
 
       if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then
         archive_cmds_GCJ='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
@@ -16942,7 +17175,7 @@
       fi
       ;;
 
-    interix3*)
+    interix[3-9]*)
       hardcode_direct_GCJ=no
       hardcode_shlibpath_var_GCJ=no
       hardcode_libdir_flag_spec_GCJ='${wl}-rpath,$libdir'
@@ -16957,7 +17190,7 @@
       archive_expsym_cmds_GCJ='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
       ;;
 
-    linux*)
+    gnu* | linux* | k*bsd*-gnu)
       if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
 	tmp_addflag=
 	case $cc_basename,$host_cpu in
@@ -16975,20 +17208,30 @@
 	ifc* | ifort*)			# Intel Fortran compiler
 	  tmp_addflag=' -nofor_main' ;;
 	esac
-	archive_cmds_GCJ='$CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
+	case `$CC -V 2>&1 | sed 5q` in
+	*Sun\ C*)			# Sun C 5.9
+	  whole_archive_flag_spec_GCJ='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}--no-whole-archive'
+	  tmp_sharedflag='-G' ;;
+	*Sun\ F*)			# Sun Fortran 8.3
+	  tmp_sharedflag='-G' ;;
+	*)
+	  tmp_sharedflag='-shared' ;;
+	esac
+	archive_cmds_GCJ='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib'
 
 	if test $supports_anon_versioning = yes; then
 	  archive_expsym_cmds_GCJ='$echo "{ global:" > $output_objdir/$libname.ver~
   cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
   $echo "local: *; };" >> $output_objdir/$libname.ver~
-	  $CC -shared'"$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
+	  $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib'
 	fi
+	link_all_deplibs_GCJ=no
       else
 	ld_shlibs_GCJ=no
       fi
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
 	archive_cmds_GCJ='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
 	wlarc=
@@ -17140,7 +17383,7 @@
   	   strings "$collect2name" | grep resolve_lib_name >/dev/null
 	  then
   	  # We have reworked collect2
-  	  hardcode_direct_GCJ=yes
+  	  :
 	  else
   	  # We have old collect2
   	  hardcode_direct_GCJ=unsupported
@@ -17214,11 +17457,18 @@
        } && test -s conftest$ac_exeext &&
        $as_test_x conftest$ac_exeext; then
 
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`
+lt_aix_libpath_sed='
+    /Import File Strings/,/^$/ {
+	/^0/ {
+	    s/^0  *\(.*\)$/\1/
+	    p
+	}
+    }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 # Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`; fi
+if test -z "$aix_libpath"; then
+  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
@@ -17273,11 +17523,18 @@
        } && test -s conftest$ac_exeext &&
        $as_test_x conftest$ac_exeext; then
 
-aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`
+lt_aix_libpath_sed='
+    /Import File Strings/,/^$/ {
+	/^0/ {
+	    s/^0  *\(.*\)$/\1/
+	    p
+	}
+    }'
+aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
 # Check for a 64-bit object if we didn't find anything.
-if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0  *\(.*\)$/\1/; p; }
-}'`; fi
+if test -z "$aix_libpath"; then
+  aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
+fi
 else
   echo "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
@@ -17331,7 +17588,7 @@
       # The linker will automatically build a .lib file if we build a DLL.
       old_archive_From_new_cmds_GCJ='true'
       # FIXME: Should let the user specify the lib program.
-      old_archive_cmds_GCJ='lib /OUT:$oldlib$oldobjs$old_deplibs'
+      old_archive_cmds_GCJ='lib -OUT:$oldlib$oldobjs$old_deplibs'
       fix_srcfile_path_GCJ='`cygpath -w "$srcfile"`'
       enable_shared_with_static_runtimes_GCJ=yes
       ;;
@@ -17373,10 +17630,10 @@
       case $cc_basename in
         xlc*)
          output_verbose_link_cmd='echo'
-         archive_cmds_GCJ='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $verstring'
+         archive_cmds_GCJ='$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}`echo $rpath/$soname` $xlcverstring'
          module_cmds_GCJ='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs$compiler_flags'
           # Don't fix this by using the ld -exported_symbols_list flag, it doesn't exist in older darwin lds
-         archive_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+         archive_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC -qmkshrobj $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-install_name ${wl}$rpath/$soname $xlcverstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           module_expsym_cmds_GCJ='sed -e "s,#.*,," -e "s,^[    ]*,," -e "s,^\(..*\),_&," < $export_symbols > $output_objdir/${libname}-symbols.expsym~$CC $allow_undefined_flag  -o $lib -bundle $libobjs $deplibs$compiler_flags~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
           ;;
        *)
@@ -17416,7 +17673,7 @@
       ;;
 
     # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
-    freebsd* | kfreebsd*-gnu | dragonfly*)
+    freebsd* | dragonfly*)
       archive_cmds_GCJ='$CC -shared -o $lib $libobjs $deplibs $compiler_flags'
       hardcode_libdir_flag_spec_GCJ='-R$libdir'
       hardcode_direct_GCJ=yes
@@ -17518,7 +17775,7 @@
       link_all_deplibs_GCJ=yes
       ;;
 
-    netbsd*)
+    netbsd* | netbsdelf*-gnu)
       if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
 	archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'  # a.out
       else
@@ -17538,24 +17795,28 @@
       ;;
 
     openbsd*)
-      hardcode_direct_GCJ=yes
-      hardcode_shlibpath_var_GCJ=no
-      if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-	archive_cmds_GCJ='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	archive_expsym_cmds_GCJ='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
-	hardcode_libdir_flag_spec_GCJ='${wl}-rpath,$libdir'
-	export_dynamic_flag_spec_GCJ='${wl}-E'
+      if test -f /usr/libexec/ld.so; then
+	hardcode_direct_GCJ=yes
+	hardcode_shlibpath_var_GCJ=no
+	if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
+	  archive_cmds_GCJ='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	  archive_expsym_cmds_GCJ='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols'
+	  hardcode_libdir_flag_spec_GCJ='${wl}-rpath,$libdir'
+	  export_dynamic_flag_spec_GCJ='${wl}-E'
+	else
+	  case $host_os in
+	   openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
+	     archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
+	     hardcode_libdir_flag_spec_GCJ='-R$libdir'
+	     ;;
+	   *)
+	     archive_cmds_GCJ='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
+	     hardcode_libdir_flag_spec_GCJ='${wl}-rpath,$libdir'
+	     ;;
+	  esac
+        fi
       else
-       case $host_os in
-	 openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
-	   archive_cmds_GCJ='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
-	   hardcode_libdir_flag_spec_GCJ='-R$libdir'
-	   ;;
-	 *)
-	   archive_cmds_GCJ='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
-	   hardcode_libdir_flag_spec_GCJ='${wl}-rpath,$libdir'
-	   ;;
-       esac
+	ld_shlibs_GCJ=no
       fi
       ;;
 
@@ -17614,17 +17875,16 @@
       case $host_os in
       solaris2.[0-5] | solaris2.[0-5].*) ;;
       *)
- 	# The compiler driver will combine linker options so we
- 	# cannot just pass the convience library names through
- 	# without $wl, iff we do not link with $LD.
- 	# Luckily, gcc supports the same syntax we need for Sun Studio.
+	# The compiler driver will combine and reorder linker options,
+	# but understands `-z linker_flag'.  GCC discards it without `$wl',
+	# but is careful enough not to reorder.
  	# Supported since Solaris 2.6 (maybe 2.5.1?)
- 	case $wlarc in
- 	'')
- 	  whole_archive_flag_spec_GCJ='-z allextract$convenience -z defaultextract' ;;
- 	*)
- 	  whole_archive_flag_spec_GCJ='${wl}-z ${wl}allextract`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $echo \"$new_convenience\"` ${wl}-z ${wl}defaultextract' ;;
- 	esac ;;
+	if test "$GCC" = yes; then
+	  whole_archive_flag_spec_GCJ='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract'
+	else
+	  whole_archive_flag_spec_GCJ='-z allextract$convenience -z defaultextract'
+	fi
+	;;
       esac
       link_all_deplibs_GCJ=yes
       ;;
@@ -17681,7 +17941,7 @@
       fi
       ;;
 
-    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7*)
+    sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
       no_undefined_flag_GCJ='${wl}-z,text'
       archive_cmds_need_lc_GCJ=no
       hardcode_shlibpath_var_GCJ=no
@@ -17758,7 +18018,7 @@
       { echo "$as_me:$LINENO: checking whether -lc should be explicitly linked in" >&5
 echo $ECHO_N "checking whether -lc should be explicitly linked in... $ECHO_C" >&6; }
       $rm conftest*
-      printf "$lt_simple_compile_test_code" > conftest.$ac_ext
+      echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
       if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
@@ -17816,20 +18076,7 @@
 version_type=none
 dynamic_linker="$host_os ld.so"
 sys_lib_dlsearch_path_spec="/lib /usr/lib"
-if test "$GCC" = yes; then
-  sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"`
-  if echo "$sys_lib_search_path_spec" | grep ';' >/dev/null ; then
-    # if the path contains ";" then we assume it to be the separator
-    # otherwise default to the standard path separator (i.e. ":") - it is
-    # assumed that no part of a normal pathname contains ";" but that should
-    # okay in the real world where ";" in dirpaths is itself problematic.
-    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
-  else
-    sys_lib_search_path_spec=`echo "$sys_lib_search_path_spec" | $SED  -e "s/$PATH_SEPARATOR/ /g"`
-  fi
-else
-  sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
-fi
+
 need_lib_prefix=unknown
 hardcode_into_libs=no
 
@@ -17986,12 +18233,7 @@
   shlibpath_overrides_runpath=yes
   shlibpath_var=DYLD_LIBRARY_PATH
   shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
-  # Apple's gcc prints 'gcc -print-search-dirs' doesn't operate the same.
-  if test "$GCC" = yes; then
-    sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
-  else
-    sys_lib_search_path_spec='/lib /usr/lib /usr/local/lib'
-  fi
+
   sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
   ;;
 
@@ -18008,18 +18250,6 @@
   dynamic_linker=no
   ;;
 
-kfreebsd*-gnu)
-  version_type=linux
-  need_lib_prefix=no
-  need_version=no
-  library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
-  soname_spec='${libname}${release}${shared_ext}$major'
-  shlibpath_var=LD_LIBRARY_PATH
-  shlibpath_overrides_runpath=no
-  hardcode_into_libs=yes
-  dynamic_linker='GNU ld.so'
-  ;;
-
 freebsd* | dragonfly*)
   # DragonFly does not have aout.  When/if they implement a new
   # versioning mechanism, adjust this.
@@ -18057,7 +18287,7 @@
     shlibpath_overrides_runpath=no
     hardcode_into_libs=yes
     ;;
-  freebsd*) # from 4.6 on
+  *) # from 4.6 on, and DragonFly
     shlibpath_overrides_runpath=yes
     hardcode_into_libs=yes
     ;;
@@ -18120,7 +18350,7 @@
   postinstall_cmds='chmod 555 $lib'
   ;;
 
-interix3*)
+interix[3-9]*)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -18175,7 +18405,7 @@
   ;;
 
 # This must be Linux ELF.
-linux*)
+linux* | k*bsd*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -18189,31 +18419,10 @@
   # before this can be enabled.
   hardcode_into_libs=yes
 
-  # find out which ABI we are using
-  libsuff=
-  case "$host_cpu" in
-  x86_64*|s390x*|powerpc64*)
-    echo '#line 18196 "configure"' > conftest.$ac_ext
-    if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-  (eval $ac_compile) 2>&5
-  ac_status=$?
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); }; then
-      case `/usr/bin/file conftest.$ac_objext` in
-      *64-bit*)
-        libsuff=64
-        sys_lib_search_path_spec="/lib${libsuff} /usr/lib${libsuff} /usr/local/lib${libsuff}"
-        ;;
-      esac
-    fi
-    rm -rf conftest*
-    ;;
-  esac
-
   # Append ld.so.conf contents to the search path
   if test -f /etc/ld.so.conf; then
-    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/^	 *//;s/#.*//;/^[^\/]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
-    sys_lib_dlsearch_path_spec="/lib${libsuff} /usr/lib${libsuff} $lt_ld_extra"
+    lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ 	]*hwcap[ 	]/d;s/[:,	]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '`
+    sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
   fi
 
   # We used to test for /lib/ld.so.1 and disable shared libraries on
@@ -18225,7 +18434,7 @@
   dynamic_linker='GNU/Linux ld.so'
   ;;
 
-knetbsd*-gnu)
+netbsdelf*-gnu)
   version_type=linux
   need_lib_prefix=no
   need_version=no
@@ -18234,7 +18443,7 @@
   shlibpath_var=LD_LIBRARY_PATH
   shlibpath_overrides_runpath=no
   hardcode_into_libs=yes
-  dynamic_linker='GNU ld.so'
+  dynamic_linker='NetBSD ld.elf_so'
   ;;
 
 netbsd*)
@@ -18318,6 +18527,10 @@
   sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
   ;;
 
+rdos*)
+  dynamic_linker=no
+  ;;
+
 solaris*)
   version_type=linux
   need_lib_prefix=no
@@ -18512,6 +18725,7 @@
     module_cmds_GCJ \
     module_expsym_cmds_GCJ \
     lt_cv_prog_compiler_c_o_GCJ \
+    fix_srcfile_path_GCJ \
     exclude_expsyms_GCJ \
     include_expsyms_GCJ; do
 
@@ -18832,7 +19046,7 @@
 sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
 
 # Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path="$fix_srcfile_path_GCJ"
+fix_srcfile_path=$lt_fix_srcfile_path
 
 # Set to yes if exported symbols are required.
 always_export_symbols=$always_export_symbols_GCJ
@@ -18889,7 +19103,7 @@
 objext_RC=$objext
 
 # Code to be used in simple compile tests
-lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }\n'
+lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
 
 # Code to be used in simple link tests
 lt_simple_link_test_code="$lt_simple_compile_test_code"
@@ -18908,13 +19122,13 @@
 
 # save warnings/boilerplate of simple test code
 ac_outfile=conftest.$ac_objext
-printf "$lt_simple_compile_test_code" >conftest.$ac_ext
+echo "$lt_simple_compile_test_code" >conftest.$ac_ext
 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_compiler_boilerplate=`cat conftest.err`
 $rm conftest*
 
 ac_outfile=conftest.$ac_objext
-printf "$lt_simple_link_test_code" >conftest.$ac_ext
+echo "$lt_simple_link_test_code" >conftest.$ac_ext
 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
 _lt_linker_boilerplate=`cat conftest.err`
 $rm conftest*
@@ -18992,6 +19206,7 @@
     module_cmds_RC \
     module_expsym_cmds_RC \
     lt_cv_prog_compiler_c_o_RC \
+    fix_srcfile_path_RC \
     exclude_expsyms_RC \
     include_expsyms_RC; do
 
@@ -19312,7 +19527,7 @@
 sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec
 
 # Fix the shell variable \$srcfile for the compiler.
-fix_srcfile_path="$fix_srcfile_path_RC"
+fix_srcfile_path=$lt_fix_srcfile_path
 
 # Set to yes if exported symbols are required.
 always_export_symbols=$always_export_symbols_RC
@@ -19497,6 +19712,7 @@
   INTLTOOL_SCHEMAS_RULE='%.schemas:   %.schemas.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
     INTLTOOL_THEME_RULE='%.theme:     %.theme.in     $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
     INTLTOOL_SERVICE_RULE='%.service: %.service.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
+   INTLTOOL_POLICY_RULE='%.policy:    %.policy.in    $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
 
 
 
@@ -19517,6 +19733,7 @@
 
 
 
+
 # Use the tools built into the package, not the ones that are installed.
 INTLTOOL_EXTRACT='$(top_builddir)/intltool-extract'
 
@@ -19588,171 +19805,6 @@
    fi
 fi
 
-# Extract the first word of "iconv", so it can be a program name with args.
-set dummy iconv; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_path_INTLTOOL_ICONV+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  case $INTLTOOL_ICONV in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_INTLTOOL_ICONV="$INTLTOOL_ICONV" # 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
-    ac_cv_path_INTLTOOL_ICONV="$as_dir/$ac_word$ac_exec_ext"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_INTLTOOL_ICONV" && ac_cv_path_INTLTOOL_ICONV="iconv"
-  ;;
-esac
-fi
-INTLTOOL_ICONV=$ac_cv_path_INTLTOOL_ICONV
-if test -n "$INTLTOOL_ICONV"; then
-  { echo "$as_me:$LINENO: result: $INTLTOOL_ICONV" >&5
-echo "${ECHO_T}$INTLTOOL_ICONV" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-# Extract the first word of "msgfmt", so it can be a program name with args.
-set dummy msgfmt; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_path_INTLTOOL_MSGFMT+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  case $INTLTOOL_MSGFMT in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_INTLTOOL_MSGFMT="$INTLTOOL_MSGFMT" # 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
-    ac_cv_path_INTLTOOL_MSGFMT="$as_dir/$ac_word$ac_exec_ext"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_INTLTOOL_MSGFMT" && ac_cv_path_INTLTOOL_MSGFMT="msgfmt"
-  ;;
-esac
-fi
-INTLTOOL_MSGFMT=$ac_cv_path_INTLTOOL_MSGFMT
-if test -n "$INTLTOOL_MSGFMT"; then
-  { echo "$as_me:$LINENO: result: $INTLTOOL_MSGFMT" >&5
-echo "${ECHO_T}$INTLTOOL_MSGFMT" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-# Extract the first word of "msgmerge", so it can be a program name with args.
-set dummy msgmerge; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_path_INTLTOOL_MSGMERGE+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  case $INTLTOOL_MSGMERGE in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_INTLTOOL_MSGMERGE="$INTLTOOL_MSGMERGE" # 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
-    ac_cv_path_INTLTOOL_MSGMERGE="$as_dir/$ac_word$ac_exec_ext"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_INTLTOOL_MSGMERGE" && ac_cv_path_INTLTOOL_MSGMERGE="msgmerge"
-  ;;
-esac
-fi
-INTLTOOL_MSGMERGE=$ac_cv_path_INTLTOOL_MSGMERGE
-if test -n "$INTLTOOL_MSGMERGE"; then
-  { echo "$as_me:$LINENO: result: $INTLTOOL_MSGMERGE" >&5
-echo "${ECHO_T}$INTLTOOL_MSGMERGE" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-# Extract the first word of "xgettext", so it can be a program name with args.
-set dummy xgettext; ac_word=$2
-{ echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
-if test "${ac_cv_path_INTLTOOL_XGETTEXT+set}" = set; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  case $INTLTOOL_XGETTEXT in
-  [\\/]* | ?:[\\/]*)
-  ac_cv_path_INTLTOOL_XGETTEXT="$INTLTOOL_XGETTEXT" # 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
-    ac_cv_path_INTLTOOL_XGETTEXT="$as_dir/$ac_word$ac_exec_ext"
-    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-    break 2
-  fi
-done
-done
-IFS=$as_save_IFS
-
-  test -z "$ac_cv_path_INTLTOOL_XGETTEXT" && ac_cv_path_INTLTOOL_XGETTEXT="xgettext"
-  ;;
-esac
-fi
-INTLTOOL_XGETTEXT=$ac_cv_path_INTLTOOL_XGETTEXT
-if test -n "$INTLTOOL_XGETTEXT"; then
-  { echo "$as_me:$LINENO: result: $INTLTOOL_XGETTEXT" >&5
-echo "${ECHO_T}$INTLTOOL_XGETTEXT" >&6; }
-else
-  { echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6; }
-fi
-
-
-
 # Substitute ALL_LINGUAS so we can use it in po/Makefile
 
 
@@ -19770,7 +19822,7 @@
 main ()
 {
 extern int _nl_msg_cat_cntr;
-                 return _nl_msg_cat_cntr
+                       return _nl_msg_cat_cntr
   ;
   return 0;
 }
@@ -19907,102 +19959,8 @@
 
 
 
-for ac_func in mremap
-do
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-{ echo "$as_me:$LINENO: checking for $ac_func" >&5
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
-  echo $ECHO_N "(cached) $ECHO_C" >&6
-else
-  cat >conftest.$ac_ext <<_ACEOF
-/* confdefs.h.  */
-_ACEOF
-cat confdefs.h >>conftest.$ac_ext
-cat >>conftest.$ac_ext <<_ACEOF
-/* end confdefs.h.  */
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-#define $ac_func innocuous_$ac_func
 
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func (); below.
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-    <limits.h> exists even on freestanding compilers.  */
 
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-
-#undef $ac_func
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-#ifdef __cplusplus
-extern "C"
-#endif
-char $ac_func ();
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined __stub_$ac_func || defined __stub___$ac_func
-choke me
-#endif
-
-int
-main ()
-{
-return $ac_func ();
-  ;
-  return 0;
-}
-_ACEOF
-rm -f conftest.$ac_objext conftest$ac_exeext
-if { (ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
-  (eval "$ac_link") 2>conftest.er1
-  ac_status=$?
-  grep -v '^ *+' conftest.er1 >conftest.err
-  rm -f conftest.er1
-  cat conftest.err >&5
-  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-  (exit $ac_status); } && {
-	 test -z "$ac_c_werror_flag" ||
-	 test ! -s conftest.err
-       } && test -s conftest$ac_exeext &&
-       $as_test_x conftest$ac_exeext; then
-  eval "$as_ac_var=yes"
-else
-  echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-	eval "$as_ac_var=no"
-fi
-
-rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
-      conftest$ac_exeext conftest.$ac_ext
-fi
-ac_res=`eval echo '${'$as_ac_var'}'`
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
-echo "${ECHO_T}$ac_res" >&6; }
-if test `eval echo '${'$as_ac_var'}'` = yes; then
-  cat >>confdefs.h <<_ACEOF
-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-done
-
-
-
-
 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
 	if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
@@ -20131,12 +20089,12 @@
         pkg_cv_LIBGPOD_CFLAGS="$LIBGPOD_CFLAGS"
     else
         if test -n "$PKG_CONFIG" && \
-    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.4.0 gobject-2.0\"") >&5
-  ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.4.0 gobject-2.0") 2>&5
+    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.8.0 gobject-2.0\"") >&5
+  ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.8.0 gobject-2.0") 2>&5
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; then
-  pkg_cv_LIBGPOD_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.4.0 gobject-2.0" 2>/dev/null`
+  pkg_cv_LIBGPOD_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.8.0 gobject-2.0" 2>/dev/null`
 else
   pkg_failed=yes
 fi
@@ -20149,12 +20107,12 @@
         pkg_cv_LIBGPOD_LIBS="$LIBGPOD_LIBS"
     else
         if test -n "$PKG_CONFIG" && \
-    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.4.0 gobject-2.0\"") >&5
-  ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.4.0 gobject-2.0") 2>&5
+    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.8.0 gobject-2.0\"") >&5
+  ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.8.0 gobject-2.0") 2>&5
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; then
-  pkg_cv_LIBGPOD_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.4.0 gobject-2.0" 2>/dev/null`
+  pkg_cv_LIBGPOD_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.8.0 gobject-2.0" 2>/dev/null`
 else
   pkg_failed=yes
 fi
@@ -20173,14 +20131,14 @@
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        LIBGPOD_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "glib-2.0 >= 2.4.0 gobject-2.0"`
+	        LIBGPOD_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "glib-2.0 >= 2.8.0 gobject-2.0"`
         else
-	        LIBGPOD_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "glib-2.0 >= 2.4.0 gobject-2.0"`
+	        LIBGPOD_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "glib-2.0 >= 2.8.0 gobject-2.0"`
         fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$LIBGPOD_PKG_ERRORS" >&5
 
-	{ { echo "$as_me:$LINENO: error: Package requirements (glib-2.0 >= 2.4.0 gobject-2.0) were not met:
+	{ { echo "$as_me:$LINENO: error: Package requirements (glib-2.0 >= 2.8.0 gobject-2.0) were not met:
 
 $LIBGPOD_PKG_ERRORS
 
@@ -20191,7 +20149,7 @@
 and LIBGPOD_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 " >&5
-echo "$as_me: error: Package requirements (glib-2.0 >= 2.4.0 gobject-2.0) were not met:
+echo "$as_me: error: Package requirements (glib-2.0 >= 2.8.0 gobject-2.0) were not met:
 
 $LIBGPOD_PKG_ERRORS
 
@@ -20212,7 +20170,7 @@
 and LIBGPOD_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
-To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>.
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
 See \`config.log' for more details." >&5
 echo "$as_me: error: The pkg-config script could not be found or is too old.  Make sure it
 is in your PATH or set the PKG_CONFIG environment variable to the full
@@ -20222,7 +20180,7 @@
 and LIBGPOD_LIBS to avoid the need to call pkg-config.
 See the pkg-config man page for more details.
 
-To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>.
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
 See \`config.log' for more details." >&2;}
    { (exit 1); exit 1; }; }
 else
@@ -20234,8 +20192,218 @@
 fi
 LIBGPOD_CFLAGS="$LIBGPOD_CFLAGS -Wall"
 
+expanded_libdir=`(
+    case $prefix in
+        NONE) prefix=$ac_default_prefix ;;
+        *) ;;
+    esac
+    case $exec_prefix in
+        NONE) exec_prefix=$prefix ;;
+        *) ;;
+    esac
+    eval echo $libdir
+)`
 
+{ echo "$as_me:$LINENO: checking for sg_ll_inquiry in -lsgutils" >&5
+echo $ECHO_N "checking for sg_ll_inquiry in -lsgutils... $ECHO_C" >&6; }
+if test "${ac_cv_lib_sgutils_sg_ll_inquiry+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_check_lib_save_LIBS=$LIBS
+LIBS="-lsgutils  $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char sg_ll_inquiry ();
+int
+main ()
+{
+return sg_ll_inquiry ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest$ac_exeext &&
+       $as_test_x conftest$ac_exeext; then
+  ac_cv_lib_sgutils_sg_ll_inquiry=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_cv_lib_sgutils_sg_ll_inquiry=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+      conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_sgutils_sg_ll_inquiry" >&5
+echo "${ECHO_T}$ac_cv_lib_sgutils_sg_ll_inquiry" >&6; }
+if test $ac_cv_lib_sgutils_sg_ll_inquiry = yes; then
+  SGUTILS_LIBS="-lsgutils"; have_sgutils=yes
+else
+  have_sgutils=no
+fi
+
+
+
+
+if test x"$have_sgutils" = xyes; then
+  HAVE_SGUTILS_TRUE=
+  HAVE_SGUTILS_FALSE='#'
+else
+  HAVE_SGUTILS_TRUE='#'
+  HAVE_SGUTILS_FALSE=
+fi
+
+
+
+# Check whether --with-hal was given.
+if test "${with_hal+set}" = set; then
+  withval=$with_hal;
+fi
+
+
+
+# Check whether --with-hal_callouts_dir was given.
+if test "${with_hal_callouts_dir+set}" = set; then
+  withval=$with_hal_callouts_dir;
+else
+  with_hal_callouts_dir="${expanded_libdir}/hal"
+fi
+
+HALCALLOUTSDIR="$with_hal_callouts_dir"
+
+
+if test "x$with_hal" != "xno"; then
+
 pkg_failed=no
+{ echo "$as_me:$LINENO: checking for HAL" >&5
+echo $ECHO_N "checking for HAL... $ECHO_C" >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$HAL_CFLAGS"; then
+        pkg_cv_HAL_CFLAGS="$HAL_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"hal >= 0.5 hal < 0.6\"") >&5
+  ($PKG_CONFIG --exists --print-errors "hal >= 0.5 hal < 0.6") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  pkg_cv_HAL_CFLAGS=`$PKG_CONFIG --cflags "hal >= 0.5 hal < 0.6" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$HAL_LIBS"; then
+        pkg_cv_HAL_LIBS="$HAL_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"hal >= 0.5 hal < 0.6\"") >&5
+  ($PKG_CONFIG --exists --print-errors "hal >= 0.5 hal < 0.6") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  pkg_cv_HAL_LIBS=`$PKG_CONFIG --libs "hal >= 0.5 hal < 0.6" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+	        HAL_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "hal >= 0.5 hal < 0.6"`
+        else
+	        HAL_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "hal >= 0.5 hal < 0.6"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$HAL_PKG_ERRORS" >&5
+
+	{ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+                enable_hal=no
+elif test $pkg_failed = untried; then
+	enable_hal=no
+else
+	HAL_CFLAGS=$pkg_cv_HAL_CFLAGS
+	HAL_LIBS=$pkg_cv_HAL_LIBS
+        { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+	enable_hal=yes
+fi
+  if test "x$enable_hal" != "xyes" -a "x$with_hal" = "xyes"; then
+      { { echo "$as_me:$LINENO: error: HAL support explicitly requested but HAL couldn't be found" >&5
+echo "$as_me: error: HAL support explicitly requested but HAL couldn't be found" >&2;}
+   { (exit 1); exit 1; }; }
+  fi
+
+  if test "x$enable_hal" == "xyes"; then
+
+cat >>confdefs.h <<\_ACEOF
+#define HAVE_HAL 1
+_ACEOF
+
+
+
+  fi
+fi
+
+
+if test x"$enable_hal" = xyes; then
+  HAVE_HAL_TRUE=
+  HAVE_HAL_FALSE='#'
+else
+  HAVE_HAL_TRUE='#'
+  HAVE_HAL_FALSE=
+fi
+
+
+
+
+
+pkg_failed=no
 { echo "$as_me:$LINENO: checking for TAGLIB" >&5
 echo $ECHO_N "checking for TAGLIB... $ECHO_C" >&6; }
 
@@ -20432,8 +20600,113 @@
 fi
 
 
-ALL_LINGUAS="de es fr he it ja sv"
 
+# Check whether --enable-pygobject was given.
+if test "${enable_pygobject+set}" = set; then
+  enableval=$enable_pygobject; case "${enableval}" in
+  no) have_pygobject=no ;;
+  *) have_pygobject=yes;;
+esac
+else
+  have_pygobject=yes
+fi
+
+
+
+if test x$have_pygobject = xyes; then
+
+pkg_failed=no
+{ echo "$as_me:$LINENO: checking for PYGOBJECT" >&5
+echo $ECHO_N "checking for PYGOBJECT... $ECHO_C" >&6; }
+
+if test -n "$PKG_CONFIG"; then
+    if test -n "$PYGOBJECT_CFLAGS"; then
+        pkg_cv_PYGOBJECT_CFLAGS="$PYGOBJECT_CFLAGS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"pygobject-2.0 >= 2.8.0\"") >&5
+  ($PKG_CONFIG --exists --print-errors "pygobject-2.0 >= 2.8.0") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  pkg_cv_PYGOBJECT_CFLAGS=`$PKG_CONFIG --cflags "pygobject-2.0 >= 2.8.0" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+if test -n "$PKG_CONFIG"; then
+    if test -n "$PYGOBJECT_LIBS"; then
+        pkg_cv_PYGOBJECT_LIBS="$PYGOBJECT_LIBS"
+    else
+        if test -n "$PKG_CONFIG" && \
+    { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"pygobject-2.0 >= 2.8.0\"") >&5
+  ($PKG_CONFIG --exists --print-errors "pygobject-2.0 >= 2.8.0") 2>&5
+  ac_status=$?
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  pkg_cv_PYGOBJECT_LIBS=`$PKG_CONFIG --libs "pygobject-2.0 >= 2.8.0" 2>/dev/null`
+else
+  pkg_failed=yes
+fi
+    fi
+else
+	pkg_failed=untried
+fi
+
+
+
+if test $pkg_failed = yes; then
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi
+        if test $_pkg_short_errors_supported = yes; then
+	        PYGOBJECT_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "pygobject-2.0 >= 2.8.0"`
+        else
+	        PYGOBJECT_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "pygobject-2.0 >= 2.8.0"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$PYGOBJECT_PKG_ERRORS" >&5
+
+	{ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6; }
+                have_pygobject=no
+elif test $pkg_failed = untried; then
+	have_pygobject=no
+else
+	PYGOBJECT_CFLAGS=$pkg_cv_PYGOBJECT_CFLAGS
+	PYGOBJECT_LIBS=$pkg_cv_PYGOBJECT_LIBS
+        { echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6; }
+	have_pygobject=yes
+fi
+   if test x"$have_pygobject" = xyes; then
+      cat >>confdefs.h <<_ACEOF
+#define HAVE_PYGOBJECT 1
+_ACEOF
+
+   fi
+   LIBGPOD_CFLAGS="$LIBGPOD_CFLAGS $PYGOBJECT_CFLAGS"
+   LIBGPOD_LIBS="$LIBGPOD_LIBS $PYGOBJECT_LIBS"
+fi
+
+
+if test x"$have_pygobject" = xyes; then
+  HAVE_PYGOBJECT_TRUE=
+  HAVE_PYGOBJECT_FALSE='#'
+else
+  HAVE_PYGOBJECT_TRUE='#'
+  HAVE_PYGOBJECT_FALSE=
+fi
+
+
+ALL_LINGUAS="de es fr he it ja ro sv"
+
 GETTEXT_PACKAGE=libgpod
 
 
@@ -21614,8 +21887,8 @@
 "Content-Transfer-Encoding: 8bit\n"
 
 _ACEOF
-if { (echo "$as_me:$LINENO: msgfmt -c -o /dev/null conftest.foo") >&5
-  (msgfmt -c -o /dev/null conftest.foo) 2>&5
+if { (echo "$as_me:$LINENO: \$MSGFMT -c -o /dev/null conftest.foo") >&5
+  ($MSGFMT -c -o /dev/null conftest.foo) 2>&5
   ac_status=$?
   echo "$as_me:$LINENO: \$? = $ac_status" >&5
   (exit $ac_status); }; then
@@ -22170,6 +22443,7 @@
    { (exit 1); exit 1; }; }
 fi
 
+      am_display_PYTHON=$PYTHON
     else
       # Otherwise, try each interpreter until we find one that satisfies
       # VERSION.
@@ -22179,13 +22453,9 @@
   echo $ECHO_N "(cached) $ECHO_C" >&6
 else
 
-	for am_cv_pathless_PYTHON in python python2 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5 : ; do
-          if test "$am_cv_pathless_PYTHON" = : ; then
-            { { echo "$as_me:$LINENO: error: no suitable Python interpreter found" >&5
-echo "$as_me: error: no suitable Python interpreter found" >&2;}
-   { (exit 1); exit 1; }; }
-	  fi
-          prog="import sys, string
+	for am_cv_pathless_PYTHON in python python2 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5 none; do
+	  test "$am_cv_pathless_PYTHON" = none && break
+	  prog="import sys, string
 # split strings by '.' and convert to numeric.  Append some zeros
 # because we need at least 4 digits for the hex conversion.
 minver = map(int, string.split('$PYTHON_MIN_VERSION', '.')) + [0, 0, 0]
@@ -22200,12 +22470,15 @@
   break
 fi
 
-        done
+	done
 fi
 { echo "$as_me:$LINENO: result: $am_cv_pathless_PYTHON" >&5
 echo "${ECHO_T}$am_cv_pathless_PYTHON" >&6; }
       # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
-      # Extract the first word of "$am_cv_pathless_PYTHON", so it can be a program name with args.
+      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
 { echo "$as_me:$LINENO: checking for $ac_word" >&5
 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; }
@@ -22245,11 +22518,18 @@
 fi
 
 
+      fi
       am_display_PYTHON=$am_cv_pathless_PYTHON
     fi
 
 
+  if test "$PYTHON" = :; then
+      { { echo "$as_me:$LINENO: error: no suitable Python interpreter found" >&5
+echo "$as_me: error: no suitable Python interpreter found" >&2;}
+   { (exit 1); exit 1; }; }
+  else
 
+
   { echo "$as_me:$LINENO: checking for $am_display_PYTHON version" >&5
 echo $ECHO_N "checking for $am_display_PYTHON version... $ECHO_C" >&6; }
 if test "${am_cv_python_version+set}" = set; then
@@ -22318,6 +22598,10 @@
 
 
 
+  fi
+
+
+
 { echo "$as_me:$LINENO: checking for python development headers" >&5
 echo $ECHO_N "checking for python development headers... $ECHO_C" >&6; }
 py_prefix=`$PYTHON -c "import sys; print sys.prefix"`
@@ -22428,6 +22712,7 @@
 fi
 
 
+
                                 if test "X$with_python" == Xyes; then
 
         # Extract the first word of "swig", so it can be a program name with args.
@@ -22648,7 +22933,7 @@
 
 
 
-ac_config_files="$ac_config_files Makefile bindings/Makefile bindings/python/gpod.i bindings/python/Makefile bindings/python/examples/Makefile bindings/python/tests/Makefile docs/Makefile docs/reference/Makefile docs/reference/version.xml m4/Makefile po/Makefile.in src/Makefile tests/Makefile libgpod-1.0.pc"
+ac_config_files="$ac_config_files Makefile bindings/Makefile bindings/python/gpod.i bindings/python/Makefile bindings/python/examples/Makefile bindings/python/tests/Makefile docs/Makefile docs/reference/Makefile docs/reference/version.xml m4/Makefile po/Makefile.in src/Makefile tools/Makefile tests/Makefile libgpod-1.0.pc"
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -22778,6 +23063,20 @@
   ac_config_commands="$ac_config_commands po/stamp-it"
 
 
+if test -z "${HAVE_SGUTILS_TRUE}" && test -z "${HAVE_SGUTILS_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"HAVE_SGUTILS\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"HAVE_SGUTILS\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
+if test -z "${HAVE_HAL_TRUE}" && test -z "${HAVE_HAL_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"HAVE_HAL\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"HAVE_HAL\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
 if test -z "${HAVE_TAGLIB_TRUE}" && test -z "${HAVE_TAGLIB_FALSE}"; then
   { { echo "$as_me:$LINENO: error: conditional \"HAVE_TAGLIB\" was never defined.
 Usually this means the macro was only invoked conditionally." >&5
@@ -22792,6 +23091,13 @@
 Usually this means the macro was only invoked conditionally." >&2;}
    { (exit 1); exit 1; }; }
 fi
+if test -z "${HAVE_PYGOBJECT_TRUE}" && test -z "${HAVE_PYGOBJECT_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"HAVE_PYGOBJECT\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"HAVE_PYGOBJECT\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+   { (exit 1); exit 1; }; }
+fi
 if test -z "${ENABLE_GTK_DOC_TRUE}" && test -z "${ENABLE_GTK_DOC_FALSE}"; then
   { { echo "$as_me:$LINENO: error: conditional \"ENABLE_GTK_DOC\" was never defined.
 Usually this means the macro was only invoked conditionally." >&5
@@ -23272,9 +23578,7 @@
 AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
 INTLTOOL_PERL='${INTLTOOL_PERL}' ac_aux_dir='${ac_aux_dir}'
 prefix="$prefix" exec_prefix="$exec_prefix" INTLTOOL_LIBDIR="$libdir"
-INTLTOOL_EXTRACT='${INTLTOOL_EXTRACT}' INTLTOOL_ICONV='${INTLTOOL_ICONV}'
-INTLTOOL_MSGFMT='${INTLTOOL_MSGFMT}' INTLTOOL_MSGMERGE='${INTLTOOL_MSGMERGE}'
-INTLTOOL_XGETTEXT='${INTLTOOL_XGETTEXT}'
+INTLTOOL_EXTRACT='${INTLTOOL_EXTRACT}'
 
 
 _ACEOF
@@ -23301,6 +23605,7 @@
     "m4/Makefile") CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;;
     "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;;
     "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
+    "tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;;
     "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;;
     "libgpod-1.0.pc") CONFIG_FILES="$CONFIG_FILES libgpod-1.0.pc" ;;
     "po/stamp-it") CONFIG_COMMANDS="$CONFIG_COMMANDS po/stamp-it" ;;
@@ -23404,6 +23709,9 @@
 host_alias!$host_alias$ac_delim
 target_alias!$target_alias$ac_delim
 LIBGPOD_SO_VERSION!$LIBGPOD_SO_VERSION$ac_delim
+LIBGPOD_MAJOR_VERSION!$LIBGPOD_MAJOR_VERSION$ac_delim
+LIBGPOD_MINOR_VERSION!$LIBGPOD_MINOR_VERSION$ac_delim
+LIBGPOD_MICRO_VERSION!$LIBGPOD_MICRO_VERSION$ac_delim
 LIBGPOD_VERSION!$LIBGPOD_VERSION$ac_delim
 INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim
 INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim
@@ -23416,13 +23724,16 @@
 AUTOMAKE!$AUTOMAKE$ac_delim
 AUTOHEADER!$AUTOHEADER$ac_delim
 MAKEINFO!$MAKEINFO$ac_delim
-AMTAR!$AMTAR$ac_delim
 install_sh!$install_sh$ac_delim
 STRIP!$STRIP$ac_delim
 INSTALL_STRIP_PROGRAM!$INSTALL_STRIP_PROGRAM$ac_delim
+mkdir_p!$mkdir_p$ac_delim
 AWK!$AWK$ac_delim
 SET_MAKE!$SET_MAKE$ac_delim
 am__leading_dot!$am__leading_dot$ac_delim
+AMTAR!$AMTAR$ac_delim
+am__tar!$am__tar$ac_delim
+am__untar!$am__untar$ac_delim
 ACLOCAL_AMFLAGS!$ACLOCAL_AMFLAGS$ac_delim
 MAINTAINER_MODE_TRUE!$MAINTAINER_MODE_TRUE$ac_delim
 MAINTAINER_MODE_FALSE!$MAINTAINER_MODE_FALSE$ac_delim
@@ -23457,12 +23768,6 @@
 host!$host$ac_delim
 host_cpu!$host_cpu$ac_delim
 host_vendor!$host_vendor$ac_delim
-host_os!$host_os$ac_delim
-GREP!$GREP$ac_delim
-EGREP!$EGREP$ac_delim
-CPP!$CPP$ac_delim
-LN_S!$LN_S$ac_delim
-ECHO!$ECHO$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -23504,6 +23809,12 @@
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
+host_os!$host_os$ac_delim
+GREP!$GREP$ac_delim
+EGREP!$EGREP$ac_delim
+CPP!$CPP$ac_delim
+LN_S!$LN_S$ac_delim
+ECHO!$ECHO$ac_delim
 AR!$AR$ac_delim
 RANLIB!$RANLIB$ac_delim
 CXXCPP!$CXXCPP$ac_delim
@@ -23529,19 +23840,24 @@
 INTLTOOL_SCHEMAS_RULE!$INTLTOOL_SCHEMAS_RULE$ac_delim
 INTLTOOL_THEME_RULE!$INTLTOOL_THEME_RULE$ac_delim
 INTLTOOL_SERVICE_RULE!$INTLTOOL_SERVICE_RULE$ac_delim
+INTLTOOL_POLICY_RULE!$INTLTOOL_POLICY_RULE$ac_delim
 INTLTOOL_EXTRACT!$INTLTOOL_EXTRACT$ac_delim
 INTLTOOL_MERGE!$INTLTOOL_MERGE$ac_delim
 INTLTOOL_UPDATE!$INTLTOOL_UPDATE$ac_delim
 INTLTOOL_PERL!$INTLTOOL_PERL$ac_delim
-INTLTOOL_ICONV!$INTLTOOL_ICONV$ac_delim
-INTLTOOL_MSGFMT!$INTLTOOL_MSGFMT$ac_delim
-INTLTOOL_MSGMERGE!$INTLTOOL_MSGMERGE$ac_delim
-INTLTOOL_XGETTEXT!$INTLTOOL_XGETTEXT$ac_delim
 ALL_LINGUAS!$ALL_LINGUAS$ac_delim
 DATADIRNAME!$DATADIRNAME$ac_delim
 PKG_CONFIG!$PKG_CONFIG$ac_delim
 LIBGPOD_CFLAGS!$LIBGPOD_CFLAGS$ac_delim
 LIBGPOD_LIBS!$LIBGPOD_LIBS$ac_delim
+SGUTILS_LIBS!$SGUTILS_LIBS$ac_delim
+HAVE_SGUTILS_TRUE!$HAVE_SGUTILS_TRUE$ac_delim
+HAVE_SGUTILS_FALSE!$HAVE_SGUTILS_FALSE$ac_delim
+HALCALLOUTSDIR!$HALCALLOUTSDIR$ac_delim
+HAL_CFLAGS!$HAL_CFLAGS$ac_delim
+HAL_LIBS!$HAL_LIBS$ac_delim
+HAVE_HAL_TRUE!$HAVE_HAL_TRUE$ac_delim
+HAVE_HAL_FALSE!$HAVE_HAL_FALSE$ac_delim
 TAGLIB_CFLAGS!$TAGLIB_CFLAGS$ac_delim
 TAGLIB_LIBS!$TAGLIB_LIBS$ac_delim
 HAVE_TAGLIB_TRUE!$HAVE_TAGLIB_TRUE$ac_delim
@@ -23550,6 +23866,10 @@
 GDKPIXBUF_LIBS!$GDKPIXBUF_LIBS$ac_delim
 HAVE_GDKPIXBUF_TRUE!$HAVE_GDKPIXBUF_TRUE$ac_delim
 HAVE_GDKPIXBUF_FALSE!$HAVE_GDKPIXBUF_FALSE$ac_delim
+PYGOBJECT_CFLAGS!$PYGOBJECT_CFLAGS$ac_delim
+PYGOBJECT_LIBS!$PYGOBJECT_LIBS$ac_delim
+HAVE_PYGOBJECT_TRUE!$HAVE_PYGOBJECT_TRUE$ac_delim
+HAVE_PYGOBJECT_FALSE!$HAVE_PYGOBJECT_FALSE$ac_delim
 GETTEXT_PACKAGE!$GETTEXT_PACKAGE$ac_delim
 USE_NLS!$USE_NLS$ac_delim
 MSGFMT!$MSGFMT$ac_delim
@@ -23586,11 +23906,52 @@
 SWIG_LIB!$SWIG_LIB$ac_delim
 HAVE_PYTHON_TRUE!$HAVE_PYTHON_TRUE$ac_delim
 HAVE_PYTHON_FALSE!$HAVE_PYTHON_FALSE$ac_delim
+_ACEOF
+
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
+    break
+  elif $ac_last_try; then
+    { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
+echo "$as_me: error: could not make $CONFIG_STATUS" >&2;}
+   { (exit 1); exit 1; }; }
+  else
+    ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
+  fi
+done
+
+ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed`
+if test -n "$ac_eof"; then
+  ac_eof=`echo "$ac_eof" | sort -nru | sed 1q`
+  ac_eof=`expr $ac_eof + 1`
+fi
+
+cat >>$CONFIG_STATUS <<_ACEOF
+cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
+_ACEOF
+sed '
+s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g
+s/^/s,@/; s/!/@,|#_!!_#|/
+:n
+t n
+s/'"$ac_delim"'$/,g/; t
+s/$/\\/; p
+N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n
+' >>$CONFIG_STATUS <conf$$subs.sed
+rm -f conf$$subs.sed
+cat >>$CONFIG_STATUS <<_ACEOF
+CEOF$ac_eof
+_ACEOF
+
+
+ac_delim='%!_!# '
+for ac_last_try in false false false false false :; do
+  cat >conf$$subs.sed <<_ACEOF
 LIBOBJS!$LIBOBJS$ac_delim
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 84; then
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 2; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
@@ -23608,7 +23969,7 @@
 fi
 
 cat >>$CONFIG_STATUS <<_ACEOF
-cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof
+cat >"\$tmp/subs-3.sed" <<\CEOF$ac_eof
 /@[a-zA-Z_][a-zA-Z_0-9]*@/!b end
 _ACEOF
 sed '
@@ -23871,7 +24232,7 @@
 s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
 s&@INSTALL@&$ac_INSTALL&;t t
 $ac_datarootdir_hack
-" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out
+" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" | sed -f "$tmp/subs-3.sed" >$tmp/out
 
 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
   { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } &&
@@ -24062,27 +24423,21 @@
   else
     continue
   fi
-  grep '^DEP_FILES *= *[^ #]' < "$mf" > /dev/null || continue
-  # Extract the definition of DEP_FILES from the Makefile without
-  # running `make'.
-  DEPDIR=`sed -n -e '/^DEPDIR = / s///p' < "$mf"`
+  # Extract the definition of DEPDIR, am__include, and am__quote
+  # from the Makefile without running `make'.
+  DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
   test -z "$DEPDIR" && continue
+  am__include=`sed -n 's/^am__include = //p' < "$mf"`
+  test -z "am__include" && continue
+  am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
   # When using ansi2knr, U may be empty or an underscore; expand it
-  U=`sed -n -e '/^U = / s///p' < "$mf"`
-  test -d "$dirpart/$DEPDIR" || mkdir "$dirpart/$DEPDIR"
-  # We invoke sed twice because it is the simplest approach to
-  # changing $(DEPDIR) to its actual value in the expansion.
-  for file in `sed -n -e '
-    /^DEP_FILES = .*\\\\$/ {
-      s/^DEP_FILES = //
-      :loop
-	s/\\\\$//
-	p
-	n
-	/\\\\$/ b loop
-      p
-    }
-    /^DEP_FILES = / s/^DEP_FILES = //p' < "$mf" | \
+  U=`sed -n 's/^U = //p' < "$mf"`
+  # Find all dependency output files, they are included files with
+  # $(DEPDIR) in their names.  We invoke sed twice because it is the
+  # simplest approach to changing $(DEPDIR) to its actual value in the
+  # expansion.
+  for file in `sed -n "
+    s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
        sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
     # Make sure the directory exists.
     test -f "$dirpart/$file" && continue
@@ -24160,10 +24515,6 @@
 for file in intltool-extract intltool-merge intltool-update; do
   sed -e "s|@INTLTOOL_EXTRACT@|`pwd`/intltool-extract|g" \
       -e "s|@INTLTOOL_LIBDIR@|${INTLTOOL_LIBDIR}|g" \
-      -e "s|@INTLTOOL_ICONV@|${INTLTOOL_ICONV}|g" \
-      -e "s|@INTLTOOL_MSGFMT@|${INTLTOOL_MSGFMT}|g" \
-      -e "s|@INTLTOOL_MSGMERGE@|${INTLTOOL_MSGMERGE}|g" \
-      -e "s|@INTLTOOL_XGETTEXT@|${INTLTOOL_XGETTEXT}|g" \
       -e "s|@INTLTOOL_PERL@|${INTLTOOL_PERL}|g" \
 	< ${ac_aux_dir}/${file}.in > ${file}.out
   if cmp -s ${file} ${file}.out 2>/dev/null; then
@@ -24242,10 +24593,11 @@
  Host System Type .....: $host
  Install path .........: $prefix
  Preprocessor .........: $CC $CPPFLAGS
- Compiler .............: $CC $CFLAGS $PACKAGE_CFLAGS
- Linker ...............: $CC $LDFLAGS $LIBS $PACKAGE_LIBS
+ Compiler .............: $CC $CFLAGS $LIBGPOD_CFLAGS
+ Linker ...............: $CC $LDFLAGS $LIBS $LIBGPOD_LIBS
  ArtworkDB support ....: $have_gdkpixbuf
  Python bindings ......: $with_python
+ PyGObject support ....: $have_pygobject
 
  Now type 'make' to build $PACKAGE $VERSION,
  and then 'make install' for installation.

Modified: libgpod/branches/upstream/current/configure.ac
===================================================================
--- libgpod/branches/upstream/current/configure.ac	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/configure.ac	2007-11-12 21:03:04 UTC (rev 251)
@@ -10,8 +10,8 @@
 #   LIBGPOD_SO_VERSION - see comments
 #
 LIBGPOD_MAJOR_VERSION=0
-LIBGPOD_MINOR_VERSION=5
-LIBGPOD_MICRO_VERSION=2
+LIBGPOD_MINOR_VERSION=6
+LIBGPOD_MICRO_VERSION=0
 # If you need a modifier for the version number. 
 # Normally empty, but can be used to make "fixup" releases.
 LIBGPOD_EXTRAVERSION=
@@ -24,9 +24,12 @@
 #                 changes to the signature and the semantic)
 #  ? :+1 : ?   == just internal changes
 # CURRENT : REVISION : AGE
-LIBGPOD_SO_VERSION=2:0:0
+LIBGPOD_SO_VERSION=3:0:0
 
 AC_SUBST(LIBGPOD_SO_VERSION)
+AC_SUBST(LIBGPOD_MAJOR_VERSION)
+AC_SUBST(LIBGPOD_MINOR_VERSION)
+AC_SUBST(LIBGPOD_MICRO_VERSION)
 AC_SUBST(LIBGPOD_VERSION)
 
 AM_INIT_AUTOMAKE(libgpod, $LIBGPOD_VERSION)
@@ -51,12 +54,68 @@
 AC_PROG_LN_S
 AC_PROG_MAKE_SET
 AC_PROG_INTLTOOL([0.21])
-AC_CHECK_FUNCS(mremap)
 
-PKG_CHECK_MODULES(LIBGPOD, glib-2.0 >= 2.4.0 gobject-2.0)
+PKG_CHECK_MODULES(LIBGPOD, glib-2.0 >= 2.8.0 gobject-2.0)
 LIBGPOD_CFLAGS="$LIBGPOD_CFLAGS -Wall"
 
 dnl **************************************************
+dnl * expand $libdir 
+dnl * by default, it looks like ${prefix}/lib
+dnl * we want to expand prefix
+dnl **************************************************
+expanded_libdir=`(
+    case $prefix in 
+        NONE) prefix=$ac_default_prefix ;; 
+        *) ;; 
+    esac
+    case $exec_prefix in 
+        NONE) exec_prefix=$prefix ;; 
+        *) ;; 
+    esac
+    eval echo $libdir
+)`
+
+dnl **************************************************
+dnl * sgutils is necessary to get the xml device file from the ipod
+dnl **************************************************
+AC_CHECK_LIB(sgutils, sg_ll_inquiry,
+             [SGUTILS_LIBS="-lsgutils"; have_sgutils=yes], 
+	     have_sgutils=no)
+AC_SUBST(SGUTILS_LIBS)
+AM_CONDITIONAL(HAVE_SGUTILS, test x"$have_sgutils" = xyes)
+
+dnl ***********************************************************************
+dnl * HAL is optional, but is required if you want things to "just work"
+dnl * when a recent iPod is plugged in
+dnl * libgpod by itself doesn't use HAL at all, HAL is just used to build a 
+dnl * helper program which is then installed as a HAL callout
+dnl ***********************************************************************
+AC_ARG_WITH(hal, AC_HELP_STRING([--without-hal],
+        [Disable HAL support]))
+
+AC_ARG_WITH(hal_callouts_dir, AC_HELP_STRING([--with-hal-callouts-dir=DIR],
+	[Directory where HAL expects its callout scripts to be located]), , 
+	with_hal_callouts_dir="${expanded_libdir}/hal")
+HALCALLOUTSDIR="$with_hal_callouts_dir"
+AC_SUBST(HALCALLOUTSDIR)
+
+if test "x$with_hal" != "xno"; then
+  PKG_CHECK_MODULES(HAL, hal >= 0.5 hal < 0.6, enable_hal=yes, enable_hal=no)
+  if test "x$enable_hal" != "xyes" -a "x$with_hal" = "xyes"; then
+      AC_MSG_ERROR([HAL support explicitly requested but HAL couldn't be found])
+  fi
+
+  if test "x$enable_hal" == "xyes"; then
+        AC_DEFINE(HAVE_HAL, 1, [Define if you have HAL support])
+        AC_SUBST(HAL_CFLAGS)
+	AC_SUBST(HAL_LIBS)
+  fi
+fi
+AM_CONDITIONAL(HAVE_HAL, test x"$enable_hal" = xyes)
+
+
+
+dnl **************************************************
 dnl * TagLib is only used by test-rebuild-db 
 dnl **************************************************
 PKG_CHECK_MODULES(TAGLIB, taglib, have_taglib=yes, have_taglib=no)
@@ -90,9 +149,29 @@
 AM_CONDITIONAL(HAVE_GDKPIXBUF, test x"$have_gdkpixbuf" = xyes)
 
 dnl **************************************************
+dnl * PYGOBJECT is optional
+dnl **************************************************
+
+AC_ARG_ENABLE(pygobject, [AC_HELP_STRING([--disable-pygobject],[Python API will lack GdkPixbuf support without PyGOBJECT])], 
+[case "${enableval}" in
+  no) have_pygobject=no ;;
+  *) have_pygobject=yes;;
+esac], have_pygobject=yes)
+AH_TEMPLATE([HAVE_PYGOBJECT], [Whether pygobject is installed, Python API will lack GdkPixbuf support without PyGOBJECT])
+if test x$have_pygobject = xyes; then
+   PKG_CHECK_MODULES(PYGOBJECT, pygobject-2.0 >= 2.8.0, have_pygobject=yes, have_pygobject=no)
+   if test x"$have_pygobject" = xyes; then
+      AC_DEFINE_UNQUOTED(HAVE_PYGOBJECT, 1)
+   fi
+   LIBGPOD_CFLAGS="$LIBGPOD_CFLAGS $PYGOBJECT_CFLAGS"
+   LIBGPOD_LIBS="$LIBGPOD_LIBS $PYGOBJECT_LIBS"
+fi
+AM_CONDITIONAL(HAVE_PYGOBJECT, test x"$have_pygobject" = xyes)
+
+dnl **************************************************
 dnl * internationalization support
 dnl **************************************************
-ALL_LINGUAS="de es fr he it ja sv"
+ALL_LINGUAS="de es fr he it ja ro sv"
 
 GETTEXT_PACKAGE=libgpod
 AC_SUBST(GETTEXT_PACKAGE)
@@ -177,6 +256,7 @@
 m4/Makefile
 po/Makefile.in
 src/Makefile
+tools/Makefile
 tests/Makefile
 libgpod-1.0.pc
 ])
@@ -188,10 +268,11 @@
  Host System Type .....: $host
  Install path .........: $prefix
  Preprocessor .........: $CC $CPPFLAGS
- Compiler .............: $CC $CFLAGS $PACKAGE_CFLAGS
- Linker ...............: $CC $LDFLAGS $LIBS $PACKAGE_LIBS
+ Compiler .............: $CC $CFLAGS $LIBGPOD_CFLAGS
+ Linker ...............: $CC $LDFLAGS $LIBS $LIBGPOD_LIBS
  ArtworkDB support ....: $have_gdkpixbuf
  Python bindings ......: $with_python
+ PyGObject support ....: $have_pygobject
 
  Now type 'make' to build $PACKAGE $VERSION,
  and then 'make install' for installation.

Modified: libgpod/branches/upstream/current/depcomp
===================================================================
--- libgpod/branches/upstream/current/depcomp	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/depcomp	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,10 @@
 #! /bin/sh
-
 # depcomp - compile a program generating dependencies as side-effects
-# Copyright 1999, 2000, 2003 Free Software Foundation, Inc.
 
+scriptversion=2005-07-09.11
+
+# Copyright (C) 1999, 2000, 2003, 2004, 2005 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)
@@ -15,8 +17,8 @@
 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -25,22 +27,45 @@
 
 # Originally written by Alexandre Oliva <oliva at dcc.unicamp.br>.
 
+case $1 in
+  '')
+     echo "$0: No command.  Try \`$0 --help' for more information." 1>&2
+     exit 1;
+     ;;
+  -h | --h*)
+    cat <<\EOF
+Usage: depcomp [--help] [--version] PROGRAM [ARGS]
+
+Run PROGRAMS ARGS to compile a file, generating dependencies
+as side-effects.
+
+Environment variables:
+  depmode     Dependency tracking mode.
+  source      Source file read by `PROGRAMS ARGS'.
+  object      Object file output by `PROGRAMS ARGS'.
+  DEPDIR      directory where to store dependencies.
+  depfile     Dependency file to output.
+  tmpdepfile  Temporary file to use when outputing dependencies.
+  libtool     Whether libtool is used (yes/no).
+
+Report bugs to <bug-automake at gnu.org>.
+EOF
+    exit $?
+    ;;
+  -v | --v*)
+    echo "depcomp $scriptversion"
+    exit $?
+    ;;
+esac
+
 if test -z "$depmode" || test -z "$source" || test -z "$object"; then
   echo "depcomp: Variables source, object and depmode must be set" 1>&2
   exit 1
 fi
-# `libtool' can also be set to `yes' or `no'.
 
-if test -z "$depfile"; then
-   base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'`
-   dir=`echo "$object" | sed 's,/.*$,/,'`
-   if test "$dir" = "$object"; then
-      dir=
-   fi
-   # FIXME: should be _deps on DOS.
-   depfile="$dir.deps/$base"
-fi
-
+# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
+depfile=${depfile-`echo "$object" |
+  sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
 tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
 
 rm -f "$tmpdepfile"
@@ -262,27 +287,43 @@
    base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
 
    if test "$libtool" = yes; then
-      tmpdepfile1="$dir.libs/$base.lo.d"
-      tmpdepfile2="$dir.libs/$base.d"
+      # With Tru64 cc, shared objects can also be used to make a
+      # static library.  This mecanism is used in libtool 1.4 series to
+      # handle both shared and static libraries in a single compilation.
+      # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
+      #
+      # With libtool 1.5 this exception was removed, and libtool now
+      # generates 2 separate objects for the 2 libraries.  These two
+      # compilations output dependencies in in $dir.libs/$base.o.d and
+      # in $dir$base.o.d.  We have to check for both files, because
+      # one of the two compilations can be disabled.  We should prefer
+      # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
+      # automatically cleaned when .libs/ is deleted, while ignoring
+      # the former would cause a distcleancheck panic.
+      tmpdepfile1=$dir.libs/$base.lo.d   # libtool 1.4
+      tmpdepfile2=$dir$base.o.d          # libtool 1.5
+      tmpdepfile3=$dir.libs/$base.o.d    # libtool 1.5
+      tmpdepfile4=$dir.libs/$base.d      # Compaq CCC V6.2-504
       "$@" -Wc,-MD
    else
-      tmpdepfile1="$dir$base.o.d"
-      tmpdepfile2="$dir$base.d"
+      tmpdepfile1=$dir$base.o.d
+      tmpdepfile2=$dir$base.d
+      tmpdepfile3=$dir$base.d
+      tmpdepfile4=$dir$base.d
       "$@" -MD
    fi
 
    stat=$?
    if test $stat -eq 0; then :
    else
-      rm -f "$tmpdepfile1" "$tmpdepfile2"
+      rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
       exit $stat
    fi
 
-   if test -f "$tmpdepfile1"; then
-      tmpdepfile="$tmpdepfile1"
-   else
-      tmpdepfile="$tmpdepfile2"
-   fi
+   for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
+   do
+     test -f "$tmpdepfile" && break
+   done
    if test -f "$tmpdepfile"; then
       sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
       # That's a tab and a space in the [].
@@ -426,7 +467,8 @@
   done
 
   "$@" -E |
-    sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
+    sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+       -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
     sed '$ s: \\$::' > "$tmpdepfile"
   rm -f "$depfile"
   echo "$object : \\" > "$depfile"
@@ -477,3 +519,12 @@
 esac
 
 exit 0
+
+# 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-end: "$"
+# End:

Modified: libgpod/branches/upstream/current/docs/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/docs/Makefile.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# Free Software Foundation, Inc.
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
@@ -13,7 +13,6 @@
 # PARTICULAR PURPOSE.
 
 @SET_MAKE@
-
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
 VPATH = @srcdir@
@@ -21,7 +20,6 @@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 top_builddir = ..
-
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
@@ -35,7 +33,31 @@
 NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
+build_triplet = @build@
 host_triplet = @host@
+subdir = docs
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+	html-recursive info-recursive install-data-recursive \
+	install-exec-recursive install-info-recursive \
+	install-recursive installcheck-recursive installdirs-recursive \
+	pdf-recursive ps-recursive uninstall-info-recursive \
+	uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -80,10 +102,19 @@
 GREP = @GREP@
 GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
 GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
 HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
 HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
 HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
 HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
 HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
 HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
 HTML_DIR = @HTML_DIR@
@@ -97,14 +128,12 @@
 INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
 INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_ICONV = @INTLTOOL_ICONV@
 INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
 INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@
-INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@
 INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
 INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
 INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
 INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
@@ -116,12 +145,14 @@
 INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
 INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@
 INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
 INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 LDFLAGS = @LDFLAGS@
 LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@
 LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
 LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
 LIBGPOD_VERSION = @LIBGPOD_VERSION@
 LIBOBJS = @LIBOBJS@
@@ -149,6 +180,8 @@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
 PYTHON = @PYTHON@
 PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 PYTHON_INCLUDES = @PYTHON_INCLUDES@
@@ -159,6 +192,7 @@
 RANLIB = @RANLIB@
 SED = @SED@
 SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
 SHELL = @SHELL@
 STRIP = @STRIP@
 SWIG = @SWIG@
@@ -178,6 +212,8 @@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -203,6 +239,7 @@
 localedir = @localedir@
 localstatedir = @localstatedir@
 mandir = @mandir@
+mkdir_p = @mkdir_p@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
 pkgpyexecdir = @pkgpyexecdir@
@@ -217,29 +254,39 @@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
 SUBDIRS = reference
-subdir = docs
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-DIST_SOURCES =
-
-RECURSIVE_TARGETS = info-recursive dvi-recursive pdf-recursive \
-	ps-recursive install-info-recursive uninstall-info-recursive \
-	all-recursive install-data-recursive install-exec-recursive \
-	installdirs-recursive install-recursive uninstall-recursive \
-	check-recursive installcheck-recursive
-DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
-DIST_SUBDIRS = $(SUBDIRS)
 all: all-recursive
 
 .SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+$(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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  docs/Makefile'; \
 	cd $(top_srcdir) && \
 	  $(AUTOMAKE) --gnu  docs/Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
-	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
+.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
+
 mostlyclean-libtool:
 	-rm -f *.lo
 
@@ -257,7 +304,13 @@
 #     (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):
-	@set fnord $$MAKEFLAGS; amf=$$2; \
+	@failcom='exit 1'; \
+	for f in x $$MAKEFLAGS; do \
+	  case $$f in \
+	    *=* | --[!k]*);; \
+	    *k*) failcom='fail=yes';; \
+	  esac; \
+	done; \
 	dot_seen=no; \
 	target=`echo $@ | sed s/-recursive//`; \
 	list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -269,7 +322,7 @@
 	    local_target="$$target"; \
 	  fi; \
 	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+	  || eval $$failcom; \
 	done; \
 	if test "$$dot_seen" = "no"; then \
 	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
@@ -277,7 +330,13 @@
 
 mostlyclean-recursive clean-recursive distclean-recursive \
 maintainer-clean-recursive:
-	@set fnord $$MAKEFLAGS; amf=$$2; \
+	@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)' ;; \
@@ -298,7 +357,7 @@
 	    local_target="$$target"; \
 	  fi; \
 	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
-	   || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+	  || eval $$failcom; \
 	done && test -z "$$fail"
 tags-recursive:
 	list='$(SUBDIRS)'; for subdir in $$list; do \
@@ -309,14 +368,6 @@
 	  test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
 	done
 
-ETAGS = etags
-ETAGSFLAGS =
-
-CTAGS = ctags
-CTAGSFLAGS =
-
-tags: TAGS
-
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
@@ -325,19 +376,22 @@
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
 	mkid -fID $$unique
+tags: TAGS
 
 TAGS: tags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
 	tags=; \
 	here=`pwd`; \
-	if (etags --etags-include --version) >/dev/null 2>&1; then \
+	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 && \
+	    test ! -f $$subdir/TAGS || \
 	      tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
 	  fi; \
 	done; \
@@ -347,10 +401,11 @@
 	  done | \
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
-	test -z "$(ETAGS_ARGS)$$tags$$unique" \
-	  || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	     $$tags $$unique
-
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
 ctags: CTAGS
 CTAGS: ctags-recursive $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
@@ -373,11 +428,7 @@
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-top_distdir = ..
-distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
-
 distdir: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
@@ -390,7 +441,7 @@
 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
 	    dir="/$$dir"; \
-	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
 	  else \
 	    dir=''; \
 	  fi; \
@@ -405,15 +456,17 @@
 	    || exit 1; \
 	  fi; \
 	done
-	list='$(SUBDIRS)'; for subdir in $$list; do \
+	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
-	    test -d $(distdir)/$$subdir \
-	    || mkdir $(distdir)/$$subdir \
+	    test -d "$(distdir)/$$subdir" \
+	    || $(mkdir_p) "$(distdir)/$$subdir" \
 	    || exit 1; \
+	    distdir=`$(am__cd) $(distdir) && pwd`; \
+	    top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
 	    (cd $$subdir && \
 	      $(MAKE) $(AM_MAKEFLAGS) \
-	        top_distdir="$(top_distdir)" \
-	        distdir=../$(distdir)/$$subdir \
+	        top_distdir="$$top_distdir" \
+	        distdir="$$distdir/$$subdir" \
 	        distdir) \
 	      || exit 1; \
 	  fi; \
@@ -423,7 +476,6 @@
 all-am: Makefile
 installdirs: installdirs-recursive
 installdirs-am:
-
 install: install-recursive
 install-exec: install-exec-recursive
 install-data: install-data-recursive
@@ -443,7 +495,7 @@
 clean-generic:
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -461,6 +513,8 @@
 
 dvi-am:
 
+html: html-recursive
+
 info: info-recursive
 
 info-am:
@@ -495,22 +549,18 @@
 
 uninstall-info: uninstall-info-recursive
 
-.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am clean \
-	clean-generic clean-libtool clean-recursive ctags \
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+	clean clean-generic clean-libtool clean-recursive ctags \
 	ctags-recursive distclean distclean-generic distclean-libtool \
-	distclean-recursive distclean-tags distdir dvi dvi-am \
-	dvi-recursive info info-am info-recursive install install-am \
-	install-data install-data-am install-data-recursive \
-	install-exec install-exec-am install-exec-recursive \
-	install-info install-info-am install-info-recursive install-man \
-	install-recursive install-strip installcheck installcheck-am \
-	installdirs installdirs-am installdirs-recursive \
-	maintainer-clean maintainer-clean-generic \
-	maintainer-clean-recursive mostlyclean mostlyclean-generic \
-	mostlyclean-libtool mostlyclean-recursive pdf pdf-am \
-	pdf-recursive ps ps-am ps-recursive tags tags-recursive \
-	uninstall uninstall-am uninstall-info-am \
-	uninstall-info-recursive uninstall-recursive
+	distclean-recursive distclean-tags distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-exec install-exec-am install-info \
+	install-info-am install-man install-strip installcheck \
+	installcheck-am installdirs installdirs-am maintainer-clean \
+	maintainer-clean-generic maintainer-clean-recursive \
+	mostlyclean mostlyclean-generic mostlyclean-libtool \
+	mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+	uninstall uninstall-am uninstall-info-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.

Modified: libgpod/branches/upstream/current/docs/reference/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/docs/reference/Makefile.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# Free Software Foundation, Inc.
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
@@ -19,7 +19,6 @@
 ####################################
 # Everything below here is generic #
 ####################################
-
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
 VPATH = @srcdir@
@@ -27,7 +26,6 @@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 top_builddir = ../..
-
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
@@ -41,7 +39,23 @@
 NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
+build_triplet = @build@
 host_triplet = @host@
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
+	$(srcdir)/version.xml.in $(top_srcdir)/gtk-doc.make
+subdir = docs/reference
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES = version.xml
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -86,10 +100,19 @@
 GREP = @GREP@
 GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
 GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
 HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
 HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
 HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
 HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
 HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
 HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
 HTML_DIR = @HTML_DIR@
@@ -103,14 +126,12 @@
 INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
 INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_ICONV = @INTLTOOL_ICONV@
 INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
 INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@
-INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@
 INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
 INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
 INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
 INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
@@ -122,12 +143,14 @@
 INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
 INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@
 INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
 INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 LDFLAGS = @LDFLAGS@
 LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@
 LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
 LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
 LIBGPOD_VERSION = @LIBGPOD_VERSION@
 LIBOBJS = @LIBOBJS@
@@ -155,6 +178,8 @@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
 PYTHON = @PYTHON@
 PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 PYTHON_INCLUDES = @PYTHON_INCLUDES@
@@ -165,6 +190,7 @@
 RANLIB = @RANLIB@
 SED = @SED@
 SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
 SHELL = @SHELL@
 STRIP = @STRIP@
 SWIG = @SWIG@
@@ -184,6 +210,8 @@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -209,6 +237,7 @@
 localedir = @localedir@
 localstatedir = @localstatedir@
 mandir = @mandir@
+mkdir_p = @mkdir_p@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
 pkgpyexecdir = @pkgpyexecdir@
@@ -293,7 +322,6 @@
 INCLUDES = 
 GTKDOC_LIBS = 
 @GTK_DOC_USE_LIBTOOL_FALSE at GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS)
-
 @GTK_DOC_USE_LIBTOOL_TRUE at GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS)
 @GTK_DOC_USE_LIBTOOL_FALSE at GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
 @GTK_DOC_USE_LIBTOOL_TRUE at GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS)
@@ -304,25 +332,17 @@
 # searched for in VPATH/GPATH.
 #
 GPATH = $(srcdir)
-
 TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE)
 
-
 # This includes the standard gtk-doc make rules, copied by gtkdocize.
 
 # Other files to distribute
-EXTRA_DIST = \
-	$(content_files)		\
-	$(HTML_IMAGES)			\
-	$(DOC_MAIN_SGML_FILE)		\
-	$(DOC_MODULE)-sections.txt	\
-	$(DOC_MODULE)-overrides.txt\
-version.xml.in
-
+EXTRA_DIST = $(content_files) $(HTML_IMAGES) $(DOC_MAIN_SGML_FILE) \
+	$(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt \
+	version.xml.in
 DOC_STAMPS = scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
 	   $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
 
-
 SCANOBJ_FILES = \
 	$(DOC_MODULE).args 	 \
 	$(DOC_MODULE).hierarchy  \
@@ -330,25 +350,40 @@
 	$(DOC_MODULE).prerequisites \
 	$(DOC_MODULE).signals
 
-
 CLEANFILES = $(SCANOBJ_FILES) $(DOC_MODULE)-unused.txt $(DOC_STAMPS)
-subdir = docs/reference
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES = version.xml
-DIST_SOURCES =
-DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/gtk-doc.make \
-	Makefile.am version.xml.in
 all: all-am
 
 .SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am $(top_srcdir)/gtk-doc.make $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/gtk-doc.make $(am__configure_deps)
+	@for dep in $?; do \
+	  case '$(am__configure_deps)' in \
+	    *$$dep*) \
+	      cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  docs/reference/Makefile'; \
 	cd $(top_srcdir) && \
 	  $(AUTOMAKE) --gnu  docs/reference/Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
-	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
-version.xml: $(top_builddir)/config.status version.xml.in
+.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
+version.xml: $(top_builddir)/config.status $(srcdir)/version.xml.in
 	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 
 mostlyclean-libtool:
@@ -366,13 +401,9 @@
 ctags: CTAGS
 CTAGS:
 
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-top_distdir = ../..
-distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
-
 distdir: $(DISTFILES)
-	$(mkinstalldirs) $(distdir)/../..
+	$(mkdir_p) $(distdir)/../..
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
 	list='$(DISTFILES)'; for file in $$list; do \
@@ -384,7 +415,7 @@
 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
 	    dir="/$$dir"; \
-	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
 	  else \
 	    dir=''; \
 	  fi; \
@@ -405,7 +436,6 @@
 check-am: all-am
 check: check-am
 all-am: Makefile all-local
-
 installdirs:
 install: install-am
 install-exec: install-exec-am
@@ -427,7 +457,7 @@
 	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -444,6 +474,8 @@
 
 dvi-am:
 
+html: html-am
+
 info: info-am
 
 info-am:
@@ -478,12 +510,13 @@
 uninstall-am: uninstall-info-am uninstall-local
 
 .PHONY: all all-am all-local check check-am clean clean-generic \
-	clean-libtool clean-local distclean distclean-generic \
-	distclean-libtool distdir dvi dvi-am info info-am install \
-	install-am install-data install-data-am install-data-local \
-	install-exec install-exec-am install-info install-info-am \
-	install-man install-strip installcheck installcheck-am \
-	installdirs maintainer-clean maintainer-clean-generic \
+	clean-libtool clean-local dist-hook distclean \
+	distclean-generic distclean-libtool distdir dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-data-local install-exec \
+	install-exec-am install-info install-info-am install-man \
+	install-strip installcheck installcheck-am installdirs \
+	maintainer-clean maintainer-clean-generic \
 	maintainer-clean-local mostlyclean mostlyclean-generic \
 	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
 	uninstall-info-am uninstall-local

Modified: libgpod/branches/upstream/current/docs/reference/html/ch01.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/ch01.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/ch01.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -24,7 +24,7 @@
 </tr></table>
 <div class="chapter" lang="en">
 <div class="titlepage"><div><div><h2 class="title">
-<a name="id2721009"></a>iPod database components</h2></div></div></div>
+<a name="id2510524"></a>iPod database components</h2></div></div></div>
 <div class="toc"><dl>
 <dt>
 <span class="refentrytitle"><a href="libgpod-Tracks.html">Tracks</a></span><span class="refpurpose"> &#8212; Data structure to store metadata about an iPod track</span>

Modified: libgpod/branches/upstream/current/docs/reference/html/index.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/index.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/index.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -35,10 +35,10 @@
 	&#160;&#160;</p></div></div>
 </div>
 </div></div>
-<div><p class="releaseinfo">for libgpod <span>0.5.2</span></p></div>
+<div><p class="releaseinfo">for libgpod <span>0.6.0</span></p></div>
 <div><p class="copyright">Copyright &#169; 2006 Christophe Fergeau</p></div>
 <div><div class="legalnotice">
-<a name="id2725790"></a><p>Permission is granted to copy, distribute and/or modify
+<a name="id2515628"></a><p>Permission is granted to copy, distribute and/or modify
       this document under the terms of the <em class="citetitle">GNU Free
       Documentation License</em>, Version 1.1 or any later
       version published by the Free Software Foundation with no

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Artwork.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Artwork.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Artwork.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Device.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2789163" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2573451" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2816867" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2607850" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Artwork"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2789163"></a><span class="refentrytitle">Artwork</span>
+<a name="id2573451"></a><span class="refentrytitle">Artwork</span>
 </h2>
 <p>Artwork &#8212; Data structure to store iPod artwork (album covers)</p>
 </td>
@@ -50,70 +50,40 @@
 <a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       <a href="libgpod-Artwork.html#itdb-artwork-new">itdb_artwork_new</a>                    (void);
 <a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       <a href="libgpod-Artwork.html#itdb-artwork-duplicate">itdb_artwork_duplicate</a>              (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);
 void                <a href="libgpod-Artwork.html#itdb-artwork-free">itdb_artwork_free</a>                   (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Artwork.html#itdb-artwork-add-thumbnail">itdb_artwork_add_thumbnail</a>          (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
+gboolean            <a href="libgpod-Artwork.html#itdb-artwork-add-thumbnail">itdb_artwork_add_thumbnail</a>          (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          <a href="libgpod-Artwork.html#ItdbThumbType">ItdbThumbType</a> type,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Artwork.html#itdb-artwork-add-thumbnail-from-data">itdb_artwork_add_thumbnail_from_data</a>
+                                                         const gchar *filename,
+                                                         gint rotation,
+                                                         GError **error);
+gboolean            <a href="libgpod-Artwork.html#itdb-artwork-add-thumbnail-from-data">itdb_artwork_add_thumbnail_from_data</a>
                                                         (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          <a href="libgpod-Artwork.html#ItdbThumbType">ItdbThumbType</a> type,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guchar"
->guchar</a> *image_data,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"
->gsize</a> image_data_len,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Artwork.html#itdb-artwork-add-thumbnail-from-pixbuf">itdb_artwork_add_thumbnail_from_pixbuf</a>
+                                                         const guchar *image_data,
+                                                         gsize image_data_len,
+                                                         gint rotation,
+                                                         GError **error);
+gboolean            <a href="libgpod-Artwork.html#itdb-artwork-add-thumbnail-from-pixbuf">itdb_artwork_add_thumbnail_from_pixbuf</a>
                                                         (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          <a href="libgpod-Artwork.html#ItdbThumbType">ItdbThumbType</a> type,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a> pixbuf,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+                                                         gpointer pixbuf,
+                                                         gint rotation,
+                                                         GError **error);
 void                <a href="libgpod-Artwork.html#itdb-artwork-remove-thumbnail">itdb_artwork_remove_thumbnail</a>       (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          <a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);
 void                <a href="libgpod-Artwork.html#itdb-artwork-remove-thumbnails">itdb_artwork_remove_thumbnails</a>      (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);
 <a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         <a href="libgpod-Artwork.html#itdb-artwork-get-thumb-by-type">itdb_artwork_get_thumb_by_type</a>      (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          <a href="libgpod-Artwork.html#ItdbThumbType">ItdbThumbType</a> type);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a>            <a href="libgpod-Artwork.html#itdb-thumb-get-gdk-pixbuf">itdb_thumb_get_gdk_pixbuf</a>           (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+gpointer            <a href="libgpod-Artwork.html#itdb-thumb-get-gdk-pixbuf">itdb_thumb_get_gdk_pixbuf</a>           (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          <a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);
 <a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         <a href="libgpod-Artwork.html#itdb-thumb-duplicate">itdb_thumb_duplicate</a>                (<a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);
 void                <a href="libgpod-Artwork.html#itdb-thumb-free">itdb_thumb_free</a>                     (<a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);
 <a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         <a href="libgpod-Artwork.html#itdb-thumb-new">itdb_thumb_new</a>                      (void);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Artwork.html#itdb-thumb-get-filename">itdb_thumb_get_filename</a>             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+gchar*              <a href="libgpod-Artwork.html#itdb-thumb-get-filename">itdb_thumb_get_filename</a>             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          <a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2816867"></a><h2>Description</h2>
+<a name="id2607850"></a><h2>Description</h2>
 <p>
 These functions and structures are for adding, changing, and removing
 album/track artwork.  For working with photos, see the
@@ -121,11 +91,11 @@
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2816891"></a><h2>Details</h2>
+<a name="id2607874"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2816902"></a><h3>
+<a name="id2607885"></a><h3>
 <a name="Itdb-Artwork"></a>Itdb_Artwork</h3>
-<a class="indexterm" name="id2816914"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2607897"></a><pre class="programlisting">typedef struct {
     GList *thumbnails;     /* list of Itdb_Thumbs */
     guint32 id;            /* Artwork id used by photoalbums, starts at
 			    * 0x40... libgpod will set this on sync. */
@@ -133,10 +103,9 @@
     guint32 rating;        /* Rating from iPhoto * 20 (PhotoDB only) */
     gint32  unk036;
     time_t  creation_date;  /* Date the image file was created
-			      (creation date of image file (Mac type,
+			      (creation date of image file (PhotoDB only) */
+    time_t  digitized_date;/* Date the image was taken (EXIF information,
 			      PhotoDB only) */
-    time_t  digitized_date;/* Date the image was taken (EXIF
-			      information, Mac type, PhotoDB only) */
     guint32 artwork_size;  /* Size in bytes of the original source
 			      image (PhotoDB only -- don't touch in
 			      case of ArtworkDB!) */
@@ -159,9 +128,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2797072"></a><h3>
+<a name="id2592895"></a><h3>
 <a name="Itdb-Thumb"></a>Itdb_Thumb</h3>
-<a class="indexterm" name="id2720239"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2567564"></a><pre class="programlisting">typedef struct {
     ItdbThumbType type;
     gchar   *filename;
     guchar  *image_data;      /* holds the thumbnail data of
@@ -189,15 +158,19 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2780648"></a><h3>
+<a name="id2577225"></a><h3>
 <a name="ItdbThumbType"></a>enum ItdbThumbType</h3>
-<a class="indexterm" name="id2816932"></a><pre class="programlisting">typedef enum { 
-    ITDB_THUMB_COVER_SMALL,
+<a class="indexterm" name="id2599700"></a><pre class="programlisting">typedef enum { 
+    ITDB_THUMB_COVER_SMALL = 0,
     ITDB_THUMB_COVER_LARGE,
     ITDB_THUMB_PHOTO_SMALL,
     ITDB_THUMB_PHOTO_LARGE,
     ITDB_THUMB_PHOTO_FULL_SCREEN,
-    ITDB_THUMB_PHOTO_TV_SCREEN
+    ITDB_THUMB_PHOTO_TV_SCREEN,
+    ITDB_THUMB_COVER_XLARGE,      /* iPhone: cover flow */
+    ITDB_THUMB_COVER_MEDIUM,      /* iPhone: cover view */
+    ITDB_THUMB_COVER_SMEDIUM,     /* iPhone: ??         */
+    ITDB_THUMB_COVER_XSMALL,      /* iPhone: ??         */
 } ItdbThumbType;
 </pre>
 <p>
@@ -206,9 +179,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2815494"></a><h3>
+<a name="id2599724"></a><h3>
 <a name="itdb-artwork-new"></a>itdb_artwork_new ()</h3>
-<a class="indexterm" name="id2815507"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_artwork_new                    (void);</pre>
+<a class="indexterm" name="id2599736"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_artwork_new                    (void);</pre>
 <p>
 Creates a new <a href="libgpod-Artwork.html#Itdb-Artwork"><span class="type">Itdb_Artwork</span></a></p>
 <p>
@@ -226,9 +199,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2815570"></a><h3>
+<a name="id2599799"></a><h3>
 <a name="itdb-artwork-duplicate"></a>itdb_artwork_duplicate ()</h3>
-<a class="indexterm" name="id2815581"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_artwork_duplicate              (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
+<a class="indexterm" name="id2599810"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_artwork_duplicate              (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
 <p>
 Duplicates <em class="parameter"><code>artwork</code></em></p>
 <p>
@@ -252,9 +225,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2815660"></a><h3>
+<a name="id2599889"></a><h3>
 <a name="itdb-artwork-free"></a>itdb_artwork_free ()</h3>
-<a class="indexterm" name="id2815672"></a><pre class="programlisting">void                itdb_artwork_free                   (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
+<a class="indexterm" name="id2599902"></a><pre class="programlisting">void                itdb_artwork_free                   (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
 <p>
 Frees memory used by <em class="parameter"><code>artwork</code></em></p>
 <p>
@@ -271,21 +244,13 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2819315"></a><h3>
+<a name="id2610419"></a><h3>
 <a name="itdb-artwork-add-thumbnail"></a>itdb_artwork_add_thumbnail ()</h3>
-<a class="indexterm" name="id2819326"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_artwork_add_thumbnail          (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
+<a class="indexterm" name="id2610430"></a><pre class="programlisting">gboolean            itdb_artwork_add_thumbnail          (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          <a href="libgpod-Artwork.html#ItdbThumbType">ItdbThumbType</a> type,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+                                                         const gchar *filename,
+                                                         gint rotation,
+                                                         GError **error);</pre>
 <p>
 Appends a thumbnail of type <em class="parameter"><code>type</code></em> to existing thumbnails in <em class="parameter"><code>artwork</code></em>. No 
 data is read from <em class="parameter"><code>filename</code></em> yet, the file will be when <em class="parameter"><code>artwork</code></em> is saved to
@@ -324,9 +289,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -340,25 +303,15 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2819529"></a><h3>
+<a name="id2610634"></a><h3>
 <a name="itdb-artwork-add-thumbnail-from-data"></a>itdb_artwork_add_thumbnail_from_data ()</h3>
-<a class="indexterm" name="id2819541"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_artwork_add_thumbnail_from_data
+<a class="indexterm" name="id2610648"></a><pre class="programlisting">gboolean            itdb_artwork_add_thumbnail_from_data
                                                         (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          <a href="libgpod-Artwork.html#ItdbThumbType">ItdbThumbType</a> type,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guchar"
->guchar</a> *image_data,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"
->gsize</a> image_data_len,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+                                                         const guchar *image_data,
+                                                         gsize image_data_len,
+                                                         gint rotation,
+                                                         GError **error);</pre>
 <p>
 Appends a thumbnail of type <em class="parameter"><code>type</code></em> to existing thumbnails in
 <em class="parameter"><code>artwork</code></em>. No data is processed yet. This will be done when <em class="parameter"><code>artwork</code></em>
@@ -403,9 +356,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -419,22 +370,14 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2822374"></a><h3>
+<a name="id2613470"></a><h3>
 <a name="itdb-artwork-add-thumbnail-from-pixbuf"></a>itdb_artwork_add_thumbnail_from_pixbuf ()</h3>
-<a class="indexterm" name="id2822387"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_artwork_add_thumbnail_from_pixbuf
+<a class="indexterm" name="id2613482"></a><pre class="programlisting">gboolean            itdb_artwork_add_thumbnail_from_pixbuf
                                                         (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          <a href="libgpod-Artwork.html#ItdbThumbType">ItdbThumbType</a> type,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a> pixbuf,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+                                                         gpointer pixbuf,
+                                                         gint rotation,
+                                                         GError **error);</pre>
 <p>
 Appends a thumbnail of type <em class="parameter"><code>type</code></em> to existing thumbnails in <em class="parameter"><code>artwork</code></em>. No 
 data is generated from <em class="parameter"><code>pixbuf</code></em> yet, it will be done when <em class="parameter"><code>artwork</code></em> is saved 
@@ -463,9 +406,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>pixbuf</code></em>&#160;:</span></td>
-<td> <a
-href="/usr/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf.html#GdkPixbuf"
-><span class="type">GdkPixbuf</span></a> to use to create the thumbnail
+<td> <span class="type">GdkPixbuf</span> to use to create the thumbnail
 </td>
 </tr>
 <tr>
@@ -476,9 +417,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -492,9 +431,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2822579"></a><h3>
+<a name="id2613675"></a><h3>
 <a name="itdb-artwork-remove-thumbnail"></a>itdb_artwork_remove_thumbnail ()</h3>
-<a class="indexterm" name="id2822591"></a><pre class="programlisting">void                itdb_artwork_remove_thumbnail       (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
+<a class="indexterm" name="id2613687"></a><pre class="programlisting">void                itdb_artwork_remove_thumbnail       (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          <a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
 <p>
 Removes <em class="parameter"><code>thumb</code></em> from <em class="parameter"><code>artwork</code></em>. The memory used by <em class="parameter"><code>thumb</code></em> is freed.</p>
@@ -519,9 +458,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2822683"></a><h3>
+<a name="id2613779"></a><h3>
 <a name="itdb-artwork-remove-thumbnails"></a>itdb_artwork_remove_thumbnails ()</h3>
-<a class="indexterm" name="id2822695"></a><pre class="programlisting">void                itdb_artwork_remove_thumbnails      (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
+<a class="indexterm" name="id2613791"></a><pre class="programlisting">void                itdb_artwork_remove_thumbnails      (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
 <p>
 Removes all thumbnails from <em class="parameter"><code>artwork</code></em></p>
 <p>
@@ -538,9 +477,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2822751"></a><h3>
+<a name="id2613847"></a><h3>
 <a name="itdb-artwork-get-thumb-by-type"></a>itdb_artwork_get_thumb_by_type ()</h3>
-<a class="indexterm" name="id2822763"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         itdb_artwork_get_thumb_by_type      (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
+<a class="indexterm" name="id2613859"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         itdb_artwork_get_thumb_by_type      (<a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          <a href="libgpod-Artwork.html#ItdbThumbType">ItdbThumbType</a> type);</pre>
 <p>
 Searches <em class="parameter"><code>artwork</code></em> for an <a href="libgpod-Artwork.html#Itdb-Thumb"><span class="type">Itdb_Thumb</span></a> of type <em class="parameter"><code>type</code></em>.</p>
@@ -571,20 +510,14 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2822878"></a><h3>
+<a name="id2613974"></a><h3>
 <a name="itdb-thumb-get-gdk-pixbuf"></a>itdb_thumb_get_gdk_pixbuf ()</h3>
-<a class="indexterm" name="id2822889"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a>            itdb_thumb_get_gdk_pixbuf           (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+<a class="indexterm" name="id2613985"></a><pre class="programlisting">gpointer            itdb_thumb_get_gdk_pixbuf           (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          <a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
 <p>
-Converts <em class="parameter"><code>thumb</code></em> to a <a
-href="/usr/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf.html#GdkPixbuf"
-><span class="type">GdkPixbuf</span></a>.
+Converts <em class="parameter"><code>thumb</code></em> to a <span class="type">GdkPixbuf</span>.
 Since we want to have gdk-pixbuf dependency optional, a generic
-gpointer is returned which you have to cast to a <a
-href="/usr/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf.html#GdkPixbuf"
-><span class="type">GdkPixbuf</span></a> using 
+gpointer is returned which you have to cast to a <span class="type">GdkPixbuf</span> using 
 <code class="function">GDK_PIXBUF()</code> yourself.</p>
 <p>
 
@@ -604,11 +537,7 @@
 </tr>
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
-<td> a <a
-href="/usr/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf.html#GdkPixbuf"
-><span class="type">GdkPixbuf</span></a> that must be unreffed with <a
-href="/usr/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-refcounting.html#gdk-pixbuf-unref"
-><code class="function">gdk_pixbuf_unref()</code></a>
+<td> a <span class="type">GdkPixbuf</span> that must be unreffed with <code class="function">gdk_pixbuf_unref()</code>
 after use, or NULL if the creation of the gdk-pixbuf failed or if 
 libgpod was compiled without gdk-pixbuf support.
 </td>
@@ -618,9 +547,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2823020"></a><h3>
+<a name="id2614116"></a><h3>
 <a name="itdb-thumb-duplicate"></a>itdb_thumb_duplicate ()</h3>
-<a class="indexterm" name="id2823030"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         itdb_thumb_duplicate                (<a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
+<a class="indexterm" name="id2614126"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         itdb_thumb_duplicate                (<a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
 <p>
 Duplicates the data contained in <em class="parameter"><code>thumb</code></em></p>
 <p>
@@ -645,9 +574,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2823108"></a><h3>
+<a name="id2614204"></a><h3>
 <a name="itdb-thumb-free"></a>itdb_thumb_free ()</h3>
-<a class="indexterm" name="id2823118"></a><pre class="programlisting">void                itdb_thumb_free                     (<a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
+<a class="indexterm" name="id2614214"></a><pre class="programlisting">void                itdb_thumb_free                     (<a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
 <p>
 Frees the memory used by <em class="parameter"><code>thumb</code></em></p>
 <p>
@@ -664,9 +593,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2823173"></a><h3>
+<a name="id2614269"></a><h3>
 <a name="itdb-thumb-new"></a>itdb_thumb_new ()</h3>
-<a class="indexterm" name="id2823183"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         itdb_thumb_new                      (void);</pre>
+<a class="indexterm" name="id2614279"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         itdb_thumb_new                      (void);</pre>
 <p>
 Creates a new <a href="libgpod-Artwork.html#Itdb-Thumb"><span class="type">Itdb_Thumb</span></a></p>
 <p>
@@ -684,11 +613,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2823239"></a><h3>
+<a name="id2614335"></a><h3>
 <a name="itdb-thumb-get-filename"></a>itdb_thumb_get_filename ()</h3>
-<a class="indexterm" name="id2823249"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_thumb_get_filename             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+<a class="indexterm" name="id2614345"></a><pre class="programlisting">gchar*              itdb_thumb_get_filename             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          <a href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
 <p>
 Get filename of thumbnail. If it's a thumbnail on the iPod, return
@@ -721,7 +648,7 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2823340"></a><h2>See Also</h2>
+<a name="id2614435"></a><h2>See Also</h2>
 <p>
 <a href="photodb.html" title="Part&#160;II.&#160;Photo database">Photo database</a>
 </p>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Device.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Device.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Device.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="photodb.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2800414" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2562194" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2817033" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2576086" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Device"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2800414"></a><span class="refentrytitle">Device</span>
+<a name="id2562194"></a><span class="refentrytitle">Device</span>
 </h2>
 <p>Device &#8212; Data structure holding information about the iPod (model, mount point, etc.)</p>
 </td>
@@ -48,61 +48,27 @@
 <a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a>*        <a href="libgpod-Device.html#itdb-device-new">itdb_device_new</a>                     (void);
 void                <a href="libgpod-Device.html#itdb-device-free">itdb_device_free</a>                    (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
 void                <a href="libgpod-Device.html#itdb-device-set-mountpoint">itdb_device_set_mountpoint</a>          (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mp);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Device.html#itdb-device-read-sysinfo">itdb_device_read_sysinfo</a>            (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Device.html#itdb-device-get-sysinfo">itdb_device_get_sysinfo</a>             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *field);
+                                                         const gchar *mp);
+gboolean            <a href="libgpod-Device.html#itdb-device-read-sysinfo">itdb_device_read_sysinfo</a>            (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
+gchar*              <a href="libgpod-Device.html#itdb-device-get-sysinfo">itdb_device_get_sysinfo</a>             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+                                                         const gchar *field);
 void                <a href="libgpod-Device.html#itdb-device-set-sysinfo">itdb_device_set_sysinfo</a>             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *field,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *value);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Device.html#itdb-device-write-sysinfo">itdb_device_write_sysinfo</a>           (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+                                                         const gchar *field,
+                                                         const gchar *value);
+gboolean            <a href="libgpod-Device.html#itdb-device-write-sysinfo">itdb_device_write_sysinfo</a>           (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+                                                         GError **error);
 const <a href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* <a href="libgpod-Device.html#itdb-device-get-ipod-info">itdb_device_get_ipod_info</a>          (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Device.html#itdb-device-supports-artwork">itdb_device_supports_artwork</a>        (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Device.html#itdb-device-supports-photo">itdb_device_supports_photo</a>          (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
+gboolean            <a href="libgpod-Device.html#itdb-device-supports-artwork">itdb_device_supports_artwork</a>        (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
+gboolean            <a href="libgpod-Device.html#itdb-device-supports-photo">itdb_device_supports_photo</a>          (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
 const <a href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* <a href="libgpod-Device.html#itdb-info-get-ipod-info-table">itdb_info_get_ipod_info_table</a>      (void);
-const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*        <a href="libgpod-Device.html#itdb-info-get-ipod-generation-string">itdb_info_get_ipod_generation_string</a>
+const gchar*        <a href="libgpod-Device.html#itdb-info-get-ipod-generation-string">itdb_info_get_ipod_generation_string</a>
                                                         (<a href="libgpod-Device.html#Itdb-IpodGeneration">Itdb_IpodGeneration</a> generation);
-const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*        <a href="libgpod-Device.html#itdb-info-get-ipod-model-name-string">itdb_info_get_ipod_model_name_string</a>
+const gchar*        <a href="libgpod-Device.html#itdb-info-get-ipod-model-name-string">itdb_info_get_ipod_model_name_string</a>
                                                         (<a href="libgpod-Device.html#Itdb-IpodModel">Itdb_IpodModel</a> model);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Device.html#itdb-init-ipod">itdb_init_ipod</a>                      (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *model_number,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *ipod_name,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+gboolean            <a href="libgpod-Device.html#itdb-init-ipod">itdb_init_ipod</a>                      (const gchar *mountpoint,
+                                                         const gchar *model_number,
+                                                         const gchar *ipod_name,
+                                                         GError **error);
 enum                <a href="libgpod-Device.html#Itdb-IpodGeneration">Itdb_IpodGeneration</a>;
                     <a href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>;
 enum                <a href="libgpod-Device.html#Itdb-IpodModel">Itdb_IpodModel</a>;
@@ -110,17 +76,17 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2817033"></a><h2>Description</h2>
+<a name="id2576086"></a><h2>Description</h2>
 <p>
 These functions are for reading and setting information about the iPod.
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2817049"></a><h2>Details</h2>
+<a name="id2576102"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2817060"></a><h3>
+<a name="id2576113"></a><h3>
 <a name="Itdb-Device"></a>Itdb_Device</h3>
-<a class="indexterm" name="id2817072"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2576125"></a><pre class="programlisting">typedef struct {
     gchar *mountpoint;    /* mountpoint of the iPod */
     gint   musicdirs;     /* number of /iPod_Control/Music/F.. dirs */
     guint  byte_order;    /* G_LITTLE_ENDIAN "regular" endianness 
@@ -142,9 +108,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2805799"></a><h3>
+<a name="id2577660"></a><h3>
 <a name="itdb-device-new"></a>itdb_device_new ()</h3>
-<a class="indexterm" name="id2781208"></a><pre class="programlisting"><a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a>*        itdb_device_new                     (void);</pre>
+<a class="indexterm" name="id2577781"></a><pre class="programlisting"><a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a>*        itdb_device_new                     (void);</pre>
 <p>
 Creates a new <a href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a> structure</p>
 <p>
@@ -162,9 +128,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2821546"></a><h3>
+<a name="id2612646"></a><h3>
 <a name="itdb-device-free"></a>itdb_device_free ()</h3>
-<a class="indexterm" name="id2821559"></a><pre class="programlisting">void                itdb_device_free                    (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
+<a class="indexterm" name="id2612658"></a><pre class="programlisting">void                itdb_device_free                    (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
 Frees memory used by <em class="parameter"><code>device</code></em></p>
 <p>
@@ -181,12 +147,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2821620"></a><h3>
+<a name="id2612719"></a><h3>
 <a name="itdb-device-set-mountpoint"></a>itdb_device_set_mountpoint ()</h3>
-<a class="indexterm" name="id2821631"></a><pre class="programlisting">void                itdb_device_set_mountpoint          (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mp);</pre>
+<a class="indexterm" name="id2612730"></a><pre class="programlisting">void                itdb_device_set_mountpoint          (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+                                                         const gchar *mp);</pre>
 <p>
 Sets the mountpoint of <em class="parameter"><code>device</code></em> to <em class="parameter"><code>mp</code></em> and update the cached device 
 information (in particular, re-read the SysInfo file)</p>
@@ -211,11 +175,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2821722"></a><h3>
+<a name="id2612821"></a><h3>
 <a name="itdb-device-read-sysinfo"></a>itdb_device_read_sysinfo ()</h3>
-<a class="indexterm" name="id2821733"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_device_read_sysinfo            (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
+<a class="indexterm" name="id2612832"></a><pre class="programlisting">gboolean            itdb_device_read_sysinfo            (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
 Reads the SysInfo file and stores information in device-&gt;sysinfo for
 later use.</p>
@@ -240,14 +202,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2821856"></a><h3>
+<a name="id2576271"></a><h3>
 <a name="itdb-device-get-sysinfo"></a>itdb_device_get_sysinfo ()</h3>
-<a class="indexterm" name="id2821867"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_device_get_sysinfo             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *field);</pre>
+<a class="indexterm" name="id2576282"></a><pre class="programlisting">gchar*              itdb_device_get_sysinfo             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+                                                         const gchar *field);</pre>
 <p>
 Retrieve specified field from the SysInfo file.</p>
 <p>
@@ -269,9 +227,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> the information associated with <em class="parameter"><code>field</code></em>, or NULL if <em class="parameter"><code>field</code></em>
-couldn't be found. <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use
+couldn't be found. <code class="function">g_free()</code> after use
 </td>
 </tr>
 </tbody>
@@ -279,15 +235,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2821977"></a><h3>
+<a name="id2576392"></a><h3>
 <a name="itdb-device-set-sysinfo"></a>itdb_device_set_sysinfo ()</h3>
-<a class="indexterm" name="id2821988"></a><pre class="programlisting">void                itdb_device_set_sysinfo             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *field,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *value);</pre>
+<a class="indexterm" name="id2576403"></a><pre class="programlisting">void                itdb_device_set_sysinfo             (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+                                                         const gchar *field,
+                                                         const gchar *value);</pre>
 <p>
 Set specified field. It can later be written to the iPod using
 <a href="libgpod-Device.html#itdb-device-write-sysinfo"><code class="function">itdb_device_write_sysinfo()</code></a></p>
@@ -317,14 +269,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824188"></a><h3>
+<a name="id2615294"></a><h3>
 <a name="itdb-device-write-sysinfo"></a>itdb_device_write_sysinfo ()</h3>
-<a class="indexterm" name="id2824198"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_device_write_sysinfo           (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2615304"></a><pre class="programlisting">gboolean            itdb_device_write_sysinfo           (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+                                                         GError **error);</pre>
 <p>
 Fills the SysInfo file with information in device-&gt;sysinfo. Note:
 no directories are created if not already existent.</p>
@@ -341,9 +289,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -356,9 +302,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824286"></a><h3>
+<a name="id2615392"></a><h3>
 <a name="itdb-device-get-ipod-info"></a>itdb_device_get_ipod_info ()</h3>
-<a class="indexterm" name="id2824297"></a><pre class="programlisting">const <a href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* itdb_device_get_ipod_info          (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
+<a class="indexterm" name="id2615403"></a><pre class="programlisting">const <a href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* itdb_device_get_ipod_info          (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
 Retrieve the <a href="libgpod-Device.html#Itdb-IpodInfo"><span class="type">Itdb_IpodInfo</span></a> entry for this iPod</p>
 <p>
@@ -382,11 +328,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824370"></a><h3>
+<a name="id2615476"></a><h3>
 <a name="itdb-device-supports-artwork"></a>itdb_device_supports_artwork ()</h3>
-<a class="indexterm" name="id2824380"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_device_supports_artwork        (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
+<a class="indexterm" name="id2615488"></a><pre class="programlisting">gboolean            itdb_device_supports_artwork        (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
 Indicates whether <em class="parameter"><code>device</code></em> can display artwork or not. When dealing
 with a non-art capable ipod, no artwork data will be written to the
@@ -412,11 +356,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824453"></a><h3>
+<a name="id2615562"></a><h3>
 <a name="itdb-device-supports-photo"></a>itdb_device_supports_photo ()</h3>
-<a class="indexterm" name="id2824464"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_device_supports_photo          (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
+<a class="indexterm" name="id2615573"></a><pre class="programlisting">gboolean            itdb_device_supports_photo          (<a href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
 Indicates whether <em class="parameter"><code>device</code></em> can display photos or not.</p>
 <p>
@@ -440,9 +382,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824534"></a><h3>
+<a name="id2615643"></a><h3>
 <a name="itdb-info-get-ipod-info-table"></a>itdb_info_get_ipod_info_table ()</h3>
-<a class="indexterm" name="id2824547"></a><pre class="programlisting">const <a href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* itdb_info_get_ipod_info_table      (void);</pre>
+<a class="indexterm" name="id2615656"></a><pre class="programlisting">const <a href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* itdb_info_get_ipod_info_table      (void);</pre>
 <p>
 Return a pointer to the start of valid iPod model descriptions,
 which is an array of <a href="libgpod-Device.html#Itdb-IpodInfo"><span class="type">Itdb_IpodInfo</span></a> entries.</p>
@@ -460,11 +402,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824598"></a><h3>
+<a name="id2615707"></a><h3>
 <a name="itdb-info-get-ipod-generation-string"></a>itdb_info_get_ipod_generation_string ()</h3>
-<a class="indexterm" name="id2824611"></a><pre class="programlisting">const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*        itdb_info_get_ipod_generation_string
+<a class="indexterm" name="id2615720"></a><pre class="programlisting">const gchar*        itdb_info_get_ipod_generation_string
                                                         (<a href="libgpod-Device.html#Itdb-IpodGeneration">Itdb_IpodGeneration</a> generation);</pre>
 <p>
 Return the iPod's generic generation name, like "First Generation",
@@ -483,9 +423,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> a pointer to the generation name. This is a static
-string and must not be <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a>d.
+string and must not be <code class="function">g_free()</code>d.
 </td>
 </tr>
 </tbody>
@@ -493,11 +431,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824685"></a><h3>
+<a name="id2615794"></a><h3>
 <a name="itdb-info-get-ipod-model-name-string"></a>itdb_info_get_ipod_model_name_string ()</h3>
-<a class="indexterm" name="id2824698"></a><pre class="programlisting">const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*        itdb_info_get_ipod_model_name_string
+<a class="indexterm" name="id2615806"></a><pre class="programlisting">const gchar*        itdb_info_get_ipod_model_name_string
                                                         (<a href="libgpod-Device.html#Itdb-IpodModel">Itdb_IpodModel</a> model);</pre>
 <p>
 Return the iPod's generic model name, like "Color", "Nano"...</p>
@@ -515,9 +451,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> a pointer to the model name. This is a static string
-and must not be <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a>d.
+and must not be <code class="function">g_free()</code>d.
 </td>
 </tr>
 </tbody>
@@ -525,22 +459,12 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824771"></a><h3>
+<a name="id2615880"></a><h3>
 <a name="itdb-init-ipod"></a>itdb_init_ipod ()</h3>
-<a class="indexterm" name="id2824781"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_init_ipod                      (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *model_number,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *ipod_name,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2615890"></a><pre class="programlisting">gboolean            itdb_init_ipod                      (const gchar *mountpoint,
+                                                         const gchar *model_number,
+                                                         const gchar *ipod_name,
+                                                         GError **error);</pre>
 <p>
 Initialise an iPod device from scratch. The function attempts to
 create a blank database, complete with master playlist and device
@@ -570,9 +494,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td>        return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td>        return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -586,17 +508,31 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824906"></a><h3>
+<a name="id2616015"></a><h3>
 <a name="Itdb-IpodGeneration"></a>enum Itdb_IpodGeneration</h3>
-<a class="indexterm" name="id2824916"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2616025"></a><pre class="programlisting">typedef enum {
     ITDB_IPOD_GENERATION_UNKNOWN,
     ITDB_IPOD_GENERATION_FIRST,
     ITDB_IPOD_GENERATION_SECOND,
     ITDB_IPOD_GENERATION_THIRD,
     ITDB_IPOD_GENERATION_FOURTH,
+    ITDB_IPOD_GENERATION_PHOTO,
+    ITDB_IPOD_GENERATION_MOBILE,
+    ITDB_IPOD_GENERATION_MINI_1,
+    ITDB_IPOD_GENERATION_MINI_2,
+    ITDB_IPOD_GENERATION_SHUFFLE_1,
+    ITDB_IPOD_GENERATION_SHUFFLE_2,
+    ITDB_IPOD_GENERATION_SHUFFLE_3,
+    ITDB_IPOD_GENERATION_NANO_1,
+    ITDB_IPOD_GENERATION_NANO_2,
+    ITDB_IPOD_GENERATION_NANO_3,
+    ITDB_IPOD_GENERATION_VIDEO_1,
+    ITDB_IPOD_GENERATION_VIDEO_2,
+    ITDB_IPOD_GENERATION_CLASSIC_1,
+    ITDB_IPOD_GENERATION_TOUCH_1,
+    /* The following 2 are no longer in use and should be removed */
     ITDB_IPOD_GENERATION_FIFTH,
     ITDB_IPOD_GENERATION_SIXTH,
-    ITDB_IPOD_GENERATION_MOBILE
 } Itdb_IpodGeneration;
 </pre>
 <p>
@@ -605,9 +541,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824935"></a><h3>
+<a name="id2616052"></a><h3>
 <a name="Itdb-IpodInfo"></a>Itdb_IpodInfo</h3>
-<a class="indexterm" name="id2824946"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2616063"></a><pre class="programlisting">typedef struct {
     /* model_number is abbreviated: if the first character is not
        numeric, it is ommited. e.g. "MA350 -&gt; A350", "M9829 -&gt; 9829" */
     const gchar *model_number;
@@ -634,9 +570,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2824974"></a><h3>
+<a name="id2616091"></a><h3>
 <a name="Itdb-IpodModel"></a>enum Itdb_IpodModel</h3>
-<a class="indexterm" name="id2824984"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2616102"></a><pre class="programlisting">typedef enum {
     ITDB_IPOD_MODEL_INVALID,
     ITDB_IPOD_MODEL_UNKNOWN,
     ITDB_IPOD_MODEL_COLOR,
@@ -658,7 +594,18 @@
     ITDB_IPOD_MODEL_NANO_SILVER,
     ITDB_IPOD_MODEL_NANO_BLUE,
     ITDB_IPOD_MODEL_NANO_GREEN,
-    ITDB_IPOD_MODEL_NANO_PINK
+    ITDB_IPOD_MODEL_NANO_PINK,
+    ITDB_IPOD_MODEL_NANO_RED,
+    ITDB_IPOD_MODEL_IPHONE_1,
+    ITDB_IPOD_MODEL_SHUFFLE_SILVER,
+    ITDB_IPOD_MODEL_SHUFFLE_PINK,
+    ITDB_IPOD_MODEL_SHUFFLE_BLUE,
+    ITDB_IPOD_MODEL_SHUFFLE_GREEN,
+    ITDB_IPOD_MODEL_SHUFFLE_ORANGE,
+    ITDB_IPOD_MODEL_SHUFFLE_PURPLE,
+    ITDB_IPOD_MODEL_CLASSIC_SILVER,
+    ITDB_IPOD_MODEL_CLASSIC_BLACK,
+    ITDB_IPOD_MODEL_TOUCH_BLACK,
 } Itdb_IpodModel;
 </pre>
 <p>
@@ -667,14 +614,15 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2825010"></a><h3>
+<a name="id2616134"></a><h3>
 <a name="Itdb-ArtworkFormat"></a>Itdb_ArtworkFormat</h3>
-<a class="indexterm" name="id2825020"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2616144"></a><pre class="programlisting">typedef struct {
 	ItdbThumbType type;
 	gint16 width;
 	gint16 height;
 	gint16 correlation_id;
         ItdbThumbFormat format;
+        gint32 padding;
 } Itdb_ArtworkFormat;
 </pre>
 <p>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-File-handling-functions.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-File-handling-functions.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-File-handling-functions.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Time-handling.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2719866" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2567376" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2806422" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2597516" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-File-handling-functions"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2719866"></a><span class="refentrytitle">File handling functions</span>
+<a name="id2567376"></a><span class="refentrytitle">File handling functions</span>
 </h2>
 <p>File handling functions &#8212; Managing files on the iPod</p>
 </td>
@@ -44,58 +44,32 @@
 
 
 
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-File-handling-functions.html#itdb-cp-track-to-ipod">itdb_cp_track_to_ipod</a>               (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-void                <a href="libgpod-File-handling-functions.html#itdb-filename-fs2ipod">itdb_filename_fs2ipod</a>               (<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename);
-void                <a href="libgpod-File-handling-functions.html#itdb-filename-ipod2fs">itdb_filename_ipod2fs</a>               (<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *ipod_file);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-File-handling-functions.html#itdb-filename-on-ipod">itdb_filename_on_ipod</a>               (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a>                <a href="libgpod-File-handling-functions.html#itdb-musicdirs-number">itdb_musicdirs_number</a>               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-File-handling-functions.html#itdb-rename-files">itdb_rename_files</a>                   (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mp,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+gboolean            <a href="libgpod-File-handling-functions.html#itdb-cp-track-to-ipod">itdb_cp_track_to_ipod</a>               (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
+                                                         const gchar *filename,
+                                                         GError **error);
+void                <a href="libgpod-File-handling-functions.html#itdb-filename-fs2ipod">itdb_filename_fs2ipod</a>               (gchar *filename);
+void                <a href="libgpod-File-handling-functions.html#itdb-filename-ipod2fs">itdb_filename_ipod2fs</a>               (gchar *ipod_file);
+gchar*              <a href="libgpod-File-handling-functions.html#itdb-filename-on-ipod">itdb_filename_on_ipod</a>               (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);
+gint                <a href="libgpod-File-handling-functions.html#itdb-musicdirs-number">itdb_musicdirs_number</a>               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
+gboolean            <a href="libgpod-File-handling-functions.html#itdb-rename-files">itdb_rename_files</a>                   (const gchar *mp,
+                                                         GError **error);
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2806422"></a><h2>Description</h2>
+<a name="id2597516"></a><h2>Description</h2>
 <p>
 These functions are for copying, renaming, and getting information about the
 files and directories on the iPod
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2806440"></a><h2>Details</h2>
+<a name="id2597534"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2806450"></a><h3>
+<a name="id2597544"></a><h3>
 <a name="itdb-cp-track-to-ipod"></a>itdb_cp_track_to_ipod ()</h3>
-<a class="indexterm" name="id2806462"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_cp_track_to_ipod               (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2597556"></a><pre class="programlisting">gboolean            itdb_cp_track_to_ipod               (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
+                                                         const gchar *filename,
+                                                         GError **error);</pre>
 <p>
 Copy one track to the iPod. The PC filename is <em class="parameter"><code>filename</code></em>
 and is taken literally.
@@ -142,9 +116,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -158,11 +130,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2804328"></a><h3>
+<a name="id2595423"></a><h3>
 <a name="itdb-filename-fs2ipod"></a>itdb_filename_fs2ipod ()</h3>
-<a class="indexterm" name="id2804339"></a><pre class="programlisting">void                itdb_filename_fs2ipod               (<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename);</pre>
+<a class="indexterm" name="id2595434"></a><pre class="programlisting">void                itdb_filename_fs2ipod               (gchar *filename);</pre>
 <p>
 Convert string from casual PC file name to iPod iTunesDB format using ':' 
 instead of G_DIR_SEPARATOR_S (ie slashes on Unix-like systems). <em class="parameter"><code>ipod_file</code></em>
@@ -181,11 +151,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2804398"></a><h3>
+<a name="id2595493"></a><h3>
 <a name="itdb-filename-ipod2fs"></a>itdb_filename_ipod2fs ()</h3>
-<a class="indexterm" name="id2804409"></a><pre class="programlisting">void                itdb_filename_ipod2fs               (<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *ipod_file);</pre>
+<a class="indexterm" name="id2595504"></a><pre class="programlisting">void                itdb_filename_ipod2fs               (gchar *ipod_file);</pre>
 <p>
 Convert string from from iPod iTunesDB format to casual PC file name
 using G_DIR_SEPARATOR (ie slashes on Unix-like systems) instead of ':'.
@@ -204,11 +172,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2804468"></a><h3>
+<a name="id2595563"></a><h3>
 <a name="itdb-filename-on-ipod"></a>itdb_filename_on_ipod ()</h3>
-<a class="indexterm" name="id2804479"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_filename_on_ipod               (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
+<a class="indexterm" name="id2595574"></a><pre class="programlisting">gchar*              itdb_filename_on_ipod               (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Return the full iPod filename as stored in <em class="parameter"><code>track</code></em>.
 </p>
@@ -234,9 +200,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> full filename to <em class="parameter"><code>track</code></em> on the iPod or NULL if no
-filename is set in <em class="parameter"><code>track</code></em>. Must be freed with <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use.
+filename is set in <em class="parameter"><code>track</code></em>. Must be freed with <code class="function">g_free()</code> after use.
 </td>
 </tr>
 </tbody>
@@ -244,11 +208,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2799573"></a><h3>
+<a name="id2590668"></a><h3>
 <a name="itdb-musicdirs-number"></a>itdb_musicdirs_number ()</h3>
-<a class="indexterm" name="id2799584"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a>                itdb_musicdirs_number               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2590679"></a><pre class="programlisting">gint                itdb_musicdirs_number               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Determine the number of F.. directories in iPod_Control/Music.
 </p>
@@ -277,16 +239,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2799659"></a><h3>
+<a name="id2590755"></a><h3>
 <a name="itdb-rename-files"></a>itdb_rename_files ()</h3>
-<a class="indexterm" name="id2799672"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_rename_files                   (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mp,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2590767"></a><pre class="programlisting">gboolean            itdb_rename_files                   (const gchar *mp,
+                                                         GError **error);</pre>
 <p>
 Renames/removes some files on the iPod (Playcounts, OTG
 semaphore). May have to be called if you write the iTunesDB not
@@ -305,9 +261,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Low-level-functions.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Low-level-functions.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Low-level-functions.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="ch01.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2784659" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2573162" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2776600" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2597297" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Low-level-functions"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2784659"></a><span class="refentrytitle">Low-level functions</span>
+<a name="id2573162"></a><span class="refentrytitle">Low-level functions</span>
 </h2>
 <p>Low-level functions &#8212; Low-level functions which shouldn't be needed in normal situations</p>
 </td>
@@ -44,160 +44,58 @@
 
 
 
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-control-dir">itdb_get_control_dir</a>                (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-itunes-dir">itdb_get_itunes_dir</a>                 (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-music-dir">itdb_get_music_dir</a>                  (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-artwork-dir">itdb_get_artwork_dir</a>                (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-device-dir">itdb_get_device_dir</a>                 (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-photos-dir">itdb_get_photos_dir</a>                 (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-itunesdb-path">itdb_get_itunesdb_path</a>              (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-itunessd-path">itdb_get_itunessd_path</a>              (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-artworkdb-path">itdb_get_artworkdb_path</a>             (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-photodb-path">itdb_get_photodb_path</a>               (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-photos-thumb-dir">itdb_get_photos_thumb_dir</a>           (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-get-path">itdb_get_path</a>                       (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *dir,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *file);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-resolve-path">itdb_resolve_path</a>                   (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *root,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> * const *components);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Low-level-functions.html#itdb-shuffle-write">itdb_shuffle_write</a>                  (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Low-level-functions.html#itdb-shuffle-write-file">itdb_shuffle_write_file</a>             (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Low-level-functions.html#itdb-cp">itdb_cp</a>                             (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *from_file,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *to_file,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a href="libgpod-Low-level-functions.html#itdb-cp-get-dest-filename">itdb_cp_get_dest_filename</a>           (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-control-dir">itdb_get_control_dir</a>                (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-itunes-dir">itdb_get_itunes_dir</a>                 (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-music-dir">itdb_get_music_dir</a>                  (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-artwork-dir">itdb_get_artwork_dir</a>                (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-device-dir">itdb_get_device_dir</a>                 (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-photos-dir">itdb_get_photos_dir</a>                 (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-itunesdb-path">itdb_get_itunesdb_path</a>              (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-itunessd-path">itdb_get_itunessd_path</a>              (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-artworkdb-path">itdb_get_artworkdb_path</a>             (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-photodb-path">itdb_get_photodb_path</a>               (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-photos-thumb-dir">itdb_get_photos_thumb_dir</a>           (const gchar *mountpoint);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-get-path">itdb_get_path</a>                       (const gchar *dir,
+                                                         const gchar *file);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-resolve-path">itdb_resolve_path</a>                   (const gchar *root,
+                                                         const gchar * const *components);
+gboolean            <a href="libgpod-Low-level-functions.html#itdb-shuffle-write">itdb_shuffle_write</a>                  (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         GError **error);
+gboolean            <a href="libgpod-Low-level-functions.html#itdb-shuffle-write-file">itdb_shuffle_write_file</a>             (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         const gchar *filename,
+                                                         GError **error);
+gboolean            <a href="libgpod-Low-level-functions.html#itdb-cp">itdb_cp</a>                             (const gchar *from_file,
+                                                         const gchar *to_file,
+                                                         GError **error);
+gchar*              <a href="libgpod-Low-level-functions.html#itdb-cp-get-dest-filename">itdb_cp_get_dest_filename</a>           (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
+                                                         const gchar *mountpoint,
+                                                         const gchar *filename,
+                                                         GError **error);
 <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         <a href="libgpod-Low-level-functions.html#itdb-cp-finalize">itdb_cp_finalize</a>                    (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *dest_filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      <a href="libgpod-Low-level-functions.html#itdb-parse-file">itdb_parse_file</a>                     (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Low-level-functions.html#itdb-write-file">itdb_write_file</a>                     (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+                                                         const gchar *mountpoint,
+                                                         const gchar *dest_filename,
+                                                         GError **error);
+<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      <a href="libgpod-Low-level-functions.html#itdb-parse-file">itdb_parse_file</a>                     (const gchar *filename,
+                                                         GError **error);
+gboolean            <a href="libgpod-Low-level-functions.html#itdb-write-file">itdb_write_file</a>                     (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         const gchar *filename,
+                                                         GError **error);
 <a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      <a href="libgpod-Low-level-functions.html#itdb-duplicate">itdb_duplicate</a>                      (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2776600"></a><h2>Description</h2>
+<a name="id2597297"></a><h2>Description</h2>
 <p>
 These functions are not normally needed but are avalable to allow for finer
 control over the iPod database.
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2776617"></a><h2>Details</h2>
+<a name="id2597315"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2776628"></a><h3>
+<a name="id2597326"></a><h3>
 <a name="itdb-get-control-dir"></a>itdb_get_control_dir ()</h3>
-<a class="indexterm" name="id2776639"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_control_dir                (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2597337"></a><pre class="programlisting">gchar*              itdb_get_control_dir                (const gchar *mountpoint);</pre>
 <p>
 Get the i*_Control directory. Observed values are 'iPod_Control'
 for standard iPods and 'iTunes/iTunes_Control' for mobile
@@ -216,9 +114,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> path to the control dir or NULL of non-existent. Must
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use.
+<code class="function">g_free()</code> after use.
 </td>
 </tr>
 </tbody>
@@ -226,13 +122,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2770876"></a><h3>
+<a name="id2595061"></a><h3>
 <a name="itdb-get-itunes-dir"></a>itdb_get_itunes_dir ()</h3>
-<a class="indexterm" name="id2770889"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_itunes_dir                 (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2595073"></a><pre class="programlisting">gchar*              itdb_get_itunes_dir                 (const gchar *mountpoint);</pre>
 <p>
 Retrieve the iTunes directory (containing the iTunesDB) by first
 calling <a href="libgpod-Low-level-functions.html#itdb-get-control-dir"><code class="function">itdb_get_control_dir()</code></a> and then adding 'iTunes'</p>
@@ -250,9 +142,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> path to the iTunes directory or NULL of non-existent.
-Must <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use.
+Must <code class="function">g_free()</code> after use.
 </td>
 </tr>
 </tbody>
@@ -260,13 +150,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2770969"></a><h3>
+<a name="id2595153"></a><h3>
 <a name="itdb-get-music-dir"></a>itdb_get_music_dir ()</h3>
-<a class="indexterm" name="id2770981"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_music_dir                  (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2595166"></a><pre class="programlisting">gchar*              itdb_get_music_dir                  (const gchar *mountpoint);</pre>
 <p>
 Retrieve the Music directory (containing the Fnn dirs) by first
 calling <a href="libgpod-Low-level-functions.html#itdb-get-control-dir"><code class="function">itdb_get_control_dir()</code></a> and then adding 'Music'</p>
@@ -284,9 +170,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> path to the Music directory or NULL of
-non-existent. Must <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use.
+non-existent. Must <code class="function">g_free()</code> after use.
 </td>
 </tr>
 </tbody>
@@ -294,13 +178,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2771061"></a><h3>
+<a name="id2595246"></a><h3>
 <a name="itdb-get-artwork-dir"></a>itdb_get_artwork_dir ()</h3>
-<a class="indexterm" name="id2771072"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_artwork_dir                (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2595257"></a><pre class="programlisting">gchar*              itdb_get_artwork_dir                (const gchar *mountpoint);</pre>
 <p>
 Retrieve the Artwork directory (containing the ArtworDB) by
 first calling <a href="libgpod-Low-level-functions.html#itdb-get-control-dir"><code class="function">itdb_get_control_dir()</code></a> and then adding 'Artwork'</p>
@@ -318,9 +198,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> path to the Artwork directory or NULL of
-non-existent. Must <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use.
+non-existent. Must <code class="function">g_free()</code> after use.
 </td>
 </tr>
 </tbody>
@@ -328,13 +206,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811831"></a><h3>
+<a name="id2602927"></a><h3>
 <a name="itdb-get-device-dir"></a>itdb_get_device_dir ()</h3>
-<a class="indexterm" name="id2811841"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_device_dir                 (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2602937"></a><pre class="programlisting">gchar*              itdb_get_device_dir                 (const gchar *mountpoint);</pre>
 <p>
 Retrieve the Device directory (containing the SysInfo file) by
 first calling <a href="libgpod-Low-level-functions.html#itdb-get-control-dir"><code class="function">itdb_get_control_dir()</code></a> and then adding 'Device'</p>
@@ -352,9 +226,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> path to the Device directory or NULL of
-non-existent. Must <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use.
+non-existent. Must <code class="function">g_free()</code> after use.
 </td>
 </tr>
 </tbody>
@@ -362,13 +234,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811914"></a><h3>
+<a name="id2603010"></a><h3>
 <a name="itdb-get-photos-dir"></a>itdb_get_photos_dir ()</h3>
-<a class="indexterm" name="id2811924"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_photos_dir                 (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2603020"></a><pre class="programlisting">gchar*              itdb_get_photos_dir                 (const gchar *mountpoint);</pre>
 <p>
 Retrieve the Photo directory by
 first calling <a href="libgpod-Low-level-functions.html#itdb-get-control-dir"><code class="function">itdb_get_control_dir()</code></a> and then adding 'Photos'</p>
@@ -386,9 +254,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> path to the Artwork directory or NULL of
-non-existent. Must <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use.
+non-existent. Must <code class="function">g_free()</code> after use.
 </td>
 </tr>
 </tbody>
@@ -396,13 +262,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812000"></a><h3>
+<a name="id2603095"></a><h3>
 <a name="itdb-get-itunesdb-path"></a>itdb_get_itunesdb_path ()</h3>
-<a class="indexterm" name="id2812011"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_itunesdb_path              (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2603106"></a><pre class="programlisting">gchar*              itdb_get_itunesdb_path              (const gchar *mountpoint);</pre>
 <p>
 Retrieve a path to the iTunesDB</p>
 <p>
@@ -418,9 +280,7 @@
 </tr>
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
-<td> path to the iTunesDB or NULL if non-existent. Must <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a>
+<td> path to the iTunesDB or NULL if non-existent. Must <code class="function">g_free()</code>
 after use.
 </td>
 </tr>
@@ -429,13 +289,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812081"></a><h3>
+<a name="id2603176"></a><h3>
 <a name="itdb-get-itunessd-path"></a>itdb_get_itunessd_path ()</h3>
-<a class="indexterm" name="id2812092"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_itunessd_path              (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2603187"></a><pre class="programlisting">gchar*              itdb_get_itunessd_path              (const gchar *mountpoint);</pre>
 <p>
 Retrieve a path to the iTunesSD</p>
 <p>
@@ -451,9 +307,7 @@
 </tr>
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
-<td> path to the iTunesSD or NULL if non-existent. Must <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a>
+<td> path to the iTunesSD or NULL if non-existent. Must <code class="function">g_free()</code>
 after use.
 </td>
 </tr>
@@ -462,13 +316,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812163"></a><h3>
+<a name="id2603257"></a><h3>
 <a name="itdb-get-artworkdb-path"></a>itdb_get_artworkdb_path ()</h3>
-<a class="indexterm" name="id2812174"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_artworkdb_path             (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2603268"></a><pre class="programlisting">gchar*              itdb_get_artworkdb_path             (const gchar *mountpoint);</pre>
 <p>
 Retrieve a path to the ArtworkDB</p>
 <p>
@@ -484,9 +334,7 @@
 </tr>
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
-<td> path to the ArtworkDB or NULL if non-existent. Must <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> 
+<td> path to the ArtworkDB or NULL if non-existent. Must <code class="function">g_free()</code> 
 after use.
 </td>
 </tr>
@@ -495,13 +343,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812244"></a><h3>
+<a name="id2603339"></a><h3>
 <a name="itdb-get-photodb-path"></a>itdb_get_photodb_path ()</h3>
-<a class="indexterm" name="id2812256"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_photodb_path               (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2603350"></a><pre class="programlisting">gchar*              itdb_get_photodb_path               (const gchar *mountpoint);</pre>
 <p>
 Retrieve a path to the Photo DB</p>
 <p>
@@ -518,9 +362,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> path to the PhotoDB or NULL if non-existent. Must
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use.
+<code class="function">g_free()</code> after use.
 </td>
 </tr>
 </tbody>
@@ -528,13 +370,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812326"></a><h3>
+<a name="id2603421"></a><h3>
 <a name="itdb-get-photos-thumb-dir"></a>itdb_get_photos_thumb_dir ()</h3>
-<a class="indexterm" name="id2812338"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_photos_thumb_dir           (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2603433"></a><pre class="programlisting">gchar*              itdb_get_photos_thumb_dir           (const gchar *mountpoint);</pre>
 <p>
 Retrieve the Photo Thumbnail directory by
 first calling <a href="libgpod-Low-level-functions.html#itdb-get-control-dir"><code class="function">itdb_get_control_dir()</code></a> and then adding 'Photos/Thumbs'</p>
@@ -552,9 +390,7 @@
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 <td> path to the Artwork directory or NULL of
-non-existent. Must <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use.
+non-existent. Must <code class="function">g_free()</code> after use.
 </td>
 </tr>
 </tbody>
@@ -562,16 +398,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812418"></a><h3>
+<a name="id2603513"></a><h3>
 <a name="itdb-get-path"></a>itdb_get_path ()</h3>
-<a class="indexterm" name="id2812431"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_get_path                       (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *dir,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *file);</pre>
+<a class="indexterm" name="id2603525"></a><pre class="programlisting">gchar*              itdb_get_path                       (const gchar *dir,
+                                                         const gchar *file);</pre>
 <p>
 Retrieve a path to the <em class="parameter"><code>file</code></em> in <em class="parameter"><code>dir</code></em></p>
 <p>
@@ -592,9 +422,7 @@
 </tr>
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
-<td> path to the <em class="parameter"><code>file</code></em> or NULL if non-existent. Must be <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a>'d 
+<td> path to the <em class="parameter"><code>file</code></em> or NULL if non-existent. Must be <code class="function">g_free()</code>'d 
 after use.
 </td>
 </tr>
@@ -603,16 +431,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812539"></a><h3>
+<a name="id2603634"></a><h3>
 <a name="itdb-resolve-path"></a>itdb_resolve_path ()</h3>
-<a class="indexterm" name="id2812552"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_resolve_path                   (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *root,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> * const *components);</pre>
+<a class="indexterm" name="id2603646"></a><pre class="programlisting">gchar*              itdb_resolve_path                   (const gchar *root,
+                                                         const gchar * const *components);</pre>
 <p>
 Resolve the path to a track on the iPod
 </p>
@@ -648,14 +470,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812620"></a><h3>
+<a name="id2603736"></a><h3>
 <a name="itdb-shuffle-write"></a>itdb_shuffle_write ()</h3>
-<a class="indexterm" name="id2812630"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_shuffle_write                  (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2603748"></a><pre class="programlisting">gboolean            itdb_shuffle_write                  (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         GError **error);</pre>
 <p>
 Write out an iTunesSD for the Shuffle.
 First reassigns unique IDs to all tracks.
@@ -678,9 +496,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -694,17 +510,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812732"></a><h3>
+<a name="id2603862"></a><h3>
 <a name="itdb-shuffle-write-file"></a>itdb_shuffle_write_file ()</h3>
-<a class="indexterm" name="id2812743"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_shuffle_write_file             (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2603873"></a><pre class="programlisting">gboolean            itdb_shuffle_write_file             (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         const gchar *filename,
+                                                         GError **error);</pre>
 <p>
 Do the actual writing to the iTunesSD</p>
 <p>
@@ -725,9 +535,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -741,19 +549,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812854"></a><h3>
+<a name="id2603970"></a><h3>
 <a name="itdb-cp"></a>itdb_cp ()</h3>
-<a class="indexterm" name="id2812864"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_cp                             (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *from_file,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *to_file,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2603981"></a><pre class="programlisting">gboolean            itdb_cp                             (const gchar *from_file,
+                                                         const gchar *to_file,
+                                                         GError **error);</pre>
 <p>
 Copy file "from_file" to "to_file".</p>
 <p>
@@ -774,9 +574,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -790,20 +588,12 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812970"></a><h3>
+<a name="id2604086"></a><h3>
 <a name="itdb-cp-get-dest-filename"></a>itdb_cp_get_dest_filename ()</h3>
-<a class="indexterm" name="id2812981"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_cp_get_dest_filename           (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2604097"></a><pre class="programlisting">gchar*              itdb_cp_get_dest_filename           (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
+                                                         const gchar *mountpoint,
+                                                         const gchar *filename,
+                                                         GError **error);</pre>
 <p>
 Creates a valid filename on the iPod where to copy <em class="parameter"><code>filename</code></em>.
 </p>
@@ -842,9 +632,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -860,18 +648,12 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2813176"></a><h3>
+<a name="id2604292"></a><h3>
 <a name="itdb-cp-finalize"></a>itdb_cp_finalize ()</h3>
-<a class="indexterm" name="id2813186"></a><pre class="programlisting"><a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_cp_finalize                    (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *dest_filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2604302"></a><pre class="programlisting"><a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_cp_finalize                    (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
+                                                         const gchar *mountpoint,
+                                                         const gchar *dest_filename,
+                                                         GError **error);</pre>
 <p>
 Updates information in <em class="parameter"><code>track</code></em> necessary for the iPod. You must
 either supply <em class="parameter"><code>track</code></em> or <em class="parameter"><code>mountpoint</code></em>. If <em class="parameter"><code>track</code></em> == NULL, a new track
@@ -909,9 +691,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -929,14 +709,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2813387"></a><h3>
+<a name="id2604503"></a><h3>
 <a name="itdb-parse-file"></a>itdb_parse_file ()</h3>
-<a class="indexterm" name="id2813397"></a><pre class="programlisting"><a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_parse_file                     (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2604513"></a><pre class="programlisting"><a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_parse_file                     (const gchar *filename,
+                                                         GError **error);</pre>
 <p>
 Same as <code class="function">itunesdb_parse()</code>, but filename is specified directly.</p>
 <p>
@@ -952,9 +728,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -970,17 +744,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2813520"></a><h3>
+<a name="id2604636"></a><h3>
 <a name="itdb-write-file"></a>itdb_write_file ()</h3>
-<a class="indexterm" name="id2813530"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_write_file                     (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2604646"></a><pre class="programlisting">gboolean            itdb_write_file                     (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         const gchar *filename,
+                                                         GError **error);</pre>
 <p>
 Write the content of <em class="parameter"><code>itdb</code></em> to <em class="parameter"><code>filename</code></em>. If <em class="parameter"><code>filename</code></em> is NULL, it attempts
 to write to itdb-&gt;filename.</p>
@@ -1002,9 +770,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -1017,9 +783,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2813657"></a><h3>
+<a name="id2604773"></a><h3>
 <a name="itdb-duplicate"></a>itdb_duplicate ()</h3>
-<a class="indexterm" name="id2813667"></a><pre class="programlisting"><a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_duplicate                      (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2604784"></a><pre class="programlisting"><a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_duplicate                      (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Duplicate <em class="parameter"><code>itdb</code></em> 
 FIXME: not implemented yet</p>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Photo-database.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Photo-database.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Photo-database.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -22,16 +22,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td>&#160;</td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2783323" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2565700" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2821218" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2612420" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Photo-database"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2783323"></a><span class="refentrytitle">Photo database</span>
+<a name="id2565700"></a><span class="refentrytitle">Photo database</span>
 </h2>
 <p>Photo database &#8212; Functions to create, read, write the photo database</p>
 </td>
@@ -46,92 +46,46 @@
                     <a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>;
                     <a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>;
 <a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       <a href="libgpod-Photo-database.html#itdb-photodb-add-photo">itdb_photodb_add_photo</a>              (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> position,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+                                                         const gchar *filename,
+                                                         gint position,
+                                                         gint rotation,
+                                                         GError **error);
 <a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       <a href="libgpod-Photo-database.html#itdb-photodb-add-photo-from-data">itdb_photodb_add_photo_from_data</a>    (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guchar"
->guchar</a> *image_data,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"
->gsize</a> image_data_len,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> position,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+                                                         const guchar *image_data,
+                                                         gsize image_data_len,
+                                                         gint position,
+                                                         gint rotation,
+                                                         GError **error);
 <a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       <a href="libgpod-Photo-database.html#itdb-photodb-add-photo-from-pixbuf">itdb_photodb_add_photo_from_pixbuf</a>  (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a> pixbuf,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> position,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       <a href="libgpod-Photo-database.html#itdb-photodb-create">itdb_photodb_create</a>                 (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);
+                                                         gpointer pixbuf,
+                                                         gint position,
+                                                         gint rotation,
+                                                         GError **error);
+<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       <a href="libgpod-Photo-database.html#itdb-photodb-create">itdb_photodb_create</a>                 (const gchar *mountpoint);
 void                <a href="libgpod-Photo-database.html#itdb-photodb-free">itdb_photodb_free</a>                   (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *photodb);
-<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       <a href="libgpod-Photo-database.html#itdb-photodb-parse">itdb_photodb_parse</a>                  (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mp,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       <a href="libgpod-Photo-database.html#itdb-photodb-parse">itdb_photodb_parse</a>                  (const gchar *mp,
+                                                         GError **error);
 void                <a href="libgpod-Photo-database.html#itdb-photodb-photoalbum-add-photo">itdb_photodb_photoalbum_add_photo</a>   (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          <a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a> *album,
                                                          <a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *photo,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> position);
+                                                         gint position);
 <a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>*    <a href="libgpod-Photo-database.html#itdb-photodb-photoalbum-by-name">itdb_photodb_photoalbum_by_name</a>     (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *albumname);
+                                                         const gchar *albumname);
 <a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>*    <a href="libgpod-Photo-database.html#itdb-photodb-photoalbum-create">itdb_photodb_photoalbum_create</a>      (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *albumname,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> pos);
+                                                         const gchar *albumname,
+                                                         gint pos);
 void                <a href="libgpod-Photo-database.html#itdb-photodb-photoalbum-remove">itdb_photodb_photoalbum_remove</a>      (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          <a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a> *album,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a> remove_pics);
+                                                         gboolean remove_pics);
 void                <a href="libgpod-Photo-database.html#itdb-photodb-remove-photo">itdb_photodb_remove_photo</a>           (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          <a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a> *album,
                                                          <a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *photo);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Photo-database.html#itdb-photodb-write">itdb_photodb_write</a>                  (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *photodb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+gboolean            <a href="libgpod-Photo-database.html#itdb-photodb-write">itdb_photodb_write</a>                  (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *photodb,
+                                                         GError **error);
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2821218"></a><h2>Description</h2>
+<a name="id2612420"></a><h2>Description</h2>
 <p>
 These functions are for creating, reading, and writing the photo
 database.
@@ -207,11 +161,11 @@
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2774248"></a><h2>Details</h2>
+<a name="id2608144"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2774258"></a><h3>
+<a name="id2608155"></a><h3>
 <a name="Itdb-PhotoAlbum"></a>Itdb_PhotoAlbum</h3>
-<a class="indexterm" name="id2774271"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2608167"></a><pre class="programlisting">typedef struct {
     gchar *name;                 /* name of photoalbum in UTF8            */
     GList *members;              /* photos in album (Itdb_Artwork *)      */
     guint8 album_type;           /* 0x01 for master (Photo Library),
@@ -257,9 +211,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2768434"></a><h3>
+<a name="id2567883"></a><h3>
 <a name="Itdb-PhotoDB"></a>Itdb_PhotoDB</h3>
-<a class="indexterm" name="id2793186"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2595939"></a><pre class="programlisting">typedef struct {
     GList *photos;      /* (Itdb_Artwork *)     */
     GList *photoalbums; /* (Itdb_PhotoAlbum *)  */
     Itdb_Device *device;/* iPod device info     */
@@ -282,21 +236,13 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2771914"></a><h3>
+<a name="id2597951"></a><h3>
 <a name="itdb-photodb-add-photo"></a>itdb_photodb_add_photo ()</h3>
-<a class="indexterm" name="id2774330"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo              (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> position,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2608223"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo              (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+                                                         const gchar *filename,
+                                                         gint position,
+                                                         gint rotation,
+                                                         GError **error);</pre>
 <p>
 Add a photo to the PhotoDB. The photo is automatically added to the
 first Photoalbum, which by default contains a list of all photos in
@@ -336,9 +282,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -351,24 +295,14 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2826764"></a><h3>
+<a name="id2617875"></a><h3>
 <a name="itdb-photodb-add-photo-from-data"></a>itdb_photodb_add_photo_from_data ()</h3>
-<a class="indexterm" name="id2826775"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo_from_data    (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guchar"
->guchar</a> *image_data,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"
->gsize</a> image_data_len,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> position,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2617885"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo_from_data    (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+                                                         const guchar *image_data,
+                                                         gsize image_data_len,
+                                                         gint position,
+                                                         gint rotation,
+                                                         GError **error);</pre>
 <p>
 Add a photo to the PhotoDB. The photo is automatically added to the
 first Photoalbum, which by default contains a list of all photos in
@@ -414,9 +348,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -429,21 +361,13 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2826953"></a><h3>
+<a name="id2618062"></a><h3>
 <a name="itdb-photodb-add-photo-from-pixbuf"></a>itdb_photodb_add_photo_from_pixbuf ()</h3>
-<a class="indexterm" name="id2826965"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo_from_pixbuf  (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a> pixbuf,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> position,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> rotation,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2618075"></a><pre class="programlisting"><a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo_from_pixbuf  (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+                                                         gpointer pixbuf,
+                                                         gint position,
+                                                         gint rotation,
+                                                         GError **error);</pre>
 <p>
 Add a photo to the PhotoDB. The photo is automatically added to the
 first Photoalbum, which by default contains a list of all photos in
@@ -466,9 +390,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>pixbuf</code></em>&#160;:</span></td>
-<td> a <a
-href="/usr/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf.html#GdkPixbuf"
-><span class="type">GdkPixbuf</span></a> to use as the image data
+<td> a <span class="type">GdkPixbuf</span> to use as the image data
 </td>
 </tr>
 <tr>
@@ -485,9 +407,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -500,11 +420,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2827127"></a><h3>
+<a name="id2618236"></a><h3>
 <a name="itdb-photodb-create"></a>itdb_photodb_create ()</h3>
-<a class="indexterm" name="id2827137"></a><pre class="programlisting"><a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       itdb_photodb_create                 (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint);</pre>
+<a class="indexterm" name="id2618247"></a><pre class="programlisting"><a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       itdb_photodb_create                 (const gchar *mountpoint);</pre>
 <p>
 Creates a new Itdb_PhotoDB. If mountpoint is NULL, you will have to
 set it manually later by calling <a href="libgpod-Device.html#itdb-device-set-mountpoint"><code class="function">itdb_device_set_mountpoint()</code></a>.</p>
@@ -531,9 +449,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2827212"></a><h3>
+<a name="id2618322"></a><h3>
 <a name="itdb-photodb-free"></a>itdb_photodb_free ()</h3>
-<a class="indexterm" name="id2827222"></a><pre class="programlisting">void                itdb_photodb_free                   (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *photodb);</pre>
+<a class="indexterm" name="id2618332"></a><pre class="programlisting">void                itdb_photodb_free                   (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *photodb);</pre>
 <p>
 Free the memory taken by <em class="parameter"><code>photodb</code></em>.</p>
 <p>
@@ -550,14 +468,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2827278"></a><h3>
+<a name="id2618388"></a><h3>
 <a name="itdb-photodb-parse"></a>itdb_photodb_parse ()</h3>
-<a class="indexterm" name="id2827288"></a><pre class="programlisting"><a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       itdb_photodb_parse                  (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mp,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2618398"></a><pre class="programlisting"><a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       itdb_photodb_parse                  (const gchar *mp,
+                                                         GError **error);</pre>
 <p>
 Parses the photo database of an iPod mounted at <em class="parameter"><code>mp</code></em>.</p>
 <p>
@@ -586,14 +500,12 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2827369"></a><h3>
+<a name="id2618479"></a><h3>
 <a name="itdb-photodb-photoalbum-add-photo"></a>itdb_photodb_photoalbum_add_photo ()</h3>
-<a class="indexterm" name="id2827382"></a><pre class="programlisting">void                itdb_photodb_photoalbum_add_photo   (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2618492"></a><pre class="programlisting">void                itdb_photodb_photoalbum_add_photo   (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          <a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a> *album,
                                                          <a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *photo,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> position);</pre>
+                                                         gint position);</pre>
 <p>
 Adds a photo already in the library to the specified album
 <em class="parameter"><code>album</code></em>. Photos are automatically added to the first album (Photo
@@ -632,12 +544,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2827530"></a><h3>
+<a name="id2618640"></a><h3>
 <a name="itdb-photodb-photoalbum-by-name"></a>itdb_photodb_photoalbum_by_name ()</h3>
-<a class="indexterm" name="id2827542"></a><pre class="programlisting"><a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>*    itdb_photodb_photoalbum_by_name     (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *albumname);</pre>
+<a class="indexterm" name="id2618652"></a><pre class="programlisting"><a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>*    itdb_photodb_photoalbum_by_name     (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+                                                         const gchar *albumname);</pre>
 <p>
 Find the first photoalbum with a given name or the Photo Library
 Album if called with no name.</p>
@@ -669,15 +579,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2827632"></a><h3>
+<a name="id2618742"></a><h3>
 <a name="itdb-photodb-photoalbum-create"></a>itdb_photodb_photoalbum_create ()</h3>
-<a class="indexterm" name="id2827644"></a><pre class="programlisting"><a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>*    itdb_photodb_photoalbum_create      (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *albumname,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> pos);</pre>
+<a class="indexterm" name="id2618754"></a><pre class="programlisting"><a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>*    itdb_photodb_photoalbum_create      (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+                                                         const gchar *albumname,
+                                                         gint pos);</pre>
 <p>
 Create and add a new photoalbum.</p>
 <p>
@@ -712,13 +618,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2827740"></a><h3>
+<a name="id2618850"></a><h3>
 <a name="itdb-photodb-photoalbum-remove"></a>itdb_photodb_photoalbum_remove ()</h3>
-<a class="indexterm" name="id2827752"></a><pre class="programlisting">void                itdb_photodb_photoalbum_remove      (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2618862"></a><pre class="programlisting">void                itdb_photodb_photoalbum_remove      (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          <a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a> *album,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a> remove_pics);</pre>
+                                                         gboolean remove_pics);</pre>
 <p>
 Remove <em class="parameter"><code>album</code></em> from the Photo Database. If remove_pics is TRUE,
 remove all photos contained in <em class="parameter"><code>album</code></em> from the Photo Database.
@@ -753,9 +657,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2827860"></a><h3>
+<a name="id2618970"></a><h3>
 <a name="itdb-photodb-remove-photo"></a>itdb_photodb_remove_photo ()</h3>
-<a class="indexterm" name="id2827871"></a><pre class="programlisting">void                itdb_photodb_remove_photo           (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2618981"></a><pre class="programlisting">void                itdb_photodb_remove_photo           (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          <a href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a> *album,
                                                          <a href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *photo);</pre>
 <p>
@@ -795,14 +699,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2827998"></a><h3>
+<a name="id2619108"></a><h3>
 <a name="itdb-photodb-write"></a>itdb_photodb_write ()</h3>
-<a class="indexterm" name="id2828009"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_photodb_write                  (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *photodb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2619119"></a><pre class="programlisting">gboolean            itdb_photodb_write                  (<a href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *photodb,
+                                                         GError **error);</pre>
 <p>
 Write out a PhotoDB.
 </p>
@@ -821,9 +721,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Playlists.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Playlists.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Playlists.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Smart-Playlists.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2776981" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2591319" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2809659" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2601642" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Playlists"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2776981"></a><span class="refentrytitle">Playlists</span>
+<a name="id2591319"></a><span class="refentrytitle">Playlists</span>
 </h2>
 <p>Playlists &#8212; Data structure to represent an iPod playlist</p>
 </td>
@@ -46,73 +46,45 @@
 
                     <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>;
 enum                <a href="libgpod-Playlists.html#ItdbPlaylistSortOrder">ItdbPlaylistSortOrder</a>;
-<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      <a href="libgpod-Playlists.html#itdb-playlist-new">itdb_playlist_new</a>                   (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *title,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a> spl);
+<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      <a href="libgpod-Playlists.html#itdb-playlist-new">itdb_playlist_new</a>                   (const gchar *title,
+                                                         gboolean spl);
 void                <a href="libgpod-Playlists.html#itdb-playlist-free">itdb_playlist_free</a>                  (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
 <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      <a href="libgpod-Playlists.html#itdb-playlist-duplicate">itdb_playlist_duplicate</a>             (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
 void                <a href="libgpod-Playlists.html#itdb-playlist-add">itdb_playlist_add</a>                   (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"
->gint32</a> pos);
+                                                         gint32 pos);
 void                <a href="libgpod-Playlists.html#itdb-playlist-move">itdb_playlist_move</a>                  (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a> pos);
+                                                         guint32 pos);
 void                <a href="libgpod-Playlists.html#itdb-playlist-remove">itdb_playlist_remove</a>                (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
 void                <a href="libgpod-Playlists.html#itdb-playlist-unlink">itdb_playlist_unlink</a>                (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
 void                <a href="libgpod-Playlists.html#itdb-playlist-add-track">itdb_playlist_add_track</a>             (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"
->gint32</a> pos);
+                                                         gint32 pos);
 void                <a href="libgpod-Playlists.html#itdb-playlist-remove-track">itdb_playlist_remove_track</a>          (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Playlists.html#itdb-playlist-contains-track">itdb_playlist_contains_track</a>        (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+gboolean            <a href="libgpod-Playlists.html#itdb-playlist-contains-track">itdb_playlist_contains_track</a>        (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a>             <a href="libgpod-Playlists.html#itdb-playlist-contain-track-number">itdb_playlist_contain_track_number</a>  (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *tr);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a>             <a href="libgpod-Playlists.html#itdb-playlist-tracks-number">itdb_playlist_tracks_number</a>         (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
+guint32             <a href="libgpod-Playlists.html#itdb-playlist-contain-track-number">itdb_playlist_contain_track_number</a>  (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *tr);
+guint32             <a href="libgpod-Playlists.html#itdb-playlist-tracks-number">itdb_playlist_tracks_number</a>         (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
 <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      <a href="libgpod-Playlists.html#itdb-playlist-mpl">itdb_playlist_mpl</a>                   (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Playlists.html#itdb-playlist-is-mpl">itdb_playlist_is_mpl</a>                (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
+gboolean            <a href="libgpod-Playlists.html#itdb-playlist-is-mpl">itdb_playlist_is_mpl</a>                (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
 void                <a href="libgpod-Playlists.html#itdb-playlist-set-mpl">itdb_playlist_set_mpl</a>               (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
 <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      <a href="libgpod-Playlists.html#itdb-playlist-podcasts">itdb_playlist_podcasts</a>              (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Playlists.html#itdb-playlist-is-podcasts">itdb_playlist_is_podcasts</a>           (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
+gboolean            <a href="libgpod-Playlists.html#itdb-playlist-is-podcasts">itdb_playlist_is_podcasts</a>           (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
 void                <a href="libgpod-Playlists.html#itdb-playlist-set-podcasts">itdb_playlist_set_podcasts</a>          (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Playlists.html#itdb-playlist-exists">itdb_playlist_exists</a>                (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+gboolean            <a href="libgpod-Playlists.html#itdb-playlist-exists">itdb_playlist_exists</a>                (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
 <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      <a href="libgpod-Playlists.html#itdb-playlist-by-id">itdb_playlist_by_id</a>                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"
->guint64</a> id);
+                                                         guint64 id);
 <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      <a href="libgpod-Playlists.html#itdb-playlist-by-nr">itdb_playlist_by_nr</a>                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a> num);
+                                                         guint32 num);
 <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      <a href="libgpod-Playlists.html#itdb-playlist-by-name">itdb_playlist_by_name</a>               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *name);
+                                                         gchar *name);
 void                <a href="libgpod-Playlists.html#itdb-playlist-randomize">itdb_playlist_randomize</a>             (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2809659"></a><h2>Description</h2>
+<a name="id2601642"></a><h2>Description</h2>
 <p>
 These functions and structures allow for adding and removing playlists,
 adding and removing tracks from playlists, sorting playlists, finding tracks in
@@ -120,11 +92,11 @@
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2809677"></a><h2>Details</h2>
+<a name="id2601660"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2809688"></a><h3>
+<a name="id2601671"></a><h3>
 <a name="Itdb-Playlist"></a>Itdb_Playlist</h3>
-<a class="indexterm" name="id2809701"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2601684"></a><pre class="programlisting">typedef struct {
     Itdb_iTunesDB *itdb;  /* pointer to iTunesDB (for convenience) */
     gchar *name;          /* name of playlist in UTF8              */
     guint8 type;          /* ITDB_PL_TYPE_NORM/_MPL                */
@@ -161,9 +133,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2792174"></a><h3>
+<a name="id2580316"></a><h3>
 <a name="ItdbPlaylistSortOrder"></a>enum ItdbPlaylistSortOrder</h3>
-<a class="indexterm" name="id2780291"></a><pre class="programlisting">typedef enum
+<a class="indexterm" name="id2582485"></a><pre class="programlisting">typedef enum
 {
     ITDB_PSO_MANUAL = 1,
 /*    ITDB_PSO_UNKNOWN = 2, */
@@ -201,14 +173,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2796950"></a><h3>
+<a name="id2591832"></a><h3>
 <a name="itdb-playlist-new"></a>itdb_playlist_new ()</h3>
-<a class="indexterm" name="id2811490"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_new                   (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *title,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a> spl);</pre>
+<a class="indexterm" name="id2559650"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_new                   (const gchar *title,
+                                                         gboolean spl);</pre>
 <p>
 Creates a new playlist. If <em class="parameter"><code>spl</code></em> is TRUE, a smart
 playlist is generated. pl-&gt;id is set by <a href="libgpod-Playlists.html#itdb-playlist-add"><code class="function">itdb_playlist_add()</code></a> when the 
@@ -240,9 +208,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811609"></a><h3>
+<a name="id2559769"></a><h3>
 <a name="itdb-playlist-free"></a>itdb_playlist_free ()</h3>
-<a class="indexterm" name="id2811622"></a><pre class="programlisting">void                itdb_playlist_free                  (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2559782"></a><pre class="programlisting">void                itdb_playlist_free                  (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Frees the memory used by playlist <em class="parameter"><code>pl</code></em>.</p>
 <p>
@@ -259,9 +227,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811684"></a><h3>
+<a name="id2559844"></a><h3>
 <a name="itdb-playlist-duplicate"></a>itdb_playlist_duplicate ()</h3>
-<a class="indexterm" name="id2811696"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_duplicate             (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2559856"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_duplicate             (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Duplicates an existing playlist. pl_dup-&gt;id is set to zero, so that
 it will be set to a unique value when adding it to an <a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a>. The
@@ -288,13 +256,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2817418"></a><h3>
+<a name="id2608512"></a><h3>
 <a name="itdb-playlist-add"></a>itdb_playlist_add ()</h3>
-<a class="indexterm" name="id2817428"></a><pre class="programlisting">void                itdb_playlist_add                   (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+<a class="indexterm" name="id2608522"></a><pre class="programlisting">void                itdb_playlist_add                   (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"
->gint32</a> pos);</pre>
+                                                         gint32 pos);</pre>
 <p>
 Adds playlist <em class="parameter"><code>pl</code></em> to the database <em class="parameter"><code>itdb</code></em> at position <em class="parameter"><code>pos</code></em> (-1 for
 "append to end"). A unique id is created if pl-&gt;id is equal to
@@ -326,12 +292,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2817564"></a><h3>
+<a name="id2608658"></a><h3>
 <a name="itdb-playlist-move"></a>itdb_playlist_move ()</h3>
-<a class="indexterm" name="id2817575"></a><pre class="programlisting">void                itdb_playlist_move                  (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a> pos);</pre>
+<a class="indexterm" name="id2608668"></a><pre class="programlisting">void                itdb_playlist_move                  (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+                                                         guint32 pos);</pre>
 <p>
 Moves playlist <em class="parameter"><code>pl</code></em> to position <em class="parameter"><code>pos</code></em></p>
 <p>
@@ -355,9 +319,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2817653"></a><h3>
+<a name="id2608747"></a><h3>
 <a name="itdb-playlist-remove"></a>itdb_playlist_remove ()</h3>
-<a class="indexterm" name="id2817664"></a><pre class="programlisting">void                itdb_playlist_remove                (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2608757"></a><pre class="programlisting">void                itdb_playlist_remove                (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Removes <em class="parameter"><code>pl</code></em> from the <a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> it's associated with 
 and frees memory</p>
@@ -375,9 +339,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2817725"></a><h3>
+<a name="id2608819"></a><h3>
 <a name="itdb-playlist-unlink"></a>itdb_playlist_unlink ()</h3>
-<a class="indexterm" name="id2817736"></a><pre class="programlisting">void                itdb_playlist_unlink                (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2608830"></a><pre class="programlisting">void                itdb_playlist_unlink                (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Remove <em class="parameter"><code>pl</code></em> from the <a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> it's associated with but do not free 
 memory. pl-&gt;itdb is set to NULL after this function returns</p>
@@ -395,13 +359,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2817799"></a><h3>
+<a name="id2608893"></a><h3>
 <a name="itdb-playlist-add-track"></a>itdb_playlist_add_track ()</h3>
-<a class="indexterm" name="id2817810"></a><pre class="programlisting">void                itdb_playlist_add_track             (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2608903"></a><pre class="programlisting">void                itdb_playlist_add_track             (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"
->gint32</a> pos);</pre>
+                                                         gint32 pos);</pre>
 <p>
 Adds <em class="parameter"><code>track</code></em> to <em class="parameter"><code>pl</code></em> at position <em class="parameter"><code>pos</code></em> (-1 for "append to
 end")</p>
@@ -431,9 +393,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2817925"></a><h3>
+<a name="id2609019"></a><h3>
 <a name="itdb-playlist-remove-track"></a>itdb_playlist_remove_track ()</h3>
-<a class="indexterm" name="id2817936"></a><pre class="programlisting">void                itdb_playlist_remove_track          (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2609029"></a><pre class="programlisting">void                itdb_playlist_remove_track          (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Removes <em class="parameter"><code>track</code></em> from <em class="parameter"><code>pl</code></em>. If <em class="parameter"><code>pl</code></em> is NULL, removes <em class="parameter"><code>track</code></em> from the
@@ -461,11 +423,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818059"></a><h3>
+<a name="id2609153"></a><h3>
 <a name="itdb-playlist-contains-track"></a>itdb_playlist_contains_track ()</h3>
-<a class="indexterm" name="id2818070"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_playlist_contains_track        (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2609165"></a><pre class="programlisting">gboolean            itdb_playlist_contains_track        (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Checks if <em class="parameter"><code>track</code></em> is in <em class="parameter"><code>pl</code></em>.</p>
@@ -495,11 +455,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818175"></a><h3>
+<a name="id2609271"></a><h3>
 <a name="itdb-playlist-contain-track-number"></a>itdb_playlist_contain_track_number ()</h3>
-<a class="indexterm" name="id2818186"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a>             itdb_playlist_contain_track_number  (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *tr);</pre>
+<a class="indexterm" name="id2609284"></a><pre class="programlisting">guint32             itdb_playlist_contain_track_number  (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *tr);</pre>
 <p>
 Counts the number of playlist <em class="parameter"><code>track</code></em> is a member of (not including the 
 master playlist)</p>
@@ -524,11 +482,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818259"></a><h3>
+<a name="id2609356"></a><h3>
 <a name="itdb-playlist-tracks-number"></a>itdb_playlist_tracks_number ()</h3>
-<a class="indexterm" name="id2818270"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a>             itdb_playlist_tracks_number         (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2609367"></a><pre class="programlisting">guint32             itdb_playlist_tracks_number         (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Counts the number of tracks in <em class="parameter"><code>pl</code></em></p>
 <p>
@@ -552,9 +508,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818335"></a><h3>
+<a name="id2609432"></a><h3>
 <a name="itdb-playlist-mpl"></a>itdb_playlist_mpl ()</h3>
-<a class="indexterm" name="id2818345"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_mpl                   (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2609442"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_mpl                   (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Gets the master playlist of <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -578,11 +534,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818415"></a><h3>
+<a name="id2609512"></a><h3>
 <a name="itdb-playlist-is-mpl"></a>itdb_playlist_is_mpl ()</h3>
-<a class="indexterm" name="id2818425"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_playlist_is_mpl                (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2609522"></a><pre class="programlisting">gboolean            itdb_playlist_is_mpl                (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Checks if <em class="parameter"><code>pl</code></em> is the master playlist</p>
 <p>
@@ -606,9 +560,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818496"></a><h3>
+<a name="id2609593"></a><h3>
 <a name="itdb-playlist-set-mpl"></a>itdb_playlist_set_mpl ()</h3>
-<a class="indexterm" name="id2818506"></a><pre class="programlisting">void                itdb_playlist_set_mpl               (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2609604"></a><pre class="programlisting">void                itdb_playlist_set_mpl               (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Sets <em class="parameter"><code>pl</code></em> to be a master playlist</p>
 <p>
@@ -625,9 +579,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818562"></a><h3>
+<a name="id2609659"></a><h3>
 <a name="itdb-playlist-podcasts"></a>itdb_playlist_podcasts ()</h3>
-<a class="indexterm" name="id2818572"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_podcasts              (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2609669"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_podcasts              (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Gets the podcasts playlist of <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -651,11 +605,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818643"></a><h3>
+<a name="id2609740"></a><h3>
 <a name="itdb-playlist-is-podcasts"></a>itdb_playlist_is_podcasts ()</h3>
-<a class="indexterm" name="id2818654"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_playlist_is_podcasts           (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2609751"></a><pre class="programlisting">gboolean            itdb_playlist_is_podcasts           (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Checks if <em class="parameter"><code>pl</code></em> is the podcasts playlist</p>
 <p>
@@ -679,9 +631,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818725"></a><h3>
+<a name="id2609822"></a><h3>
 <a name="itdb-playlist-set-podcasts"></a>itdb_playlist_set_podcasts ()</h3>
-<a class="indexterm" name="id2818736"></a><pre class="programlisting">void                itdb_playlist_set_podcasts          (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2609833"></a><pre class="programlisting">void                itdb_playlist_set_podcasts          (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Set <em class="parameter"><code>pl</code></em> to be a podcasts playlist</p>
 <p>
@@ -698,11 +650,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818791"></a><h3>
+<a name="id2609888"></a><h3>
 <a name="itdb-playlist-exists"></a>itdb_playlist_exists ()</h3>
-<a class="indexterm" name="id2818802"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_playlist_exists                (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+<a class="indexterm" name="id2609899"></a><pre class="programlisting">gboolean            itdb_playlist_exists                (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Checks if <em class="parameter"><code>pl</code></em> is present in <em class="parameter"><code>db</code></em></p>
@@ -732,12 +682,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818907"></a><h3>
+<a name="id2610004"></a><h3>
 <a name="itdb-playlist-by-id"></a>itdb_playlist_by_id ()</h3>
-<a class="indexterm" name="id2818917"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_id                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"
->guint64</a> id);</pre>
+<a class="indexterm" name="id2610014"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_id                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         guint64 id);</pre>
 <p>
 Looks up a playlist whose ID is <em class="parameter"><code>id</code></em></p>
 <p>
@@ -767,12 +715,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2819014"></a><h3>
+<a name="id2610111"></a><h3>
 <a name="itdb-playlist-by-nr"></a>itdb_playlist_by_nr ()</h3>
-<a class="indexterm" name="id2819024"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_nr                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a> num);</pre>
+<a class="indexterm" name="id2610121"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_nr                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         guint32 num);</pre>
 <p>
 Gets the playlist at the given position in <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -801,12 +747,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2819121"></a><h3>
+<a name="id2610218"></a><h3>
 <a name="itdb-playlist-by-name"></a>itdb_playlist_by_name ()</h3>
-<a class="indexterm" name="id2819131"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_name               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *name);</pre>
+<a class="indexterm" name="id2610228"></a><pre class="programlisting"><a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_name               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         gchar *name);</pre>
 <p>
 Searches a playlist whose name is <em class="parameter"><code>name</code></em> in <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -836,9 +780,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2819233"></a><h3>
+<a name="id2610330"></a><h3>
 <a name="itdb-playlist-randomize"></a>itdb_playlist_randomize ()</h3>
-<a class="indexterm" name="id2819244"></a><pre class="programlisting">void                itdb_playlist_randomize             (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2610341"></a><pre class="programlisting">void                itdb_playlist_randomize             (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Randomizes <em class="parameter"><code>pl</code></em></p>
 <p>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Smart-Playlists.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Smart-Playlists.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Smart-Playlists.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Artwork.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2801290" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2556657" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2773774" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2599424" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Smart-Playlists"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2801290"></a><span class="refentrytitle">Smart Playlists</span>
+<a name="id2556657"></a><span class="refentrytitle">Smart Playlists</span>
 </h2>
 <p>Smart Playlists &#8212; Data structure to represent an iPod smart playlist</p>
 </td>
@@ -65,18 +65,12 @@
 <a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a>*       <a href="libgpod-Smart-Playlists.html#itdb-splr-new">itdb_splr_new</a>                       (void);
 void                <a href="libgpod-Smart-Playlists.html#itdb-splr-add">itdb_splr_add</a>                       (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> pos);
+                                                         gint pos);
 <a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a>*       <a href="libgpod-Smart-Playlists.html#itdb-splr-add-new">itdb_splr_add_new</a>                   (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> pos);
+                                                         gint pos);
 void                <a href="libgpod-Smart-Playlists.html#itdb-spl-copy-rules">itdb_spl_copy_rules</a>                 (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *dest,
                                                          <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *src);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Smart-Playlists.html#itdb-splr-eval">itdb_splr_eval</a>                      (<a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr,
+gboolean            <a href="libgpod-Smart-Playlists.html#itdb-splr-eval">itdb_splr_eval</a>                      (<a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr,
                                                          <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);
 void                <a href="libgpod-Smart-Playlists.html#itdb-spl-update">itdb_spl_update</a>                     (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *spl);
 void                <a href="libgpod-Smart-Playlists.html#itdb-spl-update-all">itdb_spl_update_all</a>                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
@@ -84,17 +78,17 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2773774"></a><h2>Description</h2>
+<a name="id2599424"></a><h2>Description</h2>
 <p>
 These functions and structures are for dealing with smart playlists.
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2773790"></a><h2>Details</h2>
+<a name="id2599440"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2773801"></a><h3>
+<a name="id2599451"></a><h3>
 <a name="Itdb-SPLPref"></a>Itdb_SPLPref</h3>
-<a class="indexterm" name="id2773814"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2599464"></a><pre class="programlisting">typedef struct {
     guint8  liveupdate;        /* "live Updating" check box */
     guint8  checkrules;        /* "Match X of the following
 				  conditions" check box */
@@ -117,9 +111,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2794442"></a><h3>
+<a name="id2509809"></a><h3>
 <a name="Itdb-SPLRule"></a>Itdb_SPLRule</h3>
-<a class="indexterm" name="id2779177"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2563419"></a><pre class="programlisting">typedef struct {
     guint32 field;
     guint32 action;
     gchar *string;             /* data in UTF8  */
@@ -157,9 +151,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2795180"></a><h3>
+<a name="id2578281"></a><h3>
 <a name="Itdb-SPLRules"></a>Itdb_SPLRules</h3>
-<a class="indexterm" name="id2773852"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2599502"></a><pre class="programlisting">typedef struct {
     guint32 unk004;
     guint32 match_operator;  /* "All" (logical AND): Itdb_SPLMATCH_AND,
 				"Any" (logical OR): Itdb_SPLMATCH_OR */
@@ -177,9 +171,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2773873"></a><h3>
+<a name="id2599523"></a><h3>
 <a name="ItdbLimitSort"></a>enum ItdbLimitSort</h3>
-<a class="indexterm" name="id2773886"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2599536"></a><pre class="programlisting">typedef enum {
     ITDB_LIMITSORT_RANDOM = 0x02,
     ITDB_LIMITSORT_SONG_NAME = 0x03,
     ITDB_LIMITSORT_ALBUM = 0x04,
@@ -201,9 +195,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2773913"></a><h3>
+<a name="id2599563"></a><h3>
 <a name="ItdbLimitType"></a>enum ItdbLimitType</h3>
-<a class="indexterm" name="id2773925"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2599575"></a><pre class="programlisting">typedef enum {
     ITDB_LIMITTYPE_MINUTES = 0x01,
     ITDB_LIMITTYPE_MB      = 0x02,
     ITDB_LIMITTYPE_SONGS   = 0x03,
@@ -217,9 +211,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2773944"></a><h3>
+<a name="id2599594"></a><h3>
 <a name="ItdbSPLAction"></a>enum ItdbSPLAction</h3>
-<a class="indexterm" name="id2773956"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2599607"></a><pre class="programlisting">typedef enum {
     ITDB_SPLACTION_IS_INT = 0x00000001,          /* "Is Set" in iTunes */
     ITDB_SPLACTION_IS_GREATER_THAN = 0x00000010, /* "Is After" in iTunes */
     ITDB_SPLACTION_IS_LESS_THAN = 0x00000040,    /* "Is Before" in iTunes */
@@ -257,9 +251,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2773995"></a><h3>
+<a name="id2599645"></a><h3>
 <a name="ItdbSPLActionLast"></a>enum ItdbSPLActionLast</h3>
-<a class="indexterm" name="id2774008"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2599658"></a><pre class="programlisting">typedef enum {
     ITDB_SPLACTION_LAST_DAYS_VALUE = 86400,    /* nr of secs in 24 hours */
     ITDB_SPLACTION_LAST_WEEKS_VALUE = 604800,  /* nr of secs in 7 days   */
     ITDB_SPLACTION_LAST_MONTHS_VALUE = 2628000,/* nr of secs in 30.4167
@@ -272,9 +266,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2813902"></a><h3>
+<a name="id2601192"></a><h3>
 <a name="ItdbSPLActionType"></a>enum ItdbSPLActionType</h3>
-<a class="indexterm" name="id2813915"></a><pre class="programlisting">typedef enum
+<a class="indexterm" name="id2601205"></a><pre class="programlisting">typedef enum
 {
     ITDB_SPLAT_STRING = 1,
     ITDB_SPLAT_INT,
@@ -295,9 +289,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2813935"></a><h3>
+<a name="id2601225"></a><h3>
 <a name="ItdbSPLField"></a>enum ItdbSPLField</h3>
-<a class="indexterm" name="id2813947"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2601237"></a><pre class="programlisting">typedef enum {
     ITDB_SPLFIELD_SONG_NAME = 0x02,    /* String */
     ITDB_SPLFIELD_ALBUM = 0x03,        /* String */
     ITDB_SPLFIELD_ARTIST = 0x04,       /* String */
@@ -306,21 +300,20 @@
     ITDB_SPLFIELD_YEAR = 0x07,         /* Int  (e.g. from/to = 2004) */
     ITDB_SPLFIELD_GENRE = 0x08,        /* String */
     ITDB_SPLFIELD_KIND = 0x09,         /* String */
-    ITDB_SPLFIELD_DATE_MODIFIED = 0x0a,/* Int/Mac Timestamp (e.g. from/to =
-                                     bcf93280 == is before 6/19/2004)*/
+    ITDB_SPLFIELD_DATE_MODIFIED = 0x0a,/* Int (e.g. from/to = bcf93280 ==
+				     is before 6/19/2004)*/
     ITDB_SPLFIELD_TRACKNUMBER = 0x0b,  /* Int (e.g. from = 1, to = 2) */
     ITDB_SPLFIELD_SIZE = 0x0c,         /* Int (e.g. from/to = 0x00600000
 				     for 6MB) */
     ITDB_SPLFIELD_TIME = 0x0d,         /* Int (e.g. from/to = 83999 for
 				     1:23/83 seconds) */
     ITDB_SPLFIELD_COMMENT = 0x0e,      /* String */
-    ITDB_SPLFIELD_DATE_ADDED = 0x10,   /* Int/Mac Timestamp (e.g. from/to =
-                                     bcfa83ff == is after 6/19/2004) */
+    ITDB_SPLFIELD_DATE_ADDED = 0x10,   /* Int (e.g. from/to = bcfa83ff ==
+				     is after 6/19/2004) */
     ITDB_SPLFIELD_COMPOSER = 0x12,     /* String */
     ITDB_SPLFIELD_PLAYCOUNT = 0x16,    /* Int  (e.g. from/to = 1) */
-    ITDB_SPLFIELD_LAST_PLAYED = 0x17,  /* Int/Mac Timestamp (e.g. from =
-                                     bcfa83ff (6/19/2004) to =
-                                     0xbcfbd57f (6/20/2004)) */
+    ITDB_SPLFIELD_LAST_PLAYED = 0x17,  /* Int/ (e.g. from = bcfa83ff (6/19/2004)
+				     to = 0xbcfbd57f (6/20/2004)) */
     ITDB_SPLFIELD_DISC_NUMBER = 0x18,  /* Int  (e.g. from/to = 1) */
     ITDB_SPLFIELD_RATING = 0x19,       /* Int/Stars Rating (e.g. from/to =
                                      60 (3 stars)) */
@@ -338,7 +331,7 @@
     ITDB_SPLFIELD_TVSHOW = 0x3e,       /* String */
     ITDB_SPLFIELD_SEASON_NR = 0x3f,    /* Int */
     ITDB_SPLFIELD_SKIPCOUNT = 0x44,    /* Int */
-    ITDB_SPLFIELD_LAST_SKIPPED = 0x45, /* Int/Mac Timestamp */
+    ITDB_SPLFIELD_LAST_SKIPPED = 0x45, /* Int */
     ITDB_SPLFIELD_ALBUMARTIST = 0x47   /* String */
 } ItdbSPLField;
 </pre>
@@ -348,9 +341,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814001"></a><h3>
+<a name="id2601288"></a><h3>
 <a name="ItdbSPLFieldType"></a>enum ItdbSPLFieldType</h3>
-<a class="indexterm" name="id2814013"></a><pre class="programlisting">typedef enum
+<a class="indexterm" name="id2601301"></a><pre class="programlisting">typedef enum
 {
     ITDB_SPLFT_STRING = 1,
     ITDB_SPLFT_INT,
@@ -367,9 +360,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814031"></a><h3>
+<a name="id2601319"></a><h3>
 <a name="ItdbSPLMatch"></a>enum ItdbSPLMatch</h3>
-<a class="indexterm" name="id2814044"></a><pre class="programlisting">typedef enum { /* types for match_operator */
+<a class="indexterm" name="id2601332"></a><pre class="programlisting">typedef enum { /* types for match_operator */
     ITDB_SPLMATCH_AND = 0, /* AND rule - all of the rules must be true in
 			 order for the combined rule to be applied */
     ITDB_SPLMATCH_OR = 1   /* OR rule */
@@ -381,9 +374,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814063"></a><h3>
+<a name="id2601351"></a><h3>
 <a name="ITDB-SPL-DATE-IDENTIFIER:CAPS"></a>ITDB_SPL_DATE_IDENTIFIER</h3>
-<a class="indexterm" name="id2814074"></a><pre class="programlisting">#define ITDB_SPL_DATE_IDENTIFIER (G_GINT64_CONSTANT (0x2dae2dae2dae2daeU))
+<a class="indexterm" name="id2601362"></a><pre class="programlisting">#define ITDB_SPL_DATE_IDENTIFIER (G_GINT64_CONSTANT (0x2dae2dae2dae2daeU))
 </pre>
 <p>
 
@@ -391,9 +384,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814090"></a><h3>
+<a name="id2601379"></a><h3>
 <a name="ITDB-SPL-STRING-MAXLEN:CAPS"></a>ITDB_SPL_STRING_MAXLEN</h3>
-<a class="indexterm" name="id2814102"></a><pre class="programlisting">#define ITDB_SPL_STRING_MAXLEN 255
+<a class="indexterm" name="id2601390"></a><pre class="programlisting">#define ITDB_SPL_STRING_MAXLEN 255
 </pre>
 <p>
 
@@ -401,9 +394,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814117"></a><h3>
+<a name="id2601405"></a><h3>
 <a name="itdb-splr-get-field-type"></a>itdb_splr_get_field_type ()</h3>
-<a class="indexterm" name="id2814128"></a><pre class="programlisting"><a href="libgpod-Smart-Playlists.html#ItdbSPLFieldType">ItdbSPLFieldType</a>    itdb_splr_get_field_type            (const <a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
+<a class="indexterm" name="id2601416"></a><pre class="programlisting"><a href="libgpod-Smart-Playlists.html#ItdbSPLFieldType">ItdbSPLFieldType</a>    itdb_splr_get_field_type            (const <a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
 <p>
 Gets the type of the field of the <em class="parameter"><code>splr</code></em> rule</p>
 <p>
@@ -428,9 +421,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2819637"></a><h3>
+<a name="id2610726"></a><h3>
 <a name="itdb-splr-get-action-type"></a>itdb_splr_get_action_type ()</h3>
-<a class="indexterm" name="id2819647"></a><pre class="programlisting"><a href="libgpod-Smart-Playlists.html#ItdbSPLActionType">ItdbSPLActionType</a>   itdb_splr_get_action_type           (const <a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
+<a class="indexterm" name="id2610736"></a><pre class="programlisting"><a href="libgpod-Smart-Playlists.html#ItdbSPLActionType">ItdbSPLActionType</a>   itdb_splr_get_action_type           (const <a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
 <p>
 Gets the type of the action associated with <em class="parameter"><code>splr</code></em>.</p>
 <p>
@@ -454,9 +447,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2819714"></a><h3>
+<a name="id2610803"></a><h3>
 <a name="itdb-splr-validate"></a>itdb_splr_validate ()</h3>
-<a class="indexterm" name="id2819724"></a><pre class="programlisting">void                itdb_splr_validate                  (<a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
+<a class="indexterm" name="id2610814"></a><pre class="programlisting">void                itdb_splr_validate                  (<a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
 <p>
 Validates a rule</p>
 <p>
@@ -473,9 +466,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2819775"></a><h3>
+<a name="id2610864"></a><h3>
 <a name="itdb-splr-remove"></a>itdb_splr_remove ()</h3>
-<a class="indexterm" name="id2819785"></a><pre class="programlisting">void                itdb_splr_remove                    (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2610874"></a><pre class="programlisting">void                itdb_splr_remove                    (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
 <p>
 Removes the smart playlist rule <em class="parameter"><code>splr</code></em> from playlist <em class="parameter"><code>pl</code></em>. The memory used by
@@ -501,9 +494,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2819870"></a><h3>
+<a name="id2610959"></a><h3>
 <a name="itdb-splr-new"></a>itdb_splr_new ()</h3>
-<a class="indexterm" name="id2819880"></a><pre class="programlisting"><a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a>*       itdb_splr_new                       (void);</pre>
+<a class="indexterm" name="id2610970"></a><pre class="programlisting"><a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a>*       itdb_splr_new                       (void);</pre>
 <p>
 Creates a new default smart rule</p>
 <p>
@@ -521,13 +514,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2819931"></a><h3>
+<a name="id2611020"></a><h3>
 <a name="itdb-splr-add"></a>itdb_splr_add ()</h3>
-<a class="indexterm" name="id2819941"></a><pre class="programlisting">void                itdb_splr_add                       (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2611030"></a><pre class="programlisting">void                itdb_splr_add                       (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> pos);</pre>
+                                                         gint pos);</pre>
 <p>
 Adds the smart rule <em class="parameter"><code>splr</code></em> to <em class="parameter"><code>pl</code></em> at position <em class="parameter"><code>pos</code></em>. If <em class="parameter"><code>pos</code></em> is -1, <em class="parameter"><code>splr</code></em> gets
 appended to the end. After this call, <em class="parameter"><code>splr</code></em> memory is managed by <em class="parameter"><code>pl</code></em>, so 
@@ -558,12 +549,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2820080"></a><h3>
+<a name="id2611169"></a><h3>
 <a name="itdb-splr-add-new"></a>itdb_splr_add_new ()</h3>
-<a class="indexterm" name="id2820091"></a><pre class="programlisting"><a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a>*       itdb_splr_add_new                   (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
->gint</a> pos);</pre>
+<a class="indexterm" name="id2611180"></a><pre class="programlisting"><a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a>*       itdb_splr_add_new                   (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+                                                         gint pos);</pre>
 <p>
 Creates a new smart rule and inserts it at position <em class="parameter"><code>pos</code></em> in <em class="parameter"><code>pl</code></em>. If <em class="parameter"><code>pos</code></em> is
 -1, the new rule gets appended to the end.</p>
@@ -594,9 +583,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2820208"></a><h3>
+<a name="id2611297"></a><h3>
 <a name="itdb-spl-copy-rules"></a>itdb_spl_copy_rules ()</h3>
-<a class="indexterm" name="id2820218"></a><pre class="programlisting">void                itdb_spl_copy_rules                 (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *dest,
+<a class="indexterm" name="id2611307"></a><pre class="programlisting">void                itdb_spl_copy_rules                 (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *dest,
                                                          <a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *src);</pre>
 <p>
 Copy all relevant information for smart playlist from playlist <em class="parameter"><code>src</code></em>
@@ -623,11 +612,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2820312"></a><h3>
+<a name="id2611401"></a><h3>
 <a name="itdb-splr-eval"></a>itdb_splr_eval ()</h3>
-<a class="indexterm" name="id2820322"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_splr_eval                      (<a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr,
+<a class="indexterm" name="id2611411"></a><pre class="programlisting">gboolean            itdb_splr_eval                      (<a href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr,
                                                          <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Evaluates <em class="parameter"><code>splr</code></em>'s truth against <em class="parameter"><code>track</code></em>. track-&gt;itdb must be set.</p>
@@ -657,9 +644,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2820428"></a><h3>
+<a name="id2611517"></a><h3>
 <a name="itdb-spl-update"></a>itdb_spl_update ()</h3>
-<a class="indexterm" name="id2820438"></a><pre class="programlisting">void                itdb_spl_update                     (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *spl);</pre>
+<a class="indexterm" name="id2611528"></a><pre class="programlisting">void                itdb_spl_update                     (<a href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *spl);</pre>
 <p>
 Updates the content of the smart playlist <em class="parameter"><code>spl</code></em> (meant to be called if the 
 tracks stored in the <a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> associated with <em class="parameter"><code>spl</code></em> have changed 
@@ -679,9 +666,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2820514"></a><h3>
+<a name="id2611603"></a><h3>
 <a name="itdb-spl-update-all"></a>itdb_spl_update_all ()</h3>
-<a class="indexterm" name="id2820524"></a><pre class="programlisting">void                itdb_spl_update_all                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2611613"></a><pre class="programlisting">void                itdb_spl_update_all                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Updates all smart playlists contained in <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -698,9 +685,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2820578"></a><h3>
+<a name="id2611668"></a><h3>
 <a name="itdb-spl-update-live"></a>itdb_spl_update_live ()</h3>
-<a class="indexterm" name="id2820589"></a><pre class="programlisting">void                itdb_spl_update_live                (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2611678"></a><pre class="programlisting">void                itdb_spl_update_live                (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Updates all 'live' smart playlists contained in <em class="parameter"><code>itdb</code></em>, ie those which have 
 the 'live updating' flag set</p>
@@ -718,7 +705,7 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2820647"></a><h2>See Also</h2>
+<a name="id2611736"></a><h2>See Also</h2>
 <p>
 <a href="libgpod-Playlists.html" title="Playlists">Playlists</a>
 </p>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-The-Itdb-iTunesDB-structure.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-The-Itdb-iTunesDB-structure.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-The-Itdb-iTunesDB-structure.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-File-handling-functions.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2780501" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2571596" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2721122" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2510630" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-The-Itdb-iTunesDB-structure"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2780501"></a><span class="refentrytitle">iPod database reading/writing</span>
+<a name="id2571596"></a><span class="refentrytitle">iPod database reading/writing</span>
 </h2>
 <p>iPod database reading/writing &#8212; Functions to create, read, write the iPod database</p>
 </td>
@@ -45,48 +45,24 @@
 
 
                     <a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>;
-void                (<a href="libgpod-The-Itdb-iTunesDB-structure.html#ItdbUserDataDestroyFunc">*ItdbUserDataDestroyFunc</a>)          (<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a> userdata);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a>            (<a href="libgpod-The-Itdb-iTunesDB-structure.html#ItdbUserDataDuplicateFunc">*ItdbUserDataDuplicateFunc</a>)        (<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a> userdata);
+void                (<a href="libgpod-The-Itdb-iTunesDB-structure.html#ItdbUserDataDestroyFunc">*ItdbUserDataDestroyFunc</a>)          (gpointer userdata);
+gpointer            (<a href="libgpod-The-Itdb-iTunesDB-structure.html#ItdbUserDataDuplicateFunc">*ItdbUserDataDuplicateFunc</a>)        (gpointer userdata);
 <a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-new">itdb_new</a>                            (void);
 void                <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-free">itdb_free</a>                           (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
-<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-parse">itdb_parse</a>                          (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mp,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-write">itdb_write</a>                          (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
+<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-parse">itdb_parse</a>                          (const gchar *mp,
+                                                         GError **error);
+gboolean            <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-write">itdb_write</a>                          (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         GError **error);
 void                <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-set-mountpoint">itdb_set_mountpoint</a>                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mp);
-const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*        <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-get-mountpoint">itdb_get_mountpoint</a>                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a>             <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number">itdb_tracks_number</a>                  (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a>             <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number-nontransferred">itdb_tracks_number_nontransferred</a>   (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a>             <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-playlists-number">itdb_playlists_number</a>               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
+                                                         const gchar *mp);
+const gchar*        <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-get-mountpoint">itdb_get_mountpoint</a>                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
+guint32             <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number">itdb_tracks_number</a>                  (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
+guint32             <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number-nontransferred">itdb_tracks_number_nontransferred</a>   (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
+guint32             <a href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-playlists-number">itdb_playlists_number</a>               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2721122"></a><h2>Description</h2>
+<a name="id2510630"></a><h2>Description</h2>
 <p>
 These functions are for creating, reading, writing, and deleting the iPod
 database and getting the total number of tracks and playlists.
@@ -152,14 +128,14 @@
 in the original music file. That's also from where the data is
 read when artwork is displayed in iTunes, and there can be more
 than one piece of artwork. libgpod does not store the artwork as
-tags in the original music file. As a consequence, if you iTunes
+tags in the original music file. As a consequence, if iTunes
 attempts to access the artwork, it will find none, and remove
 libgpod's artwork. Luckily, iTunes will only attempt to access
-the artwork if you select a track in Tunes. (To work around
+the artwork if you select a track in iTunes. (To work around
 this, gtkpod keeps a list of the original filename of all
 artwork and silently adds the thumbnails if they were 'lost'.
 Your application might want to do something similar, or you can
-supply patches for optionally! adding tags to the original music
+supply patches for (optionally!) adding tags to the original music
 files.)
 </p>
 <p>
@@ -173,11 +149,11 @@
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2784175"></a><h2>Details</h2>
+<a name="id2575267"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2784186"></a><h3>
+<a name="id2575278"></a><h3>
 <a name="Itdb-iTunesDB"></a>Itdb_iTunesDB</h3>
-<a class="indexterm" name="id2784198"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2575290"></a><pre class="programlisting">typedef struct {
     GList *tracks;
     GList *playlists;
     gchar *filename;    /* filename of iTunesDB */
@@ -203,11 +179,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2793351"></a><h3>
+<a name="id2584447"></a><h3>
 <a name="ItdbUserDataDestroyFunc"></a>ItdbUserDataDestroyFunc ()</h3>
-<a class="indexterm" name="id2784225"></a><pre class="programlisting">void                (*ItdbUserDataDestroyFunc)          (<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a> userdata);</pre>
+<a class="indexterm" name="id2575316"></a><pre class="programlisting">void                (*ItdbUserDataDestroyFunc)          (gpointer userdata);</pre>
 <p>
 
 </p>
@@ -224,13 +198,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2784271"></a><h3>
+<a name="id2575362"></a><h3>
 <a name="ItdbUserDataDuplicateFunc"></a>ItdbUserDataDuplicateFunc ()</h3>
-<a class="indexterm" name="id2784282"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a>            (*ItdbUserDataDuplicateFunc)        (<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a> userdata);</pre>
+<a class="indexterm" name="id2575373"></a><pre class="programlisting">gpointer            (*ItdbUserDataDuplicateFunc)        (gpointer userdata);</pre>
 <p>
 
 </p>
@@ -254,9 +224,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2725075"></a><h3>
+<a name="id2515071"></a><h3>
 <a name="itdb-new"></a>itdb_new ()</h3>
-<a class="indexterm" name="id2725087"></a><pre class="programlisting"><a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_new                            (void);</pre>
+<a class="indexterm" name="id2515083"></a><pre class="programlisting"><a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_new                            (void);</pre>
 <p>
 Creates a new Itdb_iTunesDB with the unknowns filled in to reasonable
 values.</p>
@@ -275,9 +245,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2725139"></a><h3>
+<a name="id2515135"></a><h3>
 <a name="itdb-free"></a>itdb_free ()</h3>
-<a class="indexterm" name="id2725151"></a><pre class="programlisting">void                itdb_free                           (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2515147"></a><pre class="programlisting">void                itdb_free                           (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Free the memory taken by <em class="parameter"><code>itdb</code></em>.</p>
 <p>
@@ -294,14 +264,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2725214"></a><h3>
+<a name="id2515210"></a><h3>
 <a name="itdb-parse"></a>itdb_parse ()</h3>
-<a class="indexterm" name="id2725226"></a><pre class="programlisting"><a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_parse                          (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mp,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2515222"></a><pre class="programlisting"><a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_parse                          (const gchar *mp,
+                                                         GError **error);</pre>
 <p>
 Parse the Itdb_iTunesDB of the iPod located at <em class="parameter"><code>mp</code></em></p>
 <p>
@@ -317,9 +283,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -335,14 +299,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2807365"></a><h3>
+<a name="id2598461"></a><h3>
 <a name="itdb-write"></a>itdb_write ()</h3>
-<a class="indexterm" name="id2807375"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_write                          (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+<a class="indexterm" name="id2598472"></a><pre class="programlisting">gboolean            itdb_write                          (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         GError **error);</pre>
 <p>
 Write out an iTunesDB. It reassigns unique IDs to all tracks. 
 An existing "Play Counts" file is renamed to "Play Counts.bak" if
@@ -362,9 +322,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></td>
-<td> return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
+<td> return location for a <span class="type">GError</span> or NULL
 </td>
 </tr>
 <tr>
@@ -378,12 +336,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2807470"></a><h3>
+<a name="id2598567"></a><h3>
 <a name="itdb-set-mountpoint"></a>itdb_set_mountpoint ()</h3>
-<a class="indexterm" name="id2807481"></a><pre class="programlisting">void                itdb_set_mountpoint                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mp);</pre>
+<a class="indexterm" name="id2598577"></a><pre class="programlisting">void                itdb_set_mountpoint                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         const gchar *mp);</pre>
 <p>
 Sets the mountpoint of <em class="parameter"><code>db</code></em>. Always use this function to set the mountpoint
 of an <a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> as it will reset the number of available 
@@ -410,11 +366,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2807570"></a><h3>
+<a name="id2598666"></a><h3>
 <a name="itdb-get-mountpoint"></a>itdb_get_mountpoint ()</h3>
-<a class="indexterm" name="id2807580"></a><pre class="programlisting">const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*        itdb_get_mountpoint                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2598676"></a><pre class="programlisting">const gchar*        itdb_get_mountpoint                 (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Retrieve a reference to the mountpoint of <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -439,11 +393,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2807651"></a><h3>
+<a name="id2598748"></a><h3>
 <a name="itdb-tracks-number"></a>itdb_tracks_number ()</h3>
-<a class="indexterm" name="id2807662"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a>             itdb_tracks_number                  (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2598758"></a><pre class="programlisting">guint32             itdb_tracks_number                  (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Counts the number of tracks stored in <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -467,11 +419,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2807731"></a><h3>
+<a name="id2598827"></a><h3>
 <a name="itdb-tracks-number-nontransferred"></a>itdb_tracks_number_nontransferred ()</h3>
-<a class="indexterm" name="id2807745"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a>             itdb_tracks_number_nontransferred   (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2598840"></a><pre class="programlisting">guint32             itdb_tracks_number_nontransferred   (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Counts the number of non-transferred tracks in <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -497,11 +447,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2807823"></a><h3>
+<a name="id2598919"></a><h3>
 <a name="itdb-playlists-number"></a>itdb_playlists_number ()</h3>
-<a class="indexterm" name="id2807833"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a>             itdb_playlists_number               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2598929"></a><pre class="programlisting">guint32             itdb_playlists_number               (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Counts the number of playlists stored in <em class="parameter"><code>itdb</code></em></p>
 <p>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Time-handling.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Time-handling.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Time-handling.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Low-level-functions.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2806583" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2595954" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2799839" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2590936" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Time-handling"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2806583"></a><span class="refentrytitle">Time handling</span>
+<a name="id2595954"></a><span class="refentrytitle">Time handling</span>
 </h2>
 <p>Time handling &#8212; Helper functions to convert between Epoch time and Mac (iPod) time</p>
 </td>
@@ -50,7 +50,7 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2799839"></a><h2>Description</h2>
+<a name="id2590936"></a><h2>Description</h2>
 <p>
 The functions provide conversion between Epoch time and Mac (iPod) time. These 
 functions are now obsolete and should no longer be used, libgpod automatically
@@ -59,17 +59,15 @@
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2799859"></a><h2>Details</h2>
+<a name="id2590955"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2799870"></a><h3>
+<a name="id2590966"></a><h3>
 <a name="itdb-time-get-mac-time"></a>itdb_time_get_mac_time ()</h3>
-<a class="indexterm" name="id2799883"></a><pre class="programlisting">time_t              itdb_time_get_mac_time              (void);</pre>
+<a class="indexterm" name="id2590980"></a><pre class="programlisting">time_t              itdb_time_get_mac_time              (void);</pre>
 <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
 <h3 class="title">Warning</h3>
 <p><code class="literal">itdb_time_get_mac_time</code> is deprecated and should not be used in newly-written code. kept for compatibility with older code, directly use 
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html#g-get-current-time"
-><code class="function">g_get_current_time()</code></a> or time(NULL) instead</p>
+<code class="function">g_get_current_time()</code> or time(NULL) instead</p>
 </div>
 <p>
 Gets the current time in a format appropriate for storing in the libgpod
@@ -89,9 +87,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2799947"></a><h3>
+<a name="id2591043"></a><h3>
 <a name="itdb-time-mac-to-host"></a>itdb_time_mac_to_host ()</h3>
-<a class="indexterm" name="id2803945"></a><pre class="programlisting">time_t              itdb_time_mac_to_host               (time_t time);</pre>
+<a class="indexterm" name="id2572856"></a><pre class="programlisting">time_t              itdb_time_mac_to_host               (time_t time);</pre>
 <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
 <h3 class="title">Warning</h3>
 <p><code class="literal">itdb_time_mac_to_host</code> is deprecated and should not be used in newly-written code. It's been kept for compatibility with older code, but this
@@ -121,9 +119,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2804019"></a><h3>
+<a name="id2572930"></a><h3>
 <a name="itdb-time-host-to-mac"></a>itdb_time_host_to_mac ()</h3>
-<a class="indexterm" name="id2804032"></a><pre class="programlisting">time_t              itdb_time_host_to_mac               (time_t time);</pre>
+<a class="indexterm" name="id2572943"></a><pre class="programlisting">time_t              itdb_time_host_to_mac               (time_t time);</pre>
 <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
 <h3 class="title">Warning</h3>
 <p><code class="literal">itdb_time_host_to_mac</code> is deprecated and should not be used in newly-written code. It's been kept for compatibility with older code, but this

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Tracks.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Tracks.html	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Tracks.html	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Playlists.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2783483" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2578583" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2778427" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2558664" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Tracks"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2783483"></a><span class="refentrytitle">Tracks</span>
+<a name="id2578583"></a><span class="refentrytitle">Tracks</span>
 </h2>
 <p>Tracks &#8212; Data structure to store metadata about an iPod track</p>
 </td>
@@ -51,66 +51,40 @@
 void                <a href="libgpod-Tracks.html#itdb-track-free">itdb_track_free</a>                     (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);
 void                <a href="libgpod-Tracks.html#itdb-track-add">itdb_track_add</a>                      (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"
->gint32</a> pos);
+                                                         gint32 pos);
 void                <a href="libgpod-Tracks.html#itdb-track-remove">itdb_track_remove</a>                   (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);
 void                <a href="libgpod-Tracks.html#itdb-track-unlink">itdb_track_unlink</a>                   (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);
 <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         <a href="libgpod-Tracks.html#itdb-track-duplicate">itdb_track_duplicate</a>                (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *tr);
 <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         <a href="libgpod-Tracks.html#itdb-track-by-id">itdb_track_by_id</a>                    (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a> id);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
->GTree</a>*              <a href="libgpod-Tracks.html#itdb-track-id-tree-create">itdb_track_id_tree_create</a>           (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
-void                <a href="libgpod-Tracks.html#itdb-track-id-tree-destroy">itdb_track_id_tree_destroy</a>          (<a
-href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
->GTree</a> *idtree);
-<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         <a href="libgpod-Tracks.html#itdb-track-id-tree-by-id">itdb_track_id_tree_by_id</a>            (<a
-href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
->GTree</a> *idtree,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a> id);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Tracks.html#itdb-track-set-thumbnails">itdb_track_set_thumbnails</a>           (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Tracks.html#itdb-track-set-thumbnails-from-data">itdb_track_set_thumbnails_from_data</a> (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guchar"
->guchar</a> *image_data,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"
->gsize</a> image_data_len);
-<a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a href="libgpod-Tracks.html#itdb-track-set-thumbnails-from-pixbuf">itdb_track_set_thumbnails_from_pixbuf</a>
+                                                         guint32 id);
+GTree*              <a href="libgpod-Tracks.html#itdb-track-id-tree-create">itdb_track_id_tree_create</a>           (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
+void                <a href="libgpod-Tracks.html#itdb-track-id-tree-destroy">itdb_track_id_tree_destroy</a>          (GTree *idtree);
+<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         <a href="libgpod-Tracks.html#itdb-track-id-tree-by-id">itdb_track_id_tree_by_id</a>            (GTree *idtree,
+                                                         guint32 id);
+gboolean            <a href="libgpod-Tracks.html#itdb-track-set-thumbnails">itdb_track_set_thumbnails</a>           (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
+                                                         const gchar *filename);
+gboolean            <a href="libgpod-Tracks.html#itdb-track-set-thumbnails-from-data">itdb_track_set_thumbnails_from_data</a> (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
+                                                         const guchar *image_data,
+                                                         gsize image_data_len);
+gboolean            <a href="libgpod-Tracks.html#itdb-track-set-thumbnails-from-pixbuf">itdb_track_set_thumbnails_from_pixbuf</a>
                                                         (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a> pixbuf);
+                                                         gpointer pixbuf);
 void                <a href="libgpod-Tracks.html#itdb-track-remove-thumbnails">itdb_track_remove_thumbnails</a>        (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2778427"></a><h2>Description</h2>
+<a name="id2558664"></a><h2>Description</h2>
 <p>
 These functions and structures are for storing and retrieving
 information about an iPod track.
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2769358"></a><h2>Details</h2>
+<a name="id2558685"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2769369"></a><h3>
+<a name="id2558696"></a><h3>
 <a name="Itdb-Track"></a>Itdb_Track</h3>
-<a class="indexterm" name="id2769381"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2558708"></a><pre class="programlisting">typedef struct {
   Itdb_iTunesDB *itdb;       /* pointer to iTunesDB (for convenience)   */
   gchar   *title;            /* title (utf8)                            */
   gchar   *ipod_path;        /* name of file on iPod: uses ":" instead
@@ -170,9 +144,9 @@
   gint32  year;              /* year                                    */
   gint32  volume;            /* volume adjustment                       */
   guint32 soundcheck;        /* volume adjustment "soundcheck"          */
-  time_t  time_added;        /* time when added (Mac type)              */
-  time_t  time_modified;     /* time of last modification (Mac type)    */
-  time_t  time_played;       /* time of last play (Mac type)            */
+  time_t  time_added;        /* time when added                         */
+  time_t  time_modified;     /* time of last modification               */
+  time_t  time_played;       /* time of last play                       */
   guint32 bookmark_time;     /* bookmark set for (AudioBook) in ms      */
   guint32 rating;            /* star rating (stars * RATING_STEP (20))  */
   guint32 playcount;         /* number of times track was played        */
@@ -380,9 +354,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2789910"></a><h3>
+<a name="id2575921"></a><h3>
 <a name="Itdb-Mediatype"></a>enum Itdb_Mediatype</h3>
-<a class="indexterm" name="id2776822"></a><pre class="programlisting">typedef enum
+<a class="indexterm" name="id2573134"></a><pre class="programlisting">typedef enum
 {
     ITDB_MEDIATYPE_AUDIO      = 0x0001,
     ITDB_MEDIATYPE_MOVIE      = 0x0002,
@@ -398,9 +372,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2786708"></a><h3>
+<a name="id2575630"></a><h3>
 <a name="ITDB-RATING-STEP:CAPS"></a>ITDB_RATING_STEP</h3>
-<a class="indexterm" name="id2786720"></a><pre class="programlisting">#define ITDB_RATING_STEP 20
+<a class="indexterm" name="id2575642"></a><pre class="programlisting">#define ITDB_RATING_STEP 20
 </pre>
 <p>
 
@@ -408,9 +382,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2786735"></a><h3>
+<a name="id2575658"></a><h3>
 <a name="itdb-track-new"></a>itdb_track_new ()</h3>
-<a class="indexterm" name="id2774783"></a><pre class="programlisting"><a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_new                      (void);</pre>
+<a class="indexterm" name="id2569041"></a><pre class="programlisting"><a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_new                      (void);</pre>
 <p>
 Creates an empty <a href="libgpod-Tracks.html#Itdb-Track"><span class="type">Itdb_Track</span></a></p>
 <p>
@@ -428,9 +402,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2769439"></a><h3>
+<a name="id2558766"></a><h3>
 <a name="itdb-track-free"></a>itdb_track_free ()</h3>
-<a class="indexterm" name="id2769451"></a><pre class="programlisting">void                itdb_track_free                     (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
+<a class="indexterm" name="id2558778"></a><pre class="programlisting">void                itdb_track_free                     (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Frees the memory used by <em class="parameter"><code>track</code></em></p>
 <p>
@@ -447,13 +421,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2769512"></a><h3>
+<a name="id2558839"></a><h3>
 <a name="itdb-track-add"></a>itdb_track_add ()</h3>
-<a class="indexterm" name="id2769525"></a><pre class="programlisting">void                itdb_track_add                      (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+<a class="indexterm" name="id2558852"></a><pre class="programlisting">void                itdb_track_add                      (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"
->gint32</a> pos);</pre>
+                                                         gint32 pos);</pre>
 <p>
 Adds <em class="parameter"><code>track</code></em> to <em class="parameter"><code>itdb-&gt;tracks</code></em> at position <em class="parameter"><code>pos</code></em> (or at the end if pos
 is -1). The application is responsible to also add it to the master
@@ -485,9 +457,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814365"></a><h3>
+<a name="id2605462"></a><h3>
 <a name="itdb-track-remove"></a>itdb_track_remove ()</h3>
-<a class="indexterm" name="id2814375"></a><pre class="programlisting">void                itdb_track_remove                   (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
+<a class="indexterm" name="id2605472"></a><pre class="programlisting">void                itdb_track_remove                   (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Removes <em class="parameter"><code>track</code></em> from the <a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> it's associated with, and frees the
 memory it uses. It doesn't remove the track from the playlists it may have
@@ -506,9 +478,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814440"></a><h3>
+<a name="id2605537"></a><h3>
 <a name="itdb-track-unlink"></a>itdb_track_unlink ()</h3>
-<a class="indexterm" name="id2814450"></a><pre class="programlisting">void                itdb_track_unlink                   (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
+<a class="indexterm" name="id2605548"></a><pre class="programlisting">void                itdb_track_unlink                   (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Removes <em class="parameter"><code>track</code></em> from the <a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> it's associated with, but do not free
 memory. It doesn't remove the track from the playlists it may have been 
@@ -528,9 +500,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814516"></a><h3>
+<a name="id2605613"></a><h3>
 <a name="itdb-track-duplicate"></a>itdb_track_duplicate ()</h3>
-<a class="indexterm" name="id2814526"></a><pre class="programlisting"><a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_duplicate                (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *tr);</pre>
+<a class="indexterm" name="id2605624"></a><pre class="programlisting"><a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_duplicate                (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *tr);</pre>
 <p>
 Duplicates an existing track</p>
 <p>
@@ -554,12 +526,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814592"></a><h3>
+<a name="id2605690"></a><h3>
 <a name="itdb-track-by-id"></a>itdb_track_by_id ()</h3>
-<a class="indexterm" name="id2814602"></a><pre class="programlisting"><a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_by_id                    (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a> id);</pre>
+<a class="indexterm" name="id2605700"></a><pre class="programlisting"><a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_by_id                    (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+                                                         guint32 id);</pre>
 <p>
 Looks up a track using its ID in <em class="parameter"><code>itdb</code></em>. 
 Looking up tracks by ID is not really a good idea because the IDs
@@ -596,11 +566,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814729"></a><h3>
+<a name="id2605826"></a><h3>
 <a name="itdb-track-id-tree-create"></a>itdb_track_id_tree_create ()</h3>
-<a class="indexterm" name="id2814739"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
->GTree</a>*              itdb_track_id_tree_create           (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2605836"></a><pre class="programlisting">GTree*              itdb_track_id_tree_create           (<a href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Creates a balanced-binary tree for quick ID lookup that is used in
 <code class="function">itdb_track_by_id_tree()</code> function below</p>
@@ -617,9 +585,7 @@
 </tr>
 <tr>
 <td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
-<td> a <a
-href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
-><span class="type">GTree</span></a> indexed by track IDs to be freed with 
+<td> a <span class="type">GTree</span> indexed by track IDs to be freed with 
 <a href="libgpod-Tracks.html#itdb-track-id-tree-destroy"><code class="function">itdb_track_id_tree_destroy()</code></a> when no longer used
 </td>
 </tr>
@@ -628,11 +594,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814824"></a><h3>
+<a name="id2605920"></a><h3>
 <a name="itdb-track-id-tree-destroy"></a>itdb_track_id_tree_destroy ()</h3>
-<a class="indexterm" name="id2814835"></a><pre class="programlisting">void                itdb_track_id_tree_destroy          (<a
-href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
->GTree</a> *idtree);</pre>
+<a class="indexterm" name="id2605932"></a><pre class="programlisting">void                itdb_track_id_tree_destroy          (GTree *idtree);</pre>
 <p>
 Frees the memory used by <em class="parameter"><code>idtree</code></em></p>
 <p>
@@ -642,23 +606,17 @@
 <col align="left" valign="top">
 <tbody><tr>
 <td><span class="term"><em class="parameter"><code>idtree</code></em>&#160;:</span></td>
-<td> a <a
-href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
-><span class="type">GTree</span></a>
+<td> a <span class="type">GTree</span>
 </td>
 </tr></tbody>
 </table></div>
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2814889"></a><h3>
+<a name="id2605986"></a><h3>
 <a name="itdb-track-id-tree-by-id"></a>itdb_track_id_tree_by_id ()</h3>
-<a class="indexterm" name="id2814900"></a><pre class="programlisting"><a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_id_tree_by_id            (<a
-href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
->GTree</a> *idtree,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
->guint32</a> id);</pre>
+<a class="indexterm" name="id2605996"></a><pre class="programlisting"><a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_id_tree_by_id            (GTree *idtree,
+                                                         guint32 id);</pre>
 <p>
 Lookup an <a href="libgpod-Tracks.html#Itdb-Track"><span class="type">Itdb_Track</span></a> by <em class="parameter"><code>id</code></em> using <em class="parameter"><code>idtree</code></em> for faster lookup (compared to
 itdb_track_by_id)</p>
@@ -670,9 +628,7 @@
 <tbody>
 <tr>
 <td><span class="term"><em class="parameter"><code>idtree</code></em>&#160;:</span></td>
-<td> a <a
-href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
-><span class="type">GTree</span></a> created using <a href="libgpod-Tracks.html#itdb-track-id-tree-create"><code class="function">itdb_track_id_tree_create()</code></a>
+<td> a <span class="type">GTree</span> created using <a href="libgpod-Tracks.html#itdb-track-id-tree-create"><code class="function">itdb_track_id_tree_create()</code></a>
 </td>
 </tr>
 <tr>
@@ -691,14 +647,10 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2815017"></a><h3>
+<a name="id2606114"></a><h3>
 <a name="itdb-track-set-thumbnails"></a>itdb_track_set_thumbnails ()</h3>
-<a class="indexterm" name="id2815028"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_track_set_thumbnails           (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *filename);</pre>
+<a class="indexterm" name="id2606125"></a><pre class="programlisting">gboolean            itdb_track_set_thumbnails           (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
+                                                         const gchar *filename);</pre>
 <p>
 Uses the image contained in <em class="parameter"><code>filename</code></em> to generate iPod thumbnails. The image
 can be in any format supported by gdk-pixbuf. To save memory, the thumbnails
@@ -730,17 +682,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2815127"></a><h3>
+<a name="id2606224"></a><h3>
 <a name="itdb-track-set-thumbnails-from-data"></a>itdb_track_set_thumbnails_from_data ()</h3>
-<a class="indexterm" name="id2815140"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_track_set_thumbnails_from_data (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guchar"
->guchar</a> *image_data,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"
->gsize</a> image_data_len);</pre>
+<a class="indexterm" name="id2606237"></a><pre class="programlisting">gboolean            itdb_track_set_thumbnails_from_data (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
+                                                         const guchar *image_data,
+                                                         gsize image_data_len);</pre>
 <p>
 Uses <em class="parameter"><code>image_data</code></em> to generate iPod thumbnails. The image can be in
 any format supported by gdk-pixbuf. To save memory, the thumbnails
@@ -778,15 +724,11 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2815258"></a><h3>
+<a name="id2606355"></a><h3>
 <a name="itdb-track-set-thumbnails-from-pixbuf"></a>itdb_track_set_thumbnails_from_pixbuf ()</h3>
-<a class="indexterm" name="id2815271"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_track_set_thumbnails_from_pixbuf
+<a class="indexterm" name="id2606368"></a><pre class="programlisting">gboolean            itdb_track_set_thumbnails_from_pixbuf
                                                         (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
->gpointer</a> pixbuf);</pre>
+                                                         gpointer pixbuf);</pre>
 <p>
 Uses <em class="parameter"><code>pixbuf</code></em> to generate iPod thumbnails. To save memory, the thumbnails
 will only be generated when necessary, ie when <code class="function">itdb_save()</code> or a
@@ -804,9 +746,7 @@
 </tr>
 <tr>
 <td><span class="term"><em class="parameter"><code>pixbuf</code></em>&#160;:</span></td>
-<td> a <a
-href="/usr/share/gtk-doc/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf.html#GdkPixbuf"
-><span class="type">GdkPixbuf</span></a> used to generate the thumbnail
+<td> a <span class="type">GdkPixbuf</span> used to generate the thumbnail
 </td>
 </tr>
 <tr>
@@ -819,9 +759,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2815376"></a><h3>
+<a name="id2606473"></a><h3>
 <a name="itdb-track-remove-thumbnails"></a>itdb_track_remove_thumbnails ()</h3>
-<a class="indexterm" name="id2815388"></a><pre class="programlisting">void                itdb_track_remove_thumbnails        (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
+<a class="indexterm" name="id2606485"></a><pre class="programlisting">void                itdb_track_remove_thumbnails        (<a href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Removes the thumbnails associated with <em class="parameter"><code>track</code></em></p>
 <p>

Modified: libgpod/branches/upstream/current/docs/reference/tmpl/artwork.sgml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/tmpl/artwork.sgml	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/tmpl/artwork.sgml	2007-11-12 21:03:04 UTC (rev 251)
@@ -74,6 +74,10 @@
 @ITDB_THUMB_PHOTO_LARGE: 
 @ITDB_THUMB_PHOTO_FULL_SCREEN: 
 @ITDB_THUMB_PHOTO_TV_SCREEN: 
+ at ITDB_THUMB_COVER_XLARGE: 
+ at ITDB_THUMB_COVER_MEDIUM: 
+ at ITDB_THUMB_COVER_SMEDIUM: 
+ at ITDB_THUMB_COVER_XSMALL: 
 
 <!-- ##### FUNCTION itdb_artwork_new ##### -->
 <para>

Modified: libgpod/branches/upstream/current/docs/reference/tmpl/device.sgml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/tmpl/device.sgml	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/tmpl/device.sgml	2007-11-12 21:03:04 UTC (rev 251)
@@ -168,9 +168,22 @@
 @ITDB_IPOD_GENERATION_SECOND: 
 @ITDB_IPOD_GENERATION_THIRD: 
 @ITDB_IPOD_GENERATION_FOURTH: 
+ at ITDB_IPOD_GENERATION_PHOTO: 
+ at ITDB_IPOD_GENERATION_MOBILE: 
+ at ITDB_IPOD_GENERATION_MINI_1: 
+ at ITDB_IPOD_GENERATION_MINI_2: 
+ at ITDB_IPOD_GENERATION_SHUFFLE_1: 
+ at ITDB_IPOD_GENERATION_SHUFFLE_2: 
+ at ITDB_IPOD_GENERATION_SHUFFLE_3: 
+ at ITDB_IPOD_GENERATION_NANO_1: 
+ at ITDB_IPOD_GENERATION_NANO_2: 
+ at ITDB_IPOD_GENERATION_NANO_3: 
+ at ITDB_IPOD_GENERATION_VIDEO_1: 
+ at ITDB_IPOD_GENERATION_VIDEO_2: 
+ at ITDB_IPOD_GENERATION_CLASSIC_1: 
+ at ITDB_IPOD_GENERATION_TOUCH_1: 
 @ITDB_IPOD_GENERATION_FIFTH: 
 @ITDB_IPOD_GENERATION_SIXTH: 
- at ITDB_IPOD_GENERATION_MOBILE: 
 
 <!-- ##### STRUCT Itdb_IpodInfo ##### -->
 <para>
@@ -214,6 +227,17 @@
 @ITDB_IPOD_MODEL_NANO_BLUE: 
 @ITDB_IPOD_MODEL_NANO_GREEN: 
 @ITDB_IPOD_MODEL_NANO_PINK: 
+ at ITDB_IPOD_MODEL_NANO_RED: 
+ at ITDB_IPOD_MODEL_IPHONE_1: 
+ at ITDB_IPOD_MODEL_SHUFFLE_SILVER: 
+ at ITDB_IPOD_MODEL_SHUFFLE_PINK: 
+ at ITDB_IPOD_MODEL_SHUFFLE_BLUE: 
+ at ITDB_IPOD_MODEL_SHUFFLE_GREEN: 
+ at ITDB_IPOD_MODEL_SHUFFLE_ORANGE: 
+ at ITDB_IPOD_MODEL_SHUFFLE_PURPLE: 
+ at ITDB_IPOD_MODEL_CLASSIC_SILVER: 
+ at ITDB_IPOD_MODEL_CLASSIC_BLACK: 
+ at ITDB_IPOD_MODEL_TOUCH_BLACK: 
 
 <!-- ##### STRUCT Itdb_ArtworkFormat ##### -->
 <para>
@@ -225,4 +249,5 @@
 @height: 
 @correlation_id: 
 @format: 
+ at padding: 
 

Modified: libgpod/branches/upstream/current/docs/reference/tmpl/itunesdb-db.sgml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/tmpl/itunesdb-db.sgml	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/tmpl/itunesdb-db.sgml	2007-11-12 21:03:04 UTC (rev 251)
@@ -70,14 +70,14 @@
 in the original music file. That's also from where the data is
 read when artwork is displayed in iTunes, and there can be more
 than one piece of artwork. libgpod does not store the artwork as
-tags in the original music file. As a consequence, if you iTunes
+tags in the original music file. As a consequence, if iTunes
 attempts to access the artwork, it will find none, and remove
 libgpod's artwork. Luckily, iTunes will only attempt to access
-the artwork if you select a track in Tunes. (To work around
+the artwork if you select a track in iTunes. (To work around
 this, gtkpod keeps a list of the original filename of all
 artwork and silently adds the thumbnails if they were 'lost'.
 Your application might want to do something similar, or you can
-supply patches for optionally! adding tags to the original music
+supply patches for (optionally!) adding tags to the original music
 files.)
 </para>
 <para>

Modified: libgpod/branches/upstream/current/docs/reference/xml/artwork.xml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/xml/artwork.xml	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/xml/artwork.xml	2007-11-12 21:03:04 UTC (rev 251)
@@ -89,10 +89,9 @@
     guint32 rating;        /* Rating from iPhoto * 20 (PhotoDB only) */
     gint32  unk036;
     time_t  creation_date;  /* Date the image file was created
-			      (creation date of image file (Mac type,
+			      (creation date of image file (PhotoDB only) */
+    time_t  digitized_date;/* Date the image was taken (EXIF information,
 			      PhotoDB only) */
-    time_t  digitized_date;/* Date the image was taken (EXIF
-			      information, Mac type, PhotoDB only) */
     guint32 artwork_size;  /* Size in bytes of the original source
 			      image (PhotoDB only -- don't touch in
 			      case of ArtworkDB!) */
@@ -142,12 +141,16 @@
 <refsect2>
 <title><anchor id="ItdbThumbType" role="enum"/>enum ItdbThumbType</title>
 <indexterm><primary>ItdbThumbType</primary></indexterm><programlisting>typedef enum { 
-    ITDB_THUMB_COVER_SMALL,
+    ITDB_THUMB_COVER_SMALL = 0,
     ITDB_THUMB_COVER_LARGE,
     ITDB_THUMB_PHOTO_SMALL,
     ITDB_THUMB_PHOTO_LARGE,
     ITDB_THUMB_PHOTO_FULL_SCREEN,
-    ITDB_THUMB_PHOTO_TV_SCREEN
+    ITDB_THUMB_PHOTO_TV_SCREEN,
+    ITDB_THUMB_COVER_XLARGE,      /* iPhone: cover flow */
+    ITDB_THUMB_COVER_MEDIUM,      /* iPhone: cover view */
+    ITDB_THUMB_COVER_SMEDIUM,     /* iPhone: ??         */
+    ITDB_THUMB_COVER_XSMALL,      /* iPhone: ??         */
 } ItdbThumbType;
 </programlisting>
 <para>

Modified: libgpod/branches/upstream/current/docs/reference/xml/device.xml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/xml/device.xml	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/xml/device.xml	2007-11-12 21:03:04 UTC (rev 251)
@@ -334,9 +334,23 @@
     ITDB_IPOD_GENERATION_SECOND,
     ITDB_IPOD_GENERATION_THIRD,
     ITDB_IPOD_GENERATION_FOURTH,
+    ITDB_IPOD_GENERATION_PHOTO,
+    ITDB_IPOD_GENERATION_MOBILE,
+    ITDB_IPOD_GENERATION_MINI_1,
+    ITDB_IPOD_GENERATION_MINI_2,
+    ITDB_IPOD_GENERATION_SHUFFLE_1,
+    ITDB_IPOD_GENERATION_SHUFFLE_2,
+    ITDB_IPOD_GENERATION_SHUFFLE_3,
+    ITDB_IPOD_GENERATION_NANO_1,
+    ITDB_IPOD_GENERATION_NANO_2,
+    ITDB_IPOD_GENERATION_NANO_3,
+    ITDB_IPOD_GENERATION_VIDEO_1,
+    ITDB_IPOD_GENERATION_VIDEO_2,
+    ITDB_IPOD_GENERATION_CLASSIC_1,
+    ITDB_IPOD_GENERATION_TOUCH_1,
+    /* The following 2 are no longer in use and should be removed */
     ITDB_IPOD_GENERATION_FIFTH,
     ITDB_IPOD_GENERATION_SIXTH,
-    ITDB_IPOD_GENERATION_MOBILE
 } Itdb_IpodGeneration;
 </programlisting>
 <para>
@@ -392,7 +406,18 @@
     ITDB_IPOD_MODEL_NANO_SILVER,
     ITDB_IPOD_MODEL_NANO_BLUE,
     ITDB_IPOD_MODEL_NANO_GREEN,
-    ITDB_IPOD_MODEL_NANO_PINK
+    ITDB_IPOD_MODEL_NANO_PINK,
+    ITDB_IPOD_MODEL_NANO_RED,
+    ITDB_IPOD_MODEL_IPHONE_1,
+    ITDB_IPOD_MODEL_SHUFFLE_SILVER,
+    ITDB_IPOD_MODEL_SHUFFLE_PINK,
+    ITDB_IPOD_MODEL_SHUFFLE_BLUE,
+    ITDB_IPOD_MODEL_SHUFFLE_GREEN,
+    ITDB_IPOD_MODEL_SHUFFLE_ORANGE,
+    ITDB_IPOD_MODEL_SHUFFLE_PURPLE,
+    ITDB_IPOD_MODEL_CLASSIC_SILVER,
+    ITDB_IPOD_MODEL_CLASSIC_BLACK,
+    ITDB_IPOD_MODEL_TOUCH_BLACK,
 } Itdb_IpodModel;
 </programlisting>
 <para>
@@ -406,6 +431,7 @@
 	gint16 height;
 	gint16 correlation_id;
         ItdbThumbFormat format;
+        gint32 padding;
 } Itdb_ArtworkFormat;
 </programlisting>
 <para>

Modified: libgpod/branches/upstream/current/docs/reference/xml/itunesdb-db.xml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/xml/itunesdb-db.xml	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/xml/itunesdb-db.xml	2007-11-12 21:03:04 UTC (rev 251)
@@ -114,14 +114,14 @@
 in the original music file. That's also from where the data is
 read when artwork is displayed in iTunes, and there can be more
 than one piece of artwork. libgpod does not store the artwork as
-tags in the original music file. As a consequence, if you iTunes
+tags in the original music file. As a consequence, if iTunes
 attempts to access the artwork, it will find none, and remove
 libgpod's artwork. Luckily, iTunes will only attempt to access
-the artwork if you select a track in Tunes. (To work around
+the artwork if you select a track in iTunes. (To work around
 this, gtkpod keeps a list of the original filename of all
 artwork and silently adds the thumbnails if they were 'lost'.
 Your application might want to do something similar, or you can
-supply patches for optionally! adding tags to the original music
+supply patches for (optionally!) adding tags to the original music
 files.)
 </para>
 <para>

Modified: libgpod/branches/upstream/current/docs/reference/xml/smart-playlists.xml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/xml/smart-playlists.xml	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/xml/smart-playlists.xml	2007-11-12 21:03:04 UTC (rev 251)
@@ -262,21 +262,20 @@
     ITDB_SPLFIELD_YEAR = 0x07,         /* Int  (e.g. from/to = 2004) */
     ITDB_SPLFIELD_GENRE = 0x08,        /* String */
     ITDB_SPLFIELD_KIND = 0x09,         /* String */
-    ITDB_SPLFIELD_DATE_MODIFIED = 0x0a,/* Int/Mac Timestamp (e.g. from/to =
-                                     bcf93280 == is before 6/19/2004)*/
+    ITDB_SPLFIELD_DATE_MODIFIED = 0x0a,/* Int (e.g. from/to = bcf93280 ==
+				     is before 6/19/2004)*/
     ITDB_SPLFIELD_TRACKNUMBER = 0x0b,  /* Int (e.g. from = 1, to = 2) */
     ITDB_SPLFIELD_SIZE = 0x0c,         /* Int (e.g. from/to = 0x00600000
 				     for 6MB) */
     ITDB_SPLFIELD_TIME = 0x0d,         /* Int (e.g. from/to = 83999 for
 				     1:23/83 seconds) */
     ITDB_SPLFIELD_COMMENT = 0x0e,      /* String */
-    ITDB_SPLFIELD_DATE_ADDED = 0x10,   /* Int/Mac Timestamp (e.g. from/to =
-                                     bcfa83ff == is after 6/19/2004) */
+    ITDB_SPLFIELD_DATE_ADDED = 0x10,   /* Int (e.g. from/to = bcfa83ff ==
+				     is after 6/19/2004) */
     ITDB_SPLFIELD_COMPOSER = 0x12,     /* String */
     ITDB_SPLFIELD_PLAYCOUNT = 0x16,    /* Int  (e.g. from/to = 1) */
-    ITDB_SPLFIELD_LAST_PLAYED = 0x17,  /* Int/Mac Timestamp (e.g. from =
-                                     bcfa83ff (6/19/2004) to =
-                                     0xbcfbd57f (6/20/2004)) */
+    ITDB_SPLFIELD_LAST_PLAYED = 0x17,  /* Int/ (e.g. from = bcfa83ff (6/19/2004)
+				     to = 0xbcfbd57f (6/20/2004)) */
     ITDB_SPLFIELD_DISC_NUMBER = 0x18,  /* Int  (e.g. from/to = 1) */
     ITDB_SPLFIELD_RATING = 0x19,       /* Int/Stars Rating (e.g. from/to =
                                      60 (3 stars)) */
@@ -294,7 +293,7 @@
     ITDB_SPLFIELD_TVSHOW = 0x3e,       /* String */
     ITDB_SPLFIELD_SEASON_NR = 0x3f,    /* Int */
     ITDB_SPLFIELD_SKIPCOUNT = 0x44,    /* Int */
-    ITDB_SPLFIELD_LAST_SKIPPED = 0x45, /* Int/Mac Timestamp */
+    ITDB_SPLFIELD_LAST_SKIPPED = 0x45, /* Int */
     ITDB_SPLFIELD_ALBUMARTIST = 0x47   /* String */
 } ItdbSPLField;
 </programlisting>

Modified: libgpod/branches/upstream/current/docs/reference/xml/track.xml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/xml/track.xml	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/docs/reference/xml/track.xml	2007-11-12 21:03:04 UTC (rev 251)
@@ -130,9 +130,9 @@
   gint32  year;              /* year                                    */
   gint32  volume;            /* volume adjustment                       */
   guint32 soundcheck;        /* volume adjustment "soundcheck"          */
-  time_t  time_added;        /* time when added (Mac type)              */
-  time_t  time_modified;     /* time of last modification (Mac type)    */
-  time_t  time_played;       /* time of last play (Mac type)            */
+  time_t  time_added;        /* time when added                         */
+  time_t  time_modified;     /* time of last modification               */
+  time_t  time_played;       /* time of last play                       */
   guint32 bookmark_time;     /* bookmark set for (AudioBook) in ms      */
   guint32 rating;            /* star rating (stars * RATING_STEP (20))  */
   guint32 playcount;         /* number of times track was played        */

Modified: libgpod/branches/upstream/current/install-sh
===================================================================
--- libgpod/branches/upstream/current/install-sh	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/install-sh	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,7 +1,8 @@
 #!/bin/sh
-#
 # install - install a program, script, or datafile
-#
+
+scriptversion=2005-05-14.22
+
 # 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.
@@ -41,13 +42,11 @@
 # from scratch.  It can only install one file at a time, a restriction
 # shared with many OS's install programs.
 
-
 # set DOITPROG to echo to test this script
 
 # Don't use :- since 4.3BSD and earlier shells don't like it.
 doit="${DOITPROG-}"
 
-
 # put in absolute paths if you don't have them in your path; or use env. vars.
 
 mvprog="${MVPROG-mv}"
@@ -59,236 +58,266 @@
 rmprog="${RMPROG-rm}"
 mkdirprog="${MKDIRPROG-mkdir}"
 
-transformbasename=""
-transform_arg=""
-instcmd="$mvprog"
 chmodcmd="$chmodprog 0755"
-chowncmd=""
-chgrpcmd=""
-stripcmd=""
+chowncmd=
+chgrpcmd=
+stripcmd=
 rmcmd="$rmprog -f"
 mvcmd="$mvprog"
-src=""
-dst=""
-dir_arg=""
+src=
+dst=
+dir_arg=
+dstarg=
+no_target_directory=
 
-while [ x"$1" != x ]; do
-    case $1 in
-	-c) instcmd=$cpprog
-	    shift
-	    continue;;
+usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+   or: $0 [OPTION]... SRCFILES... DIRECTORY
+   or: $0 [OPTION]... -t DIRECTORY SRCFILES...
+   or: $0 [OPTION]... -d DIRECTORIES...
 
-	-d) dir_arg=true
-	    shift
-	    continue;;
+In the 1st form, copy SRCFILE to DSTFILE.
+In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
+In the 4th, create DIRECTORIES.
 
-	-m) chmodcmd="$chmodprog $2"
-	    shift
-	    shift
-	    continue;;
+Options:
+-c         (ignored)
+-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.
+--help     display this help and exit.
+--version  display version info and exit.
 
-	-o) chowncmd="$chownprog $2"
-	    shift
-	    shift
-	    continue;;
+Environment variables override the default commands:
+  CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
+"
 
-	-g) chgrpcmd="$chgrpprog $2"
-	    shift
-	    shift
-	    continue;;
+while test -n "$1"; do
+  case $1 in
+    -c) shift
+        continue;;
 
-	-s) stripcmd=$stripprog
-	    shift
-	    continue;;
+    -d) dir_arg=true
+        shift
+        continue;;
 
-	-t=*) transformarg=`echo $1 | sed 's/-t=//'`
-	    shift
-	    continue;;
+    -g) chgrpcmd="$chgrpprog $2"
+        shift
+        shift
+        continue;;
 
-	-b=*) transformbasename=`echo $1 | sed 's/-b=//'`
-	    shift
-	    continue;;
+    --help) echo "$usage"; exit $?;;
 
-	*)  if [ x"$src" = x ]
-	    then
-		src=$1
-	    else
-		# this colon is to work around a 386BSD /bin/sh bug
-		:
-		dst=$1
-	    fi
-	    shift
-	    continue;;
-    esac
-done
+    -m) chmodcmd="$chmodprog $2"
+        shift
+        shift
+        continue;;
 
-if [ x"$src" = x ]
-then
-	echo "$0: no input file specified" >&2
-	exit 1
-else
-	:
-fi
+    -o) chowncmd="$chownprog $2"
+        shift
+        shift
+        continue;;
 
-if [ x"$dir_arg" != x ]; then
-	dst=$src
-	src=""
+    -s) stripcmd=$stripprog
+        shift
+        continue;;
 
-	if [ -d "$dst" ]; then
-		instcmd=:
-		chmodcmd=""
-	else
-		instcmd=$mkdirprog
-	fi
-else
+    -t) dstarg=$2
+	shift
+	shift
+	continue;;
 
-# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
-# might cause directories to be created, which would be especially bad
-# if $src (and thus $dsttmp) contains '*'.
+    -T) no_target_directory=true
+	shift
+	continue;;
 
-	if [ -f "$src" ] || [ -d "$src" ]
-	then
-		:
-	else
-		echo "$0: $src does not exist" >&2
-		exit 1
-	fi
+    --version) echo "$0 $scriptversion"; exit $?;;
 
-	if [ x"$dst" = x ]
-	then
-		echo "$0: no destination specified" >&2
-		exit 1
-	else
-		:
-	fi
+    *)  # When -d is used, all remaining arguments are directories to create.
+	# When -t is used, the destination is already specified.
+	test -n "$dir_arg$dstarg" && break
+        # Otherwise, the last argument is the destination.  Remove it from $@.
+	for arg
+	do
+          if test -n "$dstarg"; then
+	    # $@ is not empty: it contains at least $arg.
+	    set fnord "$@" "$dstarg"
+	    shift # fnord
+	  fi
+	  shift # arg
+	  dstarg=$arg
+	done
+	break;;
+  esac
+done
 
-# If destination is a directory, append the input filename; if your system
-# does not like double slashes in filenames, you may need to add some logic
-
-	if [ -d "$dst" ]
-	then
-		dst=$dst/`basename "$src"`
-	else
-		:
-	fi
+if test -z "$1"; 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.
+  # This can happen when creating conditional directories.
+  exit 0
 fi
 
-## this sed command emulates the dirname command
-dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
+for src
+do
+  # Protect names starting with `-'.
+  case $src in
+    -*) src=./$src ;;
+  esac
 
-# Make sure that the destination directory exists.
-#  this part is taken from Noah Friedman's mkinstalldirs script
+  if test -n "$dir_arg"; then
+    dst=$src
+    src=
 
-# Skip lots of stat calls in the usual case.
-if [ ! -d "$dstdir" ]; then
-defaultIFS='
-	'
-IFS="${IFS-$defaultIFS}"
+    if test -d "$dst"; then
+      mkdircmd=:
+      chmodcmd=
+    else
+      mkdircmd=$mkdirprog
+    fi
+  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
 
-oIFS=$IFS
-# Some sh's can't handle IFS=/ for some reason.
-IFS='%'
-set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
-IFS=$oIFS
+    if test -z "$dstarg"; then
+      echo "$0: no destination specified." >&2
+      exit 1
+    fi
 
-pathcomp=''
+    dst=$dstarg
+    # Protect names starting with `-'.
+    case $dst in
+      -*) dst=./$dst ;;
+    esac
 
-while [ $# -ne 0 ] ; do
-	pathcomp=$pathcomp$1
-	shift
+    # 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: $dstarg: Is a directory" >&2
+	exit 1
+      fi
+      dst=$dst/`basename "$src"`
+    fi
+  fi
 
-	if [ ! -d "$pathcomp" ] ;
-        then
-		$mkdirprog "$pathcomp"
-	else
-		:
-	fi
+  # This sed command emulates the dirname command.
+  dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
 
-	pathcomp=$pathcomp/
-done
-fi
+  # Make sure that the destination directory exists.
 
-if [ x"$dir_arg" != x ]
-then
-	$doit $instcmd "$dst" &&
+  # Skip lots of stat calls in the usual case.
+  if test ! -d "$dstdir"; then
+    defaultIFS='
+	 '
+    IFS="${IFS-$defaultIFS}"
 
-	if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dst"; else : ; fi &&
-	if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dst"; else : ; fi &&
-	if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dst"; else : ; fi &&
-	if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dst"; else : ; fi
-else
+    oIFS=$IFS
+    # Some sh's can't handle IFS=/ for some reason.
+    IFS='%'
+    set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
+    shift
+    IFS=$oIFS
 
-# If we're going to rename the final executable, determine the name now.
+    pathcomp=
 
-	if [ x"$transformarg" = x ]
-	then
-		dstfile=`basename "$dst"`
-	else
-		dstfile=`basename "$dst" $transformbasename |
-			sed $transformarg`$transformbasename
-	fi
+    while test $# -ne 0 ; do
+      pathcomp=$pathcomp$1
+      shift
+      if test ! -d "$pathcomp"; then
+        $mkdirprog "$pathcomp"
+	# mkdir can fail with a `File exist' error in case several
+	# install-sh are creating the directory concurrently.  This
+	# is OK.
+	test -d "$pathcomp" || exit
+      fi
+      pathcomp=$pathcomp/
+    done
+  fi
 
-# don't allow the sed command to completely eliminate the filename
+  if test -n "$dir_arg"; then
+    $doit $mkdircmd "$dst" \
+      && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
+      && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
+      && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
+      && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
 
-	if [ x"$dstfile" = x ]
-	then
-		dstfile=`basename "$dst"`
-	else
-		:
-	fi
+  else
+    dstfile=`basename "$dst"`
 
-# Make a couple of temp file names in the proper directory.
+    # Make a couple of temp file names in the proper directory.
+    dsttmp=$dstdir/_inst.$$_
+    rmtmp=$dstdir/_rm.$$_
 
-	dsttmp=$dstdir/_inst.$$_
-	rmtmp=$dstdir/_rm.$$_
+    # Trap to clean up those temp files at exit.
+    trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
+    trap '(exit $?); exit' 1 2 13 15
 
-# Trap to clean up temp files at exit.
+    # Copy the file name to the temp name.
+    $doit $cpprog "$src" "$dsttmp" &&
 
-	trap 'status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0
-	trap '(exit $?); exit' 1 2 13 15
+    # 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 "$dsttmp"; } &&
 
-# Move or copy the file name to the temp name
+    # Now rename the file to the real destination.
+    { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 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.
 
-	$doit $instcmd "$src" "$dsttmp" &&
+	   # 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.
+	   {
+	     if test -f "$dstdir/$dstfile"; then
+	       $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
+	       || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
+	       || {
+		 echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
+		 (exit 1); exit 1
+	       }
+	     else
+	       :
+	     fi
+	   } &&
 
-# and set any options; do chmod last to preserve setuid bits
+	   # Now rename the file to the real destination.
+	   $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
+	 }
+    }
+  fi || { (exit 1); exit 1; }
+done
 
-# 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 $instcmd $src $dsttmp" command.
-
-	if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dsttmp"; else :;fi &&
-	if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dsttmp"; else :;fi &&
-	if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dsttmp"; else :;fi &&
-	if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dsttmp"; else :;fi &&
-
-# 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.
-
-{
-	if [ -f "$dstdir/$dstfile" ]
-	then
-		$doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null ||
-		$doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null ||
-		{
-		  echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
-		  (exit 1); exit
-		}
-	else
-		:
-	fi
-} &&
-
-# Now rename the file to the real destination.
-
-	$doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
-
-fi &&
-
 # The final little trick to "correctly" pass the exit status to the exit trap.
-
 {
-	(exit 0); exit
+  (exit 0); exit 0
 }
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:

Modified: libgpod/branches/upstream/current/intltool-extract.in
===================================================================
--- libgpod/branches/upstream/current/intltool-extract.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/intltool-extract.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -32,7 +32,7 @@
 ## Release information
 my $PROGRAM      = "intltool-extract";
 my $PACKAGE      = "intltool";
-my $VERSION      = "0.35.5";
+my $VERSION      = "0.36.2";
 
 ## Loaded modules
 use strict; 
@@ -237,9 +237,9 @@
 
     s/&apos;/'/g; # '
     s/&quot;/"/g; # "
-    s/&amp;/&/g;
     s/&lt;/</g;
     s/&gt;/>/g;
+    s/&amp;/&/g;
 
     return $_;
 }

Modified: libgpod/branches/upstream/current/intltool-merge.in
===================================================================
--- libgpod/branches/upstream/current/intltool-merge.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/intltool-merge.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -35,7 +35,7 @@
 ## Release information
 my $PROGRAM = "intltool-merge";
 my $PACKAGE = "intltool";
-my $VERSION = "0.35.5";
+my $VERSION = "0.36.2";
 
 ## Loaded modules
 use strict; 
@@ -93,9 +93,24 @@
 
 my %po_files_by_lang = ();
 my %translations = ();
-my $iconv = $ENV{"ICONV"} || $ENV{"INTLTOOL_ICONV"} || "@INTLTOOL_ICONV@";
+my $iconv = $ENV{"ICONV"} || "iconv";
 my $devnull = ($^O eq 'MSWin32' ? 'NUL:' : '/dev/null');
 
+sub isProgramInPath
+{
+    my ($file) = @_;
+    # If either a file exists, or when run it returns 0 exit status
+    return 1 if ((-x $file) or (system("$file -l >$devnull") == 0));
+    return 0;
+}
+
+if (! isProgramInPath ("$iconv"))
+{
+	print STDERR " *** iconv is not found on this system!\n".
+		     " *** Without it, intltool-merge can not convert encodings.\n";
+	exit;
+}
+
 # Use this instead of \w for XML files to handle more possible characters.
 my $w = "[-A-Za-z0-9._:]";
 
@@ -260,9 +275,43 @@
 
 sub gather_po_files
 {
-    for my $po_file (glob "$PO_DIR/*.po") {
-	$po_files_by_lang{po_file2lang($po_file)} = $po_file;
+    if (my $linguas = $ENV{"LINGUAS"})
+    {
+        for my $lang (split / /, $linguas) {
+            my $po_file = $PO_DIR . "/" . $lang . ".po";
+            if (-e $po_file) {
+                $po_files_by_lang{$lang} = $po_file;
+            }
+        }
     }
+    else
+    {
+        if (open LINGUAS_FILE, "$PO_DIR/LINGUAS")
+        {
+            while (<LINGUAS_FILE>)
+            {
+                next if /^#/;
+
+                if (/([-a-zA-Z_ at .]+)\n/)
+                {
+                    my $lang = $1;
+
+                    my $po_file = $PO_DIR . "/" . $lang . ".po";
+                    if (-e $po_file) {
+                        $po_files_by_lang{$lang} = $po_file;
+                    }
+                }
+            }
+
+            close LINGUAS_FILE;
+        }
+        else
+        {
+            for my $po_file (glob "$PO_DIR/*.po") {
+                $po_files_by_lang{po_file2lang($po_file)} = $po_file;
+            }
+        }
+    }
 }
 
 sub get_local_charset
@@ -428,7 +477,7 @@
        
 	    if (/^msgid "((\\.|[^\\]+)*)"/ ) 
             {
-		$translations{$lang, $msgid} = $msgstr if $inmsgstr && $msgid && $msgstr && $msgid ne $msgstr;
+		$translations{$lang, $msgid} = $msgstr if $inmsgstr && $msgid && $msgstr;
 		$msgid = "";
 		$msgstr = "";
 
@@ -455,7 +504,7 @@
 	        $msgstr .= unescape_po_string($1) if $inmsgstr;
 	    }
 	}
-	$translations{$lang, $msgid} = $msgstr if $inmsgstr && $msgid && $msgstr && $msgstr ne $msgid;
+	$translations{$lang, $msgid} = $msgstr if $inmsgstr && $msgid && $msgstr;
     }
 }
 
@@ -494,16 +543,15 @@
     return $string;
 }
 
-## NOTE: deal with < - &lt; but not > - &gt;  because it seems its ok to have 
-## > in the entity. For further info please look at #84738.
 sub entity_decode
 {
     local ($_) = @_;
 
     s/&apos;/'/g; # '
     s/&quot;/"/g; # "
+    s/&lt;/</g;
+    s/&gt;/>/g;
     s/&amp;/&/g;
-    s/&lt;/</g;
 
     return $_;
 }

Modified: libgpod/branches/upstream/current/intltool-update.in
===================================================================
--- libgpod/branches/upstream/current/intltool-update.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/intltool-update.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -30,7 +30,7 @@
 
 ## Release information
 my $PROGRAM = "intltool-update";
-my $VERSION = "0.35.5";
+my $VERSION = "0.36.2";
 my $PACKAGE = "intltool";
 
 ## Loaded modules
@@ -71,7 +71,8 @@
 "sheet(?:\\.in)+|".	# ?
 "schemas(?:\\.in)+|".	# GConf specific
 "pong(?:\\.in)+|".	# DEPRECATED: PONG is not used [by GNOME] any longer.
-"kbd(?:\\.in)+";	# GOK specific. 
+"kbd(?:\\.in)+|".	# GOK specific. 
+"policy(?:\\.in)+";	# PolicyKit files
 
 my $ini_support =
 "icon(?:\\.in)+|".	# http://www.freedesktop.org/Standards/icon-theme-spec
@@ -328,8 +329,13 @@
 	push @buf_i18n_ini,          "$File::Find::name" if /\.($ini_support)$/;
 	push @buf_i18n_xml_unmarked, "$File::Find::name" if /\.(schemas(\.in)+)$/;
 	}, "..";
+    find sub { 
+	push @buf_i18n_plain,        "$File::Find::name" if /\.($buildin_gettext_support)$/;
+	push @buf_i18n_xml,          "$File::Find::name" if /\.($xml_support)$/;
+	push @buf_i18n_ini,          "$File::Find::name" if /\.($ini_support)$/;
+	push @buf_i18n_xml_unmarked, "$File::Find::name" if /\.(schemas(\.in)+)$/;
+	}, "$SRCDIR/..";
 
-
     open POTFILES, $POTFILES_in or die "$PROGRAM:  there's no POTFILES.in!\n";
     @buf_potfiles = grep !/^(#|\s*$)/, <POTFILES>;
     close POTFILES;
@@ -489,11 +495,15 @@
     my %in2;
     foreach (@buf_potfiles_sorted) 
     {
+        s#^$SRCDIR/../##;
+        s#^$SRCDIR/##;
 	$in2{$_} = 1;
     }
 
     foreach (@buf_potfiles_ignore_sorted) 
     {
+        s#^$SRCDIR/../##;
+        s#^$SRCDIR/##;
 	$in2{$_} = 1;
     }
 
@@ -501,9 +511,16 @@
 
     foreach (@buf_allfiles_sorted)
     {
-	if (!exists($in2{$_}))
+        my $dummy = $_;
+        my $srcdir = $SRCDIR;
+
+        $srcdir =~ s#^../##;
+        $dummy =~ s#^$srcdir/../##;
+        $dummy =~ s#^$srcdir/##;
+        $dummy =~ s#_build/##;
+	if (!exists($in2{$dummy}))
 	{
-	    push @result, $_
+	    push @result, $dummy
 	}
     }
 
@@ -563,21 +580,33 @@
     exit 1;
 }
 
-sub isIntltoolExtractInPath
+sub isProgramInPath
 {
     my ($file) = @_;
     # If either a file exists, or when run it returns 0 exit status
-    return 1 if ((-x $file) or (system("$file >/dev/null") == 0));
+    return 1 if ((-x $file) or (system("$file --version >$devnull") == 0));
     return 0;
 }
 
+sub isGNUGettextTool
+{
+    my ($file) = @_;
+    # Check that we are using GNU gettext tools
+    if (isProgramInPath ($file))
+    {
+        my $version = `$file --version`;
+        return 1 if ($version =~ m/.*\(GNU .*\).*/);
+    }
+    return 0;
+}
+
 sub GenerateHeaders
 {
     my $EXTRACT = $ENV{"INTLTOOL_EXTRACT"} || "intltool-extract";
 
     ## Generate the .h header files, so we can allow glade and
     ## xml translation support
-    if (! isIntltoolExtractInPath("$EXTRACT"))
+    if (! isProgramInPath ("$EXTRACT"))
     {
 	print STDERR "\n *** The intltool-extract script wasn't found!"
 	     ."\n *** Without it, intltool-update can not generate files.\n";
@@ -624,13 +653,13 @@
 #
 sub GeneratePOTemplate
 {
-    my $XGETTEXT = $ENV{"XGETTEXT"} || "@INTLTOOL_XGETTEXT@";
+    my $XGETTEXT = $ENV{"XGETTEXT"} || "xgettext";
     my $XGETTEXT_ARGS = $ENV{"XGETTEXT_ARGS"} || '';
     chomp $XGETTEXT;
 
-    if (! -x $XGETTEXT)
+    if (! isGNUGettextTool ("$XGETTEXT"))
     {
-	print STDERR " *** xgettext is not found on this system!\n".
+	print STDERR " *** GNU xgettext is not found on this system!\n".
 		     " *** Without it, intltool-update can not extract strings.\n";
 	exit;
     }
@@ -726,7 +755,23 @@
     unlink "$MODULE.pot";
     my @xgettext_argument=("$XGETTEXT",
 			   "--add-comments",
-			   "--directory\=\.",
+			   "--directory\=.",
+                           "--default-domain\=$MODULE",
+                           "--flag\=g_strdup_printf:1:c-format",
+                           "--flag\=g_string_printf:2:c-format",
+                           "--flag\=g_string_append_printf:2:c-format",
+                           "--flag\=g_error_new:3:c-format",
+                           "--flag\=g_set_error:4:c-format",
+                           "--flag\=g_markup_printf_escaped:1:c-format",
+                           "--flag\=g_log:3:c-format",
+                           "--flag\=g_print:1:c-format",
+                           "--flag\=g_printerr:1:c-format",
+                           "--flag\=g_printf:1:c-format",
+                           "--flag\=g_fprintf:2:c-format",
+                           "--flag\=g_sprintf:2:c-format",
+                           "--flag\=g_snprintf:3:c-format",
+                           "--flag\=g_scanner_error:2:c-format",
+                           "--flag\=g_scanner_warn:2:c-format",
 			   "--output\=$MODULE\.pot",
 			   "--files-from\=\.\/POTFILES\.in\.temp");
     my $XGETTEXT_KEYWORDS = &FindPOTKeywords;
@@ -793,9 +838,16 @@
 {
     -f "$MODULE.pot" or die "$PROGRAM: $MODULE.pot does not exist.\n";
 
-    my $MSGMERGE = $ENV{"MSGMERGE"} || "@INTLTOOL_MSGMERGE@";
+    my $MSGMERGE = $ENV{"MSGMERGE"} || "msgmerge";
     my ($lang, $outfile) = @_;
 
+    if (! isGNUGettextTool ("$MSGMERGE"))
+    {
+	print STDERR " *** GNU msgmerge is not found on this system!\n".
+		     " *** Without it, intltool-update can not extract strings.\n";
+	exit;
+    }
+
     print "Merging $SRCDIR/$lang.po with $MODULE.pot..." if $VERBOSE;
 
     my $infile = "$SRCDIR/$lang.po";
@@ -836,8 +888,15 @@
 sub Console_Write_TranslationStatus
 {
     my ($lang, $output_file) = @_;
-    my $MSGFMT = $ENV{"MSGFMT"} || "@INTLTOOL_MSGFMT@";
+    my $MSGFMT = $ENV{"MSGFMT"} || "msgfmt";
 
+    if (! isGNUGettextTool ("$MSGFMT"))
+    {
+	print STDERR " *** GNU msgfmt is not found on this system!\n".
+		     " *** Without it, intltool-update can not extract strings.\n";
+	exit;
+    }
+
     $output_file = "$SRCDIR/$lang.po" if ($output_file eq "");
 
     system ("$MSGFMT", "-o", "$devnull", "--verbose", $output_file);
@@ -845,21 +904,28 @@
 
 sub Console_Write_CoverageReport
 {
-    my $MSGFMT = $ENV{"MSGFMT"} || "@INTLTOOL_MSGFMT@";
+    my $MSGFMT = $ENV{"MSGFMT"} || "msgfmt";
 
+    if (! isGNUGettextTool ("$MSGFMT"))
+    {
+	print STDERR " *** GNU msgfmt is not found on this system!\n".
+		     " *** Without it, intltool-update can not extract strings.\n";
+	exit;
+    }
+
     &GatherPOFiles;
 
     foreach my $lang (@languages) 
     {
-	print "$lang: ";
+	print STDERR "$lang: ";
 	&POFile_Update ($lang, "");
     }
 
-    print "\n\n * Current translation support in $MODULE \n\n";
+    print STDERR "\n\n * Current translation support in $MODULE \n\n";
 
     foreach my $lang (@languages)
     {
-	print "$lang: ";
+	print STDERR "$lang: ";
 	system ("$MSGFMT", "-o", "$devnull", "--verbose", "$SRCDIR/$lang.po");
     }
 }
@@ -933,13 +999,13 @@
 
 	    $conf_in || die "Cannot find top_builddir in Makevars.";
 	}
-	elsif (-f "../configure.ac") 
+	elsif (-f "$SRCDIR/../configure.ac") 
 	{
-	    $conf_in = "../configure.ac";
+	    $conf_in = "$SRCDIR/../configure.ac";
 	} 
-	elsif (-f "../configure.in") 
+	elsif (-f "$SRCDIR/../configure.in") 
 	{
-	    $conf_in = "../configure.in";
+	    $conf_in = "$SRCDIR/../configure.in";
 	} 
 	else 
 	{

Modified: libgpod/branches/upstream/current/libgpod-1.0.pc.in
===================================================================
--- libgpod/branches/upstream/current/libgpod-1.0.pc.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/libgpod-1.0.pc.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -6,6 +6,6 @@
 Name: libgpod
 Description: A library to manipulate songs and playlists stored on an ipod
 Version: @VERSION@
-Requires: glib-2.0 >= 2.4.0 gobject-2.0
+Requires: glib-2.0 >= 2.8.0 gobject-2.0
 Libs: -L${libdir} -lgpod
 Cflags: -I${includedir}/gpod-1.0

Modified: libgpod/branches/upstream/current/ltmain.sh
===================================================================
--- libgpod/branches/upstream/current/ltmain.sh	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/ltmain.sh	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
 # ltmain.sh - Provide generalized library-building support services.
 # NOTE: Changing this file will not affect anything until you rerun configure.
 #
-# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005
-# Free Software Foundation, Inc.
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006,
+# 2007  Free Software Foundation, Inc.
 # Originally by Gordon Matzigkeit <gord at gnu.ai.mit.edu>, 1996
 #
 # This program is free software; you can redistribute it and/or modify
@@ -43,8 +43,8 @@
 
 PROGRAM=ltmain.sh
 PACKAGE=libtool
-VERSION=1.5.22
-TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)"
+VERSION="1.5.24 Debian 1.5.24-1ubuntu1"
+TIMESTAMP=" (1.1220.2.456 2007/06/24 02:25:32)"
 
 # Be Bourne compatible (taken from Autoconf:_AS_BOURNE_COMPATIBLE).
 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
@@ -57,6 +57,8 @@
 else
   case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac
 fi
+BIN_SH=xpg4; export BIN_SH # for Tru64
+DUALCASE=1; export DUALCASE # for MKS sh
 
 # Check that we have a working $echo.
 if test "X$1" = X--no-reexec; then
@@ -114,10 +116,10 @@
 for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
 do
   eval "if test \"\${$lt_var+set}\" = set; then
-         save_$lt_var=\$$lt_var
-         $lt_var=C
-         export $lt_var
-       fi"
+	  save_$lt_var=\$$lt_var
+	  $lt_var=C
+	  export $lt_var
+	fi"
 done
 
 # Make sure IFS has a sensible default
@@ -206,7 +208,13 @@
     if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \
       $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then
       win32_nmres=`eval $NM -f posix -A $1 | \
-	$SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'`
+	$SED -n -e '1,100{
+		/ I /{
+			s,.*,import,
+			p
+			q
+			}
+		}'`
       case $win32_nmres in
       import*)  win32_libid_type="x86 archive import";;
       *)        win32_libid_type="x86 archive static";;
@@ -340,11 +348,11 @@
       my_xlib_u=$my_xlib
       while :; do
         case " $extracted_archives " in
-       *" $my_xlib_u "*)
-         extracted_serial=`expr $extracted_serial + 1`
-         my_xlib_u=lt$extracted_serial-$my_xlib ;;
-       *) break ;;
-       esac
+	*" $my_xlib_u "*)
+	  extracted_serial=`expr $extracted_serial + 1`
+	  my_xlib_u=lt$extracted_serial-$my_xlib ;;
+	*) break ;;
+	esac
       done
       extracted_archives="$extracted_archives $my_xlib_u"
       my_xdir="$my_gentop/$my_xlib_u"
@@ -474,11 +482,12 @@
     ;;
 
   --version)
-    $echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"
-    $echo
-    $echo "Copyright (C) 2005  Free Software Foundation, Inc."
-    $echo "This is free software; see the source for copying conditions.  There is NO"
-    $echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+    echo "\
+$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP
+
+Copyright (C) 2007  Free Software Foundation, Inc.
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
     exit $?
     ;;
 
@@ -775,7 +784,7 @@
     *.class) xform=class ;;
     *.cpp) xform=cpp ;;
     *.cxx) xform=cxx ;;
-    *.f90) xform=f90 ;;
+    *.[fF][09]?) xform=[fF][09]. ;;
     *.for) xform=for ;;
     *.java) xform=java ;;
     *.obj) xform=obj ;;
@@ -1160,8 +1169,8 @@
     do
       case $arg in
       -all-static | -static | -static-libtool-libs)
-    case $arg in
-    -all-static)
+	case $arg in
+	-all-static)
 	  if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then
 	    $echo "$modename: warning: complete static linking is impossible in this configuration" 1>&2
 	  fi
@@ -1170,19 +1179,19 @@
 	  fi
 	  prefer_static_libs=yes
 	  ;;
-    -static)
+	-static)
 	  if test -z "$pic_flag" && test -n "$link_static_flag"; then
 	    dlopen_self=$dlopen_self_static
 	  fi
 	  prefer_static_libs=built
 	  ;;
-    -static-libtool-libs)
-      if test -z "$pic_flag" && test -n "$link_static_flag"; then
-        dlopen_self=$dlopen_self_static
-      fi
-      prefer_static_libs=yes
-      ;;
-    esac
+	-static-libtool-libs)
+	  if test -z "$pic_flag" && test -n "$link_static_flag"; then
+	    dlopen_self=$dlopen_self_static
+	  fi
+	  prefer_static_libs=yes
+	  ;;
+	esac
 	build_libtool_libs=no
 	build_old_libs=yes
 	break
@@ -1630,7 +1639,7 @@
 	continue
 	;;
 
-     -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
+     -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
 	compiler_flags="$compiler_flags $arg"
 	compile_command="$compile_command $arg"
 	finalize_command="$finalize_command $arg"
@@ -1650,10 +1659,11 @@
       # -m* pass through architecture-specific compiler args for GCC
       # -m*, -t[45]*, -txscale* pass through architecture-specific
       # compiler args for GCC
-      # -pg pass through profiling flag for GCC
+      # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC
+      # -F/path gives path to uninstalled frameworks, gcc on darwin
       # @file GCC response files
-      -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*|-pg| \
-      -t[45]*|-txscale*|@*)
+      -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
+      -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*)
 
 	# Unknown arguments in both finalize_command and compile_command need
 	# to be aesthetically quoted because they are evaled later.
@@ -1681,9 +1691,9 @@
 
       -no-install)
 	case $host in
-	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
+	*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin*)
 	  # The PATH hackery in wrapper scripts is required on Windows
-	  # in order for the loader to find any dlls it needs.
+	  # and Darwin in order for the loader to find any dlls it needs.
 	  $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2
 	  $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2
 	  fast_install=no
@@ -2112,7 +2122,10 @@
 	case $pass in
 	dlopen) libs="$dlfiles" ;;
 	dlpreopen) libs="$dlprefiles" ;;
-	link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;
+	link)
+	  libs="$deplibs %DEPLIBS%"
+	  test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
+	  ;;
 	esac
       fi
       if test "$pass" = dlopen; then
@@ -2124,7 +2137,7 @@
 	lib=
 	found=no
 	case $deplib in
-	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)
+	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe|-threads)
 	  if test "$linkmode,$pass" = "prog,link"; then
 	    compile_deplibs="$deplib $compile_deplibs"
 	    finalize_deplibs="$deplib $finalize_deplibs"
@@ -2520,9 +2533,9 @@
 
 	if test "$linkmode,$pass" = "prog,link"; then
 	  if test -n "$library_names" &&
-         { { test "$prefer_static_libs" = no ||
-             test "$prefer_static_libs,$installed" = "built,yes"; } ||
-           test -z "$old_library"; }; then
+	     { { test "$prefer_static_libs" = no ||
+		 test "$prefer_static_libs,$installed" = "built,yes"; } ||
+	       test -z "$old_library"; }; then
 	    # We need to hardcode the library path
 	    if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then
 	      # Make sure the rpath contains only unique directories.
@@ -3229,10 +3242,16 @@
 	    age="0"
 	    ;;
 	  irix|nonstopux)
-	    current=`expr $number_major + $number_minor - 1`
+	    current=`expr $number_major + $number_minor`
 	    age="$number_minor"
 	    revision="$number_minor"
+	    lt_irix_increment=no
 	    ;;
+	  *)
+	    $echo "$modename: unknown library version type \`$version_type'" 1>&2
+	    $echo "Fatal configuration error.  See the $PACKAGE docs for more information." 1>&2
+	    exit $EXIT_FAILURE
+	    ;;
 	  esac
 	  ;;
 	no)
@@ -3290,7 +3309,8 @@
 	  versuffix="$major.$age.$revision"
 	  # Darwin ld doesn't like 0 for these options...
 	  minor_current=`expr $current + 1`
-	  verstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
+	  xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision"
+	  verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
 	  ;;
 
 	freebsd-aout)
@@ -3304,8 +3324,11 @@
 	  ;;
 
 	irix | nonstopux)
-	  major=`expr $current - $age + 1`
-
+	  if test "X$lt_irix_increment" = "Xno"; then
+	    major=`expr $current - $age`
+	  else
+	    major=`expr $current - $age + 1`
+	  fi
 	  case $version_type in
 	    nonstopux) verstring_prefix=nonstopux ;;
 	    *)         verstring_prefix=sgi ;;
@@ -3442,11 +3465,11 @@
       fi
 
       # Eliminate all temporary directories.
-#      for path in $notinst_path; do
-#	lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
-#	deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
-#	dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
-#      done
+      #for path in $notinst_path; do
+      #	lib_search_path=`$echo "$lib_search_path " | ${SED} -e "s% $path % %g"`
+      #	deplibs=`$echo "$deplibs " | ${SED} -e "s% -L$path % %g"`
+      #	dependency_libs=`$echo "$dependency_libs " | ${SED} -e "s% -L$path % %g"`
+      #done
 
       if test -n "$xrpath"; then
 	# If the user specified any rpath flags, then add them.
@@ -3547,7 +3570,7 @@
 	  int main() { return 0; }
 EOF
 	  $rm conftest
-      if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
+	  if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
 	    ldd_output=`ldd conftest`
 	    for i in $deplibs; do
 	      name=`expr $i : '-l\(.*\)'`
@@ -3909,7 +3932,10 @@
 	     test -n "$hardcode_libdirs"; then
 	    libdir="$hardcode_libdirs"
 	    if test -n "$hardcode_libdir_flag_spec_ld"; then
-	      eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\"
+	      case $archive_cmds in
+	      *\$LD*) eval dep_rpath=\"$hardcode_libdir_flag_spec_ld\" ;;
+	      *)      eval dep_rpath=\"$hardcode_libdir_flag_spec\" ;;
+	      esac
 	    else
 	      eval dep_rpath=\"$hardcode_libdir_flag_spec\"
 	    fi
@@ -4275,7 +4301,7 @@
       if test -n "$convenience"; then
 	if test -n "$whole_archive_flag_spec"; then
 	  eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
-      reload_conv_objs=$reload_objs\ `$echo "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`
+	  reload_conv_objs=$reload_objs\ `$echo "X$tmp_whole_archive_flags" | $Xsed -e 's|,| |g'`
 	else
 	  gentop="$output_objdir/${obj}x"
 	  generated="$generated $gentop"
@@ -5295,6 +5321,8 @@
 else
   case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
 fi
+BIN_SH=xpg4; export BIN_SH # for Tru64
+DUALCASE=1; export DUALCASE # for MKS sh
 
 # The HP-UX ksh and POSIX shell print the target directory to stdout
 # if CDPATH is set.
@@ -6391,8 +6419,10 @@
 	if test -f "$dir/$objdir/$dlname"; then
 	  dir="$dir/$objdir"
 	else
-	  $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
-	  exit $EXIT_FAILURE
+	  if test ! -f "$dir/$dlname"; then
+	    $echo "$modename: cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" 1>&2
+	    exit $EXIT_FAILURE
+	  fi
 	fi
 	;;
 
@@ -6458,12 +6488,11 @@
       # Restore saved environment variables
       for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
       do
-       eval "if test \"\${save_$lt_var+set}\" = set; then
-               $lt_var=\$save_$lt_var; export $lt_var
-             fi"
+	eval "if test \"\${save_$lt_var+set}\" = set; then
+		$lt_var=\$save_$lt_var; export $lt_var
+	      fi"
       done
 
-
       # Now prepare to actually exec the command.
       exec_cmd="\$cmd$args"
     else

Modified: libgpod/branches/upstream/current/m4/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/m4/Makefile.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/m4/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# Free Software Foundation, Inc.
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
@@ -13,7 +13,6 @@
 # PARTICULAR PURPOSE.
 
 @SET_MAKE@
-
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
 VPATH = @srcdir@
@@ -21,7 +20,6 @@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 top_builddir = ..
-
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
@@ -35,7 +33,22 @@
 NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
+build_triplet = @build@
 host_triplet = @host@
+subdir = m4
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -80,10 +93,19 @@
 GREP = @GREP@
 GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
 GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
 HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
 HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
 HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
 HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
 HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
 HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
 HTML_DIR = @HTML_DIR@
@@ -97,14 +119,12 @@
 INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
 INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_ICONV = @INTLTOOL_ICONV@
 INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
 INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@
-INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@
 INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
 INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
 INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
 INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
@@ -116,12 +136,14 @@
 INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
 INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@
 INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
 INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 LDFLAGS = @LDFLAGS@
 LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@
 LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
 LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
 LIBGPOD_VERSION = @LIBGPOD_VERSION@
 LIBOBJS = @LIBOBJS@
@@ -149,6 +171,8 @@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
 PYTHON = @PYTHON@
 PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 PYTHON_INCLUDES = @PYTHON_INCLUDES@
@@ -159,6 +183,7 @@
 RANLIB = @RANLIB@
 SED = @SED@
 SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
 SHELL = @SHELL@
 STRIP = @STRIP@
 SWIG = @SWIG@
@@ -178,6 +203,8 @@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -203,6 +230,7 @@
 localedir = @localedir@
 localstatedir = @localstatedir@
 mandir = @mandir@
+mkdir_p = @mkdir_p@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
 pkgpyexecdir = @pkgpyexecdir@
@@ -217,22 +245,39 @@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
 EXTRA_DIST = python.m4 swig.m4
-subdir = m4
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-DIST_SOURCES =
-DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
 all: all-am
 
 .SUFFIXES:
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+$(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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  m4/Makefile'; \
 	cd $(top_srcdir) && \
 	  $(AUTOMAKE) --gnu  m4/Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
-	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
+.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
+
 mostlyclean-libtool:
 	-rm -f *.lo
 
@@ -248,11 +293,7 @@
 ctags: CTAGS
 CTAGS:
 
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-top_distdir = ..
-distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
-
 distdir: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
@@ -265,7 +306,7 @@
 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
 	    dir="/$$dir"; \
-	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
 	  else \
 	    dir=''; \
 	  fi; \
@@ -283,7 +324,6 @@
 check-am: all-am
 check: check-am
 all-am: Makefile
-
 installdirs:
 install: install-am
 install-exec: install-exec-am
@@ -304,7 +344,7 @@
 clean-generic:
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -321,6 +361,8 @@
 
 dvi-am:
 
+html: html-am
+
 info: info-am
 
 info-am:
@@ -355,10 +397,10 @@
 
 .PHONY: all all-am check check-am clean clean-generic clean-libtool \
 	distclean distclean-generic distclean-libtool distdir dvi \
-	dvi-am info info-am install install-am install-data \
-	install-data-am install-exec install-exec-am install-info \
-	install-info-am install-man install-strip installcheck \
-	installcheck-am installdirs maintainer-clean \
+	dvi-am html html-am info info-am install install-am \
+	install-data install-data-am install-exec install-exec-am \
+	install-info install-info-am install-man install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
 	maintainer-clean-generic mostlyclean mostlyclean-generic \
 	mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
 	uninstall-info-am

Added: libgpod/branches/upstream/current/m4/gtk-doc.m4
===================================================================
--- libgpod/branches/upstream/current/m4/gtk-doc.m4	                        (rev 0)
+++ libgpod/branches/upstream/current/m4/gtk-doc.m4	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,53 @@
+dnl -*- mode: autoconf -*-
+
+# serial 1
+
+dnl Usage:
+dnl   GTK_DOC_CHECK([minimum-gtk-doc-version])
+AC_DEFUN([GTK_DOC_CHECK],
+[
+  AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
+  AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
+  dnl for overriding the documentation installation directory
+  AC_ARG_WITH([html-dir],
+    AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),,
+    [with_html_dir='${datadir}/gtk-doc/html'])
+  HTML_DIR="$with_html_dir"
+  AC_SUBST([HTML_DIR])
+
+  dnl enable/disable documentation building
+  AC_ARG_ENABLE([gtk-doc],
+    AS_HELP_STRING([--enable-gtk-doc],
+                   [use gtk-doc to build documentation [[default=no]]]),,
+    [enable_gtk_doc=no])
+
+  have_gtk_doc=no
+  if test x$enable_gtk_doc = xyes; then
+    if test -z "$PKG_CONFIG"; then
+      AC_PATH_PROG([PKG_CONFIG], [pkg-config], [no])
+    fi
+    if test "$PKG_CONFIG" != "no" && $PKG_CONFIG --exists gtk-doc; then
+      have_gtk_doc=yes
+    fi
+
+  dnl do we want to do a version check?
+ifelse([$1],[],,
+    [gtk_doc_min_version=$1
+    if test "$have_gtk_doc" = yes; then
+      AC_MSG_CHECKING([gtk-doc version >= $gtk_doc_min_version])
+      if $PKG_CONFIG --atleast-version $gtk_doc_min_version gtk-doc; then
+        AC_MSG_RESULT([yes])
+      else
+        AC_MSG_RESULT([no])
+        have_gtk_doc=no
+      fi
+    fi
+])
+    if test "$have_gtk_doc" != yes; then
+      enable_gtk_doc=no
+    fi
+  fi
+
+  AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes])
+  AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"])
+])

Added: libgpod/branches/upstream/current/m4/intltool.m4
===================================================================
--- libgpod/branches/upstream/current/m4/intltool.m4	                        (rev 0)
+++ libgpod/branches/upstream/current/m4/intltool.m4	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,220 @@
+## intltool.m4 - Configure intltool for the target system. -*-Shell-script-*-
+## Copyright (C) 2001 Eazel, Inc.
+## Author: Maciej Stachowiak <mjs at noisehavoc.org>
+##         Kenneth Christiansen <kenneth at gnu.org>
+##
+## 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 of the License, 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, write to the Free Software
+## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+##
+## 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.
+
+dnl IT_PROG_INTLTOOL([MINIMUM-VERSION], [no-xml])
+# serial 36 IT_PROG_INTLTOOL
+AC_DEFUN([IT_PROG_INTLTOOL],
+[AC_PREREQ([2.50])dnl
+
+case "$am__api_version" in
+    1.[01234])
+	AC_MSG_ERROR([Automake 1.5 or newer is required to use intltool])
+    ;;
+    *)
+    ;;
+esac
+
+if test -n "$1"; then
+    AC_MSG_CHECKING([for intltool >= $1])
+
+    INTLTOOL_REQUIRED_VERSION_AS_INT=`echo $1 | awk -F. '{ print $ 1 * 1000 + $ 2 * 100 + $ 3; }'`
+    INTLTOOL_APPLIED_VERSION=`awk -F\" '/\\$VERSION / { print $ 2; }' ${ac_aux_dir}/intltool-update.in`
+    [INTLTOOL_APPLIED_VERSION_AS_INT=`awk -F\" '/\\$VERSION / { split($ 2, VERSION, "."); print VERSION[1] * 1000 + VERSION[2] * 100 + VERSION[3];}' ${ac_aux_dir}/intltool-update.in`
+    ]
+    AC_MSG_RESULT([$INTLTOOL_APPLIED_VERSION found])
+    test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge "$INTLTOOL_REQUIRED_VERSION_AS_INT" ||
+	AC_MSG_ERROR([Your intltool is too old.  You need intltool $1 or later.])
+fi
+
+  INTLTOOL_DESKTOP_RULE='%.desktop:   %.desktop.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+     INTLTOOL_KEYS_RULE='%.keys:      %.keys.in      $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+     INTLTOOL_PROP_RULE='%.prop:      %.prop.in      $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+      INTLTOOL_OAF_RULE='%.oaf:       %.oaf.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< [$]@'
+     INTLTOOL_PONG_RULE='%.pong:      %.pong.in      $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+   INTLTOOL_SERVER_RULE='%.server:    %.server.in    $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+    INTLTOOL_SHEET_RULE='%.sheet:     %.sheet.in     $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+       INTLTOOL_UI_RULE='%.ui:        %.ui.in        $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+      INTLTOOL_XML_RULE='%.xml:       %.xml.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+      INTLTOOL_XML_NOMERGE_RULE='%.xml:       %.xml.in       $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< [$]@' 
+      INTLTOOL_XAM_RULE='%.xam:       %.xml.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+      INTLTOOL_KBD_RULE='%.kbd:       %.kbd.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+    INTLTOOL_CAVES_RULE='%.caves:     %.caves.in     $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+  INTLTOOL_SCHEMAS_RULE='%.schemas:   %.schemas.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+    INTLTOOL_THEME_RULE='%.theme:     %.theme.in     $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@' 
+    INTLTOOL_SERVICE_RULE='%.service: %.service.in   $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
+   INTLTOOL_POLICY_RULE='%.policy:    %.policy.in    $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< [$]@'
+
+AC_SUBST(INTLTOOL_DESKTOP_RULE)
+AC_SUBST(INTLTOOL_DIRECTORY_RULE)
+AC_SUBST(INTLTOOL_KEYS_RULE)
+AC_SUBST(INTLTOOL_PROP_RULE)
+AC_SUBST(INTLTOOL_OAF_RULE)
+AC_SUBST(INTLTOOL_PONG_RULE)
+AC_SUBST(INTLTOOL_SERVER_RULE)
+AC_SUBST(INTLTOOL_SHEET_RULE)
+AC_SUBST(INTLTOOL_SOUNDLIST_RULE)
+AC_SUBST(INTLTOOL_UI_RULE)
+AC_SUBST(INTLTOOL_XAM_RULE)
+AC_SUBST(INTLTOOL_KBD_RULE)
+AC_SUBST(INTLTOOL_XML_RULE)
+AC_SUBST(INTLTOOL_XML_NOMERGE_RULE)
+AC_SUBST(INTLTOOL_CAVES_RULE)
+AC_SUBST(INTLTOOL_SCHEMAS_RULE)
+AC_SUBST(INTLTOOL_THEME_RULE)
+AC_SUBST(INTLTOOL_SERVICE_RULE)
+AC_SUBST(INTLTOOL_POLICY_RULE)
+
+# Use the tools built into the package, not the ones that are installed.
+AC_SUBST(INTLTOOL_EXTRACT, '$(top_builddir)/intltool-extract')
+AC_SUBST(INTLTOOL_MERGE, '$(top_builddir)/intltool-merge')
+AC_SUBST(INTLTOOL_UPDATE, '$(top_builddir)/intltool-update')
+
+AC_PATH_PROG(INTLTOOL_PERL, perl)
+if test -z "$INTLTOOL_PERL"; then
+   AC_MSG_ERROR([perl not found; required for intltool])
+fi
+if test -z "`$INTLTOOL_PERL -v | fgrep '5.' 2> /dev/null`"; then
+   AC_MSG_ERROR([perl 5.x required for intltool])
+fi
+if test "x$2" != "xno-xml"; then
+   AC_MSG_CHECKING([for XML::Parser])
+   if `$INTLTOOL_PERL -e "require XML::Parser" 2>/dev/null`; then
+       AC_MSG_RESULT([ok])
+   else
+       AC_MSG_ERROR([XML::Parser perl module is required for intltool])
+   fi
+fi
+
+# Substitute ALL_LINGUAS so we can use it in po/Makefile
+AC_SUBST(ALL_LINGUAS)
+
+# Set DATADIRNAME correctly if it is not set yet
+# (copied from glib-gettext.m4)
+if test -z "$DATADIRNAME"; then
+  AC_LINK_IFELSE(
+    [AC_LANG_PROGRAM([[]],
+                     [[extern int _nl_msg_cat_cntr;
+                       return _nl_msg_cat_cntr]])],
+    [DATADIRNAME=share],
+    [case $host in
+    *-*-solaris*)
+    dnl On Solaris, if bind_textdomain_codeset is in libc,
+    dnl GNU format message catalog is always supported,
+    dnl since both are added to the libc all together.
+    dnl Hence, we'd like to go with DATADIRNAME=share
+    dnl in this case.
+    AC_CHECK_FUNC(bind_textdomain_codeset,
+      [DATADIRNAME=share], [DATADIRNAME=lib])
+    ;;
+    *)
+    [DATADIRNAME=lib]
+    ;;
+    esac])
+fi
+AC_SUBST(DATADIRNAME)
+
+IT_PO_SUBDIR([po])
+
+dnl The following is very similar to
+dnl
+dnl	AC_CONFIG_FILES([intltool-extract intltool-merge intltool-update])
+dnl
+dnl with the following slight differences:
+dnl  - the *.in files are in ac_aux_dir,
+dnl  - if the file haven't changed upon reconfigure, it's not touched,
+dnl  - the evaluation of the third parameter enables a hack which computes
+dnl    the actual value of $libdir,
+dnl  - the user sees "executing intltool commands", instead of
+dnl    "creating intltool-extract" and such.
+dnl
+dnl Nothing crucial here, and we could use AC_CONFIG_FILES, if there were
+dnl a reason for it.
+
+AC_CONFIG_COMMANDS([intltool], [
+
+for file in intltool-extract intltool-merge intltool-update; do
+  sed -e "s|@INTLTOOL_EXTRACT@|`pwd`/intltool-extract|g" \
+      -e "s|@INTLTOOL_LIBDIR@|${INTLTOOL_LIBDIR}|g" \
+      -e "s|@INTLTOOL_PERL@|${INTLTOOL_PERL}|g" \
+	< ${ac_aux_dir}/${file}.in > ${file}.out
+  if cmp -s ${file} ${file}.out 2>/dev/null; then
+    rm -f ${file}.out
+  else
+    mv -f ${file}.out ${file}
+  fi
+  chmod ugo+x ${file}
+  chmod u+w ${file}
+done
+
+],
+[INTLTOOL_PERL='${INTLTOOL_PERL}' ac_aux_dir='${ac_aux_dir}'
+prefix="$prefix" exec_prefix="$exec_prefix" INTLTOOL_LIBDIR="$libdir" 
+INTLTOOL_EXTRACT='${INTLTOOL_EXTRACT}'])
+
+])
+
+
+# IT_PO_SUBDIR(DIRNAME)
+# ---------------------
+# All po subdirs have to be declared with this macro; the subdir "po" is
+# declared by IT_PROG_INTLTOOL.
+#
+AC_DEFUN([IT_PO_SUBDIR],
+[AC_PREREQ([2.53])dnl We use ac_top_srcdir inside AC_CONFIG_COMMANDS.
+dnl
+dnl The following CONFIG_COMMANDS should be exetuted at the very end
+dnl of config.status.
+AC_CONFIG_COMMANDS_PRE([
+  AC_CONFIG_COMMANDS([$1/stamp-it], [
+    rm -f "$1/stamp-it" "$1/stamp-it.tmp" "$1/POTFILES" "$1/Makefile.tmp"
+    >"$1/stamp-it.tmp"
+    [sed '/^#/d
+	 s/^[[].*] *//
+	 /^[ 	]*$/d
+	'"s|^|	$ac_top_srcdir/|" \
+      "$srcdir/$1/POTFILES.in" | sed '$!s/$/ \\/' >"$1/POTFILES"
+    ]
+    if test ! -f "$1/Makefile"; then
+      AC_MSG_ERROR([$1/Makefile is not ready.])
+    fi
+    mv "$1/Makefile" "$1/Makefile.tmp"
+    [sed '/^POTFILES =/,/[^\\]$/ {
+		/^POTFILES =/!d
+		r $1/POTFILES
+	  }
+	 ' "$1/Makefile.tmp" >"$1/Makefile"]
+    rm -f "$1/Makefile.tmp"
+    mv "$1/stamp-it.tmp" "$1/stamp-it"
+  ])
+])dnl
+])
+
+
+# deprecated macros
+AU_ALIAS([AC_PROG_INTLTOOL], [IT_PROG_INTLTOOL])
+# A hint is needed for aclocal from Automake <= 1.9.4:
+# AC_DEFUN([AC_PROG_INTLTOOL], ...)
+

Modified: libgpod/branches/upstream/current/m4/python.m4
===================================================================
--- libgpod/branches/upstream/current/m4/python.m4	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/m4/python.m4	2007-11-12 21:03:04 UTC (rev 251)
@@ -126,6 +126,12 @@
                 dnl check for mutagen module >= $PYTHON_MUTAGEN_MIN_VERSION
                 AM_CHECK_PYMOD(mutagen,$PYTHON_MUTAGEN_MIN_VERSION,mutagen.version_string,,with_python=no)
 
+                dnl this test should perhaps be re-enabled, but only produce a warning -- tmz
+                dnl if test "X$have_gdkpixbuf" == "Xyes" -a "X$have_pygobject" == "Xyes"; then
+                dnl     dnl check for gtk module >= $PYTHON_GTK_MIN_VERSION
+                dnl     AM_CHECK_PYMOD(gtk,$PYTHON_GTK_MIN_VERSION,'.'.join(map(str, gtk.ver)),,with_python=no)
+                dnl fi
+
                 dnl check for swig
                 if test "X$with_python" == Xyes; then
                     AC_PROG_SWIG($SWIG_MIN_VERSION)

Modified: libgpod/branches/upstream/current/missing
===================================================================
--- libgpod/branches/upstream/current/missing	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/missing	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,6 +1,10 @@
 #! /bin/sh
 # Common stub for a few missing GNU programs while installing.
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003 Free Software Foundation, Inc.
+
+scriptversion=2005-06-08.21
+
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
+#   Free Software Foundation, Inc.
 # Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -15,8 +19,8 @@
 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -38,19 +42,25 @@
   configure_ac=configure.in
 fi
 
+msg="missing on your system"
+
 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
   ;;
-esac
 
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case "$1" in
-
   -h|--h|--he|--hel|--help)
     echo "\
 $0 [OPTION]... PROGRAM [ARGUMENT]...
@@ -74,11 +84,15 @@
   lex          create \`lex.yy.c', if possible, from existing .c
   makeinfo     touch the output file
   tar          try tar, gnutar, gtar, then tar without non-portable flags
-  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]"
+  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
+
+Send bug reports to <bug-automake at gnu.org>."
+    exit $?
     ;;
 
   -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
-    echo "missing 0.4 - GNU automake"
+    echo "missing $scriptversion (GNU Automake)"
+    exit $?
     ;;
 
   -*)
@@ -87,14 +101,44 @@
     exit 1
     ;;
 
-  aclocal*)
+esac
+
+# 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).
+case "$1" in
+  lex|yacc)
+    # Not GNU programs, they don't have --version.
+    ;;
+
+  tar)
+    if test -n "$run"; then
+       echo 1>&2 "ERROR: \`tar' requires --run"
+       exit 1
+    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+       exit 1
+    fi
+    ;;
+
+  *)
     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 "$1" in
+  aclocal*)
     echo 1>&2 "\
-WARNING: \`$1' is missing on your system.  You should only need it if
+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."
@@ -102,13 +146,8 @@
     ;;
 
   autoconf)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    fi
-
     echo 1>&2 "\
-WARNING: \`$1' is missing on your system.  You should only need it if
+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."
@@ -116,13 +155,8 @@
     ;;
 
   autoheader)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    fi
-
     echo 1>&2 "\
-WARNING: \`$1' is missing on your system.  You should only need it if
+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."
@@ -140,13 +174,8 @@
     ;;
 
   automake*)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    fi
-
     echo 1>&2 "\
-WARNING: \`$1' is missing on your system.  You should only need it if
+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."
@@ -156,14 +185,9 @@
     ;;
 
   autom4te)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    fi
-
     echo 1>&2 "\
-WARNING: \`$1' is needed, and you do not seem to have it handy on your
-         system.  You might have modified some files without having the
+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."
@@ -185,7 +209,7 @@
 
   bison|yacc)
     echo 1>&2 "\
-WARNING: \`$1' is missing on your system.  You should only need it if
+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."
@@ -215,7 +239,7 @@
 
   lex|flex)
     echo 1>&2 "\
-WARNING: \`$1' is missing on your system.  You should only need it if
+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."
@@ -237,13 +261,8 @@
     ;;
 
   help2man)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    fi
-
     echo 1>&2 "\
-WARNING: \`$1' is missing on your system.  You should only need it if
+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."
@@ -262,32 +281,30 @@
     ;;
 
   makeinfo)
-    if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
-       # We have makeinfo, but it failed.
-       exit 1
-    fi
-
     echo 1>&2 "\
-WARNING: \`$1' is missing on your system.  You should only need it if
+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 's/.*-o \([^ ]*\).*/\1/p'`
     if test -z "$file"; then
-      file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
+      # ... 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
     ;;
 
   tar)
     shift
-    if test -n "$run"; then
-      echo 1>&2 "ERROR: \`tar' requires --run"
-      exit 1
-    fi
 
     # We have already tried tar in the generic part.
     # Look for gnutar/gtar before invocation to avoid ugly error
@@ -323,8 +340,8 @@
 
   *)
     echo 1>&2 "\
-WARNING: \`$1' is needed, and you do not seem to have it handy on your
-         system.  You might have modified some files without having the
+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
@@ -334,3 +351,10 @@
 esac
 
 exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:

Modified: libgpod/branches/upstream/current/mkinstalldirs
===================================================================
--- libgpod/branches/upstream/current/mkinstalldirs	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/mkinstalldirs	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,21 +1,33 @@
 #! /bin/sh
 # mkinstalldirs --- make directory hierarchy
-# Author: Noah Friedman <friedman at prep.ai.mit.edu>
+
+scriptversion=2005-06-29.22
+
+# Original author: Noah Friedman <friedman at prep.ai.mit.edu>
 # Created: 1993-05-16
-# Public domain
+# Public domain.
+#
+# This file is maintained in Automake, please report
+# bugs to <bug-automake at gnu.org> or send patches to
+# <automake-patches at gnu.org>.
 
 errstatus=0
-dirmode=""
+dirmode=
 
 usage="\
-Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
+Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
 
+Create each directory DIR (with mode MODE, if specified), including all
+leading file name components.
+
+Report bugs to <bug-automake at gnu.org>."
+
 # process command line arguments
 while test $# -gt 0 ; do
   case $1 in
     -h | --help | --h*)         # -h for help
-      echo "$usage" 1>&2
-      exit 0
+      echo "$usage"
+      exit $?
       ;;
     -m)                         # -m PERM arg
       shift
@@ -23,6 +35,10 @@
       dirmode=$1
       shift
       ;;
+    --version)
+      echo "$0 $scriptversion"
+      exit $?
+      ;;
     --)                         # stop option processing
       shift
       break
@@ -50,30 +66,58 @@
   0) exit 0 ;;
 esac
 
+# Solaris 8's mkdir -p isn't thread-safe.  If you mkdir -p a/b and
+# mkdir -p a/c at the same time, both will detect that a is missing,
+# one will create a, then the other will try to create a and die with
+# a "File exists" error.  This is a problem when calling mkinstalldirs
+# from a parallel make.  We use --version in the probe to restrict
+# ourselves to GNU mkdir, which is thread-safe.
 case $dirmode in
   '')
-    if mkdir -p -- . 2>/dev/null; then
+    if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
       echo "mkdir -p -- $*"
       exec mkdir -p -- "$@"
+    else
+      # On NextStep and OpenStep, the `mkdir' command does not
+      # recognize any option.  It will interpret all options as
+      # directories to create, and then abort because `.' already
+      # exists.
+      test -d ./-p && rmdir ./-p
+      test -d ./--version && rmdir ./--version
     fi
     ;;
   *)
-    if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
+    if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
+       test ! -d ./--version; then
       echo "mkdir -m $dirmode -p -- $*"
       exec mkdir -m "$dirmode" -p -- "$@"
+    else
+      # Clean up after NextStep and OpenStep mkdir.
+      for d in ./-m ./-p ./--version "./$dirmode";
+      do
+        test -d $d && rmdir $d
+      done
     fi
     ;;
 esac
 
 for file
 do
-  set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
+  case $file in
+    /*) pathcomp=/ ;;
+    *)  pathcomp= ;;
+  esac
+  oIFS=$IFS
+  IFS=/
+  set fnord $file
   shift
+  IFS=$oIFS
 
-  pathcomp=
   for d
   do
-    pathcomp="$pathcomp$d"
+    test "x$d" = x && continue
+
+    pathcomp=$pathcomp$d
     case $pathcomp in
       -*) pathcomp=./$pathcomp ;;
     esac
@@ -84,21 +128,21 @@
       mkdir "$pathcomp" || lasterr=$?
 
       if test ! -d "$pathcomp"; then
-  	errstatus=$lasterr
+	errstatus=$lasterr
       else
-  	if test ! -z "$dirmode"; then
+	if test ! -z "$dirmode"; then
 	  echo "chmod $dirmode $pathcomp"
-    	  lasterr=""
-  	  chmod "$dirmode" "$pathcomp" || lasterr=$?
+	  lasterr=
+	  chmod "$dirmode" "$pathcomp" || lasterr=$?
 
-  	  if test ! -z "$lasterr"; then
-  	    errstatus=$lasterr
-  	  fi
-  	fi
+	  if test ! -z "$lasterr"; then
+	    errstatus=$lasterr
+	  fi
+	fi
       fi
     fi
 
-    pathcomp="$pathcomp/"
+    pathcomp=$pathcomp/
   done
 done
 
@@ -107,5 +151,8 @@
 # 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-end: "$"
 # End:
-# mkinstalldirs ends here

Modified: libgpod/branches/upstream/current/po/Makefile.in.in
===================================================================
--- libgpod/branches/upstream/current/po/Makefile.in.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/po/Makefile.in.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -133,7 +133,7 @@
 dvi info tags TAGS ID:
 
 # Define this as empty until I found a useful application.
-installcheck:
+install-exec installcheck:
 
 uninstall:
 	linguas="$(USE_LINGUAS)"; \

Modified: libgpod/branches/upstream/current/po/POTFILES.in
===================================================================
--- libgpod/branches/upstream/current/po/POTFILES.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/po/POTFILES.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -19,3 +19,5 @@
 tests/test-ls.c
 tests/test-photos.c
 tests/test-write-covers.c
+tests/test-init-ipod.c
+tools/read-sysinfoextended-sgutils.c

Added: libgpod/branches/upstream/current/po/POTFILES.skip
===================================================================
--- libgpod/branches/upstream/current/po/POTFILES.skip	                        (rev 0)
+++ libgpod/branches/upstream/current/po/POTFILES.skip	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1 @@
+bindings/python/tests/tests.py

Modified: libgpod/branches/upstream/current/po/de.po
===================================================================
--- libgpod/branches/upstream/current/po/de.po	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/po/de.po	2007-11-12 21:03:04 UTC (rev 251)
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gtkpod 0.52\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-14 23:00+0900\n"
+"POT-Creation-Date: 2007-06-30 08:46+0900\n"
 "PO-Revision-Date: 2007-01-15 23:46+0900\n"
 "Last-Translator: Jörg Schuler <jcsjcs at users.sourceforge.net>\n"
 "Language-Team: none\n"
@@ -201,46 +201,46 @@
 msgid "Device directory does not exist."
 msgstr "Das 'Device'-Verzeichnis existiert nicht."
 
-#: ../src/itdb_itunesdb.c:448
+#: ../src/itdb_itunesdb.c:451
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Illegaler seek bei Offset %ld (Länge %ld) in Datei '%s'."
 
-#: ../src/itdb_itunesdb.c:902
+#: ../src/itdb_itunesdb.c:905
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "Keine Play Counts Datei: '%s' (mhdp-Header fehlt)."
 
-#: ../src/itdb_itunesdb.c:917
+#: ../src/itdb_itunesdb.c:920
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr "Play Counts Datei ('%s'): Headerlänge kleiner als erwarted (%d<96)."
 
-#: ../src/itdb_itunesdb.c:931
+#: ../src/itdb_itunesdb.c:934
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr ""
 "Play Counts Datei ('%s'): Länge der Einträge kleiner als erwartet (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1006
+#: ../src/itdb_itunesdb.c:1009
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr ""
 "iTunesStats Datei ('%s'): Länge der Einträge kleiner als erwartet (%d<18)."
 
-#: ../src/itdb_itunesdb.c:1328
+#: ../src/itdb_itunesdb.c:1331
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "iTunesDB beschädigt: kein MHOD bei Offset %ld in Datei '%s'."
 
-#: ../src/itdb_itunesdb.c:1476
+#: ../src/itdb_itunesdb.c:1479
 #, fuzzy, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr ""
 "Es wurde nicht wie erwarted ein 'SLst'-Hunk gefunden. Es wird trotzdem "
 "versucht, weiterzumachen.\n"
 
-#: ../src/itdb_itunesdb.c:1507
+#: ../src/itdb_itunesdb.c:1510
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -249,12 +249,12 @@
 "Die Länge einer Regel (%d) einer intelligenten Wiedergabeliste weicht von "
 "der erwarteten Länge ab. Es wird versucht fortzufahren.\n"
 
-#: ../src/itdb_itunesdb.c:1550
+#: ../src/itdb_itunesdb.c:1553
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "iTunesDB beschädigt: kein SLst-Eintrag bei Offset %ld in Datei '%s'."
 
-#: ../src/itdb_itunesdb.c:1563
+#: ../src/itdb_itunesdb.c:1566
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -264,14 +264,14 @@
 "versucht fortzufahren.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1642
+#: ../src/itdb_itunesdb.c:1645
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr ""
 "iTunesDB beschädigt: Hunklänge ist Null für den Hunk an Offset %ld in Datei "
 "'%s'."
 
-#: ../src/itdb_itunesdb.c:1655
+#: ../src/itdb_itunesdb.c:1658
 #, c-format
 msgid ""
 "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
@@ -279,7 +279,7 @@
 "iTunesDB beschädigt: kein '%s'-Eintrag in Sektion '%s' (startend bei %ld) "
 "gefunden."
 
-#: ../src/itdb_itunesdb.c:1669
+#: ../src/itdb_itunesdb.c:1672
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
@@ -288,12 +288,12 @@
 "Header-Länge des Abschnitts '%s' ist kleiner als erwartet (%d < %d) an "
 "Offset %ld in Datei '%s'."
 
-#: ../src/itdb_itunesdb.c:1754
+#: ../src/itdb_itunesdb.c:1757
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "Keine iTunesDB Datei: '%s' (kein mhdb-Header)."
 
-#: ../src/itdb_itunesdb.c:1771
+#: ../src/itdb_itunesdb.c:1774
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
@@ -302,45 +302,45 @@
 "iTunesDB ('%s'): Headerlänge des mhsd-Hunks is kleiner als erwartet (%d<32). "
 "Breche ab."
 
-#: ../src/itdb_itunesdb.c:1792
+#: ../src/itdb_itunesdb.c:1795
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr ""
 "Die iTunesDB '%s' ist beschädigt: bei Offset %ld wird ein mhsd-Abschnitt "
 "erwartet."
 
-#: ../src/itdb_itunesdb.c:1909
+#: ../src/itdb_itunesdb.c:1912
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr ""
 "Anzahl der MHODs-Abschnitte in der mhip-Sektion an Offset %ld ist in der "
 "Datei '%s' nicht konsistent."
 
-#: ../src/itdb_itunesdb.c:1927
+#: ../src/itdb_itunesdb.c:1930
 #, c-format
 msgid "Itdb_Track ID '%d' not found.\n"
 msgstr "Itdb_Track ID '%d' nicht gefunden.\n"
 
-#: ../src/itdb_itunesdb.c:2096
+#: ../src/itdb_itunesdb.c:2099
 #, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr ""
 "Anzahl der MHOD-Abschnitte in der mhyp-Sektion bei Offset %ld in der Datei '%"
 "s' ist inkonsistent."
 
-#: ../src/itdb_itunesdb.c:2106
+#: ../src/itdb_itunesdb.c:2109
 msgid "Master-PL"
 msgstr "Haupt-PL"
 
-#: ../src/itdb_itunesdb.c:2110
+#: ../src/itdb_itunesdb.c:2113
 msgid "Podcasts"
 msgstr "Podcasts"
 
-#: ../src/itdb_itunesdb.c:2112
+#: ../src/itdb_itunesdb.c:2115
 msgid "Playlist"
 msgstr "Wiedergabeliste"
 
-#: ../src/itdb_itunesdb.c:2134
+#: ../src/itdb_itunesdb.c:2137
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -349,43 +349,43 @@
 "Die iTunesDB ist beschädigt: die Anzahl der mhip-Sektionen im mhyp-Abschnit "
 "startend bei %ld in Datei '%s' ist inkonsistent."
 
-#: ../src/itdb_itunesdb.c:2468
+#: ../src/itdb_itunesdb.c:2478
 msgid "OTG Playlist"
 msgstr "OTG-Wiedergabeliste"
 
-#: ../src/itdb_itunesdb.c:2486
+#: ../src/itdb_itunesdb.c:2496
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "Keine OTG (On-The-Go) Wiedergabelistendatei: '%s' (mhpo-Header fehlt)."
 
-#: ../src/itdb_itunesdb.c:2500
+#: ../src/itdb_itunesdb.c:2510
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr ""
 "OTG (On-The-Go) Wiedergabelistendatei ('%s'): Headerlänger kleiner als "
 "erwartet (%d<20)."
 
-#: ../src/itdb_itunesdb.c:2512
+#: ../src/itdb_itunesdb.c:2522
 #, fuzzy, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr ""
 "OTG (On-The-Go) Wiedergabelistendatei ('%s'): Länge der Einträge kleiner als "
 "erwartet (%d<4)."
 
-#: ../src/itdb_itunesdb.c:2547
+#: ../src/itdb_itunesdb.c:2557
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr ""
 "OTG (On-The-Go) Wiedergabelistendateii '%s' bezieht sich auf ein nicht "
 "existierendes Stück (%d)."
 
-#: ../src/itdb_itunesdb.c:2592
+#: ../src/itdb_itunesdb.c:2602
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "OTG-Wiedergabeliste %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2660
+#: ../src/itdb_itunesdb.c:2670
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -394,7 +394,7 @@
 "konsistent. Versuche fortzufahren.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2723
+#: ../src/itdb_itunesdb.c:2733
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -402,7 +402,7 @@
 "iTunesDB möglicherweise beschädigt: Anzahl der Wiedergabelisten (mhyp-Hunks) "
 "ist nicht konsistent. Versuche fortzufahren.\n"
 
-#: ../src/itdb_itunesdb.c:2770
+#: ../src/itdb_itunesdb.c:2780
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
@@ -411,7 +411,7 @@
 "Die iTunesDB '%s' ist beschädigt: die Trackliste konnte nicht gefunden "
 "werden (kein mhsd-Abschnitt des Typs 1 gefunden)."
 
-#: ../src/itdb_itunesdb.c:2799
+#: ../src/itdb_itunesdb.c:2809
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -420,110 +420,110 @@
 "Die iTunesDB '%s' ist beschädigt: die Playlisten konnten nicht gefunden "
 "werden (keine mhsd-Abschnitte des Typs 2 oder 3 gefunden)."
 
-#: ../src/itdb_itunesdb.c:2821
+#: ../src/itdb_itunesdb.c:2831
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr ""
 "Das 'iTunes'-Verzeichnis konnte nicht gefunden werden: '%s' (oder ähnlich)."
 
-#: ../src/itdb_itunesdb.c:2838
+#: ../src/itdb_itunesdb.c:2848
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr ""
 "Das 'Music'-Verzeichnis konnte nicht gefunden werden: '%s' (oder ähnlich)."
 
-#: ../src/itdb_itunesdb.c:2856
+#: ../src/itdb_itunesdb.c:2866
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr ""
 "Das 'Control'-Verzeichnis konnte nicht gefunden werden: '%s' (oder ähnlich)."
 
-#: ../src/itdb_itunesdb.c:2974
+#: ../src/itdb_itunesdb.c:2984
 #, c-format
 msgid "File not found: '%s'."
 msgstr "Datei nicht gefunden: '%s'."
 
-#: ../src/itdb_itunesdb.c:4746
+#: ../src/itdb_itunesdb.c:4753
 #, c-format
 msgid "Opening of '%s' for writing failed (%s)."
 msgstr "Öffnen der Datei '%s' zum Schreiben ist fehlgeschlagen (%s)."
 
-#: ../src/itdb_itunesdb.c:4757 ../src/itdb_itunesdb.c:4768
+#: ../src/itdb_itunesdb.c:4764 ../src/itdb_itunesdb.c:4775
 #, c-format
 msgid "Writing to '%s' failed (%s)."
 msgstr "Schreiben in die Datei '%s' ist fehlgeschlagen (%s)."
 
-#: ../src/itdb_itunesdb.c:5122
+#: ../src/itdb_itunesdb.c:5129
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Pfad nicht gefunden: '%s' (oder ähnlich)."
 
-#: ../src/itdb_itunesdb.c:5341
+#: ../src/itdb_itunesdb.c:5348
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Fehler beim Umbenennen von '%s' nach '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5358 ../src/itdb_itunesdb.c:5375
+#: ../src/itdb_itunesdb.c:5365 ../src/itdb_itunesdb.c:5382
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Fehler beim Entfernen von '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5531 ../src/itdb_itunesdb.c:5692
+#: ../src/itdb_itunesdb.c:5538 ../src/itdb_itunesdb.c:5699
 #, fuzzy
 msgid "Mountpoint not set."
 msgstr "Mountpoint wurde nicht gesetzt.\n"
 
-#: ../src/itdb_itunesdb.c:5571
+#: ../src/itdb_itunesdb.c:5578
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "No 'F..' directories were found in '%s'."
 
-#: ../src/itdb_itunesdb.c:5592
+#: ../src/itdb_itunesdb.c:5599
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Pfad nicht gefunden: '%s'."
 
-#: ../src/itdb_itunesdb.c:5701
+#: ../src/itdb_itunesdb.c:5708
 #, fuzzy, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "Datei nicht auf Datei zugreifen: '%s'."
 
-#: ../src/itdb_itunesdb.c:5711
+#: ../src/itdb_itunesdb.c:5718
 #, c-format
 msgid ""
 "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:5915
+#: ../src/itdb_itunesdb.c:5922
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Fehler beim Öffnen von '%s' zum Lesen (%s)."
 
-#: ../src/itdb_itunesdb.c:5926
+#: ../src/itdb_itunesdb.c:5933
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Fehler beim Öffnen von '%s' zum Schreiben (%s)."
 
-#: ../src/itdb_itunesdb.c:5943
+#: ../src/itdb_itunesdb.c:5950
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Fehler beim Lesen aus '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5959
+#: ../src/itdb_itunesdb.c:5966
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Fehler beim Schreiben in die Datei '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5972 ../src/itdb_itunesdb.c:5982
+#: ../src/itdb_itunesdb.c:5979 ../src/itdb_itunesdb.c:5989
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Fehler beim Schließen der Datei '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6347
+#: ../src/itdb_itunesdb.c:6354
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:6740
+#: ../src/itdb_itunesdb.c:6747
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr ""

Modified: libgpod/branches/upstream/current/po/es.po
===================================================================
--- libgpod/branches/upstream/current/po/es.po	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/po/es.po	2007-11-12 21:03:04 UTC (rev 251)
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: libgpod\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-14 23:00+0900\n"
+"POT-Creation-Date: 2007-06-30 08:46+0900\n"
 "PO-Revision-Date: 2007-06-13 21:42+0200\n"
 "Last-Translator: Alejandro Lamas Daviña <alejandro.lamas at ific.uv.es>\n"
 "Language-Team: spanish <es_ES>\n"
@@ -204,49 +204,49 @@
 msgid "Device directory does not exist."
 msgstr "No existe el directorio del dispositivo."
 
-#: ../src/itdb_itunesdb.c:448
+#: ../src/itdb_itunesdb.c:451
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Acceso ilegal al desplazamiento %ld (tamaño %ld) en el fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:902
+#: ../src/itdb_itunesdb.c:905
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "No es un fichero cuenta reproducciones: '%s' (falta cabecera mhdp)."
 
-#: ../src/itdb_itunesdb.c:917
+#: ../src/itdb_itunesdb.c:920
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr ""
 "Fichero cuenta reproducciones ('%s'): tamaño de la cabecera menor del "
 "esperado (%d<96)."
 
-#: ../src/itdb_itunesdb.c:931
+#: ../src/itdb_itunesdb.c:934
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr ""
 "Fichero cuenta reproducciones ('%s'): tamaño de la entrada menor del "
 "esperado (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1006
+#: ../src/itdb_itunesdb.c:1009
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr ""
 "Fichero cuenta reproducciones ('%s'): tamaño de la entrada menor del "
 "esperado (%d<18)."
 
-#: ../src/itdb_itunesdb.c:1328
+#: ../src/itdb_itunesdb.c:1331
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr ""
 "iTunesDB corrupta: no hay MHOD en el desplazamiento %ld del fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:1476
+#: ../src/itdb_itunesdb.c:1479
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr "Regla de acción desconocida en %ld: %x. Intentando continuar.\n"
 
-#: ../src/itdb_itunesdb.c:1507
+#: ../src/itdb_itunesdb.c:1510
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -255,13 +255,13 @@
 "La longitud del campo de reglas (%d) de la lista de reproducción inteligente "
 "no es la esperada. Intentando continuar.\n"
 
-#: ../src/itdb_itunesdb.c:1550
+#: ../src/itdb_itunesdb.c:1553
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr ""
 "iTunesDB corrupta: no hay SLst en el desplazamiento %ld del fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:1563
+#: ../src/itdb_itunesdb.c:1566
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -271,12 +271,12 @@
 "Ignorando.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1642
+#: ../src/itdb_itunesdb.c:1645
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr "iTunesDB corrupta: tamaño 0 para la zona %ld en el fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:1655
+#: ../src/itdb_itunesdb.c:1658
 #, c-format
 msgid ""
 "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
@@ -284,7 +284,7 @@
 "iTunesDB corrupta: no se ha encontrado la sección '%s' en la sección '%s' "
 "empezando en %ld."
 
-#: ../src/itdb_itunesdb.c:1669
+#: ../src/itdb_itunesdb.c:1672
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
@@ -293,12 +293,12 @@
 "Tamaño de la cabecera de '%s' menor del esperado (%d<%d). en el "
 "desplazamiento %ld del fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:1754
+#: ../src/itdb_itunesdb.c:1757
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "No es un fichero iTunesDB: '%s' (falta la cabecera mhdb)."
 
-#: ../src/itdb_itunesdb.c:1771
+#: ../src/itdb_itunesdb.c:1774
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
@@ -307,41 +307,41 @@
 "iTunesDB ('%s'): tamaño de la cabecera de la zona mhsd menor del esperado (%"
 "d<32). Cancelando."
 
-#: ../src/itdb_itunesdb.c:1792
+#: ../src/itdb_itunesdb.c:1795
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunesDB '%s' corrupta: se esperaba mhsd en %ld."
 
-#: ../src/itdb_itunesdb.c:1909
+#: ../src/itdb_itunesdb.c:1912
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr ""
 "El número de MHODs en mhip en %ld no es consistente en el fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:1927
+#: ../src/itdb_itunesdb.c:1930
 #, c-format
 msgid "Itdb_Track ID '%d' not found.\n"
 msgstr "Itdb_Track ID '%d' no encontrada.\n"
 
-#: ../src/itdb_itunesdb.c:2096
+#: ../src/itdb_itunesdb.c:2099
 #, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr ""
 "El número de MHODs en mhyp en %ld no es consistente en el fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:2106
+#: ../src/itdb_itunesdb.c:2109
 msgid "Master-PL"
 msgstr "Lista de reproducción principal"
 
-#: ../src/itdb_itunesdb.c:2110
+#: ../src/itdb_itunesdb.c:2113
 msgid "Podcasts"
 msgstr "Podcasts"
 
-#: ../src/itdb_itunesdb.c:2112
+#: ../src/itdb_itunesdb.c:2115
 msgid "Playlist"
 msgstr "Lista de reproducción"
 
-#: ../src/itdb_itunesdb.c:2134
+#: ../src/itdb_itunesdb.c:2137
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -350,43 +350,43 @@
 "iTunesDB corrupta: el número de secciones mhip no es consistente en mhyp "
 "empezando en %ld en el fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:2468
+#: ../src/itdb_itunesdb.c:2478
 msgid "OTG Playlist"
 msgstr "Lista de reproducción OTG"
 
-#: ../src/itdb_itunesdb.c:2486
+#: ../src/itdb_itunesdb.c:2496
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "No es una lista de reproducción: '%s' (falta la cabecera mhpo)."
 
-#: ../src/itdb_itunesdb.c:2500
+#: ../src/itdb_itunesdb.c:2510
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr ""
 "Fichero de lista de reproducción OTG ('%s'): tamaño de la cabecera menor del "
 "esperado (%d<20)."
 
-#: ../src/itdb_itunesdb.c:2512
+#: ../src/itdb_itunesdb.c:2522
 #, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr ""
 "Fichero ('%s') de la lista de reproducción OTG: tamaño de la entrada menor "
 "del esperado (%d<4)."
 
-#: ../src/itdb_itunesdb.c:2547
+#: ../src/itdb_itunesdb.c:2557
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr ""
 "La lista de reproducción OTG '%s': hace referencia a una pista no existente "
 "(%d)."
 
-#: ../src/itdb_itunesdb.c:2592
+#: ../src/itdb_itunesdb.c:2602
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "Lista de reproducción OTG %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2660
+#: ../src/itdb_itunesdb.c:2670
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -395,7 +395,7 @@
 "Intentando continuar.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2723
+#: ../src/itdb_itunesdb.c:2733
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -403,7 +403,7 @@
 "Es posible que iTunesDB esté corrupta: el número de listas de reproducción "
 "(zonas mhyp) no es consistente. Intentando continuar.\n"
 
-#: ../src/itdb_itunesdb.c:2770
+#: ../src/itdb_itunesdb.c:2780
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
@@ -412,7 +412,7 @@
 "iTunesDB '%s' corrputa: No se ha encontrado la lista de pistas (no se ha "
 "encontrado la sección mhsd de tipo 1)"
 
-#: ../src/itdb_itunesdb.c:2799
+#: ../src/itdb_itunesdb.c:2809
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -421,107 +421,107 @@
 "iTunesDB '%s' corrputa: No se han encontrado las listas de reproducción (no "
 "se han encontrado las secciones mhsd de tipo 2 o tipo 3)"
 
-#: ../src/itdb_itunesdb.c:2821
+#: ../src/itdb_itunesdb.c:2831
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "Directorio 'iTunes' no encontrado: '%s' (o similar)."
 
-#: ../src/itdb_itunesdb.c:2838
+#: ../src/itdb_itunesdb.c:2848
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Directorio 'Music' no encontrado: '%s' (o similar)"
 
-#: ../src/itdb_itunesdb.c:2856
+#: ../src/itdb_itunesdb.c:2866
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Directorio 'iPod Control' no encontrado: '%s' (o similar)."
 
-#: ../src/itdb_itunesdb.c:2974
+#: ../src/itdb_itunesdb.c:2984
 #, c-format
 msgid "File not found: '%s'."
 msgstr "Fichero no encontrado: '%s'."
 
-#: ../src/itdb_itunesdb.c:4746
+#: ../src/itdb_itunesdb.c:4753
 #, c-format
 msgid "Opening of '%s' for writing failed (%s)."
 msgstr "No se ha podido abrir '%s' para su escritura (%s)."
 
-#: ../src/itdb_itunesdb.c:4757 ../src/itdb_itunesdb.c:4768
+#: ../src/itdb_itunesdb.c:4764 ../src/itdb_itunesdb.c:4775
 #, c-format
 msgid "Writing to '%s' failed (%s)."
 msgstr "No se ha podido escribir '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5122
+#: ../src/itdb_itunesdb.c:5129
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Ruta no encontrada: '%s' (o similar)."
 
-#: ../src/itdb_itunesdb.c:5341
+#: ../src/itdb_itunesdb.c:5348
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Error al renombrar '%s' a '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5358 ../src/itdb_itunesdb.c:5375
+#: ../src/itdb_itunesdb.c:5365 ../src/itdb_itunesdb.c:5382
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Error al borrar '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5531 ../src/itdb_itunesdb.c:5692
+#: ../src/itdb_itunesdb.c:5538 ../src/itdb_itunesdb.c:5699
 msgid "Mountpoint not set."
 msgstr "Punto de montaje no configurado."
 
-#: ../src/itdb_itunesdb.c:5571
+#: ../src/itdb_itunesdb.c:5578
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "No se ha encontrado ningún directorio en '%s'."
 
-#: ../src/itdb_itunesdb.c:5592
+#: ../src/itdb_itunesdb.c:5599
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Ruta no encontrada: '%s'."
 
-#: ../src/itdb_itunesdb.c:5701
+#: ../src/itdb_itunesdb.c:5708
 #, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "No se ha podido acceder al fichero '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5711
+#: ../src/itdb_itunesdb.c:5718
 #, c-format
 msgid ""
 "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr ""
 "El destino del fichero '%s' parece no existir en el iPod montado en '%s'"
 
-#: ../src/itdb_itunesdb.c:5915
+#: ../src/itdb_itunesdb.c:5922
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Error al abrir '%s' para su lectura (%s)."
 
-#: ../src/itdb_itunesdb.c:5926
+#: ../src/itdb_itunesdb.c:5933
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Error al abrir '%s' para su escritura (%s)."
 
-#: ../src/itdb_itunesdb.c:5943
+#: ../src/itdb_itunesdb.c:5950
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Error durante la lectura de '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5959
+#: ../src/itdb_itunesdb.c:5966
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Error durante la escritura de '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5972 ../src/itdb_itunesdb.c:5982
+#: ../src/itdb_itunesdb.c:5979 ../src/itdb_itunesdb.c:5989
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Error al cerrar '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6347
+#: ../src/itdb_itunesdb.c:6354
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:6740
+#: ../src/itdb_itunesdb.c:6747
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "Problema al crear el directorio iPod o el fichero: '%s'."

Modified: libgpod/branches/upstream/current/po/fr.po
===================================================================
--- libgpod/branches/upstream/current/po/fr.po	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/po/fr.po	2007-11-12 21:03:04 UTC (rev 251)
@@ -7,11 +7,11 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: libgpod-0.4.2Report-Msgid-Bugs-To: \n"
+"Project-Id-Version: libgpod-0.5.2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-14 23:00+0900\n"
-"PO-Revision-Date: 2007-01-15 18:22+0100\n"
-"Last-Translator: Éric Lassauge <lassauge at users.sf.net>\n"
+"POT-Creation-Date: 2007-06-30 08:46+0900\n"
+"PO-Revision-Date: 2007-07-02 22:31+0100\n"
+"Last-Translator: Éric Lassauge <rpmfarm at free.fr>\n"
 "Language-Team: FR\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -70,7 +70,7 @@
 msgstr "Impossible de trouver sur le iPod : « %s »\n"
 
 #: ../src/itdb_artwork.c:768
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Unable to retrieve thumbnail (appears to be on iPod, but no image info "
 "available): type: %d, filename: '%s'\n"
@@ -203,48 +203,50 @@
 msgid "Device directory does not exist."
 msgstr "Le répertoire « Device » n'existe pas."
 
-#: ../src/itdb_itunesdb.c:448
+#: ../src/itdb_itunesdb.c:451
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Erreur de flux à l'offset %ld (longueur %ld) dans le fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:902
+#: ../src/itdb_itunesdb.c:905
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "« %s » n'est pas un fichier de compteur (entête mhdp manquante)."
 
-#: ../src/itdb_itunesdb.c:917
+#: ../src/itdb_itunesdb.c:920
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr ""
 "Fichier de compteur (« %s ») : longueur de l'entête plus petite que prévue (%"
 "d < 96)."
 
-#: ../src/itdb_itunesdb.c:931
+#: ../src/itdb_itunesdb.c:934
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr ""
 "Fichier de compteur (« %s ») : longueur des données plus petite que prévue (%"
 "d < 12)."
 
-#: ../src/itdb_itunesdb.c:1006
+#: ../src/itdb_itunesdb.c:1009
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr ""
 "Fichier iTunesStats (« %s ») : longueur des données plus petite que prévue (%"
 "d < 18)."
 
-#: ../src/itdb_itunesdb.c:1328
+#: ../src/itdb_itunesdb.c:1331
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "Corruption d'iTunesDB : pas de MHOD à l'offset %ld du fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:1476
+#: ../src/itdb_itunesdb.c:1479
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr ""
+"Règle de la liste intelligente inattendue %ld : %x. Tentative pour continuer "
+"quand même.\n"
 
-#: ../src/itdb_itunesdb.c:1507
+#: ../src/itdb_itunesdb.c:1510
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -253,24 +255,24 @@
 "Longueur du champ de la règle (%d) de la liste intelligente inattendue. "
 "Tentative pour continuer quand même.\n"
 
-#: ../src/itdb_itunesdb.c:1550
+#: ../src/itdb_itunesdb.c:1553
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "Corruption d'iTunesDB : pas de SLst à l'offset %ld du fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:1563
+#: ../src/itdb_itunesdb.c:1566
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
 "\n"
 msgstr "Type MHOD inconnu (%d) lors du parcours de iTunesDB. Erreur ignorée.\n"
 
-#: ../src/itdb_itunesdb.c:1642
+#: ../src/itdb_itunesdb.c:1645
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr "Corruption d'iTunesDB : longueur 0 à %ld du fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:1655
+#: ../src/itdb_itunesdb.c:1658
 #, c-format
 msgid ""
 "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
@@ -278,7 +280,7 @@
 "Corruption d'iTunesDB : pas de section « %s » dans la section « %s » "
 "débutant à l'offset %ld."
 
-#: ../src/itdb_itunesdb.c:1669
+#: ../src/itdb_itunesdb.c:1672
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
@@ -287,12 +289,12 @@
 "longueur de l'entête « %s » plus petite que prévue (%d <  %d) à l'offset %ld "
 "du fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:1754
+#: ../src/itdb_itunesdb.c:1757
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "« %s » n'est pas un fichier iTunesDB (entête mhdb manquante)."
 
-#: ../src/itdb_itunesdb.c:1771
+#: ../src/itdb_itunesdb.c:1774
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
@@ -301,41 +303,41 @@
 "iTunesDB (« %s ») : longueur de l'entête mhsd plus petite que prévue (%"
 "d < 32). Interruption."
 
-#: ../src/itdb_itunesdb.c:1792
+#: ../src/itdb_itunesdb.c:1795
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "Corruption d'iTunesDB « %s » : mhsd attendu à l'offset %ld."
 
-#: ../src/itdb_itunesdb.c:1909
+#: ../src/itdb_itunesdb.c:1912
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr ""
 "Nombre de MHODs dans mhip à l'offset %ld inconsistant dans le fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:1927
+#: ../src/itdb_itunesdb.c:1930
 #, c-format
 msgid "Itdb_Track ID '%d' not found.\n"
 msgstr "Itdb_Track ID « %d » introuvable.\n"
 
-#: ../src/itdb_itunesdb.c:2096
+#: ../src/itdb_itunesdb.c:2099
 #, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr ""
 "Nombre de MHODs dans mhyp à l'offset %ld inconsistant dans le fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:2106
+#: ../src/itdb_itunesdb.c:2109
 msgid "Master-PL"
 msgstr "Liste principale"
 
-#: ../src/itdb_itunesdb.c:2110
+#: ../src/itdb_itunesdb.c:2113
 msgid "Podcasts"
 msgstr "Podcasts"
 
-#: ../src/itdb_itunesdb.c:2112
+#: ../src/itdb_itunesdb.c:2115
 msgid "Playlist"
 msgstr "Liste de lecture"
 
-#: ../src/itdb_itunesdb.c:2134
+#: ../src/itdb_itunesdb.c:2137
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -344,40 +346,40 @@
 "Corruption d'iTunesDB : nombre de sections mhip inconsistant dans mhyp à "
 "l'offset %ld du fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:2468
+#: ../src/itdb_itunesdb.c:2478
 msgid "OTG Playlist"
 msgstr "Liste de lecture OTG"
 
-#: ../src/itdb_itunesdb.c:2486
+#: ../src/itdb_itunesdb.c:2496
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr ""
 "Le fichier « %s » n'est pas un fichier de liste OTG (entête mhpo manquant)."
 
-#: ../src/itdb_itunesdb.c:2500
+#: ../src/itdb_itunesdb.c:2510
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr "Fichier de liste OTG (« %s ») : entête plus petit que prévu (%d < 20)."
 
-#: ../src/itdb_itunesdb.c:2512
-#, fuzzy, c-format
+#: ../src/itdb_itunesdb.c:2522
+#, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr ""
-"Fichier de liste OTG (« %s ») : longueur de données plus petite que prévue (%"
-"d < 4)."
+"Fichier de liste OTG ('%s') : longueur de données plus petite que prévue (%"
+"d<4)."
 
-#: ../src/itdb_itunesdb.c:2547
+#: ../src/itdb_itunesdb.c:2557
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr "Fichier de liste OTG « %s » : référence à un morceau inexistant (%d)."
 
-#: ../src/itdb_itunesdb.c:2592
+#: ../src/itdb_itunesdb.c:2602
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "Liste de lecture OTG %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2660
+#: ../src/itdb_itunesdb.c:2670
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -386,7 +388,7 @@
 "continuer quand même.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2723
+#: ../src/itdb_itunesdb.c:2733
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -394,7 +396,7 @@
 "Corruption possible d'iTunesDB : nombre de listes (mhyp) incohérent. "
 "Tentative pour continuer quand même.\n"
 
-#: ../src/itdb_itunesdb.c:2770
+#: ../src/itdb_itunesdb.c:2780
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
@@ -403,7 +405,7 @@
 "Corruption de iTunesDB (« %s ») : impossible de trouver la liste des "
 "morceaux (pas de section mhsd de type 1)"
 
-#: ../src/itdb_itunesdb.c:2799
+#: ../src/itdb_itunesdb.c:2809
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -412,107 +414,108 @@
 "Corruption de iTunesDB (« %s ») :  impossible de trouver les listes de "
 "lecture (pas de section mhsd de type 1 ou 3)"
 
-#: ../src/itdb_itunesdb.c:2821
+#: ../src/itdb_itunesdb.c:2831
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "Répertoire iTunes introuvable : « %s » (ou similaire)."
 
-#: ../src/itdb_itunesdb.c:2838
+#: ../src/itdb_itunesdb.c:2848
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Répertoire « Music » introuvable : « %s » (ou similaire)."
 
-#: ../src/itdb_itunesdb.c:2856
+#: ../src/itdb_itunesdb.c:2866
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Répertoire de contrôle introuvable :  « %s » (ou similaire)."
 
-#: ../src/itdb_itunesdb.c:2974
+#: ../src/itdb_itunesdb.c:2984
 #, c-format
 msgid "File not found: '%s'."
 msgstr "Fichier introuvable : « %s »."
 
-#: ../src/itdb_itunesdb.c:4746
+#: ../src/itdb_itunesdb.c:4753
 #, c-format
 msgid "Opening of '%s' for writing failed (%s)."
 msgstr "Échec de l'ouverture en écriture de « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:4757 ../src/itdb_itunesdb.c:4768
+#: ../src/itdb_itunesdb.c:4764 ../src/itdb_itunesdb.c:4775
 #, c-format
 msgid "Writing to '%s' failed (%s)."
 msgstr "Échec de l'écriture dans « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:5122
+#: ../src/itdb_itunesdb.c:5129
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Chemin introuvable : « %s » (ou similaire)."
 
-#: ../src/itdb_itunesdb.c:5341
+#: ../src/itdb_itunesdb.c:5348
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Impossible de renommer « %s » en « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:5358 ../src/itdb_itunesdb.c:5375
+#: ../src/itdb_itunesdb.c:5365 ../src/itdb_itunesdb.c:5382
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Erreur de suppression du fichier « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:5531 ../src/itdb_itunesdb.c:5692
-#, fuzzy
+#: ../src/itdb_itunesdb.c:5538 ../src/itdb_itunesdb.c:5699
 msgid "Mountpoint not set."
-msgstr "Point de montage non défini.\n"
+msgstr "Point de montage non défini."
 
-#: ../src/itdb_itunesdb.c:5571
+#: ../src/itdb_itunesdb.c:5578
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "Répertoires « F.. » introuvables dans « %s »."
 
-#: ../src/itdb_itunesdb.c:5592
+#: ../src/itdb_itunesdb.c:5599
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Chemin introuvable : « %s »."
 
-#: ../src/itdb_itunesdb.c:5701
-#, fuzzy, c-format
+#: ../src/itdb_itunesdb.c:5708
+#, c-format
 msgid "'%s' could not be accessed (%s)."
-msgstr "Impossible de trouver sur le iPod : « %s »."
+msgstr "Impossible d'accéder à « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:5711
+#: ../src/itdb_itunesdb.c:5718
 #, c-format
 msgid ""
 "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr ""
+"Le fichier de destination « %s » ne semble pas être présent dans l'iPod "
+"monté dans « %s »."
 
-#: ../src/itdb_itunesdb.c:5915
+#: ../src/itdb_itunesdb.c:5922
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Échec de l'ouverture en lecture de « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:5926
+#: ../src/itdb_itunesdb.c:5933
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Échec de l'ouverture en écriture de « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:5943
+#: ../src/itdb_itunesdb.c:5950
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Erreur lors de la lecture à partir de « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:5959
+#: ../src/itdb_itunesdb.c:5966
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Erreur lors de l'écriture dans « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:5972 ../src/itdb_itunesdb.c:5982
+#: ../src/itdb_itunesdb.c:5979 ../src/itdb_itunesdb.c:5989
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Erreur à la fermeture de « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:6347
+#: ../src/itdb_itunesdb.c:6354
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:6740
+#: ../src/itdb_itunesdb.c:6747
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "Problème à la création du répertoire ou du fichier iPod : « %s »."
@@ -603,7 +606,7 @@
 "  %s list <point_de_montage>\n"
 
 #: ../tests/test-photos.c:42
-#, fuzzy, c-format
+#, c-format
 msgid ""
 "Usage to remove photo IDs from Photo Library:\n"
 "  %s remove <mountpoint> <albumname> [<ID(s)>]\n"
@@ -701,9 +704,3 @@
 #, c-format
 msgid "Unknown command '%s'\n"
 msgstr "Commande inconnue « %s »\n"
-
-#~ msgid "Cannot write mhod of type %d\n"
-#~ msgstr "Impossible d'écrire mhod du type %d\n"
-
-#~ msgid "Error reading iPod photo database"
-#~ msgstr "Erreur à la lecture de la base de données des photos iPod"

Modified: libgpod/branches/upstream/current/po/he.po
===================================================================
--- libgpod/branches/upstream/current/po/he.po	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/po/he.po	2007-11-12 21:03:04 UTC (rev 251)
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gtkpod\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-14 23:00+0900\n"
+"POT-Creation-Date: 2007-06-30 08:46+0900\n"
 "PO-Revision-Date: 2005-08-02 21:19+0300\n"
 "Last-Translator: Assaf Gillat\n"
 "Language-Team: HEBREW <kde-il at yahoogroups.com>\n"
@@ -198,42 +198,42 @@
 msgid "Device directory does not exist."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:448
+#: ../src/itdb_itunesdb.c:451
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "חיפוש לא חוקי בהיסט %ld (אורך %ld) בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:902
+#: ../src/itdb_itunesdb.c:905
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "זהו לא קובץ ספירת השמעה: '%s' (חסר תחילית mhdp)"
 
-#: ../src/itdb_itunesdb.c:917
+#: ../src/itdb_itunesdb.c:920
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr "קובץ ספירת השמעה ('%s'): אורך תחילית קטן מהצפוי (%d<96)."
 
-#: ../src/itdb_itunesdb.c:931
+#: ../src/itdb_itunesdb.c:934
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr "קובץ ספירת השמעה ('%s'): אורך רשומה קטן מהצפוי (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1006
+#: ../src/itdb_itunesdb.c:1009
 #, fuzzy, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr "קובץ ספירת השמעה ('%s'): אורך רשומה קטן מהצפוי (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1328
+#: ../src/itdb_itunesdb.c:1331
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "iTunesDB שבור: אין MHOD בהיסט %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:1476
+#: ../src/itdb_itunesdb.c:1479
 #, fuzzy, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr "לא נמצאה חתיכת SLst כצפוי. מנסה להמשיך.\n"
 
-#: ../src/itdb_itunesdb.c:1507
+#: ../src/itdb_itunesdb.c:1510
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -241,12 +241,12 @@
 msgstr ""
 "אורך שדה של חוק (%d) רשימת השמעה חכמה הוא לא כצפוי. מנסה להמשיך בכל זאת.\n"
 
-#: ../src/itdb_itunesdb.c:1550
+#: ../src/itdb_itunesdb.c:1553
 #, fuzzy, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "iTunesDB שבור: אין MHOD בהיסט %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:1563
+#: ../src/itdb_itunesdb.c:1566
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -255,18 +255,18 @@
 "נתקלנו בסוג לא ידוע של MHOD (%d) בזמן ניתוח ה-iTuneDB. מתעלם.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1642
+#: ../src/itdb_itunesdb.c:1645
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr "iTunesDB שבור: אורך חתיכה 0 בחתיכה  %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:1655
+#: ../src/itdb_itunesdb.c:1658
 #, fuzzy, c-format
 msgid ""
 "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
 msgstr "iTunesDB שבור: אין MHOD בהיסט %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:1669
+#: ../src/itdb_itunesdb.c:1672
 #, fuzzy, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
@@ -274,12 +274,12 @@
 msgstr ""
 "iTunesDB ('%s'): גודל תחילית של החתיכה mhsd קטנה מהצפוי (%ld<32). מבטל."
 
-#: ../src/itdb_itunesdb.c:1754
+#: ../src/itdb_itunesdb.c:1757
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "זהו לא iTunesDB: '%s' (חסרה תחילית mhdb)."
 
-#: ../src/itdb_itunesdb.c:1771
+#: ../src/itdb_itunesdb.c:1774
 #, fuzzy, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
@@ -287,76 +287,76 @@
 msgstr ""
 "iTunesDB ('%s'): גודל תחילית של החתיכה mhsd קטנה מהצפוי (%ld<32). מבטל."
 
-#: ../src/itdb_itunesdb.c:1792
+#: ../src/itdb_itunesdb.c:1795
 #, fuzzy, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunesDB שבור: נמצא mhyp ב %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:1909
+#: ../src/itdb_itunesdb.c:1912
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:1927
+#: ../src/itdb_itunesdb.c:1930
 #, c-format
 msgid "Itdb_Track ID '%d' not found.\n"
 msgstr "מזהה Itdb_Track '%d' לא נמצא.\n"
 
-#: ../src/itdb_itunesdb.c:2096
+#: ../src/itdb_itunesdb.c:2099
 #, fuzzy, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr "iTunesDB שבור: נמצא mhyp ב %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:2106
+#: ../src/itdb_itunesdb.c:2109
 msgid "Master-PL"
 msgstr "רשימת ראשית"
 
-#: ../src/itdb_itunesdb.c:2110
+#: ../src/itdb_itunesdb.c:2113
 msgid "Podcasts"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:2112
+#: ../src/itdb_itunesdb.c:2115
 msgid "Playlist"
 msgstr "רשימת השמעה"
 
-#: ../src/itdb_itunesdb.c:2134
+#: ../src/itdb_itunesdb.c:2137
 #, fuzzy, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
 "ld in file '%s'."
 msgstr "iTunesDB שבור: נמצא mhyp ב %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:2468
+#: ../src/itdb_itunesdb.c:2478
 msgid "OTG Playlist"
 msgstr "רשימת השמעה OTG"
 
-#: ../src/itdb_itunesdb.c:2486
+#: ../src/itdb_itunesdb.c:2496
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "זהו לא קובץ רשימת השמעה OTG: '%s' (חסרה תחילת קובץ mhpo)."
 
-#: ../src/itdb_itunesdb.c:2500
+#: ../src/itdb_itunesdb.c:2510
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr "קובץ רשימת השמעה OTG ('%s'): גודל תחילית קטן מהצפוי (%d<20)."
 
-#: ../src/itdb_itunesdb.c:2512
+#: ../src/itdb_itunesdb.c:2522
 #, fuzzy, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr "קובץ רשימת השמעה OTG ('%s'): גודל רשומה קטן מהצפוי (%d<4)."
 
-#: ../src/itdb_itunesdb.c:2547
+#: ../src/itdb_itunesdb.c:2557
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr "רשימת השמעה OTG '%s': התייחסות לרצועה לא קיימת (%d)."
 
-#: ../src/itdb_itunesdb.c:2592
+#: ../src/itdb_itunesdb.c:2602
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "רשימת השמעה OTG %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2660
+#: ../src/itdb_itunesdb.c:2670
 #, fuzzy
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
@@ -366,7 +366,7 @@
 "להמשיך.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2723
+#: ../src/itdb_itunesdb.c:2733
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -374,120 +374,120 @@
 "יכול להיות ש-iTuneDB שבור: מספר רשימות השמעה (mhyp חתיכות) לא עקביות. מנסה "
 "להמשיך.\n"
 
-#: ../src/itdb_itunesdb.c:2770
+#: ../src/itdb_itunesdb.c:2780
 #, fuzzy, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
 "found)"
 msgstr "iTunesDB '%s' שבור: כבר מצאנו mhsds של שתי רשימות השמעה -- מוותר."
 
-#: ../src/itdb_itunesdb.c:2799
+#: ../src/itdb_itunesdb.c:2809
 #, fuzzy, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
 "sections found)"
 msgstr "iTunesDB '%s' שבור: כבר מצאנו mhsds של שתי רשימות השמעה -- מוותר."
 
-#: ../src/itdb_itunesdb.c:2821
+#: ../src/itdb_itunesdb.c:2831
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:2838
+#: ../src/itdb_itunesdb.c:2848
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:2856
+#: ../src/itdb_itunesdb.c:2866
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:2974
+#: ../src/itdb_itunesdb.c:2984
 #, c-format
 msgid "File not found: '%s'."
 msgstr "קובץ לא קיים: '%s'."
 
-#: ../src/itdb_itunesdb.c:4746
+#: ../src/itdb_itunesdb.c:4753
 #, fuzzy, c-format
 msgid "Opening of '%s' for writing failed (%s)."
 msgstr "פתיחת '%s' לכתיבה נכשלה."
 
-#: ../src/itdb_itunesdb.c:4757 ../src/itdb_itunesdb.c:4768
+#: ../src/itdb_itunesdb.c:4764 ../src/itdb_itunesdb.c:4775
 #, c-format
 msgid "Writing to '%s' failed (%s)."
 msgstr "נכשלה כתיבה ל '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5122
+#: ../src/itdb_itunesdb.c:5129
 #, fuzzy, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "נתיב לא נמצא: '%s'."
 
-#: ../src/itdb_itunesdb.c:5341
+#: ../src/itdb_itunesdb.c:5348
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "תקלה בשינוי שם '%s' ל '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5358 ../src/itdb_itunesdb.c:5375
+#: ../src/itdb_itunesdb.c:5365 ../src/itdb_itunesdb.c:5382
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "תקלה בהסרת '%s' (%s)"
 
-#: ../src/itdb_itunesdb.c:5531 ../src/itdb_itunesdb.c:5692
+#: ../src/itdb_itunesdb.c:5538 ../src/itdb_itunesdb.c:5699
 msgid "Mountpoint not set."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:5571
+#: ../src/itdb_itunesdb.c:5578
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:5592
+#: ../src/itdb_itunesdb.c:5599
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "נתיב לא נמצא: '%s'."
 
-#: ../src/itdb_itunesdb.c:5701
+#: ../src/itdb_itunesdb.c:5708
 #, fuzzy, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "קובץ לא קיים: '%s'."
 
-#: ../src/itdb_itunesdb.c:5711
+#: ../src/itdb_itunesdb.c:5718
 #, c-format
 msgid ""
 "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:5915
+#: ../src/itdb_itunesdb.c:5922
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "תקלה בפתיחת '%s' לקריאה (%s)."
 
-#: ../src/itdb_itunesdb.c:5926
+#: ../src/itdb_itunesdb.c:5933
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "תקלה בפתיחת '%s' לכתיבה (%s)."
 
-#: ../src/itdb_itunesdb.c:5943
+#: ../src/itdb_itunesdb.c:5950
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "תקלה בזמן קריאה מ '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5959
+#: ../src/itdb_itunesdb.c:5966
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "תקלה בזמן כתיבה ל '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5972 ../src/itdb_itunesdb.c:5982
+#: ../src/itdb_itunesdb.c:5979 ../src/itdb_itunesdb.c:5989
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "תקלה בזמן סגירה '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6347
+#: ../src/itdb_itunesdb.c:6354
 msgid "iPod"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:6740
+#: ../src/itdb_itunesdb.c:6747
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr ""

Modified: libgpod/branches/upstream/current/po/it.po
===================================================================
--- libgpod/branches/upstream/current/po/it.po	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/po/it.po	2007-11-12 21:03:04 UTC (rev 251)
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: it\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-14 23:00+0900\n"
+"POT-Creation-Date: 2007-06-30 08:46+0900\n"
 "PO-Revision-Date: 2007-06-02 14:56+0200\n"
 "Last-Translator: Daniele Forsi <daniele at forsi.it>\n"
 "Language-Team: Italian <tp at lists.linux.it>\n"
@@ -212,50 +212,50 @@
 msgid "Device directory does not exist."
 msgstr "La directory del dispositivo non esiste."
 
-#: ../src/itdb_itunesdb.c:448
+#: ../src/itdb_itunesdb.c:451
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Spostamento non ammesso all'offset %ld (lunghezza %ld) nel file '%s'."
 
-#: ../src/itdb_itunesdb.c:902
+#: ../src/itdb_itunesdb.c:905
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "Non è un file conta riproduzioni: '%s' (manca l'intestazione mhdp)."
 
-#: ../src/itdb_itunesdb.c:917
+#: ../src/itdb_itunesdb.c:920
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr ""
 "File conta riproduzioni ('%s'): lunghezza dell'intestazione più piccola di "
 "quanto previsto (%d<96)."
 
-#: ../src/itdb_itunesdb.c:931
+#: ../src/itdb_itunesdb.c:934
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr ""
 "File conta riproduzioni ('%s'): lunghezza della voce più piccola di quanto "
 "previsto (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1006
+#: ../src/itdb_itunesdb.c:1009
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr ""
 "File iTunesStats ('%s'): lunghezza della voce più piccola di quanto previsto "
 "(%d<18)."
 
-#: ../src/itdb_itunesdb.c:1328
+#: ../src/itdb_itunesdb.c:1331
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "iTunesDB corrotto: nessun MHOD all'offset %ld nel file '%s'."
 
-#: ../src/itdb_itunesdb.c:1476
+#: ../src/itdb_itunesdb.c:1479
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr ""
 "Azione «smart rule» sconosciuta alla posizione %ld: %x. Si prova a "
 "continuare.\n"
 
-#: ../src/itdb_itunesdb.c:1507
+#: ../src/itdb_itunesdb.c:1510
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -264,12 +264,12 @@
 "La lunghezza del campo della regola della scaletta intelligente (%d) non è "
 "come previsto. Si prova a continuare comunque.\n"
 
-#: ../src/itdb_itunesdb.c:1550
+#: ../src/itdb_itunesdb.c:1553
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "iTunesDB corrotto: nessun SLst MHOD all'offset %ld nel file '%s'."
 
-#: ../src/itdb_itunesdb.c:1563
+#: ../src/itdb_itunesdb.c:1566
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -279,14 +279,14 @@
 "iTunesDB. Ignorato.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1642
+#: ../src/itdb_itunesdb.c:1645
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr ""
 "iTunesDB corrotto: hunk di lunghezza 0 per l'hunk alla posizione %ld nel "
 "file '%s'."
 
-#: ../src/itdb_itunesdb.c:1655
+#: ../src/itdb_itunesdb.c:1658
 #, c-format
 msgid ""
 "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
@@ -294,7 +294,7 @@
 "iTunesDB corrotto: nessuna sezione '%s' trovata nella sezione '%s' che "
 "inizia alla posizione %ld."
 
-#: ../src/itdb_itunesdb.c:1669
+#: ../src/itdb_itunesdb.c:1672
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
@@ -303,12 +303,12 @@
 "la lunghezza dell'intestazione di '%s' più piccola di quanto previsto (%d < %"
 "d) alla posizione %ld nel file '%s'."
 
-#: ../src/itdb_itunesdb.c:1754
+#: ../src/itdb_itunesdb.c:1757
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "Non è un file iTunesDB: '%s' (manca l'intestazione mhdb)."
 
-#: ../src/itdb_itunesdb.c:1771
+#: ../src/itdb_itunesdb.c:1774
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
@@ -317,42 +317,42 @@
 "iTunesDB ('%s'): lunghezza dell'intestazione dell'hunk mhsd più piccola di "
 "quanto previsto (%d<32). Interruzione."
 
-#: ../src/itdb_itunesdb.c:1792
+#: ../src/itdb_itunesdb.c:1795
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunesDB '%s' corrotto: mhsd previsto alla posizione %ld."
 
-#: ../src/itdb_itunesdb.c:1909
+#: ../src/itdb_itunesdb.c:1912
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr ""
 "Il numero di MHOD nel mhip alla posizione %ld nel file '%s' è incompatibile."
 
-#: ../src/itdb_itunesdb.c:1927
+#: ../src/itdb_itunesdb.c:1930
 #, c-format
 msgid "Itdb_Track ID '%d' not found.\n"
 msgstr "itDB_Track ID '%d' non trovato.\n"
 
-#: ../src/itdb_itunesdb.c:2096
+#: ../src/itdb_itunesdb.c:2099
 #, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr ""
 "Il numero di MHOD nel mhyp alla posizione %ld nel file '%s' è incompatibile."
 
 # L'interfaccia italiana dell'iPod usa "Playlist"
-#: ../src/itdb_itunesdb.c:2106
+#: ../src/itdb_itunesdb.c:2109
 msgid "Master-PL"
 msgstr "Playlist principale"
 
-#: ../src/itdb_itunesdb.c:2110
+#: ../src/itdb_itunesdb.c:2113
 msgid "Podcasts"
 msgstr "Podcast"
 
-#: ../src/itdb_itunesdb.c:2112
+#: ../src/itdb_itunesdb.c:2115
 msgid "Playlist"
 msgstr "Playlist"
 
-#: ../src/itdb_itunesdb.c:2134
+#: ../src/itdb_itunesdb.c:2137
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -362,41 +362,41 @@
 "inizia alla posizione %ld nel file '%s'."
 
 # L'interfaccia italiana dell'iPod usa solo "On-The-Go"
-#: ../src/itdb_itunesdb.c:2468
+#: ../src/itdb_itunesdb.c:2478
 msgid "OTG Playlist"
 msgstr "Playlist OTG"
 
-#: ../src/itdb_itunesdb.c:2486
+#: ../src/itdb_itunesdb.c:2496
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "Non è un file di playlist OTG: '%s' (manca l'intestazione mhpo)."
 
-#: ../src/itdb_itunesdb.c:2500
+#: ../src/itdb_itunesdb.c:2510
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr ""
 "File di playlist OTG ('%s'): la lunghezza dell'intestazione è più piccola di "
 "quanto previsto (%d<20)."
 
-#: ../src/itdb_itunesdb.c:2512
+#: ../src/itdb_itunesdb.c:2522
 #, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr ""
 "File di playlist OTG ('%s'): la lunghezza della voce è più piccola di quanto "
 "previsto (%d<4)."
 
-#: ../src/itdb_itunesdb.c:2547
+#: ../src/itdb_itunesdb.c:2557
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr "Playlist OTG '%s': riferimento ad una traccia non esistente (%d)."
 
-#: ../src/itdb_itunesdb.c:2592
+#: ../src/itdb_itunesdb.c:2602
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "Playlist OTG %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2660
+#: ../src/itdb_itunesdb.c:2670
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -405,7 +405,7 @@
 "Provo a continuare.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2723
+#: ../src/itdb_itunesdb.c:2733
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -413,7 +413,7 @@
 "iTunesDB è probabilmente corrotto: il numero di playlist (hunk di tipo mhyp) "
 "è incompatibile. Provo a continuare.\n"
 
-#: ../src/itdb_itunesdb.c:2770
+#: ../src/itdb_itunesdb.c:2780
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
@@ -422,7 +422,7 @@
 "iTunesDB '%s' corrotto: impossibile trovare la lista delle tracce (nessuna "
 "sezione mhsd di tipo 1 è stata trovata)"
 
-#: ../src/itdb_itunesdb.c:2799
+#: ../src/itdb_itunesdb.c:2809
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -431,107 +431,107 @@
 "iTunesDB '%s' corrotto: impossibile trovare delle playlist (nessuna sezione "
 "mhsd di tipo 2 o di tipo 3 è stata trovata)"
 
-#: ../src/itdb_itunesdb.c:2821
+#: ../src/itdb_itunesdb.c:2831
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "Directory di iTunes non trovata: '%s' (o simile)."
 
-#: ../src/itdb_itunesdb.c:2838
+#: ../src/itdb_itunesdb.c:2848
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Directory della musica non trovata: '%s' (o simile)."
 
-#: ../src/itdb_itunesdb.c:2856
+#: ../src/itdb_itunesdb.c:2866
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Directory di controllo non trovata: '%s' (o simile)."
 
-#: ../src/itdb_itunesdb.c:2974
+#: ../src/itdb_itunesdb.c:2984
 #, c-format
 msgid "File not found: '%s'."
 msgstr "File non trovato: '%s'."
 
-#: ../src/itdb_itunesdb.c:4746
+#: ../src/itdb_itunesdb.c:4753
 #, c-format
 msgid "Opening of '%s' for writing failed (%s)."
 msgstr "Apertura di '%s' in scrittura fallita (%s)."
 
-#: ../src/itdb_itunesdb.c:4757 ../src/itdb_itunesdb.c:4768
+#: ../src/itdb_itunesdb.c:4764 ../src/itdb_itunesdb.c:4775
 #, c-format
 msgid "Writing to '%s' failed (%s)."
 msgstr "Scrittura su '%s' fallita (%s)."
 
-#: ../src/itdb_itunesdb.c:5122
+#: ../src/itdb_itunesdb.c:5129
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Percorso non trovato: '%s' (o simile)."
 
-#: ../src/itdb_itunesdb.c:5341
+#: ../src/itdb_itunesdb.c:5348
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Errore rinominando '%s' in '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5358 ../src/itdb_itunesdb.c:5375
+#: ../src/itdb_itunesdb.c:5365 ../src/itdb_itunesdb.c:5382
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Errore nella rimozione di '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5531 ../src/itdb_itunesdb.c:5692
+#: ../src/itdb_itunesdb.c:5538 ../src/itdb_itunesdb.c:5699
 msgid "Mountpoint not set."
 msgstr "Punto di mount non impostato."
 
-#: ../src/itdb_itunesdb.c:5571
+#: ../src/itdb_itunesdb.c:5578
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "Nessuna directory 'F..' trovata in '%s'."
 
-#: ../src/itdb_itunesdb.c:5592
+#: ../src/itdb_itunesdb.c:5599
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Percorso non trovato: '%s'."
 
-#: ../src/itdb_itunesdb.c:5701
+#: ../src/itdb_itunesdb.c:5708
 #, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "Impossibile accedere a '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5711
+#: ../src/itdb_itunesdb.c:5718
 #, c-format
 msgid ""
 "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr ""
 "Il file di destinazione '%s' sembra che non sia sull'iPod montato in '%s'."
 
-#: ../src/itdb_itunesdb.c:5915
+#: ../src/itdb_itunesdb.c:5922
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Errore nell'apertura in lettura di '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5926
+#: ../src/itdb_itunesdb.c:5933
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Errore nell'apertura in scrittura di '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5943
+#: ../src/itdb_itunesdb.c:5950
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Errore nella lettura da '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5959
+#: ../src/itdb_itunesdb.c:5966
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Errore nella scrittura su '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5972 ../src/itdb_itunesdb.c:5982
+#: ../src/itdb_itunesdb.c:5979 ../src/itdb_itunesdb.c:5989
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Errore nella chiusura di '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6347
+#: ../src/itdb_itunesdb.c:6354
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:6740
+#: ../src/itdb_itunesdb.c:6747
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "Problema nel creare una directory o un file sull'iPod: '%s'."

Modified: libgpod/branches/upstream/current/po/ja.po
===================================================================
--- libgpod/branches/upstream/current/po/ja.po	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/po/ja.po	2007-11-12 21:03:04 UTC (rev 251)
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gtkpod 0.40\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-14 23:00+0900\n"
+"POT-Creation-Date: 2007-06-30 08:46+0900\n"
 "PO-Revision-Date: 2006-02-14 16:48+0900\n"
 "Last-Translator: Kentaro Fukuchi <fukuchi at users.sourceforge.net>\n"
 "Language-Team: n/a\n"
@@ -201,44 +201,44 @@
 msgid "Device directory does not exist."
 msgstr "¥Ç¥Ð¥¤¥¹¥Ç¥£¥ì¥¯¥È¥ê¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó."
 
-#: ../src/itdb_itunesdb.c:448
+#: ../src/itdb_itunesdb.c:451
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "ÉÔÀµ¤Ê¥·¡¼¥¯: '%3$s', ¥ª¥Õ¥»¥Ã¥È %1$ld (Ťµ %2$ld)"
 
-#: ../src/itdb_itunesdb.c:902
+#: ../src/itdb_itunesdb.c:905
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "ºÆÀ¸²ó¿ô¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó: '%s' (mhdp ¥Ø¥Ã¥À¤¬Ìµ¤¤)"
 
-#: ../src/itdb_itunesdb.c:917
+#: ../src/itdb_itunesdb.c:920
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr "ºÆÀ¸²ó¿ô¥Õ¥¡¥¤¥ë ('%s'): ¥Ø¥Ã¥À¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<96)."
 
-#: ../src/itdb_itunesdb.c:931
+#: ../src/itdb_itunesdb.c:934
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr "ºÆÀ¸²ó¿ô¥Õ¥¡¥¤¥ë ('%s'): ¥¨¥ó¥È¥ê¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1006
+#: ../src/itdb_itunesdb.c:1009
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr "iTunesStats ¥Õ¥¡¥¤¥ë ('%s'): ¥¨¥ó¥È¥ê¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<18)."
 
-#: ../src/itdb_itunesdb.c:1328
+#: ../src/itdb_itunesdb.c:1331
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr ""
 "iTunesDB ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: MHOD ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó (¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %"
 "1$ld)."
 
-#: ../src/itdb_itunesdb.c:1476
+#: ../src/itdb_itunesdb.c:1479
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:1507
+#: ../src/itdb_itunesdb.c:1510
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -247,14 +247,14 @@
 "¥¹¥Þ¡¼¥È¥×¥ì¥¤¥ê¥¹¥È¤Î¥ë¡¼¥ë¤ÎŤµ (%d) ¤¬´üÂÔ¤µ¤ì¤ëŤµ¤È°Û¤Ê¤ê¤Þ¤¹. ½èÍý¤ò"
 "³¤±¤Þ¤¹.\n"
 
-#: ../src/itdb_itunesdb.c:1550
+#: ../src/itdb_itunesdb.c:1553
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr ""
 "iTunesDB ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: SLst ¤¬¸«ÉÕ¤«¤ê¤Þ¤»¤ó (¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %"
 "1$ld)."
 
-#: ../src/itdb_itunesdb.c:1563
+#: ../src/itdb_itunesdb.c:1566
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -264,14 +264,14 @@
 "¤¹.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1642
+#: ../src/itdb_itunesdb.c:1645
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr ""
 "iTunesDB ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: hunk ¤ÎŤµ¤¬ 0 ¤Ç¤¹ (¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %1"
 "$ld)."
 
-#: ../src/itdb_itunesdb.c:1655
+#: ../src/itdb_itunesdb.c:1658
 #, c-format
 msgid ""
 "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
@@ -279,7 +279,7 @@
 "iTunesDB ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: %3$ld ¤Î°ÌÃ֤ˤ¢¤ë¥»¥¯¥·¥ç¥ó '%2$s' ¤ÎÃæ¤Ë¥»¥¯¥·¥ç"
 "¥ó '%1$s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó."
 
-#: ../src/itdb_itunesdb.c:1669
+#: ../src/itdb_itunesdb.c:1672
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
@@ -288,53 +288,53 @@
 "'%1$s' ¤Î¥Ø¥Ã¥À¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%2$d < %3$d) (¥Õ¥¡¥¤¥ë '%5$s', ¥ª¥Õ¥»¥Ã¥È "
 "%4$ld)."
 
-#: ../src/itdb_itunesdb.c:1754
+#: ../src/itdb_itunesdb.c:1757
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "iTunesDB ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó: '%s' (mhdb ¥Ø¥Ã¥À¤¬Ìµ¤¤)."
 
-#: ../src/itdb_itunesdb.c:1771
+#: ../src/itdb_itunesdb.c:1774
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
 "Aborting."
 msgstr "iTunesDB ('%s'): mhsd ¤Î¥Ø¥Ã¥À¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<32). Ãæ»ß¤·¤Þ¤¹."
 
-#: ../src/itdb_itunesdb.c:1792
+#: ../src/itdb_itunesdb.c:1795
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunesDB '%s' ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: mhsd ¤¬ %ld ¤Î°ÌÃ֤˸«¤Ä¤«¤ê¤Þ¤»¤ó."
 
-#: ../src/itdb_itunesdb.c:1909
+#: ../src/itdb_itunesdb.c:1912
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr ""
 "mhip Ãæ¤Î MHOD ¤Î¿ô¤¬¿©¤¤°ã¤Ã¤Æ¤¤¤Þ¤¹ (¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %1$ld)."
 
-#: ../src/itdb_itunesdb.c:1927
+#: ../src/itdb_itunesdb.c:1930
 #, c-format
 msgid "Itdb_Track ID '%d' not found.\n"
 msgstr "Itdb_Track ID '%d' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó.\n"
 
-#: ../src/itdb_itunesdb.c:2096
+#: ../src/itdb_itunesdb.c:2099
 #, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr ""
 "mhyp Ãæ¤Î MHOD ¤Î¿ô¤¬¿©¤¤°ã¤Ã¤Æ¤¤¤Þ¤¹ (¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %1$ld)."
 
-#: ../src/itdb_itunesdb.c:2106
+#: ../src/itdb_itunesdb.c:2109
 msgid "Master-PL"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:2110
+#: ../src/itdb_itunesdb.c:2113
 msgid "Podcasts"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:2112
+#: ../src/itdb_itunesdb.c:2115
 msgid "Playlist"
 msgstr "¥×¥ì¥¤¥ê¥¹¥È"
 
-#: ../src/itdb_itunesdb.c:2134
+#: ../src/itdb_itunesdb.c:2137
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -343,38 +343,38 @@
 "iTunesDB ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: mhyp Ãæ¤Î mhip ¥»¥¯¥·¥ç¥ó¤Î¿ô¤¬¿©¤¤°ã¤Ã¤Æ¤¤¤Þ¤¹ "
 "(¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %1$ld)."
 
-#: ../src/itdb_itunesdb.c:2468
+#: ../src/itdb_itunesdb.c:2478
 msgid "OTG Playlist"
 msgstr "OTG ¥×¥ì¥¤¥ê¥¹¥È"
 
-#: ../src/itdb_itunesdb.c:2486
+#: ../src/itdb_itunesdb.c:2496
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "OTG ¥×¥ì¥¤¥ê¥¹¥È¤Î¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó: '%s' (mhpo ¥Ø¥Ã¥À¤¬Ìµ¤¤)."
 
-#: ../src/itdb_itunesdb.c:2500
+#: ../src/itdb_itunesdb.c:2510
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr "OTG ¥×¥ì¥¤¥ê¥¹¥È¥Õ¥¡¥¤¥ë ('%s'): ¥Ø¥Ã¥À¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<20)."
 
-#: ../src/itdb_itunesdb.c:2512
+#: ../src/itdb_itunesdb.c:2522
 #, fuzzy, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr "OTG ¥×¥ì¥¤¥ê¥¹¥È¥Õ¥¡¥¤¥ë ('%s'): ¥¨¥ó¥È¥ê¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<4)."
 
-#: ../src/itdb_itunesdb.c:2547
+#: ../src/itdb_itunesdb.c:2557
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr ""
 "OTG ¥×¥ì¥¤¥ê¥¹¥È¥Õ¥¡¥¤¥ë ('%s'): ¸ºß¤·¤Ê¤¤¶ÊÈÖ¹æ (%d) ¤Ø¤Î»²¾È¤¬¤¢¤ê¤Þ¤¹."
 
-#: ../src/itdb_itunesdb.c:2592
+#: ../src/itdb_itunesdb.c:2602
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "OTG ¥×¥ì¥¤¥ê¥¹¥È %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2660
+#: ../src/itdb_itunesdb.c:2670
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -383,7 +383,7 @@
 "¤¹.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2723
+#: ../src/itdb_itunesdb.c:2733
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -391,7 +391,7 @@
 "iTunesDB ¤¬Â¿Ê¬²õ¤ì¤Æ¤¤¤Þ¤¹: ¥×¥ì¥¤¥ê¥¹¥È¤Î¿ô (mhyp ¤Î¿ô) ¤¬¿©¤¤°ã¤Ã¤Æ¤¤¤Þ"
 "¤¹. ½èÍý¤ò³¤±¤Þ¤¹.\n"
 
-#: ../src/itdb_itunesdb.c:2770
+#: ../src/itdb_itunesdb.c:2780
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
@@ -400,7 +400,7 @@
 "iTunesDB '%s' ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: ¶Ê¥ê¥¹¥È¤¬¸«ÉÕ¤«¤ê¤Þ¤»¤ó. (mhsd ¥¿¥¤¥× 1 ¥»¥¯"
 "¥·¥ç¥ó¤¬¸«¤Ä¤«¤é¤Ê¤¤)"
 
-#: ../src/itdb_itunesdb.c:2799
+#: ../src/itdb_itunesdb.c:2809
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -409,107 +409,107 @@
 "iTunesDB '%s' ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: ¥×¥ì¥¤¥ê¥¹¥È¤¬¸«ÉÕ¤«¤ê¤Þ¤»¤ó. (mhsd ¥¿¥¤¥× 2 "
 "¤È ¥¿¥¤¥× 3 ¤Î¥»¥¯¥·¥ç¥ó¤¬¸«¤Ä¤«¤é¤Ê¤¤)"
 
-#: ../src/itdb_itunesdb.c:2821
+#: ../src/itdb_itunesdb.c:2831
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "iTunes ¥Ç¥£¥ì¥¯¥È¥ê¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s' (¤Ê¤É)."
 
-#: ../src/itdb_itunesdb.c:2838
+#: ../src/itdb_itunesdb.c:2848
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Music ¥Ç¥£¥ì¥¯¥È¥ê¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s' (¤Ê¤É)."
 
-#: ../src/itdb_itunesdb.c:2856
+#: ../src/itdb_itunesdb.c:2866
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Control ¥Ç¥£¥ì¥¯¥È¥ê¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s' (¤Ê¤É)."
 
-#: ../src/itdb_itunesdb.c:2974
+#: ../src/itdb_itunesdb.c:2984
 #, c-format
 msgid "File not found: '%s'."
 msgstr "¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s'."
 
-#: ../src/itdb_itunesdb.c:4746
+#: ../src/itdb_itunesdb.c:4753
 #, c-format
 msgid "Opening of '%s' for writing failed (%s)."
 msgstr "'%s' ¤ò½ñ¤­¹þ¤ßÍѤ˳«¤¯¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)."
 
-#: ../src/itdb_itunesdb.c:4757 ../src/itdb_itunesdb.c:4768
+#: ../src/itdb_itunesdb.c:4764 ../src/itdb_itunesdb.c:4775
 #, c-format
 msgid "Writing to '%s' failed (%s)."
 msgstr "'%s'¤Î½ñ¤­¹þ¤ß¤Ë¼ºÇÔ¤·¤Þ¤·¤¿ (%s)."
 
-#: ../src/itdb_itunesdb.c:5122
+#: ../src/itdb_itunesdb.c:5129
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "¥Ñ¥¹¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s' (¤Ê¤É)."
 
-#: ../src/itdb_itunesdb.c:5341
+#: ../src/itdb_itunesdb.c:5348
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "'%s' ¤ò '%s' ¤ËÊѹ¹¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)."
 
-#: ../src/itdb_itunesdb.c:5358 ../src/itdb_itunesdb.c:5375
+#: ../src/itdb_itunesdb.c:5365 ../src/itdb_itunesdb.c:5382
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "'%s' ¤Îºï½üÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿ (%s)."
 
-#: ../src/itdb_itunesdb.c:5531 ../src/itdb_itunesdb.c:5692
+#: ../src/itdb_itunesdb.c:5538 ../src/itdb_itunesdb.c:5699
 #, fuzzy
 msgid "Mountpoint not set."
 msgstr "¥Þ¥¦¥ó¥È¾ì½ê¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó.\n"
 
-#: ../src/itdb_itunesdb.c:5571
+#: ../src/itdb_itunesdb.c:5578
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "'F..' ¥Ç¥£¥ì¥¯¥È¥ê¤¬ '%s' ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó."
 
-#: ../src/itdb_itunesdb.c:5592
+#: ../src/itdb_itunesdb.c:5599
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "¥Ñ¥¹¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s'."
 
-#: ../src/itdb_itunesdb.c:5701
+#: ../src/itdb_itunesdb.c:5708
 #, fuzzy, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "¥Õ¥¡¥¤¥ë '%s' ¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿."
 
-#: ../src/itdb_itunesdb.c:5711
+#: ../src/itdb_itunesdb.c:5718
 #, c-format
 msgid ""
 "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:5915
+#: ../src/itdb_itunesdb.c:5922
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "'%s' ¤òÆɤ߹þ¤ßÍѤ˳«¤¯¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)."
 
-#: ../src/itdb_itunesdb.c:5926
+#: ../src/itdb_itunesdb.c:5933
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "'%s' ¤ò½ñ¤­¹þ¤ßÍѤ˳«¤¯¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)."
 
-#: ../src/itdb_itunesdb.c:5943
+#: ../src/itdb_itunesdb.c:5950
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "'%s' ¤ÎÆɤ߹þ¤ßÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿ (%s)."
 
-#: ../src/itdb_itunesdb.c:5959
+#: ../src/itdb_itunesdb.c:5966
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "'%s' ¤Î½ñ¤­¹þ¤ßÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿ (%s)."
 
-#: ../src/itdb_itunesdb.c:5972 ../src/itdb_itunesdb.c:5982
+#: ../src/itdb_itunesdb.c:5979 ../src/itdb_itunesdb.c:5989
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "'%s' ¤òÊĤ¸¤ëºÝ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿ (%s)."
 
-#: ../src/itdb_itunesdb.c:6347
+#: ../src/itdb_itunesdb.c:6354
 msgid "iPod"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:6740
+#: ../src/itdb_itunesdb.c:6747
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "iPod ¥Ç¥£¥ì¥¯¥È¥ê¤ÎºîÀ®¤Þ¤¿¤Ï¥Õ¥¡¥¤¥ë '%s' ¤ÎºîÀ®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿."

Added: libgpod/branches/upstream/current/po/ro.po
===================================================================
--- libgpod/branches/upstream/current/po/ro.po	                        (rev 0)
+++ libgpod/branches/upstream/current/po/ro.po	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,674 @@
+# Romanian translation file for libgpod
+# Copyright (C) 2007 Alex Eftimie
+# This file is distributed under the same license as the libgpod package.
+# Alex Eftimie <alexeftimie at gmail dot com>, 2007
+#
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: gtkpod 0.52\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2007-06-30 08:46+0900\n"
+"PO-Revision-Date: 2007-07-09 00:02+0900\n"
+"Last-Translator: Alex Eftimie <alexeftimie at gmail dot com>\n"
+"Language-Team: none\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../src/db-artwork-parser.c:131
+#, c-format
+msgid "Unexpected mhod3 string type: %d\n"
+msgstr "Tip ÅŸir mhod3 nepotrivit: %d\n"
+
+#: ../src/db-artwork-parser.c:267
+#, c-format
+msgid "Could not find corresponding track (dbid: %s) for artwork entry.\n"
+msgstr "Nu am putut găsi piesa corespunzpătoare (dbid: %s) pentru obiectul artwork.\n"
+
+#: ../src/db-artwork-parser.c:293
+#, c-format
+msgid "iTunesDB and ArtworkDB artwork sizes inconsistent (%d+%d != %d)\n"
+msgstr "Dimesniunile artwork iTunesDB ÅŸi ArtworkDB sunt inconsistente (%d+%d != %d)\n"
+
+#: ../src/db-artwork-parser.c:463
+#, c-format
+msgid "Unexpected mhsd index: %d\n"
+msgstr "Index mhsd nepotrivit: %d\n"
+
+#: ../src/db-image-parser.c:118
+#, c-format
+msgid "Unexpected image type in mhni: size: %ux%u (%d), offset: %d\n"
+msgstr "Tip imagine nepotrivit în mhni: size: %ux%u (%d), offset: %d\n"
+
+#: ../src/itdb_artwork.c:199
+#, c-format
+msgid "Could not access file '%s'."
+msgstr "Nu am putut accesa fiÅŸierul '%s'."
+
+#: ../src/itdb_artwork.c:216 ../src/itdb_artwork.c:277
+#: ../src/itdb_artwork.c:337
+msgid "Artwork support not compiled into libgpod."
+msgstr "Suportul pentru artwork nu a fost compilat în libgpod."
+
+#: ../src/itdb_artwork.c:395
+#, c-format
+msgid "Illegal filename: '%s'.\n"
+msgstr "Nume de fiÅŸier ilegal: '%s'.\n"
+
+#: ../src/itdb_artwork.c:401
+msgid "Mountpoint not set.\n"
+msgstr "Punctul de montare nu a fost stabilit\n"
+
+#: ../src/itdb_artwork.c:554
+#, c-format
+msgid "Could not find on iPod: '%s'\n"
+msgstr "Nu am putut găsi pe iPod: '%s'\n"
+
+#: ../src/itdb_artwork.c:768
+#, c-format
+msgid ""
+"Unable to retrieve thumbnail (appears to be on iPod, but no image info "
+"available): type: %d, filename: '%s'\n"
+msgstr ""
+"Nu am putut obţine miniatura (apare ca fiind pe iPod, dar nu sunt disponibile "
+"informaţii despre imagine): tip: %d, nume fişier: '%s'\n"
+
+#: ../src/itdb_device.c:170
+msgid "Invalid"
+msgstr "Invalid"
+
+#: ../src/itdb_device.c:171 ../src/itdb_device.c:197
+msgid "Unknown"
+msgstr "Necunoscut"
+
+#: ../src/itdb_device.c:172
+msgid "Color"
+msgstr "Color"
+
+#: ../src/itdb_device.c:173
+msgid "Color U2"
+msgstr "Color U2"
+
+#: ../src/itdb_device.c:174
+msgid "Grayscale"
+msgstr "CenuÅŸiu"
+
+#: ../src/itdb_device.c:175
+msgid "Grayscale U2"
+msgstr "CenuÅŸiu U2"
+
+#: ../src/itdb_device.c:176
+msgid "Mini (Silver)"
+msgstr "Mini (Argintiu)"
+
+#: ../src/itdb_device.c:177
+msgid "Mini (Blue)"
+msgstr "Mini (Albastru)"
+
+#: ../src/itdb_device.c:178
+msgid "Mini (Pink)"
+msgstr "Mini (Roz)"
+
+#: ../src/itdb_device.c:179
+msgid "Mini (Green)"
+msgstr "Mini (Verde)"
+
+#: ../src/itdb_device.c:180
+msgid "Mini (Gold)"
+msgstr "Mini (Auriu)"
+
+#: ../src/itdb_device.c:181
+msgid "Shuffle"
+msgstr "Shuffle"
+
+#: ../src/itdb_device.c:182
+msgid "Nano (White)"
+msgstr "Nano (Alb)"
+
+#: ../src/itdb_device.c:183
+msgid "Nano (Black)"
+msgstr "Nano (Negru)"
+
+#: ../src/itdb_device.c:184
+msgid "Video (White)"
+msgstr "Video (Alb)"
+
+#: ../src/itdb_device.c:185
+msgid "Video (Black)"
+msgstr "Video (Negru)"
+
+#: ../src/itdb_device.c:186
+msgid "Mobile (1)"
+msgstr "Mobile (1)"
+
+#: ../src/itdb_device.c:187
+msgid "Video U2"
+msgstr "Video U2"
+
+#: ../src/itdb_device.c:188
+msgid "Nano (Silver)"
+msgstr "Nano (Argintiu)"
+
+#: ../src/itdb_device.c:189
+msgid "Nano (Blue)"
+msgstr "Nano (Albastru)"
+
+#: ../src/itdb_device.c:190
+msgid "Nano (Green)"
+msgstr "Nano (Verde)"
+
+#: ../src/itdb_device.c:191
+msgid "Nano (Pink)"
+msgstr "Nano (Roz)"
+
+#: ../src/itdb_device.c:198
+msgid "First Generation"
+msgstr "Prima generaţie"
+
+#: ../src/itdb_device.c:199
+msgid "Second Generation"
+msgstr "A doua generaţie"
+
+#: ../src/itdb_device.c:200
+msgid "Third Generation"
+msgstr "A treia generaţie"
+
+#: ../src/itdb_device.c:201
+msgid "Fourth Generation"
+msgstr "A patra generaţie"
+
+#: ../src/itdb_device.c:202
+msgid "Fifth Generation"
+msgstr "A cincea generaţie"
+
+#: ../src/itdb_device.c:203
+msgid "Sixth Generation"
+msgstr "A şasea generaţie"
+
+#: ../src/itdb_device.c:204
+msgid "Mobile Phone"
+msgstr "Telefon mobil"
+
+#: ../src/itdb_device.c:470
+#, c-format
+msgid "Could not open '%s' for writing."
+msgstr "Nu am putut deschide '%s' pentru scriere."
+
+#: ../src/itdb_device.c:479
+msgid "Device directory does not exist."
+msgstr "Dosarul dispozitivului nu există"
+
+#: ../src/itdb_itunesdb.c:451
+#, c-format
+msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
+msgstr "Căutare ilegală la deplasarea %ld (lungime %ld) în fişierul '%s'."
+
+#: ../src/itdb_itunesdb.c:905
+#, c-format
+msgid "Not a Play Counts file: '%s' (missing mhdp header)."
+msgstr "Nu un fişier de contorizare a redărilor: '%s' (lipseşte antetul mhdp)."
+
+#: ../src/itdb_itunesdb.c:920
+#, c-format
+msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
+msgstr "Fişier de contorizare a redărilor ('%s'): lungimea antetului mai mică decât este aşteptat (%d<96)."
+
+#: ../src/itdb_itunesdb.c:934
+#, c-format
+msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
+msgstr "Fişier de contorizare a redărilor ('%s'): lungimea intrării mai mică decât este aşteptat (%d<96)."
+
+#: ../src/itdb_itunesdb.c:1009
+#, c-format
+msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
+msgstr "Fişier iTunesStats ('%s'): lungimea intrării mai mică decât este aşteptat (%d<18)."
+
+#: ../src/itdb_itunesdb.c:1331
+#, c-format
+msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
+msgstr "iTunesDB coruptă: lipsă MHOD la deplasarea %ld în fişierul '%s'."
+
+#: ../src/itdb_itunesdb.c:1479
+#, c-format
+msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
+msgstr "Acţiune regulă inteligentă necunoscută la %ld: %x. Încercând să continuu.\n"
+
+#: ../src/itdb_itunesdb.c:1510
+#, c-format
+msgid ""
+"Length of smart playlist rule field (%d) not as expected. Trying to continue "
+"anyhow.\n"
+msgstr "Lungimea câmpului regulă a listei de redare inteligentă (%d) neaşteptată. Încercând să continuu oricum\n"
+
+#: ../src/itdb_itunesdb.c:1553
+#, c-format
+msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
+msgstr "iTunesDB coruptă: lipsă SLst la deplasarea %ld în fişierul '%s'."
+
+#: ../src/itdb_itunesdb.c:1566
+#, c-format
+msgid ""
+"Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
+"\n"
+msgstr ""
+"Tip MHOD necunoscut (%d) întâlnit la prelucrarea iTunesDB. Ignorând.\n"
+"\n"
+
+#: ../src/itdb_itunesdb.c:1645
+#, c-format
+msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
+msgstr "iTunesDB coruptă: lungime 0 pentru bucata de la %ld în fişierul '%s'."
+
+#: ../src/itdb_itunesdb.c:1658
+#, c-format
+msgid ""
+"iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
+msgstr "iTunesDB coruptă: secţiunea '%s' nu a fost găsită în secţiunea '%s' începând de la %ld"
+
+#: ../src/itdb_itunesdb.c:1672
+#, c-format
+msgid ""
+"header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
+"'%s'."
+msgstr ""
+"lungimea antetului '%s' mai mică decât este aşteptat (%d < %d) la deplasarea %ld"
+"în fişierul '%s'."
+
+#: ../src/itdb_itunesdb.c:1757
+#, c-format
+msgid "Not a iTunesDB: '%s' (missing mhdb header)."
+msgstr "Nu o iTunesDB: '%s' (lipsă antet mhdb)."
+
+#: ../src/itdb_itunesdb.c:1774
+#, c-format
+msgid ""
+"iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
+"Aborting."
+msgstr ""
+"iTunesDB ('%s'): lungimea antetului bucăţii mhsd mai mică decât aşteptat (%d<32). "
+"Renunţând"
+
+#: ../src/itdb_itunesdb.c:1795
+#, c-format
+msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
+msgstr "iTunesDB '%s' coruptă: mhsd aşteptat la %ld."
+
+#: ../src/itdb_itunesdb.c:1912
+#, c-format
+msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
+msgstr "Numărul de MHOD în mhip la %ld inconsistent în fişierul '%s'."
+
+#: ../src/itdb_itunesdb.c:1930
+#, c-format
+msgid "Itdb_Track ID '%d' not found.\n"
+msgstr "Itdb_Track ID '%d' nu a fost găsit.\n"
+
+#: ../src/itdb_itunesdb.c:2099
+#, c-format
+msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
+msgstr "Numărul de MHOD în mhyp la %ld inconsistent în fişierul '%s'."
+
+#: ../src/itdb_itunesdb.c:2109
+msgid "Master-PL"
+msgstr "Master-PL"
+
+#: ../src/itdb_itunesdb.c:2113
+msgid "Podcasts"
+msgstr "Podcasturi"
+
+#: ../src/itdb_itunesdb.c:2115
+msgid "Playlist"
+msgstr "Listă redare"
+
+#: ../src/itdb_itunesdb.c:2137
+#, c-format
+msgid ""
+"iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
+"ld in file '%s'."
+msgstr ""
+"iTunesDV coruptă: numărul de secţiuni mhip inconsistent în mhyp începând la"
+"%ld în fişierul '%s'."
+
+#: ../src/itdb_itunesdb.c:2478
+msgid "OTG Playlist"
+msgstr "Listă redare OTG"
+
+#: ../src/itdb_itunesdb.c:2496
+#, c-format
+msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
+msgstr "Nu un fişier listă redare OTG: '%s' (lipsă antet mhpo)."
+
+#: ../src/itdb_itunesdb.c:2510
+#, c-format
+msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
+msgstr "Fişier listă redare OTG ('%s'): lungimea antetului mai mică decât aşteptat (%d<20)."
+
+#: ../src/itdb_itunesdb.c:2522
+#, c-format
+msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
+msgstr "Fişier listă redare OTG ('%s'): lungimea intrării mai mică decât aşteptat (%d<4)."
+
+#: ../src/itdb_itunesdb.c:2557
+#, c-format
+msgid "OTG playlist file '%s': reference to non-existent track (%d)."
+msgstr "Fişier listă redare OTG ('%s'): referinţă către o piesă inexistentă (%d)."
+
+#: ../src/itdb_itunesdb.c:2602
+#, c-format
+msgid "OTG Playlist %d"
+msgstr "Listă redare OTG %d"
+
+#. this should not be -- issue warning
+#: ../src/itdb_itunesdb.c:2670
+msgid ""
+"iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
+"continue.\n"
+msgstr ""
+
+#. this should not be -- issue warning
+#: ../src/itdb_itunesdb.c:2733
+msgid ""
+"iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
+"Trying to continue.\n"
+msgstr ""
+
+#: ../src/itdb_itunesdb.c:2780
+#, c-format
+msgid ""
+"iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
+"found)"
+msgstr "iTunesDB '%s' coruptă: Nu am putut găsi lista de piese (lipsă "
+"secţiuni mhsd de tip 1)"
+
+#: ../src/itdb_itunesdb.c:2809
+#, c-format
+msgid ""
+"iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
+"sections found)"
+msgstr "iTunesDB '%s' coruptă: Nu am putut găsi liste de redare (lipsă "
+"secţiuni mhsd de tip 2 sau 3)"
+
+#: ../src/itdb_itunesdb.c:2831
+#, c-format
+msgid "iTunes directory not found: '%s' (or similar)."
+msgstr "Dosar iTunes negăsit: '%s' (sau similar)."
+
+#: ../src/itdb_itunesdb.c:2848
+#, c-format
+msgid "Music directory not found: '%s' (or similar)."
+msgstr "Dosar muzică negăsit: '%s' (sau similar)."
+
+#: ../src/itdb_itunesdb.c:2866
+#, c-format
+msgid "Control directory not found: '%s' (or similar)."
+msgstr "Dosar de control negăsit: '%s' (sau similar)."
+
+#: ../src/itdb_itunesdb.c:2984
+#, c-format
+msgid "File not found: '%s'."
+msgstr "Fişier negăsit: '%s'."
+
+#: ../src/itdb_itunesdb.c:4753
+#, c-format
+msgid "Opening of '%s' for writing failed (%s)."
+msgstr "Deschiderea '%s' pentru scriere eşuată (%s)."
+
+#: ../src/itdb_itunesdb.c:4764 ../src/itdb_itunesdb.c:4775
+#, c-format
+msgid "Writing to '%s' failed (%s)."
+msgstr "Scriere în '%s' eşuată (%s)."
+
+#: ../src/itdb_itunesdb.c:5129
+#, c-format
+msgid "Path not found: '%s' (or similar)."
+msgstr "Cale negăsită: '%s' (sau similară)."
+
+#: ../src/itdb_itunesdb.c:5348
+#, c-format
+msgid "Error renaming '%s' to '%s' (%s)."
+msgstr "Eroare la redenumirea '%s' în '%s' (%s)."
+
+#: ../src/itdb_itunesdb.c:5365 ../src/itdb_itunesdb.c:5382
+#, c-format
+msgid "Error removing '%s' (%s)."
+msgstr "Eroare la ÅŸtergerea '%s' (%s)."
+
+#: ../src/itdb_itunesdb.c:5538 ../src/itdb_itunesdb.c:5699
+msgid "Mountpoint not set."
+msgstr "Punct de montare nestabilit."
+
+#: ../src/itdb_itunesdb.c:5578
+#, c-format
+msgid "No 'F..' directories found in '%s'."
+msgstr "Nici un dosar 'F..' nu a fost găsit în '%s'."
+
+#: ../src/itdb_itunesdb.c:5599
+#, c-format
+msgid "Path not found: '%s'."
+msgstr "Cale negăsită: '%s'."
+
+#: ../src/itdb_itunesdb.c:5708
+#, c-format
+msgid "'%s' could not be accessed (%s)."
+msgstr "'%s' nu a putut fi accesat (%s)."
+
+#: ../src/itdb_itunesdb.c:5718
+#, c-format
+msgid ""
+"Destination file '%s' does not appear to be on the iPod mounted at '%s'."
+msgstr ""
+"Fişierul destinaţie '%s' nu pare să fie pe iPodul montat la '%s'."
+
+#: ../src/itdb_itunesdb.c:5922
+#, c-format
+msgid "Error opening '%s' for reading (%s)."
+msgstr "Eroare la deschiderea '%s' pentru citire (%s)."
+
+#: ../src/itdb_itunesdb.c:5933
+#, c-format
+msgid "Error opening '%s' for writing (%s)."
+msgstr "Eroare la deschiderea '%s' pentru scriere (%s)."
+
+#: ../src/itdb_itunesdb.c:5950
+#, c-format
+msgid "Error while reading from '%s' (%s)."
+msgstr "Eroarea la citirea din '%s' (%s)"
+
+#: ../src/itdb_itunesdb.c:5966
+#, c-format
+msgid "Error while writing to '%s' (%s)."
+msgstr "Eroare la scrierea în '%s' (%s)."
+
+#: ../src/itdb_itunesdb.c:5979 ../src/itdb_itunesdb.c:5989
+#, c-format
+msgid "Error when closing '%s' (%s)."
+msgstr "Eroare la închiderea '%s' (%s)."
+
+#: ../src/itdb_itunesdb.c:6354
+msgid "iPod"
+msgstr "iPod"
+
+#: ../src/itdb_itunesdb.c:6747
+#, c-format
+msgid "Problem creating iPod directory or file: '%s'."
+msgstr "Problemă la crearea dosarului iPod sau a fişierului: '%s'."
+
+#: ../src/itdb_photoalbum.c:109
+#, c-format
+msgid "Photos directory not found: '%s' (or similar)."
+msgstr "Dosarul imagini nu a fost găsit: '%s' (sau similar)."
+
+#: ../src/itdb_photoalbum.c:256 ../src/itdb_photoalbum.c:463
+msgid "Photo Library"
+msgstr "Biblioteca foto"
+
+#: ../src/itdb_photoalbum.c:370
+msgid "You need to specify the iPod model used before photos can be added."
+msgstr "Trebuie să specificaţi modelul de iPod folosit înainte de a putea"
+"adăuga imagini."
+
+#: ../src/itdb_photoalbum.c:391
+#, c-format
+msgid ""
+"Your iPod does not seem to support photos. Maybe you need to specify the "
+"correct iPod model number? It is currently set to 'x%s' (%s/%s)."
+msgstr "Modelul dvs de iPod se pare că nu suportă imagini. Poate trebuie să"
+"specificaţi modelul corect de iPod? În prezent este setat ca 'x%s' (%s/%s)."
+
+#: ../src/itdb_photoalbum.c:403
+#, c-format
+msgid "Could not access file '%s'. Photo not added."
+msgstr "Nu am putut accesa fişierul '%s'. Imaginea nu a fost adăugată."
+
+#: ../src/itdb_photoalbum.c:451
+msgid ""
+"Unexpected error in itdb_photodb_add_photo_internal() while adding photo, "
+"please report."
+msgstr ""
+"Eroare neaşteptată în itdb_photodb_add_photo_internal() la adăugarea imaginii, "
+"vă rugăm raportaţi-o."
+
+#: ../src/itdb_photoalbum.c:471
+msgid ""
+"Library compiled without gdk-pixbuf support. Picture support is disabled."
+msgstr ""
+"Biblioteca a fost compilată fără suport pentru gdk-pixbuf. Suportul pentru "
+"imagini este dezactivat."
+
+#. New action!
+#: ../src/itdb_playlist.c:79
+#, c-format
+msgid "Unknown action (%d) in smart playlist will be ignored.\n"
+msgstr "Acţiune necunoscută (%d) în lista de redare inteligentă va fi ignorată.\n"
+
+#: ../tests/test-photos.c:39
+#, c-format
+msgid ""
+"Usage to add photos:\n"
+"  %s add <mountpoint> <albumname> [<filename(s)>]\n"
+"  <albumname> should be set to 'NULL' to add photos to the master photo "
+"album\n"
+"  (Photo Library) only. If you don't specify any filenames an empty album "
+"will\n"
+"  be created.\n"
+msgstr ""
+"Mod de utilizare pentru a adăuga imagini:\n"
+"  %s add <mountpoint> <albumname> [<filename(s)>]\n"
+"  <albumname> trebuie setat ca 'NULL' pentru a adăuga imagini la albumul"
+"foto principal\n"
+"  Numai pentru (Photo Library). Dacă nu specificaţi nici un nume de fişier "
+"un album nou\n"
+"  va fi creat.\n"
+
+#: ../tests/test-photos.c:40
+#, c-format
+msgid ""
+"Usage to dump all photos to <output_dir>:\n"
+"  %s dump <mountpoint> <output_dir>\n"
+msgstr ""
+"Mod de utilizare pentru a afiÅŸa toate imaginile la <output_dir>:\n"
+"  %s dump <mountpoint> <output_dir>\n"
+
+#: ../tests/test-photos.c:41
+#, c-format
+msgid ""
+"Usage to list all photos IDs to stdout:\n"
+"  %s list <mountpoint>\n"
+msgstr ""
+"Mod de utilizare pentru a lista toate IDurile imaginilor la stdout:\n"
+"  %s list <mountpoint>\n"
+
+
+#: ../tests/test-photos.c:42
+#, c-format
+msgid ""
+"Usage to remove photo IDs from Photo Library:\n"
+"  %s remove <mountpoint> <albumname> [<ID(s)>]\n"
+"  <albumname> should be set to 'NULL' to remove photos from the iPod\n"
+"  altogether. If you don't specify any IDs, the photoalbum will be removed\n"
+"  instead.\n"
+"  WARNING: IDs may change when writing the PhotoDB file.\n"
+msgstr ""
+"Mod de utilizare pentru ÅŸtergerea ID de imagini din Biblioteca foto:\n"
+"  %s remove <mountpoint> <albumname> [<ID(s)>]\n"
+"  <albumname> trebuie lăsat 'NULL' pentru a şterge mai multe imagini\n"
+"  de pe iPod la un loc. Dacă nu specificaţi ID, tot albumul va fi şters.\n"
+"  ATENÅ¢IE: IDurile se pot schimba la scrierea fiÅŸierului PhotoDB.\n"
+
+#: ../tests/test-photos.c:126
+msgid "Wrong number of command line arguments.\n"
+msgstr "Număr incorect de argumente în linia de comandă.\n"
+
+#: ../tests/test-photos.c:135
+#, c-format
+msgid "Error creating '%s' (mkdir)\n"
+msgstr "Eroare la crearea '%s' (mkdir)\n"
+
+#: ../tests/test-photos.c:141
+#, c-format
+msgid "Error: '%s' is not a directory\n"
+msgstr "Eroare: '%s' nu este un dosar\n"
+
+#: ../tests/test-photos.c:150 ../tests/test-photos.c:184
+#: ../tests/test-photos.c:313
+#, c-format
+msgid "Error reading iPod photo database (%s).\n"
+msgstr "Eroare la citirea bazei de date foto a iPod (%s).\n"
+
+#: ../tests/test-photos.c:156 ../tests/test-photos.c:190
+#: ../tests/test-photos.c:320
+msgid "Error reading iPod photo database.\n"
+msgstr "Eroare la citirea bazei de date foto a iPod.\n"
+
+#: ../tests/test-photos.c:174 ../tests/test-photos.c:233
+#: ../tests/test-photos.c:303 ../tests/test-photos.c:386
+msgid "Insufficient number of command line arguments.\n"
+msgstr "Număr de argumente în linia de comandă insuficient.\n"
+
+#: ../tests/test-photos.c:201
+msgid "<Unnamed>"
+msgstr "<Nedenumit>"
+
+#: ../tests/test-photos.c:216
+msgid "<No members>\n"
+msgstr "<Fără membri>\n"
+
+#: ../tests/test-photos.c:243
+#, c-format
+msgid ""
+"Error reading iPod photo database (%s).\n"
+"Will attempt to create a new database.\n"
+msgstr ""
+"Eroare la citirea bazei de date foto a iPod (%s).\n"
+"Se încearcă să se creeze una nouă.\n"
+
+#: ../tests/test-photos.c:249
+msgid ""
+"Error reading iPod photo database, will attempt to create a new database\n"
+msgstr ""
+"Eroare la citirea bazei de date foto a iPod, se încearcă să se creeze una nouă\n"
+
+#: ../tests/test-photos.c:274
+#, c-format
+msgid "Error adding photo (%s) to photo database: %s\n"
+msgstr "Eroare la adăugarea imaginii (%s) la baza de date de imagini: %s\n"
+
+#: ../tests/test-photos.c:331
+#, c-format
+msgid "Specified album '%s' not found. Aborting.\n"
+msgstr "Albumul specificat '%s' nu a fost găsit. Abandonând.\n"
+
+#: ../tests/test-photos.c:343
+msgid "Cannot remove Photo Library playlist. Aborting.\n"
+msgstr "Nu am putut înlătura lista de redare Bibliotecă foto. Abandonând.\n"
+
+#: ../tests/test-photos.c:364
+#, c-format
+msgid "Warning: could not find photo with ID <%d>. Skipping...\n"
+msgstr "Avertizare: nu am putut găsi imaginea cu ID <%d>. Omiţând...\n"
+
+#: ../tests/test-photos.c:410
+#, c-format
+msgid "Unknown command '%s'\n"
+msgstr "Comandă necunoscută '%s' \n"

Modified: libgpod/branches/upstream/current/po/sv.po
===================================================================
--- libgpod/branches/upstream/current/po/sv.po	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/po/sv.po	2007-11-12 21:03:04 UTC (rev 251)
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: sv\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-14 23:00+0900\n"
+"POT-Creation-Date: 2007-06-30 08:46+0900\n"
 "PO-Revision-Date: 2007-01-14 15:53+0100\n"
 "Last-Translator: Stefan Asserhäll <stefan.asserhall at comhem.se>\n"
 "Language-Team: Svenska <sv at li.org>\n"
@@ -201,42 +201,42 @@
 msgid "Device directory does not exist."
 msgstr "Enhetskatalog finns inte."
 
-#: ../src/itdb_itunesdb.c:448
+#: ../src/itdb_itunesdb.c:451
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Ogiltig sökning till position %ld (längd %ld) i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:902
+#: ../src/itdb_itunesdb.c:905
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "Inte en uppspelningsdatafil: '%s' (saknar mhdp-huvud)."
 
-#: ../src/itdb_itunesdb.c:917
+#: ../src/itdb_itunesdb.c:920
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr "Uppspelningsdatafil ('%s'): Huvudlängd mindre än väntat (%d < 96)"
 
-#: ../src/itdb_itunesdb.c:931
+#: ../src/itdb_itunesdb.c:934
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr "Uppspelningsdatafil ('%s'): Postlängd mindre än väntat (%d < 12)"
 
-#: ../src/itdb_itunesdb.c:1006
+#: ../src/itdb_itunesdb.c:1009
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr "iTunes statistikfil ('%s'): Postlängd mindre än väntat (%d < 18)"
 
-#: ../src/itdb_itunesdb.c:1328
+#: ../src/itdb_itunesdb.c:1331
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "iTunes databas skadad: Ingen MHOD på position %ld i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:1476
+#: ../src/itdb_itunesdb.c:1479
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:1507
+#: ../src/itdb_itunesdb.c:1510
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -245,12 +245,12 @@
 "Regelfältets längd (%d) i den smarta spellistan är inte den förväntade. "
 "Försöker fortsätta ändå.\n"
 
-#: ../src/itdb_itunesdb.c:1550
+#: ../src/itdb_itunesdb.c:1553
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "iTunes databas skadad: Ingen SLst på position %ld i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:1563
+#: ../src/itdb_itunesdb.c:1566
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -260,13 +260,13 @@
 "den.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1642
+#: ../src/itdb_itunesdb.c:1645
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr ""
 "iTunes databas skadad: Datalängd 0 för data på position %ld i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:1655
+#: ../src/itdb_itunesdb.c:1658
 #, c-format
 msgid ""
 "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
@@ -274,7 +274,7 @@
 "iTunes databas skadad: NÃ¥gon sektion '%s' hittades inte i sektion '%s' med "
 "början på %ld."
 
-#: ../src/itdb_itunesdb.c:1669
+#: ../src/itdb_itunesdb.c:1672
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
@@ -282,12 +282,12 @@
 msgstr ""
 "Huvudlängd för '%s' mindre än väntat (%d < %d) på position %ld i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:1754
+#: ../src/itdb_itunesdb.c:1757
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "Inte en iTunes databas: '%s' (saknar mhdb-huvud)."
 
-#: ../src/itdb_itunesdb.c:1771
+#: ../src/itdb_itunesdb.c:1774
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
@@ -296,39 +296,39 @@
 "iTunes databas ('%s'): Huvudlängd för mhsd-data mindre än väntat (%d < 32). "
 "Avbryter."
 
-#: ../src/itdb_itunesdb.c:1792
+#: ../src/itdb_itunesdb.c:1795
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunes databas '%s' skadad: Förväntade mhsd på position %ld."
 
-#: ../src/itdb_itunesdb.c:1909
+#: ../src/itdb_itunesdb.c:1912
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr "Antal MHOD i mhip på position %ld inte konsekvent i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:1927
+#: ../src/itdb_itunesdb.c:1930
 #, c-format
 msgid "Itdb_Track ID '%d' not found.\n"
 msgstr "ITunes databas spår-id '%d' hittades inte.\n"
 
-#: ../src/itdb_itunesdb.c:2096
+#: ../src/itdb_itunesdb.c:2099
 #, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr "Antal MHOD i mhyp på position %ld inte konsekvent i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:2106
+#: ../src/itdb_itunesdb.c:2109
 msgid "Master-PL"
 msgstr "Huvudspellista"
 
-#: ../src/itdb_itunesdb.c:2110
+#: ../src/itdb_itunesdb.c:2113
 msgid "Podcasts"
 msgstr "Podradiosändningar"
 
-#: ../src/itdb_itunesdb.c:2112
+#: ../src/itdb_itunesdb.c:2115
 msgid "Playlist"
 msgstr "Spellista"
 
-#: ../src/itdb_itunesdb.c:2134
+#: ../src/itdb_itunesdb.c:2137
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -337,37 +337,37 @@
 "iTunes databas skadad: Antal mhip sektioner inte konsekvent i mhyp med "
 "början på %ld i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:2468
+#: ../src/itdb_itunesdb.c:2478
 msgid "OTG Playlist"
 msgstr "OTG-spellista"
 
-#: ../src/itdb_itunesdb.c:2486
+#: ../src/itdb_itunesdb.c:2496
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "Inte en OTG-spellistefil: '%s' (saknar mhpo-huvud)."
 
-#: ../src/itdb_itunesdb.c:2500
+#: ../src/itdb_itunesdb.c:2510
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr "OTG-spellistefil ('%s'): Huvudlängd mindre än väntat (%d < 20)"
 
-#: ../src/itdb_itunesdb.c:2512
+#: ../src/itdb_itunesdb.c:2522
 #, fuzzy, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr "OTG-spellistefil ('%s'): Postlängd mindre än väntat (%d < 4)"
 
-#: ../src/itdb_itunesdb.c:2547
+#: ../src/itdb_itunesdb.c:2557
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr "OTG-spellistefil '%s': Referens till spår som inte finns (%d)."
 
-#: ../src/itdb_itunesdb.c:2592
+#: ../src/itdb_itunesdb.c:2602
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "OTG-spellista %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2660
+#: ../src/itdb_itunesdb.c:2670
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -376,7 +376,7 @@
 "fortsätta.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2723
+#: ../src/itdb_itunesdb.c:2733
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -384,7 +384,7 @@
 "iTunes databas möjligen skadad: Antal spellistor (mhyp-data) inte "
 "konsekvent. Försöker fortsätta.\n"
 
-#: ../src/itdb_itunesdb.c:2770
+#: ../src/itdb_itunesdb.c:2780
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
@@ -393,7 +393,7 @@
 "iTunes databas '%s' skadad: Kunde inte hitta spårlista (någon mhsd av typ 1 "
 "hittades inte)"
 
-#: ../src/itdb_itunesdb.c:2799
+#: ../src/itdb_itunesdb.c:2809
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -402,107 +402,107 @@
 "iTunes databas '%s' skadad: Kunde inte hitta spellistor (någon mhsd av typ 2 "
 "eller typ 3 hittades)"
 
-#: ../src/itdb_itunesdb.c:2821
+#: ../src/itdb_itunesdb.c:2831
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "iTunes katalog hittades inte: '%s' (eller liknande)."
 
-#: ../src/itdb_itunesdb.c:2838
+#: ../src/itdb_itunesdb.c:2848
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Musikkatalog hittades inte: '%s' (eller liknande)."
 
-#: ../src/itdb_itunesdb.c:2856
+#: ../src/itdb_itunesdb.c:2866
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Styrkatalog hittades inte: '%s' (eller liknande)."
 
-#: ../src/itdb_itunesdb.c:2974
+#: ../src/itdb_itunesdb.c:2984
 #, c-format
 msgid "File not found: '%s'."
 msgstr "Filen hittades inte: '%s'."
 
-#: ../src/itdb_itunesdb.c:4746
+#: ../src/itdb_itunesdb.c:4753
 #, c-format
 msgid "Opening of '%s' for writing failed (%s)."
 msgstr "Fel när '%s' skulle öppnas för skrivning (%s)."
 
-#: ../src/itdb_itunesdb.c:4757 ../src/itdb_itunesdb.c:4768
+#: ../src/itdb_itunesdb.c:4764 ../src/itdb_itunesdb.c:4775
 #, c-format
 msgid "Writing to '%s' failed (%s)."
 msgstr "Fel vid skrivning till '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5122
+#: ../src/itdb_itunesdb.c:5129
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Sökväg hittades inte: '%s' (eller liknande)."
 
-#: ../src/itdb_itunesdb.c:5341
+#: ../src/itdb_itunesdb.c:5348
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Fel vid byte av namn på '%s' till '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5358 ../src/itdb_itunesdb.c:5375
+#: ../src/itdb_itunesdb.c:5365 ../src/itdb_itunesdb.c:5382
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Fel vid borttagning av '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5531 ../src/itdb_itunesdb.c:5692
+#: ../src/itdb_itunesdb.c:5538 ../src/itdb_itunesdb.c:5699
 #, fuzzy
 msgid "Mountpoint not set."
 msgstr "Monteringsplats inte inställd.\n"
 
-#: ../src/itdb_itunesdb.c:5571
+#: ../src/itdb_itunesdb.c:5578
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "NÃ¥gra 'F..'-kataloger hittades inte i '%s'."
 
-#: ../src/itdb_itunesdb.c:5592
+#: ../src/itdb_itunesdb.c:5599
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Sökväg hittades inte: '%s'."
 
-#: ../src/itdb_itunesdb.c:5701
+#: ../src/itdb_itunesdb.c:5708
 #, fuzzy, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "Kunde inte komma åt filen '%s'."
 
-#: ../src/itdb_itunesdb.c:5711
+#: ../src/itdb_itunesdb.c:5718
 #, c-format
 msgid ""
 "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:5915
+#: ../src/itdb_itunesdb.c:5922
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Fel när '%s' skulle öppnas för läsning (%s)."
 
-#: ../src/itdb_itunesdb.c:5926
+#: ../src/itdb_itunesdb.c:5933
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Fel när '%s' skulle öppnas för skrivning (%s)."
 
-#: ../src/itdb_itunesdb.c:5943
+#: ../src/itdb_itunesdb.c:5950
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Fel vid läsning från '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5959
+#: ../src/itdb_itunesdb.c:5966
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Fel vid skrivning till '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5972 ../src/itdb_itunesdb.c:5982
+#: ../src/itdb_itunesdb.c:5979 ../src/itdb_itunesdb.c:5989
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Fel när '%s' skulle stängas (%s)."
 
-#: ../src/itdb_itunesdb.c:6347
+#: ../src/itdb_itunesdb.c:6354
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:6740
+#: ../src/itdb_itunesdb.c:6747
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "Problem att skapa iPod-katalog eller fil: '%s'."

Modified: libgpod/branches/upstream/current/py-compile
===================================================================
--- libgpod/branches/upstream/current/py-compile	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/py-compile	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,10 @@
 #!/bin/sh
-
 # py-compile - Compile a Python program
-# Copyright 2000, 2001 Free Software Foundation, Inc.
 
+scriptversion=2005-05-14.22
+
+# Copyright (C) 2000, 2001, 2003, 2004, 2005  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)
@@ -15,78 +17,130 @@
 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
 
 # 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.
 
-# called as "py-compile [--basedir DIR] PY_FILES ...
+# 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
 
 basedir=
-
-case "$1" in
+destdir=
+files=
+while test $# -ne 0; do
+  case "$1" in
     --basedir)
-	basedir=$2
-	shift 2
-	;;
-    --help)
-	echo "Usage: py-compile [--basedir DIR] PY_FILES ..."
-	echo "Byte compile some python scripts.  This should be performed"
-	echo "after they have been moved to the final installation location"
-	exit 0
-	;;
-    --version)
-	echo "py-compile version 0.0"
-	exit 0
-	;;
-esac
+      basedir=$2
+      if test -z "$basedir"; then
+        echo "$0: Missing argument to --basedir." 1>&2
+        exit 1
+      fi
+      shift
+      ;;
+    --destdir)
+      destdir=$2
+      if test -z "$destdir"; then
+        echo "$0: Missing argument to --destdir." 1>&2
+        exit 1
+      fi
+      shift
+      ;;
+    -h|--h*)
+      cat <<\EOF
+Usage: py-compile [--help] [--version] [--basedir DIR] [--destdir DIR] FILES..."
 
-if [ $# = 0 ]; then
-    echo "No files given to $0" 1>&2
+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|--v*)
+      echo "py-compile $scriptversion"
+      exit $?
+      ;;
+    *)
+      files="$files $1"
+      ;;
+  esac
+  shift
+done
+
+if test -z "$files"; then
+    echo "$0: No files given.  Try \`$0 --help' for more information." 1>&2
     exit 1
 fi
 
 # if basedir was given, then it should be prepended to filenames before
 # byte compilation.
 if [ -z "$basedir" ]; then
-    trans="path = file"
+    pathtrans="path = file"
 else
-    trans="path = os.path.join('$basedir', file)"
+    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, string, py_compile
 
-files = '''$*'''
+files = '''$files'''
+
 print 'Byte-compiling python modules...'
 for file in string.split(files):
-    $trans
-    if not os.path.exists(path) or not (len(path) >= 3 and path[-3:] == '.py'):
+    $pathtrans
+    $filetrans
+    if not os.path.exists(filepath) or not (len(filepath) >= 3
+                                            and filepath[-3:] == '.py'):
 	continue
     print file,
     sys.stdout.flush()
-    py_compile.compile(path)
+    py_compile.compile(filepath, filepath + 'c', path)
 print" || exit $?
 
 # this will fail for python < 1.5, but that doesn't matter ...
 $PYTHON -O -c "
 import sys, os, string, py_compile
 
-files = '''$*'''
+files = '''$files'''
 print 'Byte-compiling python modules (optimized versions) ...'
 for file in string.split(files):
-    $trans
-    if not os.path.exists(path) or not (len(path) >= 3 and path[-3:] == '.py'):
+    $pathtrans
+    $filetrans
+    if not os.path.exists(filepath) or not (len(filepath) >= 3
+                                            and filepath[-3:] == '.py'):
 	continue
     print file,
     sys.stdout.flush()
-    py_compile.compile(path)
+    py_compile.compile(filepath, filepath + 'o', path)
 print" 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-end: "$"
+# End:

Modified: libgpod/branches/upstream/current/src/Makefile.am
===================================================================
--- libgpod/branches/upstream/current/src/Makefile.am	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/Makefile.am	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,38 +1,39 @@
 lib_LTLIBRARIES = libgpod.la
 
-libgpod_la_SOURCES = \
-	itdb.h           \
-	itdb_artwork.c   \
-	itdb_itunesdb.c  \
-	itdb_playlist.c  \
-	itdb_private.h   \
-	itdb_photoalbum.c \
-	itdb_track.c     \
-	db-artwork-parser.c \
-	db-artwork-parser.h \
-	db-parse-context.c  \
-	db-parse-context.h  \
-	db-artwork-debug.c  \
-	db-artwork-debug.h  \
-	db-image-parser.c   \
-	db-image-parser.h   \
-	db-itunes-parser.h  \
-	db-artwork-writer.c \
-	ithumb-writer.c \
-	itdb_device.c \
-	itdb_device.h \
-	itdb_endianness.h \
-	pixmaps.c \
-	pixmaps.h \
-	glib-compat.h
+libgpod_la_SOURCES = 		\
+	db-artwork-debug.c  	\
+	db-artwork-parser.c 	\
+	db-artwork-writer.c 	\
+	db-image-parser.c   	\
+	db-parse-context.c  	\
+	itdb_artwork.c   	\
+	itdb_device.c  		\
+	itdb_itunesdb.c 	\
+	itdb_photoalbum.c 	\
+	itdb_playlist.c  	\
+	itdb_sha1.c 		\
+	itdb_sysinfo.c 		\
+	itdb_track.c     	\
+	ithumb-writer.c 	\
+	pixmaps.c 		\
+	sha1.c
 
-
-libgpod_la_headers = itdb.h
-libgpod_la_noinst_headers = itdb_private.h hal-common.h
 libgpod_la_LDFLAGS = -version-info $(LIBGPOD_SO_VERSION) -no-undefined
 
 libgpodincludedir = $(includedir)/gpod-1.0/gpod
-libgpodinclude_HEADERS = $(libgpod_la_headers)
+libgpodinclude_HEADERS = itdb.h
+noinst_HEADERS = 		\
+	db-artwork-debug.h	\
+	db-artwork-parser.h 	\
+	db-image-parser.h   	\
+	db-itunes-parser.h  	\
+	db-parse-context.h  	\
+	itdb_device.h  		\
+	itdb_endianness.h 	\
+	itdb_private.h   	\
+	itdb_sha1.h 		\
+	pixmaps.h		\
+	sha1.h
 
 INCLUDES=$(LIBGPOD_CFLAGS)
 LIBS=$(LIBGPOD_LIBS)

Modified: libgpod/branches/upstream/current/src/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/src/Makefile.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# Free Software Foundation, Inc.
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
@@ -14,6 +14,7 @@
 
 @SET_MAKE@
 
+
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
 VPATH = @srcdir@
@@ -21,7 +22,6 @@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 top_builddir = ..
-
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
@@ -35,7 +35,56 @@
 NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
+build_triplet = @build@
 host_triplet = @host@
+subdir = src
+DIST_COMMON = $(libgpodinclude_HEADERS) $(noinst_HEADERS) \
+	$(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_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 = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(libdir)" \
+	"$(DESTDIR)$(libgpodincludedir)"
+libLTLIBRARIES_INSTALL = $(INSTALL)
+LTLIBRARIES = $(lib_LTLIBRARIES)
+libgpod_la_LIBADD =
+am_libgpod_la_OBJECTS = db-artwork-debug.lo db-artwork-parser.lo \
+	db-artwork-writer.lo db-image-parser.lo db-parse-context.lo \
+	itdb_artwork.lo itdb_device.lo itdb_itunesdb.lo \
+	itdb_photoalbum.lo itdb_playlist.lo itdb_sha1.lo \
+	itdb_sysinfo.lo itdb_track.lo ithumb-writer.lo pixmaps.lo \
+	sha1.lo
+libgpod_la_OBJECTS = $(am_libgpod_la_OBJECTS)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(libgpod_la_SOURCES)
+DIST_SOURCES = $(libgpod_la_SOURCES)
+libgpodincludeHEADERS_INSTALL = $(INSTALL_HEADER)
+HEADERS = $(libgpodinclude_HEADERS) $(noinst_HEADERS)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -80,10 +129,19 @@
 GREP = @GREP@
 GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
 GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
 HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
 HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
 HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
 HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
 HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
 HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
 HTML_DIR = @HTML_DIR@
@@ -97,14 +155,12 @@
 INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
 INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_ICONV = @INTLTOOL_ICONV@
 INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
 INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@
-INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@
 INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
 INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
 INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
 INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
@@ -116,12 +172,14 @@
 INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
 INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@
 INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
 INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 LDFLAGS = @LDFLAGS@
 LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@
 LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
 LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
 LIBGPOD_VERSION = @LIBGPOD_VERSION@
 LIBOBJS = @LIBOBJS@
@@ -149,6 +207,8 @@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
 PYTHON = @PYTHON@
 PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 PYTHON_INCLUDES = @PYTHON_INCLUDES@
@@ -159,6 +219,7 @@
 RANLIB = @RANLIB@
 SED = @SED@
 SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
 SHELL = @SHELL@
 STRIP = @STRIP@
 SWIG = @SWIG@
@@ -178,6 +239,8 @@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -203,6 +266,7 @@
 localedir = @localedir@
 localstatedir = @localstatedir@
 mandir = @mandir@
+mkdir_p = @mkdir_p@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
 pkgpyexecdir = @pkgpyexecdir@
@@ -217,121 +281,98 @@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
 lib_LTLIBRARIES = libgpod.la
-
 libgpod_la_SOURCES = \
-	itdb.h           \
-	itdb_artwork.c   \
-	itdb_itunesdb.c  \
-	itdb_playlist.c  \
-	itdb_private.h   \
-	itdb_photoalbum.c \
-	itdb_track.c     \
-	db-artwork-parser.c \
-	db-artwork-parser.h \
-	db-parse-context.c  \
-	db-parse-context.h  \
-	db-artwork-debug.c  \
-	db-artwork-debug.h  \
-	db-image-parser.c   \
-	db-image-parser.h   \
-	db-itunes-parser.h  \
-	db-artwork-writer.c \
-	ithumb-writer.c \
-	itdb_device.c \
-	itdb_device.h \
-	itdb_endianness.h \
-	pixmaps.c \
-	pixmaps.h \
-	glib-compat.h
+	db-artwork-debug.c  	\
+	db-artwork-parser.c 	\
+	db-artwork-writer.c 	\
+	db-image-parser.c   	\
+	db-parse-context.c  	\
+	itdb_artwork.c   	\
+	itdb_device.c  		\
+	itdb_itunesdb.c 	\
+	itdb_photoalbum.c 	\
+	itdb_playlist.c  	\
+	itdb_sha1.c 		\
+	itdb_sysinfo.c 		\
+	itdb_track.c     	\
+	ithumb-writer.c 	\
+	pixmaps.c 		\
+	sha1.c
 
-
-libgpod_la_headers = itdb.h
-libgpod_la_noinst_headers = itdb_private.h hal-common.h
 libgpod_la_LDFLAGS = -version-info $(LIBGPOD_SO_VERSION) -no-undefined
-
 libgpodincludedir = $(includedir)/gpod-1.0/gpod
-libgpodinclude_HEADERS = $(libgpod_la_headers)
+libgpodinclude_HEADERS = itdb.h
+noinst_HEADERS = \
+	db-artwork-debug.h	\
+	db-artwork-parser.h 	\
+	db-image-parser.h   	\
+	db-itunes-parser.h  	\
+	db-parse-context.h  	\
+	itdb_device.h  		\
+	itdb_endianness.h 	\
+	itdb_private.h   	\
+	itdb_sha1.h 		\
+	pixmaps.h		\
+	sha1.h
 
 INCLUDES = $(LIBGPOD_CFLAGS)
-subdir = src
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
-LTLIBRARIES = $(lib_LTLIBRARIES)
-
-libgpod_la_LIBADD =
-am_libgpod_la_OBJECTS = itdb_artwork.lo itdb_itunesdb.lo \
-	itdb_playlist.lo itdb_photoalbum.lo itdb_track.lo \
-	db-artwork-parser.lo db-parse-context.lo db-artwork-debug.lo \
-	db-image-parser.lo db-artwork-writer.lo ithumb-writer.lo \
-	itdb_device.lo pixmaps.lo
-libgpod_la_OBJECTS = $(am_libgpod_la_OBJECTS)
-
-DEFAULT_INCLUDES =  -I. -I$(srcdir) -I$(top_builddir)
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
- at AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/db-artwork-debug.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/db-artwork-parser.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/db-artwork-writer.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/db-image-parser.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/db-parse-context.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/itdb_artwork.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/itdb_device.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/itdb_itunesdb.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/itdb_photoalbum.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/itdb_playlist.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/itdb_track.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/ithumb-writer.Plo \
- at AMDEP_TRUE@	./$(DEPDIR)/pixmaps.Plo
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \
-	$(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-	$(AM_LDFLAGS) $(LDFLAGS) -o $@
-DIST_SOURCES = $(libgpod_la_SOURCES)
-HEADERS = $(libgpodinclude_HEADERS)
-
-DIST_COMMON = $(libgpodinclude_HEADERS) $(srcdir)/Makefile.in \
-	Makefile.am
-SOURCES = $(libgpod_la_SOURCES)
-
 all: all-am
 
 .SUFFIXES:
 .SUFFIXES: .c .lo .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+$(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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  src/Makefile'; \
 	cd $(top_srcdir) && \
 	  $(AUTOMAKE) --gnu  src/Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
-	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
-libLTLIBRARIES_INSTALL = $(INSTALL)
+.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
 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
 	@$(NORMAL_INSTALL)
-	$(mkinstalldirs) $(DESTDIR)$(libdir)
+	test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
 	@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
 	  if test -f $$p; then \
-	    f="`echo $$p | sed -e 's|^.*/||'`"; \
-	    echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(libdir)/$$f"; \
-	    $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(libdir)/$$f; \
+	    f=$(am__strip_dir) \
+	    echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
+	    $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
 	  else :; fi; \
 	done
 
 uninstall-libLTLIBRARIES:
 	@$(NORMAL_UNINSTALL)
-	@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
-	    p="`echo $$p | sed -e 's|^.*/||'`"; \
-	  echo " $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p"; \
-	  $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \
+	@set -x; list='$(lib_LTLIBRARIES)'; for p in $$list; do \
+	  p=$(am__strip_dir) \
+	  echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \
+	  $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \
 	done
 
 clean-libLTLIBRARIES:
 	-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
 	@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
 	  dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
-	  test "$$dir" = "$$p" && dir=.; \
+	  test "$$dir" != "$$p" || dir=.; \
 	  echo "rm -f \"$${dir}/so_locations\""; \
 	  rm -f "$${dir}/so_locations"; \
 	done
@@ -339,7 +380,7 @@
 	$(LINK) -rpath $(libdir) $(libgpod_la_LDFLAGS) $(libgpod_la_OBJECTS) $(libgpod_la_LIBADD) $(LIBS)
 
 mostlyclean-compile:
-	-rm -f *.$(OBJEXT) core *.core
+	-rm -f *.$(OBJEXT)
 
 distclean-compile:
 	-rm -f *.tab.c
@@ -354,42 +395,33 @@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/itdb_itunesdb.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/itdb_photoalbum.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/itdb_playlist.Plo at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/itdb_sha1.Plo at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/itdb_sysinfo.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/itdb_track.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ithumb-writer.Plo at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/pixmaps.Plo at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/sha1.Plo at am__quote@
 
 .c.o:
- at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(COMPILE) -c $<
 
 .c.obj:
- at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
- at am__fastdepCC_TRUE@	if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -400,33 +432,24 @@
 distclean-libtool:
 	-rm -f libtool
 uninstall-info-am:
-libgpodincludeHEADERS_INSTALL = $(INSTALL_HEADER)
 install-libgpodincludeHEADERS: $(libgpodinclude_HEADERS)
 	@$(NORMAL_INSTALL)
-	$(mkinstalldirs) $(DESTDIR)$(libgpodincludedir)
+	test -z "$(libgpodincludedir)" || $(mkdir_p) "$(DESTDIR)$(libgpodincludedir)"
 	@list='$(libgpodinclude_HEADERS)'; for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
-	  f="`echo $$p | sed -e 's|^.*/||'`"; \
-	  echo " $(libgpodincludeHEADERS_INSTALL) $$d$$p $(DESTDIR)$(libgpodincludedir)/$$f"; \
-	  $(libgpodincludeHEADERS_INSTALL) $$d$$p $(DESTDIR)$(libgpodincludedir)/$$f; \
+	  f=$(am__strip_dir) \
+	  echo " $(libgpodincludeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(libgpodincludedir)/$$f'"; \
+	  $(libgpodincludeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(libgpodincludedir)/$$f"; \
 	done
 
 uninstall-libgpodincludeHEADERS:
 	@$(NORMAL_UNINSTALL)
 	@list='$(libgpodinclude_HEADERS)'; for p in $$list; do \
-	  f="`echo $$p | sed -e 's|^.*/||'`"; \
-	  echo " rm -f $(DESTDIR)$(libgpodincludedir)/$$f"; \
-	  rm -f $(DESTDIR)$(libgpodincludedir)/$$f; \
+	  f=$(am__strip_dir) \
+	  echo " rm -f '$(DESTDIR)$(libgpodincludedir)/$$f'"; \
+	  rm -f "$(DESTDIR)$(libgpodincludedir)/$$f"; \
 	done
 
-ETAGS = etags
-ETAGSFLAGS =
-
-CTAGS = ctags
-CTAGSFLAGS =
-
-tags: TAGS
-
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
@@ -435,6 +458,7 @@
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
 	mkid -fID $$unique
+tags: TAGS
 
 TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
@@ -446,10 +470,11 @@
 	  done | \
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
-	test -z "$(ETAGS_ARGS)$$tags$$unique" \
-	  || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	     $$tags $$unique
-
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
 ctags: CTAGS
 CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
@@ -472,11 +497,7 @@
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-top_distdir = ..
-distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
-
 distdir: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
@@ -489,7 +510,7 @@
 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
 	    dir="/$$dir"; \
-	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
 	  else \
 	    dir=''; \
 	  fi; \
@@ -507,9 +528,10 @@
 check-am: all-am
 check: check-am
 all-am: Makefile $(LTLIBRARIES) $(HEADERS)
-
 installdirs:
-	$(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(libgpodincludedir)
+	for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(libgpodincludedir)"; do \
+	  test -z "$$dir" || $(mkdir_p) "$$dir"; \
+	done
 install: install-am
 install-exec: install-exec-am
 install-data: install-data-am
@@ -529,7 +551,7 @@
 clean-generic:
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -549,6 +571,8 @@
 
 dvi-am:
 
+html: html-am
+
 info: info-am
 
 info-am:
@@ -587,8 +611,8 @@
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
 	clean-libLTLIBRARIES clean-libtool ctags distclean \
 	distclean-compile distclean-generic distclean-libtool \
-	distclean-tags distdir dvi dvi-am info info-am install \
-	install-am install-data install-data-am install-exec \
+	distclean-tags distdir dvi dvi-am html html-am info info-am \
+	install install-am install-data install-data-am install-exec \
 	install-exec-am install-info install-info-am \
 	install-libLTLIBRARIES install-libgpodincludeHEADERS \
 	install-man install-strip installcheck installcheck-am \

Modified: libgpod/branches/upstream/current/src/db-artwork-debug.c
===================================================================
--- libgpod/branches/upstream/current/src/db-artwork-debug.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/db-artwork-debug.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -102,7 +102,7 @@
 	g_print ("\tString length: %u\n", GINT_FROM_LE (mhod3->string_len));
 	g_print ("\tMHOD version: %u\n", GINT_FROM_LE (mhod3->mhod_version));
 	g_print ("\tUnknown4: %08x\n", GINT_FROM_LE (mhod3->unknown4));
-	str = get_utf16_string (mhod3->string, mhod3->string_len);
+	str = get_utf16_string (mhod3->string, GINT_FROM_LE (mhod3->string_len));
 	g_print ("\tString: %s\n", str);
 	g_free (str);
 }
@@ -122,8 +122,8 @@
 		 GINT_FROM_LE (mhni->correlation_id));
 	g_print ("\tithmb offset: %u bytes\n", GINT_FROM_LE (mhni->ithmb_offset));
 	g_print ("\tImage size: %u bytes\n", GINT_FROM_LE (mhni->image_size));
-	g_print ("\tVertical padding: %d\n", GINT_FROM_LE (mhni->vertical_padding));
-	g_print ("\tHorizontal padding: %d\n", GINT_FROM_LE (mhni->horizontal_padding));
+	g_print ("\tVertical padding: %d\n", GINT16_FROM_LE (mhni->vertical_padding));
+	g_print ("\tHorizontal padding: %d\n", GINT16_FROM_LE (mhni->horizontal_padding));
 	g_print ("\tImage dimensions: %ux%u\n", width, height);
 }
 
@@ -220,15 +220,21 @@
 	g_print ("\tTotal length: %d\n", GINT_FROM_LE (mhba->total_len));
 	g_print ("\tNumber of Data Objects: %d\n", GINT_FROM_LE (mhba->num_mhods));
 	g_print ("\tNumber of pictures in the album: %d\n", GINT_FROM_LE (mhba->num_mhias));
-	g_print ("\tPlaylist ID: %08x\n", GINT_FROM_LE (mhba->playlist_id));
-	g_print ("\tUnknown2: %08x\n", GINT_FROM_LE (mhba->unknown2));
-	g_print ("\tUnknown3: %04x\n", GINT_FROM_LE (mhba->unknown3));
-	g_print ("\tMaster playlist: %02x\n", GINT_FROM_LE (mhba->master));
-	g_print ("\tRepeat: %02x\n", GINT_FROM_LE (mhba->repeat));
-	g_print ("\tRandom: %02x\n", GINT_FROM_LE (mhba->random));
-	g_print ("\tTransition direction: %02x\n", GINT_FROM_LE (mhba->transition_direction));
+	g_print ("\tAlbum ID: %08x\n", GINT_FROM_LE (mhba->album_id));
+	g_print ("\tUnk024: %04x\n", GINT_FROM_LE (mhba->unk024));
+	g_print ("\tUnk028: %04x\n", GINT16_FROM_LE (mhba->unk028));
+	g_print ("\tAlbum type: %02x\n", GUINT_FROM_LE (mhba->album_type));
+	g_print ("\tPlay music: %02x\n", GUINT_FROM_LE (mhba->playmusic));
+	g_print ("\tRepeat: %02x\n", GUINT_FROM_LE (mhba->repeat));
+	g_print ("\tRandom: %02x\n", GUINT_FROM_LE (mhba->random));
+	g_print ("\tShow titles: %02x\n", GUINT_FROM_LE (mhba->show_titles));
+	g_print ("\tTransition direction: %02x\n", GUINT_FROM_LE (mhba->transition_direction));
 	g_print ("\tSlide duration: %08x\n", GINT_FROM_LE (mhba->slide_duration));
-	g_print ("\tPrev playlist ID: %08x\n", GINT_FROM_LE (mhba->prev_playlist_id));
+	g_print ("\tTransition duration: %08x\n", GINT_FROM_LE (mhba->transition_duration));
+	g_print ("\tUnk044: %02x\n", GINT_FROM_LE (mhba->unk044));
+	g_print ("\tUnk048: %02x\n", GINT_FROM_LE (mhba->unk048));
+	g_print ("\tSong ID: %08x\n", GINT_FROM_LE (mhba->song_id));
+	g_print ("\tPrevious album ID: %08x\n", GINT_FROM_LE (mhba->prev_album_id));
 }
 
 #endif

Modified: libgpod/branches/upstream/current/src/db-artwork-parser.c
===================================================================
--- libgpod/branches/upstream/current/src/db-artwork-parser.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/db-artwork-parser.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -26,6 +26,7 @@
 #include <config.h>
 #endif
 
+#include <stdio.h>
 #include <string.h>
 #include <sys/stat.h>
 #include <sys/types.h>
@@ -315,8 +316,6 @@
 parse_mhba (DBParseContext *ctx, GError *error)
 {
 	MhbaHeader *mhba;
-	ArtworkDB_MhodHeader *mhod;
-	DBParseContext *mhod_ctx;
 	DBParseContext *mhia_ctx;
 	Itdb_PhotoAlbum *album;
 	Itdb_PhotoDB *photodb;
@@ -352,22 +351,37 @@
 					  ctx->byte_order);
 
 	cur_offset = ctx->header_len;
-	mhod_ctx = db_parse_context_get_sub_context (ctx, cur_offset);
 	num_children = get_gint32 (mhba->num_mhods, ctx->byte_order);
-	while ((num_children > 0) && (mhod_ctx != NULL)) {
-	        MhodHeaderArtworkType1 *mhod1;
-		/* FIXME: First mhod is album name, whats the others for? */
-		mhod = db_parse_context_get_m_header (mhod_ctx, ArtworkDB_MhodHeader, "mhod");
-		if (mhod == NULL) {
-			return -1;
-		}
-		db_parse_context_set_total_len (mhod_ctx,  get_gint32(mhod->total_len, ctx->byte_order));
-		mhod1 = (MhodHeaderArtworkType1*)mhod;
-		album->name = g_strndup ((gchar *)mhod1->string, mhod1->string_len);
-		cur_offset += mhod_ctx->total_len;
+	while (num_children > 0)
+	{
+	    MhodHeaderArtworkType1 *mhod1;
+	    ArtworkDB_MhodHeader *mhod;
+	    DBParseContext *mhod_ctx;
+
+	    mhod_ctx = db_parse_context_get_sub_context (ctx, cur_offset);
+	    /* FIXME: First mhod is album name, whats the others for? */
+	    mhod = db_parse_context_get_m_header (mhod_ctx,
+						  ArtworkDB_MhodHeader, "mhod");
+	    if (mhod == NULL) {
+		g_free (mhod_ctx);
+		return -1;
+	    }
+	    db_parse_context_set_total_len (mhod_ctx,
+					    get_gint32(mhod->total_len, ctx->byte_order));
+	    mhod1 = (MhodHeaderArtworkType1*)mhod;
+	    switch (mhod1->type)
+	    {  /* FIXME: type==1 is album name. type==2 seems to be
+		* the transtition type between photos,
+		* e.g. "Dissolve". Not handled yet. */
+	    case 1:
+		album->name = g_strndup ((gchar *)mhod1->string,
+					 get_gint32(mhod1->string_len, ctx->byte_order));
 		dump_mhod_type_1 (mhod1);
-		g_free (mhod_ctx);
-		num_children--;
+		break;
+	    }
+	    cur_offset += mhod_ctx->total_len;
+	    g_free (mhod_ctx);
+	    num_children--;
 	}
 
 	mhia_ctx = db_parse_context_get_sub_context (ctx, cur_offset);
@@ -587,6 +601,11 @@
 	    case ITDB_THUMB_PHOTO_FULL_SCREEN:
 	    case ITDB_THUMB_PHOTO_TV_SCREEN:
 		break;
+	    case ITDB_THUMB_COVER_XLARGE:
+	    case ITDB_THUMB_COVER_MEDIUM:
+	    case ITDB_THUMB_COVER_SMEDIUM:
+	    case ITDB_THUMB_COVER_XSMALL:
+		break;
 	    }
 	    formats++;
 	}
@@ -620,6 +639,11 @@
 	    case ITDB_THUMB_PHOTO_FULL_SCREEN:
 	    case ITDB_THUMB_PHOTO_TV_SCREEN:
 		return TRUE;
+	    case ITDB_THUMB_COVER_XLARGE:
+	    case ITDB_THUMB_COVER_MEDIUM:
+	    case ITDB_THUMB_COVER_SMEDIUM:
+	    case ITDB_THUMB_COVER_XSMALL:
+		break;
 	    }
 	    formats++;
 	}

Modified: libgpod/branches/upstream/current/src/db-artwork-writer.c
===================================================================
--- libgpod/branches/upstream/current/src/db-artwork-writer.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/db-artwork-writer.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,23 +1,23 @@
 /*
  *  Copyright (C) 2005-2007 Christophe Fergeau
  *
- * 
+ *
  *  The code contained in this file is free software; you can redistribute
  *  it and/or modify it under the terms of the GNU Lesser General Public
  *  License as published by the Free Software Foundation; either version
  *  2.1 of the License, or (at your option) any later version.
- *  
+ *
  *  This file 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
  *  Lesser General Public License for more details.
- *  
+ *
  *  You should have received a copy of the GNU Lesser General Public
  *  License along with this code; if not, write to the Free Software
  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- * 
+ *
  *  iTunes and iPod are trademarks of Apple
- * 
+ *
  *  This product is not supported/written/published by Apple!
  *
  */
@@ -43,21 +43,16 @@
 #include <stdio.h>
 #include <sys/types.h>
 
-/* FIXME: Writing aborts if a file exceeds the following size because
-   the mremap() further down will fail (at least most of the time on
-   most systems). As a workaround the size was increased from 2 MB to
-   16 MB. */
-#define IPOD_MMAP_SIZE 16 * 1024 * 1024
+#define DEFAULT_GSTRING_SIZE 128*1024
 
-struct iPodMmapBuffer {
-	int fd;
-	void *mmap_area;
-	size_t size;
+struct iPodSharedDataBuffer {
+	GString *data;
+	char *filename;
 	int ref_count;
 };
 
 struct _iPodBuffer {
-	struct iPodMmapBuffer *mmap;
+	struct iPodSharedDataBuffer *shared;
 	off_t offset;
 	guint byte_order;
 	DbType db_type;
@@ -65,121 +60,69 @@
 
 typedef struct _iPodBuffer iPodBuffer;
 
-static void
-ipod_mmap_buffer_destroy (struct iPodMmapBuffer *buf)
+static gboolean
+ipod_gstring_flush (struct iPodSharedDataBuffer *shared, GError **error)
 {
-	munmap (buf->mmap_area, buf->size);
-	close (buf->fd);
-	g_free (buf);
+	gboolean result;
+
+	result = g_file_set_contents (shared->filename, 
+				      shared->data->str, shared->data->len,
+				      error);
+	if (!result) {
+		return FALSE;
+	}
+	g_string_free (shared->data, TRUE);
+	g_free (shared->filename);
+	g_free (shared);
+
+	return TRUE;
 }
 
 static void
 ipod_buffer_destroy (iPodBuffer *buffer)
 {
-	buffer->mmap->ref_count--;
-	if (buffer->mmap->ref_count == 0) {
-		ipod_mmap_buffer_destroy (buffer->mmap);
+	buffer->shared->ref_count--;
+	if (buffer->shared->ref_count == 0) {
+		ipod_gstring_flush (buffer->shared, NULL);
 	}
 	g_free (buffer);
 }
 
 
 static void *
-ipod_buffer_get_pointer (iPodBuffer *buffer) 
+ipod_buffer_get_pointer (iPodBuffer *buffer)
 {
-	return &((unsigned char *)buffer->mmap->mmap_area)[buffer->offset];
-}
-
-static int
-ipod_buffer_grow_file (struct iPodMmapBuffer *mmap_buf, off_t new_size)
-{
-	int result;
-
-	result = lseek (mmap_buf->fd, new_size, SEEK_SET);
-	if (result == (off_t)-1) {
-		g_print ("Failed to grow file to %lu: %s\n", 
-                        (unsigned long)new_size, strerror (errno));
-		return -1;
+	if (buffer->shared->data->str == NULL) {
+		return NULL;
 	}
-	result = 0;
-	result = write (mmap_buf->fd, &result, 1);
-	if (result != 1) {
-		g_print ("Failed to write a byte at %lu: %s\n", 
-                        (unsigned long)new_size, strerror (errno));
-		return -1;
-	}
-
-	return 0;
+	g_assert (buffer->offset < buffer->shared->data->len);
+	return &((unsigned char *)buffer->shared->data->str)[buffer->offset];
 }
 
-
-static void * 
-ipod_buffer_grow_mapping (iPodBuffer *buffer, size_t size)
+static void
+ipod_buffer_maybe_grow (iPodBuffer *buffer, off_t size)
 {
-	void *new_address;
-#ifdef HAVE_MREMAP
-	
-	new_address = mremap (buffer->mmap->mmap_area, buffer->mmap->size,
-			      buffer->mmap->size + size, 0);
-#else
-	munmap (buffer->mmap->mmap_area, buffer->mmap->size);
-	new_address = mmap (buffer->mmap->mmap_area, buffer->mmap->size + size,
-			    PROT_READ | PROT_WRITE, MAP_SHARED, 
-			    buffer->mmap->fd, 0);
-#endif
-	/* Don't allow libc to move the current mapping since this would
-	 * force us to be very careful wrt pointers in the rest of the code
-	 */
-	if (new_address != buffer->mmap->mmap_area) {
-		return MAP_FAILED;
-	}
-
-	return new_address;
+	g_string_set_size (buffer->shared->data, 
+			   buffer->shared->data->len + size);
 }
 
-
-static int
-ipod_buffer_maybe_grow (iPodBuffer *buffer, off_t offset)
-{
-	void *new_address;
-
-	if (buffer->offset + offset <= buffer->mmap->size) {
-		return 0;
-	}
-
-	new_address = ipod_buffer_grow_mapping (buffer, IPOD_MMAP_SIZE);
-	if (new_address == MAP_FAILED) {
-		g_print ("Failed to mremap buffer\n");
-		return -1;
-	}
-
-	if (ipod_buffer_grow_file (buffer->mmap, 
-				   buffer->mmap->size + IPOD_MMAP_SIZE) != 0) {
-		return -1;
-	}
-	buffer->mmap->size += IPOD_MMAP_SIZE;
-
-	return 0;
-}
-
 static iPodBuffer *
 ipod_buffer_get_sub_buffer (iPodBuffer *buffer, off_t offset)
 {
 	iPodBuffer *sub_buffer;
 
-	if (ipod_buffer_maybe_grow (buffer, offset) != 0) {
-		return NULL;
-	}
+	g_assert (buffer->offset + offset <= buffer->shared->data->len);
+
 	sub_buffer = g_new0 (iPodBuffer, 1);
 	if (sub_buffer == NULL) {
 		return NULL;
 	}
-	sub_buffer->mmap = buffer->mmap;
+	sub_buffer->shared = buffer->shared;
 	sub_buffer->offset = buffer->offset + offset;
 	sub_buffer->byte_order = buffer->byte_order;
 	sub_buffer->db_type = buffer->db_type;
 
-	buffer->mmap->ref_count++;
+	buffer->shared->ref_count++;
 
 	return sub_buffer;
 }
@@ -187,49 +130,25 @@
 static iPodBuffer *
 ipod_buffer_new (const char *filename, guint byte_order, DbType db_type)
 {
-	int fd;
-	struct iPodMmapBuffer *mmap_buf;
+	struct iPodSharedDataBuffer *shared;
 	iPodBuffer *buffer;
-	void *mmap_area;
 
-	fd = open (filename, O_RDWR | O_CREAT | O_TRUNC, 
-		   S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
-	if (fd == -1) {
-		g_print ("Failed to open %s: %s\n", 
-			 filename, strerror (errno));
+	shared = g_new0 (struct iPodSharedDataBuffer, 1);
+	if (shared == NULL) {
 		return NULL;
 	}
-	
-	mmap_area = mmap (0, IPOD_MMAP_SIZE, PROT_READ | PROT_WRITE,
-			  MAP_SHARED, fd, 0);
-	if (mmap_area == MAP_FAILED) {
-		g_print ("Failed to mmap %s in memory: %s\n", filename, 
-			 strerror (errno));
-		close (fd);
-		return NULL;
-	}
-	mmap_buf = g_new0 (struct iPodMmapBuffer, 1);
-	if (mmap_buf == NULL) {
-		munmap (mmap_area, IPOD_MMAP_SIZE);
-		close (fd);
-		return NULL;
-	}
-	mmap_buf->mmap_area = mmap_area;
-	mmap_buf->size = IPOD_MMAP_SIZE;
-	mmap_buf->ref_count = 1;
-	mmap_buf->fd = fd;
+	shared->filename = g_strdup (filename);
+	shared->data = g_string_sized_new (DEFAULT_GSTRING_SIZE);
+	shared->ref_count = 1;
 
-	if (ipod_buffer_grow_file (mmap_buf, IPOD_MMAP_SIZE) != 0) {
-		ipod_mmap_buffer_destroy (mmap_buf);
-		return  NULL;
-	}
-
 	buffer = g_new0 (iPodBuffer, 1);
 	if (buffer == NULL) {
-		ipod_mmap_buffer_destroy (mmap_buf);
+		g_free (shared->filename);
+		g_string_free (shared->data, TRUE);
+		g_free (shared);
 		return NULL;
 	}
-	buffer->mmap = mmap_buf;
+	buffer->shared = shared;
 	buffer->byte_order = byte_order;
 	buffer->db_type = db_type;
 
@@ -242,19 +161,11 @@
 	MHSD_TYPE_MHLF = 3
 };
 
-enum iPodThumbnailType {
-	IPOD_THUMBNAIL_FULL_SIZE = 0,
-	IPOD_THUMBNAIL_NOW_PLAYING = 1,
-	IPOD_PHOTO_LITTLE = 3,
-	IPOD_PHOTO_FULL_SIZE = 4
-};
-
-
 #define RETURN_SIZE_FOR(id, size) if (strncmp (id, header_id, 4) == 0) return (size)
 
 
 
-/* Returns the "real" size for a header, ie the size iTunes uses for it 
+/* Returns the "real" size for a header, ie the size iTunes uses for it
  * (padding included)
  */
 static int
@@ -285,10 +196,12 @@
 		header_len = padded_size;
 	}
 	g_assert (header_len > sizeof (MHeader));
-	if (ipod_buffer_maybe_grow (buffer, header_len) != 0) {
+	ipod_buffer_maybe_grow (buffer, header_len);
+
+	mh = (MHeader*)ipod_buffer_get_pointer (buffer);
+	if (mh == NULL) {
 		return NULL;
 	}
-	mh = (MHeader*)ipod_buffer_get_pointer (buffer);
 	memset (mh, 0, header_len);
 
 	header_id = g_strndup (_header_id, 4);
@@ -303,7 +216,7 @@
 }
 
 
-static int 
+static int
 write_mhod_type_1 (gchar *string, iPodBuffer *buffer)
 {
 	MhodHeaderArtworkType1 *mhod;
@@ -313,14 +226,14 @@
 
 	g_assert (string != NULL);
 
-	mhod = (MhodHeaderArtworkType1 *)init_header (buffer, "mhod", 
+	mhod = (MhodHeaderArtworkType1 *)init_header (buffer, "mhod",
 						      sizeof (MhodHeaderArtworkType1));
 	if (mhod == NULL) {
 		return -1;
 	}
 	total_bytes = sizeof (MhodHeaderArtworkType1);
 	mhod->total_len = get_gint32 (total_bytes, buffer->byte_order);
-	/* Modify header length, since iTunes only puts the length of 
+	/* Modify header length, since iTunes only puts the length of
 	 * MhodHeader in header_len
 	 */
 	mhod->header_len = get_gint32 (sizeof (ArtworkDB_MhodHeader), buffer->byte_order);
@@ -329,50 +242,53 @@
 	mhod->string_len = get_gint32 (len, buffer->byte_order);
 
 	padding = 4 - ( (total_bytes + len) % 4 );
+	if (padding == 4)
+	    padding = 0;
 	mhod->padding = padding;
 	mhod->type = get_gint16 (0x01, buffer->byte_order);
 
 	/* Make sure we have enough free space to write the string */
-	if (ipod_buffer_maybe_grow (buffer, total_bytes + len + padding ) != 0) {
-		return  -1;
+	ipod_buffer_maybe_grow (buffer, len + padding);
+	mhod = ipod_buffer_get_pointer (buffer);
+	if (mhod == NULL) {
+		return -1;
 	}
 	memcpy (mhod->string, string, len);
 	total_bytes += len + padding;
-	mhod->total_len = get_gint32 (total_bytes, buffer->byte_order);	
+	mhod->total_len = get_gint32 (total_bytes, buffer->byte_order);
 
 	dump_mhod_type_1 (mhod);
 
 	return total_bytes;
 }
 
-static int 
+static int
 write_mhod_type_3 (gchar *string, iPodBuffer *buffer)
 {
 	ArtworkDB_MhodHeaderArtworkType3 *mhod;
 	unsigned int total_bytes;
-	int len;
+	glong len;
+	const gint g2l = sizeof (gunichar2);
 	gunichar2 *utf16, *strp;
 	int i, padding;
 
 	g_assert (string != NULL);
 
 	mhod = (ArtworkDB_MhodHeaderArtworkType3 *)
-	    init_header (buffer, "mhod", 
+	    init_header (buffer, "mhod",
 			 sizeof (ArtworkDB_MhodHeaderArtworkType3));
 	if (mhod == NULL) {
 		return -1;
 	}
 	total_bytes = sizeof (ArtworkDB_MhodHeaderArtworkType3);
 	mhod->total_len = get_gint32 (total_bytes, buffer->byte_order);
-	/* Modify header length, since iTunes only puts the length of 
+	/* Modify header length, since iTunes only puts the length of
 	 * MhodHeader in header_len
 	 */
-	mhod->header_len = get_gint32 (sizeof (ArtworkDB_MhodHeader), 
+	mhod->header_len = get_gint32 (sizeof (ArtworkDB_MhodHeader),
 				       buffer->byte_order);
 	mhod->type = get_gint16 (3, buffer->byte_order);
 
-	len = strlen (string);
-
 	/* FIXME: Tidy this up, combine cases more */
 	/* Some magic: endianess-reversed (BE) mobile phones use UTF8
 	 * (version 1) with padding, standard iPods (LE) use UTF16
@@ -380,40 +296,49 @@
 	switch (buffer->byte_order)
 	{
 	case G_LITTLE_ENDIAN:
+	    utf16 = g_utf8_to_utf16 (string, -1, NULL, &len, NULL);
+	    if (utf16 == NULL) {
+		return -1;
+	    }
+
 	    mhod->mhod_version = 2;
 	    /* number of bytes of the string encoded in UTF-16 */
-	    mhod->string_len = get_gint32 (2*len, buffer->byte_order);
-	    padding = 4 - ( (total_bytes + 2*len) % 4 );
+	    mhod->string_len = get_gint32 (g2l * len, buffer->byte_order);
+	    padding = 4 - ( (total_bytes + g2l*len) % 4 );
+	    if (padding == 4)
+		padding = 0;
 	    mhod->padding = padding;
+ 	    total_bytes += g2l*len + padding;
 
 	    /* Make sure we have enough free space to write the string */
-	    if (ipod_buffer_maybe_grow (buffer, total_bytes + 2*len+padding) != 0) {
-		return  -1;
+	    ipod_buffer_maybe_grow (buffer, g2l*len + padding);
+	    mhod = ipod_buffer_get_pointer (buffer);
+	    if (mhod == NULL) {
+		    g_free (utf16);
+		    return  -1;
 	    }
-
-	    utf16 = g_utf8_to_utf16 (string, -1, NULL, NULL, NULL);
-	    if (utf16 == NULL) {		
-		return -1;
-	    }
 	    strp = (gunichar2 *)mhod->string;
-	    memcpy (strp, utf16, 2*len);
-	    g_free (utf16);
 	    for (i = 0; i < len; i++) {
-		strp[i] = get_gint16 (strp[i], buffer->byte_order);
+		strp[i] = get_gint16 (utf16[i], buffer->byte_order);
 	    }
-	    total_bytes += 2*len+padding;
+	    g_free (utf16);
 	    break;
 	case G_BIG_ENDIAN:
 	    mhod->mhod_version = 1;
+            /* FIXME: len isn't initialized */
 	    mhod->string_len = get_gint32 (len, buffer->byte_order);
 	    /* pad string if necessary */
 	    /* e.g. len = 7 bytes, len%4 = 3, 4-3=1 -> requires 1 byte
 	       padding */
 	    padding = 4 - ( (total_bytes + len) % 4 );
+	    if (padding == 4)
+		padding = 0;
 	    mhod->padding = padding;
 	    /* Make sure we have enough free space to write the string */
-	    if (ipod_buffer_maybe_grow (buffer, total_bytes + 2*len+padding) != 0) {
-		return  -1;
+	    ipod_buffer_maybe_grow (buffer, len+padding);
+	    mhod = ipod_buffer_get_pointer (buffer);
+	    if (mhod == NULL) {
+		    return -1;
 	    }
 	    memcpy (mhod->string, string, len);
 	    total_bytes += (len+padding);
@@ -425,7 +350,7 @@
 	return total_bytes;
 }
 
-static int 
+static int
 write_mhni (Itdb_DB *db, Itdb_Thumb *thumb, int correlation_id, iPodBuffer *buffer)
 {
 	MhniHeader *mhni;
@@ -437,7 +362,7 @@
 		return -1;
 	}
 
-	mhni = (MhniHeader *)init_header (buffer, "mhni", 
+	mhni = (MhniHeader *)init_header (buffer, "mhni",
 					  sizeof (MhniHeader));
 	if (mhni == NULL) {
 		return -1;
@@ -456,12 +381,11 @@
 					   buffer->byte_order);
 	mhni->ithmb_offset =   get_gint32 (thumb->offset,
 					   buffer->byte_order);
+	mhni->vertical_padding = get_gint16 (thumb->vertical_padding,
+					     buffer->byte_order);
+	mhni->horizontal_padding = get_gint16 (thumb->horizontal_padding,
+					       buffer->byte_order);
 
-	mhni->vertical_padding =
-	    get_gint16 (thumb->vertical_padding, buffer->byte_order);
-	mhni->horizontal_padding = 
-	    get_gint16 (thumb->horizontal_padding, buffer->byte_order);
-
 	sub_buffer = ipod_buffer_get_sub_buffer (buffer, total_bytes);
 	if (sub_buffer == NULL) {
 		return  -1;
@@ -472,12 +396,13 @@
 		return -1;
 	}
 	total_bytes += bytes_written;
+	mhni = ipod_buffer_get_pointer (buffer);
 	mhni->total_len = get_gint32 (total_bytes, buffer->byte_order);
 	/* Only update number of children when all went well to try to get
-	 * something somewhat consistent when there are errors 
+	 * something somewhat consistent when there are errors
 	 */
 	mhni->num_children = get_gint32 (1, buffer->byte_order);
-	
+
 	dump_mhni (mhni);
 
 	return total_bytes;
@@ -496,7 +421,7 @@
 	}
 
 	mhod = (ArtworkDB_MhodHeader *)
-	    init_header (buffer, "mhod", 
+	    init_header (buffer, "mhod",
 			 sizeof (ArtworkDB_MhodHeader));
 	if (mhod == NULL) {
 		return -1;
@@ -514,6 +439,7 @@
 		return -1;
 	}
 	total_bytes += bytes_written;
+	mhod = ipod_buffer_get_pointer (buffer);
 	mhod->total_len = get_gint32 (total_bytes, buffer->byte_order);
 
 	dump_mhod (mhod);
@@ -565,35 +491,37 @@
 	mhii->digitized_date = get_guint32 (mactime, buffer->byte_order);
 
 	mhii->orig_img_size = get_gint32 (artwork->artwork_size, buffer->byte_order);
-	it = artwork->thumbnails;
 	num_children = 0;
-	while (it != NULL) {
+	for (it=artwork->thumbnails; it!=NULL; it=it->next)
+	{
 		iPodBuffer *sub_buffer;
 		Itdb_Thumb *thumb;
 		const Itdb_ArtworkFormat *img_info;
 
-		mhii->num_children = get_gint32 (num_children, 
+		thumb = (Itdb_Thumb *)it->data;
+		img_info = itdb_get_artwork_info_from_type (
+		    db_get_device(db), thumb->type);
+		if (img_info == NULL) {
+		    /* skip this thumb */
+		    continue;
+		}
+
+		mhii->num_children = get_gint32 (num_children,
 						 buffer->byte_order);
 		mhii->total_len = get_gint32 (total_bytes, buffer->byte_order);
 		sub_buffer = ipod_buffer_get_sub_buffer (buffer, total_bytes);
 		if (sub_buffer == NULL) {
 			return -1;
 		}
-		thumb = (Itdb_Thumb *)it->data;
-		img_info = itdb_get_artwork_info_from_type (
-		    db_get_device(db), thumb->type);
-		if (img_info == NULL) {
-			return -1;
-		}
-		bytes_written = write_mhod (db, thumb, img_info->correlation_id, 
+		bytes_written = write_mhod (db, thumb, img_info->correlation_id,
 					    sub_buffer);
 		ipod_buffer_destroy (sub_buffer);
 		if (bytes_written == -1) {
 			return -1;
 		}
 		total_bytes += bytes_written;
+		mhii = ipod_buffer_get_pointer (buffer);
 		num_children++;
-		it = it->next;
 	}
 
 	mhii->num_children = get_gint32 (num_children, buffer->byte_order);
@@ -633,7 +561,6 @@
 		Itdb_Track *song;
 		int bytes_written;
 		iPodBuffer *sub_buffer;
-
 		if (buffer->db_type == DB_TYPE_ITUNES) {
 			song = (Itdb_Track*)it->data;
 			if (!song->artwork || (song->artwork->id == 0)) {
@@ -650,9 +577,10 @@
 		if (bytes_written != -1) {
 			num_thumbs++;
 			total_bytes += bytes_written;
-		} 
+		}
 		it = it->next;
 	}
+	mhli = ipod_buffer_get_pointer (buffer);
 	mhli->num_children = get_gint32 (num_thumbs, buffer->byte_order);
 	dump_mhl ((MhlHeader *)mhli, "mhli");
 
@@ -725,8 +653,9 @@
 	ipod_buffer_destroy (sub_buffer);
 	if (bytes_written == -1) {
 	    return -1;
-	} 
+	}
 	total_bytes += bytes_written;
+	mhba = ipod_buffer_get_pointer (buffer);
 
 	for (it = album->members; it != NULL; it = it->next) {
 	        Itdb_Artwork *photo = it->data;
@@ -740,9 +669,10 @@
 		ipod_buffer_destroy (sub_buffer);
 		if (bytes_written == -1) {
 		    return -1;
-		} 
+		}
 		total_bytes += bytes_written;
 	}
+	mhba = ipod_buffer_get_pointer (buffer);
 	mhba->total_len = get_gint32( total_bytes, buffer->byte_order );
 	dump_mhba ( mhba );
 	return total_bytes;
@@ -763,7 +693,7 @@
 	total_bytes = get_gint32 (mhla->header_len, buffer->byte_order);
 	if (buffer->db_type == DB_TYPE_PHOTO) {
 	    unsigned int bytes_written;
-
+            unsigned int num_children = 0;
 	    for (it = db_get_photodb(db)->photoalbums; it != NULL; it = it->next) {
 		Itdb_PhotoAlbum *album = (Itdb_PhotoAlbum *)it->data;
 
@@ -775,9 +705,12 @@
 		ipod_buffer_destroy (sub_buffer);
 		if (bytes_written == -1) {
 		    return -1;
-		} 
+		}
 		total_bytes += bytes_written;
-		mhla->num_children++;
+		mhla = ipod_buffer_get_pointer (buffer);
+		num_children++;
+		mhla->num_children = get_gint32 (num_children,
+                                                 buffer->byte_order);
 	    }
 	}
 
@@ -787,39 +720,56 @@
 }
 
 static int
-write_mhif (Itdb_DB *db, iPodBuffer *buffer, enum iPodThumbnailType type)
+write_mhif (Itdb_DB *db, iPodBuffer *buffer,
+            const Itdb_ArtworkFormat *img_info)
 {
 	MhifHeader *mhif;
-	const Itdb_ArtworkFormat *img_info;
-	
+
 	mhif = (MhifHeader *)init_header (buffer, "mhif", sizeof (MhifHeader));
 	if (mhif == NULL) {
 		return -1;
 	}
 	mhif->total_len = mhif->header_len;
-	
-	img_info = itdb_get_artwork_info_from_type (db_get_device(db), type);
-	if (img_info == NULL) {
-		return -1;
-	}
-	mhif->correlation_id = get_gint32 (img_info->correlation_id, 
+
+	mhif->correlation_id = get_gint32 (img_info->correlation_id,
 					   buffer->byte_order);
 	mhif->image_size = get_gint32 (img_info->height * img_info->width * 2,
 				       buffer->byte_order);
 
 	dump_mhif (mhif);
-	
+
 	return get_gint32 (mhif->header_len, buffer->byte_order);
 }
 
+G_GNUC_INTERNAL gboolean
+itdb_thumb_type_is_valid_for_db (const ItdbThumbType thumb_type, DbType db_type)
+{
+        switch (thumb_type) {
+        case ITDB_THUMB_COVER_SMALL:
+        case ITDB_THUMB_COVER_LARGE:
+        case ITDB_THUMB_COVER_XLARGE:
+        case ITDB_THUMB_COVER_MEDIUM:
+        case ITDB_THUMB_COVER_SMEDIUM:
+        case ITDB_THUMB_COVER_XSMALL:
+	    return (db_type == DB_TYPE_ITUNES);
+        case ITDB_THUMB_PHOTO_SMALL:
+        case ITDB_THUMB_PHOTO_LARGE:
+        case ITDB_THUMB_PHOTO_FULL_SCREEN:
+        case ITDB_THUMB_PHOTO_TV_SCREEN:
+	    return (db_type == DB_TYPE_PHOTO);
+        }
+
+        g_return_val_if_reached (FALSE);
+}
+
 static int
 write_mhlf (Itdb_DB *db, iPodBuffer *buffer)
 {
 	MhlfHeader *mhlf;
 	unsigned int total_bytes;
 	int bytes_written;
-	iPodBuffer *sub_buffer;
-	enum iPodThumbnailType thumb_type = IPOD_THUMBNAIL_FULL_SIZE;
+        const Itdb_ArtworkFormat *formats; 
+        unsigned int num_children;
 
 	mhlf = (MhlfHeader *)init_header (buffer, "mhlf", sizeof (MhlfHeader));
 	if (mhlf == NULL) {
@@ -827,76 +777,48 @@
 	}
 
 	total_bytes = get_gint32 (mhlf->header_len, buffer->byte_order);
+        num_children = 0;
+        mhlf->num_files = get_gint32 (num_children, buffer->byte_order);
 
-	sub_buffer = ipod_buffer_get_sub_buffer (buffer, total_bytes);
-	if (sub_buffer == NULL) {
-		return -1;
-	}
+        formats = itdb_device_get_artwork_formats (db_get_device(db));
+        if (formats == NULL) {
+                return total_bytes;
+        }
 
-	switch (buffer->db_type) {
-	case DB_TYPE_ITUNES:
-		thumb_type = IPOD_THUMBNAIL_FULL_SIZE;
-		break;
-	case DB_TYPE_PHOTO:
-		thumb_type = IPOD_PHOTO_FULL_SIZE;
-		break;
-	}
-	bytes_written = write_mhif (db
-				  , sub_buffer
-				  , thumb_type);
-	ipod_buffer_destroy (sub_buffer);
-	if (bytes_written == -1) {
-		return -1;
-	} 
-	total_bytes += bytes_written;
-	
-	/* Only update number of children when all went well to try to get
-	 * something somewhat consistent when there are errors 
-	 */
-	/* For the ArworkDB file, there are only 2 physical file storing
-	 * thumbnails: F1016_1.ithmb for the bigger thumbnails (39200 bytes)
-	 * and F1017_1.ithmb for the 'now playing' thumbnails (6272)
-	 */
-	mhlf->num_files = get_gint32 (1, buffer->byte_order);
+        while (formats->type != -1) {
+	        iPodBuffer *sub_buffer;
+                if (!itdb_thumb_type_is_valid_for_db (formats->type, buffer->db_type)) {
+                        formats++;
+                        continue;
+                }
+        	sub_buffer = ipod_buffer_get_sub_buffer (buffer, total_bytes);
+        	if (sub_buffer == NULL) {
+        		return -1;
+        	}
 
-	sub_buffer = ipod_buffer_get_sub_buffer (buffer, total_bytes);
-	if (sub_buffer == NULL) {
-		return -1;
-	}
+        	bytes_written = write_mhif (db, sub_buffer, formats);
+	        			    
+        	ipod_buffer_destroy (sub_buffer);
+        	if (bytes_written == -1) {
+        		return -1;
+        	}
+        	total_bytes += bytes_written;
+		mhlf = ipod_buffer_get_pointer (buffer);
 
-	switch (buffer->db_type) {
-	case DB_TYPE_ITUNES:
-		thumb_type = IPOD_THUMBNAIL_NOW_PLAYING;
-		break;
-	case DB_TYPE_PHOTO:
-		thumb_type = IPOD_PHOTO_LITTLE;
-		break;
-	}
-	bytes_written = write_mhif (db
-				  , sub_buffer
-				  , thumb_type);
-	ipod_buffer_destroy (sub_buffer);
-	if (bytes_written == -1) {
-		return -1;
-	} 
-	total_bytes += bytes_written;
-
-	/* Only update number of children when all went well to try to get
-	 * something somewhat consistent when there are errors 
-	 */
-	/* For the ArworkDB file, there are only 2 physical file storing
-	 * thumbnails: F1016_1.ithmb for the bigger thumbnails (39200 bytes)
-	 * and F1017_1.ithmb for the 'now playing' thumbnails (6272)
-	 */
-	mhlf->num_files = get_gint32 (2, buffer->byte_order);
-
+                num_children++;
+        	/* Only update number of children when all went well to try 
+                 * to get something somewhat consistent when there are errors
+        	 */
+        	mhlf->num_files = get_gint32 (num_children, buffer->byte_order);
+                formats++;
+        }
 	dump_mhl ((MhlHeader *)mhlf, "mhlf");
 
 	return total_bytes;
 }
 
 
-static int 
+static int
 write_mhsd (Itdb_DB *db, iPodBuffer *buffer, enum MhsdType type)
 {
 	ArtworkDB_MhsdHeader *mhsd;
@@ -935,6 +857,7 @@
 		return -1;
 	} else {
 		total_bytes += bytes_written;
+		mhsd = ipod_buffer_get_pointer (buffer);
 		mhsd->total_len = get_gint32 (total_bytes, buffer->byte_order);
 	}
 
@@ -951,6 +874,7 @@
 	int bytes_written;
 	int i;
 
+	
 	mhfd = (MhfdHeader *)init_header (buffer, "mhfd", sizeof (MhfdHeader));
 	if (mhfd == NULL) {
 		return -1;
@@ -976,10 +900,11 @@
 		}
 		bytes_written = write_mhsd (db, sub_buffer, i);
 		ipod_buffer_destroy (sub_buffer);
-		if (bytes_written == -1) {			
+		if (bytes_written == -1) {
 			return -1;
 		}
 		total_bytes += bytes_written;
+		mhfd = ipod_buffer_get_pointer (buffer);
 		mhfd->total_len = get_gint32 (total_bytes, buffer->byte_order);
 		mhfd->num_children = get_gint32 (i, buffer->byte_order);
 	}
@@ -993,28 +918,96 @@
 ipod_artwork_db_set_ids (Itdb_iTunesDB *db)
 {
 	GList *it;
-	unsigned int id;
-	
-	id = 64;
+	unsigned int max_id;
+
+	max_id = 0;
 	for (it = db->tracks; it != NULL; it = it->next) {
 		Itdb_Track *song;
 
 		song = (Itdb_Track *)it->data;
+		if (max_id <= song->id) {
+		  max_id = song->id;
+		}
 		if (song->artwork->thumbnails != NULL) {
-			song->artwork->id = id;
-			id++;
+			song->artwork->id = song->id;
 		}
 	}
-	
-	return id;
+
+	return max_id;
 }
 
+
+static void
+itdb_track_filter_thumbnails (Itdb_iTunesDB *itdb, Itdb_Track *track)
+{
+    const Itdb_ArtworkFormat *formats;
+    const Itdb_ArtworkFormat *format;
+    GList *it;
+    GList *supported_thumbs;
+
+    if (track->artwork == NULL) {
+        return;
+    }
+
+    if (track->artwork->thumbnails == NULL) {
+        return;
+    }
+
+    if (itdb->device == NULL) {
+        itdb_artwork_free (track->artwork);
+        track->artwork = NULL;
+        return;
+    }
+
+    formats = itdb_device_get_artwork_formats (itdb->device);
+    if (formats == NULL) {
+        itdb_artwork_free (track->artwork);
+        track->artwork = NULL;
+        return;
+    }
+
+    supported_thumbs = NULL;
+    for (format = formats; format->type != -1; format++) {
+        for (it = track->artwork->thumbnails; it != NULL; it = it->next) {
+            Itdb_Thumb *thumb = (Itdb_Thumb *)it->data;
+
+            if (thumb->type == format->type) {
+                supported_thumbs = g_list_prepend (supported_thumbs, it->data);
+                /* Remove element from the original list, there will
+                 * be less work next time we iterate over the thumbnails
+                 */
+                track->artwork->thumbnails = g_list_remove_link (track->artwork->thumbnails, it);
+                break;
+            }
+        }
+    }
+
+    if (supported_thumbs == NULL) {
+        itdb_artwork_free (track->artwork);
+        track->artwork = NULL;
+        return;
+    }
+    g_list_free (track->artwork->thumbnails);
+    track->artwork->thumbnails = supported_thumbs;
+}
+
+static void
+itdb_filter_thumbnails (Itdb_iTunesDB *itdb)
+{
+    GList *it;
+
+    for (it = itdb->tracks; it != NULL; it = it->next) {
+        itdb_track_filter_thumbnails (itdb, (Itdb_Track *)it->data);
+    }
+}
+
+
+
 int
 ipod_write_artwork_db (Itdb_iTunesDB *itdb)
 {
 	iPodBuffer *buf;
 	int bytes_written;
-	int result;
 	char *filename;
 	int id_max;
 	Itdb_DB db;
@@ -1022,6 +1015,9 @@
 	db.db_type = DB_TYPE_ITUNES;
 	db.db.itdb = itdb;
 
+
+        itdb_filter_thumbnails (itdb);
+
 	/* First, let's write the .ithmb files, this will create the
 	 * various thumbnails as well */
 
@@ -1040,33 +1036,22 @@
 	buf = ipod_buffer_new (filename, itdb->device->byte_order, DB_TYPE_ITUNES);
 	if (buf == NULL) {
 		g_print ("Couldn't create %s\n", filename);
-		g_free (filename);
+	        g_free (filename);
 		return -1;
 	}
+	g_free (filename);
 	bytes_written = write_mhfd (&db, buf, id_max);
 
-	/* Refcount of the mmap buffer should drop to 0 and this should
+	/* Refcount of the shared buffer should drop to 0 and this should
 	 * sync buffered data to disk
-	 * FIXME: it's probably less error-prone to add a ipod_buffer_mmap_sync
-	 * call...
 	 */
 	ipod_buffer_destroy (buf);
 
 	if (bytes_written == -1) {
 		g_print ("Failed to save %s\n", filename);
-		g_free (filename);
 		/* FIXME: maybe should unlink the file we may have created */
 		return -1;
 	}
-
-	result = truncate (filename, bytes_written);
-	if (result != 0) {
-		g_print ("Failed to truncate %s: %s\n", 
-			 filename, strerror (errno));
-		g_free (filename);	
-		return -1;
-	}
-	g_free (filename);
 	return 0;
 }
 
@@ -1075,7 +1060,6 @@
 {
 	iPodBuffer *buf;
 	int bytes_written;
-	int result;
 	char *filename;
 	int id_max;
 	Itdb_DB db;
@@ -1099,28 +1083,17 @@
 	id_max = itdb_get_free_photo_id( photodb );
 	bytes_written = write_mhfd (&db, buf, id_max);
 
-	/* Refcount of the mmap buffer should drop to 0 and this should
+	/* Refcount of the shared buffer should drop to 0 and this should
 	 * sync buffered data to disk
-	 * FIXME: it's probably less error-prone to add a ipod_buffer_mmap_sync
-	 * call...
 	 */
 	ipod_buffer_destroy (buf);
+        g_free (filename);
 
 	if (bytes_written == -1) {
 		g_print ("Failed to save %s\n", filename);
-		g_free (filename);
 		/* FIXME: maybe should unlink the file we may have created */
 		return -1;
 	}
-
-	result = truncate (filename, bytes_written);
-	if (result != 0) {
-		g_print ("Failed to truncate %s: %s\n", 
-			 filename, strerror (errno));
-		g_free (filename);	
-		return -1;
-	}
-	g_free (filename);
 	return 0;
 }
 #else

Modified: libgpod/branches/upstream/current/src/db-image-parser.c
===================================================================
--- libgpod/branches/upstream/current/src/db-image-parser.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/db-image-parser.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -113,6 +113,11 @@
 	corr_id = get_gint32_db (db, mhni->correlation_id);
 	img->type = image_type_from_corr_id (device, corr_id);
 
+#if DEBUG_ARTWORK
+	printf ("corr_id: %d, of: %6d sz: %6d, x: %3d, y: %3d, xpad: %3d, ypad: %3d\n",
+		corr_id, img->offset, img->size, img->width, img->height, img->horizontal_padding, img->vertical_padding);
+#endif
+
 	if (img->type == -1)
 	{
 	    g_warning (_("Unexpected image type in mhni: size: %ux%u (%d), offset: %d\n"), 

Modified: libgpod/branches/upstream/current/src/db-image-parser.h
===================================================================
--- libgpod/branches/upstream/current/src/db-image-parser.h	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/db-image-parser.h	2007-11-12 21:03:04 UTC (rev 251)
@@ -20,7 +20,7 @@
  * 
  *  This product is not supported/written/published by Apple!
  *
- *  $Id: db-image-parser.h 1299 2006-06-04 16:24:45Z jcsjcs $
+ *  $Id: db-image-parser.h 1753 2007-11-04 00:48:12Z jcsjcs $
  */
 
 #ifndef IMAGE_PARSER_H
@@ -31,23 +31,60 @@
 #include "itdb_private.h"
 #include "itdb.h"
 
-#define RED_BITS   5
-#define RED_SHIFT 11
-#define RED_MASK  (((1 << RED_BITS)-1) << RED_SHIFT)
+#define DEBUG_ARTWORK 0
 
-#define GREEN_BITS 6
-#define GREEN_SHIFT 5
-#define GREEN_MASK (((1 << GREEN_BITS)-1) << GREEN_SHIFT)
+#define RED_BITS_565   5
+#define RED_SHIFT_565 11
+#define RED_MASK_565  (((1 << RED_BITS_565)-1) << RED_SHIFT_565)
 
-#define BLUE_BITS 5
-#define BLUE_SHIFT 0
-#define BLUE_MASK (((1 << BLUE_BITS)-1) << BLUE_SHIFT)
+#define GREEN_BITS_565 6
+#define GREEN_SHIFT_565 5
+#define GREEN_MASK_565 (((1 << GREEN_BITS_565)-1) << GREEN_SHIFT_565)
 
+#define BLUE_BITS_565 5
+#define BLUE_SHIFT_565 0
+#define BLUE_MASK_565 (((1 << BLUE_BITS_565)-1) << BLUE_SHIFT_565)
+
+#define ALPHA_BITS_555 1
+#define ALPHA_SHIFT_555 15
+#define ALPHA_MASK_555  (((1 << ALPHA_BITS_555)-1) << ALPHA_SHIFT_555)
+
+#define RED_BITS_555   5
+#define RED_SHIFT_555 10
+#define RED_MASK_555  (((1 << RED_BITS_555)-1) << RED_SHIFT_555)
+
+#define GREEN_BITS_555 5
+#define GREEN_SHIFT_555 5
+#define GREEN_MASK_555 (((1 << GREEN_BITS_555)-1) << GREEN_SHIFT_555)
+
+#define BLUE_BITS_555 5
+#define BLUE_SHIFT_555 0
+#define BLUE_MASK_555 (((1 << BLUE_BITS_555)-1) << BLUE_SHIFT_555)
+
+#define ALPHA_BITS_888 8
+#define ALPHA_SHIFT_888 24
+#define ALPHA_MASK_888  (((1 << ALPHA_BITS_888)-1) << ALPHA_SHIFT_888)
+
+#define RED_BITS_888   8
+#define RED_SHIFT_888 16
+#define RED_MASK_888  (((1 << RED_BITS_888)-1) << RED_SHIFT_888)
+
+#define GREEN_BITS_888 8
+#define GREEN_SHIFT_888 8
+#define GREEN_MASK_888 (((1 << GREEN_BITS_888)-1) << GREEN_SHIFT_888)
+
+#define BLUE_BITS_888 8
+#define BLUE_SHIFT_888 0
+#define BLUE_MASK_888 (((1 << BLUE_BITS_888)-1) << BLUE_SHIFT_888)
+
 G_GNUC_INTERNAL Itdb_Thumb *ipod_image_new_from_mhni (MhniHeader *mhni, 
 						      Itdb_DB *db);
 
 G_GNUC_INTERNAL int itdb_write_ithumb_files (Itdb_DB *db);
 
+G_GNUC_INTERNAL gboolean
+itdb_thumb_type_is_valid_for_db (const ItdbThumbType thumb_type, DbType db_type);
+
 G_GNUC_INTERNAL
 const Itdb_ArtworkFormat *itdb_get_artwork_info_from_type (
     Itdb_Device *ipod, ItdbThumbType image_type);

Modified: libgpod/branches/upstream/current/src/db-itunes-parser.h
===================================================================
--- libgpod/branches/upstream/current/src/db-itunes-parser.h	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/db-itunes-parser.h	2007-11-12 21:03:04 UTC (rev 251)
@@ -20,7 +20,7 @@
  * 
  *  This product is not supported/written/published by Apple!
  *
- * $Id: db-itunes-parser.h 1514 2007-06-01 13:56:32Z jcsjcs $
+ * $Id: db-itunes-parser.h 1729 2007-10-21 10:52:46Z teuf $
  */
 
 
@@ -631,13 +631,13 @@
 	guint8 repeat;     /* repeat the slideshow (from iPhoto setting) */
 	guint8 random;     /* show the slides in random order (from iPhoto
 			      setting) */
-        guint8 show_titles;/* show slide captions (from iPhoto setting) */
+	guint8 show_titles;/* show slide captions (from iPhoto setting) */
 	guint8 transition_direction; /* 0=none, 1=left-to-right,
 			      2=right-to-left, 3=top-to-bottom,
 			      4=bottom-to-top (from iPhoto setting) */
-        gint32 slide_duration; /* in seconds (from iPhoto setting) */
+	gint32 slide_duration; /* in seconds (from iPhoto setting) */
 	gint32 transition_duration; /* in milliseconds (from iPhoto setting) */
-        gint32 unk044;     /* unknown, seems to always be 0 */
+	gint32 unk044;     /* unknown, seems to always be 0 */
 	gint32 unk048;     /* unknown, seems to always be 0 */
 	gint64 song_id;    /* dbid2 of track in iTunesDB to play during
 			      slideshow (from iPhoto setting) */

Modified: libgpod/branches/upstream/current/src/db-parse-context.c
===================================================================
--- libgpod/branches/upstream/current/src/db-parse-context.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/db-parse-context.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -32,7 +32,6 @@
 #include <unistd.h>
 
 #include <glib.h>
-#include "glib-compat.h"
 #include "db-parse-context.h"
 #include "db-itunes-parser.h"
 #include "itdb_endianness.h"
@@ -146,8 +145,10 @@
 		g_strreverse (header_id);
 	}
 	if (strncmp (id, header_id, 4) != 0) {
+	        g_free (header_id);
 		return NULL;
 	}
+
 	g_free (header_id);
 
 	/* FIXME: this test sucks for compat: if a field is smaller than 

Modified: libgpod/branches/upstream/current/src/db-parse-context.h
===================================================================
--- libgpod/branches/upstream/current/src/db-parse-context.h	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/db-parse-context.h	2007-11-12 21:03:04 UTC (rev 251)
@@ -21,33 +21,8 @@
  * 
  *  This product is not supported/written/published by Apple!
  *
- *  $Id: db-parse-context.h 1299 2006-06-04 16:24:45Z jcsjcs $
+ *  $Id: db-parse-context.h 1669 2007-08-04 06:46:45Z tmzullinger $
  */
-/*
- *  Copyright (C) 2005 Christophe Fergeau
- *
- * 
- *  The code contained in this file is free software; you can redistribute
- *  it and/or modify it under the terms of the GNU Lesser General Public
- *  License as published by the Free Software Foundation; either version
- *  2.1 of the License, or (at your option) any later version.
- *  
- *  This file 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
- *  Lesser General Public License for more details.
- *  
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this code; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- *  02111-1307 USA
- * 
- *  iTunes and iPod are trademarks of Apple
- * 
- *  This product is not supported/written/published by Apple!
- *
- *  $Id: db-parse-context.h 1299 2006-06-04 16:24:45Z jcsjcs $
- */
 
 
 #ifndef DB_PARSE_CONTEXT

Deleted: libgpod/branches/upstream/current/src/glib-compat.h
===================================================================
--- libgpod/branches/upstream/current/src/glib-compat.h	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/glib-compat.h	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,66 +0,0 @@
-/*
- *  Copyright (C) 2005 Christophe Fergeau
- *
- * 
- *  The code contained in this file is free software; you can redistribute
- *  it and/or modify it under the terms of the GNU Lesser General Public
- *  License as published by the Free Software Foundation; either version
- *  2.1 of the License, or (at your option) any later version.
- *  
- *  This file 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
- *  Lesser General Public License for more details.
- *  
- *  You should have received a copy of the GNU Lesser General Public
- *  License along with this code; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- *  02111-1307 USA
- * 
- *  iTunes and iPod are trademarks of Apple
- * 
- *  This product is not supported/written/published by Apple!
- *
- *  $Id: glib-compat.h 1299 2006-06-04 16:24:45Z jcsjcs $
- */
-
-#ifndef GLIB_COMPAT_H
-#define GLIB_COMPAT_H
-
-#include <glib.h>
-
-#if ((GLIB_MAJOR_VERSION == 2) && (GLIB_MINOR_VERSION <= 4))
-/*** glib <= 2.4 ***/
-
-/* G_GNUC_INTERNAL */
-#ifndef G_GNUC_INTERNAL
-#define G_GNUC_INTERNAL
-#endif
-
-/* g_stat */
-#include <stdio.h>
-#include<unistd.h>
-#include<sys/types.h>
-#include<sys/stat.h>
-#define g_stat stat
-#define g_mkdir mkdir
-#define g_rename rename
-#define g_printf printf
-
-/* G_IS_DIR_SEPARATOR */
-#ifdef G_OS_WIN32
-#define G_IS_DIR_SEPARATOR(c) ((c) == G_DIR_SEPARATOR || (c) == '/')
-#else
-#define G_IS_DIR_SEPARATOR(c) ((c) == G_DIR_SEPARATOR)
-#endif
-
-#else
-/*** glib > 2.4 ***/
-
-/* g_stat */
-#include <glib/gstdio.h>
-#endif
-
-
-
-#endif /* GLIB_COMPAT_H */

Modified: libgpod/branches/upstream/current/src/itdb.h
===================================================================
--- libgpod/branches/upstream/current/src/itdb.h	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/itdb.h	2007-11-12 21:03:04 UTC (rev 251)
@@ -29,7 +29,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb.h 1552 2007-06-17 15:27:05Z jcsjcs $
+|  $Id: itdb.h 1753 2007-11-04 00:48:12Z jcsjcs $
 */
 
 #ifndef __ITUNESDB_H__
@@ -80,9 +80,23 @@
     ITDB_IPOD_GENERATION_SECOND,
     ITDB_IPOD_GENERATION_THIRD,
     ITDB_IPOD_GENERATION_FOURTH,
+    ITDB_IPOD_GENERATION_PHOTO,
+    ITDB_IPOD_GENERATION_MOBILE,
+    ITDB_IPOD_GENERATION_MINI_1,
+    ITDB_IPOD_GENERATION_MINI_2,
+    ITDB_IPOD_GENERATION_SHUFFLE_1,
+    ITDB_IPOD_GENERATION_SHUFFLE_2,
+    ITDB_IPOD_GENERATION_SHUFFLE_3,
+    ITDB_IPOD_GENERATION_NANO_1,
+    ITDB_IPOD_GENERATION_NANO_2,
+    ITDB_IPOD_GENERATION_NANO_3,
+    ITDB_IPOD_GENERATION_VIDEO_1,
+    ITDB_IPOD_GENERATION_VIDEO_2,
+    ITDB_IPOD_GENERATION_CLASSIC_1,
+    ITDB_IPOD_GENERATION_TOUCH_1,
+    /* The following 2 are no longer in use and should be removed */
     ITDB_IPOD_GENERATION_FIFTH,
     ITDB_IPOD_GENERATION_SIXTH,
-    ITDB_IPOD_GENERATION_MOBILE
 } Itdb_IpodGeneration;
 
 typedef enum {
@@ -107,7 +121,18 @@
     ITDB_IPOD_MODEL_NANO_SILVER,
     ITDB_IPOD_MODEL_NANO_BLUE,
     ITDB_IPOD_MODEL_NANO_GREEN,
-    ITDB_IPOD_MODEL_NANO_PINK
+    ITDB_IPOD_MODEL_NANO_PINK,
+    ITDB_IPOD_MODEL_NANO_RED,
+    ITDB_IPOD_MODEL_IPHONE_1,
+    ITDB_IPOD_MODEL_SHUFFLE_SILVER,
+    ITDB_IPOD_MODEL_SHUFFLE_PINK,
+    ITDB_IPOD_MODEL_SHUFFLE_BLUE,
+    ITDB_IPOD_MODEL_SHUFFLE_GREEN,
+    ITDB_IPOD_MODEL_SHUFFLE_ORANGE,
+    ITDB_IPOD_MODEL_SHUFFLE_PURPLE,
+    ITDB_IPOD_MODEL_CLASSIC_SILVER,
+    ITDB_IPOD_MODEL_CLASSIC_BLACK,
+    ITDB_IPOD_MODEL_TOUCH_BLACK,
 } Itdb_IpodModel;
 
 struct _Itdb_IpodInfo {
@@ -309,21 +334,20 @@
     ITDB_SPLFIELD_YEAR = 0x07,         /* Int  (e.g. from/to = 2004) */
     ITDB_SPLFIELD_GENRE = 0x08,        /* String */
     ITDB_SPLFIELD_KIND = 0x09,         /* String */
-    ITDB_SPLFIELD_DATE_MODIFIED = 0x0a,/* Int/Mac Timestamp (e.g. from/to =
-                                     bcf93280 == is before 6/19/2004)*/
+    ITDB_SPLFIELD_DATE_MODIFIED = 0x0a,/* Int (e.g. from/to = bcf93280 ==
+				     is before 6/19/2004)*/
     ITDB_SPLFIELD_TRACKNUMBER = 0x0b,  /* Int (e.g. from = 1, to = 2) */
     ITDB_SPLFIELD_SIZE = 0x0c,         /* Int (e.g. from/to = 0x00600000
 				     for 6MB) */
     ITDB_SPLFIELD_TIME = 0x0d,         /* Int (e.g. from/to = 83999 for
 				     1:23/83 seconds) */
     ITDB_SPLFIELD_COMMENT = 0x0e,      /* String */
-    ITDB_SPLFIELD_DATE_ADDED = 0x10,   /* Int/Mac Timestamp (e.g. from/to =
-                                     bcfa83ff == is after 6/19/2004) */
+    ITDB_SPLFIELD_DATE_ADDED = 0x10,   /* Int (e.g. from/to = bcfa83ff ==
+				     is after 6/19/2004) */
     ITDB_SPLFIELD_COMPOSER = 0x12,     /* String */
     ITDB_SPLFIELD_PLAYCOUNT = 0x16,    /* Int  (e.g. from/to = 1) */
-    ITDB_SPLFIELD_LAST_PLAYED = 0x17,  /* Int/Mac Timestamp (e.g. from =
-                                     bcfa83ff (6/19/2004) to =
-                                     0xbcfbd57f (6/20/2004)) */
+    ITDB_SPLFIELD_LAST_PLAYED = 0x17,  /* Int/ (e.g. from = bcfa83ff (6/19/2004)
+				     to = 0xbcfbd57f (6/20/2004)) */
     ITDB_SPLFIELD_DISC_NUMBER = 0x18,  /* Int  (e.g. from/to = 1) */
     ITDB_SPLFIELD_RATING = 0x19,       /* Int/Stars Rating (e.g. from/to =
                                      60 (3 stars)) */
@@ -341,7 +365,7 @@
     ITDB_SPLFIELD_TVSHOW = 0x3e,       /* String */
     ITDB_SPLFIELD_SEASON_NR = 0x3f,    /* Int */
     ITDB_SPLFIELD_SKIPCOUNT = 0x44,    /* Int */
-    ITDB_SPLFIELD_LAST_SKIPPED = 0x45, /* Int/Mac Timestamp */
+    ITDB_SPLFIELD_LAST_SKIPPED = 0x45, /* Int */
     ITDB_SPLFIELD_ALBUMARTIST = 0x47   /* String */
 } ItdbSPLField;
 
@@ -423,12 +447,16 @@
 
 /* Types of thumbnails in Itdb_Image */
 typedef enum { 
-    ITDB_THUMB_COVER_SMALL,
+    ITDB_THUMB_COVER_SMALL = 0,
     ITDB_THUMB_COVER_LARGE,
     ITDB_THUMB_PHOTO_SMALL,
     ITDB_THUMB_PHOTO_LARGE,
     ITDB_THUMB_PHOTO_FULL_SCREEN,
-    ITDB_THUMB_PHOTO_TV_SCREEN
+    ITDB_THUMB_PHOTO_TV_SCREEN,
+    ITDB_THUMB_COVER_XLARGE,      /* iPhone: cover flow */
+    ITDB_THUMB_COVER_MEDIUM,      /* iPhone: cover view */
+    ITDB_THUMB_COVER_SMEDIUM,     /* iPhone: ??         */
+    ITDB_THUMB_COVER_XSMALL,      /* iPhone: ??         */
 } ItdbThumbType;
 
 
@@ -482,10 +510,9 @@
     guint32 rating;        /* Rating from iPhoto * 20 (PhotoDB only) */
     gint32  unk036;
     time_t  creation_date;  /* Date the image file was created
-			      (creation date of image file (Mac type,
+			      (creation date of image file (PhotoDB only) */
+    time_t  digitized_date;/* Date the image was taken (EXIF information,
 			      PhotoDB only) */
-    time_t  digitized_date;/* Date the image was taken (EXIF
-			      information, Mac type, PhotoDB only) */
     guint32 artwork_size;  /* Size in bytes of the original source
 			      image (PhotoDB only -- don't touch in
 			      case of ArtworkDB!) */
@@ -758,9 +785,9 @@
   gint32  year;              /* year                                    */
   gint32  volume;            /* volume adjustment                       */
   guint32 soundcheck;        /* volume adjustment "soundcheck"          */
-  time_t  time_added;        /* time when added (Mac type)              */
-  time_t  time_modified;     /* time of last modification (Mac type)    */
-  time_t  time_played;       /* time of last play (Mac type)            */
+  time_t  time_added;        /* time when added                         */
+  time_t  time_modified;     /* time of last modification               */
+  time_t  time_played;       /* time of last play                       */
   guint32 bookmark_time;     /* bookmark set for (AudioBook) in ms      */
   guint32 rating;            /* star rating (stars * RATING_STEP (20))  */
   guint32 playcount;         /* number of times track was played        */

Modified: libgpod/branches/upstream/current/src/itdb_artwork.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_artwork.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/itdb_artwork.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,5 +1,4 @@
-/* Time-stamp: <2007-03-21 17:30:57 jcs>
-|
+/*
 |  Copyright (C) 2002-2005 Jorg Schuler <jcsjcs at users sourceforge net>
 |  Part of the gtkpod project.
 | 
@@ -24,7 +23,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_artwork.c 1427 2007-05-07 11:42:09Z jcsjcs $
+|  $Id: itdb_artwork.c 1753 2007-11-04 00:48:12Z jcsjcs $
 */
 
 #include <config.h>
@@ -40,6 +39,7 @@
 #include <gdk-pixbuf/gdk-pixbuf.h>
 #endif
 #include <glib/gi18n-lib.h>
+#include <glib/gstdio.h>
 #include <stdlib.h>
 
 /**
@@ -413,7 +413,11 @@
 
 	if (artwork_dir)
 	{
-	    filename = itdb_get_path (artwork_dir, strchr( thumb->filename+1, ':') + 1);
+	    const gchar *name_on_disk = strchr( thumb->filename+1, ':');
+	    if (name_on_disk)
+	    {
+		filename = itdb_get_path (artwork_dir, name_on_disk + 1);
+	    }
 	    g_free (artwork_dir);
 	}
 
@@ -430,29 +434,222 @@
 	guint i;
 
 	g_return_val_if_fail (bytes_len < 2*(G_MAXUINT/3), NULL);
+
 	result = g_malloc ((bytes_len/2) * 3);
-	if (result == NULL) {
-		return NULL;
+
+	for (i = 0; i < bytes_len/2; i++) {
+		guint16 cur_pixel;
+		/* FIXME: endianness */
+		cur_pixel = get_gint16 (pixels[i], byte_order);
+		/* Unpack pixels */
+		result[3*i] = (cur_pixel & RED_MASK_565) >> RED_SHIFT_565;
+		result[3*i+1] = (cur_pixel & GREEN_MASK_565) >> GREEN_SHIFT_565;
+		result[3*i+2] = (cur_pixel & BLUE_MASK_565) >> BLUE_SHIFT_565;
+		
+		/* Normalize color values so that they use a [0..255] range */
+		result[3*i] <<= (8 - RED_BITS_565);
+		result[3*i+1] <<= (8 - GREEN_BITS_565);
+		result[3*i+2] <<= (8 - BLUE_BITS_565);
 	}
+
+	return result;
+}
+
+static guchar *
+unpack_RGB_555 (guint16 *pixels, guint bytes_len, guint byte_order)
+{
+	guchar *result;
+	guint i;
+
+	g_return_val_if_fail (bytes_len < 2*(G_MAXUINT/3), NULL);
+
+	result = g_malloc ((bytes_len/2) * 3);
+
 	for (i = 0; i < bytes_len/2; i++) {
 		guint16 cur_pixel;
 		/* FIXME: endianness */
 		cur_pixel = get_gint16 (pixels[i], byte_order);
 		/* Unpack pixels */
-		result[3*i] = (cur_pixel & RED_MASK) >> RED_SHIFT;
-		result[3*i+1] = (cur_pixel & GREEN_MASK) >> GREEN_SHIFT;
-		result[3*i+2] = (cur_pixel & BLUE_MASK) >> BLUE_SHIFT;
+		result[3*i] = (cur_pixel & RED_MASK_555) >> RED_SHIFT_555;
+		result[3*i+1] = (cur_pixel & GREEN_MASK_555) >> GREEN_SHIFT_555;
+		result[3*i+2] = (cur_pixel & BLUE_MASK_555) >> BLUE_SHIFT_555;
 		
 		/* Normalize color values so that they use a [0..255] range */
-		result[3*i] <<= (8 - RED_BITS);
-		result[3*i+1] <<= (8 - GREEN_BITS);
-		result[3*i+2] <<= (8 - BLUE_BITS);
+		result[3*i] <<= (8 - RED_BITS_555);
+		result[3*i+1] <<= (8 - GREEN_BITS_555);
+		result[3*i+2] <<= (8 - BLUE_BITS_555);
 	}
 
 	return result;
 }
 
+static guchar *
+unpack_RGB_888 (guint16 *pixels, guint bytes_len, guint byte_order)
+{
+	guchar *result;
+	guint i;
+	guint32 *pixels32;
 
+	result = g_malloc ((bytes_len/4) * 3);
+
+	pixels32 = (guint32 *)pixels;
+
+	for (i = 0; i < bytes_len/4; i++) {
+		guint32 cur_pixel;
+		/* FIXME: endianness */
+		cur_pixel = get_gint32 (pixels32[i], byte_order);
+		/* Unpack pixels */
+		result[3*i] = (cur_pixel & RED_MASK_888) >> RED_SHIFT_888;
+		result[3*i+1] = (cur_pixel & GREEN_MASK_888) >> GREEN_SHIFT_888;
+		result[3*i+2] = (cur_pixel & BLUE_MASK_888) >> BLUE_SHIFT_888;
+		
+		/* Normalize color values so that they use a [0..255] range */
+		/* (not necessary for 888 encoding) */
+/* 		result[3*i] <<= (8 - RED_BITS_888); */
+/* 		result[3*i+1] <<= (8 - GREEN_BITS_888); */
+/* 		result[3*i+2] <<= (8 - BLUE_BITS_888); */
+	}
+
+	return result;
+}
+
+
+static guint16 *rearrange_pixels (guint16 *pixels_s, guint16 *pixels_d,
+				  gint width, gint height, gint row_stride)
+{
+    g_return_val_if_fail (width == height, pixels_d);
+
+    if (pixels_d == NULL)
+    {
+	pixels_d = g_malloc0 (sizeof (guint16)*width*height);
+    }
+
+    if (width == 1)
+    {
+	*pixels_d = *pixels_s;
+    }
+    else
+    {
+	rearrange_pixels (pixels_s + 0,
+			  pixels_d + 0 + 0,
+			  width/2, height/2,
+			  row_stride);
+	rearrange_pixels (pixels_s + (width/2)*(height/2),
+			  pixels_d + (height/2)*row_stride + 0,
+			  width/2, height/2,
+			  row_stride);
+	rearrange_pixels (pixels_s + 2*(width/2)*(height/2),
+			  pixels_d + width/2,
+			  width/2, height/2,
+			  row_stride);
+	rearrange_pixels (pixels_s + 3*(width/2)*(height/2),
+			  pixels_d + (height/2)*row_stride + width/2,
+			  width/2, height/2,
+			  row_stride);
+    }
+    
+    return pixels_d;
+}
+
+
+static guchar *
+unpack_rec_RGB_555 (guint16 *pixels, guint bytes_len, guint byte_order,
+		    gint width, gint height)
+{
+	guchar *result;
+	guint16 *use_pixels;
+	gboolean free_use_pixels = FALSE;
+	guint16 *pixels_arranged;
+
+	guint i;
+
+	g_return_val_if_fail (bytes_len < 2*(G_MAXUINT/3), NULL);
+	g_return_val_if_fail (2*width*height < G_MAXUINT, NULL);
+	g_return_val_if_fail (width==height, NULL);
+
+	if (2*width*height > bytes_len)
+	{
+	    use_pixels = g_malloc0 (2*width*height);
+	    g_memmove (use_pixels, pixels, bytes_len);
+	    free_use_pixels = TRUE;
+	}
+	else
+	{
+	    use_pixels = pixels;
+	}
+
+	pixels_arranged = rearrange_pixels (use_pixels, NULL,
+					    width, height, width);
+
+	if (pixels_arranged == NULL)
+	{
+	    return NULL;
+	}
+
+	result = g_malloc ((bytes_len/2) * 3);
+
+	for (i = 0; i < bytes_len/2; i++) {
+		guint16 cur_pixel;
+		/* FIXME: endianness */
+		cur_pixel = get_gint16 (pixels_arranged[i], byte_order);
+		/* Unpack pixels */
+		result[3*i] = (cur_pixel & RED_MASK_555) >> RED_SHIFT_555;
+		result[3*i+1] = (cur_pixel & GREEN_MASK_555) >> GREEN_SHIFT_555;
+		result[3*i+2] = (cur_pixel & BLUE_MASK_555) >> BLUE_SHIFT_555;
+		
+		/* Normalize color values so that they use a [0..255] range */
+		result[3*i] <<= (8 - RED_BITS_555);
+		result[3*i+1] <<= (8 - GREEN_BITS_555);
+		result[3*i+2] <<= (8 - BLUE_BITS_555);
+	}
+
+	g_free (pixels_arranged);
+	if (free_use_pixels)
+	{
+	    g_free (use_pixels);
+	}
+
+	return result;
+}
+
+
+#if DEBUG_ARTWORK
+static guchar *
+unpack_experimental (guint16 *pixels, guint bytes_len, guint byte_order,
+		     gint width, gint height)
+{
+	guchar *result;
+	guint i;
+	guint32 *rpixels;
+
+	g_return_val_if_fail (bytes_len < (G_MAXUINT/3), NULL);
+
+	result = g_malloc ((bytes_len/4) * 3);
+
+	rpixels = (guint32 *)pixels;
+
+	for (i = 0; i < bytes_len/4; i++) {
+		guint32 cur_pixel;
+		/* FIXME: endianness */
+		cur_pixel = get_gint32 (rpixels[i], byte_order);
+printf ("%8x\n", cur_pixel);
+		/* Unpack pixels */
+		result[3*i] = (cur_pixel & RED_MASK_888) >> RED_SHIFT_888;
+		result[3*i+1] = (cur_pixel & GREEN_MASK_888) >> GREEN_SHIFT_888;
+		result[3*i+2] = (cur_pixel & BLUE_MASK_888) >> BLUE_SHIFT_888;
+		
+		/* Normalize color values so that they use a [0..255] range */
+		/* (not really necessary for 888 encoding) */
+/* 		result[3*i] <<= (8 - RED_BITS_888); */
+/* 		result[3*i+1] <<= (8 - GREEN_BITS_888); */
+/* 		result[3*i+2] <<= (8 - BLUE_BITS_888); */
+	}
+
+	return result;
+}
+#endif
+
+
 /* limit8bit() and unpack_UYVY() adapted from imgconvert.c from the
  * GPixPod project (www.gpixpod.org) */
 static gint limit8bit (float x)
@@ -467,9 +664,51 @@
     }
     return x;
 }
+
+/* swapping U and V planes this unpacks YV12 */
 static guchar *
-unpack_UYVY (guchar *yuvdata, gint bytes_len, gint width, gint height)
+unpack_I420 (guchar *yuvdata, gint bytes_len, guint byte_order,
+		gint width, gint height)
 {
+	gint imgsize = width*3*height;
+	gint yuvdim = width*height;
+	guchar* rgbdata;
+	gint row, col;
+	gint z = 0;
+	gint h = 0;
+	gint y, u, v;
+	gint ustart = yuvdim;
+	gint vstart = yuvdim + yuvdim / 4;
+
+	g_return_val_if_fail (bytes_len < 2*(G_MAXUINT/3), NULL);
+	g_return_val_if_fail (width * height * 2 == bytes_len, NULL);
+
+	rgbdata = g_malloc(imgsize);
+
+	/* FIXME could be faster */
+	while(h < yuvdim){
+		y = yuvdata[h];
+
+		row = h / width;
+		col = h % width;
+
+		u = yuvdata[ustart + (row/2)*(width/2) + col/2];
+		v = yuvdata[vstart + (row/2)*(width/2) + col/2];
+
+		rgbdata[z] = limit8bit((y-16)*1.164 + (v-128)*1.596); 
+		rgbdata[z+1] = limit8bit((y-16)*1.164 - (v-128)*0.813 - (u-128)*0.391); 
+		rgbdata[z+2] = limit8bit((y-16)*1.164 + (u-128)*2.018); 
+
+		z+=3;
+		h++;
+	}
+	return rgbdata;
+}
+
+static guchar *
+unpack_UYVY (guchar *yuvdata, gint bytes_len, guint byte_order,
+	     gint width, gint height)
+{
     gint imgsize = width*3*height;
     guchar* rgbdata;
     gint halfimgsize = imgsize/2;
@@ -481,6 +720,7 @@
     gint h = 0;
 
     g_return_val_if_fail (bytes_len < 2*(G_MAXUINT/3), NULL);
+/*     printf ("w=%d h=%d s=%d\n", width, height, bytes_len); */
     g_return_val_if_fail (width * height * 2 == bytes_len, NULL);
 
     rgbdata =  g_malloc(imgsize);
@@ -594,6 +834,13 @@
 static guchar *
 itdb_thumb_get_rgb_data (Itdb_Device *device, Itdb_Thumb *thumb)
 {
+#if 0
+    #include <unistd.h>
+    #include <fcntl.h>
+    static gint i=0;
+    int fd;
+    gchar *name;
+#endif
 	void *pixels_raw;
 	guchar *pixels=NULL;
 	const Itdb_ArtworkFormat *img_info;
@@ -605,6 +852,14 @@
 	g_return_val_if_fail (img_info, NULL);
 	
 	pixels_raw = get_pixel_data (device, thumb);
+
+#if 0
+    name = g_strdup_printf ("thumb_%03d.raw", i++);
+    fd = creat (name, S_IRWXU|S_IRWXG|S_IRWXO);
+    write (fd, pixels_raw, thumb->size);
+    close (fd);
+    g_free (name);
+#endif
 	if (pixels_raw == NULL) {
 		return NULL;
 	}
@@ -621,10 +876,56 @@
 	    pixels = unpack_RGB_565 (pixels_raw, thumb->size,
 				     itdb_thumb_get_byteorder (img_info->format));
 	    break;
-	case THUMB_FORMAT_UYVY:
+	case THUMB_FORMAT_RGB555_LE_90:
+	case THUMB_FORMAT_RGB555_BE_90:
+	    /* FIXME: actually the previous two might require
+	       different treatment (used on iPod Photo for the full
+	       screen photo thumbnail) */
+	case THUMB_FORMAT_RGB555_LE:
+	case THUMB_FORMAT_RGB555_BE:
+	    pixels = unpack_RGB_555 (pixels_raw, thumb->size,
+				     itdb_thumb_get_byteorder (img_info->format));
+	    break;
+	case THUMB_FORMAT_RGB888_LE_90:
+	case THUMB_FORMAT_RGB888_BE_90:
+	    /* FIXME: actually the previous two might require
+	       different treatment */
+	case THUMB_FORMAT_RGB888_LE:
+	case THUMB_FORMAT_RGB888_BE:
+	    pixels = unpack_RGB_888 (pixels_raw, thumb->size,
+				     itdb_thumb_get_byteorder (img_info->format));
+	    break;
+	case THUMB_FORMAT_REC_RGB555_LE_90:
+	case THUMB_FORMAT_REC_RGB555_BE_90:
+	    /* FIXME: actually the previous two might require
+	       different treatment (used on iPod Photo for the full
+	       screen photo thumbnail) */
+	case THUMB_FORMAT_REC_RGB555_LE:
+	case THUMB_FORMAT_REC_RGB555_BE:
+	    pixels = unpack_rec_RGB_555 (pixels_raw, thumb->size,
+					 itdb_thumb_get_byteorder (img_info->format),
+					 img_info->width, img_info->height);
+	    break;
+	case THUMB_FORMAT_EXPERIMENTAL_LE:
+	case THUMB_FORMAT_EXPERIMENTAL_BE:
+#if DEBUG_ARTWORK
+	    pixels = unpack_experimental (pixels_raw, thumb->size,
+					  itdb_thumb_get_byteorder (img_info->format),
+					  img_info->width, img_info->height);
+	    break;
+#endif
+	case THUMB_FORMAT_UYVY_LE:
+	case THUMB_FORMAT_UYVY_BE:
 	    pixels = unpack_UYVY (pixels_raw, thumb->size,
+				  itdb_thumb_get_byteorder (img_info->format),
 				  img_info->width, img_info->height);
 	    break;
+	case THUMB_FORMAT_I420_LE:
+	case THUMB_FORMAT_I420_BE:
+	    pixels = unpack_I420 (pixels_raw, thumb->size,
+				  itdb_thumb_get_byteorder (img_info->format),
+				  img_info->width, img_info->height);
+	    break;
 	}
 	g_free (pixels_raw);
 
@@ -697,6 +998,14 @@
 		width = 220;  height = 176;  break;
 	    case ITDB_THUMB_PHOTO_TV_SCREEN:
 		width = 720;  height = 480;  break;
+	    case ITDB_THUMB_COVER_XLARGE:
+		width = 320;  height = 320;  break;
+	    case ITDB_THUMB_COVER_MEDIUM:
+		width = 128;  height = 128;  break;
+	    case ITDB_THUMB_COVER_SMEDIUM:
+		width = 88;  height = 88;  break;
+	    case ITDB_THUMB_COVER_XSMALL:
+		width = 56;  height = 56;  break;
 	    }
 	    if (width == 0)
 	    {
@@ -810,6 +1119,10 @@
 	if (pad_y + height > img_info->height)
 	    height = img_info->height - pad_y;
 
+#if DEBUG_ARTWORK
+ 	printf ("px=%2d py=%2d x=%3d y=%3d\n", pad_x, pad_y, width, height);
+#endif
+
 	pixbuf_sub = gdk_pixbuf_new_subpixbuf (pixbuf_full,
 					       pad_x, pad_y,
 					       width, height);
@@ -849,9 +1162,11 @@
     g_return_if_fail (thumb);
 
     g_free (thumb->image_data);
+#ifdef HAVE_GDKPIXBUF
     if (thumb->pixbuf) {
         g_object_unref (G_OBJECT (thumb->pixbuf));
     }
+#endif
     g_free (thumb->filename);
     g_free (thumb);
 }
@@ -883,9 +1198,11 @@
 	memcpy (new_thumb->image_data, thumb->image_data,
 		new_thumb->image_data_len);
     }
+#ifdef HAVE_GDKPIXBUF
     if (thumb->pixbuf) {
         g_object_ref (G_OBJECT (thumb->pixbuf));
     }
+#endif
     return new_thumb;
 }
 
@@ -895,14 +1212,30 @@
 {
     switch (format)
     {
+    case THUMB_FORMAT_UYVY_LE:
+    case THUMB_FORMAT_I420_LE:
     case THUMB_FORMAT_RGB565_LE:
     case THUMB_FORMAT_RGB565_LE_90:
+    case THUMB_FORMAT_RGB555_LE:
+    case THUMB_FORMAT_RGB555_LE_90:
+    case THUMB_FORMAT_RGB888_LE:
+    case THUMB_FORMAT_RGB888_LE_90:
+    case THUMB_FORMAT_REC_RGB555_LE:
+    case THUMB_FORMAT_REC_RGB555_LE_90:
+    case THUMB_FORMAT_EXPERIMENTAL_LE:
 	return G_LITTLE_ENDIAN;
+    case THUMB_FORMAT_UYVY_BE:
+    case THUMB_FORMAT_I420_BE:
     case THUMB_FORMAT_RGB565_BE:
     case THUMB_FORMAT_RGB565_BE_90:
+    case THUMB_FORMAT_RGB555_BE:
+    case THUMB_FORMAT_RGB555_BE_90:
+    case THUMB_FORMAT_RGB888_BE:
+    case THUMB_FORMAT_RGB888_BE_90:
+    case THUMB_FORMAT_REC_RGB555_BE:
+    case THUMB_FORMAT_REC_RGB555_BE_90:
+    case THUMB_FORMAT_EXPERIMENTAL_BE:
 	return G_BIG_ENDIAN;
-    case THUMB_FORMAT_UYVY:
-	return -1;
     }
     g_return_val_if_reached (-1);
 }

Modified: libgpod/branches/upstream/current/src/itdb_device.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_device.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/itdb_device.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -27,7 +27,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_device.c 1439 2007-05-27 14:58:41Z jcsjcs $
+|  $Id: itdb_device.c 1772 2007-11-10 11:14:57Z jcsjcs $
 */
 
 #include "itdb_device.h"
@@ -80,86 +80,120 @@
     {"9282", 20, ITDB_IPOD_MODEL_REGULAR,     ITDB_IPOD_GENERATION_FOURTH, 50},
     {"9787", 25, ITDB_IPOD_MODEL_REGULAR_U2,  ITDB_IPOD_GENERATION_FOURTH, 50},
     {"9268", 40, ITDB_IPOD_MODEL_REGULAR,     ITDB_IPOD_GENERATION_FOURTH, 50},
-    {"A079", 20, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_FOURTH, 50},
-    {"A127", 20, ITDB_IPOD_MODEL_COLOR_U2,    ITDB_IPOD_GENERATION_FOURTH, 50},
-    {"9830", 60, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_FOURTH, 50},
 
     /* First Generation Mini */
-    {"9160",  4, ITDB_IPOD_MODEL_MINI,        ITDB_IPOD_GENERATION_FIRST,   6},
-    {"9436",  4, ITDB_IPOD_MODEL_MINI_BLUE,   ITDB_IPOD_GENERATION_FIRST,   6},
-    {"9435",  4, ITDB_IPOD_MODEL_MINI_PINK,   ITDB_IPOD_GENERATION_FIRST,   6},
-    {"9434",  4, ITDB_IPOD_MODEL_MINI_GREEN,  ITDB_IPOD_GENERATION_FIRST,   6},
-    {"9437",  4, ITDB_IPOD_MODEL_MINI_GOLD,   ITDB_IPOD_GENERATION_FIRST,   6},	
+    {"9160",  4, ITDB_IPOD_MODEL_MINI,        ITDB_IPOD_GENERATION_MINI_1,  6},
+    {"9436",  4, ITDB_IPOD_MODEL_MINI_BLUE,   ITDB_IPOD_GENERATION_MINI_1,  6},
+    {"9435",  4, ITDB_IPOD_MODEL_MINI_PINK,   ITDB_IPOD_GENERATION_MINI_1,  6},
+    {"9434",  4, ITDB_IPOD_MODEL_MINI_GREEN,  ITDB_IPOD_GENERATION_MINI_1,  6},
+    {"9437",  4, ITDB_IPOD_MODEL_MINI_GOLD,   ITDB_IPOD_GENERATION_MINI_1,  6},	
 
     /* Second Generation Mini */
-    {"9800",  4, ITDB_IPOD_MODEL_MINI,        ITDB_IPOD_GENERATION_SECOND,  6},
-    {"9802",  4, ITDB_IPOD_MODEL_MINI_BLUE,   ITDB_IPOD_GENERATION_SECOND,  6},
-    {"9804",  4, ITDB_IPOD_MODEL_MINI_PINK,   ITDB_IPOD_GENERATION_SECOND,  6},
-    {"9806",  4, ITDB_IPOD_MODEL_MINI_GREEN,  ITDB_IPOD_GENERATION_SECOND,  6},
-    {"9801",  6, ITDB_IPOD_MODEL_MINI,        ITDB_IPOD_GENERATION_SECOND, 20},
-    {"9803",  6, ITDB_IPOD_MODEL_MINI_BLUE,   ITDB_IPOD_GENERATION_SECOND, 20},
-    {"9805",  6, ITDB_IPOD_MODEL_MINI_PINK,   ITDB_IPOD_GENERATION_SECOND, 20},
-    {"9807",  6, ITDB_IPOD_MODEL_MINI_GREEN,  ITDB_IPOD_GENERATION_SECOND, 20},	
+    {"9800",  4, ITDB_IPOD_MODEL_MINI,        ITDB_IPOD_GENERATION_MINI_2,  6},
+    {"9802",  4, ITDB_IPOD_MODEL_MINI_BLUE,   ITDB_IPOD_GENERATION_MINI_2,  6},
+    {"9804",  4, ITDB_IPOD_MODEL_MINI_PINK,   ITDB_IPOD_GENERATION_MINI_2,  6},
+    {"9806",  4, ITDB_IPOD_MODEL_MINI_GREEN,  ITDB_IPOD_GENERATION_MINI_2,  6},
+    {"9801",  6, ITDB_IPOD_MODEL_MINI,        ITDB_IPOD_GENERATION_MINI_2, 20},
+    {"9803",  6, ITDB_IPOD_MODEL_MINI_BLUE,   ITDB_IPOD_GENERATION_MINI_2, 20},
+    {"9805",  6, ITDB_IPOD_MODEL_MINI_PINK,   ITDB_IPOD_GENERATION_MINI_2, 20},
+    {"9807",  6, ITDB_IPOD_MODEL_MINI_GREEN,  ITDB_IPOD_GENERATION_MINI_2, 20},	
 
     /* Photo / Fourth Generation */
     /* Buttons are integrated into the "touch wheel". */
-    {"9829", 30, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_FOURTH, 50},
-    {"9585", 40, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_FOURTH, 50},
-    {"9586", 60, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_FOURTH, 50},
-    {"9830", 60, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_FOURTH, 50},
+    {"A079", 20, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_PHOTO,  50},
+    {"A127", 20, ITDB_IPOD_MODEL_COLOR_U2,    ITDB_IPOD_GENERATION_PHOTO,  50},
+    {"9829", 30, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_PHOTO,  50},
+    {"9585", 40, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_PHOTO,  50},
+    {"9830", 60, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_PHOTO,  50},
+    {"9586", 60, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_PHOTO,  50},
+    {"9830", 60, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_PHOTO,  50},
 
     /* Shuffle / Fourth Generation */
-    {"9724", 0.5,ITDB_IPOD_MODEL_SHUFFLE,     ITDB_IPOD_GENERATION_FOURTH,  3},
-    {"9725", 1,  ITDB_IPOD_MODEL_SHUFFLE,     ITDB_IPOD_GENERATION_FOURTH,  3},
+    {"9724", 0.5,ITDB_IPOD_MODEL_SHUFFLE,     ITDB_IPOD_GENERATION_SHUFFLE_1, 3},
+    {"9725", 1,  ITDB_IPOD_MODEL_SHUFFLE,     ITDB_IPOD_GENERATION_SHUFFLE_1, 3},
     /* Shuffle / Sixth Generation */
     /* Square, connected to computer via cable */
-    {"A564", 1,  ITDB_IPOD_MODEL_SHUFFLE,     ITDB_IPOD_GENERATION_SIXTH,  3},
+    {"A564", 1,  ITDB_IPOD_MODEL_SHUFFLE_SILVER, ITDB_IPOD_GENERATION_SHUFFLE_2, 3},
+    {"A947", 1,  ITDB_IPOD_MODEL_SHUFFLE_PINK,   ITDB_IPOD_GENERATION_SHUFFLE_2, 3},
+    {"A949", 1,  ITDB_IPOD_MODEL_SHUFFLE_BLUE,   ITDB_IPOD_GENERATION_SHUFFLE_2, 3},
+    {"A951", 1,  ITDB_IPOD_MODEL_SHUFFLE_GREEN,  ITDB_IPOD_GENERATION_SHUFFLE_2, 3},
+    {"A953", 1,  ITDB_IPOD_MODEL_SHUFFLE_ORANGE, ITDB_IPOD_GENERATION_SHUFFLE_2, 3},
+    /* Shuffle / Seventh Generation */
+    /* Square, connected to computer via cable -- look identicaly to
+     * Sixth Generation*/
+    {"B225", 1,  ITDB_IPOD_MODEL_SHUFFLE_SILVER, ITDB_IPOD_GENERATION_SHUFFLE_3, 3},
+    {"B233", 1,  ITDB_IPOD_MODEL_SHUFFLE_PURPLE, ITDB_IPOD_GENERATION_SHUFFLE_3, 3},
+    {"B227", 1,  ITDB_IPOD_MODEL_SHUFFLE_BLUE,   ITDB_IPOD_GENERATION_SHUFFLE_3, 3},
+    {"B229", 1,  ITDB_IPOD_MODEL_SHUFFLE_GREEN,  ITDB_IPOD_GENERATION_SHUFFLE_3, 3},
 
-    /* Nano / Fifth Generation */
+    /* Nano / Fifth Generation (first nano generation) */
     /* Buttons are integrated into the "touch wheel". */
-    {"A350",  1, ITDB_IPOD_MODEL_NANO_WHITE,  ITDB_IPOD_GENERATION_FIFTH,   3},
-    {"A352",  1, ITDB_IPOD_MODEL_NANO_BLACK,  ITDB_IPOD_GENERATION_FIFTH,   3},
-    {"A004",  2, ITDB_IPOD_MODEL_NANO_WHITE,  ITDB_IPOD_GENERATION_FIFTH,   3},
-    {"A099",  2, ITDB_IPOD_MODEL_NANO_BLACK,  ITDB_IPOD_GENERATION_FIFTH,   3},
-    {"A005",  4, ITDB_IPOD_MODEL_NANO_WHITE,  ITDB_IPOD_GENERATION_FIFTH,   6},
-    {"A107",  4, ITDB_IPOD_MODEL_NANO_BLACK,  ITDB_IPOD_GENERATION_FIFTH,   6},
+    {"A350",  1, ITDB_IPOD_MODEL_NANO_WHITE,  ITDB_IPOD_GENERATION_NANO_1,   3},
+    {"A352",  1, ITDB_IPOD_MODEL_NANO_BLACK,  ITDB_IPOD_GENERATION_NANO_1,   3},
+    {"A004",  2, ITDB_IPOD_MODEL_NANO_WHITE,  ITDB_IPOD_GENERATION_NANO_1,   3},
+    {"A099",  2, ITDB_IPOD_MODEL_NANO_BLACK,  ITDB_IPOD_GENERATION_NANO_1,   3},
+    {"A005",  4, ITDB_IPOD_MODEL_NANO_WHITE,  ITDB_IPOD_GENERATION_NANO_1,   6},
+    {"A107",  4, ITDB_IPOD_MODEL_NANO_BLACK,  ITDB_IPOD_GENERATION_NANO_1,   6},
 
     /* Video / Fifth Generation */
     /* Buttons are integrated into the "touch wheel". */
-    {"A002", 30, ITDB_IPOD_MODEL_VIDEO_WHITE, ITDB_IPOD_GENERATION_FIFTH,  50},
-    {"A146", 30, ITDB_IPOD_MODEL_VIDEO_BLACK, ITDB_IPOD_GENERATION_FIFTH,  50},
-    {"A003", 60, ITDB_IPOD_MODEL_VIDEO_WHITE, ITDB_IPOD_GENERATION_FIFTH,  50},
-    {"A147", 60, ITDB_IPOD_MODEL_VIDEO_BLACK, ITDB_IPOD_GENERATION_FIFTH,  50},
+    {"A002", 30, ITDB_IPOD_MODEL_VIDEO_WHITE, ITDB_IPOD_GENERATION_VIDEO_1,  50},
+    {"A146", 30, ITDB_IPOD_MODEL_VIDEO_BLACK, ITDB_IPOD_GENERATION_VIDEO_1,  50},
+    {"A003", 60, ITDB_IPOD_MODEL_VIDEO_WHITE, ITDB_IPOD_GENERATION_VIDEO_1,  50},
+    {"A147", 60, ITDB_IPOD_MODEL_VIDEO_BLACK, ITDB_IPOD_GENERATION_VIDEO_1,  50},
 
     /* Video / Sixth Generation */
     /* Pretty much identical to fifth generation with better display,
      * extended battery operation time and gap-free playback */
-    {"A444", 30, ITDB_IPOD_MODEL_VIDEO_WHITE, ITDB_IPOD_GENERATION_SIXTH,  50},
-    {"A446", 30, ITDB_IPOD_MODEL_VIDEO_BLACK, ITDB_IPOD_GENERATION_SIXTH,  50},
-    {"A664", 30, ITDB_IPOD_MODEL_VIDEO_U2,    ITDB_IPOD_GENERATION_SIXTH,  50},
-    {"A448", 80, ITDB_IPOD_MODEL_VIDEO_WHITE, ITDB_IPOD_GENERATION_SIXTH,  50},
-    {"A450", 80, ITDB_IPOD_MODEL_VIDEO_BLACK, ITDB_IPOD_GENERATION_SIXTH,  50},
+    {"A444", 30, ITDB_IPOD_MODEL_VIDEO_WHITE, ITDB_IPOD_GENERATION_VIDEO_2,  50},
+    {"A446", 30, ITDB_IPOD_MODEL_VIDEO_BLACK, ITDB_IPOD_GENERATION_VIDEO_2,  50},
+    {"A664", 30, ITDB_IPOD_MODEL_VIDEO_U2,    ITDB_IPOD_GENERATION_VIDEO_2,  50},
+    {"A448", 80, ITDB_IPOD_MODEL_VIDEO_WHITE, ITDB_IPOD_GENERATION_VIDEO_2,  50},
+    {"A450", 80, ITDB_IPOD_MODEL_VIDEO_BLACK, ITDB_IPOD_GENERATION_VIDEO_2,  50},
 
-    /* Nano / Sixth Generation */
+    /* Nano / Sixth Generation (second nano generation) */
     /* Pretty much identical to fifth generation with better display,
      * extended battery operation time and gap-free playback */
-    {"A477",  2, ITDB_IPOD_MODEL_NANO_SILVER, ITDB_IPOD_GENERATION_SIXTH,   3},
-    {"A426",  4, ITDB_IPOD_MODEL_NANO_SILVER, ITDB_IPOD_GENERATION_SIXTH,   6},
-    {"A428",  4, ITDB_IPOD_MODEL_NANO_BLUE,   ITDB_IPOD_GENERATION_SIXTH,   6},
-    {"A487",  4, ITDB_IPOD_MODEL_NANO_GREEN,  ITDB_IPOD_GENERATION_SIXTH,   6},
-    {"A489",  4, ITDB_IPOD_MODEL_NANO_PINK,   ITDB_IPOD_GENERATION_SIXTH,   6},
-    {"A497",  8, ITDB_IPOD_MODEL_NANO_BLACK,  ITDB_IPOD_GENERATION_SIXTH,  14},
+    {"A477",  2, ITDB_IPOD_MODEL_NANO_SILVER, ITDB_IPOD_GENERATION_NANO_2,   3},
+    {"A426",  4, ITDB_IPOD_MODEL_NANO_SILVER, ITDB_IPOD_GENERATION_NANO_2,   6},
+    {"A428",  4, ITDB_IPOD_MODEL_NANO_BLUE,   ITDB_IPOD_GENERATION_NANO_2,   6},
+    {"A487",  4, ITDB_IPOD_MODEL_NANO_GREEN,  ITDB_IPOD_GENERATION_NANO_2,   6},
+    {"A489",  4, ITDB_IPOD_MODEL_NANO_PINK,   ITDB_IPOD_GENERATION_NANO_2,   6},
+    {"A497",  8, ITDB_IPOD_MODEL_NANO_BLACK,  ITDB_IPOD_GENERATION_NANO_2,  14},
 
     /* HP iPods, need contributions for this table */
     /* Buttons are integrated into the "touch wheel". */
     {"E436", 40, ITDB_IPOD_MODEL_REGULAR,     ITDB_IPOD_GENERATION_FOURTH, 50},
-    {"S492", 30, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_FOURTH, 50},
+    {"S492", 30, ITDB_IPOD_MODEL_COLOR,       ITDB_IPOD_GENERATION_PHOTO,  50},
 
+    /* iPod Classic G1 */
+    /* First generation with "cover flow" */
+    {"B029",  80, ITDB_IPOD_MODEL_CLASSIC_SILVER, ITDB_IPOD_GENERATION_CLASSIC_1, 50},
+    {"B147",  80, ITDB_IPOD_MODEL_CLASSIC_BLACK,  ITDB_IPOD_GENERATION_CLASSIC_1, 50},
+    {"B145", 160, ITDB_IPOD_MODEL_CLASSIC_SILVER, ITDB_IPOD_GENERATION_CLASSIC_1, 50},
+    {"B150", 160, ITDB_IPOD_MODEL_CLASSIC_BLACK,  ITDB_IPOD_GENERATION_CLASSIC_1, 50},
+
+    /* iPod nano video G1 (Third Nano Generation) */
+    /* First generation of video support for nano */
+    {"A978",   4, ITDB_IPOD_MODEL_NANO_SILVER,    ITDB_IPOD_GENERATION_NANO_3,  6},
+    {"A980",   8, ITDB_IPOD_MODEL_NANO_SILVER,    ITDB_IPOD_GENERATION_NANO_3, 14},
+    {"B261",   8, ITDB_IPOD_MODEL_NANO_BLACK,     ITDB_IPOD_GENERATION_NANO_3, 14},
+    {"B249",   8, ITDB_IPOD_MODEL_NANO_BLUE,      ITDB_IPOD_GENERATION_NANO_3, 14},
+    {"B253",   8, ITDB_IPOD_MODEL_NANO_GREEN,     ITDB_IPOD_GENERATION_NANO_3, 14},
+    {"B257",   8, ITDB_IPOD_MODEL_NANO_RED,       ITDB_IPOD_GENERATION_NANO_3, 14},
+
+    /* iPod touch G1 */
+    /* With touch screen */
+    {"A623",   8, ITDB_IPOD_MODEL_TOUCH_BLACK,    ITDB_IPOD_GENERATION_TOUCH_1, 14},
+    {"A627",  16, ITDB_IPOD_MODEL_NANO_SILVER,    ITDB_IPOD_GENERATION_TOUCH_1, 28},
+
+
     /* No known model number -- create a Device/SysInfo file with
      * one entry, e.g.:
        ModelNumStr: Mmobile1
     */
-    {"mobile1", -1, ITDB_IPOD_MODEL_MOBILE_1, ITDB_IPOD_GENERATION_MOBILE},
+    {"mobile1", -1, ITDB_IPOD_MODEL_MOBILE_1, ITDB_IPOD_GENERATION_MOBILE,  6},
+    {"iPhone1", -1, ITDB_IPOD_MODEL_IPHONE_1, ITDB_IPOD_GENERATION_MOBILE, 14},
 
     {NULL, 0, 0, 0, 0}
 };
@@ -189,19 +223,43 @@
 	N_("Nano (Blue)"),
 	N_("Nano (Green)"),
 	N_("Nano (Pink)"),
+	N_("Nano (Red)"),
+	N_("iPhone (1)"),
+	N_("Shuffle (Silver)"),
+	N_("Shuffle (Pink)"),
+	N_("Shuffle (Blue)"),
+	N_("Shuffle (Green)"),
+	N_("Shuffle (Orange)"),
+	N_("Shuffle (Purple)"),
+	N_("Classic (Silver)"),
+	N_("Classic (Black)"),
+	N_("Touch (Black)"),
 	NULL
 };
 
 /* One entry for each of Itdb_IpodGeneration (itdb.h) */
 static const gchar *ipod_generation_name_table [] = {
 	N_("Unknown"),
-	N_("First Generation"),
-	N_("Second Generation"),
-	N_("Third Generation"),
-	N_("Fourth Generation"),
-	N_("Fifth Generation"),
-	N_("Sixth Generation"),
-	N_("Mobile Phone"),
+	N_("Regular (1st Gen.)"),
+	N_("Regular (2nd Gen.)"),
+	N_("Regular (3rd Gen.)"),
+	N_("Regular (4th Gen.)"),
+	N_("Photo"),
+	N_("Mobile Phones"),
+	N_("Mini (1st Gen.)"),
+	N_("Mini (2nd Gen.)"),
+	N_("Shuffle (1st Gen.)"),
+	N_("Shuffle (2nd Gen.)"),
+	N_("Shuffle (3rd Gen.)"),
+	N_("Nano (1st Gen.)"),
+	N_("Nano (2nd Gen.)"),
+	N_("Nano Video (3rd Gen.)"),
+	N_("Video (1st Gen.)"),
+	N_("Video (2nd Gen.)"),
+	N_("Classic"),
+	N_("Touch (Read-Only)"),
+	N_("Unused"),
+	N_("Unused"),
 	NULL
 };
 
@@ -211,7 +269,7 @@
     {ITDB_THUMB_PHOTO_SMALL,       42,  30, 1009, THUMB_FORMAT_RGB565_LE},
     {ITDB_THUMB_PHOTO_LARGE,      130,  88, 1015, THUMB_FORMAT_RGB565_LE},
     {ITDB_THUMB_PHOTO_FULL_SCREEN,220, 176, 1013, THUMB_FORMAT_RGB565_BE_90},
-    {ITDB_THUMB_PHOTO_TV_SCREEN,  720, 480, 1019, THUMB_FORMAT_UYVY},
+    {ITDB_THUMB_PHOTO_TV_SCREEN,  720, 480, 1019, THUMB_FORMAT_UYVY_BE},
     {-1,                           -1,  -1,   -1, -1}
 };
 
@@ -229,7 +287,7 @@
     {ITDB_THUMB_PHOTO_SMALL,       50,  41, 1036, THUMB_FORMAT_RGB565_LE},
     {ITDB_THUMB_PHOTO_LARGE,      130,  88, 1015, THUMB_FORMAT_RGB565_LE},
     {ITDB_THUMB_PHOTO_FULL_SCREEN,320, 240, 1024, THUMB_FORMAT_RGB565_LE},
-    {ITDB_THUMB_PHOTO_TV_SCREEN,  720, 480, 1019, THUMB_FORMAT_UYVY},
+    {ITDB_THUMB_PHOTO_TV_SCREEN,  720, 480, 1019, THUMB_FORMAT_UYVY_BE},
     {-1,                           -1,  -1,   -1, -1}
 };
 
@@ -239,34 +297,39 @@
     {-1,                           -1,  -1,   -1, -1}
 };
 
+static const Itdb_ArtworkFormat ipod_touch_1_artwork_info[] = {
+    {ITDB_THUMB_COVER_LARGE,      256, 256, 3001, THUMB_FORMAT_REC_RGB555_LE},
+    {ITDB_THUMB_COVER_MEDIUM,     128, 128, 3002, THUMB_FORMAT_REC_RGB555_LE},
+    {ITDB_THUMB_COVER_SMALL,       64,  64, 3003, THUMB_FORMAT_REC_RGB555_LE},
+    {ITDB_THUMB_COVER_XLARGE,     320, 320, 3005, THUMB_FORMAT_RGB555_LE},
+    {ITDB_THUMB_COVER_XSMALL,      56,  56, 3006, THUMB_FORMAT_RGB555_LE,  8192}, /*pad data to  8192 bytes */
+    {ITDB_THUMB_COVER_SMEDIUM,     88,  88, 3007, THUMB_FORMAT_RGB555_LE, 16364}, /*pad data to 16384 bytes */
+    {ITDB_THUMB_PHOTO_SMALL,       56,  55, 3004, THUMB_FORMAT_RGB555_LE, 8192},
+    {ITDB_THUMB_PHOTO_LARGE,       80,  79, 3011, THUMB_FORMAT_RGB555_LE},
+    {ITDB_THUMB_PHOTO_FULL_SCREEN,160, 120, 3009, THUMB_FORMAT_RGB555_LE},
+    {ITDB_THUMB_PHOTO_TV_SCREEN,  640, 480, 3008, THUMB_FORMAT_RGB555_LE},
+    {-1,                           -1,  -1,   -1, -1}
+};
 
-/* This will be indexed using a value from the ITDB_IPOD_MODEL enum */
-static const Itdb_ArtworkFormat *ipod_artwork_info_table[] = {
-        NULL,                      /* Invalid       */
-	NULL,                      /* Unknown       */
-	ipod_photo_artwork_info,   /* Color         */
-	ipod_photo_artwork_info,   /* Color U2      */
-	NULL,                      /* Grayscale     */ 
-	NULL,                      /* Grayscale U2  */
-	NULL,                      /* Mini (Silver) */
-	NULL,                      /* Mini (Blue)   */
-	NULL,                      /* Mini (Pink)   */
-	NULL,                      /* Mini (Green)  */
-	NULL,                      /* Mini (Gold)   */
-	NULL,                      /* Shuffle       */
-	ipod_nano_artwork_info,    /* Nano (White)  */
-	ipod_nano_artwork_info,    /* Nano (Black)  */
-	ipod_video_artwork_info,   /* Video (White) */
-	ipod_video_artwork_info,   /* Video (Black) */
-	ipod_mobile_1_artwork_info,/* Mobile (1)    */
-	ipod_video_artwork_info,   /* Video U2      */
-	ipod_nano_artwork_info,    /* Nano (Silver) */
-	ipod_nano_artwork_info,    /* Nano (Blue)   */
-	ipod_nano_artwork_info,    /* Nano (Green)  */
-	ipod_nano_artwork_info,    /* Nano (Pink)   */
-	NULL
+static const Itdb_ArtworkFormat ipod_classic_1_artwork_info[] = {
+    /* officially 55x55 -- verify! */
+    {ITDB_THUMB_COVER_XSMALL,      56,  56, 1061, THUMB_FORMAT_RGB565_LE},
+    {ITDB_THUMB_COVER_MEDIUM,     128, 128, 1055, THUMB_FORMAT_RGB565_LE},
+    {ITDB_THUMB_COVER_XLARGE,     320, 320, 1060, THUMB_FORMAT_RGB565_LE},
+    {ITDB_THUMB_PHOTO_TV_SCREEN,  720, 480, 1067, THUMB_FORMAT_I420_LE},
+    {ITDB_THUMB_PHOTO_FULL_SCREEN,320, 240, 1064, THUMB_FORMAT_RGB888_LE},
+    {ITDB_THUMB_PHOTO_SMALL,       64,  64, 1066, THUMB_FORMAT_RGB565_LE},
+/*  These are the same as for the iPod video... -- labeled by the iPod as
+    "chapter images" */
+    {ITDB_THUMB_COVER_SMALL,      100, 100, 1028, THUMB_FORMAT_RGB565_LE},
+    {ITDB_THUMB_COVER_LARGE,      200, 200, 1029, THUMB_FORMAT_RGB565_LE},
+    {-1,                           -1,  -1,   -1, -1}
 };
 
+/* these are identical... */
+#define ipod_nano3_artwork_info ipod_classic_1_artwork_info
+/* these might be identical... Please report if not*/
+#define ipod_iphone_1_artwork_info ipod_touch_1_artwork_info
 
 static void itdb_device_set_timezone_info (Itdb_Device *device);
 
@@ -413,13 +476,14 @@
 	g_free (sysinfo_path);
     }
     g_free (dev_path);
+
+    itdb_device_read_sysinfo_xml (device, NULL);
+
     /* indicate that sysinfo is identical to what is on the iPod */
     device->sysinfo_changed = FALSE;
     return result;
 }
 
-
-
 /* used by itdb_device_write_sysinfo() */
 static void write_sysinfo_entry (const gchar *key,
 				 const gchar *value,
@@ -586,7 +650,49 @@
 
     g_return_val_if_fail (info, NULL);
 
-    return ipod_artwork_info_table[info->ipod_model];
+    switch (info->ipod_generation)
+    {
+    case ITDB_IPOD_GENERATION_UNKNOWN:
+    case ITDB_IPOD_GENERATION_FIRST:
+    case ITDB_IPOD_GENERATION_SECOND:
+    case ITDB_IPOD_GENERATION_THIRD:
+    case ITDB_IPOD_GENERATION_FOURTH:
+	return NULL;
+    case ITDB_IPOD_GENERATION_PHOTO:
+	return ipod_photo_artwork_info;
+    case ITDB_IPOD_GENERATION_MOBILE:
+	switch (info->ipod_model)
+	{
+	case ITDB_IPOD_MODEL_MOBILE_1:
+	    return ipod_mobile_1_artwork_info;
+	case ITDB_IPOD_MODEL_IPHONE_1:
+	    return ipod_iphone_1_artwork_info;
+	default:
+	    g_return_val_if_reached (NULL);
+	}
+    case ITDB_IPOD_GENERATION_MINI_1:
+    case ITDB_IPOD_GENERATION_MINI_2:
+    case ITDB_IPOD_GENERATION_SHUFFLE_1:
+    case ITDB_IPOD_GENERATION_SHUFFLE_2:
+    case ITDB_IPOD_GENERATION_SHUFFLE_3:
+	return NULL;
+    case ITDB_IPOD_GENERATION_NANO_1:
+    case ITDB_IPOD_GENERATION_NANO_2:
+	return ipod_nano_artwork_info;
+    case ITDB_IPOD_GENERATION_NANO_3:
+	return ipod_nano3_artwork_info;
+    case ITDB_IPOD_GENERATION_VIDEO_1:
+    case ITDB_IPOD_GENERATION_VIDEO_2:
+	return ipod_video_artwork_info;
+    case ITDB_IPOD_GENERATION_CLASSIC_1:
+	return ipod_classic_1_artwork_info;
+    case ITDB_IPOD_GENERATION_TOUCH_1:
+	return ipod_touch_1_artwork_info;
+    case ITDB_IPOD_GENERATION_FIFTH:
+    case ITDB_IPOD_GENERATION_SIXTH:
+	return NULL;
+    }
+    g_return_val_if_reached (NULL);
 }
 
 
@@ -825,7 +931,6 @@
  *
  * Return value: true if @device can display artwork.
  */
-
 gboolean itdb_device_supports_artwork (Itdb_Device *device)
 {
     if (device == NULL) {
@@ -935,3 +1040,68 @@
         device->timezone_shift += 3600;
     }
 }
+
+/**
+ * itdb_device_get_firewire_id
+ * @device: an #Itdb_Device
+ *
+ * Returns the Firewire ID for @device, this is useful to calculate the 
+ * iTunesDB checksum which is expected by newer iPod models
+ * (iPod classic/fat nanos)
+ *
+ * Return value: the guint64 firewire id, or 0 if we don't know it
+ **/
+guint64 itdb_device_get_firewire_id (Itdb_Device *device)
+{
+    gchar *fwid;
+
+    g_assert (device->sysinfo != NULL);
+
+    fwid = g_hash_table_lookup (device->sysinfo, "FirewireGuid");
+    if (fwid == NULL) {
+	return 0;
+    }
+    return g_ascii_strtoull (fwid, NULL, 16);
+}
+
+G_GNUC_INTERNAL gboolean itdb_device_requires_checksum (Itdb_Device *device) 
+{
+    const Itdb_IpodInfo *info;
+
+    if (device == NULL) {
+        return FALSE;
+    }
+
+    info = itdb_device_get_ipod_info (device);
+    if (info == NULL) {
+        return FALSE;
+    }
+    switch (info->ipod_generation) {
+    case ITDB_IPOD_GENERATION_CLASSIC_1: 
+    case ITDB_IPOD_GENERATION_NANO_3:
+    case ITDB_IPOD_GENERATION_TOUCH_1:
+      return TRUE;
+
+    case ITDB_IPOD_GENERATION_UNKNOWN:
+    case ITDB_IPOD_GENERATION_FIRST:
+    case ITDB_IPOD_GENERATION_SECOND:
+    case ITDB_IPOD_GENERATION_THIRD:
+    case ITDB_IPOD_GENERATION_FOURTH:
+    case ITDB_IPOD_GENERATION_PHOTO:
+    case ITDB_IPOD_GENERATION_MOBILE:
+    case ITDB_IPOD_GENERATION_MINI_1:
+    case ITDB_IPOD_GENERATION_MINI_2:
+    case ITDB_IPOD_GENERATION_SHUFFLE_1:
+    case ITDB_IPOD_GENERATION_SHUFFLE_2:
+    case ITDB_IPOD_GENERATION_SHUFFLE_3:
+    case ITDB_IPOD_GENERATION_NANO_1:
+    case ITDB_IPOD_GENERATION_NANO_2:
+    case ITDB_IPOD_GENERATION_VIDEO_1:
+    case ITDB_IPOD_GENERATION_VIDEO_2:
+    case ITDB_IPOD_GENERATION_FIFTH:
+    case ITDB_IPOD_GENERATION_SIXTH:
+            return FALSE;
+    }
+
+    return FALSE;
+}

Modified: libgpod/branches/upstream/current/src/itdb_device.h
===================================================================
--- libgpod/branches/upstream/current/src/itdb_device.h	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/itdb_device.h	2007-11-12 21:03:04 UTC (rev 251)
@@ -29,7 +29,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_device.h 1417 2007-04-27 14:09:59Z jcsjcs $
+|  $Id: itdb_device.h 1746 2007-10-29 21:52:44Z teuf $
 */
 
 #ifndef __ITDB_DEVICE_H__
@@ -50,11 +50,28 @@
 
 enum _ItdbThumbFormat
 {
-    THUMB_FORMAT_UYVY,
+    THUMB_FORMAT_UYVY_LE,
+    THUMB_FORMAT_UYVY_BE,
+	THUMB_FORMAT_I420_LE,
+	THUMB_FORMAT_I420_BE,
     THUMB_FORMAT_RGB565_LE,
     THUMB_FORMAT_RGB565_LE_90,
     THUMB_FORMAT_RGB565_BE,
     THUMB_FORMAT_RGB565_BE_90,
+    THUMB_FORMAT_RGB555_LE,
+    THUMB_FORMAT_RGB555_LE_90,
+    THUMB_FORMAT_RGB555_BE,
+    THUMB_FORMAT_RGB555_BE_90,
+    THUMB_FORMAT_REC_RGB555_LE,
+    THUMB_FORMAT_REC_RGB555_LE_90,
+    THUMB_FORMAT_REC_RGB555_BE,
+    THUMB_FORMAT_REC_RGB555_BE_90,
+    THUMB_FORMAT_RGB888_LE,
+    THUMB_FORMAT_RGB888_LE_90,
+    THUMB_FORMAT_RGB888_BE,
+    THUMB_FORMAT_RGB888_BE_90,
+    THUMB_FORMAT_EXPERIMENTAL_LE,
+    THUMB_FORMAT_EXPERIMENTAL_BE,
 };
 
 
@@ -83,11 +100,16 @@
 	gint16 height;
 	gint16 correlation_id;
         ItdbThumbFormat format;
+        gint32 padding;
 };
 
 G_GNUC_INTERNAL const Itdb_ArtworkFormat *itdb_device_get_artwork_formats (Itdb_Device *device);
 G_GNUC_INTERNAL gint itdb_device_musicdirs_number (Itdb_Device *device);
 G_GNUC_INTERNAL void itdb_device_autodetect_endianess (Itdb_Device *device);
+G_GNUC_INTERNAL gboolean itdb_device_read_sysinfo_xml (Itdb_Device *device, 
+						       GError **error);
+G_GNUC_INTERNAL guint64 itdb_device_get_firewire_id (Itdb_Device *device);
+
 G_END_DECLS
 
 #endif

Modified: libgpod/branches/upstream/current/src/itdb_itunesdb.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_itunesdb.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/itdb_itunesdb.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -30,7 +30,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_itunesdb.c 1580 2007-06-23 05:10:26Z jcsjcs $
+|  $Id: itdb_itunesdb.c 1759 2007-11-06 13:23:21Z jcsjcs $
 */
 
 /* Some notes on how to use the functions in this file:
@@ -110,13 +110,15 @@
 #include "db-artwork-parser.h"
 #include "itdb_device.h"
 #include "itdb_private.h"
+#include "itdb_sha1.h"
+
 #include <errno.h>
 #include <fcntl.h>
 #include <glib-object.h>
 #include <glib/gi18n-lib.h>
+#include <glib/gstdio.h>
 #include <stdio.h>
 #include <string.h>
-#include <sys/stat.h>
 #include <sys/statvfs.h>
 #include <sys/types.h>
 #include <time.h>
@@ -282,16 +284,7 @@
     return q;
 }
 
-/* Get length of utf16 string in number of characters (words) */
-static guint32 utf16_strlen (gunichar2 *utf16)
-{
-  guint32 i=0;
-  if (utf16)
-      while (utf16[i] != 0) ++i;
-  return i;
-}
 
-
 /* Read the contents of @filename and return a FContents
    struct. Returns NULL in case of error and @error is set
    accordingly */
@@ -817,7 +810,7 @@
     gint32 i;
     if (utf16_string)
     {
-	for(i=0; i<utf16_strlen(utf16_string); i++)
+	for(i=0; utf16_string[i]; i++)
 	{
 	    utf16_string[i] = GUINT16_SWAP_LE_BE (utf16_string[i]);
 	}
@@ -834,7 +827,7 @@
     gint32 i;
     if (utf16_string)
     {
-	for(i=0; i<utf16_strlen(utf16_string); i++)
+	for(i=0; utf16_string[i]; i++)
 	{
 	    utf16_string[i] = GUINT16_SWAP_LE_BE (utf16_string[i]);
 	}
@@ -2946,33 +2939,36 @@
 	    itdb_set_mountpoint (itdb, mp);
 	    itdb->filename = filename;
 	    success = itdb_parse_internal (itdb, error);
-	    if (!success) {
+	    if (success)
+	    {
+		/* We don't test the return value of ipod_parse_artwork_db
+		 * since the database content will be consistent even if
+		 * we fail to get the various thumbnails, we ignore the
+		 * error since older ipods don't have thumbnails.
+
+		 * FIXME: this probably should go into itdb_parse_file,
+		 * but I don't understand its purpose, and
+		 * ipod_parse_artwork_db needs the mountpoint field from
+		 * the itdb, which may not be available in the other
+		 * function
+
+		 * JCS: itdb_parse_file is used to read local repositories
+		 * (usually repositories stored in
+		 * ~/.gtkpod). ipod_parse_artwork_db (and the
+		 * corresponding artbook write function) should probably
+		 * be expanded to look for (write) the required files into
+		 * the same directory as itdb->filename in case
+		 * itdb->mountpoint does not exist. Because several local
+		 * repositories may exist in the same directory, the names
+		 * should be modified by the repository name.
+		 */
+		ipod_parse_artwork_db (itdb);
+	    }
+	    else
+	    {
 		itdb_free (itdb);
 		itdb = NULL;
 	    }
-	    /* We don't test the return value of ipod_parse_artwork_db
-	     * since the database content will be consistent even if
-	     * we fail to get the various thumbnails, we ignore the
-	     * error since older ipods don't have thumbnails.
-
-	     * FIXME: this probably should go into itdb_parse_file,
-	     * but I don't understand its purpose, and
-	     * ipod_parse_artwork_db needs the mountpoint field from
-	     * the itdb, which may not be available in the other
-	     * function
-
-	     * JCS: itdb_parse_file is used to read local repositories
-	     * (usually repositories stored in
-	     * ~/.gtkpod). ipod_parse_artwork_db (and the
-	     * corresponding artbook write function) should probably
-	     * be expanded to look for (write) the required files into
-	     * the same directory as itdb->filename in case
-	     * itdb->mountpoint does not exist. Because several local
-	     * repositories may exist in the same directory, the names
-	     * should be modified by the repository name.
-	     */
-	    ipod_parse_artwork_db (itdb);
-
 	}
     }
     else
@@ -3407,7 +3403,7 @@
   cts = fexp->wcontents;
 
   put_header (cts, "mhbd");
-  put32lint (cts, 104); /* header size */
+  put32lint (cts, 188); /* header size */
   put32lint (cts, -1);  /* size of whole mhdb -- fill in later */
   put32lint (cts, 1);   /* ? */
   /* Version number: 0x01: iTunes 2
@@ -3422,13 +3418,33 @@
 		     0x10: iTunes 6.0.1(?)
 		     0x11: iTunes 6.0.2
                      0x12 = iTunes 6.0.5.
-		     0x13 = iTunes 7 */
-  fexp->itdb->version = 0x13;
+		     0x13 = iTunes 7 
+                     0x14 = iTunes 7.1
+                     0x15 = iTunes 7.2
+                     0x19 = iTunes 7.4
+    Be aware that newer ipods won't work if the library version number is too 
+    old
+  */
+  fexp->itdb->version = 0x19;
   put32lint (cts, fexp->itdb->version);
   put32lint (cts, children);
   put64lint (cts, fexp->itdb->id);
-  put32lint (cts, 2);   /* ? */
-  put32_n0 (cts, 17);   /* dummy space */
+  /* 0x20 */
+  put16lint (cts, 2);   /* always seems to be 2 */
+  put16_n0  (cts, 7);  /* unknown */
+  /* 0x30 */
+  put16lint (cts, 1);   /* ? but iPod Classic/fat Nanos won't display any song
+			 * if it's not 1 */
+  put16_n0  (cts, 10);  /* unknown */
+  /* 0x46 */
+  put16lint (cts, 0);   /* langauge */
+  put64lint (cts, 0);   /* library persistent ID */
+  /* 0x50 */
+  put32lint (cts, 0);   /* unknown: seen: 0x05 for nano 3G */
+  put32lint (cts, 0);   /* unknown: seen: 0x4d for nano 3G */
+  put32_n0 (cts, 5);    /* 20 bytes hash */
+  put32lint (cts, 0);   /* timezone offset in seconds */
+  put32_n0 (cts, 19);   /* dummy space */
 }
 
 /* Fill in the length of a standard header */
@@ -3483,7 +3499,7 @@
   g_return_if_fail (track);
 
   put_header (cts, "mhit");
-  put32lint (cts, 0x148);/* header size */
+  put32lint (cts, 0x184);/* header size */
   put32lint (cts, -1);   /* size of whole mhit -- fill in later */
   put32lint (cts, -1);   /* nr of mhods in this mhit -- later   */
   put32lint (cts, track->id); /* track index number */
@@ -3568,7 +3584,11 @@
   put32lint (cts, track->unk252);
   put16lint (cts, track->gapless_track_flag);
   put16lint (cts, track->gapless_album_flag);
-  put32_n0 (cts, 17); /* padding */
+  put32_n0 (cts, 23);
+  put32lint (cts, track->id); /* Needed on fat nanos/ipod classic to get art
+			       * in the right sidepane
+			       */
+  put32_n0 (cts, 8); /* padding */
 }
 
 
@@ -3848,20 +3868,20 @@
       if (!cts->reversed)
       {
 	  /* convert to utf16  */
+	  glong len;
 	  gunichar2 *entry_utf16 = g_utf8_to_utf16 (mhod->data.string, -1,
-						    NULL, NULL, NULL);
-	  guint32 len = utf16_strlen (entry_utf16);
+						    NULL, &len, NULL);
 	  fixup_little_utf16 (entry_utf16);
 	  put_header (cts, "mhod");   /* header                     */
 	  put32lint (cts, 24);        /* size of header             */
-	  put32lint (cts, 2*len+40);  /* size of header + body      */
+	  put32lint (cts, sizeof (gunichar2)*len+40);  /* size of header + body      */
 	  put32lint (cts, mhod->type);/* type of the mhod           */
 	  put32_n0 (cts, 2);          /* unknown                    */
 	  /* end of header, start of data */
 	  put32lint (cts, 1);         /* string type UTF16          */
-	  put32lint (cts, 2*len);     /* size of string             */
+	  put32lint (cts, sizeof (gunichar2)*len);     /* size of string             */
 	  put32_n0 (cts, 2);          /* unknown                    */
-	  put_data (cts, (gchar *)entry_utf16, 2*len);/* the string */
+	  put_data (cts, (gchar *)entry_utf16, sizeof (gunichar2)*len);/* the string */
 	  g_free (entry_utf16);
       }
       else
@@ -3969,7 +3989,7 @@
 	  {
 	      Itdb_SPLRule *splr = gl->data;
 	      ItdbSPLFieldType ft;
-	      gint len;
+	      glong len;
 	      gunichar2 *entry_utf16;
 	      g_return_if_fail (splr);
 	      ft = itdb_splr_get_field_type (splr);
@@ -3982,15 +4002,15 @@
 	      {
 	      case ITDB_SPLFT_STRING:
 		  /* write string-type rule */
+		  len = 0;
 		  entry_utf16 = NULL;
 		  /* splr->string may be NULL */
 		  if (splr->string)
 		      entry_utf16 = g_utf8_to_utf16 (splr->string,
-						     -1,NULL,NULL,NULL);
-		  len = utf16_strlen (entry_utf16);
+						     -1,NULL,&len,NULL);
 		  fixup_big_utf16 (entry_utf16);
-		  put32bint (cts, 2*len); /* length of string     */
-		  put_data (cts, (gchar *)entry_utf16, 2*len);
+		  put32bint (cts, sizeof (gunichar2)*len); /* length of string     */
+		  put_data (cts, (gchar *)entry_utf16, sizeof (gunichar2)*len);
 		  g_free (entry_utf16);
 		  break;
 	      case ITDB_SPLFT_DATE:
@@ -4840,6 +4860,49 @@
 }
 
 
+static gboolean write_db_checksum (FExport *fexp, GError **error)
+{
+    guint64 fwid;
+    guchar backup18[8];
+    guchar backup32[20];
+    unsigned char *itdb_data;
+    unsigned char *checksum;
+    gsize len;
+    
+    fwid = itdb_device_get_firewire_id (fexp->itdb->device);
+    if ((fwid == 0) && (itdb_device_requires_checksum (fexp->itdb->device))) {
+	g_set_error (error, 0, -1, "Couldn't find the iPod firewire ID");
+	return FALSE;
+    }
+
+    if (fexp->wcontents->pos < 0x6c) {
+	g_set_error (error, 0, -1, "iTunesDB file too small to write checksum");
+	return FALSE;
+    }
+    itdb_data = (unsigned char *)fexp->wcontents->contents;
+
+    memcpy (backup18, itdb_data+0x18, sizeof (backup18));
+    memcpy (backup32, itdb_data+0x32, sizeof (backup32));
+
+    /* Those fields must be zero'ed out for the sha1 calculation */
+    memset(itdb_data+0x18, 0, 8);
+    memset(itdb_data+0x32, 0, 20);
+    memset(itdb_data+0x58, 0, 20);
+
+    checksum = itdb_compute_hash (fwid, itdb_data, fexp->wcontents->pos, &len);
+    if (checksum == NULL) {
+	g_set_error (error, 0, -1, "Failed to compute checksum");
+	return FALSE;
+    }
+    memcpy (itdb_data+0x58, checksum, len);    
+    g_free (checksum);
+
+    memcpy (itdb_data+0x18, backup18, sizeof (backup18));
+    memcpy (itdb_data+0x32, backup32, sizeof (backup32));
+
+    return TRUE;
+}
+
 /**
  * itdb_write_file:
  * @itdb: the #Itdb_iTunesDB to save
@@ -4869,25 +4932,29 @@
     if (!itdb->device->byte_order)
 	itdb_device_autodetect_endianess (itdb->device);
 
+    fexp = g_new0 (FExport, 1);
+    fexp->itdb = itdb;
+    fexp->wcontents = wcontents_new (filename);
+    cts = fexp->wcontents;
+
+    cts->reversed = (itdb->device->byte_order == G_BIG_ENDIAN);
+
+    prepare_itdb_for_write (fexp);
+
 #if HAVE_GDKPIXBUF
     /* only write ArtworkDB if we deal with an iPod
        FIXME: figure out a way to store the artwork data when storing
        to local directories. At the moment it's the application's task
        to handle this. */
+    /* The ArtworkDB must be written after the call to
+     * prepare_itdb_for_write since it needs Itdb_Track::id to be set
+     * to its final value to write properly on nano video/ipod classics
+     */
     if (itdb_device_supports_artwork (itdb->device)) {
 		ipod_write_artwork_db (itdb);
     }
 #endif
 
-    fexp = g_new0 (FExport, 1);
-    fexp->itdb = itdb;
-    fexp->wcontents = wcontents_new (filename);
-    cts = fexp->wcontents;
-
-    cts->reversed = (itdb->device->byte_order == G_BIG_ENDIAN);
-
-    prepare_itdb_for_write (fexp);
-    
     mk_mhbd (fexp, 3);   /* three mhsds */
     /* write tracklist */
     if (write_mhsd_tracks (fexp))
@@ -4897,6 +4964,11 @@
 	    if (write_mhsd_playlists (fexp, 2))
 	    {
 		fix_header (cts, mhbd_seek);
+
+		/* Set checksum (ipods require it starting from iPod Classic 
+		 * and fat Nanos)
+		 */
+		write_db_checksum (fexp, &fexp->error);
 	    }
 	}
     }
@@ -4971,7 +5043,7 @@
     g_free (itunes_filename);
     g_free (itunes_path);
 
-    if (result == TRUE)
+    if (result != FALSE)
     {
 	/* Write SysInfo file if it has changed */
 	if (itdb->device->sysinfo_changed)
@@ -5203,7 +5275,7 @@
 	Itdb_Track *tr = gl->data;
 	gchar *path;
 	gunichar2 *path_utf16;
-	guint32 pathlen;
+	glong pathlen;
 	gchar *mp3_desc[] = {"MPEG", "MP3", "mpeg", "mp3", NULL};
 	gchar *mp4_desc[] = {"AAC", "MP4", "aac", "mp4", NULL};
 	gchar *wav_desc[] = {"WAV", "wav", NULL};
@@ -5245,11 +5317,10 @@
 	/* shuffle uses forward slash separator, not colon */
 	path = g_strdup (tr->ipod_path);
 	itdb_filename_ipod2fs (path);
-	path_utf16 = g_utf8_to_utf16 (path, -1, NULL, NULL, NULL);
-	pathlen = utf16_strlen (path_utf16);
+	path_utf16 = g_utf8_to_utf16 (path, -1, NULL, &pathlen, NULL);
 	if (pathlen > 261) pathlen = 261;
 	fixup_little_utf16 (path_utf16);
-	put_data (cts, (gchar *)path_utf16, 2*pathlen);
+	put_data (cts, (gchar *)path_utf16, sizeof (gunichar2)*pathlen);
 	/* pad to 522 bytes */
 	put16_n0 (cts, 261-pathlen);
 	g_free(path);
@@ -6019,9 +6090,10 @@
 {
     gchar *p_ipod[] = {"iPod_Control", NULL};
     gchar *p_mobile[] = {"iTunes", "iTunes_Control", NULL};
+    gchar *p_iphone[] = {"iTunes_Control", NULL};
     /* Use an array with all possibilities, so further extension will
        be easy */
-    gchar **paths[] = {p_ipod, p_mobile, NULL};
+    gchar **paths[] = {p_ipod, p_mobile, p_iphone, NULL};
     gchar ***ptr;
     gchar *result = NULL;
 
@@ -6566,6 +6638,16 @@
 	calconnotes = FALSE;
 	devicefile = TRUE;
 	break;
+    case ITDB_IPOD_MODEL_IPHONE_1:
+	podpath = g_strdup ("iTunes_Control");
+	calconnotes = FALSE;
+	devicefile = TRUE;
+	break;
+    case ITDB_IPOD_MODEL_TOUCH_BLACK:
+	podpath = g_strdup ("iTunes_Control");
+	calconnotes = FALSE;
+	devicefile = TRUE;
+	break;
     case ITDB_IPOD_MODEL_UNKNOWN:
 	podpath = g_strdup ("iPod_Control");
 	calconnotes = TRUE;

Modified: libgpod/branches/upstream/current/src/itdb_photoalbum.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_photoalbum.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/itdb_photoalbum.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,4 +1,4 @@
-/* Time-stamp: <2007-06-01 23:03:58 jcs>
+/* Time-stamp: <2007-11-03 20:27:36 jcs>
 |
 |  Copyright (C) 2002-2006 Jorg Schuler <jcsjcs at users sourceforge net>
 |  Part of the gtkpod project.
@@ -24,17 +24,19 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_photoalbum.c 1515 2007-06-01 14:19:21Z jcsjcs $
+|  $Id: itdb_photoalbum.c 1753 2007-11-04 00:48:12Z jcsjcs $
 */
 #include <config.h>
 
 #include "itdb_private.h"
 #include "itdb_device.h"
 #include "db-artwork-parser.h"
+#include "db-image-parser.h"
 #include <errno.h>
 #include <stdio.h>
 #include <string.h>
 #include <glib/gi18n-lib.h>
+#include <glib/gstdio.h>
 #ifdef HAVE_GDKPIXBUF
 #include <gdk-pixbuf/gdk-pixbuf.h>
 #endif
@@ -136,6 +138,7 @@
 
     for (ptr=paths; *ptr && !result; ++ptr)
     {
+        g_free (result);
 	result = itdb_resolve_path (mountpoint, (const gchar **)*ptr);
     }
     return result;
@@ -414,34 +417,34 @@
 
     for(result = TRUE; format->type != -1 && result == TRUE; format++)
     {
-	if((format->type == ITDB_THUMB_COVER_SMALL) ||
-	   (format->type == ITDB_THUMB_COVER_LARGE))
-	    continue;
-	if (filename)
+	if (itdb_thumb_type_is_valid_for_db (format->type, DB_TYPE_PHOTO))
 	{
-	    result = itdb_artwork_add_thumbnail (artwork,
-						 format->type,
-						 filename,
-						 rotation,
-						 error);
+	    if (filename)
+	    {
+		result = itdb_artwork_add_thumbnail (artwork,
+						     format->type,
+						     filename,
+						     rotation,
+						     error);
+	    }
+	    if (image_data)
+	    {
+		result = itdb_artwork_add_thumbnail_from_data (artwork,
+							       format->type,
+							       image_data,
+							       image_data_len,
+							       rotation,
+							       error);
+	    }
+	    if (pixbuf) 
+	    {
+		result = itdb_artwork_add_thumbnail_from_pixbuf (artwork,
+								 format->type, 
+								 pixbuf,
+								 rotation,
+								 error);
+	    }
 	}
-	if (image_data)
-	{
-	    result = itdb_artwork_add_thumbnail_from_data (artwork,
-							   format->type,
-							   image_data,
-							   image_data_len,
-							   rotation,
-							   error);
-	}
-	if (pixbuf) 
-	{
-	  result = itdb_artwork_add_thumbnail_from_pixbuf (artwork,
-							   format->type, 
-							   pixbuf,
-							   rotation,
-							   error);
-	}
     }
 
     if (result != TRUE)

Modified: libgpod/branches/upstream/current/src/itdb_private.h
===================================================================
--- libgpod/branches/upstream/current/src/itdb_private.h	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/itdb_private.h	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,7 +23,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_private.h 1439 2007-05-27 14:58:41Z jcsjcs $
+|  $Id: itdb_private.h 1749 2007-10-30 08:21:16Z teuf $
 */
 
 #ifndef __ITDB_PRIVATE_H__
@@ -32,7 +32,6 @@
 #ifdef HAVE_CONFIG_H
 #  include <config.h>
 #endif
-#include "glib-compat.h"
 #include "itdb_device.h"
 #include "itdb.h"
 
@@ -156,4 +155,5 @@
 G_GNUC_INTERNAL guint64 device_time_time_t_to_mac (Itdb_Device *device,
 						 time_t timet);
 G_GNUC_INTERNAL gint itdb_musicdirs_number_by_mountpoint (const gchar *mountpoint);
+G_GNUC_INTERNAL gboolean itdb_device_requires_checksum (Itdb_Device *device);
 #endif

Added: libgpod/branches/upstream/current/src/itdb_sha1.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_sha1.c	                        (rev 0)
+++ libgpod/branches/upstream/current/src/itdb_sha1.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,213 @@
+/*
+|  Copyright (C) 2007 Christophe Fergeau <teuf at gnome.org>
+|
+|  The code in this file is heavily based on the proof-of-concept code
+|  written by wtbw
+|
+| Redistribution and use in source and binary forms, with or without
+| modification, are permitted provided that the following conditions are met:
+|
+|   1. Redistributions of source code must retain the above copyright
+| notice, this list of conditions and the following disclaimer.
+|   2. Redistributions in binary form must reproduce the above copyright
+| notice, this list of conditions and the following disclaimer in the
+| documentation and/or other materials provided with the distribution.
+|   3. The name of the author may not be used to endorse or promote
+| products derived from this software without specific prior written
+| permission.
+|
+| THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+| IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+| OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+| IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+| INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+| BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+| OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+| ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+| OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+| OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
+| OF SUCH DAMAGE.
+|
+|
+|  iTunes and iPod are trademarks of Apple
+|
+|  This product is not supported/written/published by Apple!
+*/
+
+#include <glib.h>
+#include "itdb_sha1.h"
+#include "sha1.h"
+
+static const unsigned char table1[256] = {
+	0x63, 0x7C, 0x77, 0x7B, 0xF2, 0x6B, 0x6F, 0xC5, 
+	0x30, 0x01, 0x67, 0x2B, 0xFE, 0xD7, 0xAB, 0x76,
+	0xCA, 0x82, 0xC9, 0x7D, 0xFA, 0x59, 0x47, 0xF0, 
+	0xAD, 0xD4, 0xA2, 0xAF, 0x9C, 0xA4, 0x72, 0xC0,
+	0xB7, 0xFD, 0x93, 0x26, 0x36, 0x3F, 0xF7, 0xCC, 
+	0x34, 0xA5, 0xE5, 0xF1, 0x71, 0xD8, 0x31, 0x15,
+	0x04, 0xC7, 0x23, 0xC3, 0x18, 0x96, 0x05, 0x9A, 
+	0x07, 0x12, 0x80, 0xE2, 0xEB, 0x27, 0xB2, 0x75,
+	0x09, 0x83, 0x2C, 0x1A, 0x1B, 0x6E, 0x5A, 0xA0, 
+	0x52, 0x3B, 0xD6, 0xB3, 0x29, 0xE3, 0x2F, 0x84,
+	0x53, 0xD1, 0x00, 0xED, 0x20, 0xFC, 0xB1, 0x5B, 
+	0x6A, 0xCB, 0xBE, 0x39, 0x4A, 0x4C, 0x58, 0xCF,
+	0xD0, 0xEF, 0xAA, 0xFB, 0x43, 0x4D, 0x33, 0x85, 
+	0x45, 0xF9, 0x02, 0x7F, 0x50, 0x3C, 0x9F, 0xA8,
+	0x51, 0xA3, 0x40, 0x8F, 0x92, 0x9D, 0x38, 0xF5, 
+	0xBC, 0xB6, 0xDA, 0x21, 0x10, 0xFF, 0xF3, 0xD2,
+	0xCD, 0x0C, 0x13, 0xEC, 0x5F, 0x97, 0x44, 0x17, 
+	0xC4, 0xA7, 0x7E, 0x3D, 0x64, 0x5D, 0x19, 0x73,
+	0x60, 0x81, 0x4F, 0xDC, 0x22, 0x2A, 0x90, 0x88, 
+	0x46, 0xEE, 0xB8, 0x14, 0xDE, 0x5E, 0x0B, 0xDB,
+	0xE0, 0x32, 0x3A, 0x0A, 0x49, 0x06, 0x24, 0x5C, 
+	0xC2, 0xD3, 0xAC, 0x62, 0x91, 0x95, 0xE4, 0x79,
+	0xE7, 0xC8, 0x37, 0x6D, 0x8D, 0xD5, 0x4E, 0xA9, 
+	0x6C, 0x56, 0xF4, 0xEA, 0x65, 0x7A, 0xAE, 0x08,
+	0xBA, 0x78, 0x25, 0x2E, 0x1C, 0xA6, 0xB4, 0xC6, 
+	0xE8, 0xDD, 0x74, 0x1F, 0x4B, 0xBD, 0x8B, 0x8A,
+	0x70, 0x3E, 0xB5, 0x66, 0x48, 0x03, 0xF6, 0x0E, 
+	0x61, 0x35, 0x57, 0xB9, 0x86, 0xC1, 0x1D, 0x9E,
+	0xE1, 0xF8, 0x98, 0x11, 0x69, 0xD9, 0x8E, 0x94, 
+	0x9B, 0x1E, 0x87, 0xE9, 0xCE, 0x55, 0x28, 0xDF,
+	0x8C, 0xA1, 0x89, 0x0D, 0xBF, 0xE6, 0x42, 0x68, 
+	0x41, 0x99, 0x2D, 0x0F, 0xB0, 0x54, 0xBB, 0x16
+};
+
+static const unsigned char table2[256] = {
+	0x52, 0x09, 0x6A, 0xD5, 0x30, 0x36, 0xA5, 0x38, 
+	0xBF, 0x40, 0xA3, 0x9E, 0x81, 0xF3, 0xD7, 0xFB,
+	0x7C, 0xE3, 0x39, 0x82, 0x9B, 0x2F, 0xFF, 0x87, 
+	0x34, 0x8E, 0x43, 0x44, 0xC4, 0xDE, 0xE9, 0xCB,
+	0x54, 0x7B, 0x94, 0x32, 0xA6, 0xC2, 0x23, 0x3D, 
+	0xEE, 0x4C, 0x95, 0x0B, 0x42, 0xFA, 0xC3, 0x4E,
+	0x08, 0x2E, 0xA1, 0x66, 0x28, 0xD9, 0x24, 0xB2, 
+	0x76, 0x5B, 0xA2, 0x49, 0x6D, 0x8B, 0xD1, 0x25,
+	0x72, 0xF8, 0xF6, 0x64, 0x86, 0x68, 0x98, 0x16, 
+	0xD4, 0xA4, 0x5C, 0xCC, 0x5D, 0x65, 0xB6, 0x92,
+	0x6C, 0x70, 0x48, 0x50, 0xFD, 0xED, 0xB9, 0xDA, 
+	0x5E, 0x15, 0x46, 0x57, 0xA7, 0x8D, 0x9D, 0x84,
+	0x90, 0xD8, 0xAB, 0x00, 0x8C, 0xBC, 0xD3, 0x0A, 
+	0xF7, 0xE4, 0x58, 0x05, 0xB8, 0xB3, 0x45, 0x06,
+	0xD0, 0x2C, 0x1E, 0x8F, 0xCA, 0x3F, 0x0F, 0x02, 
+	0xC1, 0xAF, 0xBD, 0x03, 0x01, 0x13, 0x8A, 0x6B,
+	0x3A, 0x91, 0x11, 0x41, 0x4F, 0x67, 0xDC, 0xEA, 
+	0x97, 0xF2, 0xCF, 0xCE, 0xF0, 0xB4, 0xE6, 0x73,
+	0x96, 0xAC, 0x74, 0x22, 0xE7, 0xAD, 0x35, 0x85, 
+	0xE2, 0xF9, 0x37, 0xE8, 0x1C, 0x75, 0xDF, 0x6E,
+	0x47, 0xF1, 0x1A, 0x71, 0x1D, 0x29, 0xC5, 0x89, 
+	0x6F, 0xB7, 0x62, 0x0E, 0xAA, 0x18, 0xBE, 0x1B,
+	0xFC, 0x56, 0x3E, 0x4B, 0xC6, 0xD2, 0x79, 0x20, 
+	0x9A, 0xDB, 0xC0, 0xFE, 0x78, 0xCD, 0x5A, 0xF4,
+	0x1F, 0xDD, 0xA8, 0x33, 0x88, 0x07, 0xC7, 0x31, 
+	0xB1, 0x12, 0x10, 0x59, 0x27, 0x80, 0xEC, 0x5F,
+	0x60, 0x51, 0x7F, 0xA9, 0x19, 0xB5, 0x4A, 0x0D, 
+	0x2D, 0xE5, 0x7A, 0x9F, 0x93, 0xC9, 0x9C, 0xEF,
+	0xA0, 0xE0, 0x3B, 0x4D, 0xAE, 0x2A, 0xF5, 0xB0, 
+	0xC8, 0xEB, 0xBB, 0x3C, 0x83, 0x53, 0x99, 0x61,
+	0x17, 0x2B, 0x04, 0x7E, 0xBA, 0x77, 0xD6, 0x26, 
+	0xE1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0C, 0x7D
+};
+
+static const unsigned char fixed[18] = {
+    0x67, 0x23, 0xFE, 0x30, 0x45, 0x33, 0xF8, 0x90, 0x99,
+    0x21, 0x07, 0xC1, 0xD0, 0x12, 0xB2, 0xA1, 0x07, 0x81
+};
+
+
+static int gcd(int a, int b){
+    while (TRUE)
+    {
+        a = a % b;
+        if( a == 0 )
+            return b;
+        b = b % a;
+        if( b == 0 )
+            return a;
+    }
+}
+
+static int lcm(int a, int b)
+{
+    if(a==0 || b==0)
+        return 1;
+
+    return (a*b)/gcd(a,b);
+}
+
+static unsigned char *generate_key (guint64 fwid)
+{
+    unsigned char *key;
+    unsigned char y[16];
+    SHA_INFO context;
+    int i;
+    guint64 fwid_be = GUINT64_TO_BE (fwid);
+    const unsigned char *firewire_id = (const unsigned char *)&fwid_be;
+
+    /* take LCM of each two bytes in the FWID in turn */
+    for (i=0; i<4; i++){
+        int a = firewire_id[i*2];
+        int b = firewire_id[i*2+1];
+        int cur_lcm = lcm(a,b);
+
+        unsigned char hi = (cur_lcm & 0xFF00) >> 8;
+        unsigned char lo = cur_lcm & 0xFF;
+
+        y[i*4    ] = table1[hi];
+        y[i*4 + 1] = table2[hi];
+        y[i*4 + 2] = table1[lo];
+        y[i*4 + 3] = table2[lo];
+    }
+
+    /* hash */
+    sha_init(&context);
+    sha_update(&context, fixed, 18);
+    sha_update(&context, y, 16);
+
+    key = g_new0 (unsigned char, 64);
+    sha_final(key, &context);
+
+    return key;
+}
+
+unsigned char *itdb_compute_hash (guint64 firewire_id,
+                                  const unsigned char *itdb,
+                                  unsigned long size, 
+				  gsize *len)
+{
+    unsigned char *key;
+    unsigned char *hash;
+    SHA_INFO context;
+    int i;
+    const gsize CHECKSUM_LEN = 20;
+    
+    key = generate_key(firewire_id);
+
+    /* hmac sha1 */
+    for (i=0; i < 64; i++)
+    {
+        key[i] ^= 0x36;
+    }
+
+    /* 20 bytes for the checksum, and 1 trailing \0 */
+    hash = g_new0 (unsigned char, CHECKSUM_LEN + 1);
+    sha_init(&context);
+    sha_update(&context, key, 64);
+    sha_update(&context, itdb, size);
+    sha_final(hash, &context);
+
+    for (i=0; i < 64; i++)
+        key[i] ^= 0x36 ^ 0x5c;
+
+    sha_init(&context);
+    sha_update(&context, key, 64);
+    sha_update(&context, hash, CHECKSUM_LEN);
+    sha_final(hash, &context);
+
+    g_free (key);
+
+    if (len != NULL) {
+	*len = CHECKSUM_LEN;
+    }
+
+    return hash;
+}

Added: libgpod/branches/upstream/current/src/itdb_sha1.h
===================================================================
--- libgpod/branches/upstream/current/src/itdb_sha1.h	                        (rev 0)
+++ libgpod/branches/upstream/current/src/itdb_sha1.h	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,37 @@
+/*
+|  Copyright (C) 2002-2007 Jorg Schuler <jcsjcs at users sourceforge net>
+|  Part of the gtkpod project.
+| 
+|  URL: http://www.gtkpod.org/
+|  URL: http://gtkpod.sourceforge.net/
+|
+|  The code contained in this file is free software; you can redistribute
+|  it and/or modify it under the terms of the GNU Lesser General Public
+|  License as published by the Free Software Foundation; either version
+|  2.1 of the License, or (at your option) any later version.
+|
+|  This file 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
+|  Lesser General Public License for more details.
+|
+|  You should have received a copy of the GNU Lesser General Public
+|  License along with this code; if not, write to the Free Software
+|  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+|
+|  iTunes and iPod are trademarks of Apple
+|
+|  This product is not supported/written/published by Apple!
+|
+|  $Id$
+*/
+
+#ifndef __ITDB_SHA1_H__
+#define __ITDB_SHA1_H__
+
+#include <glib.h>
+
+unsigned char *itdb_compute_hash (guint64 firewire_id,
+                                  const unsigned char *itdb,
+                                  unsigned long size, gsize *len);
+#endif

Added: libgpod/branches/upstream/current/src/itdb_sysinfo.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_sysinfo.c	                        (rev 0)
+++ libgpod/branches/upstream/current/src/itdb_sysinfo.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,269 @@
+/*
+|  Copyright (C) 2002-2007 Jorg Schuler <jcsjcs at users sourceforge net>
+|  Part of the gtkpod project.
+|
+|  URL: http://www.gtkpod.org/
+|  URL: http://gtkpod.sourceforge.net/
+|
+|  Part of this code is based on ipod-device.c from the libipoddevice
+|  project (http://64.14.94.162/index.php/Libipoddevice).
+|
+|  The code contained in this file is free software; you can redistribute
+|  it and/or modify it under the terms of the GNU Lesser General Public
+|  License as published by the Free Software Foundation; either version
+|  2.1 of the License, or (at your option) any later version.
+|
+|  This file 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
+|  Lesser General Public License for more details.
+|
+|  You should have received a copy of the GNU Lesser General Public
+|  License along with this code; if not, write to the Free Software
+|  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
+|  USA
+|
+|  iTunes and iPod are trademarks of Apple
+|
+|  This product is not supported/written/published by Apple!
+|
+|  $Id$
+*/
+
+#include <string.h>
+
+#include <glib.h>
+
+#include "itdb_device.h"
+
+enum ParsingState {
+    LOOKING_FOR_KEY_TAG,
+    PARSING_KEY_TAG,
+    LOOKING_FOR_FW_DATA,
+    PARSING_FW_DATA,
+    DONE
+};
+
+struct _SysInfoParseContext {
+    enum ParsingState state;
+    char *text;
+    Itdb_Device *device;
+};
+typedef struct _SysInfoParseContext SysInfoParseContext;
+
+
+static void parse_start_element (GMarkupParseContext *context,
+                                 const gchar *element_name,
+                                 const gchar **attribute_names,
+                                 const gchar **attribute_values,
+                                 gpointer user_data,
+                                 GError **error)
+{
+    SysInfoParseContext *sysinfo = (SysInfoParseContext *)user_data;
+
+#ifdef DEBUG
+    g_print ("start: %s\n", element_name);
+#endif
+    switch (sysinfo->state) {
+    case DONE:
+        break;
+    case LOOKING_FOR_FW_DATA:
+        if (strcmp (element_name, "string") == 0) {
+            sysinfo->state = PARSING_FW_DATA;
+            break;
+        }
+        /* Fallback to default case if we didn't find the tag we expected */
+    case LOOKING_FOR_KEY_TAG:
+    default:
+        if (strcmp (element_name, "key") == 0) {
+            sysinfo->state = PARSING_KEY_TAG;
+        } else {
+            sysinfo->state = LOOKING_FOR_KEY_TAG;
+        }
+        break;
+    }
+}
+
+static void parse_end_element (GMarkupParseContext *context,
+			       const gchar *element_name,
+			       gpointer user_data,
+			       GError **error)
+{
+    SysInfoParseContext *sysinfo = (SysInfoParseContext *)user_data;
+
+#ifdef DEBUG
+    g_print ("end: %s\n", element_name);
+#endif
+
+    switch (sysinfo->state) {
+    case PARSING_KEY_TAG:
+        if (sysinfo->text == NULL) {
+            sysinfo->state = LOOKING_FOR_KEY_TAG;
+            break;
+        }
+        if (strcmp (sysinfo->text, "FireWireGUID") == 0) {
+            sysinfo->state = LOOKING_FOR_FW_DATA;
+        } else {
+            sysinfo->state = LOOKING_FOR_KEY_TAG;
+        }
+        g_free (sysinfo->text);
+        sysinfo->text = NULL;
+        break;
+    case PARSING_FW_DATA:
+        if (sysinfo->text == NULL) {
+            sysinfo->state = LOOKING_FOR_KEY_TAG;
+        }
+	/* Use FirewireGuid instead of FireWireGUID to be coherent with what
+	 * the SysInfo file used to contain
+	 */
+	g_hash_table_insert (sysinfo->device->sysinfo,
+			     g_strdup ("FirewireGuid"),
+			     sysinfo->text);
+	sysinfo->text = NULL;
+        sysinfo->state = DONE;
+        break;
+    case LOOKING_FOR_KEY_TAG:
+    case LOOKING_FOR_FW_DATA:
+    case DONE:
+        break;
+
+    }
+}
+
+static void parse_text  (GMarkupParseContext *context,
+			 const gchar *text,
+			 gsize text_len,
+			 gpointer user_data,
+			 GError **error)
+{
+#ifdef DEBUG
+    char *str = g_strndup (text, text_len);
+    g_print ("text: %s\n", str);
+    g_free (str);
+#endif
+
+    SysInfoParseContext *sysinfo = (SysInfoParseContext *)user_data;
+    switch (sysinfo->state) {
+    case DONE:
+        break;
+    case PARSING_FW_DATA:
+    case PARSING_KEY_TAG:
+        g_free (sysinfo->text);
+        sysinfo->text = g_strndup (text, text_len);
+        break;
+    default:
+        g_free (sysinfo->text);
+        sysinfo->text = NULL;
+        break;
+    }
+}
+
+static void parse_error (GMarkupParseContext *context,
+			 GError *error,
+			 gpointer user_data)
+{
+    gint line;
+    gint row;
+    g_markup_parse_context_get_position (context, &line, &row);
+    g_warning ("error at line %i row %i", line, row);
+}
+
+static char *
+get_sysinfo_extended_path (Itdb_Device *device)
+{
+    const gchar *p_sysinfo[] = {"SysInfoExtended", NULL};
+    gchar *dev_path, *sysinfo_path;
+
+    dev_path = itdb_get_device_dir (device->mountpoint);
+
+    if (!dev_path) {
+	return NULL;
+    }
+
+    sysinfo_path = itdb_resolve_path (dev_path, p_sysinfo);
+    g_free (dev_path);
+    return sysinfo_path;
+}
+
+static void init_gmarkup_parser (GMarkupParser *parser)
+{
+    parser->start_element = parse_start_element;
+    parser->end_element = parse_end_element;
+    parser->text = parse_text;
+    parser->error = parse_error;
+}
+
+
+static gboolean parse_sysinfo_xml (Itdb_Device *device, 
+				   const char *xml, gsize len,
+				   GError **error)
+{
+    GMarkupParseContext *ctx;
+    GMarkupParser parser = {0, };
+    gboolean success;
+
+    SysInfoParseContext sysinfo = {0, };
+    sysinfo.state = LOOKING_FOR_KEY_TAG;
+    sysinfo.device = device;
+
+    init_gmarkup_parser (&parser);
+    ctx = g_markup_parse_context_new (&parser, 0, &sysinfo, NULL);
+    success = g_markup_parse_context_parse (ctx, xml, len, error);
+    if (!success) {
+        g_markup_parse_context_free (ctx);
+        return FALSE;
+    }
+    success = g_markup_parse_context_end_parse (ctx, error);
+    if (!success) {
+        g_markup_parse_context_free (ctx);
+        return FALSE;
+    }
+    g_markup_parse_context_free (ctx);
+
+    return TRUE;
+}
+
+/**
+ * itdb_device_read_sysinfo_xml:
+ * @device: an #Itdb_Device 
+ * @error: return location for a #GError or NULL
+ *
+ * Parses a SysInfoExtended file located in iPod_Control/Device on the 
+ * passed-in @device. This file contains a detailed description of the iPod 
+ * capabilities/characteristics. In particular, it contains the iPod Firewire 
+ * ID which is necessary to build the checksum of the iTunesDB.
+ * That file is automatically parsed when @device mount point is set 
+ * if it can be found.
+ *
+ * If a SysInfoExtended file could be successfully read, TRUE is returned. 
+ * Otherwise it returns FALSE and sets @error.
+ *
+ * Return value: TRUE on success, FALSE if an error occurred
+ *
+ **/
+gboolean
+itdb_device_read_sysinfo_xml (Itdb_Device *device, GError **error)
+{
+    gboolean success;
+    char *sysinfo_path;
+    char *xml_data;
+    gsize len;
+
+    sysinfo_path = get_sysinfo_extended_path (device);
+    if (sysinfo_path == NULL) {
+	g_set_error (error, ITDB_FILE_ERROR, ITDB_FILE_ERROR_NOTFOUND,
+		     "Couldn't find SysInfoExtended file");
+	return FALSE;
+    }
+    success = g_file_get_contents (sysinfo_path, &xml_data, &len, error);
+    g_free (sysinfo_path);
+
+    if (!success) {
+        return FALSE;
+    }
+    
+    success = parse_sysinfo_xml (device, xml_data, len, error);
+    g_free (xml_data);
+    
+    return success;
+}

Modified: libgpod/branches/upstream/current/src/itdb_track.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_track.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/itdb_track.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -23,7 +23,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_track.c 1435 2007-05-17 10:39:36Z jcsjcs $
+|  $Id: itdb_track.c 1718 2007-10-05 19:20:01Z teuf $
 */
 
 #include <config.h>
@@ -400,48 +400,64 @@
 						    gint rotation,
 						    GError **error)
 {					     
+    /* FIXME: this looks like it would work, but the problem is that
+     * gtkpod calls this function mostly with tracks that are not yet
+     * part of an iTunesDB. This means only the SMALL and LARGE thumbs
+     * are being added.
+     *
+     * One solution would be to add all kinds of cover thumbs and weed
+     * out the ones not supported when the ArtworkDB is written.
+     *
+     * Suggestions welcome!
+     */
+
     gboolean result = FALSE;
+    ItdbThumbType thumbtypes[] =
+	{ ITDB_THUMB_COVER_SMALL,
+	  ITDB_THUMB_COVER_LARGE,
+	  ITDB_THUMB_COVER_XLARGE,
+	  ITDB_THUMB_COVER_MEDIUM,
+	  ITDB_THUMB_COVER_SMEDIUM,
+	  ITDB_THUMB_COVER_XSMALL,
+	  -1 };
+    ItdbThumbType *thumbtype;
+    const Itdb_ArtworkFormat *formats=NULL;
 
     g_return_val_if_fail (track, FALSE);
+    g_return_val_if_fail (filename || image_data || pixbuf, FALSE);
 
+    if (track->itdb && track->itdb->device)
+    {
+	formats = itdb_device_get_artwork_formats (track->itdb->device);
+    }
+
     itdb_artwork_remove_thumbnails (track->artwork);
 
-    if (filename)
+    for (thumbtype=thumbtypes; *thumbtype!=-1; ++thumbtype)
     {
-	result = itdb_artwork_add_thumbnail (track->artwork,
-					     ITDB_THUMB_COVER_SMALL,
-					     filename, rotation, error);
-	if (result == TRUE)
+	if (filename)
+	{
 	    result = itdb_artwork_add_thumbnail (track->artwork,
-						 ITDB_THUMB_COVER_LARGE,
+						 *thumbtype,
 						 filename, rotation, error);
-    }
-    if (image_data)
-    {
-	result = itdb_artwork_add_thumbnail_from_data (track->artwork,
-						       ITDB_THUMB_COVER_SMALL,
-						       image_data,
-						       image_data_len,
-						       rotation, error);
-	if (result == TRUE)
+	}
+	if (image_data)
+	{
 	    result = itdb_artwork_add_thumbnail_from_data (track->artwork,
-							   ITDB_THUMB_COVER_LARGE,
+							   *thumbtype,
 							   image_data,
 							   image_data_len,
 							   rotation, error);
-    }
-    if (pixbuf)
-    {
-        result = itdb_artwork_add_thumbnail_from_pixbuf (track->artwork,
-                                                         ITDB_THUMB_COVER_SMALL,
-                                                         pixbuf, rotation,
-                                                         error);
-        if (result == TRUE) {
-            result = itdb_artwork_add_thumbnail_from_pixbuf (track->artwork,
-                                                             ITDB_THUMB_COVER_LARGE,
-                                                             pixbuf, rotation,
-                                                             error);
+	}
+	if (pixbuf)
+	{
+	    result = itdb_artwork_add_thumbnail_from_pixbuf (track->artwork,
+							     *thumbtype,
+							     pixbuf, rotation,
+							     error);
         }
+	if (result == FALSE)
+	    break;  /* for (thumbtype=...) */
     }
 
     if (result == TRUE)

Modified: libgpod/branches/upstream/current/src/ithumb-writer.c
===================================================================
--- libgpod/branches/upstream/current/src/ithumb-writer.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/src/ithumb-writer.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,4 +1,4 @@
-/*  Time-stamp: <2007-02-10 01:00:40 jcs>
+/*  Time-stamp: <2007-11-04 09:46:51 jcs>
  *
  *  Copyright (C) 2005 Christophe Fergeau
  *
@@ -23,7 +23,7 @@
  * 
  *  This product is not supported/written/published by Apple!
  *
- *  $Id: ithumb-writer.c 1405 2007-03-21 08:37:20Z jcsjcs $
+ *  $Id: ithumb-writer.c 1753 2007-11-04 00:48:12Z jcsjcs $
  */
 
 #include <config.h>
@@ -45,6 +45,7 @@
 #include <sys/stat.h>
 #include <fcntl.h>
 
+#include <glib/gstdio.h>
 
 /* Maximum size for .ithmb files. Reduced from 500 MB to 256 MB after
    reports of slow iPod interface behavior */
@@ -67,7 +68,8 @@
 
 static guint16 *
 pack_RGB_565 (GdkPixbuf *pixbuf, const Itdb_ArtworkFormat *img_info,
-	      gint horizontal_padding, gint vertical_padding)
+	      gint horizontal_padding, gint vertical_padding,
+	      guint32 *thumb_size)
 {
 	guchar *pixels;
 	guint16 *result;
@@ -88,7 +90,8 @@
 	 * hardcoded in libipoddevice code, so dst_width * dst_height * 2 can't
 	 * overflow, even on an iPod containing malicious data
 	 */
-	result = g_malloc0 (img_info->width * img_info->height * 2);
+	*thumb_size = img_info->width * img_info->height * 2;
+	result = g_malloc0 (*thumb_size);
 
 	byte_order = itdb_thumb_get_byteorder (img_info->format);
 
@@ -103,12 +106,12 @@
 			g = pixels[h*row_stride + w*channels + 1]; 
 			b = pixels[h*row_stride + w*channels + 2]; 
 
-			r >>= (8 - RED_BITS);
-			g >>= (8 - GREEN_BITS);
-			b >>= (8 - BLUE_BITS);
-			r = (r << RED_SHIFT) & RED_MASK;
-			g = (g << GREEN_SHIFT) & GREEN_MASK;
-			b = (b << BLUE_SHIFT) & BLUE_MASK;
+			r >>= (8 - RED_BITS_565);
+			g >>= (8 - GREEN_BITS_565);
+			b >>= (8 - BLUE_BITS_565);
+			r = (r << RED_SHIFT_565) & RED_MASK_565;
+			g = (g << GREEN_SHIFT_565) & GREEN_MASK_565;
+			b = (b << BLUE_SHIFT_565) & BLUE_MASK_565;
 			result[line + w + horizontal_padding] =
 			    get_gint16 (r | g | b, byte_order);
 		}
@@ -116,12 +119,266 @@
 	return result;
 }
 
+static guint16 *
+pack_RGB_555 (GdkPixbuf *pixbuf, const Itdb_ArtworkFormat *img_info,
+	      gint horizontal_padding, gint vertical_padding,
+	      guint32 *thumb_size)
+{
+	guchar *pixels;
+	guint16 *result;
+	gint row_stride;
+	gint channels;
+	gint width;
+	gint height;
+	gint w;
+	gint h;
+	gint byte_order;
 
+	g_object_get (G_OBJECT (pixbuf), 
+		      "rowstride", &row_stride, "n-channels", &channels,
+		      "height", &height, "width", &width,
+		      "pixels", &pixels, NULL);
+	g_return_val_if_fail ((width <= img_info->width) && (height <= img_info->height), NULL);
+	/* dst_width and dst_height come from a width/height database 
+	 * hardcoded in libipoddevice code, so dst_width * dst_height * 2 can't
+	 * overflow, even on an iPod containing malicious data
+	 */
+
+	*thumb_size = img_info->width * img_info->height * 2;
+	result = g_malloc0 (*thumb_size);
+
+	byte_order = itdb_thumb_get_byteorder (img_info->format);
+
+	for (h = 0; h < height; h++) {
+	        gint line = (h+vertical_padding)*img_info->width;
+		for (w = 0; w < width; w++) {
+			gint r;
+			gint g;
+			gint b;
+			gint a;
+
+			r = pixels[h*row_stride + w*channels];
+			g = pixels[h*row_stride + w*channels + 1]; 
+			b = pixels[h*row_stride + w*channels + 2]; 
+
+			r >>= (8 - RED_BITS_555);
+			g >>= (8 - GREEN_BITS_555);
+			b >>= (8 - BLUE_BITS_555);
+			a = (1 << ALPHA_SHIFT_555) & ALPHA_MASK_555;
+			r = (r << RED_SHIFT_555) & RED_MASK_555;
+			g = (g << GREEN_SHIFT_555) & GREEN_MASK_555;
+			b = (b << BLUE_SHIFT_555) & BLUE_MASK_555;
+			result[line + w + horizontal_padding] =
+			    get_gint16 (a | r | g | b, byte_order);
+			/* I'm not sure if the highest bit really is
+			   the alpha channel. For now I'm just setting
+			   this bit because that's what I have seen. */
+		}
+	}
+	return result;
+}
+
+
+static guint16 *
+pack_RGB_888 (GdkPixbuf *pixbuf, const Itdb_ArtworkFormat *img_info,
+	      gint horizontal_padding, gint vertical_padding,
+	      guint32 *thumb_size)
+{
+	guchar *pixels;
+	guint32 *result;
+	gint row_stride;
+	gint channels;
+	gint width;
+	gint height;
+	gint w;
+	gint h;
+	gint byte_order;
+
+	g_object_get (G_OBJECT (pixbuf), 
+		      "rowstride", &row_stride, "n-channels", &channels,
+		      "height", &height, "width", &width,
+		      "pixels", &pixels, NULL);
+	g_return_val_if_fail ((width <= img_info->width) && (height <= img_info->height), NULL);
+	/* dst_width and dst_height come from a width/height database 
+	 * hardcoded in libipoddevice code, so dst_width * dst_height * 2 can't
+	 * overflow, even on an iPod containing malicious data
+	 */
+	*thumb_size = img_info->width * img_info->height * 4;
+	result = g_malloc0 (*thumb_size);
+
+	byte_order = itdb_thumb_get_byteorder (img_info->format);
+
+	for (h = 0; h < height; h++) {
+	        gint line = (h+vertical_padding)*img_info->width;
+		for (w = 0; w < width; w++) {
+			guint32 r;
+			guint32 g;
+			guint32 b;
+			guint32 a;
+
+			r = pixels[h*row_stride + w*channels];
+			g = pixels[h*row_stride + w*channels + 1]; 
+			b = pixels[h*row_stride + w*channels + 2]; 
+
+			r >>= (8 - RED_BITS_888);
+			g >>= (8 - GREEN_BITS_888);
+			b >>= (8 - BLUE_BITS_888);
+			a = (0xff << ALPHA_SHIFT_888) & ALPHA_MASK_888;
+			r = (r << RED_SHIFT_888) & RED_MASK_888;
+			g = (g << GREEN_SHIFT_888) & GREEN_MASK_888;
+			b = (b << BLUE_SHIFT_888) & BLUE_MASK_888;
+			result[line + w + horizontal_padding] =
+			    get_gint32 (a | r | g | b, byte_order);
+			/* I'm not sure if the highest bit really is
+			   the alpha channel. For now I'm just setting
+			   these bits because that's what I have seen. */
+		}
+	}
+	return (guint16 *)result;
+}
+
+
+static guint16 *derange_pixels (guint16 *pixels_s, guint16 *pixels_d,
+				gint width, gint height, gint row_stride)
+{
+    g_return_val_if_fail (width == height, pixels_s);
+
+    if (pixels_s == NULL)
+    {
+	pixels_s = g_malloc0 (sizeof (guint16)*width*height);
+    }
+
+    if (width == 1)
+    {
+	*pixels_s = *pixels_d;
+    }
+    else
+    {
+	derange_pixels (pixels_s + 0,
+			pixels_d + 0 + 0,
+			width/2, height/2,
+			row_stride);
+	derange_pixels (pixels_s + (width/2)*(height/2),
+			pixels_d + (height/2)*row_stride + 0,
+			width/2, height/2,
+			row_stride);
+	derange_pixels (pixels_s + 2*(width/2)*(height/2),
+			pixels_d + width/2,
+			width/2, height/2,
+			row_stride);
+	derange_pixels (pixels_s + 3*(width/2)*(height/2),
+			pixels_d + (height/2)*row_stride + width/2,
+			width/2, height/2,
+			row_stride);
+    }
+    
+    return pixels_s;
+}
+
+static guint16 *
+pack_rec_RGB_555 (GdkPixbuf *pixbuf, const Itdb_ArtworkFormat *img_info,
+		  gint horizontal_padding, gint vertical_padding,
+		  guint32 *thumb_size)
+{
+    guint16 *pixels;
+    guint16 *deranged_pixels = NULL;
+
+    pixels = pack_RGB_555 (pixbuf, img_info,
+			   horizontal_padding, vertical_padding,
+			   thumb_size);
+
+    if (pixels)
+    {
+	deranged_pixels = derange_pixels (NULL, pixels,
+					  img_info->width, img_info->height,
+					  img_info->width);
+	g_free (pixels);
+    }
+
+    return deranged_pixels;
+}
+
+static guchar *
+pack_I420 (GdkPixbuf *orig_pixbuf, const Itdb_ArtworkFormat *img_info,
+	   gint horizontal_padding, gint vertical_padding,
+	   guint32 *thumb_size)
+{
+    GdkPixbuf *pixbuf;
+    gint width, height;
+    gint orig_height, orig_width;
+    gint rowstride;
+    gint h, z;
+    guchar *pixels, *yuvdata;
+    gint yuvsize, halfyuv;
+    gint ustart, vstart;
+
+    g_return_val_if_fail (img_info, NULL);
+
+    width = img_info->width;
+    height = img_info->height;
+
+    g_object_get (G_OBJECT (orig_pixbuf), 
+		  "height", &orig_height, "width", &orig_width, NULL);
+
+    /* copy into new pixmap with padding applied */
+    pixbuf = gdk_pixbuf_new (GDK_COLORSPACE_RGB,
+			     gdk_pixbuf_get_has_alpha (orig_pixbuf),
+			     8,
+			     width, height);
+    gdk_pixbuf_copy_area (orig_pixbuf, 0, 0, orig_width, orig_height,
+			  pixbuf, horizontal_padding, vertical_padding);
+
+    g_object_get (G_OBJECT (pixbuf), 
+		  "rowstride", &rowstride,
+		  "pixels", &pixels, NULL);
+
+    halfyuv = width*height;
+
+    yuvsize = 2*halfyuv;
+    *thumb_size = yuvsize;
+
+    yuvdata = g_malloc (yuvsize);
+
+    ustart = halfyuv;
+    vstart = ustart + halfyuv/4;
+
+    /* FIXME: consider rowstride -- currently we assume rowstride==width */
+    for (z=0,h=0; h < halfyuv; ++h)
+    {
+	gint r,g,b;
+	gint u, v, y;
+	gint row, col;
+
+	r = pixels[z];
+	g = pixels[z+1];
+	b = pixels[z+2];
+
+	y = (( 66*r + 129*g +  25*b + 128) >> 8) + 16;
+	u = ((-38*r -  74*g + 112*b + 128) >> 8) + 128;
+	v = ((112*r -  94*g -  18*b + 128) >> 8) + 128;
+
+	row = h / width;
+	col = h % width;
+
+	yuvdata[h] = y;
+	yuvdata[ustart + (row/2)*(width/2) + col/2] = u;
+	yuvdata[vstart + (row/2)*(width/2) + col/2] = v;
+
+	if (gdk_pixbuf_get_has_alpha(pixbuf))
+	    z+=4;
+	else
+	    z+=3;
+    }
+
+    return yuvdata;
+}
+
 /* pack_UYVY() is adapted from imgconvert.c from the GPixPod project
  * (www.gpixpod.org) */
 static guchar *
 pack_UYVY (GdkPixbuf *orig_pixbuf, const Itdb_ArtworkFormat *img_info,
-	   gint horizontal_padding, gint vertical_padding)
+	   gint horizontal_padding, gint vertical_padding,
+	   guint32 *thumb_size)
 {
     GdkPixbuf *pixbuf;
     guchar *pixels, *yuvdata;
@@ -142,6 +399,7 @@
 
     width = img_info->width;
     height = img_info->height;
+    *thumb_size = 2*width*height;
 
     g_object_get (G_OBJECT (orig_pixbuf), 
 		  "height", &orig_height, "width", &orig_width, NULL);
@@ -159,6 +417,7 @@
 		  "pixels", &pixels, NULL);
 
     yuvsize = width*2*height;
+
     yuvdata = g_malloc (yuvsize);
     halfyuv = yuvsize/2;
     if (gdk_pixbuf_get_has_alpha(pixbuf))
@@ -291,7 +550,7 @@
 /*	printf ("%s %s\n", buf, filename);*/
 
 	g_free (buf);
-
+        g_free (artwork_dir);
 	return filename;
 }
 
@@ -424,6 +683,10 @@
 	break;
     case ITDB_THUMB_COVER_LARGE:
     case ITDB_THUMB_COVER_SMALL:
+    case ITDB_THUMB_COVER_XLARGE:
+    case ITDB_THUMB_COVER_MEDIUM:
+    case ITDB_THUMB_COVER_SMEDIUM:
+    case ITDB_THUMB_COVER_XSMALL:
 	thumb->filename = g_strdup_printf (":F%d_%d.ithmb", 
 					   writer->img_info->correlation_id,
 					   writer->current_file_index);
@@ -453,7 +716,6 @@
     thumb->width = thumb->horizontal_padding + width;
     thumb->height = thumb->vertical_padding + height;
     thumb->offset = writer->cur_offset;
-    thumb->size = writer->img_info->width * writer->img_info->height * 2;
 
     switch (writer->img_info->format)
     {
@@ -466,13 +728,62 @@
     case THUMB_FORMAT_RGB565_BE:
 	pixels = pack_RGB_565 (pixbuf, writer->img_info,
 			       thumb->horizontal_padding,
-			       thumb->vertical_padding);
+			       thumb->vertical_padding,
+			       &thumb->size);
 	break;
-    case THUMB_FORMAT_UYVY:
+    case THUMB_FORMAT_RGB555_LE_90:
+    case THUMB_FORMAT_RGB555_BE_90:
+	/* FIXME: actually the previous two might require
+	   different treatment (used on iPod Photo for the full
+	   screen photo thumbnail) */
+    case THUMB_FORMAT_RGB555_LE:
+    case THUMB_FORMAT_RGB555_BE:
+	pixels = pack_RGB_555 (pixbuf, writer->img_info,
+			       thumb->horizontal_padding,
+			       thumb->vertical_padding,
+			       &thumb->size);
+	break;
+    case THUMB_FORMAT_RGB888_LE_90:
+    case THUMB_FORMAT_RGB888_BE_90:
+	/* FIXME: actually the previous two might require
+	   different treatment (used on iPod Photo for the full
+	   screen photo thumbnail) */
+    case THUMB_FORMAT_RGB888_LE:
+    case THUMB_FORMAT_RGB888_BE:
+	pixels = pack_RGB_888 (pixbuf, writer->img_info,
+			       thumb->horizontal_padding,
+			       thumb->vertical_padding,
+			       &thumb->size);
+	break;
+    case THUMB_FORMAT_REC_RGB555_LE_90:
+    case THUMB_FORMAT_REC_RGB555_BE_90:
+	/* FIXME: actually the previous two might require
+	   different treatment (used on iPod Photo for the full
+	   screen photo thumbnail) */
+    case THUMB_FORMAT_REC_RGB555_LE:
+    case THUMB_FORMAT_REC_RGB555_BE:
+	pixels = pack_rec_RGB_555 (pixbuf, writer->img_info,
+				   thumb->horizontal_padding,
+				   thumb->vertical_padding,
+				   &thumb->size);
+	break;
+    case THUMB_FORMAT_EXPERIMENTAL_LE:
+    case THUMB_FORMAT_EXPERIMENTAL_BE:
+	break;
+    case THUMB_FORMAT_UYVY_BE:
+    case THUMB_FORMAT_UYVY_LE:
 	pixels = pack_UYVY (pixbuf, writer->img_info,
 			    thumb->horizontal_padding,
-			    thumb->vertical_padding);
+			    thumb->vertical_padding,
+	                    &thumb->size);
 	break;
+    case THUMB_FORMAT_I420_BE:
+    case THUMB_FORMAT_I420_LE:
+	pixels = pack_I420 (pixbuf, writer->img_info,
+			    thumb->horizontal_padding,
+			    thumb->vertical_padding,
+	                    &thumb->size);
+	break;
     }
 
 
@@ -482,6 +793,7 @@
     {
 	return FALSE;
     }
+
     if (fwrite (pixels, thumb->size, 1, writer->f) != 1) {
 	g_free (pixels);
 	g_print ("Error writing to file: %s\n", strerror (errno));
@@ -490,6 +802,23 @@
     g_free (pixels);
     writer->cur_offset += thumb->size;
 
+    if (writer->img_info->padding != 0)
+    {
+	gint padding = writer->img_info->padding - thumb->size;
+	g_return_val_if_fail (padding >= 0, TRUE);
+	if (padding != 0)
+	{
+            /* FIXME: check if a simple fseek() will do the same */
+	    gchar *pad_bytes = g_malloc0 (padding);
+	    if (fwrite (pad_bytes, padding, 1, writer->f) != 1) {
+		g_free (pad_bytes);
+		g_print ("Error writing to file: %s\n", strerror (errno));
+		return FALSE;
+	    }
+	    g_free (pad_bytes);
+	    writer->cur_offset += padding;
+	}
+    }
     return TRUE;
 }
 
@@ -948,22 +1277,16 @@
 	while (format->type != -1) {
 		iThumbWriter *writer;
 
-		switch (format->type) {
-		case ITDB_THUMB_COVER_SMALL:
-		case ITDB_THUMB_COVER_LARGE:
-		case ITDB_THUMB_PHOTO_SMALL:
-		case ITDB_THUMB_PHOTO_LARGE:
-		case ITDB_THUMB_PHOTO_FULL_SCREEN:
-		case ITDB_THUMB_PHOTO_TV_SCREEN:
-		        ithmb_rearrange_existing_thumbnails (db, format );
-			writer = ithumb_writer_new (mount_point, 
-						    format,
-						    db->db_type, 
-						    device->byte_order);
-			if (writer != NULL) {
-				writers = g_list_prepend (writers, writer);
-			}
-			break;
+		if (itdb_thumb_type_is_valid_for_db (format->type, db->db_type))
+		{
+		    ithmb_rearrange_existing_thumbnails (db, format );
+		    writer = ithumb_writer_new (mount_point, 
+						format,
+						db->db_type, 
+						device->byte_order);
+		    if (writer != NULL) {
+			writers = g_list_prepend (writers, writer);
+		    }
 		}
 		format++;
 	}

Added: libgpod/branches/upstream/current/src/sha1.c
===================================================================
--- libgpod/branches/upstream/current/src/sha1.c	                        (rev 0)
+++ libgpod/branches/upstream/current/src/sha1.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,450 @@
+/* (PD) 2001 The Bitzi Corporation
+ * Please see file COPYING or http://bitzi.com/publicdomain 
+ * for more info.
+ *
+ * NIST Secure Hash Algorithm 
+ * heavily modified by Uwe Hollerbach <uh at alumni.caltech edu> 
+ * from Peter C. Gutmann's implementation as found in 
+ * Applied Cryptography by Bruce Schneier 
+ * Further modifications to include the "UNRAVEL" stuff, below 
+ *
+ * This code is in the public domain 
+ *
+ * $Id: sha1.c,v 1.1 2005-12-28 18:06:50 tpm Exp $
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+#include <glib.h>
+#define SHA_BYTE_ORDER G_BYTE_ORDER
+
+#include <string.h>
+#include "sha1.h"
+
+/* UNRAVEL should be fastest & biggest */
+/* UNROLL_LOOPS should be just as big, but slightly slower */
+/* both undefined should be smallest and slowest */
+
+#define UNRAVEL
+/* #define UNROLL_LOOPS */
+
+/* SHA f()-functions */
+
+#define f1(x,y,z)	((x & y) | (~x & z))
+#define f2(x,y,z)	(x ^ y ^ z)
+#define f3(x,y,z)	((x & y) | (x & z) | (y & z))
+#define f4(x,y,z)	(x ^ y ^ z)
+
+/* SHA constants */
+
+#define CONST1		0x5a827999L
+#define CONST2		0x6ed9eba1L
+#define CONST3		0x8f1bbcdcL
+#define CONST4		0xca62c1d6L
+
+/* truncate to 32 bits -- should be a null op on 32-bit machines */
+
+#define T32(x)	((x) & 0xffffffffL)
+
+/* 32-bit rotate */
+
+#define R32(x,n)	T32(((x << n) | (x >> (32 - n))))
+
+/* the generic case, for when the overall rotation is not unraveled */
+
+#define FG(n)	\
+    T = T32(R32(A,5) + f##n(B,C,D) + E + *WP++ + CONST##n);	\
+    E = D; D = C; C = R32(B,30); B = A; A = T
+
+/* specific cases, for when the overall rotation is unraveled */
+
+#define FA(n)	\
+    T = T32(R32(A,5) + f##n(B,C,D) + E + *WP++ + CONST##n); B = R32(B,30)
+
+#define FB(n)	\
+    E = T32(R32(T,5) + f##n(A,B,C) + D + *WP++ + CONST##n); A = R32(A,30)
+
+#define FC(n)	\
+    D = T32(R32(E,5) + f##n(T,A,B) + C + *WP++ + CONST##n); T = R32(T,30)
+
+#define FD(n)	\
+    C = T32(R32(D,5) + f##n(E,T,A) + B + *WP++ + CONST##n); E = R32(E,30)
+
+#define FE(n)	\
+    B = T32(R32(C,5) + f##n(D,E,T) + A + *WP++ + CONST##n); D = R32(D,30)
+
+#define FT(n)	\
+    A = T32(R32(B,5) + f##n(C,D,E) + T + *WP++ + CONST##n); C = R32(C,30)
+
+/* do SHA transformation */
+
+static void
+sha_transform (SHA_INFO * sha_info)
+{
+  int i;
+  SHA_BYTE *dp;
+  SHA_LONG T, A, B, C, D, E, W[80], *WP;
+
+  dp = sha_info->data;
+
+/*
+the following makes sure that at least one code block below is
+traversed or an error is reported, without the necessity for nested
+preprocessor if/else/endif blocks, which are a great pain in the
+nether regions of the anatomy...
+*/
+#undef SWAP_DONE
+
+#if (SHA_BYTE_ORDER == 1234)
+#define SWAP_DONE
+  for (i = 0; i < 16; ++i) {
+    T = *((SHA_LONG *) dp);
+    dp += 4;
+    W[i] = ((T << 24) & 0xff000000) | ((T << 8) & 0x00ff0000) |
+        ((T >> 8) & 0x0000ff00) | ((T >> 24) & 0x000000ff);
+  }
+#endif /* SHA_BYTE_ORDER == 1234 */
+
+#if (SHA_BYTE_ORDER == 4321)
+#define SWAP_DONE
+  for (i = 0; i < 16; ++i) {
+    T = *((SHA_LONG *) dp);
+    dp += 4;
+    W[i] = T32 (T);
+  }
+#endif /* SHA_BYTE_ORDER == 4321 */
+
+#if (SHA_BYTE_ORDER == 12345678)
+#define SWAP_DONE
+  for (i = 0; i < 16; i += 2) {
+    T = *((SHA_LONG *) dp);
+    dp += 8;
+    W[i] = ((T << 24) & 0xff000000) | ((T << 8) & 0x00ff0000) |
+        ((T >> 8) & 0x0000ff00) | ((T >> 24) & 0x000000ff);
+    T >>= 32;
+    W[i + 1] = ((T << 24) & 0xff000000) | ((T << 8) & 0x00ff0000) |
+        ((T >> 8) & 0x0000ff00) | ((T >> 24) & 0x000000ff);
+  }
+#endif /* SHA_BYTE_ORDER == 12345678 */
+
+#if (SHA_BYTE_ORDER == 87654321)
+#define SWAP_DONE
+  for (i = 0; i < 16; i += 2) {
+    T = *((SHA_LONG *) dp);
+    dp += 8;
+    W[i] = T32 (T >> 32);
+    W[i + 1] = T32 (T);
+  }
+#endif /* SHA_BYTE_ORDER == 87654321 */
+
+#ifndef SWAP_DONE
+#error Unknown byte order -- you need to add code here
+#endif /* SWAP_DONE */
+
+  for (i = 16; i < 80; ++i) {
+    W[i] = W[i - 3] ^ W[i - 8] ^ W[i - 14] ^ W[i - 16];
+#if (SHA_VERSION == 1)
+    W[i] = R32 (W[i], 1);
+#endif /* SHA_VERSION */
+  }
+  A = sha_info->digest[0];
+  B = sha_info->digest[1];
+  C = sha_info->digest[2];
+  D = sha_info->digest[3];
+  E = sha_info->digest[4];
+  WP = W;
+#ifdef UNRAVEL
+  FA (1);
+  FB (1);
+  FC (1);
+  FD (1);
+  FE (1);
+  FT (1);
+  FA (1);
+  FB (1);
+  FC (1);
+  FD (1);
+  FE (1);
+  FT (1);
+  FA (1);
+  FB (1);
+  FC (1);
+  FD (1);
+  FE (1);
+  FT (1);
+  FA (1);
+  FB (1);
+  FC (2);
+  FD (2);
+  FE (2);
+  FT (2);
+  FA (2);
+  FB (2);
+  FC (2);
+  FD (2);
+  FE (2);
+  FT (2);
+  FA (2);
+  FB (2);
+  FC (2);
+  FD (2);
+  FE (2);
+  FT (2);
+  FA (2);
+  FB (2);
+  FC (2);
+  FD (2);
+  FE (3);
+  FT (3);
+  FA (3);
+  FB (3);
+  FC (3);
+  FD (3);
+  FE (3);
+  FT (3);
+  FA (3);
+  FB (3);
+  FC (3);
+  FD (3);
+  FE (3);
+  FT (3);
+  FA (3);
+  FB (3);
+  FC (3);
+  FD (3);
+  FE (3);
+  FT (3);
+  FA (4);
+  FB (4);
+  FC (4);
+  FD (4);
+  FE (4);
+  FT (4);
+  FA (4);
+  FB (4);
+  FC (4);
+  FD (4);
+  FE (4);
+  FT (4);
+  FA (4);
+  FB (4);
+  FC (4);
+  FD (4);
+  FE (4);
+  FT (4);
+  FA (4);
+  FB (4);
+  sha_info->digest[0] = T32 (sha_info->digest[0] + E);
+  sha_info->digest[1] = T32 (sha_info->digest[1] + T);
+  sha_info->digest[2] = T32 (sha_info->digest[2] + A);
+  sha_info->digest[3] = T32 (sha_info->digest[3] + B);
+  sha_info->digest[4] = T32 (sha_info->digest[4] + C);
+#else /* !UNRAVEL */
+#ifdef UNROLL_LOOPS
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (1);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (2);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (3);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+  FG (4);
+#else /* !UNROLL_LOOPS */
+  for (i = 0; i < 20; ++i) {
+    FG (1);
+  }
+  for (i = 20; i < 40; ++i) {
+    FG (2);
+  }
+  for (i = 40; i < 60; ++i) {
+    FG (3);
+  }
+  for (i = 60; i < 80; ++i) {
+    FG (4);
+  }
+#endif /* !UNROLL_LOOPS */
+  sha_info->digest[0] = T32 (sha_info->digest[0] + A);
+  sha_info->digest[1] = T32 (sha_info->digest[1] + B);
+  sha_info->digest[2] = T32 (sha_info->digest[2] + C);
+  sha_info->digest[3] = T32 (sha_info->digest[3] + D);
+  sha_info->digest[4] = T32 (sha_info->digest[4] + E);
+#endif /* !UNRAVEL */
+}
+
+/* initialize the SHA digest */
+
+void
+sha_init (SHA_INFO * sha_info)
+{
+  sha_info->digest[0] = 0x67452301L;
+  sha_info->digest[1] = 0xefcdab89L;
+  sha_info->digest[2] = 0x98badcfeL;
+  sha_info->digest[3] = 0x10325476L;
+  sha_info->digest[4] = 0xc3d2e1f0L;
+  sha_info->count_lo = 0L;
+  sha_info->count_hi = 0L;
+  sha_info->local = 0;
+}
+
+/* update the SHA digest */
+
+void
+sha_update (SHA_INFO * sha_info, const SHA_BYTE * buffer, int count)
+{
+  int i;
+  SHA_LONG clo;
+
+  clo = T32 (sha_info->count_lo + ((SHA_LONG) count << 3));
+  if (clo < sha_info->count_lo) {
+    ++sha_info->count_hi;
+  }
+  sha_info->count_lo = clo;
+  sha_info->count_hi += (SHA_LONG) count >> 29;
+  if (sha_info->local) {
+    i = SHA_BLOCKSIZE - sha_info->local;
+    if (i > count) {
+      i = count;
+    }
+    memcpy (((SHA_BYTE *) sha_info->data) + sha_info->local, buffer, i);
+    count -= i;
+    buffer += i;
+    sha_info->local += i;
+    if (sha_info->local == SHA_BLOCKSIZE) {
+      sha_transform (sha_info);
+    } else {
+      return;
+    }
+  }
+  while (count >= SHA_BLOCKSIZE) {
+    memcpy (sha_info->data, buffer, SHA_BLOCKSIZE);
+    buffer += SHA_BLOCKSIZE;
+    count -= SHA_BLOCKSIZE;
+    sha_transform (sha_info);
+  }
+  memcpy (sha_info->data, buffer, count);
+  sha_info->local = count;
+}
+
+/* finish computing the SHA digest */
+
+void
+sha_final (unsigned char digest[20], SHA_INFO * sha_info)
+{
+  int count;
+  SHA_LONG lo_bit_count, hi_bit_count;
+
+  lo_bit_count = sha_info->count_lo;
+  hi_bit_count = sha_info->count_hi;
+  count = (int) ((lo_bit_count >> 3) & 0x3f);
+  ((SHA_BYTE *) sha_info->data)[count++] = 0x80;
+  if (count > SHA_BLOCKSIZE - 8) {
+    memset (((SHA_BYTE *) sha_info->data) + count, 0, SHA_BLOCKSIZE - count);
+    sha_transform (sha_info);
+    memset ((SHA_BYTE *) sha_info->data, 0, SHA_BLOCKSIZE - 8);
+  } else {
+    memset (((SHA_BYTE *) sha_info->data) + count, 0,
+        SHA_BLOCKSIZE - 8 - count);
+  }
+  sha_info->data[56] = (unsigned char) ((hi_bit_count >> 24) & 0xff);
+  sha_info->data[57] = (unsigned char) ((hi_bit_count >> 16) & 0xff);
+  sha_info->data[58] = (unsigned char) ((hi_bit_count >> 8) & 0xff);
+  sha_info->data[59] = (unsigned char) ((hi_bit_count >> 0) & 0xff);
+  sha_info->data[60] = (unsigned char) ((lo_bit_count >> 24) & 0xff);
+  sha_info->data[61] = (unsigned char) ((lo_bit_count >> 16) & 0xff);
+  sha_info->data[62] = (unsigned char) ((lo_bit_count >> 8) & 0xff);
+  sha_info->data[63] = (unsigned char) ((lo_bit_count >> 0) & 0xff);
+  sha_transform (sha_info);
+  digest[0] = (unsigned char) ((sha_info->digest[0] >> 24) & 0xff);
+  digest[1] = (unsigned char) ((sha_info->digest[0] >> 16) & 0xff);
+  digest[2] = (unsigned char) ((sha_info->digest[0] >> 8) & 0xff);
+  digest[3] = (unsigned char) ((sha_info->digest[0]) & 0xff);
+  digest[4] = (unsigned char) ((sha_info->digest[1] >> 24) & 0xff);
+  digest[5] = (unsigned char) ((sha_info->digest[1] >> 16) & 0xff);
+  digest[6] = (unsigned char) ((sha_info->digest[1] >> 8) & 0xff);
+  digest[7] = (unsigned char) ((sha_info->digest[1]) & 0xff);
+  digest[8] = (unsigned char) ((sha_info->digest[2] >> 24) & 0xff);
+  digest[9] = (unsigned char) ((sha_info->digest[2] >> 16) & 0xff);
+  digest[10] = (unsigned char) ((sha_info->digest[2] >> 8) & 0xff);
+  digest[11] = (unsigned char) ((sha_info->digest[2]) & 0xff);
+  digest[12] = (unsigned char) ((sha_info->digest[3] >> 24) & 0xff);
+  digest[13] = (unsigned char) ((sha_info->digest[3] >> 16) & 0xff);
+  digest[14] = (unsigned char) ((sha_info->digest[3] >> 8) & 0xff);
+  digest[15] = (unsigned char) ((sha_info->digest[3]) & 0xff);
+  digest[16] = (unsigned char) ((sha_info->digest[4] >> 24) & 0xff);
+  digest[17] = (unsigned char) ((sha_info->digest[4] >> 16) & 0xff);
+  digest[18] = (unsigned char) ((sha_info->digest[4] >> 8) & 0xff);
+  digest[19] = (unsigned char) ((sha_info->digest[4]) & 0xff);
+}

Added: libgpod/branches/upstream/current/src/sha1.h
===================================================================
--- libgpod/branches/upstream/current/src/sha1.h	                        (rev 0)
+++ libgpod/branches/upstream/current/src/sha1.h	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,62 @@
+/* NIST Secure Hash Algorithm */
+/* heavily modified by Uwe Hollerbach <uh at alumni.caltech edu> */
+/* from Peter C. Gutmann's implementation as found in */
+/* Applied Cryptography by Bruce Schneier */
+/* This code is in the public domain */
+/* $Id: sha1.h,v 1.1 2005-12-28 18:06:50 tpm Exp $ */
+
+#ifndef __GST_CDDA_SHA_H__
+#define __GST_CDDA_SHA_H__
+
+#include <stdlib.h>
+#include <stdio.h>
+
+/* Useful defines & typedefs */
+typedef unsigned char SHA_BYTE;	/* 8-bit quantity */
+typedef unsigned long SHA_LONG;	/* 32-or-more-bit quantity */
+
+#define SHA_BLOCKSIZE		64
+#define SHA_DIGESTSIZE		20
+
+typedef struct {
+    SHA_LONG digest[5];		/* message digest */
+    SHA_LONG count_lo, count_hi;	/* 64-bit bit count */
+    SHA_BYTE data[SHA_BLOCKSIZE];	/* SHA data buffer */
+    int local;			/* unprocessed amount in data */
+} SHA_INFO;
+
+#define sha_init   itdb_sha_init
+#define sha_update itdb_sha_update
+#define sha_final  itdb_sha_final
+
+G_GNUC_INTERNAL void sha_init(SHA_INFO *);
+G_GNUC_INTERNAL void sha_update(SHA_INFO *, const SHA_BYTE *, int);
+G_GNUC_INTERNAL void sha_final(unsigned char [20], SHA_INFO *);
+
+#define SHA_VERSION 1
+
+#ifdef HAVE_CONFIG_H 
+#include "config.h"
+
+
+#ifdef WORDS_BIGENDIAN
+#  if SIZEOF_LONG == 4
+#    define SHA_BYTE_ORDER  4321
+#  elif SIZEOF_LONG == 8
+#    define SHA_BYTE_ORDER  87654321
+#  endif
+#else
+#  if SIZEOF_LONG == 4
+#    define SHA_BYTE_ORDER  1234
+#  elif SIZEOF_LONG == 8
+#    define SHA_BYTE_ORDER  12345678
+#  endif
+#endif
+
+#else
+
+#define SHA_BYTE_ORDER 1234
+
+#endif
+
+#endif /* __GST_CDDA_SHA_H__ */

Modified: libgpod/branches/upstream/current/tests/Makefile.am
===================================================================
--- libgpod/branches/upstream/current/tests/Makefile.am	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/tests/Makefile.am	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,5 +1,5 @@
 if HAVE_GDKPIXBUF
-TESTTHUMBS=test-thumbnails test-write-thumbnails test-photos get-timezone
+TESTTHUMBS=test-thumbnails test-write-thumbnails test-photos get-timezone 
 
 test_thumbnails_SOURCES = test-covers.c
 test_thumbnails_CFLAGS = $(AM_CFLAGS)
@@ -33,9 +33,14 @@
 test_init_ipod_SOURCES = test-init-ipod.c
 test_init_ipod_LDADD = 
 
+test_checksum_SOURCES = test-checksum.c
+
+test_firewire_id_SOURCES = test-fw-id.c
+
 get_timezone_SOURCES = get-timezone.c
 
-noinst_PROGRAMS=test-itdb test-ls $(TESTTHUMBS) $(TESTTAGLIB) $(TESTMISC)
+noinst_PROGRAMS=test-itdb test-ls test-checksum test-firewire-id \
+	        $(TESTTHUMBS) $(TESTTAGLIB) $(TESTMISC)
 
 INCLUDES=$(LIBGPOD_CFLAGS) -I$(top_srcdir)/src -DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\"
 LIBS=$(LIBGPOD_LIBS) $(top_builddir)/src/libgpod.la

Modified: libgpod/branches/upstream/current/tests/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/tests/Makefile.in	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/tests/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -1,8 +1,8 @@
-# Makefile.in generated by automake 1.7.9 from Makefile.am.
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
 # @configure_input@
 
-# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003
-# Free Software Foundation, Inc.
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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.
@@ -21,7 +21,6 @@
 pkglibdir = $(libdir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 top_builddir = ..
-
 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
 INSTALL = @INSTALL@
 install_sh_DATA = $(install_sh) -c -m 644
@@ -35,7 +34,102 @@
 NORMAL_UNINSTALL = :
 PRE_UNINSTALL = :
 POST_UNINSTALL = :
+build_triplet = @build@
 host_triplet = @host@
+noinst_PROGRAMS = test-itdb$(EXEEXT) test-ls$(EXEEXT) \
+	test-checksum$(EXEEXT) test-firewire-id$(EXEEXT) \
+	$(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3)
+subdir = tests
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+ at HAVE_GDKPIXBUF_TRUE@am__EXEEXT_1 = test-thumbnails$(EXEEXT) \
+ at HAVE_GDKPIXBUF_TRUE@	test-write-thumbnails$(EXEEXT) \
+ at HAVE_GDKPIXBUF_TRUE@	test-photos$(EXEEXT) \
+ at HAVE_GDKPIXBUF_TRUE@	get-timezone$(EXEEXT)
+ at HAVE_TAGLIB_TRUE@am__EXEEXT_2 = test-rebuild-db$(EXEEXT)
+am__EXEEXT_3 = test-init-ipod$(EXEEXT)
+PROGRAMS = $(noinst_PROGRAMS)
+am_get_timezone_OBJECTS = get-timezone.$(OBJEXT)
+get_timezone_OBJECTS = $(am_get_timezone_OBJECTS)
+get_timezone_LDADD = $(LDADD)
+am_test_checksum_OBJECTS = test-checksum.$(OBJEXT)
+test_checksum_OBJECTS = $(am_test_checksum_OBJECTS)
+test_checksum_LDADD = $(LDADD)
+am_test_firewire_id_OBJECTS = test-fw-id.$(OBJEXT)
+test_firewire_id_OBJECTS = $(am_test_firewire_id_OBJECTS)
+test_firewire_id_LDADD = $(LDADD)
+am_test_init_ipod_OBJECTS = test-init-ipod.$(OBJEXT)
+test_init_ipod_OBJECTS = $(am_test_init_ipod_OBJECTS)
+test_init_ipod_DEPENDENCIES =
+am_test_itdb_OBJECTS = itdb_main.$(OBJEXT)
+test_itdb_OBJECTS = $(am_test_itdb_OBJECTS)
+test_itdb_DEPENDENCIES =
+am_test_ls_OBJECTS = test-ls.$(OBJEXT)
+test_ls_OBJECTS = $(am_test_ls_OBJECTS)
+test_ls_DEPENDENCIES =
+am__test_photos_SOURCES_DIST = test-photos.c
+ at HAVE_GDKPIXBUF_TRUE@am_test_photos_OBJECTS =  \
+ at HAVE_GDKPIXBUF_TRUE@	test_photos-test-photos.$(OBJEXT)
+test_photos_OBJECTS = $(am_test_photos_OBJECTS)
+test_photos_LDADD = $(LDADD)
+am__test_rebuild_db_SOURCES_DIST = test-rebuild-db.cc
+ at HAVE_TAGLIB_TRUE@am_test_rebuild_db_OBJECTS =  \
+ at HAVE_TAGLIB_TRUE@	test_rebuild_db-test-rebuild-db.$(OBJEXT)
+test_rebuild_db_OBJECTS = $(am_test_rebuild_db_OBJECTS)
+am__DEPENDENCIES_1 =
+ at HAVE_TAGLIB_TRUE@test_rebuild_db_DEPENDENCIES =  \
+ at HAVE_TAGLIB_TRUE@	$(am__DEPENDENCIES_1)
+am__test_thumbnails_SOURCES_DIST = test-covers.c
+ at HAVE_GDKPIXBUF_TRUE@am_test_thumbnails_OBJECTS =  \
+ at HAVE_GDKPIXBUF_TRUE@	test_thumbnails-test-covers.$(OBJEXT)
+test_thumbnails_OBJECTS = $(am_test_thumbnails_OBJECTS)
+test_thumbnails_LDADD = $(LDADD)
+am__test_write_thumbnails_SOURCES_DIST = test-write-covers.c
+ at HAVE_GDKPIXBUF_TRUE@am_test_write_thumbnails_OBJECTS = test_write_thumbnails-test-write-covers.$(OBJEXT)
+test_write_thumbnails_OBJECTS = $(am_test_write_thumbnails_OBJECTS)
+test_write_thumbnails_LDADD = $(LDADD)
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
+	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
+LTCXXCOMPILE = $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CXXFLAGS) $(CXXFLAGS)
+CXXLD = $(CXX)
+CXXLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+	$(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(get_timezone_SOURCES) $(test_checksum_SOURCES) \
+	$(test_firewire_id_SOURCES) $(test_init_ipod_SOURCES) \
+	$(test_itdb_SOURCES) $(test_ls_SOURCES) $(test_photos_SOURCES) \
+	$(test_rebuild_db_SOURCES) $(test_thumbnails_SOURCES) \
+	$(test_write_thumbnails_SOURCES)
+DIST_SOURCES = $(get_timezone_SOURCES) $(test_checksum_SOURCES) \
+	$(test_firewire_id_SOURCES) $(test_init_ipod_SOURCES) \
+	$(test_itdb_SOURCES) $(test_ls_SOURCES) \
+	$(am__test_photos_SOURCES_DIST) \
+	$(am__test_rebuild_db_SOURCES_DIST) \
+	$(am__test_thumbnails_SOURCES_DIST) \
+	$(am__test_write_thumbnails_SOURCES_DIST)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
 ALL_LINGUAS = @ALL_LINGUAS@
@@ -80,10 +174,19 @@
 GREP = @GREP@
 GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
 GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
 HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
 HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
 HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
 HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
 HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
 HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
 HTML_DIR = @HTML_DIR@
@@ -97,14 +200,12 @@
 INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
 INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
 INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
-INTLTOOL_ICONV = @INTLTOOL_ICONV@
 INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
 INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
 INTLTOOL_MERGE = @INTLTOOL_MERGE@
-INTLTOOL_MSGFMT = @INTLTOOL_MSGFMT@
-INTLTOOL_MSGMERGE = @INTLTOOL_MSGMERGE@
 INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
 INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
 INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
 INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
 INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
@@ -116,12 +217,14 @@
 INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
 INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
 INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
-INTLTOOL_XGETTEXT = @INTLTOOL_XGETTEXT@
 INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
 INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
 LDFLAGS = @LDFLAGS@
 LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@
 LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
 LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
 LIBGPOD_VERSION = @LIBGPOD_VERSION@
 LIBOBJS = @LIBOBJS@
@@ -149,6 +252,8 @@
 POSUB = @POSUB@
 PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
 PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
 PYTHON = @PYTHON@
 PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
 PYTHON_INCLUDES = @PYTHON_INCLUDES@
@@ -159,6 +264,7 @@
 RANLIB = @RANLIB@
 SED = @SED@
 SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
 SHELL = @SHELL@
 STRIP = @STRIP@
 SWIG = @SWIG@
@@ -178,6 +284,8 @@
 am__include = @am__include@
 am__leading_dot = @am__leading_dot@
 am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
 bindir = @bindir@
 build = @build@
 build_alias = @build_alias@
@@ -203,6 +311,7 @@
 localedir = @localedir@
 localstatedir = @localstatedir@
 mandir = @mandir@
+mkdir_p = @mkdir_p@
 oldincludedir = @oldincludedir@
 pdfdir = @pdfdir@
 pkgpyexecdir = @pkgpyexecdir@
@@ -217,163 +326,63 @@
 sysconfdir = @sysconfdir@
 target_alias = @target_alias@
 @HAVE_GDKPIXBUF_FALSE at TESTTHUMBS = 
- at HAVE_GDKPIXBUF_TRUE@TESTTHUMBS = test-thumbnails test-write-thumbnails test-photos get-timezone
-
+ at HAVE_GDKPIXBUF_TRUE@TESTTHUMBS = test-thumbnails test-write-thumbnails test-photos get-timezone 
 @HAVE_GDKPIXBUF_TRUE at test_thumbnails_SOURCES = test-covers.c
 @HAVE_GDKPIXBUF_TRUE at test_thumbnails_CFLAGS = $(AM_CFLAGS)
-
 @HAVE_GDKPIXBUF_TRUE at test_write_thumbnails_SOURCES = test-write-covers.c
 @HAVE_GDKPIXBUF_TRUE at test_write_thumbnails_CFLAGS = $(AM_CFLAGS)
-
 @HAVE_GDKPIXBUF_TRUE at test_photos_SOURCES = test-photos.c
 @HAVE_GDKPIXBUF_TRUE at test_photos_CFLAGS = $(AM_CFLAGS)
-
 TESTMISC = test-init-ipod
 @HAVE_TAGLIB_FALSE at TESTTAGLIB = 
-
 @HAVE_TAGLIB_TRUE at TESTTAGLIB = test-rebuild-db
 @HAVE_TAGLIB_TRUE at test_rebuild_db_SOURCES = test-rebuild-db.cc
 @HAVE_TAGLIB_TRUE at test_rebuild_db_LDADD = $(TAGLIB_LIBS)
 @HAVE_TAGLIB_TRUE at test_rebuild_db_CXXFLAGS = $(TAGLIB_CFLAGS)
-
 test_itdb_SOURCES = itdb_main.c
 test_itdb_LDADD = 
-
 test_ls_SOURCES = test-ls.c
 test_ls_LDADD = 
-
 test_init_ipod_SOURCES = test-init-ipod.c
 test_init_ipod_LDADD = 
-
+test_checksum_SOURCES = test-checksum.c
+test_firewire_id_SOURCES = test-fw-id.c
 get_timezone_SOURCES = get-timezone.c
-
-noinst_PROGRAMS = test-itdb test-ls $(TESTTHUMBS) $(TESTTAGLIB) $(TESTMISC)
-
 INCLUDES = $(LIBGPOD_CFLAGS) -I$(top_srcdir)/src -DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\"
-subdir = tests
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
-CONFIG_HEADER = $(top_builddir)/config.h
-CONFIG_CLEAN_FILES =
- at HAVE_GDKPIXBUF_FALSE@@HAVE_TAGLIB_TRUE at noinst_PROGRAMS = \
- at HAVE_GDKPIXBUF_FALSE@@HAVE_TAGLIB_TRUE@	test-itdb$(EXEEXT) \
- at HAVE_GDKPIXBUF_FALSE@@HAVE_TAGLIB_TRUE@	test-ls$(EXEEXT) \
- at HAVE_GDKPIXBUF_FALSE@@HAVE_TAGLIB_TRUE@	test-rebuild-db$(EXEEXT) \
- at HAVE_GDKPIXBUF_FALSE@@HAVE_TAGLIB_TRUE@	test-init-ipod$(EXEEXT)
- at HAVE_GDKPIXBUF_FALSE@@HAVE_TAGLIB_FALSE at noinst_PROGRAMS = \
- at HAVE_GDKPIXBUF_FALSE@@HAVE_TAGLIB_FALSE@	test-itdb$(EXEEXT) \
- at HAVE_GDKPIXBUF_FALSE@@HAVE_TAGLIB_FALSE@	test-ls$(EXEEXT) \
- at HAVE_GDKPIXBUF_FALSE@@HAVE_TAGLIB_FALSE@	test-init-ipod$(EXEEXT)
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_TRUE at noinst_PROGRAMS = \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_TRUE@	test-itdb$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_TRUE@	test-ls$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_TRUE@	test-thumbnails$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_TRUE@	test-write-thumbnails$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_TRUE@	test-photos$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_TRUE@	get-timezone$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_TRUE@	test-rebuild-db$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_TRUE@	test-init-ipod$(EXEEXT)
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_FALSE at noinst_PROGRAMS = \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_FALSE@	test-itdb$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_FALSE@	test-ls$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_FALSE@	test-thumbnails$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_FALSE@	test-write-thumbnails$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_FALSE@	test-photos$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_FALSE@	get-timezone$(EXEEXT) \
- at HAVE_GDKPIXBUF_TRUE@@HAVE_TAGLIB_FALSE@	test-init-ipod$(EXEEXT)
-PROGRAMS = $(noinst_PROGRAMS)
-
-am_get_timezone_OBJECTS = get-timezone.$(OBJEXT)
-get_timezone_OBJECTS = $(am_get_timezone_OBJECTS)
-get_timezone_LDADD = $(LDADD)
-get_timezone_DEPENDENCIES =
-get_timezone_LDFLAGS =
-am_test_init_ipod_OBJECTS = test-init-ipod.$(OBJEXT)
-test_init_ipod_OBJECTS = $(am_test_init_ipod_OBJECTS)
-test_init_ipod_DEPENDENCIES =
-test_init_ipod_LDFLAGS =
-am_test_itdb_OBJECTS = itdb_main.$(OBJEXT)
-test_itdb_OBJECTS = $(am_test_itdb_OBJECTS)
-test_itdb_DEPENDENCIES =
-test_itdb_LDFLAGS =
-am_test_ls_OBJECTS = test-ls.$(OBJEXT)
-test_ls_OBJECTS = $(am_test_ls_OBJECTS)
-test_ls_DEPENDENCIES =
-test_ls_LDFLAGS =
-am__test_photos_SOURCES_DIST = test-photos.c
- at HAVE_GDKPIXBUF_TRUE@am_test_photos_OBJECTS = \
- at HAVE_GDKPIXBUF_TRUE@	test_photos-test-photos.$(OBJEXT)
-test_photos_OBJECTS = $(am_test_photos_OBJECTS)
-test_photos_LDADD = $(LDADD)
-test_photos_DEPENDENCIES =
-test_photos_LDFLAGS =
-am__test_rebuild_db_SOURCES_DIST = test-rebuild-db.cc
- at HAVE_TAGLIB_TRUE@am_test_rebuild_db_OBJECTS = \
- at HAVE_TAGLIB_TRUE@	test_rebuild_db-test-rebuild-db.$(OBJEXT)
-test_rebuild_db_OBJECTS = $(am_test_rebuild_db_OBJECTS)
- at HAVE_TAGLIB_TRUE@test_rebuild_db_DEPENDENCIES =
- at HAVE_TAGLIB_FALSE@test_rebuild_db_DEPENDENCIES =
-test_rebuild_db_LDFLAGS =
-am__test_thumbnails_SOURCES_DIST = test-covers.c
- at HAVE_GDKPIXBUF_TRUE@am_test_thumbnails_OBJECTS = \
- at HAVE_GDKPIXBUF_TRUE@	test_thumbnails-test-covers.$(OBJEXT)
-test_thumbnails_OBJECTS = $(am_test_thumbnails_OBJECTS)
-test_thumbnails_LDADD = $(LDADD)
-test_thumbnails_DEPENDENCIES =
-test_thumbnails_LDFLAGS =
-am__test_write_thumbnails_SOURCES_DIST = test-write-covers.c
- at HAVE_GDKPIXBUF_TRUE@am_test_write_thumbnails_OBJECTS = \
- at HAVE_GDKPIXBUF_TRUE@	test_write_thumbnails-test-write-covers.$(OBJEXT)
-test_write_thumbnails_OBJECTS = $(am_test_write_thumbnails_OBJECTS)
-test_write_thumbnails_LDADD = $(LDADD)
-test_write_thumbnails_DEPENDENCIES =
-test_write_thumbnails_LDFLAGS =
-
-DEFAULT_INCLUDES =  -I. -I$(srcdir) -I$(top_builddir)
-depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
- at AMDEP_TRUE@DEP_FILES = ./$(DEPDIR)/get-timezone.Po \
- at AMDEP_TRUE@	./$(DEPDIR)/itdb_main.Po \
- at AMDEP_TRUE@	./$(DEPDIR)/test-init-ipod.Po \
- at AMDEP_TRUE@	./$(DEPDIR)/test-ls.Po \
- at AMDEP_TRUE@	./$(DEPDIR)/test_photos-test-photos.Po \
- at AMDEP_TRUE@	./$(DEPDIR)/test_rebuild_db-test-rebuild-db.Po \
- at AMDEP_TRUE@	./$(DEPDIR)/test_thumbnails-test-covers.Po \
- at AMDEP_TRUE@	./$(DEPDIR)/test_write_thumbnails-test-write-covers.Po
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
-	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) \
-	$(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
-	$(AM_LDFLAGS) $(LDFLAGS) -o $@
-CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
-	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
-LTCXXCOMPILE = $(LIBTOOL) --mode=compile $(CXX) $(DEFS) \
-	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
-	$(AM_CXXFLAGS) $(CXXFLAGS)
-CXXLD = $(CXX)
-CXXLINK = $(LIBTOOL) --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) \
-	$(AM_LDFLAGS) $(LDFLAGS) -o $@
-DIST_SOURCES = $(get_timezone_SOURCES) $(test_init_ipod_SOURCES) \
-	$(test_itdb_SOURCES) $(test_ls_SOURCES) \
-	$(am__test_photos_SOURCES_DIST) \
-	$(am__test_rebuild_db_SOURCES_DIST) \
-	$(am__test_thumbnails_SOURCES_DIST) \
-	$(am__test_write_thumbnails_SOURCES_DIST)
-DIST_COMMON = $(srcdir)/Makefile.in Makefile.am
-SOURCES = $(get_timezone_SOURCES) $(test_init_ipod_SOURCES) $(test_itdb_SOURCES) $(test_ls_SOURCES) $(test_photos_SOURCES) $(test_rebuild_db_SOURCES) $(test_thumbnails_SOURCES) $(test_write_thumbnails_SOURCES)
-
 all: all-am
 
 .SUFFIXES:
 .SUFFIXES: .c .cc .lo .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ Makefile.am  $(top_srcdir)/configure.ac $(ACLOCAL_M4)
+$(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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  tests/Makefile'; \
 	cd $(top_srcdir) && \
 	  $(AUTOMAKE) --gnu  tests/Makefile
-Makefile: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.in  $(top_builddir)/config.status
-	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)
+.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
+
 clean-noinstPROGRAMS:
 	@list='$(noinst_PROGRAMS)'; for p in $$list; do \
 	  f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
@@ -383,6 +392,12 @@
 get-timezone$(EXEEXT): $(get_timezone_OBJECTS) $(get_timezone_DEPENDENCIES) 
 	@rm -f get-timezone$(EXEEXT)
 	$(LINK) $(get_timezone_LDFLAGS) $(get_timezone_OBJECTS) $(get_timezone_LDADD) $(LIBS)
+test-checksum$(EXEEXT): $(test_checksum_OBJECTS) $(test_checksum_DEPENDENCIES) 
+	@rm -f test-checksum$(EXEEXT)
+	$(LINK) $(test_checksum_LDFLAGS) $(test_checksum_OBJECTS) $(test_checksum_LDADD) $(LIBS)
+test-firewire-id$(EXEEXT): $(test_firewire_id_OBJECTS) $(test_firewire_id_DEPENDENCIES) 
+	@rm -f test-firewire-id$(EXEEXT)
+	$(LINK) $(test_firewire_id_LDFLAGS) $(test_firewire_id_OBJECTS) $(test_firewire_id_LDADD) $(LIBS)
 test-init-ipod$(EXEEXT): $(test_init_ipod_OBJECTS) $(test_init_ipod_DEPENDENCIES) 
 	@rm -f test-init-ipod$(EXEEXT)
 	$(LINK) $(test_init_ipod_LDFLAGS) $(test_init_ipod_OBJECTS) $(test_init_ipod_LDADD) $(LIBS)
@@ -406,13 +421,15 @@
 	$(LINK) $(test_write_thumbnails_LDFLAGS) $(test_write_thumbnails_OBJECTS) $(test_write_thumbnails_LDADD) $(LIBS)
 
 mostlyclean-compile:
-	-rm -f *.$(OBJEXT) core *.core
+	-rm -f *.$(OBJEXT)
 
 distclean-compile:
 	-rm -f *.tab.c
 
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/get-timezone.Po at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/itdb_main.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/test-checksum.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/test-fw-id.Po at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/test-init-ipod.Po at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/test-ls.Po at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/test_photos-test-photos.Po at am__quote@
@@ -421,203 +438,103 @@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/test_write_thumbnails-test-write-covers.Po at am__quote@
 
 .c.o:
- at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(COMPILE) -c $<
 
 .c.obj:
- at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(COMPILE) -c `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
 .c.lo:
- at am__fastdepCC_TRUE@	if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
 
 test_photos-test-photos.o: test-photos.c
- at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_photos_CFLAGS) $(CFLAGS) -MT test_photos-test-photos.o -MD -MP -MF "$(DEPDIR)/test_photos-test-photos.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o test_photos-test-photos.o `test -f 'test-photos.c' || echo '$(srcdir)/'`test-photos.c; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_photos-test-photos.Tpo" "$(DEPDIR)/test_photos-test-photos.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/test_photos-test-photos.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_photos_CFLAGS) $(CFLAGS) -MT test_photos-test-photos.o -MD -MP -MF "$(DEPDIR)/test_photos-test-photos.Tpo" -c -o test_photos-test-photos.o `test -f 'test-photos.c' || echo '$(srcdir)/'`test-photos.c; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_photos-test-photos.Tpo" "$(DEPDIR)/test_photos-test-photos.Po"; else rm -f "$(DEPDIR)/test_photos-test-photos.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='test-photos.c' object='test_photos-test-photos.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/test_photos-test-photos.Po' tmpdepfile='$(DEPDIR)/test_photos-test-photos.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_photos_CFLAGS) $(CFLAGS) -c -o test_photos-test-photos.o `test -f 'test-photos.c' || echo '$(srcdir)/'`test-photos.c
 
 test_photos-test-photos.obj: test-photos.c
- at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_photos_CFLAGS) $(CFLAGS) -MT test_photos-test-photos.obj -MD -MP -MF "$(DEPDIR)/test_photos-test-photos.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o test_photos-test-photos.obj `if test -f 'test-photos.c'; then $(CYGPATH_W) 'test-photos.c'; else $(CYGPATH_W) '$(srcdir)/test-photos.c'; fi`; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_photos-test-photos.Tpo" "$(DEPDIR)/test_photos-test-photos.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/test_photos-test-photos.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_photos_CFLAGS) $(CFLAGS) -MT test_photos-test-photos.obj -MD -MP -MF "$(DEPDIR)/test_photos-test-photos.Tpo" -c -o test_photos-test-photos.obj `if test -f 'test-photos.c'; then $(CYGPATH_W) 'test-photos.c'; else $(CYGPATH_W) '$(srcdir)/test-photos.c'; fi`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_photos-test-photos.Tpo" "$(DEPDIR)/test_photos-test-photos.Po"; else rm -f "$(DEPDIR)/test_photos-test-photos.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='test-photos.c' object='test_photos-test-photos.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/test_photos-test-photos.Po' tmpdepfile='$(DEPDIR)/test_photos-test-photos.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_photos_CFLAGS) $(CFLAGS) -c -o test_photos-test-photos.obj `if test -f 'test-photos.c'; then $(CYGPATH_W) 'test-photos.c'; else $(CYGPATH_W) '$(srcdir)/test-photos.c'; fi`
 
-test_photos-test-photos.lo: test-photos.c
- at am__fastdepCC_TRUE@	if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_photos_CFLAGS) $(CFLAGS) -MT test_photos-test-photos.lo -MD -MP -MF "$(DEPDIR)/test_photos-test-photos.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o test_photos-test-photos.lo `test -f 'test-photos.c' || echo '$(srcdir)/'`test-photos.c; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_photos-test-photos.Tpo" "$(DEPDIR)/test_photos-test-photos.Plo"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/test_photos-test-photos.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='test-photos.c' object='test_photos-test-photos.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/test_photos-test-photos.Plo' tmpdepfile='$(DEPDIR)/test_photos-test-photos.TPlo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_photos_CFLAGS) $(CFLAGS) -c -o test_photos-test-photos.lo `test -f 'test-photos.c' || echo '$(srcdir)/'`test-photos.c
-
 test_thumbnails-test-covers.o: test-covers.c
- at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_thumbnails_CFLAGS) $(CFLAGS) -MT test_thumbnails-test-covers.o -MD -MP -MF "$(DEPDIR)/test_thumbnails-test-covers.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o test_thumbnails-test-covers.o `test -f 'test-covers.c' || echo '$(srcdir)/'`test-covers.c; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_thumbnails-test-covers.Tpo" "$(DEPDIR)/test_thumbnails-test-covers.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/test_thumbnails-test-covers.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_thumbnails_CFLAGS) $(CFLAGS) -MT test_thumbnails-test-covers.o -MD -MP -MF "$(DEPDIR)/test_thumbnails-test-covers.Tpo" -c -o test_thumbnails-test-covers.o `test -f 'test-covers.c' || echo '$(srcdir)/'`test-covers.c; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_thumbnails-test-covers.Tpo" "$(DEPDIR)/test_thumbnails-test-covers.Po"; else rm -f "$(DEPDIR)/test_thumbnails-test-covers.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='test-covers.c' object='test_thumbnails-test-covers.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/test_thumbnails-test-covers.Po' tmpdepfile='$(DEPDIR)/test_thumbnails-test-covers.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_thumbnails_CFLAGS) $(CFLAGS) -c -o test_thumbnails-test-covers.o `test -f 'test-covers.c' || echo '$(srcdir)/'`test-covers.c
 
 test_thumbnails-test-covers.obj: test-covers.c
- at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_thumbnails_CFLAGS) $(CFLAGS) -MT test_thumbnails-test-covers.obj -MD -MP -MF "$(DEPDIR)/test_thumbnails-test-covers.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o test_thumbnails-test-covers.obj `if test -f 'test-covers.c'; then $(CYGPATH_W) 'test-covers.c'; else $(CYGPATH_W) '$(srcdir)/test-covers.c'; fi`; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_thumbnails-test-covers.Tpo" "$(DEPDIR)/test_thumbnails-test-covers.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/test_thumbnails-test-covers.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_thumbnails_CFLAGS) $(CFLAGS) -MT test_thumbnails-test-covers.obj -MD -MP -MF "$(DEPDIR)/test_thumbnails-test-covers.Tpo" -c -o test_thumbnails-test-covers.obj `if test -f 'test-covers.c'; then $(CYGPATH_W) 'test-covers.c'; else $(CYGPATH_W) '$(srcdir)/test-covers.c'; fi`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_thumbnails-test-covers.Tpo" "$(DEPDIR)/test_thumbnails-test-covers.Po"; else rm -f "$(DEPDIR)/test_thumbnails-test-covers.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='test-covers.c' object='test_thumbnails-test-covers.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/test_thumbnails-test-covers.Po' tmpdepfile='$(DEPDIR)/test_thumbnails-test-covers.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_thumbnails_CFLAGS) $(CFLAGS) -c -o test_thumbnails-test-covers.obj `if test -f 'test-covers.c'; then $(CYGPATH_W) 'test-covers.c'; else $(CYGPATH_W) '$(srcdir)/test-covers.c'; fi`
 
-test_thumbnails-test-covers.lo: test-covers.c
- at am__fastdepCC_TRUE@	if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_thumbnails_CFLAGS) $(CFLAGS) -MT test_thumbnails-test-covers.lo -MD -MP -MF "$(DEPDIR)/test_thumbnails-test-covers.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o test_thumbnails-test-covers.lo `test -f 'test-covers.c' || echo '$(srcdir)/'`test-covers.c; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_thumbnails-test-covers.Tpo" "$(DEPDIR)/test_thumbnails-test-covers.Plo"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/test_thumbnails-test-covers.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='test-covers.c' object='test_thumbnails-test-covers.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/test_thumbnails-test-covers.Plo' tmpdepfile='$(DEPDIR)/test_thumbnails-test-covers.TPlo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_thumbnails_CFLAGS) $(CFLAGS) -c -o test_thumbnails-test-covers.lo `test -f 'test-covers.c' || echo '$(srcdir)/'`test-covers.c
-
 test_write_thumbnails-test-write-covers.o: test-write-covers.c
- at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_write_thumbnails_CFLAGS) $(CFLAGS) -MT test_write_thumbnails-test-write-covers.o -MD -MP -MF "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o test_write_thumbnails-test-write-covers.o `test -f 'test-write-covers.c' || echo '$(srcdir)/'`test-write-covers.c; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo" "$(DEPDIR)/test_write_thumbnails-test-write-covers.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_write_thumbnails_CFLAGS) $(CFLAGS) -MT test_write_thumbnails-test-write-covers.o -MD -MP -MF "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo" -c -o test_write_thumbnails-test-write-covers.o `test -f 'test-write-covers.c' || echo '$(srcdir)/'`test-write-covers.c; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo" "$(DEPDIR)/test_write_thumbnails-test-write-covers.Po"; else rm -f "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='test-write-covers.c' object='test_write_thumbnails-test-write-covers.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/test_write_thumbnails-test-write-covers.Po' tmpdepfile='$(DEPDIR)/test_write_thumbnails-test-write-covers.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_write_thumbnails_CFLAGS) $(CFLAGS) -c -o test_write_thumbnails-test-write-covers.o `test -f 'test-write-covers.c' || echo '$(srcdir)/'`test-write-covers.c
 
 test_write_thumbnails-test-write-covers.obj: test-write-covers.c
- at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_write_thumbnails_CFLAGS) $(CFLAGS) -MT test_write_thumbnails-test-write-covers.obj -MD -MP -MF "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o test_write_thumbnails-test-write-covers.obj `if test -f 'test-write-covers.c'; then $(CYGPATH_W) 'test-write-covers.c'; else $(CYGPATH_W) '$(srcdir)/test-write-covers.c'; fi`; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo" "$(DEPDIR)/test_write_thumbnails-test-write-covers.Po"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_write_thumbnails_CFLAGS) $(CFLAGS) -MT test_write_thumbnails-test-write-covers.obj -MD -MP -MF "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo" -c -o test_write_thumbnails-test-write-covers.obj `if test -f 'test-write-covers.c'; then $(CYGPATH_W) 'test-write-covers.c'; else $(CYGPATH_W) '$(srcdir)/test-write-covers.c'; fi`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo" "$(DEPDIR)/test_write_thumbnails-test-write-covers.Po"; else rm -f "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	source='test-write-covers.c' object='test_write_thumbnails-test-write-covers.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/test_write_thumbnails-test-write-covers.Po' tmpdepfile='$(DEPDIR)/test_write_thumbnails-test-write-covers.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_write_thumbnails_CFLAGS) $(CFLAGS) -c -o test_write_thumbnails-test-write-covers.obj `if test -f 'test-write-covers.c'; then $(CYGPATH_W) 'test-write-covers.c'; else $(CYGPATH_W) '$(srcdir)/test-write-covers.c'; fi`
 
-test_write_thumbnails-test-write-covers.lo: test-write-covers.c
- at am__fastdepCC_TRUE@	if $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_write_thumbnails_CFLAGS) $(CFLAGS) -MT test_write_thumbnails-test-write-covers.lo -MD -MP -MF "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo" \
- at am__fastdepCC_TRUE@	  -c -o test_write_thumbnails-test-write-covers.lo `test -f 'test-write-covers.c' || echo '$(srcdir)/'`test-write-covers.c; \
- at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo" "$(DEPDIR)/test_write_thumbnails-test-write-covers.Plo"; \
- at am__fastdepCC_TRUE@	else rm -f "$(DEPDIR)/test_write_thumbnails-test-write-covers.Tpo"; exit 1; \
- at am__fastdepCC_TRUE@	fi
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='test-write-covers.c' object='test_write_thumbnails-test-write-covers.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	depfile='$(DEPDIR)/test_write_thumbnails-test-write-covers.Plo' tmpdepfile='$(DEPDIR)/test_write_thumbnails-test-write-covers.TPlo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	$(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(LIBTOOL) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_write_thumbnails_CFLAGS) $(CFLAGS) -c -o test_write_thumbnails-test-write-covers.lo `test -f 'test-write-covers.c' || echo '$(srcdir)/'`test-write-covers.c
-
 .cc.o:
- at am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCXX_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
- at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
- at am__fastdepCXX_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCXX_TRUE@	fi
+ at am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+ at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ $<
 
 .cc.obj:
- at am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCXX_TRUE@	  -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`; \
- at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; \
- at am__fastdepCXX_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCXX_TRUE@	fi
+ at am__fastdepCXX_TRUE@	if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+ at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ `if test -f '$<'; then $(CYGPATH_W) '$<'; else $(CYGPATH_W) '$(srcdir)/$<'; fi`
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@	$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
 
 .cc.lo:
- at am__fastdepCXX_TRUE@	if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" \
- at am__fastdepCXX_TRUE@	  -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<; \
- at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; \
- at am__fastdepCXX_TRUE@	else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \
- at am__fastdepCXX_TRUE@	fi
+ at am__fastdepCXX_TRUE@	if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+ at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	depfile='$(DEPDIR)/$*.Plo' tmpdepfile='$(DEPDIR)/$*.TPlo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@	$(LTCXXCOMPILE) -c -o $@ `test -f '$<' || echo '$(srcdir)/'`$<
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCXX_FALSE@	$(LTCXXCOMPILE) -c -o $@ $<
 
 test_rebuild_db-test-rebuild-db.o: test-rebuild-db.cc
- at am__fastdepCXX_TRUE@	if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_rebuild_db_CXXFLAGS) $(CXXFLAGS) -MT test_rebuild_db-test-rebuild-db.o -MD -MP -MF "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo" \
- at am__fastdepCXX_TRUE@	  -c -o test_rebuild_db-test-rebuild-db.o `test -f 'test-rebuild-db.cc' || echo '$(srcdir)/'`test-rebuild-db.cc; \
- at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo" "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Po"; \
- at am__fastdepCXX_TRUE@	else rm -f "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo"; exit 1; \
- at am__fastdepCXX_TRUE@	fi
+ at am__fastdepCXX_TRUE@	if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_rebuild_db_CXXFLAGS) $(CXXFLAGS) -MT test_rebuild_db-test-rebuild-db.o -MD -MP -MF "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo" -c -o test_rebuild_db-test-rebuild-db.o `test -f 'test-rebuild-db.cc' || echo '$(srcdir)/'`test-rebuild-db.cc; \
+ at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo" "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Po"; else rm -f "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='test-rebuild-db.cc' object='test_rebuild_db-test-rebuild-db.o' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	depfile='$(DEPDIR)/test_rebuild_db-test-rebuild-db.Po' tmpdepfile='$(DEPDIR)/test_rebuild_db-test-rebuild-db.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_rebuild_db_CXXFLAGS) $(CXXFLAGS) -c -o test_rebuild_db-test-rebuild-db.o `test -f 'test-rebuild-db.cc' || echo '$(srcdir)/'`test-rebuild-db.cc
 
 test_rebuild_db-test-rebuild-db.obj: test-rebuild-db.cc
- at am__fastdepCXX_TRUE@	if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_rebuild_db_CXXFLAGS) $(CXXFLAGS) -MT test_rebuild_db-test-rebuild-db.obj -MD -MP -MF "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo" \
- at am__fastdepCXX_TRUE@	  -c -o test_rebuild_db-test-rebuild-db.obj `if test -f 'test-rebuild-db.cc'; then $(CYGPATH_W) 'test-rebuild-db.cc'; else $(CYGPATH_W) '$(srcdir)/test-rebuild-db.cc'; fi`; \
- at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo" "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Po"; \
- at am__fastdepCXX_TRUE@	else rm -f "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo"; exit 1; \
- at am__fastdepCXX_TRUE@	fi
+ at am__fastdepCXX_TRUE@	if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_rebuild_db_CXXFLAGS) $(CXXFLAGS) -MT test_rebuild_db-test-rebuild-db.obj -MD -MP -MF "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo" -c -o test_rebuild_db-test-rebuild-db.obj `if test -f 'test-rebuild-db.cc'; then $(CYGPATH_W) 'test-rebuild-db.cc'; else $(CYGPATH_W) '$(srcdir)/test-rebuild-db.cc'; fi`; \
+ at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo" "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Po"; else rm -f "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo"; exit 1; fi
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='test-rebuild-db.cc' object='test_rebuild_db-test-rebuild-db.obj' libtool=no @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	depfile='$(DEPDIR)/test_rebuild_db-test-rebuild-db.Po' tmpdepfile='$(DEPDIR)/test_rebuild_db-test-rebuild-db.TPo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_rebuild_db_CXXFLAGS) $(CXXFLAGS) -c -o test_rebuild_db-test-rebuild-db.obj `if test -f 'test-rebuild-db.cc'; then $(CYGPATH_W) 'test-rebuild-db.cc'; else $(CYGPATH_W) '$(srcdir)/test-rebuild-db.cc'; fi`
 
-test_rebuild_db-test-rebuild-db.lo: test-rebuild-db.cc
- at am__fastdepCXX_TRUE@	if $(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_rebuild_db_CXXFLAGS) $(CXXFLAGS) -MT test_rebuild_db-test-rebuild-db.lo -MD -MP -MF "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo" \
- at am__fastdepCXX_TRUE@	  -c -o test_rebuild_db-test-rebuild-db.lo `test -f 'test-rebuild-db.cc' || echo '$(srcdir)/'`test-rebuild-db.cc; \
- at am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo" "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Plo"; \
- at am__fastdepCXX_TRUE@	else rm -f "$(DEPDIR)/test_rebuild_db-test-rebuild-db.Tpo"; exit 1; \
- at am__fastdepCXX_TRUE@	fi
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='test-rebuild-db.cc' object='test_rebuild_db-test-rebuild-db.lo' libtool=yes @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	depfile='$(DEPDIR)/test_rebuild_db-test-rebuild-db.Plo' tmpdepfile='$(DEPDIR)/test_rebuild_db-test-rebuild-db.TPlo' @AMDEPBACKSLASH@
- at AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCXX_FALSE@	$(LIBTOOL) --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(test_rebuild_db_CXXFLAGS) $(CXXFLAGS) -c -o test_rebuild_db-test-rebuild-db.lo `test -f 'test-rebuild-db.cc' || echo '$(srcdir)/'`test-rebuild-db.cc
-
 mostlyclean-libtool:
 	-rm -f *.lo
 
@@ -628,14 +545,6 @@
 	-rm -f libtool
 uninstall-info-am:
 
-ETAGS = etags
-ETAGSFLAGS =
-
-CTAGS = ctags
-CTAGSFLAGS =
-
-tags: TAGS
-
 ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
 	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
 	unique=`for i in $$list; do \
@@ -644,6 +553,7 @@
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
 	mkid -fID $$unique
+tags: TAGS
 
 TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
@@ -655,10 +565,11 @@
 	  done | \
 	  $(AWK) '    { files[$$0] = 1; } \
 	       END { for (i in files) print i; }'`; \
-	test -z "$(ETAGS_ARGS)$$tags$$unique" \
-	  || $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
-	     $$tags $$unique
-
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
 ctags: CTAGS
 CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
 		$(TAGS_FILES) $(LISP)
@@ -681,11 +592,7 @@
 
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 
-top_distdir = ..
-distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
-
 distdir: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
@@ -698,7 +605,7 @@
 	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
 	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
 	    dir="/$$dir"; \
-	    $(mkinstalldirs) "$(distdir)$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
 	  else \
 	    dir=''; \
 	  fi; \
@@ -716,7 +623,6 @@
 check-am: all-am
 check: check-am
 all-am: Makefile $(PROGRAMS)
-
 installdirs:
 install: install-am
 install-exec: install-exec-am
@@ -737,7 +643,7 @@
 clean-generic:
 
 distclean-generic:
-	-rm -f $(CONFIG_CLEAN_FILES)
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
 
 maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
@@ -757,6 +663,8 @@
 
 dvi-am:
 
+html: html-am
+
 info: info-am
 
 info-am:
@@ -794,13 +702,14 @@
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
 	clean-libtool clean-noinstPROGRAMS ctags distclean \
 	distclean-compile distclean-generic distclean-libtool \
-	distclean-tags distdir dvi dvi-am info info-am install \
-	install-am install-data install-data-am install-exec \
+	distclean-tags distdir dvi dvi-am html html-am info info-am \
+	install install-am install-data install-data-am install-exec \
 	install-exec-am install-info install-info-am install-man \
 	install-strip installcheck installcheck-am installdirs \
 	maintainer-clean maintainer-clean-generic mostlyclean \
-	mostlyclean-compile mostlyclean-generic mostlyclean-libtool pdf \
-	pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-am
+	mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
+	pdf pdf-am ps ps-am tags uninstall uninstall-am \
+	uninstall-info-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.

Modified: libgpod/branches/upstream/current/tests/itdb_main.c
===================================================================
--- libgpod/branches/upstream/current/tests/itdb_main.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/tests/itdb_main.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -22,7 +22,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_main.c 1100 2005-09-23 16:59:34Z jcsjcs $
+|  $Id: itdb_main.c,v 1.3 2005/09/23 16:59:34 jcsjcs Exp $
 */
 /*
  * Initial main.c file generated by Glade. Edit as required.

Added: libgpod/branches/upstream/current/tests/test-checksum.c
===================================================================
--- libgpod/branches/upstream/current/tests/test-checksum.c	                        (rev 0)
+++ libgpod/branches/upstream/current/tests/test-checksum.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,181 @@
+/*
+|  Copyright (C) 2007 Christophe Fergeau <teuf at gnome.org>
+|
+|  The code in this file is heavily based on the proof-of-concept code
+|  written by wtbw
+|
+| Redistribution and use in source and binary forms, with or without
+| modification, are permitted provided that the following conditions are met:
+|
+|   1. Redistributions of source code must retain the above copyright
+| notice, this list of conditions and the following disclaimer.
+|   2. Redistributions in binary form must reproduce the above copyright
+| notice, this list of conditions and the following disclaimer in the
+| documentation and/or other materials provided with the distribution.
+|   3. The name of the author may not be used to endorse or promote
+| products derived from this software without specific prior written
+| permission.
+|
+| THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+| IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+| OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+| IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+| INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+| BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+| OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+| ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+| OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+| OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
+| OF SUCH DAMAGE.
+|
+|
+|  iTunes and iPod are trademarks of Apple
+|
+|  This product is not supported/written/published by Apple!
+*/
+#ifdef HAVE_CONFIG_H
+#  include <config.h>
+#endif
+
+#include <glib.h>
+
+#include <errno.h>
+#include <fcntl.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <sys/mman.h>
+#include <sys/stat.h>
+
+#include "itdb.h"
+#include "itdb_sha1.h"
+
+static unsigned char *
+calculate_db_checksum (const char *itdb_path, guint64 fwid)
+{
+    int fd;
+    struct stat stat_buf;
+    int result;
+    unsigned char *itdb_data;
+    unsigned char *checksum;
+
+    fd = open (itdb_path, O_RDONLY);
+    if (fd < 0) {
+	g_warning ("Couldn't open %s", itdb_path);
+	return NULL;
+    }
+
+    result = fstat (fd, &stat_buf);
+    if (result != 0) {
+	g_warning ("Couldn't stat %s", itdb_path);
+	close (fd);
+	return NULL;
+    }
+
+    if (stat_buf.st_size < 0x80) {
+	g_warning ("%s is too small", itdb_path);
+	close (fd);
+	return NULL;
+    }
+
+    itdb_data = mmap (NULL, stat_buf.st_size, 
+		      PROT_READ | PROT_WRITE, 
+		      MAP_PRIVATE, fd, 0);
+    if (itdb_data == MAP_FAILED) {
+	g_warning ("Couldn't mmap %s", itdb_path);
+	close (fd);
+	return NULL;
+    }
+
+    /* Those fields must be zero'ed out for the sha1 calculation */
+    memset(itdb_data+0x18, 0, 8);
+    memset(itdb_data+0x32, 0, 20);
+    memset(itdb_data+0x58, 0, 20);
+
+    checksum = itdb_compute_hash (fwid, itdb_data, stat_buf.st_size, NULL);
+
+    munmap (itdb_data, stat_buf.st_size);
+    close (fd);
+
+    return checksum;
+}
+
+static gboolean write_checksum_to_file (const char *path, 
+					const unsigned char *checksum,
+					size_t size)
+{
+    FILE *f;
+    int result;
+    size_t count;
+
+    f = fopen (path, "rb+");
+    if (f == NULL) {
+	return FALSE;
+    }
+    
+    result = fseek (f, 0x58, SEEK_SET);
+    if (result != 0) {
+	fclose (f);
+	return FALSE;
+    }
+    
+    count = fwrite (checksum, size, 1, f);
+    fclose (f);
+   
+    return (count == 1);
+}
+
+int
+main (int argc, char *argv[])
+{
+    char *itdb_path;
+    guint64 firewire_id;
+    unsigned char *checksum;
+    int i;
+
+    if (argc < 3) {
+	g_print ("Usage: %s <mountpoint> <firewire_id> [write]\n"
+		 "       firewire_id in hexadecimal, e.g. 00A745....\n"
+		 "       If any third argument is given, the checksum is written back to the iTunesDB.\n",
+		 g_basename(argv[0]));
+	exit (0);
+    }
+    
+    errno = 0;
+    firewire_id = strtoull (argv[2], NULL, 16);
+    if (errno != 0) {
+	g_warning ("Couldn't parse %s as a firewire ID\n", argv[2]);
+	exit (0);	
+    }
+
+    itdb_path = itdb_get_itunesdb_path (argv[1]);
+    checksum = calculate_db_checksum (itdb_path, firewire_id);
+
+    if (argc >= 4)
+    {
+	gboolean success;
+
+	success = write_checksum_to_file (itdb_path, checksum, 20);
+	if (!success)
+	{
+	    g_warning ("Couldn't write checksum back to file '%s'\n",
+		       argv[1]);
+	}
+    }
+
+    g_free (itdb_path);
+    
+    if (checksum == NULL) {
+	g_warning ("Couldn't compute checksum");
+	exit (0);
+    }
+
+    for (i = 0; i < strlen ((char *)checksum); i++) {
+	g_print ("%02x ", checksum[i]);
+    }
+    g_print ("\n");
+    g_free (checksum);
+
+    return 0;
+}

Modified: libgpod/branches/upstream/current/tests/test-covers.c
===================================================================
--- libgpod/branches/upstream/current/tests/test-covers.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/tests/test-covers.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -47,8 +47,8 @@
 static void
 save_song_thumbnails (Itdb_Track *song)
 {
+        static gint count = 0;
 	GList *it;
-	
 	for (it = song->artwork->thumbnails; it != NULL; it = it->next) {
 		Itdb_Thumb *thumb;
 		gchar *filename;
@@ -57,7 +57,8 @@
 		g_return_if_fail (thumb);
 
 		filename = NULL;
-		filename = g_strdup_printf ("%s-%s-%s-%d-%016"G_GINT64_MODIFIER"x.png",
+		filename = g_strdup_printf ("%03d_%s-%s-%s-%d-%016"G_GINT64_MODIFIER"x.png",
+					    count++,
 					    song->artist, song->album, 
 					    song->title, thumb->type, 
 					    song->dbid);

Added: libgpod/branches/upstream/current/tests/test-fw-id.c
===================================================================
--- libgpod/branches/upstream/current/tests/test-fw-id.c	                        (rev 0)
+++ libgpod/branches/upstream/current/tests/test-fw-id.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,65 @@
+/*
+|   Copyright (C) 2007 Christophe Fergeau  <teuf at gnome.org>
+|
+|   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 of the License, 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, write to the Free Software
+|   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+|
+|  iTunes and iPod are trademarks of Apple
+|
+|  This product is not supported/written/published by Apple!
+|
+*/
+
+#ifdef HAVE_CONFIG_H
+#  include <config.h>
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <time.h>
+#include <libintl.h>
+
+#include "itdb.h"
+#include "itdb_device.h"
+
+int
+main (int argc, char *argv[])
+{
+    Itdb_Device *device;
+    char *fwid;
+
+    if (argc < 2) {
+        g_print ("Usage: %s <mountpoint>\n", g_basename (argv[0]));
+        return 1;
+
+    }
+
+    device = itdb_device_new ();
+    if (device == NULL) {
+        return 1;
+    }
+
+    itdb_device_set_mountpoint (device, argv[1]);
+
+    fwid = itdb_device_get_sysinfo (device, "FirewireGuid");
+    if (fwid == NULL) {
+        g_print ("Couldn't find firewire ID\n");
+        return 1;
+    } else {
+	g_print ("FireWire ID: %s\n", fwid);
+    }
+
+    return 0;
+}

Modified: libgpod/branches/upstream/current/tests/test-init-ipod.c
===================================================================
--- libgpod/branches/upstream/current/tests/test-init-ipod.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/tests/test-init-ipod.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -19,7 +19,7 @@
  *
  * This product is not supported/written/published by Apple!
  *
- * $Id: test-init-ipod.c 1326 2006-10-02 13:17:58Z jcsjcs $
+ * $Id: test-init-ipod.c,v 1.4 2006/10/02 13:17:58 jcsjcs Exp $
  *
  */
 

Modified: libgpod/branches/upstream/current/tests/test-photos.c
===================================================================
--- libgpod/branches/upstream/current/tests/test-photos.c	2007-09-22 12:45:00 UTC (rev 250)
+++ libgpod/branches/upstream/current/tests/test-photos.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -18,7 +18,7 @@
  *
  * This product is not supported/written/published by Apple!
  *
- * $Id: test-photos.c 1427 2007-05-07 11:42:09Z jcsjcs $
+ * $Id: test-photos.c,v 1.13 2007/05/07 11:42:09 jcsjcs Exp $
  *
  */
 

Added: libgpod/branches/upstream/current/tools/20-libgpod-sysinfo-extended.fdi
===================================================================
--- libgpod/branches/upstream/current/tools/20-libgpod-sysinfo-extended.fdi	                        (rev 0)
+++ libgpod/branches/upstream/current/tools/20-libgpod-sysinfo-extended.fdi	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?> <!-- -*- SGML -*- -->
+
+<deviceinfo version="0.2">
+  <device>
+    <match key="@info.parent:storage.vendor" contains="Apple">
+      <match key="@info.parent:storage.model" contains="iPod">
+        <match key="volume.fsusage" contains="filesystem"> 
+          <append key="info.callouts.add" type="strlist">libgpod-callout</append>
+        </match>
+      </match>
+    </match>
+  </device>
+</deviceinfo>
+

Added: libgpod/branches/upstream/current/tools/Makefile.am
===================================================================
--- libgpod/branches/upstream/current/tools/Makefile.am	                        (rev 0)
+++ libgpod/branches/upstream/current/tools/Makefile.am	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,29 @@
+if HAVE_SGUTILS
+
+bin_PROGRAMS=ipod-read-sysinfo-extended
+
+ipod_read_sysinfo_extended_SOURCES =	\
+	read-sysinfoextended-sgutils.c	\
+	ipod-scsi-inquiry.c
+ipod_read_sysinfo_extended_CFLAGS=$(LIBGPOD_CFLAGS) $(SGUTILS_CFLAGS) -I$(top_srcdir)/src
+ipod_read_sysinfo_extended_LDADD=$(LIBGPOD_LIBS) $(SGUTILS_LIBS) $(top_builddir)/src/libgpod.la
+
+if HAVE_HAL
+haldir = $(HALCALLOUTSDIR)
+hal_PROGRAMS = libgpod-callout
+
+libgpod_callout_SOURCES =		\
+	hal-callout.c 		\
+	ipod-scsi-inquiry.c
+libgpod_callout_CFLAGS=$(LIBGPOD_CFLAGS) $(SGUTILS_CFLAGS) -I$(top_srcdir)/src
+libgpod_callout_LDADD=$(LIBGPOD_LIBS) $(SGUTILS_LIBS) $(top_builddir)/src/libgpod.la
+
+fdidir = $(datadir)/hal/fdi/policy/20thirdparty
+fdi_DATA = 20-libgpod-sysinfo-extended.fdi
+
+EXTRA_DIST = $(fdi_DATA) 
+
+endif
+
+endif
+

Added: libgpod/branches/upstream/current/tools/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/tools/Makefile.in	                        (rev 0)
+++ libgpod/branches/upstream/current/tools/Makefile.in	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,699 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005  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@
+
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+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 = :
+build_triplet = @build@
+host_triplet = @host@
+ at HAVE_SGUTILS_TRUE@bin_PROGRAMS = ipod-read-sysinfo-extended$(EXEEXT)
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at hal_PROGRAMS =  \
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	libgpod-callout$(EXEEXT)
+subdir = tools
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/gtk-doc.m4 \
+	$(top_srcdir)/m4/intltool.m4 $(top_srcdir)/m4/python.m4 \
+	$(top_srcdir)/m4/swig.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+	$(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(haldir)" \
+	"$(DESTDIR)$(fdidir)"
+binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+halPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(bin_PROGRAMS) $(hal_PROGRAMS)
+am__ipod_read_sysinfo_extended_SOURCES_DIST =  \
+	read-sysinfoextended-sgutils.c ipod-scsi-inquiry.c
+ at HAVE_SGUTILS_TRUE@am_ipod_read_sysinfo_extended_OBJECTS = ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.$(OBJEXT) \
+ at HAVE_SGUTILS_TRUE@	ipod_read_sysinfo_extended-ipod-scsi-inquiry.$(OBJEXT)
+ipod_read_sysinfo_extended_OBJECTS =  \
+	$(am_ipod_read_sysinfo_extended_OBJECTS)
+am__DEPENDENCIES_1 =
+ at HAVE_SGUTILS_TRUE@ipod_read_sysinfo_extended_DEPENDENCIES =  \
+ at HAVE_SGUTILS_TRUE@	$(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
+ at HAVE_SGUTILS_TRUE@	$(top_builddir)/src/libgpod.la
+am__libgpod_callout_SOURCES_DIST = hal-callout.c ipod-scsi-inquiry.c
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at am_libgpod_callout_OBJECTS = libgpod_callout-hal-callout.$(OBJEXT) \
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	libgpod_callout-ipod-scsi-inquiry.$(OBJEXT)
+libgpod_callout_OBJECTS = $(am_libgpod_callout_OBJECTS)
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at libgpod_callout_DEPENDENCIES =  \
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	$(am__DEPENDENCIES_1) \
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	$(am__DEPENDENCIES_1) \
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	$(top_builddir)/src/libgpod.la
+DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
+	$(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
+	$(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+	$(AM_LDFLAGS) $(LDFLAGS) -o $@
+SOURCES = $(ipod_read_sysinfo_extended_SOURCES) \
+	$(libgpod_callout_SOURCES)
+DIST_SOURCES = $(am__ipod_read_sysinfo_extended_SOURCES_DIST) \
+	$(am__libgpod_callout_SOURCES_DIST)
+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 = `echo $$p | sed -e 's|^.*/||'`;
+fdiDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(fdi_DATA)
+ETAGS = etags
+CTAGS = ctags
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
+ALL_LINGUAS = @ALL_LINGUAS@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CATALOGS = @CATALOGS@
+CATOBJEXT = @CATOBJEXT@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DATADIRNAME = @DATADIRNAME@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO = @ECHO@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+ENABLE_GTK_DOC_FALSE = @ENABLE_GTK_DOC_FALSE@
+ENABLE_GTK_DOC_TRUE = @ENABLE_GTK_DOC_TRUE@
+EXEEXT = @EXEEXT@
+F77 = @F77@
+FFLAGS = @FFLAGS@
+GDKPIXBUF_CFLAGS = @GDKPIXBUF_CFLAGS@
+GDKPIXBUF_LIBS = @GDKPIXBUF_LIBS@
+GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
+GMOFILES = @GMOFILES@
+GMSGFMT = @GMSGFMT@
+GREP = @GREP@
+GTK_DOC_USE_LIBTOOL_FALSE = @GTK_DOC_USE_LIBTOOL_FALSE@
+GTK_DOC_USE_LIBTOOL_TRUE = @GTK_DOC_USE_LIBTOOL_TRUE@
+HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HAL_CFLAGS = @HAL_CFLAGS@
+HAL_LIBS = @HAL_LIBS@
+HAVE_GDKPIXBUF_FALSE = @HAVE_GDKPIXBUF_FALSE@
+HAVE_GDKPIXBUF_TRUE = @HAVE_GDKPIXBUF_TRUE@
+HAVE_HAL_FALSE = @HAVE_HAL_FALSE@
+HAVE_HAL_TRUE = @HAVE_HAL_TRUE@
+HAVE_PYGOBJECT_FALSE = @HAVE_PYGOBJECT_FALSE@
+HAVE_PYGOBJECT_TRUE = @HAVE_PYGOBJECT_TRUE@
+HAVE_PYTHON_FALSE = @HAVE_PYTHON_FALSE@
+HAVE_PYTHON_TRUE = @HAVE_PYTHON_TRUE@
+HAVE_SGUTILS_FALSE = @HAVE_SGUTILS_FALSE@
+HAVE_SGUTILS_TRUE = @HAVE_SGUTILS_TRUE@
+HAVE_TAGLIB_FALSE = @HAVE_TAGLIB_FALSE@
+HAVE_TAGLIB_TRUE = @HAVE_TAGLIB_TRUE@
+HTML_DIR = @HTML_DIR@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INSTOBJEXT = @INSTOBJEXT@
+INTLLIBS = @INTLLIBS@
+INTLTOOL_CAVES_RULE = @INTLTOOL_CAVES_RULE@
+INTLTOOL_DESKTOP_RULE = @INTLTOOL_DESKTOP_RULE@
+INTLTOOL_DIRECTORY_RULE = @INTLTOOL_DIRECTORY_RULE@
+INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
+INTLTOOL_KBD_RULE = @INTLTOOL_KBD_RULE@
+INTLTOOL_KEYS_RULE = @INTLTOOL_KEYS_RULE@
+INTLTOOL_MERGE = @INTLTOOL_MERGE@
+INTLTOOL_OAF_RULE = @INTLTOOL_OAF_RULE@
+INTLTOOL_PERL = @INTLTOOL_PERL@
+INTLTOOL_POLICY_RULE = @INTLTOOL_POLICY_RULE@
+INTLTOOL_PONG_RULE = @INTLTOOL_PONG_RULE@
+INTLTOOL_PROP_RULE = @INTLTOOL_PROP_RULE@
+INTLTOOL_SCHEMAS_RULE = @INTLTOOL_SCHEMAS_RULE@
+INTLTOOL_SERVER_RULE = @INTLTOOL_SERVER_RULE@
+INTLTOOL_SERVICE_RULE = @INTLTOOL_SERVICE_RULE@
+INTLTOOL_SHEET_RULE = @INTLTOOL_SHEET_RULE@
+INTLTOOL_SOUNDLIST_RULE = @INTLTOOL_SOUNDLIST_RULE@
+INTLTOOL_THEME_RULE = @INTLTOOL_THEME_RULE@
+INTLTOOL_UI_RULE = @INTLTOOL_UI_RULE@
+INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
+INTLTOOL_XAM_RULE = @INTLTOOL_XAM_RULE@
+INTLTOOL_XML_NOMERGE_RULE = @INTLTOOL_XML_NOMERGE_RULE@
+INTLTOOL_XML_RULE = @INTLTOOL_XML_RULE@
+LDFLAGS = @LDFLAGS@
+LIBGPOD_CFLAGS = @LIBGPOD_CFLAGS@
+LIBGPOD_LIBS = @LIBGPOD_LIBS@
+LIBGPOD_MAJOR_VERSION = @LIBGPOD_MAJOR_VERSION@
+LIBGPOD_MICRO_VERSION = @LIBGPOD_MICRO_VERSION@
+LIBGPOD_MINOR_VERSION = @LIBGPOD_MINOR_VERSION@
+LIBGPOD_SO_VERSION = @LIBGPOD_SO_VERSION@
+LIBGPOD_VERSION = @LIBGPOD_VERSION@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBTOOL = @LIBTOOL@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAINT = @MAINT@
+MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
+MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
+MAKEINFO = @MAKEINFO@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+MSGFMT = @MSGFMT@
+MSGFMT_OPTS = @MSGFMT_OPTS@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PKG_CONFIG = @PKG_CONFIG@
+POFILES = @POFILES@
+POSUB = @POSUB@
+PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
+PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
+PYGOBJECT_CFLAGS = @PYGOBJECT_CFLAGS@
+PYGOBJECT_LIBS = @PYGOBJECT_LIBS@
+PYTHON = @PYTHON@
+PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
+PYTHON_INCLUDES = @PYTHON_INCLUDES@
+PYTHON_LDFLAGS = @PYTHON_LDFLAGS@
+PYTHON_PLATFORM = @PYTHON_PLATFORM@
+PYTHON_PREFIX = @PYTHON_PREFIX@
+PYTHON_VERSION = @PYTHON_VERSION@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SGUTILS_LIBS = @SGUTILS_LIBS@
+SHELL = @SHELL@
+STRIP = @STRIP@
+SWIG = @SWIG@
+SWIG_LIB = @SWIG_LIB@
+TAGLIB_CFLAGS = @TAGLIB_CFLAGS@
+TAGLIB_LIBS = @TAGLIB_LIBS@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_F77 = @ac_ct_F77@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+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@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+ at HAVE_SGUTILS_TRUE@ipod_read_sysinfo_extended_SOURCES = \
+ at HAVE_SGUTILS_TRUE@	read-sysinfoextended-sgutils.c	\
+ at HAVE_SGUTILS_TRUE@	ipod-scsi-inquiry.c
+
+ at HAVE_SGUTILS_TRUE@ipod_read_sysinfo_extended_CFLAGS = $(LIBGPOD_CFLAGS) $(SGUTILS_CFLAGS) -I$(top_srcdir)/src
+ at HAVE_SGUTILS_TRUE@ipod_read_sysinfo_extended_LDADD = $(LIBGPOD_LIBS) $(SGUTILS_LIBS) $(top_builddir)/src/libgpod.la
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at haldir = $(HALCALLOUTSDIR)
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at libgpod_callout_SOURCES = \
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	hal-callout.c 		\
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	ipod-scsi-inquiry.c
+
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at libgpod_callout_CFLAGS = $(LIBGPOD_CFLAGS) $(SGUTILS_CFLAGS) -I$(top_srcdir)/src
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at libgpod_callout_LDADD = $(LIBGPOD_LIBS) $(SGUTILS_LIBS) $(top_builddir)/src/libgpod.la
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at fdidir = $(datadir)/hal/fdi/policy/20thirdparty
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at fdi_DATA = 20-libgpod-sysinfo-extended.fdi
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at EXTRA_DIST = $(fdi_DATA) 
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .lo .o .obj
+$(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 \
+		&& exit 0; \
+	      exit 1;; \
+	  esac; \
+	done; \
+	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu  tools/Makefile'; \
+	cd $(top_srcdir) && \
+	  $(AUTOMAKE) --gnu  tools/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
+install-binPROGRAMS: $(bin_PROGRAMS)
+	@$(NORMAL_INSTALL)
+	test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
+	@list='$(bin_PROGRAMS)'; for p in $$list; do \
+	  p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+	  if test -f $$p \
+	     || test -f $$p1 \
+	  ; then \
+	    f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+	   echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
+	   $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
+	  else :; fi; \
+	done
+
+uninstall-binPROGRAMS:
+	@$(NORMAL_UNINSTALL)
+	@list='$(bin_PROGRAMS)'; for p in $$list; do \
+	  f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+	  echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
+	  rm -f "$(DESTDIR)$(bindir)/$$f"; \
+	done
+
+clean-binPROGRAMS:
+	@list='$(bin_PROGRAMS)'; for p in $$list; do \
+	  f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+	  echo " rm -f $$p $$f"; \
+	  rm -f $$p $$f ; \
+	done
+install-halPROGRAMS: $(hal_PROGRAMS)
+	@$(NORMAL_INSTALL)
+	test -z "$(haldir)" || $(mkdir_p) "$(DESTDIR)$(haldir)"
+	@list='$(hal_PROGRAMS)'; for p in $$list; do \
+	  p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+	  if test -f $$p \
+	     || test -f $$p1 \
+	  ; then \
+	    f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+	   echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(halPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(haldir)/$$f'"; \
+	   $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(halPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(haldir)/$$f" || exit 1; \
+	  else :; fi; \
+	done
+
+uninstall-halPROGRAMS:
+	@$(NORMAL_UNINSTALL)
+	@list='$(hal_PROGRAMS)'; for p in $$list; do \
+	  f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+	  echo " rm -f '$(DESTDIR)$(haldir)/$$f'"; \
+	  rm -f "$(DESTDIR)$(haldir)/$$f"; \
+	done
+
+clean-halPROGRAMS:
+	@list='$(hal_PROGRAMS)'; for p in $$list; do \
+	  f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+	  echo " rm -f $$p $$f"; \
+	  rm -f $$p $$f ; \
+	done
+ipod-read-sysinfo-extended$(EXEEXT): $(ipod_read_sysinfo_extended_OBJECTS) $(ipod_read_sysinfo_extended_DEPENDENCIES) 
+	@rm -f ipod-read-sysinfo-extended$(EXEEXT)
+	$(LINK) $(ipod_read_sysinfo_extended_LDFLAGS) $(ipod_read_sysinfo_extended_OBJECTS) $(ipod_read_sysinfo_extended_LDADD) $(LIBS)
+libgpod-callout$(EXEEXT): $(libgpod_callout_OBJECTS) $(libgpod_callout_DEPENDENCIES) 
+	@rm -f libgpod-callout$(EXEEXT)
+	$(LINK) $(libgpod_callout_LDFLAGS) $(libgpod_callout_OBJECTS) $(libgpod_callout_LDADD) $(LIBS)
+
+mostlyclean-compile:
+	-rm -f *.$(OBJEXT)
+
+distclean-compile:
+	-rm -f *.tab.c
+
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libgpod_callout-hal-callout.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Po at am__quote@
+
+.c.o:
+ at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(COMPILE) -c $<
+
+.c.obj:
+ at am__fastdepCC_TRUE@	if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.c.lo:
+ at am__fastdepCC_TRUE@	if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<
+
+ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.o: read-sysinfoextended-sgutils.c
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -MT ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.o -MD -MP -MF "$(DEPDIR)/ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.Tpo" -c -o ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.o `test -f 'read-sysinfoextended-sgutils.c' || echo '$(srcdir)/'`read-sysinfoextended-sgutils.c; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.Tpo" "$(DEPDIR)/ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.Po"; else rm -f "$(DEPDIR)/ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='read-sysinfoextended-sgutils.c' object='ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -c -o ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.o `test -f 'read-sysinfoextended-sgutils.c' || echo '$(srcdir)/'`read-sysinfoextended-sgutils.c
+
+ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.obj: read-sysinfoextended-sgutils.c
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -MT ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.obj -MD -MP -MF "$(DEPDIR)/ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.Tpo" -c -o ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.obj `if test -f 'read-sysinfoextended-sgutils.c'; then $(CYGPATH_W) 'read-sysinfoextended-sgutils.c'; else $(CYGPATH_W) '$(srcdir)/read-sysinfoextended-sgutils.c'; fi`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.Tpo" "$(DEPDIR)/ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.Po"; else rm -f "$(DEPDIR)/ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='read-sysinfoextended-sgutils.c' object='ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -c -o ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.obj `if test -f 'read-sysinfoextended-sgutils.c'; then $(CYGPATH_W) 'read-sysinfoextended-sgutils.c'; else $(CYGPATH_W) '$(srcdir)/read-sysinfoextended-sgutils.c'; fi`
+
+ipod_read_sysinfo_extended-ipod-scsi-inquiry.o: ipod-scsi-inquiry.c
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -MT ipod_read_sysinfo_extended-ipod-scsi-inquiry.o -MD -MP -MF "$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Tpo" -c -o ipod_read_sysinfo_extended-ipod-scsi-inquiry.o `test -f 'ipod-scsi-inquiry.c' || echo '$(srcdir)/'`ipod-scsi-inquiry.c; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Tpo" "$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Po"; else rm -f "$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi-inquiry.c' object='ipod_read_sysinfo_extended-ipod-scsi-inquiry.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -c -o ipod_read_sysinfo_extended-ipod-scsi-inquiry.o `test -f 'ipod-scsi-inquiry.c' || echo '$(srcdir)/'`ipod-scsi-inquiry.c
+
+ipod_read_sysinfo_extended-ipod-scsi-inquiry.obj: ipod-scsi-inquiry.c
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -MT ipod_read_sysinfo_extended-ipod-scsi-inquiry.obj -MD -MP -MF "$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Tpo" -c -o ipod_read_sysinfo_extended-ipod-scsi-inquiry.obj `if test -f 'ipod-scsi-inquiry.c'; then $(CYGPATH_W) 'ipod-scsi-inquiry.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi-inquiry.c'; fi`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Tpo" "$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Po"; else rm -f "$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi-inquiry.c' object='ipod_read_sysinfo_extended-ipod-scsi-inquiry.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -c -o ipod_read_sysinfo_extended-ipod-scsi-inquiry.obj `if test -f 'ipod-scsi-inquiry.c'; then $(CYGPATH_W) 'ipod-scsi-inquiry.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi-inquiry.c'; fi`
+
+libgpod_callout-hal-callout.o: hal-callout.c
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -MT libgpod_callout-hal-callout.o -MD -MP -MF "$(DEPDIR)/libgpod_callout-hal-callout.Tpo" -c -o libgpod_callout-hal-callout.o `test -f 'hal-callout.c' || echo '$(srcdir)/'`hal-callout.c; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/libgpod_callout-hal-callout.Tpo" "$(DEPDIR)/libgpod_callout-hal-callout.Po"; else rm -f "$(DEPDIR)/libgpod_callout-hal-callout.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='hal-callout.c' object='libgpod_callout-hal-callout.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -c -o libgpod_callout-hal-callout.o `test -f 'hal-callout.c' || echo '$(srcdir)/'`hal-callout.c
+
+libgpod_callout-hal-callout.obj: hal-callout.c
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -MT libgpod_callout-hal-callout.obj -MD -MP -MF "$(DEPDIR)/libgpod_callout-hal-callout.Tpo" -c -o libgpod_callout-hal-callout.obj `if test -f 'hal-callout.c'; then $(CYGPATH_W) 'hal-callout.c'; else $(CYGPATH_W) '$(srcdir)/hal-callout.c'; fi`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/libgpod_callout-hal-callout.Tpo" "$(DEPDIR)/libgpod_callout-hal-callout.Po"; else rm -f "$(DEPDIR)/libgpod_callout-hal-callout.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='hal-callout.c' object='libgpod_callout-hal-callout.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -c -o libgpod_callout-hal-callout.obj `if test -f 'hal-callout.c'; then $(CYGPATH_W) 'hal-callout.c'; else $(CYGPATH_W) '$(srcdir)/hal-callout.c'; fi`
+
+libgpod_callout-ipod-scsi-inquiry.o: ipod-scsi-inquiry.c
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -MT libgpod_callout-ipod-scsi-inquiry.o -MD -MP -MF "$(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Tpo" -c -o libgpod_callout-ipod-scsi-inquiry.o `test -f 'ipod-scsi-inquiry.c' || echo '$(srcdir)/'`ipod-scsi-inquiry.c; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Tpo" "$(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Po"; else rm -f "$(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi-inquiry.c' object='libgpod_callout-ipod-scsi-inquiry.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -c -o libgpod_callout-ipod-scsi-inquiry.o `test -f 'ipod-scsi-inquiry.c' || echo '$(srcdir)/'`ipod-scsi-inquiry.c
+
+libgpod_callout-ipod-scsi-inquiry.obj: ipod-scsi-inquiry.c
+ at am__fastdepCC_TRUE@	if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -MT libgpod_callout-ipod-scsi-inquiry.obj -MD -MP -MF "$(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Tpo" -c -o libgpod_callout-ipod-scsi-inquiry.obj `if test -f 'ipod-scsi-inquiry.c'; then $(CYGPATH_W) 'ipod-scsi-inquiry.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi-inquiry.c'; fi`; \
+ at am__fastdepCC_TRUE@	then mv -f "$(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Tpo" "$(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Po"; else rm -f "$(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Tpo"; exit 1; fi
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi-inquiry.c' object='libgpod_callout-ipod-scsi-inquiry.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -c -o libgpod_callout-ipod-scsi-inquiry.obj `if test -f 'ipod-scsi-inquiry.c'; then $(CYGPATH_W) 'ipod-scsi-inquiry.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi-inquiry.c'; fi`
+
+mostlyclean-libtool:
+	-rm -f *.lo
+
+clean-libtool:
+	-rm -rf .libs _libs
+
+distclean-libtool:
+	-rm -f libtool
+uninstall-info-am:
+install-fdiDATA: $(fdi_DATA)
+	@$(NORMAL_INSTALL)
+	test -z "$(fdidir)" || $(mkdir_p) "$(DESTDIR)$(fdidir)"
+	@list='$(fdi_DATA)'; for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  f=$(am__strip_dir) \
+	  echo " $(fdiDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(fdidir)/$$f'"; \
+	  $(fdiDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(fdidir)/$$f"; \
+	done
+
+uninstall-fdiDATA:
+	@$(NORMAL_UNINSTALL)
+	@list='$(fdi_DATA)'; for p in $$list; do \
+	  f=$(am__strip_dir) \
+	  echo " rm -f '$(DESTDIR)$(fdidir)/$$f'"; \
+	  rm -f "$(DESTDIR)$(fdidir)/$$f"; \
+	done
+
+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; } \
+	       END { for (i in files) print i; }'`; \
+	mkid -fID $$unique
+tags: TAGS
+
+TAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	here=`pwd`; \
+	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; } \
+	       END { for (i in files) print i; }'`; \
+	if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+	  test -n "$$unique" || unique=$$empty_fix; \
+	  $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+	    $$tags $$unique; \
+	fi
+ctags: CTAGS
+CTAGS:  $(HEADERS) $(SOURCES)  $(TAGS_DEPENDENCIES) \
+		$(TAGS_FILES) $(LISP)
+	tags=; \
+	here=`pwd`; \
+	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; } \
+	       END { for (i in files) print i; }'`; \
+	test -z "$(CTAGS_ARGS)$$tags$$unique" \
+	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+	     $$tags $$unique
+
+GTAGS:
+	here=`$(am__cd) $(top_builddir) && pwd` \
+	  && cd $(top_srcdir) \
+	  && gtags -i $(GTAGS_ARGS) $$here
+
+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)'; for file in $$list; do \
+	  case $$file in \
+	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
+	    $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
+	  esac; \
+	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+	  dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
+	  if test "$$dir" != "$$file" && test "$$dir" != "."; then \
+	    dir="/$$dir"; \
+	    $(mkdir_p) "$(distdir)$$dir"; \
+	  else \
+	    dir=''; \
+	  fi; \
+	  if test -d $$d/$$file; then \
+	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+	      cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+	    fi; \
+	    cp -pR $$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 $(PROGRAMS) $(DATA)
+installdirs:
+	for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(haldir)" "$(DESTDIR)$(fdidir)"; 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:
+	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	  `test -z '$(STRIP)' || \
+	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_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-binPROGRAMS clean-generic clean-halPROGRAMS \
+	clean-libtool mostlyclean-am
+
+distclean: distclean-am
+	-rm -rf ./$(DEPDIR)
+	-rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+	distclean-libtool distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-fdiDATA install-halPROGRAMS
+
+install-exec-am: install-binPROGRAMS
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+	-rm -rf ./$(DEPDIR)
+	-rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic \
+	mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-binPROGRAMS uninstall-fdiDATA \
+	uninstall-halPROGRAMS uninstall-info-am
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+	clean-generic clean-halPROGRAMS clean-libtool ctags distclean \
+	distclean-compile distclean-generic distclean-libtool \
+	distclean-tags distdir dvi dvi-am html html-am info info-am \
+	install install-am install-binPROGRAMS install-data \
+	install-data-am install-exec install-exec-am install-fdiDATA \
+	install-halPROGRAMS install-info install-info-am install-man \
+	install-strip installcheck installcheck-am installdirs \
+	maintainer-clean maintainer-clean-generic mostlyclean \
+	mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
+	pdf pdf-am ps ps-am tags uninstall uninstall-am \
+	uninstall-binPROGRAMS uninstall-fdiDATA uninstall-halPROGRAMS \
+	uninstall-info-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:

Added: libgpod/branches/upstream/current/tools/hal-callout.c
===================================================================
--- libgpod/branches/upstream/current/tools/hal-callout.c	                        (rev 0)
+++ libgpod/branches/upstream/current/tools/hal-callout.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,117 @@
+/* Copyright (c) 2007, Christophe Fergeau  <teuf at gnome.org>
+ * Part of the libgpod project.
+ * 
+ * URL: http://www.gtkpod.org/
+ * URL: http://gtkpod.sourceforge.net/
+ *
+ * The code contained in this file is free software; you can redistribute
+ * it and/or modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either version
+ * 2.1 of the License, or (at your option) any later version.
+ *
+ * This file 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this code; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ * iTunes and iPod are trademarks of Apple
+ *
+ * This product is not supported/written/published by Apple!
+ *
+ */
+
+#include <errno.h>
+#include <glib.h>
+#include <glib/gstdio.h>
+#ifndef __USE_BSD
+  #define __USE_BSD /* for mkdtemp */
+#endif
+#include <stdlib.h>
+#include <string.h>
+#include <sys/mount.h>
+#include <itdb.h>
+#include <itdb_device.h>
+
+extern char *read_sysinfo_extended (const char *device);
+
+static char *mount_ipod (const char *dev_path)
+{
+        char *filename;
+        char *tmpname;
+        const char *fstype;
+        int result;
+
+        fstype = g_getenv ("HAL_PROP_VOLUME_FSTYPE");
+        if (fstype == NULL) {
+                return NULL;
+        }
+        filename = g_build_filename (g_get_tmp_dir (), "ipodXXXXXX", NULL);
+        if (filename == NULL) {
+                return NULL;
+        }
+        tmpname = mkdtemp (filename);
+        if (tmpname == NULL) {
+                g_free (filename);
+                return NULL;
+        }
+        g_assert (tmpname == filename);
+        result = mount (dev_path, tmpname, fstype, 0, NULL);
+        if (result != 0) {
+                g_rmdir (filename);
+                g_free (filename);
+                return NULL;
+        }
+
+        return tmpname;
+}
+
+static gboolean write_sysinfo_extended (const char *mountpoint, 
+                                        const char *data)
+{
+        char *filename;
+        char *devdirpath;
+        gboolean result;
+
+        devdirpath = itdb_get_device_dir (mountpoint);
+        if (devdirpath == NULL) {
+                return FALSE;
+        }
+        filename = g_build_filename (devdirpath, "SysInfoExtended", NULL);
+        g_free (devdirpath);
+        if (filename == NULL) {
+                return FALSE;
+        }
+
+        result = g_file_set_contents (filename, data, -1, NULL);
+        g_free (filename);
+
+        return result;
+}
+
+int main (int argc, char **argv)
+{
+        char *ipod_mountpoint;
+        char *xml;
+
+        xml = read_sysinfo_extended (g_getenv ("HAL_PROP_BLOCK_DEVICE"));
+        if (xml == NULL) {
+                return -1;
+        }
+        ipod_mountpoint = mount_ipod (g_getenv ("HAL_PROP_BLOCK_DEVICE"));
+        if (ipod_mountpoint == NULL) {
+                g_free (xml);
+                return -1;
+        }
+        write_sysinfo_extended (ipod_mountpoint, xml); 
+
+        umount (ipod_mountpoint);
+        g_rmdir (ipod_mountpoint);
+        g_free (ipod_mountpoint);
+        g_free (xml);
+
+        return 0;
+}

Added: libgpod/branches/upstream/current/tools/ipod-scsi-inquiry.c
===================================================================
--- libgpod/branches/upstream/current/tools/ipod-scsi-inquiry.c	                        (rev 0)
+++ libgpod/branches/upstream/current/tools/ipod-scsi-inquiry.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,108 @@
+/* Copyright (c) 2007, Christophe Fergeau  <teuf at gnome.org>
+ * Part of the libgpod project.
+ * 
+ * URL: http://www.gtkpod.org/
+ * URL: http://gtkpod.sourceforge.net/
+ *
+ * The code contained in this file is free software; you can redistribute
+ * it and/or modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either version
+ * 2.1 of the License, or (at your option) any later version.
+ *
+ * This file 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this code; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ * iTunes and iPod are trademarks of Apple
+ *
+ * This product is not supported/written/published by Apple!
+ *
+ */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <fcntl.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <scsi/sg_cmds.h>
+#include <sys/stat.h>
+
+#include <glib.h>
+
+#include "itdb.h"
+
+
+extern char *read_sysinfo_extended (const char *device);
+/* do_sg_inquiry and read_sysinfo_extended were heavily
+ * inspired from libipoddevice
+ */
+static unsigned char
+do_sg_inquiry (int fd, int page, char *buf, char **start)
+{
+    const unsigned int IPOD_BUF_LENGTH = 252;
+
+    if (sg_ll_inquiry (fd, 0, 1, page, buf, IPOD_BUF_LENGTH, 1, 0) != 0) {
+	*start = NULL;
+	return 0;
+    } else {
+	*start = buf + 4;
+	return (unsigned char)buf[3];
+    }
+}
+
+G_GNUC_INTERNAL char *
+read_sysinfo_extended (const char *device)
+{
+    int fd;
+    const unsigned int IPOD_XML_PAGE = 0xc0;
+    unsigned char len;
+    char buf[512];
+    char *start;
+    char *offsets;
+    GString *xml_sysinfo;
+    unsigned int i;
+
+    fd = open (device, O_RDWR);
+    if (fd < 0) {
+	return NULL;
+    }
+
+    len = do_sg_inquiry (fd, IPOD_XML_PAGE, buf, &start);
+    if (start == NULL || len == 0) {
+	close(fd);
+	return NULL;
+    }
+
+    offsets = g_new (char, len+1);
+    memcpy(offsets, start, len);
+    offsets[len] = 0;
+
+    xml_sysinfo = g_string_new_len (NULL, 512);
+    if (xml_sysinfo == NULL) {
+	g_free (offsets);
+	close (fd);
+	return NULL;
+    }
+
+    for (i = 0; offsets[i]; i++) {
+	bzero(buf, 512);
+	len = do_sg_inquiry (fd, offsets[i], buf, &start);
+	start[len] = 0;
+	g_string_append (xml_sysinfo, start);
+    }
+    
+    g_free (offsets);
+    close (fd);
+
+    return g_string_free (xml_sysinfo, FALSE);
+}
+
+

Added: libgpod/branches/upstream/current/tools/read-sysinfoextended-sgutils.c
===================================================================
--- libgpod/branches/upstream/current/tools/read-sysinfoextended-sgutils.c	                        (rev 0)
+++ libgpod/branches/upstream/current/tools/read-sysinfoextended-sgutils.c	2007-11-12 21:03:04 UTC (rev 251)
@@ -0,0 +1,80 @@
+/* Copyright (c) 2007, Christophe Fergeau  <teuf at gnome.org>
+ *
+ * The code contained in this file is free software; you can redistribute
+ * it and/or modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either version
+ * 2.1 of the License, or (at your option) any later version.
+ *
+ * This file 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
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this code; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ * iTunes and iPod are trademarks of Apple
+ *
+ * This product is not supported/written/published by Apple!
+ *
+ */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <glib.h>
+#include <glib/gi18n.h>
+
+#include "itdb.h"
+
+extern char *read_sysinfo_extended (const char *device);
+
+int
+main (int argc, char **argv)
+{
+    char *xml;
+    
+    if (argc < 3) {
+      g_print (_("usage: %s <device> <mountpoint>\n"), g_basename (argv[0]));
+	return 1;
+    }
+
+    xml = read_sysinfo_extended (argv[1]);
+    if (xml == NULL) {
+      g_print (_("Couldn't read xml sysinfo from %s\n"), argv[1]);
+      return 1;
+    } else {
+	const char *mountpoint = argv[2];
+	char *device_path;
+	char *filename;
+	gboolean success;
+
+	device_path = itdb_get_device_dir (mountpoint);
+	if (device_path == NULL) {
+	    g_free (xml);
+	    g_print (_("Couldn't resolve Device directory path on %s"), 
+		     mountpoint);
+	    return 1;
+	}
+
+	filename = g_build_filename (device_path, "SysInfoExtended", NULL);
+	g_free (device_path);
+	if (filename == NULL) {
+	    g_print (_("Couldn't resolve SysInfoExtended path on %s"),
+		     mountpoint);
+	    g_free (xml);
+	    return 1;
+	}
+
+	success = g_file_set_contents (filename, xml, -1, NULL);
+	g_free (xml);
+	g_free (filename);
+	if (!success) {
+	    g_print (_("Couldn't write SysInfoExtended to %s"), mountpoint);
+	    return 1;
+	}
+    }
+
+    return 0;
+}




More information about the Pkg-gtkpod-devel mailing list