summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Fisette <ribosome@gentoo.org>2004-09-18 18:59:56 +0000
committerOlivier Fisette <ribosome@gentoo.org>2004-09-18 18:59:56 +0000
commit745f63b7d3918307e164179871f03aa63668c7b2 (patch)
tree74462e99e097710bedae2f7cd18a737ae0497241 /app-sci
parentInitial import. (diff)
downloadhistorical-745f63b7d3918307e164179871f03aa63668c7b2.tar.gz
historical-745f63b7d3918307e164179871f03aa63668c7b2.tar.bz2
historical-745f63b7d3918307e164179871f03aa63668c7b2.zip
Updated course material and io_lib. Documentation now builds from source.
Diffstat (limited to 'app-sci')
-rw-r--r--app-sci/staden/ChangeLog9
-rw-r--r--app-sci/staden/Manifest6
-rw-r--r--app-sci/staden/files/digest-staden-1.4.1-r63
-rw-r--r--app-sci/staden/files/staden-1.4.1-emboss.patch24
-rw-r--r--app-sci/staden/staden-1.4.1-r6.ebuild321
5 files changed, 357 insertions, 6 deletions
diff --git a/app-sci/staden/ChangeLog b/app-sci/staden/ChangeLog
index ed9ce0a61ffa..f16d13c87094 100644
--- a/app-sci/staden/ChangeLog
+++ b/app-sci/staden/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for app-sci/staden
# Copyright 1999-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-sci/staden/ChangeLog,v 1.6 2004/09/17 18:25:48 ribosome Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-sci/staden/ChangeLog,v 1.7 2004/09/18 18:59:56 ribosome Exp $
+
+*staden-1.4.1-r6 (18 Sep 2004)
+
+ 18 Sep 2004; Olivier Fisette <ribosome@gentoo.org>
+ files/staden-1.4.1-emboss.patch, +staden-1.4.1-r6.ebuild:
+ Documentation builds from souce. Updated course material. Updated external
+ io_lib. Fixed some library issues.
*staden-1.4.1-r5 (17 Sep 2004)
diff --git a/app-sci/staden/Manifest b/app-sci/staden/Manifest
index ab135f6ec412..43edd2c49271 100644
--- a/app-sci/staden/Manifest
+++ b/app-sci/staden/Manifest
@@ -1,5 +1,6 @@
+MD5 342dcc42299b6d4e8e18e7e2a454a069 staden-1.4.1-r6.ebuild 11043
MD5 34fa9925397ab3b57f39b5d438bd20ca staden-1.4.1-r5.ebuild 7008
-MD5 ddb74640f6ba06aee9950ca41f1eb58b ChangeLog 1729
+MD5 590ef42294c4669427f1d765ee7a665d ChangeLog 1989
MD5 f189a3c4ff5ae55bcee4f8ed0ace5d20 metadata.xml 254
MD5 e908bf4692dd3494ec22f07db2e7a9f5 files/staden-1.4.1-env 225
MD5 3699a9d368068d835cbd8568d50d23e5 files/staden-1.4.1-gap4.patch 463
@@ -10,6 +11,7 @@ MD5 8650f58c55b83838846447c89543255d files/staden-1.4.1-getopt.patch 375
MD5 7717f77ecd800d0b3049974db3fcd0a9 files/staden-1.4.1-prefinish.patch 362
MD5 a8ceefd2b3b2c1c0053a504561635379 files/staden-1.4.1-mutscan.patch 328
MD5 4250ea5eac7e7f2092a797bb78e27e41 files/digest-staden-1.4.1-r5 217
+MD5 cd40ea0a473054769a0963e708257f98 files/digest-staden-1.4.1-r6 213
MD5 708ea4c4b4cbc7e2b6b88b5a09e1b564 files/staden-1.4.1-top.patch 230
MD5 ea4a62a1cd5070014d2c9352eeecf06a files/staden-1.4.1-tk_utils.patch 368
-MD5 12ca92a6e8763128e89ea667b4224b71 files/staden-1.4.1-emboss.patch 799
+MD5 8f13c224bf3c586a6436c39906b780ec files/staden-1.4.1-emboss.patch 1312
diff --git a/app-sci/staden/files/digest-staden-1.4.1-r6 b/app-sci/staden/files/digest-staden-1.4.1-r6
new file mode 100644
index 000000000000..f11f83bbe989
--- /dev/null
+++ b/app-sci/staden/files/digest-staden-1.4.1-r6
@@ -0,0 +1,3 @@
+MD5 a5588b112df2071d17f256e94777def5 staden-src-rel-1-4-1.tar.gz 21889519
+MD5 d6e739e823bff99e61007ded4cb71f79 course-1.1.tar.gz 5271133
+MD5 9550e01cd954c3f672d2a500e051fa53 staden-1.4.1-missing-doc.tar.bz2 63825
diff --git a/app-sci/staden/files/staden-1.4.1-emboss.patch b/app-sci/staden/files/staden-1.4.1-emboss.patch
index 7e619f0d2f5f..29639cd6c929 100644
--- a/app-sci/staden/files/staden-1.4.1-emboss.patch
+++ b/app-sci/staden/files/staden-1.4.1-emboss.patch
@@ -1,12 +1,12 @@
---- lib/spin2_emboss/create_emboss_files.tcl.old 2004-09-16 18:52:45.566400400 -0400
-+++ lib/spin2_emboss/create_emboss_files.tcl 2004-09-16 18:43:32.912416576 -0400
+--- src/spin2_emboss/create_emboss_files.tcl.old 2003-06-09 07:25:27.000000000 -0400
++++ src/spin2_emboss/create_emboss_files.tcl 2004-09-18 14:18:53.782043416 -0400
@@ -2,15 +2,15 @@
# dialogue for each program along with the necessary menu definitions.
#
# These will be written to
-# $STADENROOT/lib/spin2_emboss/acdtcl/*
-# $STADENROOT/tables/emboss_menu
-+# $OUTDIR
++# $OUTDIR/lib/spin2_emboss/acdtcl/*
+# $OUTDIR/emboss_menu
#
# To run it, simply run this script. NOTE that it requires DISPLAY to be set
@@ -20,3 +20,21 @@
tkinit
wm withdraw .
+@@ -53,7 +53,7 @@
+ if {$errorCode != "NONE"} {
+ puts "ERROR: could not parse"
+ puts $errorInfo
+- continue
++ continue
+ }
+ if {[string match "lappend *e_menu(*" $menu_line] || \
+ [string match "set *e_prog(*" $menu_line]} {
+@@ -85,7 +85,7 @@
+ }
+ append out [list add_cascade "Emboss.$i"] { $::EMBOSS::init 4} \n
+ set e_casc(Emboss.$i) 1
+-
++
+ if {[array names e_menu $prefix$i.*] != ""} {
+ set out [_do_emboss_menu $out $prefix$i.]
+ }
diff --git a/app-sci/staden/staden-1.4.1-r6.ebuild b/app-sci/staden/staden-1.4.1-r6.ebuild
new file mode 100644
index 000000000000..a0d43d66b1d9
--- /dev/null
+++ b/app-sci/staden/staden-1.4.1-r6.ebuild
@@ -0,0 +1,321 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-sci/staden/staden-1.4.1-r6.ebuild,v 1.1 2004/09/18 18:59:56 ribosome Exp $
+
+inherit eutils
+
+DESCRIPTION="The Staden Package - Biological sequence handling and analysis"
+HOMEPAGE="http://${PN}.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${PN}-src-rel-${PV//./-}.tar.gz
+ doc? mirror://sourceforge/${PN}/course-1.1.tar.gz
+ mirror://gentoo/${P}-missing-doc.tar.bz2"
+LICENSE="${PN}"
+
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="doc emboss"
+
+DEPEND="${RDEPEND}
+ dev-lang/perl
+ media-gfx/imagemagick
+ virtual/emacs
+ virtual/tetex"
+
+RDEPEND="app-shells/ksh
+ dev-lang/tcl
+ dev-lang/tk
+ dev-libs/io_lib
+ =dev-tcltk/itcl-3.2*
+ dev-tcltk/iwidgets
+ media-libs/libpng
+ virtual/x11"
+
+PDEPEND="emboss? ( app-sci/staden-emboss )"
+
+S=${WORKDIR}/${PN}-src-rel-${PV//./-}
+
+pkg_setup() {
+ # Check for a Fortran compiler.
+ if ! which ${F77:-g77} &> /dev/null; then
+ echo
+ eerror "The Fortran compiler \"${F77:-g77}\" could not be found on your system."
+ if [ -z ${F77} ] || [ ${F77} = g77 ]; then
+ eerror 'Please reinstall "sys-devel/gcc" with the "f77" "USE" flag enabled.'
+ else
+ eerror 'Please make sure the variable ${F77} is set to the name of a valid'
+ eerror 'Fortran compiler installed on your system. Make sure this executable'
+ eerror 'is in a directory included in "PATH", and that the corresponding'
+ eerror '"USE" flag is set if applicable (for example "ifc" if you use the'
+ eerror 'Intel Fortran Compiler).'
+ fi
+ die "Fortran compiler not found."
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+
+ # The following Makefiles are more or less broken. Libraries are missing,
+ # or their directories are not included, or the variables are not set
+ # correctly and must be replaced by hardcoded library names. The
+ # top-level Makefile is also changed to avoid compiling documentation
+ # (which is provided prebuilt because of numerous compilation/dead links
+ # problems).
+ cd ${S}
+ einfo "Patching Staden Package Makefiles:"
+ epatch ${FILESDIR}/${P}-top.patch
+ epatch ${FILESDIR}/${P}-gap4.patch
+ epatch ${FILESDIR}/${P}-mutscan.patch
+ epatch ${FILESDIR}/${P}-prefinish.patch
+ epatch ${FILESDIR}/${P}-tk_utils.patch
+ epatch ${FILESDIR}/${P}-tracediff.patch
+ cd ${S}/src/mk
+ sed -i -e 's/SHLIB_CFLAGS = -fpic/SHLIB_CFLAGS = -fPIC/' linux.mk \
+ && einfo "Successfully applied sed script to patch linux.mk." \
+ || eerror "Failed to apply sed script to patch linux.mk."
+ cd ${S}
+ echo
+
+
+ einfo "Patching Staden Package code:"
+
+ # "getopt" is incorrectly included as an extern (for Win32 compatibility).
+ epatch ${FILESDIR}/${P}-getopt.patch
+
+ # The "create_emboss_files" program needs more flexibility to respect the
+ # Gentoo FSH.
+ epatch ${FILESDIR}/${P}-emboss.patch
+
+ # The original iwidgetsrc crashes...
+ einfo 'Replacing broken iwidgetsrc'
+ cp ${FILESDIR}/${P}-iwidgetsrc.new ${S}/tables/iwidgetsrc
+
+ # Netscape is not a good default browser (security masked in Portage).
+ # Use documentation.html rather than staden_home.html as the top-level
+ # hypertext documentation file.
+ einfo 'Replacing old staden_help script'
+ cp ${FILESDIR}/${P}-staden_help.new ${S}/src/scripts/staden_help
+ chmod +x ${S}/src/scripts/staden_help
+ echo
+
+ # The documentation building process is broken on Gentoo, mainly because
+ # incorrect program locations are assumed.
+ einfo "Patching Staden Package documentation build system:"
+
+ # Documentation build process cannot find "update-nodes.el".
+ cd ${S}/doc/manual/tools
+ sed -i -e 's%emacs -batch $1 -l ${DOCDIR:-.}/tools/update-nodes.el%emacs -batch $1 -l ${DOCDIR:-..}/manual/tools/update-nodes.el%' update-nodes \
+ && einfo "Successfully applied sed script to patch update-nodes." \
+ || eerror "Failed to apply sed script to patch update-nodes."
+
+ # Perl scripts search for "pearl" in "/usr/local".
+ for SCRIPT in *.pl texi2html; do
+ sed -i -e 's%/usr/local/bin/perl%/usr/bin/perl%' ${SCRIPT} \
+ && einfo "Successfully applied sed script to patch ${SCRIPT}." \
+ || eerror "Failed to apply sed script to patch ${SCRIPT}."
+ done
+
+ # The "convert" tool from Imagemagick is searched for in "/usr/X11R6".
+ sed -i -e 's%/usr/X11R6/bin/convert%/usr/bin/convert%' make_ps \
+ && einfo "Successfully applied sed script to patch make.ps." \
+ || eerror "Failed to apply sed script to patch make.ps."
+
+ # Solves issues with images in the exercise* texi files.
+ cd ${S}/course/texi
+ for FILE in exercise*.texi; do
+ sed -i -e 's/,,8in}/,,8in,,eps}/' ${FILE} && \
+ sed -i -e 's/,6in}/,6in,,,eps}/' ${FILE} \
+ && einfo "Successfully applied sed scripts to patch ${FILE}." \
+ || eerror "Failed to apply sed scripts to patch ${FILE}."
+ done
+ echo
+
+ # "CFLAGS" and "FFLAGS" need to be set to the user's values in the build
+ # system global Makefile.
+ einfo "Applying user-defined compilation/linking flags:"
+ cd ${S}/src/mk
+ sed -i -e "s/COPT = -O2 -g3 -DNDEBUG/COPT = ${CFLAGS:-"-O2 -g3 -DNDEBUG"}/" global.mk \
+ && einfo "Successfully applied sed script to set CFLAGS." \
+ || eerror "Failed to apply sed script to set CFLAGS."
+ sed -i -e "s/FOPT = -O2 -g3 -DNDEBUG/FOPT = ${FFLAGS:-"-O2 -g3 -DNDEBUG"}/" global.mk \
+ && einfo "Successfully applied sed script to set FFLAGS." \
+ || eerror "Failed to apply sed script to set FFLAGS."
+}
+
+src_compile() {
+ # "MACHINE", "{STADEN,SRC}ROOT" and "JOB" are mandatory arguments to the
+ # Staden Package build process. "O" is redefined on the command line to
+ # avoid a conflict between Portage and the Staden Package build system,
+ # which both use this variable. (In Portage, its value is the directory
+ # containing the current ebuild, while in the Staden Package build system
+ # it is set to the directory containing the compiler object files.)
+ # Compiler program names also need to be specified to override the
+ # incorrect hardcoded ones.
+
+ # Compile executables and libraries.
+ make \
+ STADENROOT="${S}" \
+ SRCROOT="${S}/src" \
+ MACHINE="linux" \
+ JOB="all" \
+ O="linux-binaries" \
+ CC=${CC:-gcc} \
+ CXX=${CXX:-g++} \
+ F77=${F77:-g77} \
+ || die "Package compilation failed."
+
+ # Build documentation.
+ cd ${S}/doc
+ make \
+ STADENROOT="${S}" \
+ SRCROOT="${S}/src" \
+ MACHINE="linux" \
+ JOB="all" \
+ O="linux-binaries" \
+ CC=${CC:-gcc} \
+ CXX=${CXX:-g++} \
+ F77=${F77:-g77} \
+ || die "Package compilation failed."
+
+ # Moves executables in "${S}/linux-bin" and libraries to ${S}/lib.
+ cd ${S}
+ make \
+ STADENROOT="${S}" \
+ SRCROOT="${S}/src" \
+ MACHINE="linux" \
+ JOB="all" \
+ O="linux-binaries" \
+ install || die "Package pre-installation failed."
+
+ # Remove Makefiles from directories which will be manually installed.
+ rm ${S}/lib/Makefile
+ rm ${S}/demo/Makefile
+ rm ${S}/tables/Makefile
+ rm ${S}/userdata/Makefile
+
+ # Remove trashed "linux-binaries" file and replace it by a directory
+ # containing the appropriate libraries. Remove libread since an updated
+ # version is included in "dev-libs/io_lib".
+ rm ${S}/lib/linux-binaries
+ rm ${S}/src/lib/linux-binaries/libread.so
+ mkdir ${S}/lib/linux-binaries
+ cp ${S}/src/lib/linux-binaries/* ${S}/lib/linux-binaries
+
+ # Delete the binaries already included in "dev-libs/io_lib".
+ for FILE in convert_trace \
+ extract_seq \
+ get_comment \
+ index_tar \
+ makeSCF \
+ scf_{dump,info,update} \
+ trace_dump; do
+ rm ${S}/linux-bin/${FILE}
+ done
+
+ # These won't be found if they are not symlinked in the lib dir.
+ ln -s /usr/$(get_libdir)/libitcl3.2.so ${S}/lib/itcl3.3/libitcl3.3.so
+ ln -s /usr/$(get_libdir)/libitk3.2.so ${S}/lib/itk3.3/libitk3.3.so
+
+ # Remove the prebuilt EMBOSS tcl/tk GUIs.
+ rm ${S}/tables/emboss_menu
+ rm -r ${S}/lib/spin2_emboss/acdtcl
+
+ # Remove the old "spin_emboss" (replaced by "spin2_emboss")
+ rm -r ${S}/lib/spin_emboss
+
+ # Patch just built hypertext documentation.
+ cd ${S}/doc/manual
+ for FILE in *.html; do
+ sed -i -e 's%<a href="../staden_home.html"><img src="i/nav_home.gif" alt="home"></a>%%' ${FILE}
+ done
+ cd ${S}/doc/scripting_manual
+ for FILE in *.html; do
+ sed -i -e 's%<a href="../staden_home.html"><img src="i/nav_home.gif" alt="home"></a>%%' ${FILE}
+ done
+}
+
+src_install() {
+ # Executables and libraries
+ mkdir -p ${D}/opt/${PN}
+
+ for FILE in ${S}/src/lib/linux-binaries/*; do
+ dolib ${FILE}
+ done
+
+ mv ${S}/linux-bin ${D}/opt/${PN}/linux-bin
+ mv ${S}/lib ${D}/opt/${PN}/lib
+
+ # Shared files
+ mv ${S}/demo ${D}/opt/${PN}
+ mv ${S}/tables ${D}/opt/${PN}
+ mv ${S}/userdata ${D}/opt/${PN}
+
+ # "env" file for setting paths to Staden Package root, libraries, tables...
+ insinto /etc/env.d
+ newins ${FILESDIR}/${P}-env 27${PN}
+
+ # Basic documentation
+ insinto /opt/${PN}/doc
+ doins ${S}/{ChangeLog,doc/Acknowledgements}
+ newins ${S}/doc/emboss.txt README.emboss
+
+ # Man pages
+ doman ${S}/doc/manual/man/man*/*
+
+ # Hypertext documentation
+ insinto /opt/${PN}/doc/manual
+ doins ${S}/doc/manual/*unix*.{gif,html,index}
+ insinto /opt/${PN}/doc/scripting_manual
+ doins ${S}/doc/scripting_manual/*.html
+ insinto /opt/${PN}/doc/manual/i
+ doins ${S}/doc/manual/i/*
+ insinto /opt/${PN}/doc/scripting_manual/i
+ doins ${S}/doc/scripting_manual/i/*
+
+ # Missing hypertext documentation
+ insinto /opt/${PN}/doc
+ doins ${WORKDIR}/${P}-missing-doc/documentation.html
+ insinto /opt/${PN}/doc/misc
+ doins ${WORKDIR}/${P}-missing-doc/misc/*
+ insinto /opt/${PN}/doc/misc/i
+ doins ${S}/doc/manual/i/*
+
+ # Printable manuals and articles
+ insinto /opt/${PN}/doc
+ newins ${S}/doc/gkb547_gml.pdf Staden1998.pdf
+ newins ${S}/doc/manual/manual_unix.dvi manual.dvi
+ newins ${S}/doc/manual/manual_unix.ps manual.ps
+ newins ${S}/doc/manual/mini_unix.ps mini_manual.ps
+ newins ${S}/doc/scripting_manual/scripting.dvi scripting_manual.dvi
+ newins ${S}/doc/scripting_manual/scripting.ps scripting_manual.ps
+
+ # A short course in printable format, along with example data
+ if use doc; then
+ mkdir -p ${D}/opt/${PN}/course
+ mv ${WORKDIR}/course-1.1/data ${D}/opt/${PN}/course/data
+ insinto /opt/${PN}/course
+ doins ${WORKDIR}/course-1.1/README
+ newins ${WORKDIR}/course-1.1/unix_docs/mutation_talk.ppt course_mutation_detection_diapos.pdf
+ newins ${WORKDIR}/course-1.1/unix_docs/course_unix.pdf course_project_management.pdf
+ newins ${WORKDIR}/course-1.1/unix_docs/mutation_notes.pdf course_mutation_detection.pdf
+ fi
+}
+
+pkg_postinst() {
+ echo
+ ewarn 'Known issues:'
+ ewarn
+ ewarn 'The help browser integrated in the GUI applications reports missing'
+ ewarn 'files when following hyperlinks on the main documentation page. This'
+ ewarn 'seems to be a problem in the Staden Package help browser. You might'
+ ewarn 'want to use your favorite browser instead of the integrated one to'
+ ewarn 'read the documentation.'
+ ewarn
+ ewarn 'The GUI programs may crash when bringing up the font selection'
+ ewarn 'dialog. This problem is related to the presence of certain'
+ ewarn 'fonts in "FontPath". If you experience this problem, try using'
+ ewarn '"strace" to identify the problematic font(s) and either uninstall'
+ ewarn 'them or remove the directory they are in from "FontPath" by'
+ ewarn 'editing your X server configuration file.'
+ echo
+}