[med-svn] r329 - in trunk/packages/gbrowse/trunk: . bin conf conf/MobyServices debian debian/patches libalign

charles-guest at alioth.debian.org charles-guest at alioth.debian.org
Fri Jun 15 00:07:47 UTC 2007


Author: charles-guest
Date: 2007-06-15 00:07:47 +0000 (Fri, 15 Jun 2007)
New Revision: 329

Added:
   trunk/packages/gbrowse/trunk/GGB.def
   trunk/packages/gbrowse/trunk/Makefile.old
   trunk/packages/gbrowse/trunk/bin/
   trunk/packages/gbrowse/trunk/bin/load_genbank.pl
   trunk/packages/gbrowse/trunk/bin/make_das_conf.pl
   trunk/packages/gbrowse/trunk/bin/process_gadfly.pl
   trunk/packages/gbrowse/trunk/bin/process_sgd.pl
   trunk/packages/gbrowse/trunk/bin/process_wormbase.pl
   trunk/packages/gbrowse/trunk/bin/register_moby_services.pl
   trunk/packages/gbrowse/trunk/bin/ucsc_genes2gff.pl
   trunk/packages/gbrowse/trunk/conf/
   trunk/packages/gbrowse/trunk/conf/MobyServices/
   trunk/packages/gbrowse/trunk/conf/MobyServices/GbrowseServices.pm
   trunk/packages/gbrowse/trunk/debian/
   trunk/packages/gbrowse/trunk/debian/README.Debian
   trunk/packages/gbrowse/trunk/debian/changelog
   trunk/packages/gbrowse/trunk/debian/compat
   trunk/packages/gbrowse/trunk/debian/control
   trunk/packages/gbrowse/trunk/debian/copyright
   trunk/packages/gbrowse/trunk/debian/dirs
   trunk/packages/gbrowse/trunk/debian/docs
   trunk/packages/gbrowse/trunk/debian/generic-genome-browser.doc-base.EX
   trunk/packages/gbrowse/trunk/debian/patches/
   trunk/packages/gbrowse/trunk/debian/patches/10_usrlocalperl.patch
   trunk/packages/gbrowse/trunk/debian/patches/series
   trunk/packages/gbrowse/trunk/debian/rules
   trunk/packages/gbrowse/trunk/debian/watch.ex
   trunk/packages/gbrowse/trunk/libalign/
   trunk/packages/gbrowse/trunk/libalign/Makefile.old
   trunk/packages/gbrowse/trunk/pod2htmd.tmp
   trunk/packages/gbrowse/trunk/pod2htmi.tmp
Log:
[svn-inject] Applying Debian modifications to trunk

Added: trunk/packages/gbrowse/trunk/GGB.def
===================================================================
--- trunk/packages/gbrowse/trunk/GGB.def	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/GGB.def	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,11 @@
+# This hints file contains configuration information used by the generic browser
+
+# To reconfigure, run perl Makefile.PL `cat GGB.def`
+
+CGIBIN=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/usr/lib/cgi-bin
+DO_XS=1
+APACHE=/usr/local/apache
+CONF=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/etc/
+HTDOCS=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/var/www
+VERSION=1.68
+BIOGRAPHICS_VERSION=1.654

