New version
authorOlivier Fisette <ribosome@gentoo.org>
Sat, 15 Jan 2005 02:37:04 +0000 (02:37 +0000)
committerOlivier Fisette <ribosome@gentoo.org>
Sat, 15 Jan 2005 02:37:04 +0000 (02:37 +0000)
sci-biology/staden/ChangeLog
sci-biology/staden/Manifest
sci-biology/staden/files/digest-staden-1.5.3 [new file with mode: 0644]
sci-biology/staden/files/staden-1.5.3-getopt.patch [new file with mode: 0644]
sci-biology/staden/files/staden-1.5.3-text_utils.patch [new file with mode: 0644]
sci-biology/staden/files/staden-1.5.3-tk_utils.patch [new file with mode: 0644]
sci-biology/staden/files/staden-1.5.3-top.patch [new file with mode: 0644]
sci-biology/staden/staden-1.5.3.ebuild [new file with mode: 0644]

index a86abe16c659406700c49ba64da008138e4ccc5c..66aa899fe0d95c9046095fb1b161606deb954e5b 100644 (file)
@@ -1,6 +1,14 @@
 # ChangeLog for sci-biology/staden
 # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-biology/staden/ChangeLog,v 1.6 2005/01/09 11:39:13 swegener Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-biology/staden/ChangeLog,v 1.7 2005/01/15 02:37:04 ribosome Exp $
