[60396] trunk/dports/science

ryandesign at macports.org ryandesign at macports.org
Tue Nov 10 16:48:56 PST 2009


Revision: 60396
          http://trac.macports.org/changeset/60396
Author:   ryandesign at macports.org
Date:     2009-11-10 16:48:56 -0800 (Tue, 10 Nov 2009)
Log Message:
-----------
whatcheck: new port, version 8.0; closes #22321

Added Paths:
-----------
    trunk/dports/science/whatcheck/
    trunk/dports/science/whatcheck/Portfile
    trunk/dports/science/whatcheck/files/
    trunk/dports/science/whatcheck/files/whatcheck.patch

Added: trunk/dports/science/whatcheck/Portfile
===================================================================
--- trunk/dports/science/whatcheck/Portfile	                        (rev 0)
+++ trunk/dports/science/whatcheck/Portfile	2009-11-11 00:48:56 UTC (rev 60396)
@@ -0,0 +1,69 @@
+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
+# $Id$
+PortSystem          1.0
+name                whatcheck
+version             8.0
+categories          science
+maintainers         bromo.med.uc.edu:howarth
+description         Protein verification tools from WhatIf
+homepage            http://swift.cmbi.ru.nl/gv/whatcheck/
+platforms           darwin
+master_sites        ${homepage}:whatcheck \
+                    ftp://ftp.cmbi.kun.nl/pub/molbio/software/:dsspcmbi
+distfiles           whatcheck.tar.bz2:whatcheck \
+                    dsspcmbi.zip:dsspcmbi
+checksums           whatcheck.tar.bz2 md5 66f4398ac459a1742128209c5285de03 \
+                                      sha1 dee7eeb6fba60749607eadda46cf89766096098d \
+                                      rmd160 ac21b18829cd33557eec641610d8e9795e769561 \
+                    dsspcmbi.zip      md5 718779c6c5469429994a2ca284777050 \
+                                      sha1 de348eea9be2d67ec33f9dc6346fd966e4bb538a \
+                                      rmd160 f65caa60735b2996b6f2ea80108ade8e88f60458
+dist_subdir         ${name}/${version}
+worksrcdir          ${name}
+depends_lib         port:gcc44 port:xfig
+patchfiles          whatcheck.patch
+use_configure       no
+use_bzip2           yes
+extract.only        whatcheck.tar.bz2
+
+post-patch {
+     reinplace  "s|@PREFIX@|${prefix}|g" ${worksrcpath}/Makefile_whatcheck \
+                                         ${worksrcpath}/WHATIF.FIG \
+                                         ${worksrcpath}/DO_WHATCHECK.COM
+     reinplace  "s|-O0|-O3|g" ${worksrcpath}/Makefile_whatcheck
+     system "cd ${worksrcpath} && rm -fr *.o dbdata/fonts/.svn"
+     system "cd ${worksrcpath} && rm -fr dssp && unzip ${distpath}/dsspcmbi.zip"
+     reinplace  "s|-static||g" ${worksrcpath}/dssp/DsspCompileGCC
+     reinplace  "s|-O|-O3|g" ${worksrcpath}/dssp/DsspCompileGCC
+     if {"little" != ${os.endian}} {
+        reinplace  "s|gfortran-mp-4.4|gfortran-mp-4.4 -fconvert=little-endian|g"  ${worksrcpath}/Makefile_whatcheck
+     }
+}
+
+build {
+     system "cd ${worksrcpath} && touch * && make -f Makefile_whatcheck"
+     system "cd ${worksrcpath}/scatter && export FC=gfortran-mp-4.4 && make clean && make"
+     system "cd ${worksrcpath}/dssp && ./DsspCompileGCC"
+}
+
+destroot {
+     file mkdir ${destroot}${prefix}/share/whatcheck/dssp
+     copy ${worksrcpath}/dssp/dsspcmbi ${destroot}${prefix}/share/whatcheck/dssp/DSSP.EXE
+
+     foreach d {whatcheck WHATIF.FIG supertab.sty DO_WHATCHECK.COM ascdata bindata dbdata nqual qualty} {
+        copy ${worksrcpath}/${d} ${destroot}${prefix}/share/whatcheck
+     }
+
+     file mkdir ${destroot}${prefix}/share/whatcheck/scatter
+     foreach d {scatter SCATTER.fig scatter.html} {
+        copy ${worksrcpath}/scatter/${d} ${destroot}${prefix}/share/whatcheck/scatter
+     }
+
+     ln -s ${prefix}/bin/fig2dev ${destroot}${prefix}/share/whatcheck/scatter/fig2dev
+     ln -s ${prefix}/share/whatcheck/DO_WHATCHECK.COM  ${destroot}${prefix}/bin/whatcheck
+     ln -s ${prefix}/share/whatcheck/dssp/DSSP.EXE ${destroot}${prefix}/bin/dssp
+}
+
+livecheck.type      regex
+livecheck.url       ${homepage}WCHECK_misc.html
+livecheck.regex     {Version ([0-9.]+)}