Added: trunk/packages/gbrowse/trunk/Makefile.old
===================================================================
--- trunk/packages/gbrowse/trunk/Makefile.old	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/Makefile.old	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,1392 @@
+# This Makefile is for the Generic-Genome-Browser extension to perl.
+#
+# It was generated automatically by MakeMaker version
+# 6.30_01 (Revision: Revision: 4535 ) from the contents of
+# Makefile.PL. Don't edit this file, edit Makefile.PL instead.
+#
+#       ANY CHANGES MADE HERE WILL BE LOST!
+#
+#   MakeMaker ARGV: (q[DESTDIR=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse], q[INSTALLDIRS=vendor], q[VENDORARCHEXP=/usr/share/perl5])
+#
+#   MakeMaker Parameters:
+
+#     ABSTRACT => q[A CGI-driven browser for genomic annotations.]
+#     AUTHOR => q[Lincoln Stein (lstein at cshl.org)]
+#     DEFINE => q[]
+#     DIR => [q[libalign]]
+#     EXE_FILES => [q[bin/register_moby_services.pl], q[bin/make_das_conf.pl], q[bin/process_wormbase.pl], q[bin/process_sgd.pl], q[bin/process_gadfly.pl], q[bin/load_genbank.pl]]
+#     INC => q[]
+#     INSTALLSCRIPT => undef
+#     INSTALLSITEMAN1DIR => undef
+#     INSTALLSITEMAN3DIR => undef
+#     LIB => undef
+#     LIBS => [q[]]
+#     NAME => q[Generic-Genome-Browser]
+#     PL_FILES => { install_util/gbrowse_ppm_install.PLS=>q[install_util/gbrowse_ppm_install.pl], bin/load_genbank.PLS=>q[bin/load_genbank.pl], install_util/conf_install.PLS=>q[install_util/conf_install.pl], bin/process_sgd.PLS=>q[bin/process_sgd.pl], bin/ucsc_genes2gff.PLS=>q[bin/ucsc_genes2gff.pl], bin/process_wormbase.PLS=>q[bin/process_wormbase.pl], bin/make_das_conf.PLS=>q[bin/make_das_conf.pl], bin/process_gadfly.PLS=>q[bin/process_gadfly.pl], cgi-bin/gbrowse.PLS=>q[cgi-bin/gbrowse], cgi-bin/gbrowse_img.PLS=>q[cgi-bin/gbrowse_img], install_util/htdocs_install.PLS=>q[install_util/htdocs_install.pl], bin/register_moby_services.PLS=>q[bin/register_moby_services.pl], install_util/cgi_install.PLS=>q[install_util/cgi_install.pl], cgi-bin/gbrowse_moby.PLS=>q[cgi-bin/gbrowse_moby], cgi-bin/gbrowse_details.PLS=>q[cgi-bin/gbrowse_details], cgi-bin/das.PLS=>q[cgi-bin/das], cgi-bin/moby_server.PLS=>q[cgi-bin/moby_server], conf/MobyServices/GbrowseServices.PMS=>q[conf/MobyServices/GbrowseServices.pm], cgi-bin/gbrowse_est.PLS=>q[cgi-bin/gbrowse_est] }
+#     PREREQ_PM => { Class::Base=>q[0], IO::String=>q[0], Text::Shellwords=>q[1.08], Bio::Perl=>q[1.005002], CGI::Session=>q[4.02], File::Temp=>q[0], Digest::MD5=>q[0], GD=>q[2.07] }
+#     VERSION => q[1.68]
+
+# --- MakeMaker post_initialize section:
+
+
+# --- MakeMaker const_config section:
+
+# These definitions are from config.sh (via /usr/lib/perl/5.8/Config.pm)
+
+# They may have been overridden via Makefile.PL or on the command line
+AR = ar
+CC = cc
+CCCDLFLAGS = -fPIC
+CCDLFLAGS = -Wl,-E
+DLEXT = so
+DLSRC = dl_dlopen.xs
+LD = cc
+LDDLFLAGS = -shared -L/usr/local/lib
+LDFLAGS =  -L/usr/local/lib
+LIBC = /lib/libc-2.3.6.so
+LIB_EXT = .a
+OBJ_EXT = .o
+OSNAME = linux
+OSVERS = 2.6.8-powerpc-smp
+RANLIB = :
+SITELIBEXP = /usr/local/share/perl/5.8.8
+SITEARCHEXP = /usr/local/lib/perl/5.8.8
+SO = so
+EXE_EXT = 
+FULL_AR = /usr/bin/ar
+VENDORARCHEXP = /usr/share/perl5
+VENDORLIBEXP = /usr/share/perl5
+
+
+# --- MakeMaker constants section:
+AR_STATIC_ARGS = cr
+DIRFILESEP = /
+DFSEP = $(DIRFILESEP)
+NAME = Generic-Genome-Browser
+NAME_SYM = Generic_Genome_Browser
+VERSION = 1.68
+VERSION_MACRO = VERSION
+VERSION_SYM = 1_68
+DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\"
+XS_VERSION = 1.68
+XS_VERSION_MACRO = XS_VERSION
+XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\"
+INST_ARCHLIB = blib/arch
+INST_SCRIPT = blib/script
+INST_BIN = blib/bin
+INST_LIB = blib/lib
+INST_MAN1DIR = blib/man1
+INST_MAN3DIR = blib/man3
+MAN1EXT = 1p
+MAN3EXT = 3pm
+INSTALLDIRS = vendor
+DESTDIR = /tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse
+PREFIX = /usr
+PERLPREFIX = $(PREFIX)
+SITEPREFIX = $(PREFIX)/local
+VENDORPREFIX = $(PREFIX)
+INSTALLPRIVLIB = $(PERLPREFIX)/share/perl/5.8
+DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB)
+INSTALLSITELIB = $(SITEPREFIX)/share/perl/5.8.8
+DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB)
+INSTALLVENDORLIB = $(VENDORPREFIX)/share/perl5
+DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB)
+INSTALLARCHLIB = $(PERLPREFIX)/lib/perl/5.8
+DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB)
+INSTALLSITEARCH = $(SITEPREFIX)/lib/perl/5.8.8
+DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH)
+INSTALLVENDORARCH = $(VENDORPREFIX)/lib/perl5
+DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH)
+INSTALLBIN = $(PERLPREFIX)/bin
+DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN)
+INSTALLSITEBIN = $(SITEPREFIX)/bin
+DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN)
+INSTALLVENDORBIN = $(VENDORPREFIX)/bin
+DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN)
+INSTALLSCRIPT = $(PERLPREFIX)/bin
+DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT)
+INSTALLSITESCRIPT = $(SITEPREFIX)/bin
+DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT)
+INSTALLVENDORSCRIPT = $(VENDORPREFIX)/bin
+DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT)
+INSTALLMAN1DIR = $(PERLPREFIX)/share/man/man1
+DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR)
+INSTALLSITEMAN1DIR = $(SITEPREFIX)/man/man1
+DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR)
+INSTALLVENDORMAN1DIR = $(VENDORPREFIX)/share/man/man1
+DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR)
+INSTALLMAN3DIR = $(PERLPREFIX)/share/man/man3
+DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR)
+INSTALLSITEMAN3DIR = $(SITEPREFIX)/man/man3
+DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR)
+INSTALLVENDORMAN3DIR = $(VENDORPREFIX)/share/man/man3
+DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR)
+PERL_LIB = /usr/share/perl/5.8
+PERL_ARCHLIB = /usr/lib/perl/5.8
+LIBPERL_A = libperl.a
+FIRST_MAKEFILE = Makefile
+MAKEFILE_OLD = Makefile.old
+MAKE_APERL_FILE = Makefile.aperl
+PERLMAINCC = $(CC)
+PERL_INC = /usr/lib/perl/5.8/CORE
+PERL = /usr/bin/perl
+FULLPERL = /usr/bin/perl
+ABSPERL = $(PERL)
+PERLRUN = $(PERL)
+FULLPERLRUN = $(FULLPERL)
+ABSPERLRUN = $(ABSPERL)
+PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)"
+FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)"
+ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)"
+PERL_CORE = 0
+PERM_RW = 644
+PERM_RWX = 755
+
+MAKEMAKER   = /usr/share/perl/5.8/ExtUtils/MakeMaker.pm
+MM_VERSION  = 6.30_01
+MM_REVISION = Revision: 4535 
+
+# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle).
+# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle)
+# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar)
+# DLBASE  = Basename part of dynamic library. May be just equal BASEEXT.
+FULLEXT = Generic-Genome-Browser
+BASEEXT = Browser
+PARENT_NAME = 
+DLBASE = $(BASEEXT)
+VERSION_FROM = 
+INC = 
+DEFINE = 
+OBJECT = 
+LDFROM = $(OBJECT)
+LINKTYPE = dynamic
+BOOTDEP = 
+
+# Handy lists of source code files:
+XS_FILES = 
+C_FILES  = 
+O_FILES  = 
+H_FILES  = 
+MAN1PODS = bin/load_genbank.pl \
+	bin/make_das_conf.pl \
+	bin/process_gadfly.pl \
+	bin/process_sgd.pl \
+	bin/process_wormbase.pl
+MAN3PODS = lib/Bio/DB/Das/BioSQL.pm \
+	lib/Bio/DB/Das/BioSQL/BioDatabaseAdaptor.pm \
+	lib/Bio/DB/Das/BioSQL/DBAdaptor.pm \
+	lib/Bio/DB/Das/BioSQL/PartialSeqAdaptor.pm \
+	lib/Bio/DB/Das/BioSQL/Segment.pm \
+	lib/Bio/DB/Das/Chado.pm \
+	lib/Bio/DB/Das/Chado/Segment.pm \
+	lib/Bio/DB/Das/Chado/Segment/Feature.pm \
+	lib/Bio/DB/GFF/Aggregator/match_gap.pm \
+	lib/Bio/DB/GFF/Aggregator/orf.pm \
+	lib/Bio/DB/GFF/Aggregator/reftranscript.pm \
+	lib/Bio/DB/GFF/Aggregator/waba_alignment.pm \
+	lib/Bio/DB/GFF/Aggregator/wormbase_gene.pm \
+	lib/Bio/Graphics/Browser.pm \
+	lib/Bio/Graphics/Browser/GFFhelper.pm \
+	lib/Bio/Graphics/Browser/Markup.pm \
+	lib/Bio/Graphics/Browser/PadAlignment.pm \
+	lib/Bio/Graphics/Browser/Plugin.pm \
+	lib/Bio/Graphics/Browser/PluginSet.pm \
+	lib/Bio/Graphics/Browser/Realign.pm \
+	lib/Bio/Graphics/Browser/RemoteSet.pm \
+	lib/Bio/Graphics/Browser/UploadSet.pm \
+	lib/Bio/Graphics/Browser/Util.pm \
+	lib/Bio/Graphics/FeatureFile.pm \
+	lib/Bio/Graphics/Glyph/allele_tower.pm \
+	lib/Bio/Graphics/Glyph/genscan_transcript.pm \
+	lib/Bio/Graphics/Glyph/heat_map.pm \
+	lib/Bio/Graphics/Glyph/heat_map_ideogram.pm \
+	lib/Bio/Graphics/Glyph/ideogram.pm \
+	lib/Bio/Graphics/Glyph/insertion_chromosome.pm \
+	lib/Bio/Graphics/Glyph/ld_plot.pm \
+	lib/Bio/Graphics/Glyph/pairwise_plot.pm \
+	lib/Bio/Graphics/Glyph/spectrogram.pm \
+	lib/Bio/Graphics/Glyph/trace.pm \
+	lib/Bio/Graphics/Glyph/wormbase_transcript.pm \
+	lib/CGI/Session/ID/salted_md5.pm \
+	lib/CGI/Toggle.pm
+
+# Where is the Config information that we are using/depend on
+CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h
+
+# Where to build things
+INST_LIBDIR      = $(INST_LIB)
+INST_ARCHLIBDIR  = $(INST_ARCHLIB)
+
+INST_AUTODIR     = $(INST_LIB)/auto/$(FULLEXT)
+INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT)
+
+INST_STATIC      = 
+INST_DYNAMIC     = 
+INST_BOOT        = 
+
+# Extra linker info
+EXPORT_LIST        = 
+PERL_ARCHIVE       = 
+PERL_ARCHIVE_AFTER = 
+
+
+TO_INST_PM = lib/Bio/DB/Das/BioSQL.pm \
+	lib/Bio/DB/Das/BioSQL/BioDatabaseAdaptor.pm \
+	lib/Bio/DB/Das/BioSQL/DBAdaptor.pm \
+	lib/Bio/DB/Das/BioSQL/Iterator.pm \
+	lib/Bio/DB/Das/BioSQL/PartialSeqAdaptor.pm \
+	lib/Bio/DB/Das/BioSQL/Segment.pm \
+	lib/Bio/DB/Das/Chado.pm \
+	lib/Bio/DB/Das/Chado/Segment.pm \
+	lib/Bio/DB/Das/Chado/Segment/Feature.pm \
+	lib/Bio/DB/GFF/Aggregator/match_gap.pm \
+	lib/Bio/DB/GFF/Aggregator/orf.pm \
+	lib/Bio/DB/GFF/Aggregator/reftranscript.pm \
+	lib/Bio/DB/GFF/Aggregator/waba_alignment.pm \
+	lib/Bio/DB/GFF/Aggregator/wormbase_gene.pm \
+	lib/Bio/Graphics/Browser.pm \
+	lib/Bio/Graphics/Browser/GFFhelper.pm \
+	lib/Bio/Graphics/Browser/I18n.pm \
+	lib/Bio/Graphics/Browser/Markup.pm \
+	lib/Bio/Graphics/Browser/PadAlignment.pm \
+	lib/Bio/Graphics/Browser/PageSettings.pm \
+	lib/Bio/Graphics/Browser/Plugin.pm \
+	lib/Bio/Graphics/Browser/PluginSet.pm \
+	lib/Bio/Graphics/Browser/Realign.pm \
+	lib/Bio/Graphics/Browser/RemoteSet.pm \
+	lib/Bio/Graphics/Browser/UploadSet.pm \
+	lib/Bio/Graphics/Browser/Util.pm \
+	lib/Bio/Graphics/FeatureFile.pm \
+	lib/Bio/Graphics/Glyph/allele_tower.pm \
+	lib/Bio/Graphics/Glyph/connector.pm \
+	lib/Bio/Graphics/Glyph/drosophila_arrow.pm \
+	lib/Bio/Graphics/Glyph/genscan_transcript.pm \
+	lib/Bio/Graphics/Glyph/heat_map.pm \
+	lib/Bio/Graphics/Glyph/heat_map_ideogram.pm \
+	lib/Bio/Graphics/Glyph/ideogram.pm \
+	lib/Bio/Graphics/Glyph/insertion_chromosome.pm \
+	lib/Bio/Graphics/Glyph/ld_plot.pm \
+	lib/Bio/Graphics/Glyph/pairwise_plot.pm \
+	lib/Bio/Graphics/Glyph/phased_exons.pm \
+	lib/Bio/Graphics/Glyph/spectrogram.pm \
+	lib/Bio/Graphics/Glyph/trace.pm \
+	lib/Bio/Graphics/Glyph/wormbase_transcript.pm \
+	lib/CGI/Session/ID/salted_md5.pm \
+	lib/CGI/Toggle.pm
+
+PM_TO_BLIB = lib/Bio/Graphics/Glyph/trace.pm \
+	blib/lib/Bio/Graphics/Glyph/trace.pm \
+	lib/Bio/Graphics/Browser/I18n.pm \
+	blib/lib/Bio/Graphics/Browser/I18n.pm \
+	lib/Bio/Graphics/Browser/Plugin.pm \
+	blib/lib/Bio/Graphics/Browser/Plugin.pm \
+	lib/Bio/Graphics/Glyph/genscan_transcript.pm \
+	blib/lib/Bio/Graphics/Glyph/genscan_transcript.pm \
+	lib/Bio/Graphics/Browser/Realign.pm \
+	blib/lib/Bio/Graphics/Browser/Realign.pm \
+	lib/Bio/Graphics/Glyph/wormbase_transcript.pm \
+	blib/lib/Bio/Graphics/Glyph/wormbase_transcript.pm \
+	lib/Bio/Graphics/FeatureFile.pm \
+	blib/lib/Bio/Graphics/FeatureFile.pm \
+	lib/Bio/DB/GFF/Aggregator/reftranscript.pm \
+	blib/lib/Bio/DB/GFF/Aggregator/reftranscript.pm \
+	lib/Bio/DB/Das/BioSQL/PartialSeqAdaptor.pm \
+	blib/lib/Bio/DB/Das/BioSQL/PartialSeqAdaptor.pm \
+	lib/Bio/DB/Das/BioSQL/BioDatabaseAdaptor.pm \
+	blib/lib/Bio/DB/Das/BioSQL/BioDatabaseAdaptor.pm \
+	lib/Bio/DB/Das/Chado/Segment/Feature.pm \
+	blib/lib/Bio/DB/Das/Chado/Segment/Feature.pm \
+	lib/Bio/Graphics/Glyph/ld_plot.pm \
+	blib/lib/Bio/Graphics/Glyph/ld_plot.pm \
+	lib/Bio/DB/GFF/Aggregator/waba_alignment.pm \
+	blib/lib/Bio/DB/GFF/Aggregator/waba_alignment.pm \
+	lib/Bio/DB/GFF/Aggregator/orf.pm \
+	blib/lib/Bio/DB/GFF/Aggregator/orf.pm \
+	lib/Bio/Graphics/Glyph/drosophila_arrow.pm \
+	blib/lib/Bio/Graphics/Glyph/drosophila_arrow.pm \
+	lib/Bio/Graphics/Glyph/spectrogram.pm \
+	blib/lib/Bio/Graphics/Glyph/spectrogram.pm \
+	lib/Bio/Graphics/Browser/PadAlignment.pm \
+	blib/lib/Bio/Graphics/Browser/PadAlignment.pm \
+	lib/Bio/DB/Das/BioSQL/Iterator.pm \
+	blib/lib/Bio/DB/Das/BioSQL/Iterator.pm \
+	lib/Bio/DB/Das/BioSQL/DBAdaptor.pm \
+	blib/lib/Bio/DB/Das/BioSQL/DBAdaptor.pm \
+	lib/Bio/Graphics/Browser.pm \
+	blib/lib/Bio/Graphics/Browser.pm \
+	lib/Bio/DB/GFF/Aggregator/wormbase_gene.pm \
+	blib/lib/Bio/DB/GFF/Aggregator/wormbase_gene.pm \
+	lib/Bio/Graphics/Glyph/ideogram.pm \
+	blib/lib/Bio/Graphics/Glyph/ideogram.pm \
+	lib/Bio/Graphics/Glyph/phased_exons.pm \
+	blib/lib/Bio/Graphics/Glyph/phased_exons.pm \
+	lib/Bio/DB/Das/BioSQL/Segment.pm \
+	blib/lib/Bio/DB/Das/BioSQL/Segment.pm \
+	lib/Bio/Graphics/Browser/PageSettings.pm \
+	blib/lib/Bio/Graphics/Browser/PageSettings.pm \
+	lib/Bio/Graphics/Browser/PluginSet.pm \
+	blib/lib/Bio/Graphics/Browser/PluginSet.pm \
+	lib/CGI/Session/ID/salted_md5.pm \
+	blib/lib/CGI/Session/ID/salted_md5.pm \
+	lib/Bio/DB/GFF/Aggregator/match_gap.pm \
+	blib/lib/Bio/DB/GFF/Aggregator/match_gap.pm \
+	lib/Bio/Graphics/Glyph/heat_map.pm \
+	blib/lib/Bio/Graphics/Glyph/heat_map.pm \
+	lib/CGI/Toggle.pm \
+	blib/lib/CGI/Toggle.pm \
+	lib/Bio/Graphics/Browser/GFFhelper.pm \
+	blib/lib/Bio/Graphics/Browser/GFFhelper.pm \
+	lib/Bio/Graphics/Browser/RemoteSet.pm \
+	blib/lib/Bio/Graphics/Browser/RemoteSet.pm \
+	lib/Bio/Graphics/Glyph/insertion_chromosome.pm \
+	blib/lib/Bio/Graphics/Glyph/insertion_chromosome.pm \
+	lib/Bio/Graphics/Glyph/pairwise_plot.pm \
+	blib/lib/Bio/Graphics/Glyph/pairwise_plot.pm \
+	lib/Bio/Graphics/Glyph/allele_tower.pm \
+	blib/lib/Bio/Graphics/Glyph/allele_tower.pm \
+	lib/Bio/Graphics/Browser/Util.pm \
+	blib/lib/Bio/Graphics/Browser/Util.pm \
+	lib/Bio/DB/Das/Chado.pm \
+	blib/lib/Bio/DB/Das/Chado.pm \
+	lib/Bio/Graphics/Browser/Markup.pm \
+	blib/lib/Bio/Graphics/Browser/Markup.pm \
+	lib/Bio/Graphics/Glyph/heat_map_ideogram.pm \
+	blib/lib/Bio/Graphics/Glyph/heat_map_ideogram.pm \
+	lib/Bio/DB/Das/BioSQL.pm \
+	blib/lib/Bio/DB/Das/BioSQL.pm \
+	lib/Bio/Graphics/Glyph/connector.pm \
+	blib/lib/Bio/Graphics/Glyph/connector.pm \
+	lib/Bio/DB/Das/Chado/Segment.pm \
+	blib/lib/Bio/DB/Das/Chado/Segment.pm \
+	lib/Bio/Graphics/Browser/UploadSet.pm \
+	blib/lib/Bio/Graphics/Browser/UploadSet.pm
+
+
+# --- MakeMaker platform_constants section:
+MM_Unix_VERSION = 1.50_01
+PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc
+
+
+# --- MakeMaker tool_autosplit section:
+# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto
+AUTOSPLITFILE = $(ABSPERLRUN)  -e 'use AutoSplit;  autosplit($$ARGV[0], $$ARGV[1], 0, 1, 1)'
+
+
+
+# --- MakeMaker tool_xsubpp section:
+
+XSUBPPDIR = /usr/share/perl/5.8/ExtUtils
+XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp
+XSUBPPRUN = $(PERLRUN) $(XSUBPP)
+XSPROTOARG = 
+XSUBPPDEPS = /usr/share/perl/5.8/ExtUtils/typemap $(XSUBPP)
+XSUBPPARGS = -typemap /usr/share/perl/5.8/ExtUtils/typemap
+XSUBPP_EXTRA_ARGS = 
+
+
+# --- MakeMaker tools_other section:
+SHELL = /bin/sh
+CHMOD = chmod
+CP = cp
+MV = mv
+NOOP = $(SHELL) -c true
+NOECHO = @
+RM_F = rm -f
+RM_RF = rm -rf
+TEST_F = test -f
+TOUCH = touch
+UMASK_NULL = umask 0
+DEV_NULL = > /dev/null 2>&1
+MKPATH = $(ABSPERLRUN) "-MExtUtils::Command" -e mkpath
+EQUALIZE_TIMESTAMP = $(ABSPERLRUN) "-MExtUtils::Command" -e eqtime
+ECHO = echo
+ECHO_N = echo -n
+UNINST = 0
+VERBINST = 0
+MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install({@ARGV}, '\''$(VERBINST)'\'', 0, '\''$(UNINST)'\'');'
+DOC_INSTALL = $(ABSPERLRUN) "-MExtUtils::Command::MM" -e perllocal_install
+UNINSTALL = $(ABSPERLRUN) "-MExtUtils::Command::MM" -e uninstall
+WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) "-MExtUtils::Command::MM" -e warn_if_old_packlist
+MACROSTART = 
+MACROEND = 
+USEMAKEFILE = -f
+FIXIN = $(PERLRUN) "-MExtUtils::MY" -e "MY->fixin(shift)"
+
+
+# --- MakeMaker makemakerdflt section:
+makemakerdflt: all
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker dist section:
+TAR = tar
+TARFLAGS = cvf
+ZIP = zip
+ZIPFLAGS = -r
+COMPRESS = gzip --best
+SUFFIX = .gz
+SHAR = shar
+PREOP = $(NOECHO) $(NOOP)
+POSTOP = $(NOECHO) $(NOOP)
+TO_UNIX = $(NOECHO) $(NOOP)
+CI = ci -u
+RCS_LABEL = rcs -Nv$(VERSION_SYM): -q
+DIST_CP = best
+DIST_DEFAULT = tardist
+DISTNAME = Generic-Genome-Browser
+DISTVNAME = Generic-Genome-Browser-1.68
+
+
+# --- MakeMaker macro section:
+
+
+# --- MakeMaker depend section:
+
+
+# --- MakeMaker cflags section:
+
+CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
+OPTIMIZE = -O2
+PERLTYPE = 
+MPOLLUTE = 
+
+
+# --- MakeMaker const_loadlibs section:
+
+# Generic-Genome-Browser might depend on some other libraries:
+# See ExtUtils::Liblist for details
+#
+
+
+# --- MakeMaker const_cccmd section:
+CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \
+	$(CCFLAGS) $(OPTIMIZE) \
+	$(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \
+	$(XS_DEFINE_VERSION)
+
+# --- MakeMaker post_constants section:
+
+
+# --- MakeMaker pasthru section:
+
+PASTHRU = LIBPERL_A="$(LIBPERL_A)"\
+	LINKTYPE="$(LINKTYPE)"\
+	OPTIMIZE="$(OPTIMIZE)"\
+	PREFIX="$(PREFIX)"\
+	PASTHRU_DEFINE="$(PASTHRU_DEFINE)"\
+	PASTHRU_INC="$(PASTHRU_INC)"
+
+
+# --- MakeMaker special_targets section:
+.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT)
+
+.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir
+
+
+
+# --- MakeMaker c_o section:
+
+.c.i:
+	cc -E -c $(PASTHRU_INC) $(INC) \
+	$(CCFLAGS) $(OPTIMIZE) \
+	$(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \
+	$(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i
+
+.c.s:
+	$(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c
+
+.c$(OBJ_EXT):
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c
+
+.C$(OBJ_EXT):
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C
+
+.cpp$(OBJ_EXT):
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp
+
+.cxx$(OBJ_EXT):
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx
+
+.cc$(OBJ_EXT):
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc
+
+
+# --- MakeMaker xs_c section:
+
+.xs.c:
+	$(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c
+
+
+# --- MakeMaker xs_o section:
+
+.xs$(OBJ_EXT):
+	$(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c
+
+
+# --- MakeMaker top_targets section:
+all :: pure_all manifypods
+	$(NOECHO) $(NOOP)
+
+
+pure_all :: config pm_to_blib subdirs linkext
+	$(NOECHO) $(NOOP)
+
+subdirs :: $(MYEXTLIB)
+	$(NOECHO) $(NOOP)
+
+config :: $(FIRST_MAKEFILE) blibdirs
+	$(NOECHO) $(NOOP)
+
+help :
+	perldoc ExtUtils::MakeMaker
+
+
+# --- MakeMaker blibdirs section:
+blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists
+	$(NOECHO) $(NOOP)
+
+# Backwards compat with 6.18 through 6.25
+blibdirs.ts : blibdirs
+	$(NOECHO) $(NOOP)
+
+$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_LIBDIR)
+	$(NOECHO) $(CHMOD) 755 $(INST_LIBDIR)
+	$(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists
+
+$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_ARCHLIB)
+	$(NOECHO) $(CHMOD) 755 $(INST_ARCHLIB)
+	$(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists
+
+$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_AUTODIR)
+	$(NOECHO) $(CHMOD) 755 $(INST_AUTODIR)
+	$(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists
+
+$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR)
+	$(NOECHO) $(CHMOD) 755 $(INST_ARCHAUTODIR)
+	$(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists
+
+$(INST_BIN)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_BIN)
+	$(NOECHO) $(CHMOD) 755 $(INST_BIN)
+	$(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists
+
+$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_SCRIPT)
+	$(NOECHO) $(CHMOD) 755 $(INST_SCRIPT)
+	$(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists
+
+$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_MAN1DIR)
+	$(NOECHO) $(CHMOD) 755 $(INST_MAN1DIR)
+	$(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists
+
+$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_MAN3DIR)
+	$(NOECHO) $(CHMOD) 755 $(INST_MAN3DIR)
+	$(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists
+
+
+
+# --- MakeMaker linkext section:
+
+linkext :: $(LINKTYPE)
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker dlsyms section:
+
+
+# --- MakeMaker dynamic section:
+
+dynamic :: $(FIRST_MAKEFILE) $(INST_DYNAMIC) $(INST_BOOT)
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker dynamic_bs section:
+
+BOOTSTRAP =
+
+
+# --- MakeMaker dynamic_lib section:
+
+
+# --- MakeMaker static section:
+
+## $(INST_PM) has been moved to the all: target.
+## It remains here for awhile to allow for old usage: "make static"
+static :: $(FIRST_MAKEFILE) $(INST_STATIC)
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker static_lib section:
+
+
+# --- MakeMaker manifypods section:
+
+POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--"
+POD2MAN = $(POD2MAN_EXE)
+
+
+manifypods : pure_all  \
+	bin/process_wormbase.pl \
+	bin/make_das_conf.pl \
+	bin/load_genbank.pl \
+	bin/process_sgd.pl \
+	bin/process_gadfly.pl \
+	lib/Bio/Graphics/Glyph/trace.pm \
+	lib/Bio/Graphics/Browser/Plugin.pm \
+	lib/Bio/Graphics/Glyph/genscan_transcript.pm \
+	lib/Bio/Graphics/Browser/Realign.pm \
+	lib/Bio/Graphics/Glyph/wormbase_transcript.pm \
+	lib/Bio/Graphics/FeatureFile.pm \
+	lib/Bio/DB/GFF/Aggregator/reftranscript.pm \
+	lib/Bio/DB/Das/BioSQL/PartialSeqAdaptor.pm \
+	lib/Bio/DB/Das/BioSQL/BioDatabaseAdaptor.pm \
+	lib/Bio/DB/Das/Chado/Segment/Feature.pm \
+	lib/Bio/Graphics/Glyph/ld_plot.pm \
+	lib/Bio/DB/GFF/Aggregator/waba_alignment.pm \
+	lib/Bio/DB/GFF/Aggregator/orf.pm \
+	lib/Bio/Graphics/Glyph/spectrogram.pm \
+	lib/Bio/Graphics/Browser/PadAlignment.pm \
+	lib/Bio/DB/Das/BioSQL/DBAdaptor.pm \
+	lib/Bio/Graphics/Browser.pm \
+	lib/Bio/DB/GFF/Aggregator/wormbase_gene.pm \
+	lib/Bio/Graphics/Glyph/ideogram.pm \
+	lib/Bio/DB/Das/BioSQL/Segment.pm \
+	lib/Bio/Graphics/Browser/PluginSet.pm \
+	lib/CGI/Session/ID/salted_md5.pm \
+	lib/Bio/DB/GFF/Aggregator/match_gap.pm \
+	lib/Bio/Graphics/Glyph/heat_map.pm \
+	lib/CGI/Toggle.pm \
+	lib/Bio/Graphics/Browser/GFFhelper.pm \
+	lib/Bio/Graphics/Browser/RemoteSet.pm \
+	lib/Bio/Graphics/Glyph/insertion_chromosome.pm \
+	lib/Bio/Graphics/Glyph/pairwise_plot.pm \
+	lib/Bio/Graphics/Glyph/allele_tower.pm \
+	lib/Bio/Graphics/Browser/Util.pm \
+	lib/Bio/DB/Das/Chado.pm \
+	lib/Bio/Graphics/Browser/Markup.pm \
+	lib/Bio/Graphics/Glyph/heat_map_ideogram.pm \
+	lib/Bio/DB/Das/BioSQL.pm \
+	lib/Bio/DB/Das/Chado/Segment.pm \
+	lib/Bio/Graphics/Browser/UploadSet.pm \
+	lib/Bio/Graphics/Glyph/trace.pm \
+	lib/Bio/Graphics/Browser/Plugin.pm \
+	lib/Bio/Graphics/Glyph/genscan_transcript.pm \
+	lib/Bio/Graphics/Browser/Realign.pm \
+	lib/Bio/Graphics/Glyph/wormbase_transcript.pm \
+	lib/Bio/Graphics/FeatureFile.pm \
+	lib/Bio/DB/GFF/Aggregator/reftranscript.pm \
+	lib/Bio/DB/Das/BioSQL/PartialSeqAdaptor.pm \
+	lib/Bio/DB/Das/BioSQL/BioDatabaseAdaptor.pm \
+	lib/Bio/DB/Das/Chado/Segment/Feature.pm \
+	lib/Bio/Graphics/Glyph/ld_plot.pm \
+	lib/Bio/DB/GFF/Aggregator/waba_alignment.pm \
+	lib/Bio/DB/GFF/Aggregator/orf.pm \
+	lib/Bio/Graphics/Glyph/spectrogram.pm \
+	lib/Bio/Graphics/Browser/PadAlignment.pm \
+	lib/Bio/DB/Das/BioSQL/DBAdaptor.pm \
+	lib/Bio/Graphics/Browser.pm \
+	lib/Bio/DB/GFF/Aggregator/wormbase_gene.pm \
+	lib/Bio/Graphics/Glyph/ideogram.pm \
+	lib/Bio/DB/Das/BioSQL/Segment.pm \
+	lib/Bio/Graphics/Browser/PluginSet.pm \
+	lib/CGI/Session/ID/salted_md5.pm \
+	lib/Bio/DB/GFF/Aggregator/match_gap.pm \
+	lib/Bio/Graphics/Glyph/heat_map.pm \
+	lib/CGI/Toggle.pm \
+	lib/Bio/Graphics/Browser/GFFhelper.pm \
+	lib/Bio/Graphics/Browser/RemoteSet.pm \
+	lib/Bio/Graphics/Glyph/insertion_chromosome.pm \
+	lib/Bio/Graphics/Glyph/pairwise_plot.pm \
+	lib/Bio/Graphics/Glyph/allele_tower.pm \
+	lib/Bio/Graphics/Browser/Util.pm \
+	lib/Bio/DB/Das/Chado.pm \
+	lib/Bio/Graphics/Browser/Markup.pm \
+	lib/Bio/Graphics/Glyph/heat_map_ideogram.pm \
+	lib/Bio/DB/Das/BioSQL.pm \
+	lib/Bio/DB/Das/Chado/Segment.pm \
+	lib/Bio/Graphics/Browser/UploadSet.pm
+	$(NOECHO) $(POD2MAN) --section=$(MAN1EXT) --perm_rw=$(PERM_RW) \
+	  bin/process_wormbase.pl $(INST_MAN1DIR)/process_wormbase.pl.$(MAN1EXT) \
+	  bin/make_das_conf.pl $(INST_MAN1DIR)/make_das_conf.pl.$(MAN1EXT) \
+	  bin/load_genbank.pl $(INST_MAN1DIR)/load_genbank.pl.$(MAN1EXT) \
+	  bin/process_sgd.pl $(INST_MAN1DIR)/process_sgd.pl.$(MAN1EXT) \
+	  bin/process_gadfly.pl $(INST_MAN1DIR)/process_gadfly.pl.$(MAN1EXT) 
+	$(NOECHO) $(POD2MAN) --section=$(MAN3EXT) --perm_rw=$(PERM_RW) \
+	  lib/Bio/Graphics/Glyph/trace.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::trace.$(MAN3EXT) \
+	  lib/Bio/Graphics/Browser/Plugin.pm $(INST_MAN3DIR)/Bio::Graphics::Browser::Plugin.$(MAN3EXT) \
+	  lib/Bio/Graphics/Glyph/genscan_transcript.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::genscan_transcript.$(MAN3EXT) \
+	  lib/Bio/Graphics/Browser/Realign.pm $(INST_MAN3DIR)/Bio::Graphics::Browser::Realign.$(MAN3EXT) \
+	  lib/Bio/Graphics/Glyph/wormbase_transcript.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::wormbase_transcript.$(MAN3EXT) \
+	  lib/Bio/Graphics/FeatureFile.pm $(INST_MAN3DIR)/Bio::Graphics::FeatureFile.$(MAN3EXT) \
+	  lib/Bio/DB/GFF/Aggregator/reftranscript.pm $(INST_MAN3DIR)/Bio::DB::GFF::Aggregator::reftranscript.$(MAN3EXT) \
+	  lib/Bio/DB/Das/BioSQL/PartialSeqAdaptor.pm $(INST_MAN3DIR)/Bio::DB::Das::BioSQL::PartialSeqAdaptor.$(MAN3EXT) \
+	  lib/Bio/DB/Das/BioSQL/BioDatabaseAdaptor.pm $(INST_MAN3DIR)/Bio::DB::Das::BioSQL::BioDatabaseAdaptor.$(MAN3EXT) \
+	  lib/Bio/DB/Das/Chado/Segment/Feature.pm $(INST_MAN3DIR)/Bio::DB::Das::Chado::Segment::Feature.$(MAN3EXT) \
+	  lib/Bio/Graphics/Glyph/ld_plot.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::ld_plot.$(MAN3EXT) \
+	  lib/Bio/DB/GFF/Aggregator/waba_alignment.pm $(INST_MAN3DIR)/Bio::DB::GFF::Aggregator::waba_alignment.$(MAN3EXT) \
+	  lib/Bio/DB/GFF/Aggregator/orf.pm $(INST_MAN3DIR)/Bio::DB::GFF::Aggregator::orf.$(MAN3EXT) \
+	  lib/Bio/Graphics/Glyph/spectrogram.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::spectrogram.$(MAN3EXT) \
+	  lib/Bio/Graphics/Browser/PadAlignment.pm $(INST_MAN3DIR)/Bio::Graphics::Browser::PadAlignment.$(MAN3EXT) \
+	  lib/Bio/DB/Das/BioSQL/DBAdaptor.pm $(INST_MAN3DIR)/Bio::DB::Das::BioSQL::DBAdaptor.$(MAN3EXT) \
+	  lib/Bio/Graphics/Browser.pm $(INST_MAN3DIR)/Bio::Graphics::Browser.$(MAN3EXT) \
+	  lib/Bio/DB/GFF/Aggregator/wormbase_gene.pm $(INST_MAN3DIR)/Bio::DB::GFF::Aggregator::wormbase_gene.$(MAN3EXT) \
+	  lib/Bio/Graphics/Glyph/ideogram.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::ideogram.$(MAN3EXT) \
+	  lib/Bio/DB/Das/BioSQL/Segment.pm $(INST_MAN3DIR)/Bio::DB::Das::BioSQL::Segment.$(MAN3EXT) \
+	  lib/Bio/Graphics/Browser/PluginSet.pm $(INST_MAN3DIR)/Bio::Graphics::Browser::PluginSet.$(MAN3EXT) \
+	  lib/CGI/Session/ID/salted_md5.pm $(INST_MAN3DIR)/CGI::Session::ID::salted_md5.$(MAN3EXT) \
+	  lib/Bio/DB/GFF/Aggregator/match_gap.pm $(INST_MAN3DIR)/Bio::DB::GFF::Aggregator::match_gap.$(MAN3EXT) \
+	  lib/Bio/Graphics/Glyph/heat_map.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::heat_map.$(MAN3EXT) \
+	  lib/CGI/Toggle.pm $(INST_MAN3DIR)/CGI::Toggle.$(MAN3EXT) \
+	  lib/Bio/Graphics/Browser/GFFhelper.pm $(INST_MAN3DIR)/Bio::Graphics::Browser::GFFhelper.$(MAN3EXT) \
+	  lib/Bio/Graphics/Browser/RemoteSet.pm $(INST_MAN3DIR)/Bio::Graphics::Browser::RemoteSet.$(MAN3EXT) \
+	  lib/Bio/Graphics/Glyph/insertion_chromosome.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::insertion_chromosome.$(MAN3EXT) \
+	  lib/Bio/Graphics/Glyph/pairwise_plot.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::pairwise_plot.$(MAN3EXT) \
+	  lib/Bio/Graphics/Glyph/allele_tower.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::allele_tower.$(MAN3EXT) \
+	  lib/Bio/Graphics/Browser/Util.pm $(INST_MAN3DIR)/Bio::Graphics::Browser::Util.$(MAN3EXT) \
+	  lib/Bio/DB/Das/Chado.pm $(INST_MAN3DIR)/Bio::DB::Das::Chado.$(MAN3EXT) \
+	  lib/Bio/Graphics/Browser/Markup.pm $(INST_MAN3DIR)/Bio::Graphics::Browser::Markup.$(MAN3EXT) \
+	  lib/Bio/Graphics/Glyph/heat_map_ideogram.pm $(INST_MAN3DIR)/Bio::Graphics::Glyph::heat_map_ideogram.$(MAN3EXT) \
+	  lib/Bio/DB/Das/BioSQL.pm $(INST_MAN3DIR)/Bio::DB::Das::BioSQL.$(MAN3EXT) \
+	  lib/Bio/DB/Das/Chado/Segment.pm $(INST_MAN3DIR)/Bio::DB::Das::Chado::Segment.$(MAN3EXT) \
+	  lib/Bio/Graphics/Browser/UploadSet.pm $(INST_MAN3DIR)/Bio::Graphics::Browser::UploadSet.$(MAN3EXT) 
+
+
+
+
+# --- MakeMaker processPL section:
+
+all :: bin/load_genbank.pl
+	$(NOECHO) $(NOOP)
+
+bin/load_genbank.pl :: bin/load_genbank.PLS pm_to_blib
+	$(PERLRUNINST) bin/load_genbank.PLS bin/load_genbank.pl
+
+all :: bin/make_das_conf.pl
+	$(NOECHO) $(NOOP)
+
+bin/make_das_conf.pl :: bin/make_das_conf.PLS pm_to_blib
+	$(PERLRUNINST) bin/make_das_conf.PLS bin/make_das_conf.pl
+
+all :: bin/process_gadfly.pl
+	$(NOECHO) $(NOOP)
+
+bin/process_gadfly.pl :: bin/process_gadfly.PLS pm_to_blib
+	$(PERLRUNINST) bin/process_gadfly.PLS bin/process_gadfly.pl
+
+all :: bin/process_sgd.pl
+	$(NOECHO) $(NOOP)
+
+bin/process_sgd.pl :: bin/process_sgd.PLS pm_to_blib
+	$(PERLRUNINST) bin/process_sgd.PLS bin/process_sgd.pl
+
+all :: bin/process_wormbase.pl
+	$(NOECHO) $(NOOP)
+
+bin/process_wormbase.pl :: bin/process_wormbase.PLS pm_to_blib
+	$(PERLRUNINST) bin/process_wormbase.PLS bin/process_wormbase.pl
+
+all :: bin/register_moby_services.pl
+	$(NOECHO) $(NOOP)
+
+bin/register_moby_services.pl :: bin/register_moby_services.PLS pm_to_blib
+	$(PERLRUNINST) bin/register_moby_services.PLS bin/register_moby_services.pl
+
+all :: bin/ucsc_genes2gff.pl
+	$(NOECHO) $(NOOP)
+
+bin/ucsc_genes2gff.pl :: bin/ucsc_genes2gff.PLS pm_to_blib
+	$(PERLRUNINST) bin/ucsc_genes2gff.PLS bin/ucsc_genes2gff.pl
+
+all :: cgi-bin/das
+	$(NOECHO) $(NOOP)
+
+cgi-bin/das :: cgi-bin/das.PLS pm_to_blib
+	$(PERLRUNINST) cgi-bin/das.PLS cgi-bin/das
+
+all :: cgi-bin/gbrowse
+	$(NOECHO) $(NOOP)
+
+cgi-bin/gbrowse : FORCE
+	$(PERLRUNINST) cgi-bin/gbrowse.PLS cgi-bin/gbrowse
+
+all :: cgi-bin/gbrowse_details
+	$(NOECHO) $(NOOP)
+
+cgi-bin/gbrowse_details : FORCE
+	$(PERLRUNINST) cgi-bin/gbrowse_details.PLS cgi-bin/gbrowse_details
+
+all :: cgi-bin/gbrowse_est
+	$(NOECHO) $(NOOP)
+
+cgi-bin/gbrowse_est : FORCE
+	$(PERLRUNINST) cgi-bin/gbrowse_est.PLS cgi-bin/gbrowse_est
+
+all :: cgi-bin/gbrowse_img
+	$(NOECHO) $(NOOP)
+
+cgi-bin/gbrowse_img : FORCE
+	$(PERLRUNINST) cgi-bin/gbrowse_img.PLS cgi-bin/gbrowse_img
+
+all :: cgi-bin/gbrowse_moby
+	$(NOECHO) $(NOOP)
+
+cgi-bin/gbrowse_moby : FORCE
+	$(PERLRUNINST) cgi-bin/gbrowse_moby.PLS cgi-bin/gbrowse_moby
+
+all :: cgi-bin/moby_server
+	$(NOECHO) $(NOOP)
+
+cgi-bin/moby_server :: cgi-bin/moby_server.PLS pm_to_blib
+	$(PERLRUNINST) cgi-bin/moby_server.PLS cgi-bin/moby_server
+
+all :: conf/MobyServices/GbrowseServices.pm
+	$(NOECHO) $(NOOP)
+
+conf/MobyServices/GbrowseServices.pm :: conf/MobyServices/GbrowseServices.PMS pm_to_blib
+	$(PERLRUNINST) conf/MobyServices/GbrowseServices.PMS conf/MobyServices/GbrowseServices.pm
+
+all :: install_util/cgi_install.pl
+	$(NOECHO) $(NOOP)
+
+install_util/cgi_install.pl :: install_util/cgi_install.PLS pm_to_blib
+	$(PERLRUNINST) install_util/cgi_install.PLS install_util/cgi_install.pl
+
+all :: install_util/conf_install.pl
+	$(NOECHO) $(NOOP)
+
+install_util/conf_install.pl :: install_util/conf_install.PLS pm_to_blib
+	$(PERLRUNINST) install_util/conf_install.PLS install_util/conf_install.pl
+
+all :: install_util/gbrowse_ppm_install.pl
+	$(NOECHO) $(NOOP)
+
+install_util/gbrowse_ppm_install.pl :: install_util/gbrowse_ppm_install.PLS pm_to_blib
+	$(PERLRUNINST) install_util/gbrowse_ppm_install.PLS install_util/gbrowse_ppm_install.pl
+
+all :: install_util/htdocs_install.pl
+	$(NOECHO) $(NOOP)
+
+install_util/htdocs_install.pl :: install_util/htdocs_install.PLS pm_to_blib
+	$(PERLRUNINST) install_util/htdocs_install.PLS install_util/htdocs_install.pl
+
+
+# --- MakeMaker installbin section:
+
+EXE_FILES = bin/register_moby_services.pl bin/make_das_conf.pl bin/process_wormbase.pl bin/process_sgd.pl bin/process_gadfly.pl bin/load_genbank.pl
+
+pure_all :: $(INST_SCRIPT)/process_wormbase.pl $(INST_SCRIPT)/make_das_conf.pl $(INST_SCRIPT)/load_genbank.pl $(INST_SCRIPT)/process_sgd.pl $(INST_SCRIPT)/register_moby_services.pl $(INST_SCRIPT)/process_gadfly.pl
+	$(NOECHO) $(NOOP)
+
+realclean ::
+	$(RM_F) \
+	  $(INST_SCRIPT)/process_wormbase.pl $(INST_SCRIPT)/make_das_conf.pl \
+	  $(INST_SCRIPT)/load_genbank.pl $(INST_SCRIPT)/process_sgd.pl \
+	  $(INST_SCRIPT)/register_moby_services.pl $(INST_SCRIPT)/process_gadfly.pl 
+
+$(INST_SCRIPT)/process_wormbase.pl : bin/process_wormbase.pl $(FIRST_MAKEFILE) $(INST_SCRIPT)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists
+	$(NOECHO) $(RM_F) $(INST_SCRIPT)/process_wormbase.pl
+	$(CP) bin/process_wormbase.pl $(INST_SCRIPT)/process_wormbase.pl
+	$(FIXIN) $(INST_SCRIPT)/process_wormbase.pl
+	-$(NOECHO) $(CHMOD) $(PERM_RWX) $(INST_SCRIPT)/process_wormbase.pl
+
+$(INST_SCRIPT)/make_das_conf.pl : bin/make_das_conf.pl $(FIRST_MAKEFILE) $(INST_SCRIPT)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists
+	$(NOECHO) $(RM_F) $(INST_SCRIPT)/make_das_conf.pl
+	$(CP) bin/make_das_conf.pl $(INST_SCRIPT)/make_das_conf.pl
+	$(FIXIN) $(INST_SCRIPT)/make_das_conf.pl
+	-$(NOECHO) $(CHMOD) $(PERM_RWX) $(INST_SCRIPT)/make_das_conf.pl
+
+$(INST_SCRIPT)/load_genbank.pl : bin/load_genbank.pl $(FIRST_MAKEFILE) $(INST_SCRIPT)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists
+	$(NOECHO) $(RM_F) $(INST_SCRIPT)/load_genbank.pl
+	$(CP) bin/load_genbank.pl $(INST_SCRIPT)/load_genbank.pl
+	$(FIXIN) $(INST_SCRIPT)/load_genbank.pl
+	-$(NOECHO) $(CHMOD) $(PERM_RWX) $(INST_SCRIPT)/load_genbank.pl
+
+$(INST_SCRIPT)/process_sgd.pl : bin/process_sgd.pl $(FIRST_MAKEFILE) $(INST_SCRIPT)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists
+	$(NOECHO) $(RM_F) $(INST_SCRIPT)/process_sgd.pl
+	$(CP) bin/process_sgd.pl $(INST_SCRIPT)/process_sgd.pl
+	$(FIXIN) $(INST_SCRIPT)/process_sgd.pl
+	-$(NOECHO) $(CHMOD) $(PERM_RWX) $(INST_SCRIPT)/process_sgd.pl
+
+$(INST_SCRIPT)/register_moby_services.pl : bin/register_moby_services.pl $(FIRST_MAKEFILE) $(INST_SCRIPT)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists
+	$(NOECHO) $(RM_F) $(INST_SCRIPT)/register_moby_services.pl
+	$(CP) bin/register_moby_services.pl $(INST_SCRIPT)/register_moby_services.pl
+	$(FIXIN) $(INST_SCRIPT)/register_moby_services.pl
+	-$(NOECHO) $(CHMOD) $(PERM_RWX) $(INST_SCRIPT)/register_moby_services.pl
+
+$(INST_SCRIPT)/process_gadfly.pl : bin/process_gadfly.pl $(FIRST_MAKEFILE) $(INST_SCRIPT)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists
+	$(NOECHO) $(RM_F) $(INST_SCRIPT)/process_gadfly.pl
+	$(CP) bin/process_gadfly.pl $(INST_SCRIPT)/process_gadfly.pl
+	$(FIXIN) $(INST_SCRIPT)/process_gadfly.pl
+	-$(NOECHO) $(CHMOD) $(PERM_RWX) $(INST_SCRIPT)/process_gadfly.pl
+
+
+
+# --- MakeMaker subdirs section:
+
+# The default clean, realclean and test targets in this Makefile
+# have automatically been given entries for each subdir.
+
+
+subdirs ::
+	$(NOECHO) cd libalign && $(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) all $(PASTHRU)
+
+
+# --- MakeMaker clean_subdirs section:
+clean_subdirs :
+	$(ABSPERLRUN)  -e 'chdir '\''libalign'\'';  system '\''$(MAKE) clean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';'
+
+
+# --- MakeMaker clean section:
+
+# Delete temporary files but do not touch installed files. We don't delete
+# the Makefile here so a later make realclean still has a makefile to use.
+
+clean :: clean_subdirs
+	- $(RM_F) \
+	  *$(LIB_EXT) core \
+	  core.[0-9] $(INST_ARCHAUTODIR)/extralibs.all \
+	  core.[0-9][0-9] $(BASEEXT).bso \
+	  pm_to_blib.ts core.[0-9][0-9][0-9][0-9] \
+	  $(BASEEXT).x $(BOOTSTRAP) \
+	  perl$(EXE_EXT) tmon.out \
+	  *$(OBJ_EXT) pm_to_blib \
+	  $(INST_ARCHAUTODIR)/extralibs.ld blibdirs.ts \
+	  core.[0-9][0-9][0-9][0-9][0-9] *perl.core \
+	  core.*perl.*.? $(MAKE_APERL_FILE) \
+	  $(BASEEXT).def perl \
+	  core.[0-9][0-9][0-9] mon.out \
+	  lib$(BASEEXT).def perl.exe \
+	  perlmain.c so_locations \
+	  $(BASEEXT).exp 
+	- $(RM_RF) \
+	  blib 
+	- $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL)
+	-$(PERL) install_util/make_clean_add.pl
+
+
+# --- MakeMaker realclean_subdirs section:
+realclean_subdirs :
+	- $(ABSPERLRUN)  -e 'chdir '\''libalign'\'';  system '\''$(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) realclean'\'' if -f '\''$(MAKEFILE_OLD)'\'';'
+	- $(ABSPERLRUN)  -e 'chdir '\''libalign'\'';  system '\''$(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) realclean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';'
+
+
+# --- MakeMaker realclean section:
+# Delete temporary files (via clean) and also delete dist files
+realclean purge ::  clean realclean_subdirs
+	- $(RM_F) \
+	  $(MAKEFILE_OLD) $(FIRST_MAKEFILE) 
+	- $(RM_RF) \
+	  $(DISTVNAME) 
+
+
+# --- MakeMaker metafile section:
+metafile : create_distdir
+	$(NOECHO) $(ECHO) Generating META.yml
+	$(NOECHO) $(ECHO) '# http://module-build.sourceforge.net/META-spec.html' > META_new.yml
+	$(NOECHO) $(ECHO) '#XXXXXXX This is a prototype!!!  It will change in the future!!! XXXXX#' >> META_new.yml
+	$(NOECHO) $(ECHO) 'name:         Generic-Genome-Browser' >> META_new.yml
+	$(NOECHO) $(ECHO) 'version:      1.68' >> META_new.yml
+	$(NOECHO) $(ECHO) 'version_from: ' >> META_new.yml
+	$(NOECHO) $(ECHO) 'installdirs:  vendor' >> META_new.yml
+	$(NOECHO) $(ECHO) 'requires:' >> META_new.yml
+	$(NOECHO) $(ECHO) '    Bio::Perl:                     1.005002' >> META_new.yml
+	$(NOECHO) $(ECHO) '    CGI::Session:                  4.02' >> META_new.yml
+	$(NOECHO) $(ECHO) '    Class::Base:                   0' >> META_new.yml
+	$(NOECHO) $(ECHO) '    Digest::MD5:                   0' >> META_new.yml
+	$(NOECHO) $(ECHO) '    File::Temp:                    0' >> META_new.yml
+	$(NOECHO) $(ECHO) '    GD:                            2.07' >> META_new.yml
+	$(NOECHO) $(ECHO) '    IO::String:                    0' >> META_new.yml
+	$(NOECHO) $(ECHO) '    Text::Shellwords:              1.08' >> META_new.yml
+	$(NOECHO) $(ECHO) '' >> META_new.yml
+	$(NOECHO) $(ECHO) 'distribution_type: module' >> META_new.yml
+	$(NOECHO) $(ECHO) 'generated_by: ExtUtils::MakeMaker version 6.30_01' >> META_new.yml
+	-$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml
+
+
+# --- MakeMaker signature section:
+signature :
+	cpansign -s
+
+
+# --- MakeMaker dist_basics section:
+distclean :: realclean distcheck
+	$(NOECHO) $(NOOP)
+
+distcheck :
+	$(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck
+
+skipcheck :
+	$(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck
+
+manifest :
+	$(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest
+
+veryclean : realclean
+	$(RM_F) *~ *.orig */*~ */*.orig
+
+
+
+# --- MakeMaker dist_core section:
+
+dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE)
+	$(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \
+	  -e '    if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';'
+
+tardist : $(DISTVNAME).tar$(SUFFIX)
+	$(NOECHO) $(NOOP)
+
+uutardist : $(DISTVNAME).tar$(SUFFIX)
+	uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu
+
+$(DISTVNAME).tar$(SUFFIX) : distdir
+	$(PREOP)
+	$(TO_UNIX)
+	$(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME)
+	$(RM_RF) $(DISTVNAME)
+	$(COMPRESS) $(DISTVNAME).tar
+	$(POSTOP)
+
+zipdist : $(DISTVNAME).zip
+	$(NOECHO) $(NOOP)
+
+$(DISTVNAME).zip : distdir
+	$(PREOP)
+	$(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME)
+	$(RM_RF) $(DISTVNAME)
+	$(POSTOP)
+
+shdist : distdir
+	$(PREOP)
+	$(SHAR) $(DISTVNAME) > $(DISTVNAME).shar
+	$(RM_RF) $(DISTVNAME)
+	$(POSTOP)
+
+
+# --- MakeMaker distdir section:
+create_distdir :
+	$(RM_RF) $(DISTVNAME)
+	$(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \
+		-e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');"
+
+distdir : create_distdir distmeta 
+	$(NOECHO) $(NOOP)
+
+
+
+# --- MakeMaker dist_test section:
+disttest : distdir
+	cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL "DESTDIR=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse" "INSTALLDIRS=vendor" "VENDORARCHEXP=/usr/share/perl5"
+	cd $(DISTVNAME) && $(MAKE) $(PASTHRU)
+	cd $(DISTVNAME) && $(MAKE) test $(PASTHRU)
+
+
+
+# --- MakeMaker dist_ci section:
+
+ci :
+	$(PERLRUN) "-MExtUtils::Manifest=maniread" \
+	  -e "@all = keys %{ maniread() };" \
+	  -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \
+	  -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});"
+
+
+# --- MakeMaker distmeta section:
+distmeta : create_distdir metafile
+	$(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{META.yml} => q{Module meta-data (added by MakeMaker)}}) } ' \
+	  -e '    or print "Could not add META.yml to MANIFEST: $${'\''@'\''}\n"'
+
+
+
+# --- MakeMaker distsignature section:
+distsignature : create_distdir
+	$(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) } ' \
+	  -e '    or print "Could not add SIGNATURE to MANIFEST: $${'\''@'\''}\n"'
+	$(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE
+	cd $(DISTVNAME) && cpansign -s
+
+
+
+# --- MakeMaker install section:
+
+install :: all pure_install doc_install conf_install cgi_install htdocs_install
+	$(NOECHO) $(NOOP)
+
+install_perl :: all pure_perl_install doc_perl_install
+	$(NOECHO) $(NOOP)
+
+install_site :: all pure_site_install doc_site_install
+	$(NOECHO) $(NOOP)
+
+install_vendor :: all pure_vendor_install doc_vendor_install
+	$(NOECHO) $(NOOP)
+
+pure_install :: pure_$(INSTALLDIRS)_install
+	$(NOECHO) $(NOOP)
+
+doc_install :: doc_$(INSTALLDIRS)_install
+	$(NOECHO) $(NOOP)
+
+pure__install : pure_site_install
+	$(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site
+
+doc__install : doc_site_install
+	$(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site
+
+pure_perl_install ::
+	$(NOECHO) umask 022; $(MOD_INSTALL) \
+		$(INST_LIB) $(DESTINSTALLPRIVLIB) \
+		$(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \
+		$(INST_BIN) $(DESTINSTALLBIN) \
+		$(INST_SCRIPT) $(DESTINSTALLSCRIPT) \
+		$(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \
+		$(INST_MAN3DIR) $(DESTINSTALLMAN3DIR)
+	$(NOECHO) $(WARN_IF_OLD_PACKLIST) \
+		$(SITEARCHEXP)/auto/$(FULLEXT)
+
+
+pure_site_install ::
+	$(NOECHO) umask 02; $(MOD_INSTALL) \
+		read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \
+		write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \
+		$(INST_LIB) $(DESTINSTALLSITELIB) \
+		$(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \
+		$(INST_BIN) $(DESTINSTALLSITEBIN) \
+		$(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \
+		$(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \
+		$(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR)
+	$(NOECHO) $(WARN_IF_OLD_PACKLIST) \
+		$(PERL_ARCHLIB)/auto/$(FULLEXT)
+
+pure_vendor_install ::
+	$(NOECHO) umask 022; $(MOD_INSTALL) \
+		$(INST_LIB) $(DESTINSTALLVENDORLIB) \
+		$(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \
+		$(INST_BIN) $(DESTINSTALLVENDORBIN) \
+		$(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \
+		$(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \
+		$(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR)
+
+doc_perl_install ::
+
+doc_site_install ::
+	$(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLSITEARCH)/perllocal.pod
+	-$(NOECHO) umask 02; $(MKPATH) $(DESTINSTALLSITEARCH)
+	-$(NOECHO) umask 02; $(DOC_INSTALL) \
+		"Module" "$(NAME)" \
+		"installed into" "$(INSTALLSITELIB)" \
+		LINKTYPE "$(LINKTYPE)" \
+		VERSION "$(VERSION)" \
+		EXE_FILES "$(EXE_FILES)" \
+		>> $(DESTINSTALLSITEARCH)/perllocal.pod
+
+doc_vendor_install ::
+
+
+uninstall :: uninstall_from_$(INSTALLDIRS)dirs
+	$(NOECHO) $(NOOP)
+
+uninstall_from_perldirs ::
+
+uninstall_from_sitedirs ::
+	$(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist
+
+uninstall_from_vendordirs ::
+
+
+
+# --- MakeMaker force section:
+# Phony target to force checking subdirectories.
+FORCE:
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker perldepend section:
+
+
+# --- MakeMaker makefile section:
+# We take a very conservative approach here, but it's worth it.
+# We move Makefile to Makefile.old here to avoid gnu make looping.
+$(FIRST_MAKEFILE) : Makefile.PL $(CONFIGDEP)
+	$(NOECHO) $(ECHO) "Makefile out-of-date with respect to $?"
+	$(NOECHO) $(ECHO) "Cleaning current config before rebuilding Makefile..."
+	-$(NOECHO) $(RM_F) $(MAKEFILE_OLD)
+	-$(NOECHO) $(MV)   $(FIRST_MAKEFILE) $(MAKEFILE_OLD)
+	- $(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) clean $(DEV_NULL)
+	$(PERLRUN) Makefile.PL "DESTDIR=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse" "INSTALLDIRS=vendor" "VENDORARCHEXP=/usr/share/perl5"
+	$(NOECHO) $(ECHO) "==> Your Makefile has been rebuilt. <=="
+	$(NOECHO) $(ECHO) "==> Please rerun the $(MAKE) command.  <=="
+	false
+
+
+
+# --- MakeMaker staticmake section:
+
+# --- MakeMaker makeaperl section ---
+MAP_TARGET    = perl
+FULLPERL      = /usr/bin/perl
+
+$(MAP_TARGET) :: static $(MAKE_APERL_FILE)
+	$(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@
+
+$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib
+	$(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET)
+	$(NOECHO) $(PERLRUNINST) \
+		Makefile.PL DIR=libalign \
+		MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \
+		MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= \
+		DESTDIR=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse \
+		INSTALLDIRS=vendor \
+		VENDORARCHEXP=/usr/share/perl5
+
+
+# --- MakeMaker test section:
+
+TEST_VERBOSE=0
+TEST_TYPE=test_$(LINKTYPE)
+TEST_FILE = test.pl
+TEST_FILES = t/*.t
+TESTDB_SW = -d
+
+testdb :: testdb_$(LINKTYPE)
+
+test :: $(TEST_TYPE)
+	$(NOECHO) $(ABSPERLRUN)  -e 'chdir '\''libalign'\'';  ' \
+	  -e 'system '\''$(MAKE) test $(PASTHRU)'\'' ' \
+	  -e '    if -f '\''$(FIRST_MAKEFILE)'\'';'
+
+test_dynamic :: pure_all
+	PERL_DL_NONLAZY=1 $(FULLPERLRUN) "-MExtUtils::Command::MM" "-e" "test_harness($(TEST_VERBOSE), '$(INST_LIB)', '$(INST_ARCHLIB)')" $(TEST_FILES)
+
+testdb_dynamic :: pure_all
+	PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE)
+
+test_ : test_dynamic
+
+test_static :: pure_all $(MAP_TARGET)
+	PERL_DL_NONLAZY=1 ./$(MAP_TARGET) "-MExtUtils::Command::MM" "-e" "test_harness($(TEST_VERBOSE), '$(INST_LIB)', '$(INST_ARCHLIB)')" $(TEST_FILES)
+
+testdb_static :: pure_all $(MAP_TARGET)
+	PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE)
+
+
+
+# --- MakeMaker ppd section:
+# Creates a PPD (Perl Package Description) for a binary distribution.
+ppd:
+	$(NOECHO) $(ECHO) '<SOFTPKG NAME="$(DISTNAME)" VERSION="1,68,0,0">' > $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    <TITLE>$(DISTNAME)</TITLE>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    <ABSTRACT>A CGI-driven browser for genomic annotations.</ABSTRACT>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    <AUTHOR>Lincoln Stein (lstein at cshl.org)</AUTHOR>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    <IMPLEMENTATION>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="Bio-Perl" VERSION="1,005002,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="CGI-Session" VERSION="4,02,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="Class-Base" VERSION="0,0,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="Digest-MD5" VERSION="0,0,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="File-Temp" VERSION="0,0,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="GD" VERSION="2,07,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="IO-String" VERSION="0,0,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="Text-Shellwords" VERSION="1,08,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <OS NAME="MSWin32" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <ARCHITECTURE NAME="MSWin32-x86-multi-thread" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <CODEBASE HREF="" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    </IMPLEMENTATION>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    <IMPLEMENTATION>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="Bio-Perl" VERSION="1,005002,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="CGI-Session" VERSION="4,02,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="Class-Base" VERSION="0,0,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="Digest-MD5" VERSION="0,0,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="File-Temp" VERSION="0,0,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="GD" VERSION="2,07,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="IO-String" VERSION="0,0,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <DEPENDENCY NAME="Text-Shellwords" VERSION="1,08,0,0" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <OS NAME="MSWin32" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <ARCHITECTURE NAME="MSWin32-x86-multi-thread-5.8" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <CODEBASE HREF="" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    </IMPLEMENTATION>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '</SOFTPKG>' >> $(DISTNAME).ppd
+
+	@echo "creating Generic-Genome-Browser.ppd"
+	@echo "creating gbrowse_ppm_support_files-1.68.tar.gz"
+	@$(TAR) zcf gbrowse_ppm_support_files-1.68.tar.gz --exclude CVS --exclude '*~' --exclude '*.PLS' --exclude '.*' --exclude README --exclude '#*' DISCLAIMER INSTALL docs htdocs conf cgi-bin install_util sample_data contrib
+	@echo "creating gbrowse_ppm-1.68.tar.gz"
+	@$(TAR) zcf gbrowse_ppm-1.68.tar.gz --exclude man1 --exclude man3 blib
+	@perl -pi -e 's!HREF=""!HREF="http://www.gmod.org/ggb/ppm/gbrowse_ppm-1.68.tar.gz"!' Generic-Genome-Browser.ppd
+	@perl -pi -e 's!(\s*</IMPLEMENTATION>)!\t\t<INSTALL HREF="http://www.gmod.org/ggb/ppm/gbrowse_ppm_install.pl" EXEC="PPM_PERL" />\n\1!' Generic-Genome-Browser.ppd
+	@perl -pi -e 's!Bio-Perl!bioperl!' Generic-Genome-Browser.ppd
+	@cp install_util/gbrowse_ppm_install.pl .
+
+
+# --- MakeMaker pm_to_blib section:
+
+pm_to_blib : $(TO_INST_PM)
+	$(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', '\''$(PM_FILTER)'\'')' \
+	  lib/Bio/Graphics/Glyph/trace.pm blib/lib/Bio/Graphics/Glyph/trace.pm \
+	  lib/Bio/Graphics/Browser/I18n.pm blib/lib/Bio/Graphics/Browser/I18n.pm \
+	  lib/Bio/Graphics/Browser/Plugin.pm blib/lib/Bio/Graphics/Browser/Plugin.pm \
+	  lib/Bio/Graphics/Glyph/genscan_transcript.pm blib/lib/Bio/Graphics/Glyph/genscan_transcript.pm \
+	  lib/Bio/Graphics/Browser/Realign.pm blib/lib/Bio/Graphics/Browser/Realign.pm \
+	  lib/Bio/Graphics/Glyph/wormbase_transcript.pm blib/lib/Bio/Graphics/Glyph/wormbase_transcript.pm \
+	  lib/Bio/Graphics/FeatureFile.pm blib/lib/Bio/Graphics/FeatureFile.pm \
+	  lib/Bio/DB/GFF/Aggregator/reftranscript.pm blib/lib/Bio/DB/GFF/Aggregator/reftranscript.pm \
+	  lib/Bio/DB/Das/BioSQL/PartialSeqAdaptor.pm blib/lib/Bio/DB/Das/BioSQL/PartialSeqAdaptor.pm \
+	  lib/Bio/DB/Das/BioSQL/BioDatabaseAdaptor.pm blib/lib/Bio/DB/Das/BioSQL/BioDatabaseAdaptor.pm \
+	  lib/Bio/DB/Das/Chado/Segment/Feature.pm blib/lib/Bio/DB/Das/Chado/Segment/Feature.pm \
+	  lib/Bio/Graphics/Glyph/ld_plot.pm blib/lib/Bio/Graphics/Glyph/ld_plot.pm \
+	  lib/Bio/DB/GFF/Aggregator/waba_alignment.pm blib/lib/Bio/DB/GFF/Aggregator/waba_alignment.pm \
+	  lib/Bio/DB/GFF/Aggregator/orf.pm blib/lib/Bio/DB/GFF/Aggregator/orf.pm \
+	  lib/Bio/Graphics/Glyph/drosophila_arrow.pm blib/lib/Bio/Graphics/Glyph/drosophila_arrow.pm \
+	  lib/Bio/Graphics/Glyph/spectrogram.pm blib/lib/Bio/Graphics/Glyph/spectrogram.pm \
+	  lib/Bio/Graphics/Browser/PadAlignment.pm blib/lib/Bio/Graphics/Browser/PadAlignment.pm \
+	  lib/Bio/DB/Das/BioSQL/Iterator.pm blib/lib/Bio/DB/Das/BioSQL/Iterator.pm \
+	  lib/Bio/DB/Das/BioSQL/DBAdaptor.pm blib/lib/Bio/DB/Das/BioSQL/DBAdaptor.pm \
+	  lib/Bio/Graphics/Browser.pm blib/lib/Bio/Graphics/Browser.pm \
+	  lib/Bio/DB/GFF/Aggregator/wormbase_gene.pm blib/lib/Bio/DB/GFF/Aggregator/wormbase_gene.pm \
+	  lib/Bio/Graphics/Glyph/ideogram.pm blib/lib/Bio/Graphics/Glyph/ideogram.pm \
+	  lib/Bio/Graphics/Glyph/phased_exons.pm blib/lib/Bio/Graphics/Glyph/phased_exons.pm \
+	  lib/Bio/DB/Das/BioSQL/Segment.pm blib/lib/Bio/DB/Das/BioSQL/Segment.pm \
+	  lib/Bio/Graphics/Browser/PageSettings.pm blib/lib/Bio/Graphics/Browser/PageSettings.pm \
+	  lib/Bio/Graphics/Browser/PluginSet.pm blib/lib/Bio/Graphics/Browser/PluginSet.pm \
+	  lib/CGI/Session/ID/salted_md5.pm blib/lib/CGI/Session/ID/salted_md5.pm \
+	  lib/Bio/DB/GFF/Aggregator/match_gap.pm blib/lib/Bio/DB/GFF/Aggregator/match_gap.pm \
+	  lib/Bio/Graphics/Glyph/heat_map.pm blib/lib/Bio/Graphics/Glyph/heat_map.pm \
+	  lib/CGI/Toggle.pm blib/lib/CGI/Toggle.pm \
+	  lib/Bio/Graphics/Browser/GFFhelper.pm blib/lib/Bio/Graphics/Browser/GFFhelper.pm \
+	  lib/Bio/Graphics/Browser/RemoteSet.pm blib/lib/Bio/Graphics/Browser/RemoteSet.pm \
+	  lib/Bio/Graphics/Glyph/insertion_chromosome.pm blib/lib/Bio/Graphics/Glyph/insertion_chromosome.pm \
+	  lib/Bio/Graphics/Glyph/pairwise_plot.pm blib/lib/Bio/Graphics/Glyph/pairwise_plot.pm \
+	  lib/Bio/Graphics/Glyph/allele_tower.pm blib/lib/Bio/Graphics/Glyph/allele_tower.pm \
+	  lib/Bio/Graphics/Browser/Util.pm blib/lib/Bio/Graphics/Browser/Util.pm \
+	  lib/Bio/DB/Das/Chado.pm blib/lib/Bio/DB/Das/Chado.pm \
+	  lib/Bio/Graphics/Browser/Markup.pm blib/lib/Bio/Graphics/Browser/Markup.pm \
+	  lib/Bio/Graphics/Glyph/heat_map_ideogram.pm blib/lib/Bio/Graphics/Glyph/heat_map_ideogram.pm \
+	  lib/Bio/DB/Das/BioSQL.pm blib/lib/Bio/DB/Das/BioSQL.pm \
+	  lib/Bio/Graphics/Glyph/connector.pm blib/lib/Bio/Graphics/Glyph/connector.pm \
+	  lib/Bio/DB/Das/Chado/Segment.pm blib/lib/Bio/DB/Das/Chado/Segment.pm \
+	  lib/Bio/Graphics/Browser/UploadSet.pm blib/lib/Bio/Graphics/Browser/UploadSet.pm 
+	$(NOECHO) $(TOUCH) pm_to_blib
+
+
+# --- MakeMaker selfdocument section:
+
+
+# --- MakeMaker postamble section:
+
+conf_install ::
+	$(PERL) "/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/install_util/conf_install.pl" "CGIBIN=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/usr/lib/cgi-bin" "DO_XS=1" "APACHE=/usr/local/apache" "CONF=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/etc/" "HTDOCS=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/var/www"  
+
+htdocs_install ::
+	$(PERL) "/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/install_util/htdocs_install.pl" "CGIBIN=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/usr/lib/cgi-bin" "DO_XS=1" "APACHE=/usr/local/apache" "CONF=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/etc/" "HTDOCS=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/var/www" 
+
+cgi_install ::
+	$(PERL) "/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/install_util/cgi_install.pl" "CGIBIN=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/usr/lib/cgi-bin" "DO_XS=1" "APACHE=/usr/local/apache" "CONF=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/etc/" "HTDOCS=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse/var/www" 
+
+
+
+# End.

Added: trunk/packages/gbrowse/trunk/bin/load_genbank.pl
===================================================================
--- trunk/packages/gbrowse/trunk/bin/load_genbank.pl	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/bin/load_genbank.pl	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,197 @@
+#!/usr/bin/perl
+# $Id: load_genbank.PLS,v 1.5 2004/11/23 20:33:08 scottcain Exp $
+use strict;
+use Bio::DB::GFF;
+use Getopt::Long;
+
+=head1 NAME
+
+load_genbank.pl - Load a Bio::DB::GFF database from GENBANK files.
+
+=head1 SYNOPSIS
+
+  % load_genbank.pl -d genbank -f localfile.gb
+  % load_genbank.pl -d genbank -a AP003256
+
+NOTE: The script bp_genbank2gff.pl in the BioPerl distribution is the
+same as this script.
+
+=head1 DESCRIPTION
+
+This script loads a Bio::DB::GFF database with the features contained
+in a either a local genbank file or an accession that is fetched from
+genbank.  Various command-line options allow you to control which
+database to load and whether to allow an existing database to be
+overwritten.
+
+This script currently only uses MySQL, though it is a proof-of-
+principle and could easily be extended to work with other RDMS
+that are supported by GFF through adaptors.
+
+=head1 COMMAND-LINE OPTIONS
+
+Command-line options can be abbreviated to single-letter options.
+e.g. -d instead of --database.
+
+   --create                  Force creation and initialization of database
+   --dsn       <dsn>         Data source (default dbi:mysql:test)
+   --user      <user>        Username for mysql authentication
+   --pass      <password>    Password for mysql authentication
+   --proxy     <proxy>       Proxy server to use for remote access
+   --file                    Arguments that follow are Genbank/EMBL file names (default)
+   --accession               Arguments that follow are genbank accession numbers
+   --stdout                  Write converted GFF file to stdout rather than loading
+
+=head1 SEE ALSO
+
+L<Bio::DB::GFF>, L<bulk_load_gff.pl>, L<load_gff.pl>
+
+=head1 AUTHOR
+
+Scott Cain, cain at cshl.org
+
+Lincoln Stein, lstein at cshl.org
+
+Copyright (c) 2003 Cold Spring Harbor Laboratory
+
+This library is free software; you can redistribute it and/or modify
+it under the same terms as Perl itself.  See DISCLAIMER.txt for
+disclaimers of warranty.
+
+=cut
+
+package Bio::DB::GFF::Adaptor::biofetch_to_stdout;
+use CGI 'escape';
+use Bio::DB::GFF::Util::Rearrange;
+use Bio::DB::GFF::Adaptor::biofetch;
+use vars '@ISA';
+ at ISA = 'Bio::DB::GFF::Adaptor::biofetch';
+
+sub new {
+  my $class = shift;
+  my $self  = bless {},$class;
+  my ($proxy) = rearrange(['PROXY'], at _);
+  if ($proxy) {
+    my @args = ref($proxy) ? @$proxy : eval $proxy;
+    $self->{_proxy} = \@args if @args;
+  }
+  $self;
+}
+
+sub load_gff_line {
+  my ($self,$options) = @_;
+  # synthesize GFF3-compatible line
+  my @attributes;
+  if (my $parent = $options->{gname}) {
+     push @attributes,"Parent=".escape($parent) unless $options->{method} =~ /^gene$/;
+     push @attributes,"ID=".escape($parent);
+  }
+  if (my $tstart = $options->{tstart}) {
+    my $tstop    = $options->{tstop};
+    my $target   = escape($options->{gname});
+    push @attributes,"Target=$target+$tstart+$tstop";
+  }
+  my %a;
+  if (my $attributes = $options->{attributes}) {
+    for my $a (@$attributes) {
+      my ($tag,$value) = @$a;
+      push @{$a{escape($tag)}},escape($value);
+    }
+    for my $a (keys %a) {
+       push @attributes,"$a=".join(',',@{$a{$a}});
+    }
+  }
+  my $last_column = join ';', at attributes;
+  if ($options->{method} eq 'origin') {
+     print "##sequence-region $options->{gname} $options->{start} $options->{stop}\n";
+  }
+  $$options{score}  ||='.';
+  $$options{source} ||='genbank';
+  print join("\t",@{$options}{qw(ref source method start stop score strand phase)},$last_column),"\n";
+}
+
+sub load_sequence_string {
+  my $self = shift;
+  my ($acc,$seq)  = @_;
+  $seq =~ s/(.{1,60})/$1\n/g;
+  print ">$acc\n\L$seq\U\n";
+}
+
+sub setup_load {
+   my $self = shift;
+   print "##gff-version 3\n";
+}
+
+sub finish_load { }
+
+1;
+
+package main;
+
+my ($DSN,$ADAPTOR,$CREATE,$USER,$PASSWORD,$FASTA,$ACC,$FILE,$PROXY,$STDOUT);
+
+GetOptions ('dsn:s'       => \$DSN,
+	    'user:s'      => \$USER,
+	    'password:s'  => \$PASSWORD,
+            'accession'   => \$ACC,
+            'file'        => \$FILE,
+            'proxy:s'     => \$PROXY,
+            stdout        => \$STDOUT,
+	    create        => \$CREATE) or die <<USAGE;
+Usage: $0 [options] <gff file 1> <gff file 2> ...
+Load a Bio::DB::GFF database from GFF files.
+
+ Options:
+   --create                  Force creation and initialization of database
+   --dsn       <dsn>         Data source (default dbi:mysql:test)
+   --user      <user>        Username for mysql authentication
+   --pass      <password>    Password for mysql authentication
+   --proxy     <proxy>       Proxy server to use for remote access
+   --file                    Arguments that follow are Genbank/EMBL file names (default)
+   --accession               Arguments that follow are genbank accession numbers
+
+This script loads a Bio::DB::GFF database with the features contained
+in a either a local genbank file or an accession that is fetched from
+genbank.  Various command-line options allow you to control which
+database to load and whether to allow an existing database to be
+overwritten.
+
+This script currently only uses MySQL, though it is a proof-of-
+principle and could easily be extended to work with other RDMS
+that are supported by GFF through adaptors.
+
+USAGE
+;
+
+# some local defaults
+$DSN     ||= 'dbi:mysql:test';
+$ADAPTOR = $STDOUT ? 'biofetch_to_stdout' : 'biofetch';
+
+my @auth;
+push @auth,(-user=>$USER)     if defined $USER;
+push @auth,(-pass=>$PASSWORD) if defined $PASSWORD;
+push @auth,(-proxy=>$PROXY)   if defined $PROXY;
+
+my $db = Bio::DB::GFF->new(-adaptor=>$ADAPTOR,-dsn => $DSN, at auth)
+  or die "Can't open database: ",Bio::DB::GFF->error,"\n";
+
+if ($CREATE) {
+  $db->initialize(1);
+}
+
+die "you must specify either an accession to retrieve from\nembl or a local file containing data in embl format\n" 
+  unless @ARGV;
+
+if ($ACC && !$FILE) {
+  while ($_ = shift) {
+    print STDERR "Loading $_...";
+    my $result = $db->load_from_embl(/^NC_/?'refseq':'embl' => $_);
+    print STDERR $result ? "ok\n" : "failed\n";
+  }
+} else {
+  while ($_ = shift) {
+    print STDERR "Loading $_...\n";
+    my $result = $db->load_from_file($_);
+    print STDERR $result ? "ok\n" : "failed\n";
+  }
+}

Added: trunk/packages/gbrowse/trunk/bin/make_das_conf.pl
===================================================================
--- trunk/packages/gbrowse/trunk/bin/make_das_conf.pl	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/bin/make_das_conf.pl	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,280 @@
+#!/usr/bin/perl
+# $Id: make_das_conf.PLS,v 1.2.6.1.2.1 2006/09/21 19:39:14 lstein Exp $
+
+use strict;
+use Bio::Das 1.03;
+use Getopt::Long;
+
+my @COLORS = qw(cyan blue red yellow green wheat turquoise orange);  # default colors
+my $color = 0;      # position in color cycle
+my %known_aggregators = map {$_=>1} qw(clone match processed_transcript wormbase_gene
+                                       orf reftranscript waba_alignment
+                                       coding cds alignment transcript
+                                       ucsc_assembly ucsc_ensgene ucsc_refgene
+                                       ucsc_sanger22 ucsc_sanger22pseudo
+                                       ucsc_softberry ucsc_twinscan ucsc_unigene);
+my $proxy;
+
+GetOptions('proxy=s' => \$proxy) or usage_statement();
+
+my $url = shift;
+$url or usage_statement();
+$url =~ m!^http:.+das(/\w+)?$! or usage_statement("This doesn't look like a DAS URL to me.");
+$ENV{HTTP_PROXY} ||= $proxy;
+
+list_sources($url) && exit 0 if $url =~ m!das/?$!;
+generate_config_file($url);
+
+exit 0;
+
+sub usage_statement {
+  my $error = shift;
+  $error .= "\n" if $error;
+
+die <<END;
+${error}Usage: $0 <das URL to load>
+
+Options: -proxy  <http proxy to use>
+
+This utility attempts to contact a DAS source and to create a starter
+configuration file for gbrowse.  If you don\'t know the list of data sources
+it will retrieve them and ask you to select one.
+
+If you need an HTTP proxy, set the HTTP_PROXY environment variable to
+the host and port number, in the form "http://proxy.host:port/", or
+pass the proxy URL to the -proxy option.
+END
+; }
+
+sub list_sources {
+  my $url     = shift;
+  my $das = Bio::Das->new($url);
+  warn "proxy = $ENV{HTTP_PROXY}";
+  $das->proxy($ENV{HTTP_PROXY}) if $ENV{HTTP_PROXY};
+  my @sources = $das->sources or bad_request_exit($das);
+  print "The following DAS URLs are available at this server.  Please call the script again\n";
+  print "using one of the following URLs:\n\n";
+  for my $s (@sources) {
+    print $s->url,"\n";
+    print "\t",$s->description,"\n\n";
+  }
+  1;
+}
+
+sub generate_config_file {
+  my $url           = shift;
+  my ($server,$dsn) = $url=~ m[^(.+/das)/(\w+)];
+  my $das   = Bio::Das->new($server=>$dsn);
+
+  $das->proxy($ENV{HTTP_PROXY}) if $ENV{HTTP_PROXY};
+
+  my @sources  = $das->sources or bad_request_exit($das);
+  my ($source) = grep {$_->id eq $das->default_dsn} @sources;
+
+  my @types   = $das->types  or bad_request_exit($das);
+  $source  or bad_request_exit($das);
+
+  my %seenit;
+  my @aggregators = grep {!$seenit{$_}++} 
+                      map {
+                            my ($method,$source) = split ':';
+                            $known_aggregators{$method} ? $method : "$method\{$method\}"
+			  } @types;
+  my $aggregators = join "\n       ", at aggregators;
+
+  my $description  = $source->description;
+  my $mapmaster    = $source->master;
+  my @entry_points = sort {"$a" cmp "$b"} $das->entry_points;
+  foreach (@entry_points) {  # remove coordinates
+    s/:\d+,\d+$//;
+  }
+
+  my $proxy = $ENV{HTTP_PROXY} ? "-proxy  $ENV{HTTP_PROXY}" : '';
+
+  # top part of the config file
+  print <<END;
+[GENERAL]
+description   = $description
+db_adaptor    = Bio::Das
+db_args       = -source $server
+	        -dsn    $dsn
+                $proxy
+
+# examples to show in the introduction
+examples = @entry_points
+
+das mapmaster = $mapmaster
+
+aggregators = $aggregators
+plugins     =
+
+# list of tracks to turn on by default
+default features =
+
+# The class of the objects used to establish the reference coordinates.
+reference class  = Sequence
+
+# "automatic" classes to try when an unqualified identifier is given
+automatic classes =
+
+# a footer
+footer = <hr>
+	<table width="100%">
+	<TR>
+	<TD align="LEFT" class="databody">
+	For the source code for this browser, see the <a href="http://www.gmod.org">
+	Generic Model Organism Database Project.</a>  For other questions, send
+	mail to <a href="mailto:lstein\@cshl.org">lstein\@cshl.org</a>.
+	</TD>
+	</TR>
+	</table>
+	<hr>
+
+# Various places where you can insert your own HTML -- see configuration docs
+html1 = 
+html2 = 
+html3 = 
+html4 = 
+html5 = 
+html6 = 
+
+# what image widths to offer
+image widths  = 450 640 800 1024
+
+# default width of detailed view (pixels)
+default width = 800
+
+# Web site configuration info
+stylesheet  = /gbrowse/gbrowse.css
+buttons     = /gbrowse/images/buttons
+tmpimages   = /gbrowse/tmp
+
+# max and default segment sizes for detailed view
+max segment     = 1000000
+default segment = 100000
+
+# zoom levels
+zoom levels    = 100 200 1000 2000 5000 10000 20000 50000 100000 2000000 500000 1000000
+
+# colors of the overview, detailed map and key
+overview bgcolor = lightgrey
+detailed bgcolor = lightgoldenrodyellow
+key bgcolor      = beige
+
+########################
+# Default glyph settings
+########################
+
+[TRACK DEFAULTS]
+glyph         = segments
+height        = 10
+bgcolor       = lightgrey
+fgcolor       = black
+font2color    = blue
+label density = 25
+bump density  = 100
+label         = 1
+description   = 1
+
+END
+;
+
+  for my $type (@types) {
+    my $method = $type->method || $type;
+    my $source = $type->source;
+    my $label  = uc ($type eq $method ? $type : "${type}_${method}");
+    $label =~ s/:/_/g;
+    my $desc   = $source ? "These are ${method} features from $source." : "These are ${method} features.";
+    my $key    = $type;
+    my $category = $type->category;
+    my $idx      = $color++ % @COLORS;
+    print <<END;
+[$label]
+feature      = $type
+bgcolor      = $COLORS[$idx]
+das category = $category
+key          = $key
+citation     = $desc
+
+END
+  }
+}
+
+sub bad_request_exit {
+  my $das = shift;
+  my $error = $das->error;
+  die <<END;
+$error
+
+An error was encountered while processing the DAS request.  Are you sure this
+is an operational DAS server?
+END
+}
+
+# boilerplate
+__END__
+
+=head1 NAME
+
+make_das_conf.pl - Create GBrowse config files from DAS sources
+
+=head1 SYNOPSIS
+
+  % make_das_conf.pl http://genome.cse.ucsc.edu/cgi-bin/das/hg16 > /usr/local/apache/conf/gbrowse.conf/ucsc.conf
+
+=head1 DESCRIPTION
+
+This script generates a rough draft configuration file suitable for
+browsing a remote DAS server.
+
+To use this script, give it the URL of a DAS server.  If you point it
+at the DAS base URL (without the data source name), as in
+"http://genome.cse.ucsc.edu/cgi-bin/das", it will print a list of
+valid data sources to standard output.  If you give it a complete DAS
+URL, as in "http://genome.cse.ucsc.edu/cgi-bin/das/hg16", it will
+print a gbrowse configuration file to standard output.
+
+You will probably want to tweak the configuration file after you
+generate it.  In particular, you will want to customize the glyph
+types associated with each track and adjust the list of examples given
+in the instructions (by default this script uses the complete list of
+entry points, which may be rather long).
+
+Also be aware that this script creates a set of aggregators that may
+or may not be correct.  Consider the case of a DAS server which uses
+the canonical structure for a spliced mRNA:
+
+     main method:   mRNA
+     subparts:      5'-UTR, CDS, 3'-UTR
+
+This conversion script will generate the following set of aggregators:
+
+   mRNA{mRNA}
+   5'-UTR{5'-UTR}
+   CDS{CDS}
+   3'-UTR{3'-UTR}
+
+It will also generate a total of four tracks, one each for the mRNA
+and each of its parts.
+
+This is, of course, incorrect. You will want to consolidate these into
+a single aggregator:
+
+   mRNA{5'-UTR,3'-UTR,CDS/mRNA}
+
+=head1 SEE ALSO
+
+L<Bio::DB::GFF>, L<bulk_load_gff.pl>, L<load_gff.pl>
+
+=head1 AUTHOR
+
+Lincoln Stein <lstein at cshl.org>.
+
+Copyright (c) 2002 Cold Spring Harbor Laboratory
+
+This library is free software; you can redistribute it and/or modify
+it under the same terms as Perl itself.  See DISCLAIMER.txt for
+disclaimers of warranty.
+
+=cut
+

Added: trunk/packages/gbrowse/trunk/bin/process_gadfly.pl
===================================================================
--- trunk/packages/gbrowse/trunk/bin/process_gadfly.pl	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/bin/process_gadfly.pl	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,194 @@
+#!/usr/bin/perl
+if ($ARGV[0]=~/^-?-h/ || @ARGV < 1) {
+die <<'USAGE';
+
+This script massages the RELEASE 3 Flybase/Gadfly GFF files located at
+http://www.fruitfly.org/sequence/release3download.shtml into the
+"correct" version of the GFF format.
+
+To use this script, download the whole genome FASTA file and save it
+to disk.  (The downloaded file will be called something like
+"na_whole-genome_genomic_dmel_RELEASE3.FASTA", but the link on the
+HTML page doesn't give the filename.)  Do the same for the whole
+genome GFF annotation file (the saved file will be called something
+like "whole-genome_annotation-feature-region_dmel_RELEASE3.GFF".)  If
+you wish you can download the ZIP compressed versions of these files.
+
+Next run this script on the two files, indicating the name of the
+downloaded FASTA file first, followed by the gff file:
+
+ % process_gadfly.pl na_whole-genome_genomic_dmel_RELEASE3.FASTA whole-genome_annotation-feature-region_dmel_RELEASE3.GFF > fly.gff
+
+The gadfly.gff file and the fasta file can now be loaded into a Bio::DB::GFF database
+using the following command:
+
+  % bulk_load_gff.pl -d fly -fasta na_whole-genome_genomic_dmel_RELEASE3.FASTA fly.gff 
+
+(Where "fly" is the name of the database.  Change it as appropriate.
+The database must already exist and be writable by you!)
+
+The resulting database will have the following feature types
+(represented as "method:source"):
+
+  Component:arm              A chromosome arm
+  Component:scaffold	     A chromosome scaffold (accession #)
+  Component:gap	             A gap in the assembly
+  clone:clonelocator         A BAC clone
+  gene:gadfly                A gene accession number
+  transcript:gadfly          A transcript accession number
+  translation:gadfly         A translation
+  codon:gadfly               Significance unknown
+  exon:gadfly                An exon
+  symbol:gadfly              A classical gene symbol
+  similarity:blastn          A BLASTN hit
+  similarity:blastx          A BLASTX hit
+  similarity:sim4            EST->genome using SIM4
+  similarity:groupest        EST->genome using GROUPEST
+  similarity:repeatmasker    A repeat
+
+IMPORTANT NOTE: This script will *only* work with the RELEASE3 gadfly
+files and will not work with earlier releases.
+
+USAGE
+;
+}
+
+use strict;
+
+foreach (@ARGV) {
+  $_ = "gunzip -c $_ |" if /\.gz$/;
+}
+
+if ($ARGV[0] =~ /fasta/i) {
+  process_fasta();
+} else {
+  die "call as process_gadfly.pl \"release3_dna.FASTA\" \"release3_features.GFF\"";
+}
+
+while (<>) {
+  next if /^\#/;
+  chomp;
+  my ($ref,$csource,$cmethod,$start,$stop,$cscore,$strand,$cphase,$cgroup) = split "\t";
+  next if $start > $stop;  # something wrong. Don't bother fixing it.
+
+  my $fixed_group = fix_group($csource,$cmethod,$cgroup);
+  print join("\t",$ref,$csource,$cmethod,$start,$stop,$cscore,$strand,$cphase,$fixed_group),"\n";
+  dump_symbol($ref,$csource,$cmethod,$start,$stop,$cscore,$strand,$cphase,$cgroup) if $cgroup =~ /symbol/i;
+}
+
+sub fix_group {
+  my ($source,$method,$group) = @_;
+  my (@group,$gene);
+  push @group,"Transcript $1" if $group =~ /transgrp=([^; ]+)/;
+  push @group,"Gene $1"       if $method eq 'gene' && $group =~ /genegrp=([^; ]+)/;
+
+  $gene ||= qq(Note "FlyBase $1")  if $group =~ /dbxref=FlyBase:(\w+)/;
+  $gene ||= qq(Note "GadFly $1")   if $group =~ /genegrp=([^; ]+)/;
+  push @group,qq(Note "Symbol $1") if $group =~ /symbol=([^; ]+)/ && "Gene $1" ne $group[0];
+  push @group,$gene;
+  return join ' ; ', at group;
+}
+
+# called when we encounter a gene symbol
+sub dump_symbol {
+  my ($ref,$csource,$cmethod,$start,$stop,$cscore,$strand,$cphase,$cgroup) = @_;
+  my ($symbol) = $cgroup=~/symbol=([^;]+)/;
+  my ($gene)   = $cgroup=~/genegrp=([^;]+)/;
+  return if $symbol eq $gene;
+  $cmethod = 'symbol';
+  print join("\t",$ref,$csource,$cmethod,$start,$stop,$cscore,$strand,$cphase,qq(Symbol "$symbol")),"\n";
+}
+
+sub process_fasta {
+  my $file = shift @ARGV;
+  open F,$file or die "Can't open $file: $!";
+  print STDERR "Reading big FASTA file, please be patient...\n";
+  my ($current_id,%lengths);
+  while (<F>) {
+    if (/^>(\S+)/) {
+      $current_id = $1;
+      next;
+    }
+    die "this doesn't look like a fasta file to me" unless $current_id;
+    chomp;
+    $lengths{$current_id} += length;
+  }
+  foreach (sort keys %lengths) {
+    print join("\t",$_,'arm','Component',1,$lengths{$_},'.','+','.',qq(Sequence "$_")),"\n";
+  }
+}
+
+__END__
+
+=head1 NAME
+
+process_gadfly.pl - Massage Gadfly/FlyBase GFF files into a version suitable for the Generic Genome Browser
+
+=head1 SYNOPSIS
+
+  % process_gadfly.pl ./RELEASE2 > gadfly.gff
+
+=head1 DESCRIPTION
+
+This script massages the RELEASE 3 Flybase/Gadfly GFF files located at
+http://www.fruitfly.org/sequence/release3download.shtml into the "correct"
+version of the GFF format.
+
+To use this script, download the whole genome FASTA file and save it
+to disk.  (The downloaded file will be called something like
+"na_whole-genome_genomic_dmel_RELEASE3.FASTA", but the link on the
+HTML page doesn't give the filename.)  Do the same for the whole
+genome GFF annotation file (the saved file will be called something
+like "whole-genome_annotation-feature-region_dmel_RELEASE3.GFF".)  If
+you wish you can download the ZIP compressed versions of these files.
+
+Next run this script on the two files, indicating the name of the
+downloaded FASTA file first, followed by the gff file:
+
+ % process_gadfly.pl na_whole-genome_genomic_dmel_RELEASE3.FASTA whole-genome_annotation-feature-region_dmel_RELEASE3.GFF > fly.gff
+
+The gadfly.gff file and the fasta file can now be loaded into a Bio::DB::GFF database
+using the following command:
+
+  % bulk_load_gff.pl -d fly -fasta na_whole-genome_genomic_dmel_RELEASE3.FASTA fly.gff 
+
+(Where "fly" is the name of the database.  Change it as appropriate.
+The database must already exist and be writable by you!)
+
+The resulting database will have the following feature types
+(represented as "method:source"):
+
+  Component:arm              A chromosome arm
+  Component:scaffold	     A chromosome scaffold (accession #)
+  Component:gap	             A gap in the assembly
+  clone:clonelocator         A BAC clone
+  gene:gadfly                A gene accession number
+  transcript:gadfly          A transcript accession number
+  translation:gadfly         A translation
+  codon:gadfly               Significance unknown
+  exon:gadfly                An exon
+  symbol:gadfly              A classical gene symbol
+  similarity:blastn          A BLASTN hit
+  similarity:blastx          A BLASTX hit
+  similarity:sim4            EST->genome using SIM4
+  similarity:groupest        EST->genome using GROUPEST
+  similarity:repeatmasker    A repeat
+
+IMPORTANT NOTE: This script will *only* work with the RELEASE3 gadfly
+files and will not work with earlier releases.
+
+=head1 SEE ALSO
+
+L<Bio::DB::GFF>, L<bulk_load_gff.pl>, L<load_gff.pl>
+
+=head1 AUTHOR
+
+Lincoln Stein <lstein at cshl.org>.
+
+Copyright (c) 2002 Cold Spring Harbor Laboratory
+
+This library is free software; you can redistribute it and/or modify
+it under the same terms as Perl itself.  See DISCLAIMER.txt for
+disclaimers of warranty.
+
+=cut

Added: trunk/packages/gbrowse/trunk/bin/process_sgd.pl
===================================================================
--- trunk/packages/gbrowse/trunk/bin/process_sgd.pl	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/bin/process_sgd.pl	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,126 @@
+#!/usr/bin/perl
+
+# $Id: process_sgd.PLS,v 1.2 2002/02/18 22:47:34 lstein Exp $
+# This script will convert from SGD format to GFF format
+# See http://genome-www4.stanford.edu/Saccharomyces/SGD/doc/db_specifications.html
+
+use strict;
+
+# hard-coded length data that I couldn't get directly
+my %CHROMOSOMES = (I => 230_203,
+		   II => 813_139,
+		   III => 316_613,
+		   IV  => 1_531_929,
+		   V   => 576_869,
+		   VI => 270_148,
+		   VII => 1_090_937,
+		   VIII => 562_639,
+		   IX => 439_885,
+		   X => 745_444,
+		   XI => 666_445,
+		   XII => 1_078_173,
+		   XIII => 924_430,
+		   XIV => 784_328,
+		   XV  => 1_091_284,
+		   XVI => 948_061,
+		   Mit => 85_779);
+my @ROMAN = qw(I II III IV V VI VII VIII IX X
+	       XI XII XIII XIV XV XVI Mit);
+
+if ($ARGV[0] =~ /^--?h/) {
+  die <<USAGE;
+ Usage: $0 <SGD features file>
+
+This script massages the SGD sequence annotation flat files located at
+ftp://genome-ftp.stanford.edu/pub/yeast/data_dump/feature/chromosomal_features.tab
+into a version of the GFF format suitable for display by the generic
+genome browser.
+
+To use this script, get the SGD chromosomal_features.tab file from the
+FTP site listed above, and run the following command:
+
+  % process_sgd.pl chromosomal_features.tab > yeast.gff
+
+The yeast.gff file can then be loaded into a Bio::DB::GFF database
+using the following command:
+
+  % bulk_load_gff.pl -d <databasename> yeast.gff
+
+USAGE
+;
+}
+
+# first print out chromosomes
+# We hard coded the lengths because they are not available in the features table.
+for my $chrom (sort keys %CHROMOSOMES) {
+  print join("\t",$chrom,'chromosome','Component',1,$CHROMOSOMES{$chrom},'.','.','.',qq(Sequence "$chrom")),"\n";
+}
+
+# this is hard because the SGD idea of a feature doesn't really map onto the GFF idea.
+while (<>) {
+  chomp;
+  my($id,$gene,$aliases,$type,$chromosome,$start,$stop,$strand,$sgdid,$sgdid2,$description,$date) = split "\t";
+  my $ref = $ROMAN[$chromosome-1];
+  $description =~ s/"/\\"/g;
+  $description =~ s/;/\\;/g;
+
+  $strand = $strand eq 'W' ? '+' : '-';
+  ($start,$stop) = ($stop,$start) if $strand eq '-';
+  die "Strand logic is messed up" if $stop < $start;
+
+  if ($gene) {
+     my @aliases = split(/\|/,$aliases);
+     my $aliases = join " ; ",map {qq(Alias "$_")} @aliases;
+     my $group = qq(Gene "$gene" ; Note "$description");
+     $group .= " ; $aliases" if $aliases;
+     print join("\t",$ref,'sgd','gene',$start,$stop,'.',$strand,'.',$group),"\n";
+     $description .= "\\; AKA @aliases" if @aliases;
+  }
+
+  print join("\t",$ref,'sgd',$type,$start,$stop,'.',$strand,'.',qq($type "$id" ; Note "$description")),"\n";
+}
+
+__END__
+
+=head1 NAME
+
+process_sgd.pl - Massage SGD annotation flat files into a version suitable for the Generic Genome Browser
+
+=head1 SYNOPSIS
+
+  % process_sgd.pl chromosomal_features.tab > yeast.gff
+
+=head1 DESCRIPTION
+
+This script massages the SGD sequence annotation flat files located at
+ftp://genome-ftp.stanford.edu/pub/yeast/data_dump/feature/chromosomal_features.tab
+into a version of the GFF format suitable for display by the generic
+genome browser.
+
+To use this script, get the SGD chromosomal_features.tab file from the
+FTP site listed above, and run the following command:
+
+  % process_sgd.pl chromosomal_features.tab > yeast.gff
+
+The yeast.gff file can then be loaded into a Bio::DB::GFF database
+using the following command:
+
+  % bulk_load_gff.pl -d <databasename> yeast.gff
+
+=head1 SEE ALSO
+
+L<Bio::DB::GFF>, L<bulk_load_gff.pl>, L<load_gff.pl>
+
+=head1 AUTHOR
+
+Lincoln Stein <lstein at cshl.org>.
+
+Copyright (c) 2002 Cold Spring Harbor Laboratory
+
+This library is free software; you can redistribute it and/or modify
+it under the same terms as Perl itself.  See DISCLAIMER.txt for
+disclaimers of warranty.
+
+=cut
+
+

Added: trunk/packages/gbrowse/trunk/bin/process_wormbase.pl
===================================================================
--- trunk/packages/gbrowse/trunk/bin/process_wormbase.pl	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/bin/process_wormbase.pl	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,251 @@
+#!/usr/bin/perl
+
+use constant ACEDB => 'sace://aceserver.cshl.org:2005'; 
+use strict;
+use Ace;
+
+my @framework = qw(mex-3 spe-15 lin-17 unc-11 dhc-1 unc-40 smg-5
+		   unc-13 unc-29 eat-16 lin-11 spe-9 par-6 unc-59 unc-54 mab-9 lin-42
+		   sri-71 smu-2 vab-1 bli-2 dpy-10 him-14 mig-5 unc-4 bli-1 sqt-1 rol-1
+		   his-14 unc-52 unc-45 par-2 let-805 sel-8 mab-21 daf-4 sma-3 lin-39
+		   unc-32 tax-4 ced-9 tra-1 nob-1 daf-1 ced-2 lin-1 unc-17 dpy-13 unc-5
+		   smg-7 dif-1 lin-49 elt-1 daf-14 dpy-20 dpy-26 unc-30 tra-3 sup-24
+		   rho-1 egl-8 unc-60 srh-36 apx-1 unc-62 let-418 dpy-11 let-413 sel-9
+		   unc-42 egl-9 sma-1 sqt-3 odr-3 hda-1 unc-76 gcy-20 skr-5 par-4 unc-51
+		   egl-17 lim-6 fox-1 fax-1 lon-2 unc-97 unc-6 unc-18 mec-10 sop-1 mab-18
+		   sdc-2 odr-7 unc-9 unc-3 gas-1 ace-1);
+my %framework = map {$_=>1} @framework;
+my %framework_seen = ();
+
+my $USAGE = <<USAGE;
+This script massages the Wormbase GFF files located at
+ftp://www.wormbase.org/pub/wormbase/GENE_DUMPS into a version of the
+GFF format suitable for display by the generic genome browser.  It
+mainly adds comments to the annotations and designates certain
+well-spaced genetic loci as framework landmarks.
+
+This script requires the AcePerl distribution, which is available on
+CPAN (look for the "Ace" module).
+
+To use this script, get the WormBase GFF files from the FTP site
+listed above and place them in a directory.  It might be a good idea
+to name the directory after the current release, such as WS61.  You do
+not need to uncompress the files.
+
+Then give that directory as the argument to this script and capture
+the script's output to a file:
+
+  % process_wormbase.pl ./WS61 > wormbase.gff
+
+It may take a while before you see output from this script, since it
+must first fetch gene and protein database from the remote AceDB
+running at www.wormbase.org.
+The wormbase.gff file can then be loaded into a Bio::DB::GFF database
+using the following command:
+
+  % bulk_load_gff.pl -d <databasename> wormbase.gff
+USAGE
+;
+#'
+
+die $USAGE if $ARGV[0]=~/^-?-h/i;
+
+my $db = Ace->connect(-url=>ACEDB,
+		      -query_timeout=>500) or die "Can't open ace database:",Ace->error;
+
+if (-d $ARGV[0]) {
+  @ARGV = <$ARGV[0]/*.gff.gz>;
+}
+
+ at ARGV || die $USAGE;
+
+foreach (@ARGV) { # GFF FILES
+  $_ = "gunzip -c $_ |" if /\.gz$/;
+}
+
+my (%NOTES,%LOCUS,%GENBANK,%CONFIRMED,%ORFEOME);
+get_confirmed($db,\%CONFIRMED);
+get_genbank($db,\%GENBANK);
+get_loci($db,\%LOCUS);
+get_transcripts($db,\%LOCUS);
+get_notes($db,\%NOTES);
+get_orfeome($db,\%ORFEOME);
+
+while (<>) {
+  chomp;
+  next if /^\#/;
+  my ($ref,$source,$method,$start,$stop,$score,$strand,$phase,$group) = split /\t/;
+  next if $source eq 'assembly_tag';  # don't want 'em, don't need 'em
+  next if $method eq 'HOMOL_GAP';     # don't want that neither
+  $ref    =~ s/^CHROMOSOME_//;
+  $group  =~ s/CHROMOSOME_//;
+
+  $source ='' if $source eq '*UNKNOWN*';
+
+  if ($method     =~ /Transcript|CDS/
+      && ($source =~ /curated|RNA|miRNA/)
+      && $group   =~ /Transcript|CDS "(\w+\.\d+[a-z]?)"/) {
+    my @notes;
+    push @notes,map { qq(Note "$_")        } @{$NOTES{$1}}     if $NOTES{$1};
+    push @notes,map { qq(Note "$_")        } @{$LOCUS{$1}}     if $LOCUS{$1};
+    push @notes,qq(Confirmed_by "$CONFIRMED{$1}")              if $CONFIRMED{$1};
+    $group = join ' ; ',$group, at notes;
+    if (my $loci = $LOCUS{$1}) {
+      foreach (@$loci) {
+        print join("\t",$ref,$source,'gene',$start,$stop,$score,$strand,$phase,"Locus $_"),"\n";
+        print join("\t",$ref,'framework','gene',$start,$stop,$score,$strand,$phase,"Locus $_"),"\n" 
+          if $framework{$_} && !$framework_seen{$_}++;
+      }
+    }
+  }
+
+  if ($method eq 'region' && $source eq 'Genomic_canonical' && $group =~ /Sequence "(\w+)"/) {
+    if (my $accession = $GENBANK{$1}) {
+      $group .= qq( ; Note "Genbank $accession");
+      print join("\t",$ref,'Genbank',$method,$start,$stop,$score,$strand,$phase,"Genbank \"$accession\""),"\n";
+    }
+  }
+
+  if ($method eq 'intron' && $source =~ /^tRNAscan/) {
+    next;  # messing up tRNA scanning
+  }
+
+  if ($method eq 'PCR_product' && $source eq 'Orfeome' && $group =~ /PCR_product "([^\"]+)"/) {
+    my $amp = $ORFEOME{$1};
+    $group .= qq( ; Amplified $amp) if defined $amp;
+  }
+
+  # fix variant fields: Variant "T" => Note "T"
+  $group =~ s/(?:Variant|Insert) "(\w+)"/Note "$1"/;
+
+  # fix UTR fields
+  if ($group =~ /UTR "([35])_UTR:(\S+)"/) {
+    $method = 'UTR';
+    $source = "curated";
+    $group = qq(CDS "$2");
+  }
+
+  print join("\t",$ref,$source,$method,$start,$stop,$score,$strand,$phase,$group),"\n";
+}
+
+sub get_loci {
+  my ($db,$hash) = @_;  # hash keys are predicted gene names, values are one or more loci names
+  my @genes = $db->fetch(-query=>'find Locus CDS',-filltag=>'CDS');
+  foreach my $obj (@genes) {
+    my @genomic = $obj->CDS or next;
+    foreach (@genomic) {
+      push @{$hash->{$_}},$obj;
+    }
+  }
+}
+
+sub get_transcripts {
+  my ($db,$hash) = @_;  # hash keys are predicted gene names, values are one or more loci names
+  my @genes = $db->fetch(-query=>'find Locus Transcript',-filltag=>'Transcript');
+  foreach my $obj (@genes) {
+    my @genomic = $obj->Transcript or next;
+    foreach (@genomic) {
+      push @{$hash->{$_}},$obj;
+    }
+  }
+}
+
+sub get_notes {
+  my ($db,$hash) = @_;  # hash keys are predicted gene names, values are one or more brief identifications
+  my @genes = $db->fetch(-query=>'find CDS Brief_identification',-filltag=>'Brief_identification');
+  # Should probably also look for notes attached to sequences, yes? As before...
+  push (@genes,$db->fetch(-query=>'find Sequence Brief_identification',-filltag=>'Brief_identification')); 
+  foreach my $obj (@genes) {
+    my @notes = $obj->Brief_identification or next;
+    $hash->{$obj} = \@notes;
+  }
+}
+
+sub get_genbank {
+  my ($db,$hash) = @_;   # hash keys are cosmid names, values are genbank accessions (1 to 1)
+  my @cosmids = $db->fetch(-query=>'find Genome_Sequence Database',-filltag=>'Database');
+  for my $cosmid (@cosmids) {
+    my @dbs = $cosmid->Database;
+    foreach (@dbs) {
+      foreach my $col ($_->col) {
+	next unless $col eq 'NDB_AC';
+	$hash->{$cosmid} = $col->right;
+      }
+    }
+  }
+}
+
+sub get_confirmed {
+  my ($db,$hash) = @_;  # hash keys are predicted gene names, values are confirmation type
+  my @confirmed = $db->fetch(-query=>'find Sequence Confirmed_by',-filltag=>'Confirmed_by');
+  foreach my $obj (@confirmed) {
+    my $confirmed_by = $obj->Confirmed_by || 'Unknown';
+    $hash->{$obj} = $confirmed_by;
+  }
+}
+
+sub get_orfeome {
+  my ($db,$hash) = @_;
+  my @mv_primers = $db->fetch(-query=>'find PCR_Product mv*',-filltag=>'Amplified');
+  for my $obj (@mv_primers) {
+    my $amplified = $obj->Amplified;
+    $hash->{$obj} = $amplified;
+  }
+}
+
+__END__
+
+=head1 NAME
+
+process_wormbase.pl - Massage WormBase GFF files into a version suitable for the Generic Genome Browser
+
+=head1 SYNOPSIS
+
+  % process_wormbase.pl ./WS121 > wormbase.gff
+
+=head1 DESCRIPTION
+
+This script massages the Wormbase GFF files located at
+ftp://www.wormbase.org/pub/wormbase/GENE_DUMPS into a version of the
+GFF format suitable for display by the generic genome browser.  It is
+current for data releases WS121 and beyond. It mainly adds comments to
+the annotations and designates certain well-spaced genetic loci as
+framework landmarks.
+
+This script requires the AcePerl distribution, which is available on
+CPAN (look for the "Ace" module).
+
+To use this script, get the WormBase GFF files from the FTP site
+listed above and place them in a directory.  It might be a good idea
+to name the directory after the current release, such as WS61.  You do
+not need to uncompress the files.
+
+Then give that directory as the argument to this script and capture
+the script's output to a file:
+
+  % process_wormbase.pl ./WS121 > wormbase.gff
+
+It may take a while before you see output from this script, since it
+must first fetch gene and protein database from the remote AceDB
+running at www.wormbase.org.
+The wormbase.gff file can then be loaded into a Bio::DB::GFF database
+using the following command:
+
+  % bulk_load_gff.pl -d <databasename> wormbase.gff
+
+=head1 SEE ALSO
+
+L<Bio::DB::GFF>, L<bulk_load_gff.pl>, L<load_gff.pl>
+
+=head1 AUTHOR
+
+Lincoln Stein <lstein at cshl.org>.
+
+Copyright (c) 2002 Cold Spring Harbor Laboratory
+
+This library is free software; you can redistribute it and/or modify
+it under the same terms as Perl itself.  See DISCLAIMER.txt for
+disclaimers of warranty.
+
+=cut
+

Added: trunk/packages/gbrowse/trunk/bin/register_moby_services.pl
===================================================================
--- trunk/packages/gbrowse/trunk/bin/register_moby_services.pl	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/bin/register_moby_services.pl	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,335 @@
+#!/usr/bin/perl -w
+package MobyServices::GbrowseServices;
+
+###################################################################
+# Non-modperl users should change this variable if needed to point
+# to the directory in which the configuration files are stored.
+#
+$CONF_DIR  = '/home/charles/src/gbrowse-1.68/debian/gbrowse/etc//gbrowse.conf';
+#
+###################################################################
+
+
+
+#=======================================================================
+#$Id: register_moby_services.PLS,v 1.5 2004/01/07 22:21:49 markwilkinson Exp $
+
+use MOBY::Client::Central;
+use strict;
+use Text::Shellwords;
+use MOBY::CommonSubs qw{:all};
+use Bio::Graphics::Browser;
+use Bio::Graphics::Browser::Util;
+
+use vars qw(%dbh $CONFIG $authURI $CONF_DIR $CGIDIR);
+
+if ($ARGV[0] && $ARGV[0] =~ /clean/){
+    &DEREGISTER_SERVICES();
+    print "services deregistered\n";
+    exit 1;
+} elsif ($ARGV[0] && $ARGV[0] =~ /register/){
+    &REGISTER_SERVICES();
+    print "services registered\n";
+    exit 1;
+} else {
+    print <<USAGE;
+
+usage:  perl register_moby_services.pl -register  (to register services)
+        perl register_moby_services.pl -clean     (to deregister them)
+    
+USAGE
+exit 0;
+}
+
+&REGISTER_SERVICES() || die "Registration of your services failed for unknown reasons\n\n";
+
+exit 1;
+    
+
+sub REGISTER_SERVICES {
+    _settings();
+    system 'clear';
+    print STDOUT "
+You MUST have configured the moby.conf file in your
+./gbrowse.conf/MobyServices folder to reflect your
+own server settings BEFORE you run this registration script!\n\n";
+    
+    print STDOUT "Have you done this? [N/y]: ";
+    my $resp = <STDIN>;
+    chomp $resp;
+    die "
+Please go ahead and configure this file, then run this script again
+    " unless ($resp =~ /y/i);
+    
+    open (DONE, ">>registeredMOBYServices.dat") || die "can't open the logfile registeredMOBYServices.dat to record the services you have registered in MOBY Central.\n";
+    my $C = MOBY::Client::Central->new();
+
+    # ========  get configuration settings from
+    # ========  the gbrowse/MobyServices/moby.conf
+    # ========  file, as well as the 0X.DBNAME.conf
+    # =============================================
+    my $reference = $CONFIG->{'MOBY'}->{'Reference'};
+    $reference = shift(@$reference); $reference ||='';
+
+    my $authURI = $CONFIG->{'MOBY'}->{'authURI'};
+    $authURI = shift(@$authURI); $authURI ||='unknown.org';
+
+    my $contactEmail = $CONFIG->{'MOBY'}->{'contactEmail'};
+    $contactEmail = shift(@$contactEmail);
+    die "\nYou have not configured a valid contactEmail parameter in
+    your config file!\n" unless ($contactEmail =~ /\S+\@\S+\.\S+/);
+
+    my $cgiURL = $CONFIG->{'MOBY'}->{'CGI_URL'};
+    $cgiURL = shift(@$cgiURL);
+    die "\nYou have not configured a valid CGI_URL parameter in
+    your config file!\n" unless ($cgiURL =~ "^http\://");
+
+    my @sources = $CONFIG->sources;
+
+    my @featureNamespaces = keys %{$CONFIG->{'MOBY'}->{'NAMESPACE'}};
+    # =============================================
+    # =============================================
+    
+    my $description = "Consumes base Object's in the $reference namespace and does a retrieval of that sequence record from the ".(join ",", @sources)." database(s), returning it as a FASTA sequence object.";
+    my $success = TEST($C->registerService(
+        serviceName  => "GbrowseGetReferenceFasta",  
+        serviceType  => "Retrieval",
+        authURI      => $authURI,      
+        contactEmail => $contactEmail,      
+        description => $description,
+        category  =>  "moby",
+        URL    => "$cgiURL/moby_server",
+        input =>[
+                ['', ['Object', [$reference]]],  # this will fail if the $reference namespace is not yet registered
+                ],
+        output =>[
+                ['', ['FASTA', [$reference]]],
+               ],
+    ), 1, 1);
+    unless ($success){
+        close DONE;
+        DEREGISTER_SERVICES();
+        die "registered services have been deregistered pending successful completion of this routine\n  You will need to start again.\n";;
+    } else {
+        print DONE "$authURI\tGbrowseGetReferenceFasta\n";
+    }
+    
+    $description = "Consumes base Object's in the $reference namespace and does a retrieval of that sequence record from the ".(join ",", @sources)." database(s), returning it as a GenericSequence object or better (i.e. DNASequence, RNASequence, or AminoAcidSequence).";
+    $success = TEST($C->registerService(
+        serviceName  => "GbrowseGetReferenceSeqObj",  
+        serviceType  => "Retrieval",
+        authURI      => $authURI,      
+        contactEmail => $contactEmail,      
+        description => $description,
+        category  =>  "moby",
+        URL    => "$cgiURL/moby_server",
+        input =>[
+                ['', ['Object', [$reference]]],  # this will fail if the $reference namespace is not yet registered
+                ],
+        output =>[
+                ['', ['GenericSequence', [$reference]]],
+               ],
+    ), 1, 1);
+    unless ($success){
+        close DONE;
+        DEREGISTER_SERVICES();
+        die "registered services have been purged from MOBY Central pending successful completion of this routine\n  You will need to start again.\n";;
+    } else {
+        print DONE "$authURI\tGbrowseGetReferenceSeqObj\n";
+    }
+
+
+    $description = "Consumes base Object's in the $reference namespace and does a retrieval of GFF2-formatted text from the ".(join ",", @sources)." database(s), returning it as a GFF2 object.";
+    $success = TEST($C->registerService(
+        serviceName  => "GbrowseGetReferenceGFF2",  
+        serviceType  => "Retrieval",
+        authURI      => $authURI,      
+        contactEmail => $contactEmail,      
+        description => $description,
+        category  =>  "moby",
+        URL    => "$cgiURL/moby_server",
+        input =>[
+                ['', ['Object', [$reference]]],  # this will fail if the $reference namespace is not yet registered
+                ],
+        output =>[
+                ['', ['GFF2', [$reference]]],
+               ],
+    ), 1, 1);
+    unless ($success){
+        close DONE;
+        DEREGISTER_SERVICES();
+        die "registered services have been purged from MOBY Central pending successful completion of this routine\n  You will need to start again.\n";;
+    } else {
+        print DONE "$authURI\tGbrowseGetReferenceSeqObj\n";
+    }
+
+
+    $description = "Consumes base Object's in the $reference namespace and does a retrieval of GFF3-formatted text plus FASTA from the ".(join ",", @sources)." database(s), returning it as a GFF3 object.";
+    $success = TEST($C->registerService(
+        serviceName  => "GbrowseGetReferenceGFF3",  
+        serviceType  => "Retrieval",
+        authURI      => $authURI,      
+        contactEmail => $contactEmail,      
+        description => $description,
+        category  =>  "moby",
+        URL    => "$cgiURL/moby_server",
+        input =>[
+                ['', ['Object', [$reference]]],  # this will fail if the $reference namespace is not yet registered
+                ],
+        output =>[
+                ['', ['GFF3', [$reference]]],
+               ],
+    ), 1, 1);
+    unless ($success){
+        close DONE;
+        DEREGISTER_SERVICES();
+        die "registered services have been purged from MOBY Central pending successful completion of this routine\n  You will need to start again.\n";;
+    } else {
+        print DONE "$authURI\tGbrowseGetReferenceSeqObj\n";
+    }
+
+    $description = "Consumes base Object's in the ".(join ",", @featureNamespaces)." namespace(s) and does a retrieval of GFF2-formatted text plus FASTA from the ".(join ",", @sources)." database(s), returning it as a GFF2 object.";
+    $success = TEST($C->registerService(
+        serviceName  => "GbrowseGetFeatureGFF2",  
+        serviceType  => "Retrieval",
+        authURI      => $authURI,      
+        contactEmail => $contactEmail,      
+        description => $description,
+        category  =>  "moby",
+        URL    => "$cgiURL/moby_server",
+        input =>[
+                ['', ['Object', \@featureNamespaces]],  # this will fail if the $reference namespace is not yet registered
+                ],
+        output =>[
+                ['', ['GFF2', \@featureNamespaces]],
+               ],
+    ), 1, 1);
+    unless ($success){
+        close DONE;
+        DEREGISTER_SERVICES();
+        die "registered services have been purged from MOBY Central pending successful completion of this routine\n  You will need to start again.\n";;
+    } else {
+        print DONE "$authURI\tGbrowseGetFeatureGFF2\n";
+    }
+
+
+    $description = "Consumes base Object's in the ".(join ",", @featureNamespaces)." namespace(s) and does a retrieval of GFF3-formatted text plus FASTA from the ".(join ",", @sources)." database(s), returning it as a GFF3 object.";
+    $success = TEST($C->registerService(
+        serviceName  => "GbrowseGetFeatureGFF3",  
+        serviceType  => "Retrieval",
+        authURI      => $authURI,      
+        contactEmail => $contactEmail,      
+        description => $description,
+        category  =>  "moby",
+        URL    => "$cgiURL/moby_server",
+        input =>[
+                ['', ['Object', \@featureNamespaces]],  # this will fail if the $reference namespace is not yet registered
+                ],
+        output =>[
+                ['', ['GFF3', \@featureNamespaces]],
+               ],
+    ), 1, 1);
+    unless ($success){
+        close DONE;
+        DEREGISTER_SERVICES();
+        die "registered services have been purged from MOBY Central pending successful completion of this routine\n  You will need to start again.\n";;
+    } else {
+        print DONE "$authURI\tGbrowseGetFeatureGFF3\n";
+    }
+
+
+    $description = "Consumes base Object's in the ".(join ",", @featureNamespaces)." namespace(s) and does a retrieval of a GenericSequence object or better (RNA, DNA, or AminoAcid Sequence) from the ".(join ",", @sources)." database(s).";
+    $success = TEST($C->registerService(
+        serviceName  => "GbrowseGetFeatureSequenceObject",  
+        serviceType  => "Retrieval",
+        authURI      => $authURI,      
+        contactEmail => $contactEmail,      
+        description => $description,
+        category  =>  "moby",
+        URL    => "$cgiURL/moby_server",
+        input =>[
+                ['', ['Object', \@featureNamespaces]],  # this will fail if the $reference namespace is not yet registered
+                ],
+        output =>[
+                ['', ['GFF3', \@featureNamespaces]],
+               ],
+    ), 1, 1);
+    unless ($success){
+        close DONE;
+        DEREGISTER_SERVICES();
+        die "registered services have been purged from MOBY Central pending successful completion of this routine\n  You will need to start again.\n";;
+    } else {
+        print DONE "$authURI\tGbrowseGetFeatureSequenceObject\n";
+    }
+
+
+    return 1;
+}
+
+sub DEREGISTER_SERVICES {
+    my $C = MOBY::Client::Central->new();
+    open (DONE, "registeredMOBYServices.dat") || die "can't open the logfile registeredMOBYServices.dat to get a listing of the services you have registered in MOBY Central.\n";
+    while (<DONE>){
+        chomp;
+        my ($auth, $name) = (($_=~/(\S+)\t(\S+)/) && ($1, $2));
+        ($auth && $name) || die "\n\n********** CORRUPT registeredMOBYServices.dat file *************\n non-recoverable error.";
+        my $success = TEST($C->deregisterService(
+        serviceName  => $name,  
+        authURI      => $auth,      
+        ), 2, 1);
+    }
+    close DONE;
+    open (DONE, ">registeredMOBYServices.dat") || die "can't open the logfile registeredMOBYServices.dat to purge list of registered services\n";
+    close DONE;
+}
+
+sub _settings {
+    $CONF_DIR  = conf_dir($CONF_DIR);  # conf_dir() is exported from Util.pm
+
+    ## CONFIGURATION & INITIALIZATION ################################  
+    # preliminaries -- read and/or refresh the configuration directory
+    $CONFIG = open_config($CONF_DIR);  # open_config() is exported from Util.pm
+    my @sources = $CONFIG->sources; # get all data sources
+
+    foreach (@sources){  # grab the database handle for each source
+        $CONFIG->source($_);
+        my $db = open_database($CONFIG);
+        $dbh{$_}=$db;
+    }
+    
+    open (IN, "$CONF_DIR/MobyServices/moby.conf") || die "\n**** GbrowseServices.pm couldn't open configuration file $CONF_DIR/MobyServices/moby.conf:  $!\n";
+    while (<IN>){
+        chomp; next unless $_; # filter out blank lines
+        next if m/^#/;  # filter out comment lines
+        last if $_ =~ /\[Namespace_Class_Mappings\]/;
+        my @res = shellwords($_);  # parse the tokens key = value1 value2 value3
+        $CONFIG->{MOBY}->{$res[0]} = [@res[2..scalar(@res)]];  # add them to the existing config with a new tag MOBY in key = \@values format
+    }
+    while (<IN>){  # now process the namespace mappings
+        chomp; next unless $_; # filter out blank lines
+        next if m/^#/;  # filter out comment lines
+        my @res = shellwords($_);  # parse the tokens key = value1 value2 value3
+        $CONFIG->{'MOBY'}->{'NAMESPACE'}->{$res[0]} = [$res[2]];  # add them to the existing config with a new tag MOBY in key = \@values format
+    }
+}
+
+
+sub TEST {  # test of Registration object
+    my ($reg, $test, $expect) = @_;
+    die "\a\a\aREG OBJECT MALFORMED" unless $reg;
+    if ($reg->success == $expect){
+        print "test $test\t\t[PASS]\n";
+        return 1;
+    } else {
+        print "test $test\t\t[FAIL]\n",$reg->message,"\n\n";
+        return 0;
+    }
+    
+}
+
+
+
+#=======================================================================
+
+
+

Added: trunk/packages/gbrowse/trunk/bin/ucsc_genes2gff.pl
===================================================================
--- trunk/packages/gbrowse/trunk/bin/ucsc_genes2gff.pl	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/bin/ucsc_genes2gff.pl	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,283 @@
+#!/usr/bin/perl
+
+# convert UCSC gene files into GFF3 data
+
+use strict;
+use File::Basename 'basename';
+use Getopt::Long;
+
+my $executable = basename($0);
+
+my ($SRC,$ORIGIN);
+GetOptions('src:s'    => \$SRC,
+	   'origin:i' => \$ORIGIN,
+	   ) or die <<USAGE;
+Usage: $0 [options] ucsc_file1 ucsc_file2...
+
+Convert UCSC Genome Browser-format gene files into GFF3 version files.
+Only the gene IDs and their locations come through.  You have to get
+the comments and aliases some other way.
+
+Options:
+
+    -src    <string>   Choose a source for the gene, default "UCSC"
+    -origin <integer>  Choose a relative position to number from, default is "1"
+
+The resulting file is in GFF3 format and should be loaded into a
+Bio::DB::GFF database using the following command:
+
+ bp_bulk_load_gff.pl -c -d db1 --maxfeature 1000000000 --gff3_munge file.gff
+
+USAGE
+
+$SRC    ||= 'UCSC';
+$ORIGIN ||= 1;
+
+print "##gff-version 3\n";
+
+# automatically uncompress varous compression formats
+foreach (@ARGV) {
+  $_ = "gunzip     -c $_ |" if /\.gz$/;
+  $_ = "uncompress -c $_ |" if /\.Z$/;
+  $_ = "bunzip2    -c $_ |" if /\.bz2$/;
+}
+
+while (<>) {
+  chomp;
+  next if /^\#/;;
+  next if /random/;  ## added line
+  my
+($id,$chrom,$strand,$txStart,$txEnd,$cdsStart,$cdsEnd,$exons,$exonStarts,$exonEnds)
+= split /\t/;
+  my ($utr5_start,$utr5_end,$utr3_start,$utr3_end);
+
+  # adjust for Jim's 0-based coordinates
+  $txStart++;
+  $cdsStart++;
+
+  $txStart  -= $ORIGIN;
+  $txEnd    -= $ORIGIN;
+  $cdsStart -= $ORIGIN;
+  $cdsEnd   -= $ORIGIN;
+
+  # print the transcript
+  print join
+("\t",$chrom,$SRC,'mRNA',$txStart,$txEnd,'.',$strand,'.',"ID=$id"),"\n";
+
+  # now handle the CDS entries -- the tricky part is the need to keep
+  # track of phase
+  my $phase = 0;
+  my @exon_starts = map {$_-$ORIGIN} split ',',$exonStarts;
+  my @exon_ends   = map {$_-$ORIGIN} split ',',$exonEnds;
+
+
+  if ($strand eq '+') {
+    for (my $i=0;$i<@exon_starts;$i++) {  # for each exon start
+      my $exon_start = $exon_starts[$i] + 1;
+      my $exon_end   = $exon_ends[$i];
+      my (@utr_start, at utr_end,$cds_start,$cds_end);
+
+      if ($exon_start < $cdsStart) { # in a 5' UTR
+	push (@utr_start, $exon_start);
+      } elsif ($exon_start > $cdsEnd) { 
+	push (@utr_start, $exon_start);
+      } else {
+	$cds_start = $exon_start;
+      }
+
+      if ($exon_end < $cdsStart) {
+	push (@utr_end, $exon_end);
+      } elsif ($exon_end > $cdsEnd) {
+	push (@utr_end, $exon_end);
+      } else {
+	$cds_end = $exon_end;
+      }
+
+      if ($utr_start[0] && !$utr_end[0]) { # half in half out on 5' end
+	$utr_end[0]= $cdsStart - 1;
+	$cds_start = $cdsStart;
+	$cds_end   = $exon_end;
+      }
+
+      if ($utr_end[0] && !$utr_start[0]) { # half in half out on 3' end
+	$utr_start[0]= $cdsEnd + 1;
+	$cds_end     = $cdsEnd;
+	$cds_start   = $exon_start;
+      }
+
+      # If the CDS is within the exon
+      if (defined $utr_start[0] == defined $utr_end[0] && 
+	  $utr_start[0] < $cdsStart && $utr_end[0] > $cdsEnd) {
+	$utr_end[0]= $cdsStart - 1;
+	$cds_start = $cdsStart;
+	$cds_end   = $cdsEnd;
+	
+	push (@utr_start, $cdsEnd + 1);
+	push (@utr_end, $exon_end);
+      }
+
+
+      die "programmer error, not an even number of utr_starts and
+utr_ends"
+	unless $#utr_start == $#utr_end;
+      die "programmer error, cds_start and no cds_end" 
+	unless defined $cds_start == defined $cds_end;
+
+      for (my $i=0;$i<@utr_start;$i++) {  # for each utr start
+	if (defined $utr_start[$i] && $utr_start[$i] <= $utr_end[$i] &&
+$utr_start[$i] < $cdsStart) {
+	  print join
+("\t",$chrom,$SRC,"five_prime_UTR",$utr_start[$i],$utr_end[$i],'.',$strand,'.',"Parent=$id"),"\n"	
+	} # end of if	    
+      } # end of foreach
+
+      if (defined $cds_start && $cds_start <= $cds_end) {
+	print join
+("\t",$chrom,$SRC,'CDS',$cds_start,$cds_end,'.',$strand,$phase,"Parent=$id"),"\n";
+	$phase = (($cds_end-$cds_start+1-$phase)) % 3;
+      }
+
+      for (my $i=0;$i<@utr_start;$i++) {  # for each utr start
+	if (defined $utr_start[$i] && $utr_start[$i] <= $utr_end[$i] &&
+$utr_start[$i] > $cdsEnd) {
+	  print join ("\t",$chrom,$SRC,"three_prime_UTR",,$utr_start[$i],
+$utr_end[$i],'.',$strand,'.',"Parent=$id"),"\n"	
+	}
+      }
+    } # end of for each exon
+  } # matches if strand = +
+
+
+  if ($strand eq '-') {
+    my @lines;
+    for (my $i=@exon_starts-1; $i>=0; $i--) { # count backwards
+      my $exon_start = $exon_starts[$i] + 1;
+      my $exon_end   = $exon_ends[$i];
+      my (@utr_start, at utr_end,$cds_start,$cds_end);
+
+      if ($exon_end > $cdsEnd) { # in a 5' UTR
+	push (@utr_end,  $exon_end);
+      } elsif ($exon_end < $cdsStart) {
+	push (@utr_end,  $exon_end);
+      } else {
+	$cds_end = $exon_end;
+      }
+
+      if ($exon_start > $cdsEnd) {
+	push (@utr_start, $exon_start);
+      } elsif ($exon_start < $cdsStart) {
+	push (@utr_start, $exon_start);
+      } else {
+	$cds_start = $exon_start;
+      }
+
+      if ($utr_start[0] && !$utr_end[0]) { # half in half out on 3' end
+	$utr_end[0]   = $cdsStart - 1;
+	$cds_start = $cdsStart;
+	$cds_end   = $exon_end;
+      }
+
+      if ($utr_end[0] && !$utr_start[0]) { # half in half out on 5' end
+	$utr_start[0] = $cdsEnd + 1;
+	$cds_end   = $cdsEnd;
+	$cds_start = $exon_start;
+      }
+
+      # If the CDS is within the exon  
+      if (defined $utr_start[0] == defined $utr_end[0] && 
+	  $utr_start[0] < $cdsStart && $utr_end[0] > $cdsEnd) {
+	$utr_end[0]= $cdsStart - 1;
+	$cds_start = $cdsStart;
+	$cds_end   = $cdsEnd;
+	
+	push (@utr_start, $cdsEnd + 1);
+	push (@utr_end, $exon_end);
+      }
+
+      die "programmer error, not an even number of utr_starts and
+utr_ends"
+	unless $#utr_start == $#utr_end;
+
+      die "programmer error, cds_start and no cds_end" unless defined
+$cds_start == defined $cds_end;
+
+      for (my $i=0;$i<@utr_start;$i++) {  # for each utr start
+	if (defined $utr_start[$i] && $utr_start[$i] <= $utr_end[$i] &&
+$utr_start[$i] > $cdsEnd) {
+	  unshift @lines,join
+("\t",$chrom,$SRC,"five_prime_UTR",,$utr_start[$i],$utr_end[$i],'.',$strand,'.',"Parent=$id"),"\n"	
+	}
+      } # end of for
+
+      if (defined $cds_start && $cds_start <= $cds_end) {
+	unshift @lines,join
+("\t",$chrom,$SRC,'CDS',$cds_start,$cds_end,'.',$strand,$phase,"Parent=$id"),"\n";
+	$phase = (($cds_end-$cds_start+1-$phase)) % 3;
+      }
+
+      for (my $i=0;$i<@utr_start;$i++) {  # for each utr start
+	if (defined $utr_start[$i] && $utr_start[$i] <= $utr_end[$i] &&
+$utr_end[$i] < $cdsStart) {
+	  unshift @lines,join
+("\t",$chrom,$SRC,"three_prime_UTR",$utr_start[$i],$utr_end[$i],'.',$strand,'.',"Parent=$id"),"\n"	
+	}
+      } # end for
+    }
+    print @lines;
+  }
+} # end while <>
+
+__END__
+
+=head1 NAME
+
+ucsc_genes2gff.pl - Convert UCSC Genome Browser-format gene files into GFF
+files suitable for loading into gbrowse
+
+=head1 SYNOPSIS
+
+  % uscsc_genes2gff.pl [options] ucsc_file1 ucsc_file2...
+
+Options:
+
+    -src    <string>   Choose a source for the gene, default "UCSC"
+    -origin <integer>  Choose a relative position to number from, default
+is "1"
+
+=head1 DESCRIPTION
+
+This script massages the gene files available from the "tables" link
+of the UCSC genome browser (genome.ucsc.edu) into a form suitable for
+loading of gbrowse.  Warning: it only works with the gene tables.
+Other tables, such as EST alignments, contours and repeats, have their
+own formats which will require other scripts to parse.
+
+To use this script, get one or more UCSC tables, either from the
+"Tables" link on the browser, or from the UCSC Genome Browser FTP
+site.  Give the table file as the argument to this script.  You may
+want to provide an alternative "source" field.  Otherwise this script
+defaults to "UCSC".
+
+  % pucsc_genes2gff.pl -src RefSeq refseq_data.ucsc > refseq.gff
+
+The resulting GFF file can then be loaded into a Bio::DB::GFF database
+using the following command:
+
+  % bulk_load_gff.pl -d <databasename> refseq.gff
+
+=head1 SEE ALSO
+
+L<Bio::DB::GFF>, L<bulk_load_gff.pl>, L<load_gff.pl>
+
+=head1 AUTHOR
+
+Lincoln Stein <lstein at cshl.org>.
+
+Copyright (c) 2003 Cold Spring Harbor Laboratory
+
+This library is free software; you can redistribute it and/or modify
+it under the same terms as Perl itself.  See DISCLAIMER.txt for
+disclaimers of warranty.
+
+=cut
+

Added: trunk/packages/gbrowse/trunk/conf/MobyServices/GbrowseServices.pm
===================================================================
--- trunk/packages/gbrowse/trunk/conf/MobyServices/GbrowseServices.pm	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/conf/MobyServices/GbrowseServices.pm	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,466 @@
+#!/usr/bin/perl -w
+package MobyServices::GbrowseServices;
+
+###################################################################
+# Non-modperl users should change this variable if needed to point
+# to the directory in which the configuration files are stored.
+#
+$CONF_DIR  = '/home/charles/src/gbrowse-1.68/debian/gbrowse/etc//gbrowse.conf';
+#
+###################################################################
+
+
+
+
+
+
+
+#====================================================================
+#$Id: GbrowseServices.PMS,v 1.2 2004/01/07 22:21:49 markwilkinson Exp $
+
+use strict;
+use Text::Shellwords;
+use Bio::DB::GFF;
+use SOAP::Lite;
+use MOBY::CommonSubs qw{:all};
+use Bio::Graphics::Browser;
+use Bio::Graphics::Browser::Util;
+use vars qw(%dbh $CONFIG $authURI $CONF_DIR);
+
+sub _settings {
+    $CONF_DIR  = conf_dir($CONF_DIR);  # conf_dir() is exported from Util.pm
+
+    ## CONFIGURATION & INITIALIZATION ################################  
+    # preliminaries -- read and/or refresh the configuration directory
+    $CONFIG = open_config($CONF_DIR);  # open_config() is exported from Util.pm
+    my @sources = $CONFIG->sources; # get all data sources
+
+    foreach (@sources){  # grab the database handle for each source
+        $CONFIG->source($_);
+        my $db = open_database($CONFIG);
+        $dbh{$_}=$db;
+    }
+    
+    open (IN, "$CONF_DIR/MobyServices/moby.conf") || die "\n**** GbrowseServices.pm couldn't open configuration file $CONF_DIR/MobyServices/moby.conf:  $!\n";
+    while (<IN>){
+        chomp; next unless $_; # filter out blank lines
+        next if m/^#/;  # filter out comment lines
+        last if $_ =~ /\[Namespace_Class_Mappings\]/;
+        my @res = shellwords($_);  # parse the tokens key = value1 value2 value3
+        $CONFIG->{MOBY}->{$res[0]} = [@res[2..scalar(@res)]];  # add them to the existing config with a new tag MOBY in key = \@values format
+    }
+    while (<IN>){  # now process the namespace mappings
+        chomp; next unless $_; # filter out blank lines
+        next if m/^#/;  # filter out comment lines
+        my @res = shellwords($_);  # parse the tokens key = value1 value2 value3
+        $CONFIG->{'MOBY'}->{'NAMESPACE'}->{$res[0]} = [$res[2]];  # add them to the existing config with a new tag MOBY in key = \@values format
+    }
+}
+
+sub _doValidationStuff {
+    my $authURI = $CONFIG->{'MOBY'}->{'authURI'};
+    $authURI = shift(@$authURI); $authURI ||='unknown.org';
+
+    my $reference = $CONFIG->{'MOBY'}->{'Reference'};
+    $reference = shift(@$reference); $reference ||='';
+    unless ($reference){
+        print STDERR "\n\nMobyServices::GbrowseServices - you have not set a reference class in your moby.conf file\n\n";
+        return SOAP::Data->type('base64' => responseHeader($authURI) . responseFooter());
+    }
+
+    my (@feat_namespaces) = keys %{$CONFIG->{MOBY}->{NAMESPACE}};  
+    my @validNS = validateNamespaces($reference, at feat_namespaces);  # ONLY do this if you are intending to be namespace aware!
+    unless (scalar(@validNS)){
+        print STDERR "\n\nMobyServices::GbrowseServices - namespace $reference does not exist in the MOBY Namespace ontology\n\n";
+        return SOAP::Data->type('base64' => responseHeader($authURI) . responseFooter());
+    }
+    
+    return ($authURI, \@validNS);
+}
+
+sub GbrowseGetFeatureGFF2 {
+    my ($caller, $data) = @_;
+    _settings();
+    my ($authURI, $validNSs) = _doValidationStuff();
+
+    my $MOBY_RESPONSE = "";
+    foreach my $source($CONFIG->sources){
+        $CONFIG->source($source); # set the current source
+        next unless (my $db = $dbh{$source});  # get the database object
+        my (@inputs)= genericServiceInputParser($data); # ([SIMPLE, $queryID, $simple],...)
+        next unless (scalar(@inputs));
+        foreach (@inputs){
+            my ($articleType, $qID, $input) = @{$_};
+            unless (($articleType == SIMPLE) && ($input)){
+                $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;
+                next;
+            } else {
+                my $namespace = getSimpleArticleNamespaceURI($input);
+                $namespace ||="";
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless validateThisNamespace($namespace, @{$validNSs});
+                my ($identifier) = getSimpleArticleIDs($input);  # note array output!
+                # okay, we need to map the MOBY namespace back into our namespace system
+                my $Groupname = $CONFIG->{MOBY}->{NAMESPACE}->{$namespace};
+                unless ($Groupname){
+                    $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;
+                    print STDERR "** MOBY Services error - Trying to map apparently valid namespace: '$namespace' but not found\n";
+                    next;
+                }
+                my @features = $db->get_feature_by_name(-class => $Groupname, -name => $identifier);
+                my $gff = "";
+                foreach my $feat(@features){
+                    (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $feat;
+                    $gff .= $feat->gff_string."\n";
+                    foreach my $sub($feat->sub_SeqFeature){
+                        next unless $sub;
+                        $gff .= $sub->gff_string."\n";
+                    }
+                }   
+                $MOBY_RESPONSE .= simpleResponse("<moby:GFF2 moby:namespace='$namespace' moby:id='$identifier'>\n$gff\n</moby:GFF2>", "", $qID);
+            }
+        }
+    }
+    #print STDERR (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter);
+    return SOAP::Data->type('base64' => (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter));    
+}
+
+sub GbrowseGetFeatureGFF3 {
+    my ($caller, $data) = @_;
+    _settings();
+    my ($authURI, $validNSs) = _doValidationStuff();
+
+    my $MOBY_RESPONSE = "";
+    foreach my $source($CONFIG->sources){
+        $CONFIG->source($source); # set the current source
+        next unless (my $db = $dbh{$source});  # get the database object
+        my (@inputs)= genericServiceInputParser($data); # ([SIMPLE, $queryID, $simple],...)
+        next unless (scalar(@inputs));
+        foreach (@inputs){
+            my ($articleType, $qID, $input) = @{$_};
+            unless (($articleType == SIMPLE) && ($input)){
+                $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;
+                next;
+            } else {
+                my $namespace = getSimpleArticleNamespaceURI($input);
+                $namespace ||="";
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless validateThisNamespace($namespace, @{$validNSs});
+                my ($identifier) = getSimpleArticleIDs($input);  # note array output!
+                # okay, we need to map the MOBY namespace back into our namespace system
+                my $Groupname = $CONFIG->{MOBY}->{NAMESPACE}->{$namespace};
+                unless ($Groupname){
+                    $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;
+                    print STDERR "** MOBY Services error - Trying to map apparently valid namespace: '$namespace' but not found\n";
+                    next;
+                }
+                my @features = $db->get_feature_by_name(-class => $Groupname, -name => $identifier);
+                my $gff = "";
+                foreach my $feat(@features){
+                    $feat->version(3); # set to GFF3
+                    (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $feat;
+                    $gff .= $feat->gff_string."\n";
+                    foreach my $sub($feat->sub_SeqFeature){
+                        next unless $sub;
+                        $sub->version(3);
+                        $gff .= $sub->gff_string."\n";
+                    }
+                }   
+                $MOBY_RESPONSE .= simpleResponse("<moby:GFF2 moby:namespace='$namespace' moby:id='$identifier'>\n$gff\n</moby:GFF2>", "", $qID);
+            }
+        }
+    }
+    #print STDERR (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter);
+    return SOAP::Data->type('base64' => (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter));    
+}
+
+sub GbrowseGetFeatureSequenceObject {
+    my ($caller, $data) = @_;
+    _settings();
+    my ($authURI, $validNSs) = _doValidationStuff();
+    my %types = ('dna', 'DNASequence', 'rna', 'RNASequence', 'protein', 'AminoAcidSequence');
+
+    my $MOBY_RESPONSE = "";
+    foreach my $source($CONFIG->sources){
+        $CONFIG->source($source); # set the current source
+        next unless (my $db = $dbh{$source});  # get the database object
+        my (@inputs)= genericServiceInputParser($data); # ([SIMPLE, $queryID, $simple],...)
+        next unless (scalar(@inputs));
+        foreach (@inputs){
+            my ($articleType, $qID, $input) = @{$_};
+            unless (($articleType == SIMPLE) && ($input)){
+                $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;  # send empty response for empty input
+                next;
+            } else {
+                my $namespace = getSimpleArticleNamespaceURI($input);  # get the namespace
+                $namespace ||="";
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless validateThisNamespace($namespace, @{$validNSs}); #invalid namespace treated as empty query
+                my ($identifier) = getSimpleArticleIDs($input);  # note array output!
+                # okay, we need to map the MOBY namespace back into our namespace system
+                my $Groupname = $CONFIG->{MOBY}->{NAMESPACE}->{$namespace};  # map the namespace to our database group name
+                unless ($Groupname){
+                    $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;  # if it is invlid, send empty respnse and tell the maintainer that something is goofy!
+                    print STDERR "** MOBY Services error - Trying to map apparently valid namespace: '$namespace' but not found\n";
+                    next;
+                }
+                my @features = $db->get_feature_by_name(-class => $Groupname, -name => $identifier);  # get feature from DB
+                my $gff = "";
+                foreach my $feat(@features){
+                    $feat->version(3); # set to GFF3
+                    (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $feat;
+
+                    my $seq = $feat->seq;
+                    $seq =~ s/\s//g;
+                    my $length = $feat->length;
+                    my $objtype = $types{$feat->alphabet};
+                    (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $objtype;
+                    $MOBY_RESPONSE .= simpleResponse("<moby:$objtype moby:namespace='$namespace' moby:id='$identifier'>
+                                                 <moby:String namespace='' id=''>$seq</moby:String>
+                                                 <moby:Integer namespace='' id=''>$length</moby:Integer>
+                                                 </moby:$objtype>", "", $qID);
+                }   
+            }
+        }
+    }
+    #print STDERR (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter);
+    return SOAP::Data->type('base64' => (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter));    
+}
+
+sub GbrowseGetReferenceGFF2 {   # DO THIS ONE!!
+    my ($caller, $data) = @_;
+    _settings();
+    my ($authURI, $validNSs) = _doValidationStuff();
+
+    my $MOBY_RESPONSE = "";
+    foreach my $source($CONFIG->sources){
+        $CONFIG->source($source); # set the current source
+        next unless (my $db = $dbh{$source});  # get the database object
+        my (@inputs)= genericServiceInputParser($data); # ([SIMPLE, $queryID, $simple],...)
+        next unless (scalar(@inputs));
+        foreach (@inputs){
+            my ($articleType, $qID, $input) = @{$_};
+            unless (($articleType == SIMPLE) && ($input)){
+                $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;
+                next;
+            } else {
+                my $namespace = getSimpleArticleNamespaceURI($input);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless validateThisNamespace($namespace, @{$validNSs});
+                my ($identifier) = getSimpleArticleIDs($input);  # note array output!
+                my $seg = $db->segment(-name => $identifier);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $seg;
+                my $gff = join "\n", map {$_->gff_string} ($seg->get_SeqFeatures);
+                $MOBY_RESPONSE .= simpleResponse("<moby:GFF2 moby:namespace='$namespace' moby:id='$identifier'>\n$gff\n</moby:GFF2>", "", $qID);
+            }
+        }
+    }
+    #print STDERR (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter);
+    return SOAP::Data->type('base64' => (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter));    
+}
+
+sub GbrowseGetReferenceDNASequenceWithFeatures {
+    my ($caller, $data) = @_;
+    _settings();
+    my ($authURI, $validNSs) = _doValidationStuff();
+
+    my $MOBY_RESPONSE = "";
+    foreach my $source($CONFIG->sources){
+        $CONFIG->source($source); # set the current source
+        next unless (my $db = $dbh{$source});  # get the database object
+        my (@inputs)= genericServiceInputParser($data); # ([SIMPLE, $queryID, $simple],...)
+        next unless (scalar(@inputs));
+        foreach (@inputs){
+            my ($articleType, $qID, $input) = @{$_};
+            unless (($articleType == SIMPLE) && ($input)){
+                $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;
+                next;
+            } else {
+                my $namespace = getSimpleArticleNamespaceURI($input);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless validateThisNamespace($namespace, @{$validNSs});
+                my ($identifier) = getSimpleArticleIDs($input);  # note array output!
+                my $seg = $db->segment(-name => $identifier);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $seg;
+                my $seq = $seg->seq; $seq =~ s/\S//g;
+                my $length = $seg->length; # DNASequenceWithGFFFeatures
+                my $mobyresp = "<moby:DNASequenceWithGFFFeatures moby:namespace='$namespace' moby:id='$identifier'>
+                <moby:String moby:namespace='' moby:id=''>$seq</moby:String>
+                <moby:Integer moby:namespace='' moby:id=''>$length</moby:Integer>
+                ";
+                foreach my $feat($seg->get_SeqFeatures){$mobyresp .="
+                    <moby:BasicGFFSequenceFeature namespace='' id=''>
+                        <String namespace='' id='' articleName='reference'></String>
+                        <String namespace='' id='' articleName='source'></String>
+                        <String namespace='' id='' articleName='method'></String>
+                        <Integer namespace='' id='' articleName='start'></Integer>
+                        <Integer namespace='' id='' articleName='stop'></Integer>
+                        <Float namespace='' id='' articleName='score'></Float>
+                        <String namespace='' id='' articleName='strand'></String>
+                        <String namespace='' id='' articleName='frame'></String>
+                        <String namespace='' id='' articleName='phase'></String>"
+                        
+                }
+                my $gff = join "\n", map {$_->gff_string} ($seg->get_SeqFeatures);
+                $MOBY_RESPONSE .= simpleResponse("<moby:GFF2 moby:namespace='$namespace' moby:id='$identifier'>\n$gff\n</moby:GFF2>", "", $qID);
+            }
+        }
+    }
+    #print STDERR (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter);
+    return SOAP::Data->type('base64' => (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter));    
+}
+
+sub GbrowseGetReferenceGFF3 {
+    my ($caller, $data) = @_;
+    _settings();
+    my ($authURI, $validNSs) = _doValidationStuff();
+
+    my $MOBY_RESPONSE = "";
+    foreach my $source($CONFIG->sources){
+        $CONFIG->source($source); # set the current source
+        next unless (my $db = $dbh{$source});  # get the database object
+        my (@inputs)= genericServiceInputParser($data); # ([SIMPLE, $queryID, $simple],...)
+        next unless (scalar(@inputs));
+        foreach (@inputs){
+            my ($articleType, $qID, $input) = @{$_};
+            unless (($articleType == SIMPLE) && ($input)){
+                $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;
+                next;
+            } else {
+                my $namespace = getSimpleArticleNamespaceURI($input);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless validateThisNamespace($namespace, @{$validNSs});
+                my ($identifier) = getSimpleArticleIDs($input);  # note array output!
+                my $seg = $db->segment(-name => $identifier);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $seg;
+                my $gff = join "\n", map {$_->version(3); $_->gff_string} ($seg->get_SeqFeatures);
+                my $seq = $seg->seq;
+                $seq =~ s/\s//g;
+                $seq =~ s/(\S{70})/$1\n/g;
+                my $fasta = ">$identifier\n$seq\n";
+                $MOBY_RESPONSE .= simpleResponse("<moby:GFF3 moby:namespace='$namespace' moby:id='$identifier'>\n$gff\n###FASTA\n$fasta\n</moby:GFF3>", "", $qID);
+            }
+        }
+    }
+    #print STDERR (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter);
+    return SOAP::Data->type('base64' => (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter));    
+}
+
+
+sub GbrowseGetReferenceFasta {
+    my ($caller, $data) = @_;
+    _settings();
+    my ($authURI, $validNSs) = _doValidationStuff();
+
+    my $MOBY_RESPONSE;
+    foreach my $source($CONFIG->sources){
+        $CONFIG->source($source); # set the current source
+        next unless (my $db = $dbh{$source});  # get the database object
+        my (@inputs)= genericServiceInputParser($data); # ([SIMPLE, $queryID, $simple],...)
+        next unless (scalar(@inputs));
+        foreach (@inputs){
+            my ($articleType, $qID, $input) = @{$_};
+            unless (($articleType == SIMPLE) && ($input)){
+                $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;
+                next;
+            } else {
+                my $namespace = getSimpleArticleNamespaceURI($input);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless validateThisNamespace($namespace, @{$validNSs});
+                my ($identifier) = getSimpleArticleIDs($input);  # note array output!
+                my $seg = $db->segment(-name => $identifier);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $seg;
+                my $seq = $seg->seq;
+                $seq =~ s/\s//g;
+                $seq =~ s/(\S{70})/$1\n/g;
+                my $fasta = ">$identifier\n$seq\n";
+                $MOBY_RESPONSE .= simpleResponse("<moby:FASTA moby:namespace='$namespace' moby:id='$identifier'>\n$fasta\n</moby:FASTA>", "", $qID);
+            }
+        }
+    }
+    #print STDERR (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter);
+    return SOAP::Data->type('base64' => (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter));    
+}
+
+
+sub GbrowseGetReferenceSeqObj {
+    my ($caller, $data) = @_;
+    _settings();
+    my ($authURI, $validNSs) = _doValidationStuff();
+    my %types = ('dna', 'DNASequence', 'rna', 'RNASequence', 'protein', 'AminoAcidSequence');
+
+    my $MOBY_RESPONSE = "";
+    foreach my $source($CONFIG->sources){
+        $CONFIG->source($source); # set the current source
+        next unless (my $db = $dbh{$source});  # get the database object
+        my (@inputs)= genericServiceInputParser($data); # ([SIMPLE, $queryID, $simple],...)
+        next unless (scalar(@inputs));
+
+        foreach (@inputs){
+            my ($articleType, $qID, $input) = @{$_};
+            unless (($articleType == SIMPLE) && ($input)){
+                $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;
+                next;
+            } else {
+                my $namespace = getSimpleArticleNamespaceURI($input);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless validateThisNamespace($namespace, @{$validNSs});
+                my ($identifier) = getSimpleArticleIDs($input);  # note array output!
+                my $seg = $db->segment(-name => $identifier);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $seg;
+                my $seq = $seg->seq;
+                $seq =~ s/\s//g;
+                my $length = $seg->length;
+                my $objtype = $types{$seg->alphabet};
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $objtype;
+                $MOBY_RESPONSE .= simpleResponse("<moby:$objtype moby:namespace='$namespace' moby:id='$identifier'>
+                                                 <moby:String namespace='' id=''>$seq</moby:String>
+                                                 <moby:Integer namespace='' id=''>$length</moby:Integer>
+                                                 </moby:$objtype>", "", $qID);
+            }
+        }
+    }
+    #print STDERR (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter);
+    return SOAP::Data->type('base64' => (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter));    
+}
+
+
+sub GbrowseGetSomeFeatureSequence {
+    my ($caller, $data) = @_;
+    _settings();
+    my ($authURI, $validNSs) = _doValidationStuff();
+    my %types = ('dna', 'DNASequence', 'rna', 'RNASequence', 'protein', 'AminoAcidSequence');
+
+    my $MOBY_RESPONSE = "";
+    foreach my $source($CONFIG->sources){
+        $CONFIG->source($source); # set the current source
+        next unless (my $db = $dbh{$source});  # get the database object
+        my (@inputs)= genericServiceInputParser($data); # ([SIMPLE, $queryID, $simple],...)
+        next unless (scalar(@inputs));
+
+        foreach (@inputs){
+            my ($articleType, $qID, $input) = @{$_};
+            unless (($articleType == SIMPLE) && ($input)){
+                $MOBY_RESPONSE .= simpleResponse("", "", $qID) ;
+                next;
+            } else {
+                my $namespace = getSimpleArticleNamespaceURI($input);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless validateThisNamespace($namespace, @{$validNSs});
+                my ($identifier) = getSimpleArticleIDs($input);  # note array output!
+                my $seg = $db->segment(-name => $identifier);
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $seg;
+                my $seq = $seg->seq;
+                $seq =~ s/\s//g;
+                my $length = $seg->length;
+                my $objtype = $types{$seg->alphabet};
+                (($MOBY_RESPONSE .= simpleResponse("", "", $qID)) && next) unless $objtype;
+                $MOBY_RESPONSE .= simpleResponse("<moby:$objtype moby:namespace='$namespace' moby:id='$identifier'>
+                                                 <moby:String namespace='' id=''>$seq</moby:String>
+                                                 <moby:Integer namespace='' id=''>$length</moby:Integer>
+                                                 </moby:$objtype>", "", $qID);
+            }
+        }
+    }
+    #print STDERR (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter);
+    return SOAP::Data->type('base64' => (responseHeader($authURI) . $MOBY_RESPONSE . responseFooter));    
+}
+
+
+1;
+
+#===========================================
+
+
+


Property changes on: trunk/packages/gbrowse/trunk/debian
___________________________________________________________________
Name: mergeWithUpstream
   + 1

Added: trunk/packages/gbrowse/trunk/debian/README.Debian
===================================================================
--- trunk/packages/gbrowse/trunk/debian/README.Debian	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/README.Debian	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,6 @@
+GBrowse for Debian
+---------------------------------
+
+<possible notes regarding this package - if none, delete this file>
+
+ -- Charles Plessy <charles-debian-nospam at plessy.org>  Wed, 13 Jun 2007 19:07:01 +0900

Added: trunk/packages/gbrowse/trunk/debian/changelog
===================================================================
--- trunk/packages/gbrowse/trunk/debian/changelog	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/changelog	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,6 @@
+gbrowse (1.68-1) unstable; urgency=low
+
+  * Initial release (Closes: #nnnn)  <nnnn is the bug number of your ITP>
+
+ -- Charles Plessy <charles-debian-nospam at plessy.org>  Wed, 13 Jun 2007 19:07:01 +0900
+

Added: trunk/packages/gbrowse/trunk/debian/compat
===================================================================
--- trunk/packages/gbrowse/trunk/debian/compat	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/compat	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1 @@
+5

Added: trunk/packages/gbrowse/trunk/debian/control
===================================================================
--- trunk/packages/gbrowse/trunk/debian/control	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/control	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,30 @@
+Source: gbrowse
+Section: science
+Priority: optional
+Maintainer: Debian-Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
+Uploaders: Charles Plessy <charles-debian-nospam at plessy.org>
+Build-Depends: debhelper (>= 5), bioperl (>= 1.5.2), quilt
+Standards-Version: 3.7.2
+
+Package: gbrowse
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: The Generic Genome Browser from GMOD
+ The Generic Genome Browser is a combination of database and interactive Web
+ page for manipulating and displaying annotations on genomes. Some of its
+ features:
+  * Simultaneous bird's eye and detailed views of the genome.
+  * Scroll, zoom, center.
+  * Attach arbitrary URLs to any annotation.
+  * Order and appearance of tracks are customizable by administrator and end-user.
+  * Search by annotation ID, name, or comment.
+  * Supports third party annotation using GFF formats.
+  * Settings persist across sessions.
+  * DNA and GFF dumps.
+  * Connectivity to different databases, including BioSQL and Chado.
+  * Multi-language support.
+  * Third-party feature loading.
+  * Customizable plug-in architecture (e.g. run BLAST, dump & import many formats,
+    find oligonucleotides, design primers, create restriction maps, edit features) 
+ .
+  Homepage: http://www.gmod.org/wiki/index.php/GBrowse

Added: trunk/packages/gbrowse/trunk/debian/copyright
===================================================================
--- trunk/packages/gbrowse/trunk/debian/copyright	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/copyright	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,29 @@
+This package was debianized by Charles Plessy <charles-debian-nospam at plessy.org> on
+Wed, 13 Jun 2007 19:07:01 +0900.
+
+It was downloaded from <fill in http/ftp site>
+
+Upstream Author: <put author(s) name and email here>
+
+Copyright: <put the year(s) of the copyright, and the names of the
+            copyright holder(s) here>
+
+License:
+
+    This program is free software; you can redistribute it and/or modify it
+    under the terms of the "Artistic License" which comes with Debian.
+
+    THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED 
+    WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES 
+    OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+
+On Debian systems, the complete text of the Artistic License 
+can be found in `/usr/share/common-licenses/Artistic'.
+
+The Debian packaging is (C) 2007, Charles Plessy <charles-debian-nospam at plessy.org> and
+is licensed under the GPL, see `/usr/share/common-licenses/GPL'.
+
+
+# Please also look if there are files or directories which have a
+# different copyright/license attached and list them here.
+

Added: trunk/packages/gbrowse/trunk/debian/dirs
===================================================================
--- trunk/packages/gbrowse/trunk/debian/dirs	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/dirs	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,2 @@
+usr/bin
+usr/sbin

Added: trunk/packages/gbrowse/trunk/debian/docs
===================================================================
--- trunk/packages/gbrowse/trunk/debian/docs	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/docs	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,4 @@
+README
+README.gff3
+README.sessions
+TODO

Added: trunk/packages/gbrowse/trunk/debian/generic-genome-browser.doc-base.EX
===================================================================
--- trunk/packages/gbrowse/trunk/debian/generic-genome-browser.doc-base.EX	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/generic-genome-browser.doc-base.EX	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,22 @@
+Document: generic-genome-browser
+Title: Debian generic-genome-browser Manual
+Author: <insert document author here>
+Abstract: This manual describes what generic-genome-browser is
+ and how it can be used to
+ manage online manuals on Debian systems.
+Section: unknown
+
+Format: debiandoc-sgml
+Files: /usr/share/doc/generic-genome-browser/generic-genome-browser.sgml.gz
+
+Format: postscript
+Files: /usr/share/doc/generic-genome-browser/generic-genome-browser.ps.gz
+
+Format: text
+Files: /usr/share/doc/generic-genome-browser/generic-genome-browser.text.gz
+
+Format: HTML
+Index: /usr/share/doc/generic-genome-browser/html/index.html
+Files: /usr/share/doc/generic-genome-browser/html/*.html
+
+  

Added: trunk/packages/gbrowse/trunk/debian/patches/10_usrlocalperl.patch
===================================================================
--- trunk/packages/gbrowse/trunk/debian/patches/10_usrlocalperl.patch	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/patches/10_usrlocalperl.patch	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,10 @@
+Index: gbrowse-1.68/contrib/blast2gff.pl
+===================================================================
+--- gbrowse-1.68.orig/contrib/blast2gff.pl	2007-06-14 22:47:19.000000000 +0900
++++ gbrowse-1.68/contrib/blast2gff.pl	2007-06-14 22:47:37.000000000 +0900
+@@ -1,4 +1,4 @@
+-#!/usr/local/bin/perl -w
++#!/usr/bin/perl -w
+ 
+ =head1 NAME
+ 

Added: trunk/packages/gbrowse/trunk/debian/patches/series
===================================================================
--- trunk/packages/gbrowse/trunk/debian/patches/series	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/patches/series	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1 @@
+10_usrlocalperl.patch

Added: trunk/packages/gbrowse/trunk/debian/rules
===================================================================
--- trunk/packages/gbrowse/trunk/debian/rules	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/rules	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,76 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+include /usr/share/quilt/quilt.make
+
+configure: configure-stamp
+configure-stamp:
+	dh_testdir
+	perl Makefile.PL \
+		DESTDIR=$(CURDIR)/debian/gbrowse \
+		CGIBIN=$(CURDIR)/debian/gbrowse/usr/lib/cgi-bin \
+		CONF=$(CURDIR)/debian/gbrowse/etc/ \
+		HTDOCS=$(CURDIR)/debian/gbrowse/var/www \
+		INSTALLDIRS=vendor \
+		VENDORARCHEXP=/usr/share/perl5 
+	touch configure-stamp
+
+build: patch build-stamp
+build-stamp: configure-stamp 
+	dh_testdir
+	$(MAKE) OPTIMIZE="-O2 -g -Wall"
+	touch $@
+
+clean: unpatch configure-stamp
+	dh_testdir
+	dh_testroot
+	rm -f build-stamp configure-stamp
+	$(MAKE) clean
+	dh_clean 
+
+install: build
+	dh_testdir
+	dh_testroot
+	dh_clean -k 
+	dh_installdirs
+
+	# Add here commands to install the package into debian/generic-genome-browser.
+	$(MAKE) DESTDIR=$(CURDIR)/debian/gbrowse install
+
+	# UGLY WORKAROUND TO A CONFLICT WITH BIOPERL 1.5.2
+	rm $(CURDIR)/debian/gbrowse/usr/share/man/man3/Bio::Graphics::FeatureFile.3pm
+
+binary-indep: build install
+
+binary-arch: build install
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs Changes
+	dh_installdocs
+	dh_installexamples
+#	dh_install
+#	dh_installmenu
+#	dh_installdebconf	
+#	dh_installlogrotate
+#	dh_installemacsen
+#	dh_installpam
+#	dh_installmime
+#	dh_python
+#	dh_installinit
+#	dh_installcron
+#	dh_installinfo
+	dh_installman
+	dh_link
+	dh_strip
+	dh_compress
+	dh_fixperms
+#	dh_perl
+#	dh_makeshlibs
+	dh_installdeb
+	dh_shlibdeps
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure


Property changes on: trunk/packages/gbrowse/trunk/debian/rules
___________________________________________________________________
Name: svn:executable
   + *

Added: trunk/packages/gbrowse/trunk/debian/watch.ex
===================================================================
--- trunk/packages/gbrowse/trunk/debian/watch.ex	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/debian/watch.ex	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,22 @@
+# Example watch control file for uscan
+# Rename this file to "watch" and then you can run the "uscan" command
+# to check for upstream updates and more.
+# See uscan(1) for format
+
+# Compulsory line, this is a version 3 file
+version=3
+
+# Uncomment to examine a Webpage 
+# <Webpage URL> <string match>
+#http://www.example.com/downloads.php generic-genome-browser-(.*)\.tar\.gz
+
+# Uncomment to examine a Webserver directory
+#http://www.example.com/pub/generic-genome-browser-(.*)\.tar\.gz
+
+# Uncommment to examine a FTP server
+#ftp://ftp.example.com/pub/generic-genome-browser-(.*)\.tar\.gz debian uupdate
+
+# Uncomment to find new files on sourceforge, for debscripts >= 2.9
+# http://sf.net/generic-genome-browser/generic-genome-browser-(.*)\.tar\.gz
+
+

Added: trunk/packages/gbrowse/trunk/libalign/Makefile.old
===================================================================
--- trunk/packages/gbrowse/trunk/libalign/Makefile.old	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/libalign/Makefile.old	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,737 @@
+# This Makefile is for the Bio::Graphics::Browser::CAlign extension to perl.
+#
+# It was generated automatically by MakeMaker version
+# 6.30_01 (Revision: Revision: 4535 ) from the contents of
+# Makefile.PL. Don't edit this file, edit Makefile.PL instead.
+#
+#       ANY CHANGES MADE HERE WILL BE LOST!
+#
+#   MakeMaker ARGV: (q[DESTDIR=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse], q[INSTALLDIRS=vendor], q[VENDORARCHEXP=/usr/share/perl5])
+#
+#   MakeMaker Parameters:
+
+#     ABSTRACT_FROM => q[CAlign.pm]
+#     AUTHOR => q[A. U. Thor <a.u.thor at a.galaxy.far.far.away>]
+#     DEFINE => q[]
+#     INC => q[]
+#     LIBS => [q[]]
+#     NAME => q[Bio::Graphics::Browser::CAlign]
+#     PREREQ_PM => {  }
+#     VERSION_FROM => q[CAlign.pm]
+
+# --- MakeMaker post_initialize section:
+
+
+# --- MakeMaker const_config section:
+
+# These definitions are from config.sh (via /usr/lib/perl/5.8/Config.pm)
+
+# They may have been overridden via Makefile.PL or on the command line
+AR = ar
+CC = cc
+CCCDLFLAGS = -fPIC
+CCDLFLAGS = -Wl,-E
+DLEXT = so
+DLSRC = dl_dlopen.xs
+LD = cc
+LDDLFLAGS = -shared -L/usr/local/lib
+LDFLAGS =  -L/usr/local/lib
+LIBC = /lib/libc-2.3.6.so
+LIB_EXT = .a
+OBJ_EXT = .o
+OSNAME = linux
+OSVERS = 2.6.8-powerpc-smp
+RANLIB = :
+SITELIBEXP = /usr/local/share/perl/5.8.8
+SITEARCHEXP = /usr/local/lib/perl/5.8.8
+SO = so
+EXE_EXT = 
+FULL_AR = /usr/bin/ar
+VENDORARCHEXP = /usr/lib/perl5
+VENDORLIBEXP = /usr/share/perl5
+
+
+# --- MakeMaker constants section:
+AR_STATIC_ARGS = cr
+DIRFILESEP = /
+DFSEP = $(DIRFILESEP)
+NAME = Bio::Graphics::Browser::CAlign
+NAME_SYM = Bio_Graphics_Browser_CAlign
+VERSION = 1.00
+VERSION_MACRO = VERSION
+VERSION_SYM = 1_00
+DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\"
+XS_VERSION = 1.00
+XS_VERSION_MACRO = XS_VERSION
+XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\"
+INST_ARCHLIB = ../blib/arch
+INST_SCRIPT = ../blib/script
+INST_BIN = ../blib/bin
+INST_LIB = ../blib/lib
+INST_MAN1DIR = ../blib/man1
+INST_MAN3DIR = ../blib/man3
+MAN1EXT = 1p
+MAN3EXT = 3pm
+INSTALLDIRS = site
+DESTDIR = 
+PREFIX = /usr
+PERLPREFIX = $(PREFIX)
+SITEPREFIX = $(PREFIX)/local
+VENDORPREFIX = $(PREFIX)
+INSTALLPRIVLIB = $(PERLPREFIX)/share/perl/5.8
+DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB)
+INSTALLSITELIB = $(SITEPREFIX)/share/perl/5.8.8
+DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB)
+INSTALLVENDORLIB = $(VENDORPREFIX)/share/perl5
+DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB)
+INSTALLARCHLIB = $(PERLPREFIX)/lib/perl/5.8
+DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB)
+INSTALLSITEARCH = $(SITEPREFIX)/lib/perl/5.8.8
+DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH)
+INSTALLVENDORARCH = $(VENDORPREFIX)/lib/perl5
+DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH)
+INSTALLBIN = $(PERLPREFIX)/bin
+DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN)
+INSTALLSITEBIN = $(SITEPREFIX)/bin
+DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN)
+INSTALLVENDORBIN = $(VENDORPREFIX)/bin
+DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN)
+INSTALLSCRIPT = $(PERLPREFIX)/bin
+DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT)
+INSTALLSITESCRIPT = $(SITEPREFIX)/bin
+DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT)
+INSTALLVENDORSCRIPT = $(VENDORPREFIX)/bin
+DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT)
+INSTALLMAN1DIR = $(PERLPREFIX)/share/man/man1
+DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR)
+INSTALLSITEMAN1DIR = $(SITEPREFIX)/man/man1
+DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR)
+INSTALLVENDORMAN1DIR = $(VENDORPREFIX)/share/man/man1
+DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR)
+INSTALLMAN3DIR = $(PERLPREFIX)/share/man/man3
+DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR)
+INSTALLSITEMAN3DIR = $(SITEPREFIX)/man/man3
+DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR)
+INSTALLVENDORMAN3DIR = $(VENDORPREFIX)/share/man/man3
+DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR)
+PERL_LIB = /usr/share/perl/5.8
+PERL_ARCHLIB = /usr/lib/perl/5.8
+LIBPERL_A = libperl.a
+FIRST_MAKEFILE = Makefile
+MAKEFILE_OLD = Makefile.old
+MAKE_APERL_FILE = Makefile.aperl
+PERLMAINCC = $(CC)
+PERL_INC = /usr/lib/perl/5.8/CORE
+PERL = /usr/bin/perl
+FULLPERL = /usr/bin/perl
+ABSPERL = $(PERL)
+PERLRUN = $(PERL)
+FULLPERLRUN = $(FULLPERL)
+ABSPERLRUN = $(ABSPERL)
+PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)"
+FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)"
+ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)"
+PERL_CORE = 0
+PERM_RW = 644
+PERM_RWX = 755
+
+MAKEMAKER   = /usr/share/perl/5.8/ExtUtils/MakeMaker.pm
+MM_VERSION  = 6.30_01
+MM_REVISION = Revision: 4535 
+
+# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle).
+# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle)
+# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar)
+# DLBASE  = Basename part of dynamic library. May be just equal BASEEXT.
+FULLEXT = Bio/Graphics/Browser/CAlign
+BASEEXT = CAlign
+PARENT_NAME = Bio::Graphics::Browser
+DLBASE = $(BASEEXT)
+VERSION_FROM = CAlign.pm
+INC = 
+DEFINE = 
+OBJECT = $(BASEEXT)$(OBJ_EXT)
+LDFROM = $(OBJECT)
+LINKTYPE = dynamic
+BOOTDEP = 
+
+# Handy lists of source code files:
+XS_FILES = CAlign.xs
+C_FILES  = CAlign.c
+O_FILES  = CAlign.o
+H_FILES  = realign.h
+MAN1PODS = 
+MAN3PODS = CAlign.pm
+
+# Where is the Config information that we are using/depend on
+CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h
+
+# Where to build things
+INST_LIBDIR      = $(INST_LIB)/Bio/Graphics/Browser
+INST_ARCHLIBDIR  = $(INST_ARCHLIB)/Bio/Graphics/Browser
+
+INST_AUTODIR     = $(INST_LIB)/auto/$(FULLEXT)
+INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT)
+
+INST_STATIC      = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT)
+INST_DYNAMIC     = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT)
+INST_BOOT        = $(INST_ARCHAUTODIR)/$(BASEEXT).bs
+
+# Extra linker info
+EXPORT_LIST        = 
+PERL_ARCHIVE       = 
+PERL_ARCHIVE_AFTER = 
+
+
+TO_INST_PM = CAlign.pm
+
+PM_TO_BLIB = CAlign.pm \
+	$(INST_LIB)/Bio/Graphics/Browser/CAlign.pm
+
+
+# --- MakeMaker platform_constants section:
+MM_Unix_VERSION = 1.50_01
+PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc
+
+
+# --- MakeMaker tool_autosplit section:
+# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto
+AUTOSPLITFILE = $(ABSPERLRUN)  -e 'use AutoSplit;  autosplit($$ARGV[0], $$ARGV[1], 0, 1, 1)'
+
+
+
+# --- MakeMaker tool_xsubpp section:
+
+XSUBPPDIR = /usr/share/perl/5.8.8/ExtUtils
+XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp
+XSUBPPRUN = $(PERLRUN) $(XSUBPP)
+XSPROTOARG = 
+XSUBPPDEPS = /usr/share/perl/5.8/ExtUtils/typemap $(XSUBPP)
+XSUBPPARGS = -typemap /usr/share/perl/5.8/ExtUtils/typemap
+XSUBPP_EXTRA_ARGS = 
+
+
+# --- MakeMaker tools_other section:
+SHELL = /bin/sh
+CHMOD = chmod
+CP = cp
+MV = mv
+NOOP = $(SHELL) -c true
+NOECHO = @
+RM_F = rm -f
+RM_RF = rm -rf
+TEST_F = test -f
+TOUCH = touch
+UMASK_NULL = umask 0
+DEV_NULL = > /dev/null 2>&1
+MKPATH = $(ABSPERLRUN) "-MExtUtils::Command" -e mkpath
+EQUALIZE_TIMESTAMP = $(ABSPERLRUN) "-MExtUtils::Command" -e eqtime
+ECHO = echo
+ECHO_N = echo -n
+UNINST = 0
+VERBINST = 0
+MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install({@ARGV}, '\''$(VERBINST)'\'', 0, '\''$(UNINST)'\'');'
+DOC_INSTALL = $(ABSPERLRUN) "-MExtUtils::Command::MM" -e perllocal_install
+UNINSTALL = $(ABSPERLRUN) "-MExtUtils::Command::MM" -e uninstall
+WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) "-MExtUtils::Command::MM" -e warn_if_old_packlist
+MACROSTART = 
+MACROEND = 
+USEMAKEFILE = -f
+FIXIN = $(PERLRUN) "-MExtUtils::MY" -e "MY->fixin(shift)"
+
+
+# --- MakeMaker makemakerdflt section:
+makemakerdflt: all
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker dist section skipped.
+
+# --- MakeMaker macro section:
+
+
+# --- MakeMaker depend section:
+
+
+# --- MakeMaker cflags section:
+
+CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
+OPTIMIZE = -O2
+PERLTYPE = 
+MPOLLUTE = 
+
+
+# --- MakeMaker const_loadlibs section:
+
+# Bio::Graphics::Browser::CAlign might depend on some other libraries:
+# See ExtUtils::Liblist for details
+#
+
+
+# --- MakeMaker const_cccmd section:
+CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \
+	$(CCFLAGS) $(OPTIMIZE) \
+	$(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \
+	$(XS_DEFINE_VERSION)
+
+# --- MakeMaker post_constants section:
+
+
+# --- MakeMaker pasthru section:
+
+PASTHRU = LIBPERL_A="$(LIBPERL_A)"\
+	LINKTYPE="$(LINKTYPE)"\
+	OPTIMIZE="$(OPTIMIZE)"\
+	PREFIX="$(PREFIX)"\
+	PASTHRU_DEFINE="$(PASTHRU_DEFINE)"\
+	PASTHRU_INC="$(PASTHRU_INC)"
+
+
+# --- MakeMaker special_targets section:
+.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT)
+
+.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir
+
+
+
+# --- MakeMaker c_o section:
+
+.c.i:
+	cc -E -c $(PASTHRU_INC) $(INC) \
+	$(CCFLAGS) $(OPTIMIZE) \
+	$(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \
+	$(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i
+
+.c.s:
+	$(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c
+
+.c$(OBJ_EXT):
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c
+
+.C$(OBJ_EXT):
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C
+
+.cpp$(OBJ_EXT):
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp
+
+.cxx$(OBJ_EXT):
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx
+
+.cc$(OBJ_EXT):
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc
+
+
+# --- MakeMaker xs_c section:
+
+.xs.c:
+	$(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c
+
+
+# --- MakeMaker xs_o section:
+
+.xs$(OBJ_EXT):
+	$(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c
+	$(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c
+
+
+# --- MakeMaker top_targets section:
+all :: pure_all manifypods
+	$(NOECHO) $(NOOP)
+
+
+pure_all :: config pm_to_blib subdirs linkext
+	$(NOECHO) $(NOOP)
+
+subdirs :: $(MYEXTLIB)
+	$(NOECHO) $(NOOP)
+
+config :: $(FIRST_MAKEFILE) blibdirs
+	$(NOECHO) $(NOOP)
+
+$(O_FILES): $(H_FILES)
+
+help :
+	perldoc ExtUtils::MakeMaker
+
+
+# --- MakeMaker blibdirs section:
+blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists
+	$(NOECHO) $(NOOP)
+
+# Backwards compat with 6.18 through 6.25
+blibdirs.ts : blibdirs
+	$(NOECHO) $(NOOP)
+
+$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_LIBDIR)
+	$(NOECHO) $(CHMOD) 755 $(INST_LIBDIR)
+	$(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists
+
+$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_ARCHLIB)
+	$(NOECHO) $(CHMOD) 755 $(INST_ARCHLIB)
+	$(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists
+
+$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_AUTODIR)
+	$(NOECHO) $(CHMOD) 755 $(INST_AUTODIR)
+	$(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists
+
+$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR)
+	$(NOECHO) $(CHMOD) 755 $(INST_ARCHAUTODIR)
+	$(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists
+
+$(INST_BIN)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_BIN)
+	$(NOECHO) $(CHMOD) 755 $(INST_BIN)
+	$(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists
+
+$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_SCRIPT)
+	$(NOECHO) $(CHMOD) 755 $(INST_SCRIPT)
+	$(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists
+
+$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_MAN1DIR)
+	$(NOECHO) $(CHMOD) 755 $(INST_MAN1DIR)
+	$(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists
+
+$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL
+	$(NOECHO) $(MKPATH) $(INST_MAN3DIR)
+	$(NOECHO) $(CHMOD) 755 $(INST_MAN3DIR)
+	$(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists
+
+
+
+# --- MakeMaker linkext section:
+
+linkext :: $(LINKTYPE)
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker dlsyms section:
+
+
+# --- MakeMaker dynamic section:
+
+dynamic :: $(FIRST_MAKEFILE) $(INST_DYNAMIC) $(INST_BOOT)
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker dynamic_bs section:
+BOOTSTRAP = $(BASEEXT).bs
+
+# As Mkbootstrap might not write a file (if none is required)
+# we use touch to prevent make continually trying to remake it.
+# The DynaLoader only reads a non-empty file.
+$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists
+	$(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))"
+	$(NOECHO) $(PERLRUN) \
+		"-MExtUtils::Mkbootstrap" \
+		-e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');"
+	$(NOECHO) $(TOUCH) $@
+	$(CHMOD) $(PERM_RW) $@
+
+$(INST_BOOT) : $(BOOTSTRAP) $(INST_ARCHAUTODIR)$(DFSEP).exists
+	$(NOECHO) $(RM_RF) $@
+	- $(CP) $(BOOTSTRAP) $@
+	$(CHMOD) $(PERM_RW) $@
+
+
+# --- MakeMaker dynamic_lib section:
+
+# This section creates the dynamically loadable $(INST_DYNAMIC)
+# from $(OBJECT) and possibly $(MYEXTLIB).
+ARMAYBE = :
+OTHERLDFLAGS = 
+INST_DYNAMIC_DEP = 
+INST_DYNAMIC_FIX = 
+
+$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(BOOTSTRAP) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP)
+	$(RM_F) $@
+	$(LD)  $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB)	\
+	  $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST)	\
+	  $(INST_DYNAMIC_FIX)
+	$(CHMOD) $(PERM_RWX) $@
+
+
+# --- MakeMaker static section:
+
+## $(INST_PM) has been moved to the all: target.
+## It remains here for awhile to allow for old usage: "make static"
+static :: $(FIRST_MAKEFILE) $(INST_STATIC)
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker static_lib section:
+
+$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists
+	$(RM_RF) $@
+	$(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@
+	$(CHMOD) $(PERM_RWX) $@
+	$(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld
+
+
+# --- MakeMaker manifypods section:
+
+POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--"
+POD2MAN = $(POD2MAN_EXE)
+
+
+manifypods : pure_all  \
+	CAlign.pm \
+	CAlign.pm
+	$(NOECHO) $(POD2MAN) --section=$(MAN3EXT) --perm_rw=$(PERM_RW) \
+	  CAlign.pm $(INST_MAN3DIR)/Bio::Graphics::Browser::CAlign.$(MAN3EXT) 
+
+
+
+
+# --- MakeMaker processPL section:
+
+
+# --- MakeMaker installbin section:
+
+
+# --- MakeMaker subdirs section:
+
+# none
+
+# --- MakeMaker clean_subdirs section:
+clean_subdirs :
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker clean section:
+
+# Delete temporary files but do not touch installed files. We don't delete
+# the Makefile here so a later make realclean still has a makefile to use.
+
+clean :: clean_subdirs
+	- $(RM_F) \
+	  *$(LIB_EXT) core \
+	  core.[0-9] $(INST_ARCHAUTODIR)/extralibs.all \
+	  core.[0-9][0-9] $(BASEEXT).bso \
+	  pm_to_blib.ts core.[0-9][0-9][0-9][0-9] \
+	  $(BASEEXT).x $(BOOTSTRAP) \
+	  perl$(EXE_EXT) tmon.out \
+	  *$(OBJ_EXT) pm_to_blib \
+	  $(INST_ARCHAUTODIR)/extralibs.ld blibdirs.ts \
+	  core.[0-9][0-9][0-9][0-9][0-9] *perl.core \
+	  core.*perl.*.? $(MAKE_APERL_FILE) \
+	  perl $(BASEEXT).def \
+	  core.[0-9][0-9][0-9] mon.out \
+	  lib$(BASEEXT).def perlmain.c \
+	  perl.exe CAlign.c \
+	  so_locations $(BASEEXT).exp 
+	- $(RM_RF) \
+	  blib 
+	- $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL)
+
+
+# --- MakeMaker realclean_subdirs section:
+realclean_subdirs :
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker realclean section:
+# Delete temporary files (via clean) and also delete dist files
+realclean purge ::  clean realclean_subdirs
+	- $(RM_F) \
+	  $(OBJECT) $(MAKEFILE_OLD) \
+	  $(FIRST_MAKEFILE) 
+	- $(RM_RF) \
+	  $(DISTVNAME) 
+
+
+# --- MakeMaker metafile section:
+metafile : create_distdir
+	$(NOECHO) $(ECHO) Generating META.yml
+	$(NOECHO) $(ECHO) '# http://module-build.sourceforge.net/META-spec.html' > META_new.yml
+	$(NOECHO) $(ECHO) '#XXXXXXX This is a prototype!!!  It will change in the future!!! XXXXX#' >> META_new.yml
+	$(NOECHO) $(ECHO) 'name:         Bio-Graphics-Browser-CAlign' >> META_new.yml
+	$(NOECHO) $(ECHO) 'version:      1.00' >> META_new.yml
+	$(NOECHO) $(ECHO) 'version_from: CAlign.pm' >> META_new.yml
+	$(NOECHO) $(ECHO) 'installdirs:  site' >> META_new.yml
+	$(NOECHO) $(ECHO) 'requires:' >> META_new.yml
+	$(NOECHO) $(ECHO) '' >> META_new.yml
+	$(NOECHO) $(ECHO) 'distribution_type: module' >> META_new.yml
+	$(NOECHO) $(ECHO) 'generated_by: ExtUtils::MakeMaker version 6.30_01' >> META_new.yml
+	-$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml
+
+
+# --- MakeMaker signature section:
+signature :
+	cpansign -s
+
+
+# --- MakeMaker dist_basics section skipped.
+
+# --- MakeMaker dist_core section skipped.
+
+# --- MakeMaker distdir section skipped.
+
+# --- MakeMaker dist_test section skipped.
+
+# --- MakeMaker dist_ci section skipped.
+
+# --- MakeMaker distmeta section:
+distmeta : create_distdir metafile
+	$(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{META.yml} => q{Module meta-data (added by MakeMaker)}}) } ' \
+	  -e '    or print "Could not add META.yml to MANIFEST: $${'\''@'\''}\n"'
+
+
+
+# --- MakeMaker distsignature section:
+distsignature : create_distdir
+	$(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) } ' \
+	  -e '    or print "Could not add SIGNATURE to MANIFEST: $${'\''@'\''}\n"'
+	$(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE
+	cd $(DISTVNAME) && cpansign -s
+
+
+
+# --- MakeMaker install section skipped.
+
+# --- MakeMaker force section:
+# Phony target to force checking subdirectories.
+FORCE:
+	$(NOECHO) $(NOOP)
+
+
+# --- MakeMaker perldepend section:
+
+PERL_HDRS = \
+	$(PERL_INC)/EXTERN.h		\
+	$(PERL_INC)/INTERN.h		\
+	$(PERL_INC)/XSUB.h		\
+	$(PERL_INC)/av.h		\
+	$(PERL_INC)/cc_runtime.h	\
+	$(PERL_INC)/config.h		\
+	$(PERL_INC)/cop.h		\
+	$(PERL_INC)/cv.h		\
+	$(PERL_INC)/dosish.h		\
+	$(PERL_INC)/embed.h		\
+	$(PERL_INC)/embedvar.h		\
+	$(PERL_INC)/fakethr.h		\
+	$(PERL_INC)/form.h		\
+	$(PERL_INC)/gv.h		\
+	$(PERL_INC)/handy.h		\
+	$(PERL_INC)/hv.h		\
+	$(PERL_INC)/intrpvar.h		\
+	$(PERL_INC)/iperlsys.h		\
+	$(PERL_INC)/keywords.h		\
+	$(PERL_INC)/mg.h		\
+	$(PERL_INC)/nostdio.h		\
+	$(PERL_INC)/op.h		\
+	$(PERL_INC)/opcode.h		\
+	$(PERL_INC)/patchlevel.h	\
+	$(PERL_INC)/perl.h		\
+	$(PERL_INC)/perlio.h		\
+	$(PERL_INC)/perlsdio.h		\
+	$(PERL_INC)/perlsfio.h		\
+	$(PERL_INC)/perlvars.h		\
+	$(PERL_INC)/perly.h		\
+	$(PERL_INC)/pp.h		\
+	$(PERL_INC)/pp_proto.h		\
+	$(PERL_INC)/proto.h		\
+	$(PERL_INC)/regcomp.h		\
+	$(PERL_INC)/regexp.h		\
+	$(PERL_INC)/regnodes.h		\
+	$(PERL_INC)/scope.h		\
+	$(PERL_INC)/sv.h		\
+	$(PERL_INC)/thrdvar.h		\
+	$(PERL_INC)/thread.h		\
+	$(PERL_INC)/unixish.h		\
+	$(PERL_INC)/util.h
+
+$(OBJECT) : $(PERL_HDRS)
+
+CAlign.c : $(XSUBPPDEPS)
+
+
+# --- MakeMaker makefile section:
+
+$(OBJECT) : $(FIRST_MAKEFILE)
+
+# We take a very conservative approach here, but it's worth it.
+# We move Makefile to Makefile.old here to avoid gnu make looping.
+$(FIRST_MAKEFILE) : Makefile.PL $(CONFIGDEP)
+	$(NOECHO) $(ECHO) "Makefile out-of-date with respect to $?"
+	$(NOECHO) $(ECHO) "Cleaning current config before rebuilding Makefile..."
+	-$(NOECHO) $(RM_F) $(MAKEFILE_OLD)
+	-$(NOECHO) $(MV)   $(FIRST_MAKEFILE) $(MAKEFILE_OLD)
+	- $(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) clean $(DEV_NULL)
+	$(PERLRUN) Makefile.PL "DESTDIR=/tmp/tmp.fgGvra4059/unpdir/gbrowse-1.68/debian/gbrowse" "INSTALLDIRS=vendor" "VENDORARCHEXP=/usr/share/perl5"
+	$(NOECHO) $(ECHO) "==> Your Makefile has been rebuilt. <=="
+	$(NOECHO) $(ECHO) "==> Please rerun the $(MAKE) command.  <=="
+	false
+
+
+
+# --- MakeMaker staticmake section:
+
+# --- MakeMaker makeaperl section ---
+MAP_TARGET    = ../perl
+FULLPERL      = /usr/bin/perl
+
+
+# --- MakeMaker test section:
+
+TEST_VERBOSE=0
+TEST_TYPE=test_$(LINKTYPE)
+TEST_FILE = test.pl
+TEST_FILES = 
+TESTDB_SW = -d
+
+testdb :: testdb_$(LINKTYPE)
+
+test :: $(TEST_TYPE)
+
+test_dynamic :: pure_all
+	PERL_DL_NONLAZY=1 $(FULLPERLRUN) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE)
+
+testdb_dynamic :: pure_all
+	PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE)
+
+test_ : test_dynamic
+
+test_static :: pure_all $(MAP_TARGET)
+	PERL_DL_NONLAZY=1 ./$(MAP_TARGET) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE)
+
+testdb_static :: pure_all $(MAP_TARGET)
+	PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE)
+
+
+
+# --- MakeMaker ppd section:
+# Creates a PPD (Perl Package Description) for a binary distribution.
+ppd:
+	$(NOECHO) $(ECHO) '<SOFTPKG NAME="$(DISTNAME)" VERSION="1,00,0,0">' > $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    <TITLE>$(DISTNAME)</TITLE>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    <ABSTRACT>Compiled helper for Bio::Graphics::Browser::Realign</ABSTRACT>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    <AUTHOR>A. U. Thor &lt;a.u.thor at a.galaxy.far.far.away&gt;</AUTHOR>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    <IMPLEMENTATION>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <OS NAME="$(OSNAME)" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <ARCHITECTURE NAME="powerpc-linux-gnu-thread-multi" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '        <CODEBASE HREF="" />' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '    </IMPLEMENTATION>' >> $(DISTNAME).ppd
+	$(NOECHO) $(ECHO) '</SOFTPKG>' >> $(DISTNAME).ppd
+
+
+# --- MakeMaker pm_to_blib section:
+
+pm_to_blib : $(TO_INST_PM)
+	$(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', '\''$(PM_FILTER)'\'')' \
+	  CAlign.pm $(INST_LIB)/Bio/Graphics/Browser/CAlign.pm 
+	$(NOECHO) $(TOUCH) pm_to_blib
+
+
+# --- MakeMaker selfdocument section:
+
+
+# --- MakeMaker postamble section:
+
+
+# End.

Added: trunk/packages/gbrowse/trunk/pod2htmd.tmp
===================================================================
--- trunk/packages/gbrowse/trunk/pod2htmd.tmp	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/pod2htmd.tmp	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,16 @@
+docs/pod/
+.
+GBROWSE_IMG docs/pod//GBROWSE_IMG.pod:
+BIOSQL_ADAPTER_HOWTO docs/pod//BIOSQL_ADAPTER_HOWTO.pod:
+README-chado docs/pod//README-chado.pod:
+ORACLE_AND_POSTGRESQL docs/pod//ORACLE_AND_POSTGRESQL.pod:
+README-lucegene docs/pod//README-lucegene.pod:
+DAS_HOWTO docs/pod//DAS_HOWTO.pod:
+MAKE_IMAGES_HOWTO docs/pod//MAKE_IMAGES_HOWTO.pod:
+FAQ docs/pod//FAQ.pod:
+CONFIGURE_HOWTO docs/pod//CONFIGURE_HOWTO.pod:
+INSTALL.MacOSX docs/pod//INSTALL.MacOSX.pod:
+GENBANK_HOWTO docs/pod//GENBANK_HOWTO.pod:
+README-gff-files docs/pod//README-gff-files.pod:
+INSTALL docs/pod//INSTALL.pod:
+PLUGINS_HOWTO docs/pod//PLUGINS_HOWTO.pod:

Added: trunk/packages/gbrowse/trunk/pod2htmi.tmp
===================================================================
--- trunk/packages/gbrowse/trunk/pod2htmi.tmp	                        (rev 0)
+++ trunk/packages/gbrowse/trunk/pod2htmi.tmp	2007-06-15 00:07:47 UTC (rev 329)
@@ -0,0 +1,2 @@
+docs/pod/
+.




More information about the debian-med-commit mailing list