+
+*staden-1.5.3 (14 Jan 2005)
+
+  14 Jan 2005; Olivier Fisette <ribosome@gentoo.org>
+  +files/staden-1.5.3-getopt.patch, +files/staden-1.5.3-text_utils.patch,
+  +files/staden-1.5.3-tk_utils.patch, +files/staden-1.5.3-top.patch,
+  +staden-1.5.3.ebuild:
+  New version.
 
   09 Jan 2005; Sven Wegener <swegener@gentoo.org> staden-1.4.1-r7.ebuild:
   Added missing parentheses in SRC_URI/*DEPEND/LICENSE.
index 63b4f4e2f1d228a1d2b51169b18222bf014b087e..4b9039890d6d3f4fc3d69954393d970ec9f806d4 100644 (file)
@@ -1,24 +1,20 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
+MD5 900e6d2666d723e0354fc7c334cdc9e4 staden-1.5.3.ebuild 9903
 MD5 fe19fbd7368ca77e37fab8ee461dddda staden-1.4.1-r7.ebuild 9894
-MD5 84a0707094ea555a0375ea854b7e326b ChangeLog 3264
+MD5 47b7572195599c28701e1ad577f035a8 ChangeLog 3529
 MD5 f189a3c4ff5ae55bcee4f8ed0ace5d20 metadata.xml 254
+MD5 6ce4d77a48d0377a1ada09f1990fb2af files/staden-1.5.3-text_utils.patch 478
 MD5 e908bf4692dd3494ec22f07db2e7a9f5 files/staden-1.4.1-env 225
 MD5 3699a9d368068d835cbd8568d50d23e5 files/staden-1.4.1-gap4.patch 463
 MD5 ccf3b22c1399cd7f80f3f6f1caec2cda files/staden-1.4.1-tracediff.patch 334
 MD5 1026629ee4b47aea8043dd7f35eb2ffe files/staden-1.4.1-staden_help.new 159
 MD5 bd82265e893628c1b46329d77e1f11d8 files/staden-1.4.1-iwidgetsrc.new 445
 MD5 8650f58c55b83838846447c89543255d files/staden-1.4.1-getopt.patch 375
+MD5 0857e0bf79953bfa46b1224f6218701a files/staden-1.5.3-top.patch 230
 MD5 7717f77ecd800d0b3049974db3fcd0a9 files/staden-1.4.1-prefinish.patch 362
+MD5 daf40c222b80ffc48d9a2ac2544ab631 files/staden-1.5.3-getopt.patch 367
 MD5 a8ceefd2b3b2c1c0053a504561635379 files/staden-1.4.1-mutscan.patch 328
 MD5 cd40ea0a473054769a0963e708257f98 files/digest-staden-1.4.1-r7 213
 MD5 708ea4c4b4cbc7e2b6b88b5a09e1b564 files/staden-1.4.1-top.patch 230
+MD5 1ead6fa1e26351872c3404ab9da21416 files/staden-1.5.3-tk_utils.patch 547
+MD5 e3ce8053514641a26df3ca33f2962e55 files/digest-staden-1.5.3 338
 MD5 ea4a62a1cd5070014d2c9352eeecf06a files/staden-1.4.1-tk_utils.patch 368
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.9.10 (GNU/Linux)
-
-iD8DBQFB4RfnI1lqEGTUzyQRAt91AJ4ixMNhfdKXPKTUQB9tuca2+aoMfACeI213
-8dbPMEJvBypWr3qct4kHe5w=
-=Skmm
------END PGP SIGNATURE-----
diff --git a/sci-biology/staden/files/digest-staden-1.5.3 b/sci-biology/staden/files/digest-staden-1.5.3
new file mode 100644 (file)
index 0000000..e56ba56
--- /dev/null
@@ -0,0 +1,5 @@
+MD5 8f0ab94abe48972aecda69a1828d59ea staden-src-1-5-3.tar.gz 19670216
+MD5 9550e01cd954c3f672d2a500e051fa53 staden-1.4.1-missing-doc.tar.bz2 63825
+MD5 9009a92dc648775fb8a9b0789b995756 tcl8.4.6-src.tar.gz 3448711
+MD5 24b7774d54c1c568cabe16f3498ddccd tk8.4.6-src.tar.gz 3230760
+MD5 d6e739e823bff99e61007ded4cb71f79 course-1.1.tar.gz 5271133
diff --git a/sci-biology/staden/files/staden-1.5.3-getopt.patch b/sci-biology/staden/files/staden-1.5.3-getopt.patch
new file mode 100644 (file)
index 0000000..bc5da3f
--- /dev/null
@@ -0,0 +1,14 @@
+--- src/Misc/misc.h.old        2004-11-09 04:53:23.000000000 -0500
++++ src/Misc/misc.h    2005-01-08 22:25:42.487088768 -0500
+@@ -7,10 +7,7 @@
+ 
+ #include "os.h"
+ #include "xalloc.h"
+-
+-#ifdef _MSC_VER
+-extern int getopt( int argc, char* const argv[], const char* optstring );
+-#endif
++#include <getopt.h>
+ 
+ extern int is_directory(char * fn);
+ extern int is_file(char * fn);
diff --git a/sci-biology/staden/files/staden-1.5.3-text_utils.patch b/sci-biology/staden/files/staden-1.5.3-text_utils.patch
new file mode 100644 (file)
index 0000000..3158602
--- /dev/null
@@ -0,0 +1,17 @@
+--- src/text_utils/Makefile.old        2004-11-09 04:53:27.000000000 -0500
++++ src/text_utils/Makefile    2005-01-08 23:17:12.196381560 -0500
+@@ -41,14 +41,6 @@
+ 
+ .PRECIOUS:    .links
+ .links:
+-      ln -s ../licence/boxes.h .
+-      ln -s ../licence/licence.h .
+-      ln -s ../licence/check_licence.c .
+-      ln -s ../licence/licence_utils.c .
+-      ln -s ../licence/licence_utils.h .
+-      ln -s ../licence/md52.c .
+-      ln -s ../licence/md52.h .
+-      ln -s ../licence/valid_seq.c .
+       touch .links
+       $(MAKE) $(MFLAGS)
+ 
diff --git a/sci-biology/staden/files/staden-1.5.3-tk_utils.patch b/sci-biology/staden/files/staden-1.5.3-tk_utils.patch
new file mode 100644 (file)
index 0000000..58aa79a
--- /dev/null
@@ -0,0 +1,19 @@
+--- src/tk_utils/Makefile.old  2004-11-09 04:53:26.000000000 -0500
++++ src/tk_utils/Makefile      2005-01-08 22:47:41.659544072 -0500
+@@ -105,16 +105,6 @@
+ 
+ .PRECIOUS:    .links
+ .links:
+-      ln -s ../licence/boxes.h .
+-      ln -s ../licence/licence.h .
+-      ln -s ../licence/check_licence.c .
+-      ln -s ../licence/licence_utils.c .
+-      ln -s ../licence/licence_utils.h .
+-      ln -s ../licence/md52.c .
+-      ln -s ../licence/md52.h .
+-      ln -s ../licence/valid_seq.c .
+-      ln -s ../tcl8.4.6/unix/tclAppInit.c .
+-      ln -s ../tk8.4.6/winMain.c .
+       touch .links
+       $(MAKE) $(MFLAGS)
+ 
diff --git a/sci-biology/staden/files/staden-1.5.3-top.patch b/sci-biology/staden/files/staden-1.5.3-top.patch
new file mode 100644 (file)
index 0000000..049dfa9
--- /dev/null
@@ -0,0 +1,11 @@
+--- Makefile.old       2004-11-09 04:53:22.000000000 -0500
++++ Makefile   2005-01-08 21:22:35.561788920 -0500
+@@ -30,8 +30,6 @@
+ 
+ all:
+       cd src; $(MAKE) all
+-      cd doc; $(MAKE) all
+-      cd course; $(MAKE) all
+ 
+ install:
+       cd src; $(MAKE) $@
diff --git a/sci-biology/staden/staden-1.5.3.ebuild b/sci-biology/staden/staden-1.5.3.ebuild
new file mode 100644 (file)
index 0000000..50b9c9a
--- /dev/null
@@ -0,0 +1,296 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-biology/staden/staden-1.5.3.ebuild,v 1.1 2005/01/15 02:37:04 ribosome Exp $
+
+inherit eutils toolchain-funcs
+
+TCLV=8.4.6
+TKV=8.4.6
+
+DESCRIPTION="The Staden Package - Biological sequence handling and analysis"
+HOMEPAGE="http://staden.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${PN}-src-${PV//./-}.tar.gz
+       mirror://gentoo/${PN}-1.4.1-missing-doc.tar.bz2
+       mirror://sourceforge/tcl/tcl${TCLV}-src.tar.gz
+       mirror://sourceforge/tcl/tk${TKV}-src.tar.gz
+       doc? mirror://sourceforge/${PN}/course-1.1.tar.gz"
+LICENSE="${PN}"
+
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="doc"
+
+DEPEND="${RDEPEND}
+       dev-lang/perl
+       media-gfx/imagemagick
+       virtual/emacs
+       virtual/tetex"
+
+RDEPEND="app-shells/ksh
+       dev-lang/tcl
+       dev-lang/tk
+       sci-libs/io_lib
+       =dev-tcltk/itcl-3.2*
+       dev-tcltk/iwidgets
+       media-libs/libpng
+       virtual/x11"
+
+S=${WORKDIR}/${PN}-src-${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).
+       mv ${WORKDIR}/tcl${TCLV} ${S}/src
+       mv ${WORKDIR}/tk${TKV} ${S}/src
+       cd ${S}
+       epatch ${FILESDIR}/${P}-top.patch
+       epatch ${FILESDIR}/${P}-text_utils.patch
+       epatch ${FILESDIR}/${P}-tk_utils.patch
+       cd ${S}/src/mk
+       # Remove the "-fpic" flag. This will be replaced by "-fPIC".
+       sed -i -e 's/SHLIB_CFLAGS               = -fpic/SHLIB_CFLAGS            = /' linux.mk
+       cd ${S}
+
+       # "getopt" is incorrectly included as an extern (for Win32 compatibility).
+       epatch ${FILESDIR}/${P}-getopt.patch
+
+       # The original iwidgetsrc crashes...
+       einfo 'Replacing broken iwidgetsrc'
+       cp ${FILESDIR}/${PN}-1.4.1-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}/${PN}-1.4.1-staden_help.new ${S}/src/scripts/staden_help
+       chmod +x ${S}/src/scripts/staden_help
+
+       # 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
+
+       # 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}
+       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
+
+       # 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}
+       done
+
+       # "CFLAGS" and "FFLAGS" need to be set to the user's values in the build
+       # system global Makefile. We also want only "-fPIC" shared libraries.
+       einfo "Applying user-defined compilation/linking flags:"
+       cd ${S}/src/mk
+       sed -i -e "s/COPT               = -O2 -g3 -DNDEBUG/COPT = ${CFLAGS:-"-O2 -g3 -DNDEBUG"} -fPIC/" global.mk
+       sed -i -e "s/FOPT               = -O2 -g3 -DNDEBUG/FOPT = ${FFLAGS:-"-O2 -g3 -DNDEBUG"} -fPIC/" global.mk
+}
+
+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=$(tc-getCC) \
+               CXX=$(tc-getCXX) \
+               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=$(tc-getCC) \
+               CXX=$(tc-getCXX) \
+               F77=${F77:-g77} \
+               || die "Package compilation failed."
+
+
+       # The install process will copy the libraries in ${S}/lib/linux-binaries,
+       # but this directory is in fact a symlink to the source directory.
+       rm ${S}/lib/linux-binaries
+       mkdir ${S}/lib/linux-binaries
+
+       # Moves executables in "${S}/linux-bin" and libraries to 
+       # ${S}/lib/linux-binaries.
+       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 libread since an updated version is included in "sci-libs/io_lib".
+       rm ${S}/lib/linux-binaries/libread.so
+       # Delete the binaries already included in "sci-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 (broken) prebuilt EMBOSS tcl/tk GUIs.
+       rm ${S}/tables/emboss_menu
+       rm -r ${S}/lib/spin2_emboss/acdtcl
+       rm -r ${S}/lib/spin_emboss/acdtcl
+
+       # Patch 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}/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}/${PN}-1.4.1-env 27${PN}
+
+       # Basic documentation
+       insinto /opt/${PN}/doc
+       doins ${S}/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*.{png,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}/${PN}-1.4.1-missing-doc/documentation.html
+       insinto /opt/${PN}/doc/misc
+       doins ${WORKDIR}/${PN}-1.4.1-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.pdf manual.pdf
+       newins ${S}/doc/manual/mini_unix.pdf mini_manual.pdf
+       newins ${S}/doc/scripting_manual/scripting.pdf scripting_manual.pdf
+
+       # 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
+}