Property changes on: trunk/dports/science/whatcheck/Portfile
___________________________________________________________________
Added: svn:keywords
   + Id
Added: svn:eol-style
   + native

Added: trunk/dports/science/whatcheck/files/whatcheck.patch
===================================================================
--- trunk/dports/science/whatcheck/files/whatcheck.patch	                        (rev 0)
+++ trunk/dports/science/whatcheck/files/whatcheck.patch	2009-11-11 00:48:56 UTC (rev 60396)
@@ -0,0 +1,591 @@
+--- Makefile_whatcheck.orig	2009-09-04 04:33:14.000000000 -0400
++++ Makefile_whatcheck	2009-10-31 19:26:56.000000000 -0400
+@@ -3,10 +3,10 @@
+ 
+ DEFINES=-DUNIX -DCTEXT -DF2C -DGLX11 -DX11 -DDX4 -DLITE -DWHATCHECK
+ OPTFLAGS=-O0
+-LIBS= -L/usr/X11R6/lib -lX11 -lm -lcrypt
++LIBS= -L at PREFIX@/lib -lX11 -lm 
+ ANSICC=cc
+ KRCC=cc
+-INCLUDES= -I/usr/X11R6/include -I.
+-F77=g77 -xf77-cpp-input -Wsurprising
+-LD=g77
++INCLUDES= -I at PREFIX@/include -I.
++F77=gfortran-mp-4.4 -xf77-cpp-input -Wsurprising -fbackslash
++LD=gfortran-mp-4.4
+ 
+@@ -55,10 +55,10 @@
+ 	@echo please ignore error message and re-execute make
+ 	exit 3
+ 
+-SRCFILES = $(addprefix ../whatif/src/, $(OBJECTS:%.o=%.f))
++SRCFILES = $(addprefix ., $(OBJECTS:%.o=%.f))
+ DSTFILES = $(notdir $(SRCFILES:%.f=%.F))
+ 
+-%.F: ../whatif/src/%.f
++%.F: ./%.f
+ 	sed -r "s/^[Cc].+//" $< | g77  -xf77-cpp-input -E $(DEFINES) - | sed -r "s/^#.+//" > $@
+ 
+ %.INC: ../whatif/src/%.INC
+@@ -68,7 +68,7 @@
+ 	cat $(DSTFILES) > obfuscated.f
+ 
+ support.o: support.c
+-	gcc $(DEFINES) -c -o $@ $<
++	gcc -O3 -I /usr/include $(DEFINES) -c -o $@ $<
+ 
+ version.f: $(OBJECTS)
+ 	./mkversion
+--- WHATIF.FIG.orig	2008-03-10 15:09:12.000000000 -0400
++++ WHATIF.FIG	2008-04-10 21:23:06.000000000 -0400
+@@ -1,4 +1,4 @@
+-/home/vriend/whatcheck/dbdata/
++ at PREFIX@/share/whatcheck/dbdata/
+ YES DATABASE
+-/home/vriend/whatcheck/qualty/
++ at PREFIX@/share/whatcheck/qualty/
+ IRIF  FFTFFFTFFFFFFFTFFFFF
+--- scatter/support.c.orig	2007-07-26 09:13:28.000000000 -0400
++++ scatter/support.c	2008-04-10 21:23:52.000000000 -0400
+@@ -15,7 +15,8 @@
+ #endif
+ #if !defined(ESV)
+ #include <unistd.h>
+-#include <malloc.h>
++#include <sys/malloc.h>
++#include <stdio.h>
+ #else
+ #include "/usr/include/unistd.h"
+ #endif
+--- scatter/Makefile.orig	2008-04-11 19:31:50.000000000 -0400
++++ scatter/Makefile	2008-04-11 19:32:32.000000000 -0400
+@@ -5,8 +5,8 @@
+ OBJS = data.o general_fit.o figfile.o lines.o\
+        polyno.o recipes.o scatter.o tools.o support.o
+ 
+-FFLAGS = -O2 #-automatic
+-CFLAGS = -O2 #-DF2C
++FFLAGS = -std=legacy -O3 #-automatic
++CFLAGS = -O3 #-DF2C
+ 
+ LIBS= #-lf2c
+ 
+--- DO_WHATCHECK.COM.orig	2008-04-12 10:36:17.000000000 -0400
++++ DO_WHATCHECK.COM	2008-04-12 10:38:23.000000000 -0400
+@@ -1,5 +1,5 @@
+ #!/bin/sh
+-DIR=/home/vriend/whatcheck
++DIR=@PREFIX@/share/whatcheck
+ umask 001
+ stty intr '^C' > /dev/null
+ [ -f WHATIF.FIG -a ! $DIR = `pwd` ] && /bin/rm WHATIF.FIG
+--- supertab.sty.org   	1969-12-31 19:00:00.000000000 -0500
++++ supertab.sty	2009-01-01 13:56:45.000000000 -0500
+@@ -0,0 +1,506 @@
++% @stylefile{Super tabular
++% shortpackagename = {supertab},
++% longpackagename  = {supertabular},
++% baseformats      = {\LaTeX 2.09},
++% version          = {3.6h},
++% date             = {1992-07-03},
++% author           = {Theo Jurriens,
++%                     TAJ at HGRRUG5,
++%                     P.O Box 800,
++%                     9700 AV Groningen},
++% abstract         = {This file provides the supertabular environment, which
++%                     is an extension to the standard tabular environment.
++%                     Large tabulars are automatically split across pages.
++%                     Seperate commands for the table-head and table-tail
++%                     are provided, in order to repeat these on each page.}
++% infauthor        = {Johannes Braams,
++%                     J.L.Braams at research.ptt.nl,
++%                     PTT Research,
++%                     P.O. Box 421,
++%                     2260 AK Leidschendam}
++% infdate           = {1990-10-16}}
++%
++%----------------------------------------------------------------------------
++%
++% supertabular sty
++% original idea:  Theo Jurriens 1988
++%                 TAJ at hgrrug5        P.O Box 800, 9700 AV Groningen
++%
++% revised by:     Johannes Braams
++%                 J.L.Braams at research.ptt.nl   PTT Research Leidschendam (NL)
++%
++% 10.07.92  - Still a problem in the combination of supertabular with array.sty
++% V 3.6h      I overlooked the fact that array doesn't use \@tabulacr anymore
++%             and it behaves differently with respect to \@startparbox.
++% 03.07.92  - A problem in the combination of supertabular with array.sty
++% V 3.6g      It can be solved by removing the \string from \def\tableformat
++%             and passing \tableformat expanded to \tabular.
++% 11.02.92  - Bug found by Michael Heissmeier when p{...} is used.
++% V 3.6f      A change in LaTeX.tex didn't find its way into supertabular.
++% 01.08.91  - Take height of tabletail into account when computing the
++% V 3.6e      maximum tableheight; add tolerance on first (partial) page
++%             of the supertabular.
++% 27.06.91  - Cured bug that made the first part of the table one line
++% V 3.6d      shorter than the others. Appeared when supertabular was
++%             used in a twocolumn environment.
++% 26.06.91  - Made \@process at tablecaption a global macro. Previous caption
++% V 3.6c      turned up on a table without one.
++% 27.05.91  - Replaced \clearpage with \newpage to make supertabulars work
++% V 3.6b      in a twocolumn environment. This also prevents all floats
++%             from being printed.
++% 15.02.91  - Because of the check for the use of tablefirsthead the
++% V 3.6a      combination of an \hline in the head and an \hline as the first
++%             thing in the data went wrong. The \futurelet in the definition
++%             of \hline found \fi instead of \hline, so no \doublerulesep
++%             was added.
++%             Also had to modify the way the environments were defined.
++%             The blank space (from the CR after the argument of \supertabular)
++%             has to be gobbled. This can only be done using a construction
++%             like \def\command#1 {...}. So removed the use of \newenvironment
++% 04.02.91  - Added the commands \topcaption, \bottomcaption and \tablecaption
++% V 3.6       to include a caption within the supertabular environment. The
++%             default behaviour is to put the caption before the actual start
++%             of the table.
++%           - Also added \tablefirsthead and \tablelasttail to let the
++%             user specify a different head for the first page of the table
++%             and for consecutive pages as well as different tails for first
++%             pages and the last one. If these commands are not used, the
++%             default behaviour will be to use the value of \tablehead end
++%             \tabletail
++%           - Removed the need for the \noalign{\global\let\\=\@stabularcr}
++%             commands by storing and resetting \@stabularcr
++%
++% 16.10.90  Added the supertabular* environment that was in an earlier
++% V 3.5     version (2.0) by the original author
++%           Reintroduced the version numbering
++%
++% revised by:     Gabriele Kruljac
++%                 kruljac at ds0mpi11   Max-Planck-Institute Stuttgart
++%
++%
++% 06.06.89  Correction: now care is taken of probably existing onecolumn
++%           head (title or tables ...) in twocolumn sty.
++%
++% 10.05.89  Correction: the new \\ definition has been added to the
++%           begin of each `sub'-tabular
++%           Added: algorithm to produce the tabulars in twocolumn style
++%
++% 06.04.89  Correction: put \global statement in \end{supertabular}
++%           into \noalign
++%
++% 22.02.89  Correction: restore the original meaning of \\ with
++%           \end{supertabular}
++%
++% (Feb 89) The whole algorithm has been changed, so that I can use
++%          the most features of a normal tabular:
++%          \\  for new line, including  \\[#1]
++%          p{...} in the preamble ...
++%          Account is taken to \baselinestretch and \arraystretch
++%         -I'm not counting the lines because of too much rounding errors
++%          but instead I add the (estimated) used space in pt.
++%         -The tablehead is taken into this algorithm of proofing, so
++%          I really know how much space the head uses.
++%         -When no p-arg is given I add a variable \midlineheight to
++%          calculate the used space. To calculate \midlineheight I
++%          take the \baselineskip, which is active when the supertabular
++%          starts (\baselineskip includes the \value of \baselinestretch)
++%          and multiply it with \arraystretch.
++%         -When a p-arg is given the text will be stored in a box. So
++%          I know the height I have to add. Also I reduce the maximum
++%          pagesize, so that the last parbox on a page can get up to
++%          max 4 lines without producing an overfull vbox.
++%         -To do so I had to make some additions to LaTeX's tabular
++%          commands. These new commands got a leading `s'.
++%
++%          Weak points:
++%          -When the material of a normal entry (not a p-arg) becomes
++%           larger than the estimated \midlineheight, overfull vboxes
++%           will be produced at all.
++%          -When the last p-arg on a page gets more than 4 lines
++%           (probably even more than 3 lines) it will result in an
++%           overfull vbox.
++%           Also some combinations of \baselinestretch \arraystretch and
++%           a large font may lead to one line too much.
++%          -if accidentally the last line of the tabular produces
++%           a newpage, on the next page the tabletail will be written
++%           immediately after the tablehead. Depending on the contents
++%           this may result in an error message regarding misplaced
++%           \noalign.
++%
++%           A quick but not very elegant solution: shrink \maxsize by
++%           \noalign{\global\maxsize=...pt} after the first \\ of the
++%           supertabular.
++%
++%------------------------------------------------------------------------------
++% Added the user-commands \topcaption and \bottomcaption which set the boolean
++% @topcaption to determine where to put the tablecaption. The default
++% is to put the caption on the top of the table
++%
++\newif\if at topcaption \@topcaptiontrue
++\def\topcaption{\@topcaptiontrue\tablecaption}
++\def\bottomcaption{\@topcaptionfalse\tablecaption}
++%
++% Added the command \tablecaption, with the use of the definition
++% of the \caption and \@caption commands from latex.tex.
++% This command has to function exactly like \caption does except it
++% has to store its argument (and the optional argument) for later
++% processing WITHIN the supertabular environment
++% JB
++%
++\long\def\tablecaption{\refstepcounter{table} \@dblarg{\@xtablecaption}}
++\long\def\@xtablecaption[#1]#2{%
++  \long\gdef\@process at tablecaption{\@stcaption{table}[#1]{#2}}}
++\global\let\@process at tablecaption\relax
++%
++%
++% This is a redefinition of LaTeX's \@caption, \@makecaption is
++% called within a group so as not to return to \normalsize globally.
++% also a fix is made for the `feature' of the \@makecaption of article.sty and
++% friends that a caption ALWAYS gets a \vskip 10pt at the top and NONE at the
++% bottom. If a user wants to precede his table with a caption this results
++% in a collision.
++%
++\long\def\@stcaption#1[#2]#3{\par%
++    \addcontentsline{\csname ext@#1\endcsname}{#1}%
++        {\protect\numberline{\csname the#1\endcsname}{\ignorespaces #2}}
++  \begingroup
++    \@parboxrestore
++    \normalsize
++    \if at topcaption \vskip -10pt \fi % 'fix'
++    \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
++    \if at topcaption \vskip 10pt \fi % 'fix'
++  \endgroup}
++%
++%                             % \tablehead activates the new tabular \cr
++%                             % commands
++\def\@tablehead{}
++\def\tablehead#1{\gdef\@tablehead{#1}}
++\def\tablefirsthead#1{\gdef\@table at first@head{#1}}
++%
++%+
++%     If the user uses an extra amount of tabular-data (like \multicolumn)
++%     in \verb=\tabletail= \TeX\ starts looping because of the definition
++%     of \verb=\nextline=. So make \verb=\\= act like just a \verb=\cr=
++%     inside this tail to prevent the loop.
++%     Save and restore the value of \verb=\\=
++%-
++\def\@tabletail{}
++\def\tabletail#1{%
++    \gdef\@tabletail{\noalign{\global\let\@savcr=\\\global\let\\=\cr}%
++                     #1\noalign{\global\let\\=\@savcr}}}
++\def\tablelasttail#1{\gdef\@table at last@tail{#1}}
++%
++\newdimen\maxsize            % maximum pagesize
++\newdimen\actsize            % actual pagesize
++\newdimen\twocolsize         % needed for correct max height if twocolumn
++\newdimen\parboxheight       % height plus depth of a parbox-argument
++\newdimen\addspace           % stores the value of \\[#1]
++\newdimen\midlineheight      % estimated size of a normal line
++\newdimen\pargcorrection     % to set page height tolerance if p-arg
++\newdimen\computedimens      % computation variable
++\newbox\tabparbox
++%
++%         %%%%  Redefine original LaTeX tabular \cr commands. %%%%
++%         %%%%  New tabular \cr commands get a leading `s'    %%%%
++%
++%                             % Insert  \nextline command for counting
++\def\@stabularcr{{\ifnum0=`}\fi\@ifstar{\@sxtabularcr}{\@sxtabularcr}}
++\def\@sxtabularcr{\@ifnextchar[{\@sargtabularcr}%
++                 {\ifnum0=`{\fi}\cr\nextline}}
++%
++%                             % contents of command unchanged
++\def\@sargtabularcr[#1]{\ifnum0=`{\fi}\ifdim #1>\z@
++    \unskip\@sxargarraycr{#1}\else \@syargarraycr{#1}\fi}
++%
++%                             % here copy the value #1 of [ ] of \\
++%                             % to \addspace
++\def\@sxargarraycr#1{\@tempdima #1\advance\@tempdima \dp \@arstrutbox
++    \vrule \@height\z@ \@depth\@tempdima \@width\z@ \cr
++    \noalign{\global\addspace=#1}\nextline}
++%
++%                             % command will be called when \\[0pt]
++\def\@syargarraycr#1{\cr\noalign{\vskip #1\global\addspace=#1}\nextline}
++%
++%         %%%%  Redefine original LaTeX p-arg commands.       %%%%
++%         %%%%  New commands get a leading `s'                %%%%
++%
++%                                      % reduce maximum pagesize to have
++%                                      % a small tolerance for last entry
++\def\@sstartpbox#1{\global\advance\maxsize by -\pargcorrection
++                   \global\pargcorrection=0pt
++%                                      % put text into box to save height
++                   \setbox\tabparbox%
++                          \vtop\bgroup\hsize#1\@arrayparboxrestore}
++\def\@sastartpbox#1{\bgroup\hsize#1%
++                    \global\advance\maxsize by -\pargcorrection
++                    \global\pargcorrection=0pt
++                    \setbox\tabparbox
++                          \vtop\bgroup\hsize#1\@arrayparboxrestore}
++%
++% 11/03/92 JB: The following change didn't find its way into the
++%              \@sendpbox command. This caused a difference in linespacing
++%              between a supertabular and a normal tabular.
++% \def\@endpbox{\unskip\strut\par\egroup\hfil}
++% % 14 Jan 89: Def of \@endpbox changed from
++% %    \def\@endpbox{\par\vskip\dp\@arstrutbox\egroup\hfil}
++% % so vertical spacing works out right if the last line of a `p' entry
++% % has a descender.
++\def\@sendpbox{\unskip\strut\par\egroup
++               \computedimens=\ht\tabparbox
++               \advance\computedimens by \dp\tabparbox
++               \ifnum\parboxheight<\computedimens
++                  \global\parboxheight=\computedimens
++               \fi
++               \computedimens=\z@
++               \box\tabparbox\hfil}
++\def\@saendpbox{\unskip\strut\par\egroup
++                \computedimens=\ht\tabparbox
++                \advance\computedimens by \dp\tabparbox
++                \ifnum\parboxheight<\computedimens
++                   \global\parboxheight=\computedimens
++                \fi
++                \computedimens=\z@
++                \unvbox\tabparbox\egroup}
++%
++%         %%%%  Here start really new supertabular commands   %%%%
++%
++%                                 % estimate height of normal line
++%                                 % regarding \array- and \baselinestretch
++\def\calmidlineheight{\midlineheight=\arraystretch \baslineskp
++                      \global\advance\midlineheight by 1\p@
++                      \global\pargcorrection=4\midlineheight}
++%
++\def\calpage{\global\actsize=\pagetotal  % where am I on the actual page?
++             \twocolsize=\textheight            %  added 06.06.89
++             \advance\twocolsize by -\@colroom  %        "
++             \advance\actsize by \twocolsize    %        "
++             \global\advance\actsize by \midlineheight
++             \maxsize=\textheight        % start a new page when 90% of
++             \multiply \maxsize by 9     % the page are used
++             \divide\maxsize by 10
++% Add a litle tolerance on the firsat (partial) page V3.6e
++             \advance\actsize 2\midlineheight
++             \ifnum\actsize > \maxsize
++                   \clearpage
++                   \global\actsize=\pagetotal
++             \fi
++             \maxsize=\textheight       % now set \maxsize with tolerance
++%+
++%     measure the height of the tabletail and substract from \maxsize
++%-
++             \setbox\@tempboxa=\vbox{\@arrayparboxrestore%
++                    \expandafter\tabular\expandafter{\tableformat}
++                    \@tabletail\endtabular}
++             \global\advance\maxsize by-\ht\@tempboxa}
++                             % Here is the definition of supertabular
++% modified JB (15.2.91)
++\def\supertabular#1 {\def\tableformat{#1}         % store preamble
++    \global\starfalse % remember this is the normal version
++%
++%                                 % Check if we have to insert a caption
++    \if at topcaption\@process at tablecaption
++    \fi
++%                                 % save old \\ moved from below V3.6e
++    \global\let\@oldcr=\\
++%
++    \def\baslineskp{\baselineskip}%
++    \calmidlineheight% estimate height of a normal line
++    \calpage         % calculate max. pagesize and startpoint
++%
++    \ifx\undefined\@classix      % then array.sty is not loaded
++%                                 % save old \@tabularcr
++      \let\@@tabularcr\@tabularcr%             Added JB 4/2/91
++%                                % Now insert the definition of \@stabularcr
++      \let\@tabularcr\@stabularcr
++%                                 % activate new parbox algorithm
++      \let\@@startpbox=\@sstartpbox
++      \let\@@endpbox=\@sendpbox
++    \else
++      \let\@@tabularcr\@arraycr
++      \let\@arraycr\@stabularcr
++      \let\org at startpbox=\@startpbox
++      \let\org at endpbox=\@endpbox
++      \let\@startpbox=\@sastartpbox
++      \let\@endpbox=\@saendpbox
++    \fi
++%
++%    Moved the check for the use of \tablefirsthead to befor the start of
++%    the tabular environment in order to make the \futurelet inside \hline
++%    do its work correctly (15.02.91)
++%
++    \ifx\@table at first@head\undefined
++        \let\@@tablehead=\@tablehead
++    \else
++        \let\@@tablehead=\@table at first@head
++    \fi%                                     Added JB 4/2/91
++%                                 % start normal tabular environment
++    \expandafter\tabular\expandafter{\tableformat}
++    \@@tablehead}%   Added JB 15/2/91
++%
++%                                 % this is \end{supertabular}
++\def\endsupertabular{%
++    \ifx\@table at last@tail\undefined
++        \@tabletail
++    \else
++        \@table at last@tail
++    \fi%                                     Added JB 4/2/91
++    \endtabular
++%                                 % restore old \@tabularcr
++    \ifx\undefined\@classix      % then array.sty is not loaded
++      \let\@tabularcr\@@tabularcr             % Added JB 4/2/91
++    \else
++      \let\@arraycr\@@tabularcr
++      \let\@startpbox=\org at startpbox
++      \let\@endpbox=\org at endpbox
++    \fi
++%                                 % Check if we have to insert a caption
++    \if at topcaption
++    \else
++        \@process at tablecaption
++%                                 % restore to default behaviour
++        \@topcaptiontrue
++    \fi
++%+
++%    Restore the meaning of \verb=\\= to the one it had before the start
++%    of this environment. Also re-initialize some control-sequences
++%-
++    \global\let\\=\@oldcr
++    \let\@table at first@head\undefined        % For the next ocurrence
++    \let\@table at last@tail\undefined         % of this environment
++    \global\let\@process at tablecaption\relax
++}
++%
++%                             % Here is the definition of supertabular*
++\newif\ifstar
++\newdimen\tabularwidth
++\@namedef{supertabular*}#1#2 {\def\tableformat{#2}          % store preamble
++    \tabularwidth=#1 % The total width of the tabular
++    \global\startrue % remember this is the *-version
++%
++%                                 % Check if we have to insert a caption
++    \if at topcaption\@process at tablecaption\fi
++%
++    \def\baslineskp{\baselineskip}%
++    \calmidlineheight% estimate height of a normal line
++    \calpage         % calculate max. pagesize and startpoint
++%
++%
++    \ifx\undefined\@classix      % then array.sty is not loaded
++%                                 % save old \@tabularcr
++      \let\@@tabularcr\@tabularcr%             Added JB 4/2/91
++%                                % Now insert the definition of \@stabularcr
++      \let\@tabularcr\@stabularcr
++%                                 % activate new parbox algorithm
++      \let\@@startpbox=\@sstartpbox
++      \let\@@endpbox=\@sendpbox
++    \else
++      \let\@@tabularcr\@arraycr
++      \let\@arraycr\@stabularcr
++      \let\org at startpbox=\@startpbox
++      \let\org at endpbox=\@endpbox
++      \let\@startpbox=\@sastartpbox
++      \let\@endpbox=\@saendpbox
++    \fi
++%
++%    The same modification as for \tabular 15.2.91
++    \ifx\@table at first@head\undefined
++        \let\@@tablehead\@tablehead
++    \else
++        \let\@@tablehead\@table at first@head
++    \fi%                                     Added JB 4/2/91
++%                                 % start normal tabular environment
++    \expandafter\csname tabular*\expandafter\endcsname
++    \expandafter{\expandafter\tabularwidth\expandafter}%
++    \expandafter{\tableformat}%
++%
++    \@@tablehead}%
++%                                 % this is \end{supertabular*}
++\@namedef{endsupertabular*}{%
++    \ifx\@table at last@tail\undefined
++        \@tabletail
++    \else
++        \@table at last@tail
++    \fi%                                     Added JB 4/2/91
++    \csname endtabular*\endcsname
++%                                 % restore old \@tabularcr
++    \ifx\undefined\@classix      % then array.sty is not loaded
++      \let\@tabularcr\@@tabularcr             % Added JB 4/2/91
++    \else
++      \let\@arraycr\@@tabularcr
++      \let\@startpbox=\org at startpbox
++      \let\@endpbox=\org at endpbox
++    \fi
++                                 % Check if we have to insert a caption
++    \if at topcaption
++    \else
++        \@process at tablecaption
++                                 % restore to default behaviour
++        \@topcaptiontrue
++    \fi
++%+
++%    Restore the meaning of \verb=\\= to the one it had before the start
++%    of this environment. Also re-initialize some control-sequences
++%-
++    \global\let\\=\@oldcr
++    \let\@table at first@head\undefined        % For the next ocurrence
++    \let\@table at last@tail\undefined         % of this environment
++    \global\let\@process at tablecaption\relax}
++%
++\def\nextline{%           %%% algorithm to calculate the pagebreaks %%%
++    \noalign{\ifnum\parboxheight<\midlineheight
++% V3.6e, non-empty line, but empty parbox, then \parboxheight might
++% be non-zero, but too small thereby breaking the algorithm.
++%                                 % if no p-arg add `normal' line height
++                   \advance\actsize by \midlineheight
++%                                      % \addspace is value #1 of \\[#1]
++                   \global\advance\actsize by \addspace
++             \else
++%                                 % if p-arg add height of box and more
++                   \global\advance\actsize by \parboxheight
++                   \divide\parboxheight by 11\relax
++                   \global\advance\actsize by \parboxheight%
++                   \global\parboxheight=0pt
++             \fi
++             \global\addspace=0pt}%
++%                                      % when page becomes full:
++    \ifnum\actsize<\maxsize
++%
++%    This line is necessary because the tablehead has to be inserted *after*
++%    the \if\else\fi-clause. For this purpose \next is used. In the middle
++%    of tableprocessing it shoud be an *empty* macro (*not* \relax).
++%    (15.2.91)
++    \noalign{\global\let\next\@empty}%
++    \else
++%                                      % output \tabletail, close tabular
++%                                      % output all material and start a
++%                                      % fresh new page
++         \@tabletail
++         \ifstar%                     % Added 16-10-90
++           \csname endtabular*\endcsname
++         \else
++           \endtabular
++         \fi
++         \if at twocolumn%                        % added 10.05.89
++            \if at firstcolumn%                   %
++               \newpage%                       %
++            \else%                             %
++               \clearpage%                     %
++            \fi%                               %
++            \twocolsize=\textheight%           % added 06.06.89
++            \advance\twocolsize by -\@colroom% %       "
++            \global\actsize=\twocolsize%       %       "
++% The following lined added 27/6/91 like in the definition of \calpage
++            \global\advance\actsize by \midlineheight
++         \else                                 %
++            \clearpage                         %
++            \global\actsize=\midlineheight
++         \fi                                   %
++         \let\next\@tablehead%                 % Added 15.2.91
++         \ifstar%                              % Added 16-10-90
++           \expandafter\csname tabular*\expandafter\endcsname
++           \expandafter{\expandafter\tabularwidth\expandafter}%
++           \expandafter{\tableformat}%
++         \else
++           \expandafter\tabular\expandafter{\tableformat}%
++         \fi
++    \fi\next}%                                % Added \next 15.2.91
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20091110/dfaf9dbe/attachment-0001.html>


More information about the macports-changes mailing list