diff options
Diffstat (limited to 'ds9')
53 files changed, 5166 insertions, 11716 deletions
diff --git a/ds9/doc/acknowledgment.html b/ds9/doc/acknowledgment.html index 6dd0935..49c5f1e 100644 --- a/ds9/doc/acknowledgment.html +++ b/ds9/doc/acknowledgment.html @@ -1,33 +1,34 @@ <!DOCTYPE doctype PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> -<head> -<meta name="generator" content= -"HTML Tidy for Mac OS X (vers 31 October 2006 - Apple Inc. build 15.18.1), see www.w3.org"> -<meta http-equiv="Content-Type" content= -"text/html; charset=us-ascii"> -<meta name="GENERATOR" content= -"Mozilla/4.78 [en] (X11; U; Linux 2.4.7-10 i686) [Netscape]"> -<title>DS9 Acknowledgment</title> -</head> -<body vlink="#551A8B" text="#000000" link="#0000EE" bgcolor= -"#FFFFFF" alink="#FF0000"> -<h3><img alt="" src="sun.gif" width="100" height="98" align= -"middle"> SAOImageDS9 Acknowledgment</h3> -<blockquote> -<p>DS9 development has been made possible by funding from the -Chandra X-ray Science Center (CXC) (NAS8-03060) and the High Energy -Astrophysics Science Archive Center (HEASARC) (NCC5-568). -Additional funding was provided by the JWST Mission office at Space -Telescope Science Institute (NAS-03127) to improve capabilities for -3-D data visualization.<br></p> -<p>If you have found DS9 to be helpful in your research, the -following acknowledgment would be appreciated</p> -<blockquote> -<p><i>"This research has made use of SAOImageDS9, developed by -Smithsonian Astrophysical Observatory"</i></p> -</blockquote> -<p>or reference the following paper<a href= -"http://adsabs.harvard.edu/cgi-bin/nph-bib_query?bibcode=2003adass..12..489J">2003adass..12..489J</a></p> -</blockquote> -</body> + <head> + <meta name="generator" content="HTML Tidy for Mac OS X (vers 31 + October 2006 - Apple Inc. build 15.18.1), see www.w3.org"> + <meta http-equiv="Content-Type" content="text/html; + charset=windows-1252"> + <meta name="GENERATOR" content="Mozilla/4.78 [en] (X11; U; Linux + 2.4.7-10 i686) [Netscape]"> + <title>DS9 Acknowledgment</title> + </head> + <body vlink="#551A8B" text="#000000" link="#0000EE" bgcolor="#FFFFFF" + alink="#FF0000"> + <h3><img alt="" src="sun.gif" width="100" height="98" align="middle"> + SAOImageDS9 Acknowledgment</h3> + <blockquote> + <p>DS9 development has been made possible by funding from the + Chandra X-ray Science Center (CXC) (NAS8-03060) and the High + Energy Astrophysics Science Archive Center (HEASARC) (NCC5-568). + Additional funding was provided by the JWST Mission office at + Space Telescope Science Institute (NAS-03127) to improve + capabilities for 3-D data visualization.<br> + </p> + <p>If you have found DS9 to be helpful in your research, the + following acknowledgment would be appreciated</p> + <blockquote> + <p><i>"This research has made use of SAOImageDS9, developed by + Smithsonian Astrophysical Observatory"</i></p> + </blockquote> + <p>or reference the following paper <a + href="http://adsabs.harvard.edu/abs/2003ASPC..295..489J">2003adass..295..489J</a></p> + </blockquote> + </body> </html> diff --git a/ds9/doc/ref/command.html b/ds9/doc/ref/command.html index c26bac8..2b6f8d9 100644 --- a/ds9/doc/ref/command.html +++ b/ds9/doc/ref/command.html @@ -357,33 +357,36 @@ $ds9 -blink interval 1</tt><br> <p><b><a name="block" id="block"></a>block</b></p> <p>Controls blocking parameters.</p> - <tt>Syntax:<br> - -block</tt> <tt><tt>[<value>]<br> - [<value> - <value>]<br> - [to <value>]<br> - [to <value> - <value>]<br> - [in]<br> - [out]<br> - </tt> [to fit]<br> - [match]<br> - [lock [yes|no]]<br> - [open|close]<br> - <br> - Example:<br> - </tt> <tt>$ds9</tt> <tt><tt><tt>-block</tt></tt> 4<br> - $ds9</tt> <tt><tt><tt>-block</tt></tt> 4 2<br> - </tt> <tt><tt><tt>$ds9</tt> <tt><tt><tt>-block</tt></tt> to 4<br> - $ds9</tt> <tt><tt><tt>-block</tt></tt> to 4 2<br> - </tt> $ds9</tt> <tt><tt><tt>-block</tt></tt> in<br> - </tt></tt> <tt><tt><tt>$ds9</tt> <tt><tt><tt>-block</tt></tt> - out<br> - </tt></tt> $ds9</tt> <tt><tt><tt>-block</tt></tt> to fit<br> - $ds9</tt> <tt><tt><tt>-block</tt></tt> match<br> - $ds9</tt> <tt><tt><tt>-block</tt></tt> lock yes<br> - $ds9</tt> <tt><tt><tt>-block</tt></tt> open<br> - $ds9</tt> <tt><tt><tt>-block</tt></tt> close</tt><tt><br> + <tt>Syntax:</tt><tt><br> + </tt><tt> -block</tt><tt> </tt><tt>[<value>]</tt><tt><br> + </tt><tt> [<value> + <value>]</tt><tt><br> + </tt><tt> [to <value>]</tt><tt><br> + </tt><tt> [to <value> + <value>]</tt><tt><br> + </tt><tt> [in]</tt><tt><br> + </tt><tt> [out]</tt><tt><br> + </tt><tt> </tt><tt> [to fit]</tt><tt><br> + </tt><tt> [match]</tt><tt><br> + </tt><tt> [lock [yes|no]]</tt><tt><br> + </tt><tt> [open|close]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9</tt><tt> </tt><tt>-block</tt><tt> + 4</tt><tt><br> + </tt><tt> $ds9</tt><tt> </tt><tt>-block</tt><tt> 4 2</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9</tt><tt> </tt><tt>-block</tt><tt> + to 4</tt><tt><br> + </tt><tt> $ds9</tt><tt> </tt><tt>-block</tt><tt> to 4 2</tt><tt><br> + </tt><tt> </tt><tt> $ds9</tt><tt> </tt><tt>-block</tt><tt> in</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9</tt><tt> </tt><tt>-block</tt><tt> + out</tt><tt><br> + </tt><tt> </tt><tt> $ds9</tt><tt> </tt><tt>-block</tt><tt> to + fit</tt><tt><br> + </tt><tt> $ds9</tt><tt> </tt><tt>-block</tt><tt> match</tt><tt><br> + </tt><tt> $ds9</tt><tt> </tt><tt>-block</tt><tt> lock yes</tt><tt><br> + </tt><tt> $ds9</tt><tt> </tt><tt>-block</tt><tt> open</tt><tt><br> + </tt><tt> $ds9</tt><tt> </tt><tt>-block</tt><tt> close<br> </tt> <p><b><a name="blue" id="blue"></a>blue</b></p> <p>For RGB frames, sets the current color channel to blue.</p> @@ -398,194 +401,240 @@ <p>Support for catalogs. The first three commands will create a new catalog search. All other commands operated on the last search created, unless indicated otherwise.</p> - <tt>Syntax:<br> - </tt> <tt>-catalog [new]<br> - - [ned|simbad|denis|skybot]<br> - </tt> <tt><tt> -[aavso|ac|ascss|cmc|gaia|gsc1|gsc2|gsc3|nomad|ppmx|sao|sdss5|sdss6|</tt><tt>sdss7|sdss8|</tt><tt>sdss9|tycho]<br> - [</tt><tt><tt>ua2|ub1|</tt>ucac2|ucac2sup|ucac3|ucac4|urat1]<br> - </tt> [2mass|iras]<br> - [csc|xmm|rosat]<br> - [first|nvss]<br> - - [chandralog|cfhtlog|esolog|stlog|xmmlog]<br> - [cds <catalogname>]<br> - [cds - <catalogid>]<br> - <br> - [load <filename>]<br> - [import sb|tsv - <filename>]<br> - <br> - </tt> <tt><tt> [<ref>] - [<ra> <dec> <coordsys>]</tt><tt><br> - </tt> [<ref>] [allcols]<br> - </tt> <tt> </tt><tt> - [<ref>] [allrows]<br> - </tt><tt> [<ref>] - [cancel]<br> - </tt> <tt> [<ref>] - [clear]<br> - </tt> <tt> [<ref>] [close]</tt><br> - <tt> </tt> <tt>[<ref>] - [crosshair]</tt><br> - <tt> [<ref>] [dec - <col>]</tt><br> - <tt> [<ref>] [edit - yes|no]</tt><br> - <tt> [<ref>] - [export sb|tsv <filename>]<br> - </tt> <tt> - [<ref>] [filter <string>]<br> - [<ref>] [filter load - <filename>]</tt><br> - <tt> [<ref>] - [header]</tt><br> - <tt> [<ref>] [location - <code>]</tt><br> - <tt><tt> [<ref>] - [match <ref> <ref>]<br> - </tt></tt> <tt><tt><tt> - - [<ref>] [match]<br> - </tt></tt> </tt> <tt>[<ref>] -[match + <tt>Syntax:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-catalog [new]</tt><tt><br> + </tt><tt> + [ned|simbad|denis|skybot]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> +[aavso|ac|ascss|cmc|gaia|gsc1|gsc2|gsc3|nomad|ppmx|sao|sdss5|sdss6|</tt><tt>sdss7|sdss8|</tt><tt>sdss9|tycho]</tt><tt><br> + </tt><tt> [</tt><tt>ua2|ub1|</tt><tt>ucac2|ucac2sup|ucac3|ucac4|urat1]</tt><tt><br> + </tt><tt> </tt><tt> + [2mass|iras]</tt><tt><br> + </tt><tt> + [csc|xmm|rosat]</tt><tt><br> + </tt><tt> [first|nvss]</tt><tt><br> + </tt><tt> + [chandralog|cfhtlog|esolog|stlog|xmmlog]</tt><tt><br> + </tt><tt> [cds + <catalogname>]</tt><tt><br> + </tt><tt> [cds + <catalogid>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> [load + <filename>]</tt><tt><br> + </tt><tt> [import sb|tsv + <filename>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [<ra> <dec> + <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [allcols]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + [<ref>] [allrows]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [cancel]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [clear]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [close]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [crosshair]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [dec <col>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [edit yes|no]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [export sb|tsv <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> - error <value> degrees|arcmin|arcsec]</tt><br> - <tt> </tt> <tt>[<ref>] - [match function 1and2|1not2|2not1]<br> - </tt> <tt> </tt> <tt>[<ref>] - [match return 1and2|1only|2only]</tt><br> - <tt> </tt> <tt>[<ref>] - [match unique yes|no]</tt><br> - <tt> [<ref>] [maxrows - <number>]</tt><br> - <tt> [<ref>] [name - <object>]<br> - </tt> <tt> - [<ref>] [panto yes|no]</tt><br> - <tt> [<ref>] [plot - <xcol> <ycol> <xerrcol> <yerrcol>]</tt><br> - <tt> [<ref>] [print]</tt><br> - <tt> [<ref>] [psky - <skyframe>]</tt><br> - <tt> [<ref>] [psystem - <coordsys>]</tt><br> - <tt> [<ref>] [ra - <col>]</tt><br> - <tt><tt> [<ref>] - [regions]</tt><br> - [<ref>] [retrieve]<br> - </tt> <tt> [<ref>] - [samp]<br> - [<ref>] [samp - broadcast]<br> - [<ref>] [samp - send <application>]</tt><tt><br> - </tt> <tt> - [<ref>] [save <filename>]</tt><br> - <tt> [<ref>] - [server</tt> <tt><tt>cds|adac|cadc|cambridge|sao|ukirt|iucaa|bejing|saao]</tt></tt><br> - <tt> [<ref>] [show - yes|no]</tt><br> - <tt> [<ref>] [radius - <value> degrees|arcmin|arcsec]</tt><br> - <tt> [<ref>] [sky - <skyframe>]<br> - </tt> <tt> [<ref>] - [skyformat <skyformat>]<br> - </tt> <tt> [<ref>] - [sort <col> incr|decr]</tt><br> - <tt> [<ref>] [symbol - [#] + + + + + [<ref>] [filter <string>]</tt><tt><br> + </tt><tt> [<ref>] + [filter load <filename>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [header]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [location <code>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [match <ref> <ref>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + + + [<ref>] [match]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [match error <value> + degrees|arcmin|arcsec]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [match function 1and2|1not2|2not1]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [match return 1and2|1only|2only]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [match unique yes|no]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [maxrows <number>]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] + [name <object>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + + [<ref>] [panto yes|no]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [plot <xcol> <ycol> <xerrcol> + <yerrcol>]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] + [print]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [psky <skyframe>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [psystem <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [ra <col>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [regions]</tt><tt><br> + </tt><tt> [<ref>] + [retrieve]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [samp]</tt><tt><br> + </tt><tt> [<ref>] + [samp broadcast]</tt><tt><br> + </tt><tt> [<ref>] + [samp send <application>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + + [<ref>] [save <filename>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [server</tt><tt> </tt><tt>cds|adac|cadc|cambridge|sao|ukirt|iucaa|bejing|saao]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [show yes|no]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] + [radius <value> degrees|arcmin|arcsec]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [sky <skyframe>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [skyformat <skyformat>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [sort <col> incr|decr]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [symbol [#] condition|shape|color|text|font|fontsize|fontweight|fontslant - <value>]<br> - </tt> <tt> [<ref>] - [symbol [#] text|size|size2|units|angle <value>]</tt><br> - <tt><tt> [<ref>] - [symbol shape circle|ellipse|box|text|point]<br> - </tt></tt> <tt><tt><tt><tt>[<ref>] - [symbol shape</tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt>circle - point|box point|diamond point|</tt></tt></tt></tt>cross - point|x point|arrow point|boxcircle point]<br> - </tt></tt> <tt> - [<ref>] [symbol add| [#] remove]<br> - [<ref>] [symbol - save|load <filename>]</tt><br> - <tt> [<ref>] [system - <coordsys>]</tt><tt><br> - </tt> <tt> </tt> <tt>[<ref>] - [update]</tt><br> - <tt> [<ref>] [x - <col>]</tt><br> - <tt> [<ref>] [y - <col>]</tt><br> - <tt><br> - Example:<br> - </tt> <tt><tt>$ds9 -catalog new<br> - </tt> $ds9 -catalog 2mass<br> - $ds9 -catalog cds 2mass<br> - $ds9 -catalog cds "I/252"<br> - <br> - </tt> <tt>$ds9 -catalog load foo.xml<br> - $ds9 -catalog import tsv foo.tsv<br> - <br> - </tt> <tt><tt>$ds9 -catalog 202.48 47.21 fk5<br> - </tt> $ds9 -catalog allrows<br> - $ds9 -catalog allcols<br> - </tt> <tt>$ds9 -catalog cancel<br> - </tt> <tt>$ds9 -catalog clear<br> - </tt> <tt>$ds9 -catalog close<br> - </tt> <tt>$ds9 -catalog crosshair<br> - </tt> <tt>$ds9 -catalog dec DEC<br> - </tt> <tt>$ds9 -catalog edit yes<br> - </tt> <tt>$ds9 -catalog export tsv bar.tsv<br> - </tt> <tt>$ds9 -catalog filter</tt> <tt>'\$Jmag>15'</tt><tt><br> - $ds9 -catalog filter load foo.flt<br> - $ds9 -catalog header<br> - </tt> <tt>$ds9 -catalog location 500</tt><br> - <tt>$ds9 -catalog match error 2 arcsec<br> - $ds9 -catalog match function 1and2<br> - $ds9 -catalog match unique no<br> - $ds9 -catalog match return 1only<br> - </tt> <tt>$ds9 -catalog match # last two catalogs loaded<br> - </tt> <tt>$ds9 -catalog match 2mass csc<br> - </tt> <tt>$ds9 -catalog maxrows 2000<br> - </tt> <tt>$ds9 -catalog name m51<br> - $ds9 -catalog panto no<br> - </tt> <tt>$ds9 -catalog plot</tt> <tt>'\$Jmag' '\$Hmag' - '\$e_Jmag' '\$e_Hmag'</tt><tt><br> - </tt> <tt>$ds9 -catalog print</tt><br> - <tt>$ds9 -catalog psky fk5</tt><br> - <tt>$ds9 -catalog psystem wcs</tt><br> - <tt>$ds9 -catalog ra RA</tt><br> - <tt><tt>$ds9 -catalog regions<br> - </tt> $ds9 -catalog retrieve<br> - </tt> <tt>$ds9 -catalog samp broadcast<br> - $ds9 -catalog samp send aladin<br> - $ds9 -catalog save foo.xml<br> - </tt> <tt>$ds9 -catalog server sao<br> - </tt> <tt>$ds9 -catalog show yes</tt><br> - <tt>$ds9 -catalog radius 1 degrees</tt><br> - <tt>$ds9 -catalog symbol condition '\$Jmag>15'<br> - $ds9 -catalog symbol 2 shape "boxcircle point"<br> - $ds9 -catalog symbol color red<br> - $ds9 -catalog symbol font times<br> - </tt> <tt>$ds9 -catalog symbol fontsize 14<br> - </tt> <tt>$ds9 -catalog symbol fontweight bold<br> - </tt> <tt>$ds9 -catalog symbol fontslant italic<br> - </tt> <tt>$ds9 -catalog symbol add<br> - $ds9 -catalog symbol 2 remove<br> - $ds9 -catalog symbol load foo.sym<br> - $ds9 -catalog symbol save bar.sym</tt><tt><br> - $ds9 -catalog sky fk5<br> - $ds9 -catalog skyformat degrees<br> - </tt> <tt>$ds9 -catalog sort "Jmag" incr<br> - </tt> <tt>$ds9 -catalog system wcs</tt><tt><br> - </tt> <tt>$ds9 -catalog update<br> - </tt> <tt>$ds9 -catalog x RA<br> - $ds9 -catalog y DEC</tt><br> + <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [symbol [#] + text|size|size2|units|angle <value>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [symbol shape circle|ellipse|box|text|point]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>[<ref>] + + + + + + [symbol shape</tt><tt> </tt><tt>circle point|box point|diamond + point|</tt><tt>cross point|x point|arrow point|boxcircle point]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + + [<ref>] [symbol add| [#] remove]</tt><tt><br> + </tt><tt> [<ref>] + [symbol save|load <filename>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [system <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt> </tt><tt>[<ref>] [update]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [x <col>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [y <col>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog new</tt><tt><br> + </tt><tt> </tt><tt> $ds9 -catalog 2mass</tt><tt><br> + </tt><tt> $ds9 -catalog cds 2mass</tt><tt><br> + </tt><tt> $ds9 -catalog cds "I/252"</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog load foo.xml</tt><tt><br> + </tt><tt> $ds9 -catalog import tsv foo.tsv</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog 202.48 47.21 fk5</tt><tt><br> + </tt><tt> </tt><tt> $ds9 -catalog allrows</tt><tt><br> + </tt><tt> $ds9 -catalog allcols</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog cancel</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog clear</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog close</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog crosshair</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog dec DEC</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog edit yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog export tsv bar.tsv</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog filter</tt><tt> </tt><tt>'\$Jmag>15'</tt><tt><br> + </tt><tt> $ds9 -catalog filter load foo.flt</tt><tt><br> + </tt><tt> $ds9 -catalog header</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog location 500</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -catalog match error 2 arcsec</tt><tt><br> + </tt><tt> $ds9 -catalog match function 1and2</tt><tt><br> + </tt><tt> $ds9 -catalog match unique no</tt><tt><br> + </tt><tt> $ds9 -catalog match return 1only</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog match # last two + catalogs loaded</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog match 2mass csc</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog maxrows 2000</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog name m51</tt><tt><br> + </tt><tt> $ds9 -catalog panto no</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog plot</tt><tt> </tt><tt>'\$Jmag' + + + + + '\$Hmag' '\$e_Jmag' '\$e_Hmag'</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog print</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -catalog psky fk5</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -catalog psystem wcs</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -catalog ra RA</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -catalog regions</tt><tt><br> + </tt><tt> </tt><tt> $ds9 -catalog retrieve</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog samp broadcast</tt><tt><br> + </tt><tt> $ds9 -catalog samp send aladin</tt><tt><br> + </tt><tt> $ds9 -catalog save foo.xml</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog server sao</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog show yes</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -catalog radius 1 degrees</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -catalog symbol condition '\$Jmag>15'</tt><tt><br> + </tt><tt> $ds9 -catalog symbol 2 shape "boxcircle point"</tt><tt><br> + </tt><tt> $ds9 -catalog symbol color red</tt><tt><br> + </tt><tt> $ds9 -catalog symbol font times</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog symbol fontsize 14</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog symbol fontweight + bold</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog symbol fontslant + italic</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog symbol add</tt><tt><br> + </tt><tt> $ds9 -catalog symbol 2 remove</tt><tt><br> + </tt><tt> $ds9 -catalog symbol load foo.sym</tt><tt><br> + </tt><tt> $ds9 -catalog symbol save bar.sym</tt><tt><br> + </tt><tt> $ds9 -catalog sky fk5</tt><tt><br> + </tt><tt> $ds9 -catalog skyformat degrees</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog sort "Jmag" incr</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog system wcs</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog update</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -catalog x RA</tt><tt><br> + </tt><tt> $ds9 -catalog y DEC</tt><br> <p><b><a name="cd" id="cd"></a>cd</b></p> <p>Sets the current working directory.</p> <tt>Syntax:<br> @@ -644,6 +693,11 @@ [ticks]<br> </tt> <tt><tt> + + + + + [match]<br> [lock [yes|no]]</tt><br> @@ -738,7 +792,7 @@ $ds9 -contour mode zscale<br> $ds9 -contour scope local<br> $ds9 -contour limits 1 100<br> - $ds9 -contour levels "1 10 100 1000"<br> + $ds9 -contour levels 1 10 100 1000<br> $ds9 -contour open<br> $ds9 -contour close<br> </tt> @@ -774,6 +828,11 @@ </tt><tt> [match + + + + + <coordsys>]<br> [lock <coordsys>|none]</tt><br> @@ -933,6 +992,11 @@ Example:<br> </tt> <tt><tt><tt><tt>$ds9 -envi foo.hdr</tt></tt><tt><tt><tt><tt><tt><tt><br> </tt></tt></tt></tt></tt></tt></tt></tt> <tt><tt>$ds9 + + + + + -envi foo.hdr foo.bsq</tt></tt><tt><tt><tt><tt><tt><tt><br> </tt></tt></tt></tt></tt></tt> <p><b><a name="exit" id="exit"></a>exit<br> @@ -954,24 +1018,37 @@ extension is used to determine the output format. Optional parameters: jpeg quality (1-100) and tiff compression method.<br> </p> - <tt>Syntax:<br> - -export [array|nrrd|envi|gif|tiff|jpeg|png] <filename></tt><tt><br> - </tt> <tt><tt>-export array <filename></tt> <tt>[big|little</tt><tt>|native]<br> - </tt> -export nrrd <filename></tt> <tt>[big|little</tt><tt>|native]</tt><br> - <tt>-export envi <header> [<filename>]</tt> <tt>[big|little</tt><tt>|native]</tt> - <tt><br> - </tt> <tt>-export <filename></tt><tt>.jpeg [1-100]<br> - </tt> <tt>-export <filename></tt><tt>.tiff - [none|jpeg|packbits|deflate]</tt><br> - <tt> <br> - Example:<br> - $ds9 -export array foo.arr little<br> - $ds9 -export nrrd foo.nrrd little<br> - $ds9 -export envi foo.hdr little<br> - </tt> <tt><tt>$ds9 -export envi foo.hdr foo.bsq little<br> - </tt> $ds9 -export tiff foo.tiff jpeg<br> - $ds9 -export jpeg foo.jpeg 75<br> - $ds9 -export png foo.png</tt><br> + <tt>Syntax:</tt><tt><br> + </tt><tt> -export [array|nrrd|envi|gif|tiff|jpeg|png] + <filename></tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-export array <filename></tt><tt> + </tt><tt>[big|little</tt><tt>|native]</tt><tt><br> + </tt><tt> </tt><tt> -export nrrd <filename></tt><tt> </tt><tt>[big|little</tt><tt>|native]</tt><tt><br> + </tt><tt> </tt><tt>-export envi <header> [<filename>]</tt><tt> + </tt><tt>[big|little</tt><tt>|native]</tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-export <filename></tt><tt>.jpeg + + + + + [1-100]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-export <filename></tt><tt>.tiff + + + + + + [none|jpeg|packbits|deflate]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> $ds9 -export array foo.arr little</tt><tt><br> + </tt><tt> $ds9 -export nrrd foo.nrrd little</tt><tt><br> + </tt><tt> $ds9 -export envi foo.hdr little</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -export envi foo.hdr foo.bsq + little</tt><tt><br> + </tt><tt> </tt><tt> $ds9 -export tiff foo.tiff jpeg</tt><tt><br> + </tt><tt> $ds9 -export jpeg foo.jpeg 75</tt><tt><br> + </tt><tt> $ds9 -export png foo.png</tt><br> <p><b><a name="fifo" id="fifo"></a>fifo</b></p> <p>Set the name of the IRAF input and output fifos. The default is /dev/imt1. These fifos are used by IRAF to communicate with DS9.</p> @@ -1324,34 +1401,39 @@ $ds9 -linear</tt> <p><b><a name="lock" id="lock"></a>lock</b></p> <p>Lock all other frames to the current frame.</p> - <tt>Syntax:<br> - </tt> <tt>-lock</tt> <tt>[frame <coordsys>|none]<br> - </tt> <tt>[crosshair - <coordsys>|none]</tt> <tt><br> - </tt> <tt> [crop <coordsys>|none]</tt><br> - <tt> [slice <coordsys>|none]</tt><br> - <tt> [bin [yes|no]]<br> - [axes [yes|no]]<br> - [scale [yes|no]]<br> - [scalelimits [yes|no]]<br> - [colorbar [yes|no]]<br> - [block [yes|no]]<br> - </tt> <tt> [smooth [yes|no]]</tt><br> - <tt> [3d [yes|no]]</tt><tt><br> - </tt> <tt><br> - </tt> <tt>Example:</tt> <tt><br> - $ds9 -lock frame wcs</tt><tt><br> - </tt> <tt>$ds9 -lock crosshair wcs</tt><tt><br> - </tt> <tt>$ds9 -lock crop wcs</tt><br> - <tt>$ds9 -lock slice wcs</tt><br> - <tt>$ds9 -lock bin yes<br> - $ds9 -lock axes yes<br> - </tt> <tt>$ds9 -lock scale yes<br> - $ds9 -lock scalelimits yes<br> - </tt> <tt>$ds9 -lock colorbar yes</tt><tt><br> - $ds9 -lock block yes</tt><tt><br> - $ds9 -lock smooth yes</tt><tt><br> + <tt>Syntax:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-lock</tt><tt> </tt><tt>[frame + <coordsys>|none]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>[crosshair + <coordsys>|none]</tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [crop + <coordsys>|none]</tt><tt><br> + </tt><tt> </tt><tt> [slice + <coordsys>|none]</tt><tt><br> + </tt><tt> </tt><tt> [bin [yes|no]]</tt><tt><br> + </tt><tt> [axes [yes|no]]</tt><tt><br> + </tt><tt> [scale [yes|no]]</tt><tt><br> + </tt><tt> [scalelimits [yes|no]]</tt><tt><br> + </tt><tt> [colorbar [yes|no]]</tt><tt><br> + </tt><tt> [block [yes|no]]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [smooth [yes|no]]</tt><tt><br> + </tt><tt> </tt><tt> [3d [yes|no]]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>Example:</tt><tt> </tt><tt><br> + </tt><tt> $ds9 -lock frame wcs</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -lock crosshair wcs</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -lock crop wcs</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -lock slice wcs</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -lock bin yes</tt><tt><br> + </tt><tt> $ds9 -lock axes yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -lock scale yes</tt><tt><br> + </tt><tt> $ds9 -lock scalelimits yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -lock colorbar yes</tt><tt><br> + </tt><tt> $ds9 -lock block yes</tt><tt><br> + </tt><tt> $ds9 -lock smooth yes<br> $ds9 -lock 3d yes<br> + <br> </tt> <b><a name="log" id="log"></a>log</b> <p>Select log scale function for the current frame.<br> </p> @@ -1391,16 +1473,22 @@ <p>Controls mask parameters.</p> <tt>Syntax:<br> -mask [color <color>]<br> - [mark 1|0]<br> + [mark + zero|nonzero|nan|nonnan|range]<br> + [range <low> <high>]<br> [transparency <value>]<br> - [clear]<br> + </tt><tt><tt><tt> [system + <coordsys>]<br> + </tt></tt> [clear]<br> [open|close]<br> -nomask<br> <br> Example:<br> $ds9 -mask color red<br> - $ds9 -mask mark 0<br> + $ds9 -mask mark zero<br> + $ds9 -mask range 10 100<br> $ds9 -mask transparency 50<br> + $ds9 -mask system wcs<br> $ds9 -mask clear<br> $ds9 -mask open<br> $ds9 -mask close<br> @@ -1408,35 +1496,51 @@ </tt> <p><b><a name="match" id="match"></a>match</b></p> <p>Match all other frames to the current frame.</p> - <tt>Syntax:<br> - </tt> <tt>-match</tt> <tt>[frame <coordsys>]<br> - </tt> <tt>[crosshair - <coordsys>]</tt> <tt><br> - </tt> <tt> [crop - <coordsys>]</tt><br> - <tt> [slice <coordsys>]</tt><br> - <tt> [bin]<br> - [axes]<br> - [scale]<br> - [scalelimits]<br> - [colorbar]<br> - [block]<br> - [smooth]<br> - </tt> <tt><tt> [3d]</tt><tt><tt><br> - </tt></tt><br> - Example:<br> - </tt> <tt>$ds9 -match frame wcs<br> - </tt> <tt>$ds9 -match crosshair wcs<br> - </tt> <tt>$ds9 -match crop wcs</tt><br> - <tt>$ds9 -match slice wcs</tt><br> - <tt>$ds9 -match bin<br> - $ds9 -match axes<br> - $ds9 -match scale<br> - $ds9 -match scalelimits<br> - $ds9 -match colorbar<br> - $ds9 -match block<br> - </tt> <tt><tt>$ds9 -match smooth<br> - </tt> $ds9 -match 3d</tt><br> + <tt>Syntax:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-match</tt><tt> </tt><tt>[frame + <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>[crosshair + + + + + + <coordsys>]</tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + [crop <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> [slice + <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> [bin]</tt><tt><br> + </tt><tt> [axes]</tt><tt><br> + </tt><tt> [scale]</tt><tt><br> + </tt><tt> [scalelimits]</tt><tt><br> + </tt><tt> [colorbar]</tt><tt><br> + </tt><tt> [block]</tt><tt><br> + </tt><tt> [smooth]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + [3d]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -match frame wcs</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -match crosshair wcs</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -match crop wcs</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -match slice wcs</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -match bin</tt><tt><br> + </tt><tt> $ds9 -match axes</tt><tt><br> + </tt><tt> $ds9 -match scale</tt><tt><br> + </tt><tt> $ds9 -match scalelimits</tt><tt><br> + </tt><tt> $ds9 -match colorbar</tt><tt><br> + </tt><tt> $ds9 -match block</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -match smooth</tt><tt><br> + </tt><tt> </tt><tt> $ds9 -match 3d</tt><br> <tt> <br> </tt> <b><a name="mecube" id="mecube"></a>mecube</b> <p>Load FITS multiple extension file as data cube.<br> @@ -1538,12 +1642,27 @@ degrees|sexagesimal]<br> + + + + + [pan]<br> + + + + + [crosshair]<br> + + + + + [open|close]<br> <br> Example:<br> @@ -1629,27 +1748,33 @@ <p><b><a name="pan" id="pan"></a>pan</b></p> <p>Controls the current image cursor location for the current frame.</p> - <tt>Syntax:<br> - -pan [<x> <h> <coordsys> [<skyframe>]] # - relative<br> - [to <x> <h> - <coordsys> [<skyframe>]] # absolute<br> - [open|close]<br> - <br> - Example:<br> - $ds9 -pan 200 200 image</tt> <tt><tt># pan relative</tt><br> - $ds9 -pan to 400 400 physical</tt> <tt><tt># pan to physical - coords</tt><br> - $ds9 -pan to 13:29:55 47:11:50 wcs fk</tt> <tt><tt># pan to wcs - coords</tt><br> - $ds9 -pan open<br> - $ds9 -pan close</tt><br> + <tt>Syntax:</tt><tt><br> + </tt><tt> -pan [<x> <h> <coordsys> + [<skyframe>]] # relative</tt><tt><br> + </tt><tt> [to <x> <h> + <coordsys> [<skyframe>]] # absolute</tt><tt><br> + </tt><tt> [open|close]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> $ds9 -pan 200 200 image</tt><tt> </tt><tt># pan + relative</tt><tt><br> + </tt><tt> $ds9 -pan to 400 400 physical</tt><tt> </tt><tt># pan + to physical coords</tt><tt><br> + </tt><tt> $ds9 -pan to 13:29:55 47:11:50 wcs fk</tt><tt> </tt><tt># + pan to wcs coords</tt><tt><br> + </tt><tt> $ds9 -pan open</tt><tt><br> + </tt><tt> $ds9 -pan close</tt><br> <p><b><a name="pixeltable" id="pixeltable"></a>pixeltable</b></p> <p>Display/Hide the pixel table.</p> <tt>Syntax:<br> -pixeltable []<br> + + + + + [yes|open]<br> [no|close]<br> @@ -1674,178 +1799,212 @@ </blockquote> <p>To create a new plot, use the plot new command.</p> <tt>Syntax:</tt><tt><br> - </tt> <tt># create new empty plot window</tt><tt><br> - </tt> <tt>-plot [line|bar|scatter]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># existing plot</tt><tt><br> - </tt> <tt>-plot</tt> <tt>[[<plotname>] load - <filename> xy|xyex|xyey|xyexey]</tt><tt><br> - </tt> <tt> [[<plotname>] save - <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] clear]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - duplicate [#]]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - stats yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - list yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt># create new empty plot window</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-plot [line|bar|scatter]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># existing plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-plot</tt><tt> </tt><tt>[[<plotname>] + + + + + load <filename> xy|xyex|xyey|xyexey]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] save <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] clear]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] duplicate [#]]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] stats yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] list yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + loadconfig <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] saveconfig - <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] pagesetup - orient portrait|landscape]</tt><tt><br> - </tt> <tt> [[<plotname>] pagesetup size + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] saveconfig <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] pagesetup orient portrait|landscape]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] pagesetup size letter|legal|tabloid|poster|a4]</tt><tt><br> - </tt> <tt> [[<plotname>] print]</tt><tt><br> - </tt> <tt> [[<plotname>] print - destination printer|file]</tt><tt><br> - </tt> <tt> [[<plotname>] print command - <command>]</tt><tt><br> - </tt> <tt> [[<plotname>] print filename - <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] print color - rgb|gray]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print destination printer|file]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print command <command>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print filename <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print color rgb|gray]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + close</tt><tt>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] mode - pointer|zoom]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure graph</tt><tt><br> - </tt> <tt>-plot [[<plotname>] axis x|y grid yes|no]</tt><tt><br> - </tt> <tt> [[[<plotname>] axis x|y - log yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y - flip yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y auto - yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y min - <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y max - <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y - format <string>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + mode pointer|zoom]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure graph</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-plot [[<plotname>] axis x|y + grid yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[[<plotname>] axis x|y log yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y flip yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y auto yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y min <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y max <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y format <string>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + legend yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] legend - position right|left|top|bottom]</tt><tt><br> - </tt> <tt> [[<plotname>] font - title|labels|numbers font times|helvetica|courier]</tt><tt><br> - </tt> <tt> [[<plotname>] font</tt> <tt>title|labels|numbers</tt> - <tt>size <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] font</tt> <tt>title|labels|numbers</tt> - <tt>weight normal|bold]</tt><tt><br> - </tt> <tt> [[<plotname>] font</tt> <tt>title|labels|numbers</tt> - <tt>slant roman|italic]</tt><tt><br> - </tt> <tt> [[<plotname>] title - <string>]</tt><tt><br> - </tt> <tt> [[<plotname>] title x|y - <string>]</tt><tt><br> - </tt> <tt> [</tt><tt>[<plotname>] + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] legend position right|left|top|bottom]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font title|labels|numbers font + times|helvetica|courier]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font</tt><tt> </tt><tt>title|labels|numbers</tt><tt> + </tt><tt>size <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font</tt><tt> </tt><tt>title|labels|numbers</tt><tt> + </tt><tt>weight normal|bold]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font</tt><tt> </tt><tt>title|labels|numbers</tt><tt> + </tt><tt>slant roman|italic]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] title <string>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] title x|y <string>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [</tt><tt>[<plotname>] + + + + + barmode normal|stacked|aligned|overlap]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure current dataset</tt><tt><br> - </tt> <tt>-plot [[<plotname>] show yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - shape circle|square|diamond|plus|splus|scross|triangle|arrow]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - shape fill yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - - shape color <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - - smooth step|linear|cubic|quadratic|catrom]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - - color <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - - width <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - - dash yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - - error yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - - error color <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] - color <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - - error width <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] - - name <string>]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># select current dataset</tt><tt><br> - </tt> <tt>-plot [[<plotname>] select <value>]</tt><tt><br> - </tt> <tt> </tt><tt><br> - </tt> <tt>Example:</tt><tt><br> - </tt> <tt># create new empty plot window</tt><tt><br> - </tt> <tt>$ds9 -plot bar</tt><tt><br> - </tt> <tt><br> - </tt> <tt># existing plot</tt><tt><br> - </tt> <tt>$ds9 -plot load xy.dat</tt><tt><br> - </tt> <tt>$ds9 -plot save foo.dat</tt><tt><br> - </tt> <tt>$ds9 -plot clear</tt><tt><br> - </tt> <tt>$ds9 -plot duplicate 1</tt><tt><br> - </tt> <tt>$ds9 -plot stats yes</tt><tt><br> - </tt> <tt>$ds9 -plot list yes</tt><tt><br> - </tt> <tt>$ds9 -plot loadconfig foo.plt</tt><tt><br> - </tt> <tt>$ds9 -plot saveconfig foo.plt</tt><tt><br> - </tt> <tt>$ds9 -plot pagesetup orient portrait</tt><tt><br> - </tt> <tt>$ds9 -plot pagesetup size letter</tt><tt><br> - </tt> <tt>$ds9 -plot print</tt><tt><br> - </tt> <tt>$ds9 -plot print destination file</tt><tt><br> - </tt> <tt>$ds9 -plot print command lp</tt><tt><br> - </tt> <tt>$ds9 -plot print filename foo.ps</tt><tt><br> - </tt> <tt>$ds9 -plot print color rgb</tt><tt><br> - </tt> <tt>$ds9 -plot close</tt><tt><br> - </tt> <tt>$ds9 -plot mode pointer</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure plot</tt><tt><br> - </tt> <tt>$ds9 -plot axis x grid yes</tt><tt><br> - </tt> <tt>$ds9 -plot axis x log yes</tt><tt><br> - </tt> <tt>$ds9 -plot axis x flip yes</tt><tt><br> - </tt> <tt>$ds9 -plot axis x auto no</tt><tt><br> - </tt> <tt>$ds9 -plot axis x min 1</tt><tt><br> - </tt> <tt>$ds9 -plot axis x max 100</tt><tt><br> - </tt> <tt>$ds9 -plot axis x format '%f'</tt><tt><br> - </tt> <tt><br> - </tt> <tt>$ds9 -plot legend yes</tt><tt><br> - </tt> <tt>$ds9 -plot legend position left</tt><tt><br> - </tt> <tt><br> - </tt> <tt>$ds9 -plot font numbers font times</tt><tt><br> - </tt> <tt>$ds9 -plot font numbers size 12</tt><tt><br> - </tt> <tt>$ds9 -plot font numbers weight bold</tt><tt><br> - </tt> <tt>$ds9 -plot font numbers slant italic</tt><tt><br> - </tt> <tt><br> - </tt> <tt>$ds9 -plot title 'This is a Title'</tt><tt><br> - </tt> <tt>$ds9 -plot title x 'X Axis'</tt><tt><br> - </tt> <tt>$ds9 -plot title y 'Y Axis'</tt><tt><br> - </tt> <tt>$ds9 -plot title legend 'This is the Legend'</tt><tt><br> - </tt> <tt><br> - </tt> <tt>$ds9 -plot barmode aligned</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure current dataset</tt><tt><br> - </tt> <tt>$ds9 -plot show yes</tt><tt><br> - </tt> <tt>$ds9 -plot shape circle</tt><tt><br> - </tt> <tt>$ds9 -plot shape fill no</tt><tt><br> - </tt> <tt>$ds9 -plot shape color cyan</tt><tt><br> - </tt> <tt>$ds9 -plot smooth step</tt><tt><br> - </tt> <tt>$ds9 -plot color red</tt><tt><br> - </tt> <tt>$ds9 -plot width 2</tt><tt><br> - </tt> <tt>$ds9 -plot dash yes</tt><tt><br> - </tt> <tt>$ds9 -plot error yes</tt><tt><br> - </tt> <tt>$ds9 -plot error color red</tt><tt><br> - </tt> <tt>$ds9 -plot error width 2</tt><tt><br> - </tt> <tt>$ds9 -plot name 'My Data'</tt><tt><br> - </tt> <tt><br> - </tt> <tt># select current dataset</tt><tt><br> - </tt> <tt>$ds9 -plot select 2</tt> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-plot [[<plotname>] show + yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] shape + circle|square|diamond|plus|splus|scross|triangle|arrow]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] shape fill yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] shape color <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] smooth + step|linear|cubic|quadratic|catrom]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] color <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] width <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] dash yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] error yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] error color <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] color <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] error width <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[[<plotname>] name <string>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># select current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-plot [[<plotname>] select + <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>Example:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># create new empty plot window</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot bar</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># existing plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot load xy.dat</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot save foo.dat</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot clear</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot duplicate 1</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot stats yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot list yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot loadconfig foo.plt</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot saveconfig foo.plt</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot pagesetup orient + portrait</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot pagesetup size letter</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot print</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot print destination file</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot print command lp</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot print filename foo.ps</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot print color rgb</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot close</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot mode pointer</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot axis x grid yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot axis x log yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot axis x flip yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot axis x auto no</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot axis x min 1</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot axis x max 100</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot axis x format '%f'</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot legend yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot legend position left</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot font numbers font times</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot font numbers size 12</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot font numbers weight bold</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot font numbers slant + italic</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot title 'This is a Title'</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot title x 'X Axis'</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot title y 'Y Axis'</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot title legend 'This is + the Legend'</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot barmode aligned</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot show yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot shape circle</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot shape fill no</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot shape color cyan</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot smooth step</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot color red</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot width 2</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot dash yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot error yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot error color red</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot error width 2</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot name 'My Data'</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># select current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -plot select 2</tt> <p><b><a name="png" id="png"></a>png</b></p> <p>Load PNG image into current frame.<br> </p> @@ -1918,23 +2077,30 @@ <p><b><a name="print" id="print"></a>print</b></p> <p>Controls printing. Use print option to set printing options.<br> </p> - <tt>Syntax:<br> - -print [destination printer|file]<br> - [command <command>]<br> - [filename <filename>]<br> - </tt> <tt> [color - rgb|cmyk|gray]<br> - [level 1|2|3]<br> - [resolution </tt><tt><tt>72|screen|96|144|150|225|300|600|1200</tt>]<br> - <br> - Example:<br> - $ds9 -print<br> - $ds9 -print destination file<br> - $ds9 -print command lp<br> - $ds9 -print filename foo.ps<br> - $ds9 -print color cmyk<br> - $ds9 -print level 2<br> - $ds9 -print resolution 96</tt> + <tt>Syntax:</tt><tt><br> + </tt><tt> -print [destination printer|file]</tt><tt><br> + </tt><tt> [command + <command>]</tt><tt><br> + </tt><tt> [filename + <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + [color rgb|cmyk|gray]</tt><tt><br> + </tt><tt> [level 1|2|3]</tt><tt><br> + </tt><tt> [resolution + </tt><tt><tt>72|screen|96|144|150|225|300|600|1200]</tt></tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> $ds9 -print</tt><tt><br> + </tt><tt> $ds9 -print destination file</tt><tt><br> + </tt><tt> $ds9 -print command lp</tt><tt><br> + </tt><tt> $ds9 -print filename foo.ps</tt><tt><br> + </tt><tt> $ds9 -print color cmyk</tt><tt><br> + </tt><tt> $ds9 -print level 2</tt><tt><br> + </tt><tt> $ds9 -print resolution 96</tt> <p><b><a name="raise" id="raise"></a>raise</b></p> <p>Raise in the window stacking order.</p> <tt>Syntax:<br> @@ -2137,8 +2303,7 @@ $ds9 -rgb lock block yes<br> $ds9 -rgb lock smooth yes<br> $ds9 -rgb open<br> - $ds9 -rgb close<br> - </tt><br> + $ds9 -rgb close</tt><br> <p><b><a name="rgbarray" id="rgbarray"></a>rgbarray</b></p> <p>Load raw data array cube into rgb frame.<br> </p> @@ -2202,6 +2367,11 @@ -save</tt> <tt>[fits|rgbimage|rgbcube|mecube|mosaic|mosaicimage] <filename> + + + + + [image|table|slice]</tt><br> <tt> <br> Example:<br> @@ -2305,51 +2475,68 @@ <p>Support for VO Simple Image Access protocol. The first command will create a new search. All other commands operated on the last search created, unless indicated otherwise.</p> - <tt>Syntax:<br> - </tt> <tt>-sia</tt> <tt><tt>[2mass|akari|astrowise|cadc|cxc|mast|sdss|skyview|tgssadr</tt><tt>]</tt><br> - <br> - </tt> <tt> </tt><tt> [<ref>] - [cancel]<br> - </tt> <tt> [<ref>] [clear]<br> - </tt> <tt> [<ref>] [close]</tt><br> - <tt> [<ref>] [coordinate <ra> - <dec> <coordsys>]</tt><tt><br> - </tt> <tt> </tt> <tt>[<ref>] - [crosshair]</tt><br> - <tt> [<ref>] [export sb|tsv - <filename>]<br> - </tt> <tt> [<ref>] [name <object>]<br> - </tt> <tt> [<ref>] [print]</tt><br> - <tt> [<ref>] [retrieve]<br> - </tt> <tt> [<ref>] [save - <filename>]</tt><br> - <tt> [<ref>] [radius <value> - degrees|arcmin|arcsec]</tt><br> - <tt> [<ref>] [sky <skyframe>]<br> - </tt> <tt> [<ref>] [skyformat - <skyformat>]<br> - </tt> <tt> [<ref>] [system - <coordsys>]</tt><tt><br> - </tt> <tt> </tt> <tt>[<ref>] - [update]</tt><br> - <tt><br> - Example:<br> - </tt> <tt>$ds9 -sia 2mass<br> - </tt> <tt>$ds9 -sia cancel<br> - </tt> <tt>$ds9 -sia clear<br> - </tt> <tt>$ds9 -sia close<br> - </tt> <tt>$ds9 -sia coordinate 202.48 47.21 fk5<br> - </tt> <tt>$ds9 -sia crosshair<br> - </tt> <tt>$ds9 -sia export tsv bar.tsv<br> - </tt> <tt>$ds9 -sia name m51<br> - </tt> <tt>$ds9 -sia print</tt><br> - <tt>$ds9 -sia retrieve<br> - </tt> <tt>$ds9 -sia save foo.xml<br> - </tt> <tt>$ds9 -sia radius 1 degrees</tt><br> - <tt>$ds9 -sia sky fk5<br> - $ds9 -sia skyformat degrees<br> - </tt> <tt>$ds9 -sia system wcs</tt><tt><br> - </tt> <tt>$ds9 -sia update<br> + <tt>Syntax:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>-sia</tt><tt> </tt><tt>[2mass|akari|astrowise|cadc|cxc|mast|sdss|skyview|tgssadr</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + [<ref>] [cancel]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [clear]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [<ref>] + [close]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] + [coordinate <ra> <dec> <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[<ref>] + + + + + + [crosshair]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] [export + sb|tsv <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [<ref>] + [name <object>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [<ref>] + [print]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] + [retrieve]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [save <filename>]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] [radius + <value> degrees|arcmin|arcsec]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] [sky + <skyframe>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [skyformat <skyformat>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [system <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[<ref>] + + + + + + [update]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia 2mass</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia cancel</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia clear</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia close</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia coordinate 202.48 47.21 + fk5</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia crosshair</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia export tsv bar.tsv</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia name m51</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia print</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -sia retrieve</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia save foo.xml</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia radius 1 degrees</tt><tt><br> + </tt><tt> </tt><tt>$ds9 -sia sky fk5</tt><tt><br> + </tt><tt> $ds9 -sia skyformat degrees</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$ds9 -sia system wcs</tt><tt><br> + </tt><tt> </tt><tt> $ds9 -sia update<br> <br> </tt> <b><a name="single" id="single"></a>single</b> <p>Set display mode to single.</p> @@ -2437,13 +2624,28 @@ [radiusminor <value>]<br> </tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt> + + + + + [sigma <value>]<br> </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt> + + + + + [sigmaminor <value>]<br> </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt> [angle + + + + + <value>]<br> </tt></tt></tt></tt></tt></tt></tt> [match]<br> @@ -2461,8 +2663,18 @@ </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt>$ds9 -smooth + + + + + sigmaminor 2.0<br> </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt>$ds9 + + + + + -smooth angle 45<br> </tt></tt></tt></tt></tt></tt></tt> $ds9 -smooth match<br> diff --git a/ds9/doc/ref/file.html b/ds9/doc/ref/file.html index b1aebc8..012bcf0 100644 --- a/ds9/doc/ref/file.html +++ b/ds9/doc/ref/file.html @@ -1,682 +1,796 @@ <!DOCTYPE doctype PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> -<head> -<meta name="generator" content= -"HTML Tidy for Mac OS X (vers 31 October 2006 - Apple Inc. build 15.18.1), see www.w3.org"> -<meta http-equiv="Content-Type" content= -"text/html; charset=us-ascii"> -<meta name="GENERATOR" content= -"Mozilla/4.78 [en] (X11; U; Linux 2.4.7-10 i686) [Netscape]"> -<title>File Formats</title> -</head> -<body link="#0000EE" alink="#FF0000" bgcolor="#FFFFFF" text= -"#000000" vlink="#551A8B"> -<h3><img alt="" src="../sun.gif" height="98" align="middle" width= -"100"> File Formats</h3> -<blockquote><a href="#FITS">FITS</a><br> -<a href="#FITSImage">FITS Image</a><br> -<a href="#FITSBinaryEventsTable">FITS Binary Events Table</a><br> -<a href="#FITSHEALPIXTable">FITS HEALPIX Table</a><br> -<a href="#FITSDataCube">FITS Data Cube</a><br> -<a href="#FITSMultipleExtensionDataCube">FITS Multiple Extension -Data Cube</a><br> -<a href="#FITSMultipleExtensionMultipleFrames">FITS Multiple -Extension Multiple Frames</a><br> -<a href="#FITSMosaic">FITS Mosaic</a><br> -<a href="#FITSMosaicDataCube">FITS Mosaic Data Cube</a><br> -<a href="#FITSRGB">FITS RGB</a><br> -<a href="#SplitFITS">Split FITS</a><br> -<a href="#array">Array</a><br> -<a href= -"file:///Users/joye/saods9/doc/ref/file.html#nrrd">NRRD</a><br> -<a href="#envi">ENVI</a><br> -<a href="#gif">GIF</a><br> -<a href="#tiff">TIFF</a><br> -<a href="#jpeg">JPEG</a><br> -<a href="#png">PNG</a><br> -<a href="#ExternalFileSupport">External Format Support</a><br> -<a href="#ExternalAnalysisSupport">External Analysis -Support</a><br> -<a href="#RegionFiles">Region Files</a><br> -<a href="#ContourFiles">Contour Files</a><br> -<a href="#ColorLookupTable">Color Lookup Table</a><br> -<a href="#WCS">WCS</a><br> -<a href="#PreferenceFile">Preference File</a><br> -<a href="#StartupFile">Startup File</a><br> -<a href="#TCL">TCL</a><br> -<p><b><a name="FITS" id="FITS"></a>FITS</b></p> -DS9 supports FITS images and FITS binary tables. The following -algorithm is used to locate and to load the FITS image or table if -no additional information is provide: -<blockquote> -<ul> -<li><tt>Examine primary HDU, if IMAGE, load.<br></tt></li> -<li><tt>Examine each extension HDU</tt></li> -<li style="list-style: none"> -<ul> -<li><tt>If IMAGE, load.<br></tt></li> -<li><tt>If BINARY TABLE, create IMAGE if the following is -true:</tt></li> -<li style="list-style: none"> -<ul> -<li><tt>FITS COMPRESSED: keyword ZIMAGE is T.</tt></li> -<li><tt>FITS EVENTS: keyword EXTNAME is EVENTS,STDEVT, or RAYEVENT, -column names X and Y are present.</tt></li> -<li><tt>FITS HEALPIX: keyword PIXTYPE is HEALPIX.</tt><br></li> -</ul> -</li> -</ul> -</li> -<li><tt>If DS9 traverses the entire FITS file without satisfying -one of the above, an error is generated.</tt></li> -</ul> -</blockquote> -FITS keyword inheritance is supported. All valid FITS -<tt>BITPIX</tt> values are supported, along with <tt>-16,</tt> for -<tt>UNSIGNED SHORT</tt>. The following FITS keywords are supported: -<blockquote><tt>OBJECT<br> -UNITS<br> -BSCALE / BZERO<br> -BLANK<br> -DATASEC<br> -LTV / LTM for physical coords<br> -DTV / DTM for detector coords<br> -ATV / ATM for amplifier coords<br> -WCS keywords<br> -WCS# keywords</tt></blockquote> -<p><b><a name="FITSImage" id="FITSImage"></a>FITS Image</b></p> -At load time, the user may provide just a file name or a file name -along with FITS extension name/number and image section -specification. FITS extension names are case insensitive. When -specifying an extension, be sure to quote strings correctly to pass -both the shell and DS9 parser. A image section specification is -used to specify the x,y limits of an image subsection. By default, -x and y coordinates are in <tt>IMAGE</tt>, use a <tt>'p'</tt> as -the last character to indicate <tt>PHYSICAL</tt> coordinates. A -<tt>'*'</tt> indicates use the default for that axis only. Block is -optional and defaults to 1.<br> -<blockquote><tt>Syntax:<br> -filename<br> -filename[ext]<br> -filename[ext][sect]<br> -filename[sect]<br> -filename[ext,sect]<br> -<br> -where</tt><tt><br> -<br> -ext:<br> -[extension name | extension #]<br> -<br> -sect:<br> -[x0:x1</tt><tt>,y0:y1[p]]<br></tt> -<tt><tt><tt>[x0:x1</tt></tt></tt><tt><tt><tt>,y0:y1</tt></tt></tt><tt><tt><tt><tt>,block</tt></tt></tt></tt><tt><tt><tt><tt>[p]</tt>]<br> -</tt> -[x0:x1</tt></tt><tt><tt>,y0:y1</tt></tt><tt><tt>,z0:z1</tt></tt><tt><tt><tt>[p]</tt>]<br> -</tt></tt> -<tt><tt><tt>[x0:x1</tt></tt></tt><tt><tt><tt>,y0:y1</tt></tt></tt><tt><tt><tt>,block,z0:z1</tt></tt></tt><tt><tt><tt><tt>[p]</tt>]</tt></tt></tt><br> - -<tt><tt><tt>[*,y0:y1</tt></tt></tt><tt><tt><tt><tt>[p]</tt>]<br></tt> -<tt><tt><tt>[*,y0:y1</tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt>,block</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt>[p]</tt>]<br> -</tt> -[*,y0:y1</tt></tt></tt></tt><tt><tt><tt><tt>,z0:z1</tt></tt></tt></tt><tt><tt><tt><tt><tt>[p]</tt>]<br> -</tt></tt> -<tt><tt><tt>[*,y0:y1</tt></tt></tt></tt></tt><tt><tt><tt><tt><tt>,block,z0:z1</tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt>[p]</tt>]</tt></tt></tt></tt></tt><br> - -<tt><tt><tt><tt><tt>[x0:x1</tt></tt></tt></tt></tt><tt><tt><tt><tt><tt>,*</tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt>[p]</tt>]<br> -</tt> -<tt><tt><tt>[x0:x1</tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt>,*</tt></tt></tt><tt><tt><tt><tt>,block</tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt>]<br> -</tt> -[x0:x1</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt>,*,z0:z1</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt>]<br> -</tt></tt> -<tt><tt><tt>[x0:x1</tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt>,*,block,z0:z1</tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt>]</tt></tt></tt></tt></tt></tt></tt><br> - -<tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[*,*</tt></tt></tt><tt><tt><tt><tt>,block</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>]<br> -</tt> -[*,*,z0:z1</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>]<br> -</tt></tt> -<tt><tt><tt>[*,*,block,z0:z1</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>]</tt></tt></tt><br> - -<br></tt></tt></tt></tt></tt></tt> -[dim1@xcen,dim2@ycen</tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> -</tt></tt> -<tt><tt><tt><tt><tt><tt>[dim1@xcen,dim2@ycen,block</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> -</tt></tt> -[dim1@xcen,dim2@ycen,dim3@zcen</tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> -</tt></tt></tt></tt> -<tt><tt><tt><tt><tt><tt>[dim1@xcen,dim2@ycen,block,dim3@zcen</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]</tt></tt></tt></tt></tt></tt><br> - -<tt><tt><tt><tt>[*,dim2@ycen</tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> -</tt></tt> -<tt><tt><tt><tt><tt><tt>[*,dim2@ycen,block</tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> -</tt></tt> -[*,dim2@ycen,dim3@zcen</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> -</tt></tt></tt></tt> -<tt><tt><tt><tt><tt><tt>[*,dim2@ycen,block,dim3@zcen</tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]</tt></tt></tt></tt></tt></tt></tt></tt><br> - -<tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[dim1@xcen,*</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> -</tt></tt> -<tt><tt><tt><tt><tt><tt>[dim1@xcen,*,block</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> -</tt></tt> -[dim1@xcen,*,dim3@zcen</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> -</tt></tt></tt></tt> -<tt><tt><tt><tt><tt><tt>[dim1@xcen,*,block,dim3@zcen</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><br> - -<tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[*,*,block]<br> -</tt></tt> [*,*,dim3@zcen]<br></tt></tt></tt></tt> -<tt><tt><tt><tt><tt><tt>[*,*,block,dim3@zcen]</tt></tt></tt></tt></tt></tt><br> - -<br></tt></tt></tt></tt></tt></tt></tt></tt> -<tt><tt><tt><tt>[dim@xcen@ycen]</tt></tt><tt><tt><br></tt></tt> -[dim@xcen@ycen,block]</tt></tt><br> -<tt><tt><tt><tt>[dim@xcen@ycen,zdim@zcen]</tt></tt></tt></tt><br> -<tt><tt><tt><tt><tt><tt><tt><tt>[dim@xcen@ycen,block,zdim@zcen]</tt></tt></tt></tt></tt></tt></tt></tt><tt><br> - -<br> -Example:<br> -$ds9 foo.fits # default load<br> -$ds9 foo.fits[1] # load first extension<br> -$ds9 foo.fits[BCKGRD] # load extension named 'BCKGRD'<br> -$ds9 foo.fits[10:200,40:100] # image section<br></tt> <tt><tt>$ds9 -foo.fits[10:200,40:100,2] # image section, blocked by 2<br></tt> -$ds9 foo.fits[*,40:100] # only section y axis<br> -$ds9 foo.fits[256@512@512] # section box at 512,512<br> -$ds9 foo.fits[2][100:200,100:200] # second extension, image -section<br></tt> <tt><tt>$ds9 foo.fits[2][100:200,100:200,2] # -second extension, image section, blocked by 2<br></tt> $ds9 -foo.fits[10:200,40:100,5:20] # cube section<br> -$ds9 foo.fits[*,40:100,5:20] # only section y and z axes<br> -$ds9 foo.fits[256@512@512] # section cube at 512,512<br> -$ds9 foo.fits[2][100:200,100:200,5:20] # second extension, cube -section</tt><br> -<tt>$ds9 foo.fits[2][100:200,100:200,2,5:20] # second extension, -cube section, blocked by 2</tt></blockquote> -<b><a name="FITSBinaryEventsTable" id= -"FITSBinaryEventsTable"></a>FITS Binary Events Table<br> -<br></b> At load time, the user may provide just a file name or a -file name along with FITS extension name/number, image section -specification, and binnng parameters. DS9 will automatically -convert an FITS binary events table into a 2D image for display. -FITS extension names and parameters are case insensitive. The users -may specify a number of parameters on how to construct the image -and how to filter data. When specifying a filter, be sure to quote -strings correctly to pass both the shell and DS9 -parser.</blockquote> -<blockquote> -<blockquote><tt><tt><tt><tt>Syntax:<br></tt></tt></tt></tt> -<tt><tt>filename<br> -filename[ext]<br> -filename[ext][sect]<br> -filename[sect]<br> -filename[ext,sect]<br></tt><br> -filename[ext][bin]<br></tt> -<tt><tt><tt><tt><tt>filename[ext][bin][sect]<br></tt></tt></tt></tt> -filename[ext][sect][bin]<br></tt> -<tt><tt><tt><tt>filename[bin]<br></tt></tt></tt> -filename[bin][sect]<br></tt> -<tt><tt>filename[sect][bin]<br></tt></tt> <tt>filename[ext,bin]<br> -<br></tt> <tt>where:<br> -ext: see <a href="FITSImage">FITS Image</a><br> -sect: see <a href="FITSImage">FITS Image</a><br> -<br> -bin:<br> -[bin=colx,coly] # bin counts<br></tt> -<tt><tt>[bin=colx,coly,filter] # bin counts with filter<br></tt> -[bin=colx,coly,colz] # bin on colz<br></tt> -<tt><tt>[bin=colx,coly,colz,filter] # bin on colz with -filter<br></tt></tt> <tt><tt>[bin=colz] # bin cols 'x', 'y', and -colz<br></tt></tt> <tt><tt>[bin=colz,filter] # bin cols 'x', 'y', -and colz with filter<br></tt> [key=colx,coly]<br> -[binkey=colx,coly]<br></tt><br> -(see <a href= -"http://hea-www.harvard.edu/saord/funtools/filters.html">Introduction -to Filtering</a>)<br> -<br> -<tt>Example:</tt><br> -<tt>$ds9 foo.fits # default load</tt><br> -<tt>$ds9 foo.fits[1] # load first extension</tt><br> -<tt>$ds9 foo.fits[BCKGRD] # load extension named 'BCKGRD'</tt><br> -<tt>$ds9 foo.fits[bin=detx,dety] # bin on detx,dety</tt><br> -<tt>$ds9 foo.fits[2][bin=rawx,rawy] # load ext 2, cols -rawx,rawy</tt><br> -<tt>$ds9 foo.fits[bg_events,bin=rawx,rawy] # load ext bg_events, -cols rawx,rawy</tt><br> -<tt>$ds9 foo.fits[bin=x,y,pha] # bin on x,y,pi</tt><br> -<tt>$ds9 foo.fits[bin=pi] # bin on x,y,pi</tt><br> -<tt>$ds9 'foo.fits[ccd_id==3&&energy>4000]' # quoted -filter</tt><br> -<tt>$ds9 '"foo.fits[ccd_id==3 && energy>4000]"' # double -quoted filter</tt><br> -<tt>$ds9 'foo.fits[events][pha>5,pi<2]' # load extension -'events' and filter</tt></blockquote> -</blockquote> -<blockquote> -<p>The shell environment variable <tt>DS9_BINKEY</tt> may be used -to specify default bin cols for FITS bin tables. Example:</p> -<blockquote><tt>$ export DS9_BINKEY='[bin=rawx,rawy]'</tt><br> -<tt>$ ds9 foo.fits # load FITS bin table, bin on rawx, -rawy<br></tt></blockquote> -<p><b><a name="FITSHEALPIXTable" id="FITSHEALPIXTable"></a>FITS -HEALPIX Table<br></b></p> -At load time, the user may provide just a file name or a file name -along with FITS extension name/number, image section specification, -and Healpix parameters. DS9 will automatically convert a FITS -HEALPIX binary or ascii table into a 2D image for display. FITS -extension names and parameters are case insensitive. The users may -specify a number of parameters on how to construct the image. Any -table with keyword PIXTYPE=HEALPIX or NSIDE=x will be processed as -an HEALPIX image. The following FITS keywords will be used if -present and not overwritten by a command line option: NSIDE, -COORDSYS, ORDER.<br> -<blockquote><tt><tt><tt><tt>Syntax:<br></tt></tt></tt></tt> -<tt><tt>filename<br> -filename[ext]<br> -filename[ext][sect]<br> -filename[sect]<br> -filename[ext,sect]<br> -<br></tt></tt> <tt><tt><tt>filename[ext][hpx]<br></tt> -<tt><tt><tt><tt><tt>filename[ext][hpx][sect]<br></tt></tt></tt></tt> -filename[ext][sect][hpx]<br></tt> -<tt><tt><tt><tt>filename[hpx]<br></tt></tt></tt> -filename[hpx][sect]<br></tt> -<tt><tt>filename[sect][hpx]<br></tt></tt> <tt>filename[ext,hpx]<br> -<br></tt> where:<br></tt></tt> <tt><tt><tt><tt><tt><tt><tt>ext: see -<a href="file:///Users/joye/saods9/ds9/doc/ref/FITSImage">FITS -Image</a><br></tt></tt></tt></tt></tt> sect: see <a href= -"file:///Users/joye/saods9/ds9/doc/ref/FITSImage">FITS -Image</a><br> -<br> -hpx:<br></tt></tt> <tt>[order=ring|nested] # default ring<br> -[layout=equatorial|north|south] # default equatorial<br> -[col=<column number>] # defaut 1<br> -[quad=<quadurant number>] # (1-4) default 1<br> -[system=equatorial|galactic|ecliptic|unknown] # default -unknown</tt><br> -<br> -<tt>Example:</tt> <tt><br> -$ds9 foo.fits # default load</tt> <tt><br> -$ds9 foo.fits[1] # load first extension</tt> <tt><br> -$ds9 + <head> + <meta name="generator" content="HTML Tidy for Mac OS X (vers 31 + October 2006 - Apple Inc. build 15.18.1), see www.w3.org"> + <meta http-equiv="Content-Type" content="text/html; + charset=windows-1252"> + <meta name="GENERATOR" content="Mozilla/4.78 [en] (X11; U; Linux + 2.4.7-10 i686) [Netscape]"> + <title>File Formats</title> + </head> + <body text="#000000" vlink="#551A8B" bgcolor="#FFFFFF" alink="#FF0000" + link="#0000EE"> + <h3><img alt="" src="../sun.gif" width="100" align="middle" + height="98"> File Formats</h3> + <blockquote><a href="#FITS">FITS</a><br> + <a href="#FITSImage">FITS Image</a><br> + <a href="#FITSBinaryEventsTable">FITS Binary Events Table</a><br> + <a href="#FITSHEALPIXTable">FITS HEALPIX Table</a><br> + <a href="#FITSDataCube">FITS Data Cube</a><br> + <a href="#FITSMultipleExtensionDataCube">FITS Multiple Extension + Data Cube</a><br> + <a href="#FITSMultipleExtensionMultipleFrames">FITS Multiple + Extension Multiple Frames</a><br> + <a href="#FITSMosaic">FITS Mosaic</a><br> + <a href="#FITSMosaicDataCube">FITS Mosaic Data Cube</a><br> + <a href="#FITSRGB">FITS RGB</a><br> + <a href="#SplitFITS">Split FITS</a><br> + <a href="#array">Array</a><br> + <a href="file:///Users/joye/saods9/doc/ref/file.html#nrrd">NRRD</a><br> + <a href="#envi">ENVI</a><br> + <a href="#gif">GIF</a><br> + <a href="#tiff">TIFF</a><br> + <a href="#jpeg">JPEG</a><br> + <a href="#png">PNG</a><br> + <a href="#ExternalFileSupport">External Format Support</a><br> + <a href="#ExternalAnalysisSupport">External Analysis + Support</a><br> + <a href="#RegionFiles">Region Files</a><br> + <a href="#ContourFiles">Contour Files</a><br> + <a href="#ColorLookupTable">Color Lookup Table</a><br> + <a href="#WCS">WCS</a><br> + <a href="#PreferenceFile">Preference File</a><br> + <a href="#StartupFile">Startup File</a><br> + <a href="#TCL">TCL</a><br> + <p><b><a name="FITS" id="FITS"></a>FITS</b></p> + DS9 supports FITS images and FITS binary tables. The following + algorithm is used to locate and to load the FITS image or table if + no additional information is provide: + <blockquote> + <ul> + <li><tt>Examine primary HDU, if IMAGE, load.<br> + </tt></li> + <li><tt>Examine each extension HDU</tt></li> + <li style="list-style: none"> + <ul> + <li><tt>If IMAGE, load.<br> + </tt></li> + <li><tt>If BINARY TABLE, create IMAGE if the following is + true:</tt></li> + <li style="list-style: none"> + <ul> + <li><tt>FITS COMPRESSED: keyword ZIMAGE is T.</tt></li> + <li><tt>FITS EVENTS: keyword EXTNAME is EVENTS,STDEVT, + or RAYEVENT, + column names X and Y are present.</tt></li> + <li><tt>FITS HEALPIX: keyword PIXTYPE is HEALPIX.</tt><br> + </li> + </ul> + </li> + </ul> + </li> + <li><tt>If DS9 traverses the entire FITS file without + satisfying + one of the above, an error is generated.</tt></li> + </ul> + </blockquote> + FITS keyword inheritance is supported. All valid FITS + <tt>BITPIX</tt> values are supported, along with <tt>-16,</tt> + for + <tt>UNSIGNED SHORT</tt>. The following FITS keywords are + supported: + <blockquote><tt>OBJECT<br> + UNITS<br> + BSCALE / BZERO<br> + BLANK<br> + DATASEC<br> + LTV / LTM for physical coords<br> + DTV / DTM for detector coords<br> + ATV / ATM for amplifier coords<br> + WCS keywords<br> + WCS# keywords</tt></blockquote> + <p><b><a name="FITSImage" id="FITSImage"></a>FITS Image</b></p> + At load time, the user may provide just a file name or a file name + along with FITS extension name/number and image section + specification. FITS extension names are case insensitive. When + specifying an extension, be sure to quote strings correctly to + pass + both the shell and DS9 parser. A image section specification is + used to specify the x,y limits of an image subsection. By default, + x and y coordinates are in <tt>IMAGE</tt>, use a <tt>'p'</tt> as + the last character to indicate <tt>PHYSICAL</tt> coordinates. A + <tt>'*'</tt> indicates use the default for that axis only. Block + is + optional and defaults to 1.<br> + <blockquote><tt>Syntax:<br> + filename<br> + filename[ext]<br> + filename[ext][sect]<br> + filename[sect]<br> + filename[ext,sect]<br> + <br> + where</tt><tt><br> + <br> + ext:<br> + [extension name | extension #]<br> + <br> + sect:<br> + [x0:x1</tt><tt>,y0:y1[p]]<br> + </tt> + <tt><tt><tt>[x0:x1</tt></tt></tt><tt><tt><tt>,y0:y1</tt></tt></tt><tt><tt><tt><tt>,block</tt></tt></tt></tt><tt><tt><tt><tt>[p]</tt>]<br> + </tt> + [x0:x1</tt></tt><tt><tt>,y0:y1</tt></tt><tt><tt>,z0:z1</tt></tt><tt><tt><tt>[p]</tt>]<br> + </tt></tt> + <tt><tt><tt>[x0:x1</tt></tt></tt><tt><tt><tt>,y0:y1</tt></tt></tt><tt><tt><tt>,block,z0:z1</tt></tt></tt><tt><tt><tt><tt>[p]</tt>]</tt></tt></tt><br> + <tt><tt><tt>[*,y0:y1</tt></tt></tt><tt><tt><tt><tt>[p]</tt>]<br> + </tt> + <tt><tt><tt>[*,y0:y1</tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt>,block</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt>[p]</tt>]<br> + </tt> + [*,y0:y1</tt></tt></tt></tt><tt><tt><tt><tt>,z0:z1</tt></tt></tt></tt><tt><tt><tt><tt><tt>[p]</tt>]<br> + </tt></tt> + <tt><tt><tt>[*,y0:y1</tt></tt></tt></tt></tt><tt><tt><tt><tt><tt>,block,z0:z1</tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt>[p]</tt>]</tt></tt></tt></tt></tt><br> + <tt><tt><tt><tt><tt>[x0:x1</tt></tt></tt></tt></tt><tt><tt><tt><tt><tt>,*</tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt>[p]</tt>]<br> + </tt> + <tt><tt><tt>[x0:x1</tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt>,*</tt></tt></tt><tt><tt><tt><tt>,block</tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt>]<br> + </tt> + [x0:x1</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt>,*,z0:z1</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt>]<br> + </tt></tt> + <tt><tt><tt>[x0:x1</tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt>,*,block,z0:z1</tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt>]</tt></tt></tt></tt></tt></tt></tt><br> + <tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[*,*</tt></tt></tt><tt><tt><tt><tt>,block</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>]<br> + </tt> + [*,*,z0:z1</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>]<br> + </tt></tt> + <tt><tt><tt>[*,*,block,z0:z1</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>]</tt></tt></tt><br> + <br> + </tt></tt></tt></tt></tt></tt> + [dim1@xcen,dim2@ycen</tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> + </tt></tt> + <tt><tt><tt><tt><tt><tt>[dim1@xcen,dim2@ycen,block</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> + </tt></tt> + [dim1@xcen,dim2@ycen,dim3@zcen</tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> + </tt></tt></tt></tt> + <tt><tt><tt><tt><tt><tt>[dim1@xcen,dim2@ycen,block,dim3@zcen</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]</tt></tt></tt></tt></tt></tt><br> + <tt><tt><tt><tt>[*,dim2@ycen</tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> + </tt></tt> + <tt><tt><tt><tt><tt><tt>[*,dim2@ycen,block</tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> + </tt></tt> + [*,dim2@ycen,dim3@zcen</tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> + </tt></tt></tt></tt> + <tt><tt><tt><tt><tt><tt>[*,dim2@ycen,block,dim3@zcen</tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]</tt></tt></tt></tt></tt></tt></tt></tt><br> + <tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[dim1@xcen,*</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> + </tt></tt> + <tt><tt><tt><tt><tt><tt>[dim1@xcen,*,block</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> + </tt></tt> + [dim1@xcen,*,dim3@zcen</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]<br> + </tt></tt></tt></tt> + <tt><tt><tt><tt><tt><tt>[dim1@xcen,*,block,dim3@zcen</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[p]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt>]</tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt><br> + <tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>[*,*,block]<br> + </tt></tt> [*,*,dim3@zcen]<br> + </tt></tt></tt></tt> + <tt><tt><tt><tt><tt><tt>[*,*,block,dim3@zcen]</tt></tt></tt></tt></tt></tt><br> + <br> + </tt></tt></tt></tt></tt></tt></tt></tt> + <tt><tt><tt><tt>[dim@xcen@ycen]</tt></tt><tt><tt><br> + </tt></tt> + [dim@xcen@ycen,block]</tt></tt><br> + <tt><tt><tt><tt>[dim@xcen@ycen,zdim@zcen]</tt></tt></tt></tt><br> + <tt><tt><tt><tt><tt><tt><tt><tt>[dim@xcen@ycen,block,zdim@zcen]</tt></tt></tt></tt></tt></tt></tt></tt><tt><br> + <br> + Example:<br> + $ds9 foo.fits # default load<br> + $ds9 foo.fits[1] # load first extension<br> + $ds9 foo.fits[BCKGRD] # load extension named 'BCKGRD'<br> + $ds9 foo.fits[10:200,40:100] # image section<br> + </tt> <tt><tt>$ds9 + foo.fits[10:200,40:100,2] # image section, blocked by 2<br> + </tt> + $ds9 foo.fits[*,40:100] # only section y axis<br> + $ds9 foo.fits[256@512@512] # section box at 512,512<br> + $ds9 foo.fits[2][100:200,100:200] # second extension, image + section<br> + </tt> <tt><tt>$ds9 foo.fits[2][100:200,100:200,2] # + second extension, image section, blocked by 2<br> + </tt> $ds9 + foo.fits[10:200,40:100,5:20] # cube section<br> + $ds9 foo.fits[*,40:100,5:20] # only section y and z axes<br> + $ds9 foo.fits[256@512@512] # section cube at 512,512<br> + $ds9 foo.fits[2][100:200,100:200,5:20] # second extension, + cube + section</tt><br> + <tt>$ds9 foo.fits[2][100:200,100:200,2,5:20] # second extension, + cube section, blocked by 2</tt></blockquote> + <b><a name="FITSBinaryEventsTable" id="FITSBinaryEventsTable"></a>FITS + Binary Events Table<br> + <br> + </b> At load time, the user may provide just a file name or a + file name along with FITS extension name/number, image section + specification, and binnng parameters. DS9 will automatically + convert an FITS binary events table into a 2D image for display. + FITS extension names and parameters are case insensitive. The + users + may specify a number of parameters on how to construct the image + and how to filter data. When specifying a filter, be sure to quote + strings correctly to pass both the shell and DS9 + parser.</blockquote> + <blockquote> + <blockquote><tt><tt><tt><tt>Syntax:<br> + </tt></tt></tt></tt> + <tt><tt>filename<br> + filename[ext]<br> + filename[ext][sect]<br> + filename[sect]<br> + filename[ext,sect]<br> + </tt><br> + filename[ext][bin]<br> + </tt> + <tt><tt><tt><tt><tt>filename[ext][bin][sect]<br> + </tt></tt></tt></tt> + filename[ext][sect][bin]<br> + </tt> + <tt><tt><tt><tt>filename[bin]<br> + </tt></tt></tt> + filename[bin][sect]<br> + </tt> + <tt><tt>filename[sect][bin]<br> + </tt></tt> <tt>filename[ext,bin]<br> + <br> + </tt> <tt>where:<br> + ext: see <a href="FITSImage">FITS Image</a><br> + sect: see <a href="FITSImage">FITS Image</a><br> + <br> + bin:<br> + [bin=colx,coly] # bin counts<br> + </tt> + <tt><tt>[bin=colx,coly,filter] # bin counts with filter<br> + </tt> + [bin=colx,coly,colz] # bin on colz<br> + </tt> + <tt><tt>[bin=colx,coly,colz,filter] # bin on colz with + filter<br> + </tt></tt> <tt><tt>[bin=colz] # bin cols 'x', 'y', and + colz<br> + </tt></tt> <tt><tt>[bin=colz,filter] # bin cols 'x', 'y', + and colz with filter<br> + </tt> [key=colx,coly]<br> + [binkey=colx,coly]<br> + </tt><br> + (see <a + href="http://hea-www.harvard.edu/saord/funtools/filters.html">Introduction +to + Filtering</a>)<br> + <br> + <tt>Example:</tt><br> + <tt>$ds9 foo.fits # default load</tt><br> + <tt>$ds9 foo.fits[1] # load first extension</tt><br> + <tt>$ds9 foo.fits[BCKGRD] # load extension named 'BCKGRD'</tt><br> + <tt>$ds9 foo.fits[bin=detx,dety] # bin on detx,dety</tt><br> + <tt>$ds9 foo.fits[2][bin=rawx,rawy] # load ext 2, cols + rawx,rawy</tt><br> + <tt>$ds9 foo.fits[bg_events,bin=rawx,rawy] # load ext bg_events, + cols rawx,rawy</tt><br> + <tt>$ds9 foo.fits[bin=x,y,pha] # bin on x,y,pi</tt><br> + <tt>$ds9 foo.fits[bin=pi] # bin on x,y,pi</tt><br> + <tt>$ds9 'foo.fits[ccd_id==3&&energy>4000]' # quoted + filter</tt><br> + <tt>$ds9 '"foo.fits[ccd_id==3 && energy>4000]"' # + double + quoted filter</tt><br> + <tt>$ds9 'foo.fits[events][pha>5,pi<2]' # load extension + 'events' and filter</tt></blockquote> + </blockquote> + <blockquote> + <p>The shell environment variable <tt>DS9_BINKEY</tt> may be used + to specify default bin cols for FITS bin tables. Example:</p> + <blockquote><tt>$ export DS9_BINKEY='[bin=rawx,rawy]'</tt><br> + <tt>$ ds9 foo.fits # load FITS bin table, bin on rawx, + rawy<br> + </tt></blockquote> + <p><b><a name="FITSHEALPIXTable" id="FITSHEALPIXTable"></a>FITS + HEALPIX Table<br> + </b></p> + At load time, the user may provide just a file name or a file name + along with FITS extension name/number, image section + specification, + and Healpix parameters. DS9 will automatically convert a FITS + HEALPIX binary or ascii table into a 2D image for display. FITS + extension names and parameters are case insensitive. The users may + specify a number of parameters on how to construct the image. Any + table with keyword PIXTYPE=HEALPIX or NSIDE=x will be processed as + an HEALPIX image. The following FITS keywords will be used if + present and not overwritten by a command line option: NSIDE, + COORDSYS, ORDER.<br> + <blockquote><tt><tt><tt><tt>Syntax:<br> + </tt></tt></tt></tt> + <tt><tt>filename<br> + filename[ext]<br> + filename[ext][sect]<br> + filename[sect]<br> + filename[ext,sect]<br> + <br> + </tt></tt> <tt><tt><tt>filename[ext][hpx]<br> + </tt> + <tt><tt><tt><tt><tt>filename[ext][hpx][sect]<br> + </tt></tt></tt></tt> + filename[ext][sect][hpx]<br> + </tt> + <tt><tt><tt><tt>filename[hpx]<br> + </tt></tt></tt> + filename[hpx][sect]<br> + </tt> + <tt><tt>filename[sect][hpx]<br> + </tt></tt> <tt>filename[ext,hpx]<br> + <br> + </tt> where:<br> + </tt></tt> <tt><tt><tt><tt><tt><tt><tt>ext: see + <a + href="file:///Users/joye/saods9/ds9/doc/ref/FITSImage">FITS + Image</a><br> + </tt></tt></tt></tt></tt> sect: see <a + href="file:///Users/joye/saods9/ds9/doc/ref/FITSImage">FITS + Image</a><br> + <br> + hpx:<br> + </tt></tt> <tt>[order=ring|nested] # default ring<br> + [layout=equatorial|north|south] # default equatorial<br> + [col=<column number>] # defaut 1<br> + [quad=<quadurant number>] # (1-4) default 1<br> + [system=equatorial|galactic|ecliptic|unknown] # default + unknown</tt><br> + <br> + <tt>Example:</tt> <tt><br> + $ds9 foo.fits # default load</tt> <tt><br> + $ds9 foo.fits[1] # load first extension</tt> <tt><br> + $ds9 foo.fits[order=ring,layout=equatorial,col=1,quad=1,system=unknown]<br> -</tt> <tt>$ds9 foo.fits[1,order=nested] # first extension, nested -order</tt><br></blockquote> -<p><b><a name="FITSDataCube" id="FITSDataCube"></a>FITS -Cube</b></p> -A FITS Cube is a FITS image which contains more than 2 axes -(NAXES>2). DS9 will automatically detect if a cube is present -and will load all additional images. In addition, individual images -can be loaded one at a time into a cube. DS9 will display the Cube -dialog box which allows the user to select which 2 image to be -displayed. -<p><b><a name="FITSMultipleExtensionDataCube" id= -"FITSMultipleExtensionDataCube"></a>FITS Multiple Extension -Cube</b></p> -A FITS Multiple Extension Data Cube file is a FITS file with one or -more extensions, that is to be displayed as a data cube. Each image -does not have to be the same size, however, only the coordinate -systems from the first extension will be used for contours and -grids.<br> -<blockquote><tt>Example:</tt><br> -<tt>$ds9 -mecube foo.fits # load multiple extension fits file as -data cube</tt></blockquote> -<p><b><a name="FITSMultipleExtensionMultipleFrames" id= -"FITSMultipleExtensionMultipleFrames"></a>FITS Multiple Extension -Multiple Frames</b></p> -Load a multiple extension FITS file into multiple frames. Please -note that files loaded via standard-in or the xpa fits command can -not be displayed using this method.<br> -<blockquote><tt>Example:</tt><br> -<tt>$ds9 -multiframe foo.fits # load multiple extension fits file -as multiple frames</tt></blockquote> -<p><b><a name="FITSMosaic" id="FITSMosaic"></a>FITS Mosaic</b></p> -A FITS mosaic image may exist as a series of FITS files, or as one -FITS file with many extensions. A FITS mosaic may be loaded all a -one time, or by the segment. Once loaded, the multiple FITS images -are treated as one FITS image.<br> -<br> -DS9 supports three forms of mosaics: -<center> -<table align="center" border="1" cellpadding="2" cellspacing="2" -width="50%"> -<tbody> -<tr> -<td valign="top"><tt>IRAF</tt><br></td> -<td valign="top"><tt>contains the DETSEC and DETSIZE keywords.<br> -See <a href= -"http://iraf.noao.edu/projects/ccdmosaic/imagedef/imagedef.html">NOAO -IRAF Mosaic Data Structures</a></tt><br></td> -</tr> -<tr> -<td align="left" valign="top"><tt>WCS</tt><br></td> -<td align="left" valign="top"><tt>each FITS image contains a valid -WCS.</tt><br></td> -</tr> -<tr> -<td align="left" valign="top"><tt>HST WFPC2</tt><br></td> -<td align="left" valign="top"><tt>valid HST WFPC2 data cube, -consisting of 4 planes, along with a fits ascii table containing -wcs information.</tt></td> -</tr> -</tbody> -</table> -</center> -<blockquote><tt>Example:</tt><br> -<tt>$ds9 -mosaicimage iraf foo.fits # load mosaic iraf from one -fits file with multiple exts</tt><br> -<tt>$ds9 -mosaic iraf foo.fits bar.fits wow.fits # load mosaic iraf -from 3 files</tt><br> -<tt>$ds9 -mosaicimage wcs foo.fits # load mosaic wcs from one fits -file with multiple exts</tt><br> -<tt>$ds9 -mosaic wcs foo.fits bar.fits wow.fits # load mosaic wcs -from 3 files</tt><br> -<tt>$ds9 -mosaicimage wfpc2 bar.fits # load wfpc2 mosaic</tt><br> -<tt>$ds9 -mosaic foo.fits bar.fits wow.fits # load mosaic (wcs) -from 3 files</tt><br></blockquote> -<p><b><a name="FITSMosaicDataCube" id="FITSMosaicDataCube"></a>FITS -Mosaic Data Cube</b></p> -A FITS Mosaic Data Cube is a FITS mosaic image which contains more -than 2 axes (NAXES>2). DS9 will automatically detect if a mosaic -data cube is present and will load all additional images. At the -same time, DS9 will display the data cube dialog box which allows -the user to select which 2 image to be displayed. -<p><b><a name="FITSRGB" id="FITSRGB"></a>FITS RGB</b></p> -A FITS RGB image may exist as three of FITS images, one FITS file -with three extensions, or as a FITS 3D Data cube, with three -slices, each representing the red, green, and blue channel. A FITS -RGB image may be loaded all a one time, or by the channel. Once -loaded, the multiple FITS images are treated as one FITS image.<br> -<blockquote><tt>Example:</tt><br> -<tt>$ds9 -rgbimage rgb.fits # load rgb image consisting of one fits -file with 3 image exts</tt><br> -<tt>$ds9 -rgbcube cube.fits # load rgb image consisting of one fits -data cube</tt><br> -<tt>$ds9 -rgb -red foo.fits -green bar.fits -blue wow.fits # rgb -image from 3 fits images</tt><br></blockquote> -<p><b><a name="SplitFITS" id="SplitFITS"></a>Split FITS</b></p> -A split fits is a valid fits file in which two files contain the -header and data segments. -<p><b><a name="array" id="array"></a>Array</b></p> -Raw data arrays are supported. To load an array, the user must -provide the dimensions, pixel depth, and optional header size and -architecture type. -<blockquote><tt>Syntax:<br></tt> -<tt><tt><tt><tt><tt><tt><tt>filename[arr]<br></tt></tt></tt> -filename[arr][sect]<br></tt> <tt><tt>filename[sect][arr]<br> - </tt></tt></tt></tt><br> -where</tt><br> -<tt><tt><tt>sect: see <a href= -"file:///Users/joye/saods9/ds9/doc/ref/FITSImage">FITS -Image</a><br></tt></tt> arr:<br></tt> -<blockquote><tt>xdim=value</tt><br> -<tt>ydim=value</tt><br> -<tt>zdim=value # default is a depth of 1</tt><br> -<tt>dim=value</tt><br> -<tt>dims=value</tt><br> -<tt>bitpix=[8|16|-16|32|64|-32|-64]</tt><br> -<tt>skip=value # must be even, most must be factor of 4</tt><br> -<tt>arch|endian=[big|bigendian|little|littleendian]</tt><br></blockquote> -<tt>Example:<br> -$ds9 -array bar.arr[xdim=512,ydim=512,zdim=1,bitpix=16] # load -512x512 short<br> -$ds9 -array bar.arr[dim=256,bitpix=-32,skip=4] # load 256x256 float -with 4 byte head<br> -$ds9 -array bar.arr[dim=512,bitpix=32,arch=little] # load 512x512 -long, intel<br></tt> -<p>or alternate format:</p> -<tt>filename[array(<type><dim><:skip><endian>)]<br> - -<br> -where:<br> -type:</tt> -<blockquote><tt>'b' 8 -bit unsigned char<br> -'s' 16-bit short int<br> -'u' 16-bit unsigned short int<br> -'i' 32-bit int<br> -'l' 64-bit int<br> -'r' 32-bit float<br> -'f' 32-bit float<br> -'d' 64-bit float</tt></blockquote> -<tt>dim:</tt> -<blockquote><tt>int # x,y dim<br> -int.int # x,y dim<br> -int.int.int # x,y,z dim<br></tt></blockquote> -<tt>skip:</tt> -<blockquote><tt>int # number of bytes to -skip</tt></blockquote> -<tt>endian:</tt> -<blockquote><tt>'l' little endian<br> -'b' big endian<br></tt></blockquote> -<tt>Example:<br> -$ds9 -array bar.arr[array(s512)] # load 512x512 -short<br> -$ds9 -array bar.arr[array(r256:4)] # load 256x256 float with 4 byte -head<br> -$ds9 -array bar.arr[array(i512l)] # load 512x512 long, -intel</tt> -<p>The shell environment variable <tt>DS9_ARRAY</tt> may be used to -specify default array parameters.</p> -<tt>Example:<br> -$export DS9_ARRAY='[dim=256,bitpix=-32]'<br> -$ds9 -array foo.arr # load 256x256 float<br></tt></blockquote> -<p><b><a name="nrrd" id="nrrd"></a>NRRD (Nearly Raw Raster -Data)</b><br></p> -Images in NRRD are supported directly. Encodings supported: -<tt>raw, gzip<br></tt><br> -<tt>Syntax:<br></tt> -<tt><tt><tt><tt><tt><tt><tt>filename<br></tt></tt></tt> -filename[sect]<br></tt></tt></tt></tt><br> -<tt><tt><tt><tt><tt><tt>where:<br> -sect: see <a href= -"file:///Users/joye/saods9/ds9/doc/ref/FITSImage">FITS -Image</a><br></tt></tt></tt> <tt><tt><br></tt></tt></tt></tt></tt> -<tt>Example:</tt><br> -<tt>$ds9 -nrrd foo.nrrd<br> -$ds9 -nrrd foo.nrrd[100:200,100:200] # cropped</tt><br> -<p><b><a name="envi" id="envi"></a>ENVI</b><br></p> -Images in ENVI are supported directly. Encodings supported: -<tt>BIL, BIP, BSQ.<br></tt><br> -<tt>Syntax:<br></tt> -<tt><tt><tt><tt><tt><tt><tt>filename<br></tt></tt></tt> -filename[sect]<br> -<br> -where:</tt></tt></tt></tt><br> -<tt><tt><tt><tt><tt><tt>sect: see <a href= -"file:///Users/joye/saods9/ds9/doc/ref/FITSImage">FITS -Image</a><br></tt></tt></tt> <tt><tt><br></tt></tt></tt></tt></tt> -<tt>Example:</tt><br> -<tt>$ds9 -envi foo.hdr foo.bsq<br> -$ds9 -envi foo.hdr foo.bsq[100:200,100:200] # cropped<br></tt> -<p><b><a name="gif" id="gif"></a>GIF</b><br></p> -Images in GIF are supported directly. For a <tt>Frame</tt>, the -average of the luminosity is used. For <tt>Frame RGB</tt>, each -channel is loaded directly.<br> -<tt><br> -Syntax:<br></tt> -<tt><tt><tt><tt><tt><tt><tt>filename<br></tt></tt></tt></tt></tt></tt></tt><br> - -<tt>Example:<br></tt> <tt>$ ds9 -gif foo.gif</tt><br> -<p><b><a name="tiff" id="tiff"></a>TIFF</b><br></p> -Images in TIFF are supported directly. For a <tt>Frame</tt>, the -average of the luminosity is used. For <tt>Frame RGB</tt>, each -channel is loaded directly.<br> -<br> -<tt>Syntax:<br></tt> -<tt><tt><tt><tt><tt><tt><tt>filename<br></tt></tt></tt></tt></tt></tt></tt><br> - -<tt>Example:</tt><br> -<tt>$ ds9 -tiff foo.tiff</tt><br> -<p><b><a name="jpeg" id="jpeg"></a>JPEG</b><br></p> -Images in JPEG are supported directly. For a <tt>Frame</tt>, the -average of the luminosity is used. For <tt>Frame RGB</tt>, each -channel is loaded directly.<br> -<tt><br> -Syntax:<br></tt> -<tt><tt><tt><tt><tt><tt><tt>filename<br></tt></tt></tt></tt></tt></tt></tt><br> - -<tt>Example:</tt><br> -<tt>$ ds9 -jpeg foo.jpeg</tt><br> -<p><b><a name="png" id="png"></a>PNG</b><br></p> -Images in PNG are supported directly. For a <tt>Frame</tt>, the -average of the luminosity is used. For <tt>Frame RGB</tt>, each -channel is loaded directly.<br> -<br> -<tt>Syntax:<br></tt> -<tt><tt><tt><tt><tt><tt><tt>filename<br></tt></tt></tt></tt></tt></tt></tt><br> - -<tt>Example:</tt><br> -<tt>$ ds9 -png foo.png</tt><br> -<p><b><a name="ExternalFileSupport" id= -"ExternalFileSupport"></a>External File Support</b></p> -DS9 supports external file formats via an ASCII description file. -When loading a file into DS9, these descriptions are referenced for -instructions for loading the file, based on the file extension. If -found, the command is executed and the result, a FITS image or FITS -Binary Table, is read into DS9 via stdin.<br> -At start-up, DS9 first searches for the ASCII file, named -<tt>.ds9.fil</tt>in the local directory, then in the users home -directory.<br> -The file command first is macro-expanded to fill in user-defined -arguments and then is executed externally.<br> -The ASCII file that defines the known image files consists of one -or more file descriptors, each of which has the following format: -<blockquote><tt>Help description<br> -A space-separated list of templates<br> -A space-separated list of file types (not currently used)<br> -The command line for the loading this file -type<br></tt></blockquote> -Note that blank lines separate the file descriptions and should not -be used as part of a description. Also, the '#' character is a -comment character.<br> -<br> -The following macros are supported: <tt>$filename</tt><br> -<blockquote><tt>For Example:</tt><br> -<tt># File access descriptions:</tt><br> -<tt># help explanation</tt><br> -<tt># file template</tt><br> -<tt># file type</tt><br> -<tt># access command</tt><br> -<tt>IRAF IMH files</tt><br> -<tt>*.imh</tt><br> -<tt>IMH</tt><br> -<tt>i2f -s $filename</tt></blockquote> -<p><b><a name="ExternalAnalysisSupport" id= -"ExternalAnalysisSupport"></a>External Analysis Support</b></p> -For more information about external analysis support files, see -<a href="analysis.html">Analysis</a>. -<p><b><a name="RegionFiles" id="RegionFiles"></a>Region -Files</b></p> -DS9 can read and write a number of region file formats. See -<a href="region.html">Regions</a> documentation for more -information. -<blockquote><tt><a href= -"region.html#RegionDescriptions">DS9</a><br> -<a href="region.html#FUNTools">FUNTools</a><br> -<a href="region.html#Ciao">Ciao</a><br> -<a href="region.html#SAOimage">SAOimage</a><br> -<a href="region.html#IRAFPROS">IRAF PROS</a><br> -<a href="region.html#FITSREGIONBinaryTable">FITS REGION Binary -Table</a><br> -<a href="region.html#XY">X Y</a><br></tt></blockquote> -<p><b><a name="ContourFiles" id="ContourFiles"></a>Contour -Files</b></p> -See <a href= -"file:///Users/joye/saods9/ds9/doc/ref/contour.html#ContourFiles">Contours</a> -documentation for more information.<br> -<p><b><a name="ColorLookupTable" id="ColorLookupTable"></a>Color -Lookup Table</b></p> -DS9 has a number of default colormaps available to the user. DS9 -also supports reading and writing color lookup table formats from -the following programs: -<blockquote><tt><a href= -"http://tdc-www.harvard.edu/software/saoimage/saoimage.color.html#cmap"> -SAOimage</a><br> -<a href= -"http://hea-www.harvard.edu/RD/saotng/adding_cmaps.html">SAOtng</a><br> - -XImtool<br></tt></blockquote> -DS9 uses the file extension to determine the color table format: -<center> -<table nosave="" border="1" cellpadding="2" cellspacing="2" width= -"50%"> -<tbody> -<tr nosave=""> -<td nosave=""> -<center><tt>Ext</tt></center> -</td> -<td> -<center><tt>Format</tt></center> -</td> -</tr> -<tr> -<td><tt>.lut</tt></td> -<td><tt>XImtool, SAOtng</tt></td> -</tr> -<tr> -<td><tt>.sao</tt></td> -<td><tt>DS9, SAOimage</tt></td> -</tr> -<tr> -<td><tt>any other</tt></td> -<td><tt>DS9</tt></td> -</tr> -</tbody> -</table> -</center> -<p><b><a name="WCS" id="WCS"></a>WCS</b></p> -A new WCS specification can be loaded and used by the current image -regardless of the WCS that was contained in the image file. WCS -specification can be sent to DS9 as an ASCII file via XPA. The -format of the specification is a set of valid FITS keywords that -describe a WCS. -<blockquote><tt>Example:<br> - CRPIX1 + </tt> <tt>$ds9 foo.fits[1,order=nested] # first extension, + nested + order</tt><br> + </blockquote> + <p><b><a name="FITSDataCube" id="FITSDataCube"></a>FITS + Cube</b></p> + A FITS Cube is a FITS image which contains more than 2 axes + (NAXES>2). DS9 will automatically detect if a cube is present + and will load all additional images. In addition, individual + images + can be loaded one at a time into a cube. DS9 will display the Cube + dialog box which allows the user to select which 2 image to be + displayed. + <p><b><a name="FITSMultipleExtensionDataCube" + id="FITSMultipleExtensionDataCube"></a>FITS Multiple + Extension + Cube</b></p> + A FITS Multiple Extension Data Cube file is a FITS file with one + or + more extensions, that is to be displayed as a data cube. Each + image + does not have to be the same size, however, only the coordinate + systems from the first extension will be used for contours and + grids.<br> + <blockquote><tt>Example:</tt><br> + <tt>$ds9 -mecube foo.fits # load multiple extension fits file as + data cube</tt></blockquote> + <p><b><a name="FITSMultipleExtensionMultipleFrames" + id="FITSMultipleExtensionMultipleFrames"></a>FITS Multiple + Extension + Multiple Frames</b></p> + Load a multiple extension FITS file into multiple frames. Please + note that files loaded via standard-in or the xpa fits command can + not be displayed using this method.<br> + <blockquote><tt>Example:</tt><br> + <tt>$ds9 -multiframe foo.fits # load multiple extension fits + file + as multiple frames</tt></blockquote> + <p><b><a name="FITSMosaic" id="FITSMosaic"></a>FITS Mosaic</b></p> + A FITS mosaic image may exist as a series of FITS files, or as one + FITS file with many extensions. A FITS mosaic may be loaded all a + one time, or by the segment. Once loaded, the multiple FITS images + are treated as one FITS image.<br> + <br> + DS9 supports three forms of mosaics: + <center> + <table width="50%" cellspacing="2" cellpadding="2" border="1" + align="center"> + <tbody> + <tr> + <td valign="top"><tt>IRAF</tt><br> + </td> + <td valign="top"><tt>contains the DETSEC and DETSIZE + keywords.<br> + See <a + href="http://iraf.noao.edu/projects/ccdmosaic/imagedef/imagedef.html">NOAO +IRAF + Mosaic Data Structures</a></tt><br> + </td> + </tr> + <tr> + <td valign="top" align="left"><tt>WCS</tt><br> + </td> + <td valign="top" align="left"><tt>each FITS image contains + a valid + WCS.</tt><br> + </td> + </tr> + <tr> + <td valign="top" align="left"><tt>HST WFPC2</tt><br> + </td> + <td valign="top" align="left"><tt>valid HST WFPC2 data + cube, + consisting of 4 planes, along with a fits ascii table + containing + wcs information.</tt></td> + </tr> + </tbody> + </table> + </center> + <blockquote><tt>Example:</tt><br> + <tt>$ds9 -mosaicimage iraf foo.fits # load mosaic iraf from one + fits file with multiple exts</tt><br> + <tt>$ds9 -mosaic iraf foo.fits bar.fits wow.fits # load mosaic + iraf + from 3 files</tt><br> + <tt>$ds9 -mosaicimage wcs foo.fits # load mosaic wcs from one + fits + file with multiple exts</tt><br> + <tt>$ds9 -mosaic wcs foo.fits bar.fits wow.fits # load mosaic + wcs + from 3 files</tt><br> + <tt>$ds9 -mosaicimage wfpc2 bar.fits # load wfpc2 mosaic</tt><br> + <tt>$ds9 -mosaic foo.fits bar.fits wow.fits # load mosaic (wcs) + from 3 files</tt><br> + </blockquote> + <p><b><a name="FITSMosaicDataCube" id="FITSMosaicDataCube"></a>FITS +Mosaic + Data Cube</b></p> + A FITS Mosaic Data Cube is a FITS mosaic image which contains more + than 2 axes (NAXES>2). DS9 will automatically detect if a + mosaic + data cube is present and will load all additional images. At the + same time, DS9 will display the data cube dialog box which allows + the user to select which 2 image to be displayed. + <p><b><a name="FITSRGB" id="FITSRGB"></a>FITS RGB</b></p> + A FITS RGB image may exist as three of FITS images, one FITS file + with three extensions, or as a FITS 3D Data cube, with three + slices, each representing the red, green, and blue channel. A FITS + RGB image may be loaded all a one time, or by the channel. Once + loaded, the multiple FITS images are treated as one FITS image.<br> + <blockquote><tt>Example:</tt><br> + <tt>$ds9 -rgbimage rgb.fits # load rgb image consisting of one + fits + file with 3 image exts</tt><br> + <tt>$ds9 -rgbcube cube.fits # load rgb image consisting of one + fits + data cube</tt><br> + <tt>$ds9 -rgb -red foo.fits -green bar.fits -blue wow.fits # rgb + image from 3 fits images</tt><br> + </blockquote> + <p><b><a name="SplitFITS" id="SplitFITS"></a>Split FITS</b></p> + A split fits is a valid fits file in which two files contain the + header and data segments. + <p><b><a name="array" id="array"></a>Array</b></p> + Raw data arrays are supported. To load an array, the user must + provide the dimensions, pixel depth, and optional header size and + architecture type. + <blockquote><tt>Syntax:<br> + </tt> + <tt><tt><tt><tt><tt><tt><tt>filename[arr]<br> + </tt></tt></tt> + filename[arr][sect]<br> + </tt> <tt><tt>filename[sect][arr]<br> + </tt></tt></tt></tt><br> + where</tt><br> + <tt><tt><tt>sect: see <a + href="file:///Users/joye/saods9/ds9/doc/ref/FITSImage">FITS + Image</a><br> + </tt></tt> arr:<br> + </tt> + <blockquote><tt>xdim=value</tt><br> + <tt>ydim=value</tt><br> + <tt>zdim=value # default is a depth of 1</tt><br> + <tt>dim=value</tt><br> + <tt>dims=value</tt><br> + <tt>bitpix=[8|16|-16|32|64|-32|-64]</tt><br> + <tt>skip=value # must be even, most must be factor of 4</tt><br> + <tt>arch|endian=[big|bigendian|little|littleendian]</tt><br> + </blockquote> + <tt>Example:<br> + $ds9 -array bar.arr[xdim=512,ydim=512,zdim=1,bitpix=16] # load + 512x512 short<br> + $ds9 -array bar.arr[dim=256,bitpix=-32,skip=4] # load 256x256 + float + with 4 byte head<br> + $ds9 -array bar.arr[dim=512,bitpix=32,arch=little] # load + 512x512 + long, intel<br> + </tt> + <p>or alternate format:</p> + <tt>filename[array(<type><dim><:skip><endian>)]<br> + <br> + where:<br> + type:</tt> + <blockquote><tt>'b' 8 -bit unsigned char<br> + 's' 16-bit short int<br> + 'u' 16-bit unsigned short int<br> + 'i' 32-bit int<br> + 'l' 64-bit int<br> + 'r' 32-bit float<br> + 'f' 32-bit float<br> + 'd' 64-bit float</tt></blockquote> + <tt>dim:</tt> + <blockquote><tt>int # x,y dim<br> + int.int # x,y dim<br> + int.int.int # x,y,z dim<br> + </tt></blockquote> + <tt>skip:</tt> + <blockquote><tt>int # number of bytes to + skip</tt></blockquote> + <tt>endian:</tt> + <blockquote><tt>'l' little endian<br> + 'b' big endian<br> + </tt></blockquote> + <tt>Example:<br> + $ds9 -array bar.arr[array(s512)] # load 512x512 + short<br> + $ds9 -array bar.arr[array(r256:4)] # load 256x256 float with 4 + byte + head<br> + $ds9 -array bar.arr[array(i512l)] # load 512x512 long, + intel</tt> + <p>The shell environment variable <tt>DS9_ARRAY</tt> may be + used to + specify default array parameters.</p> + <tt>Example:<br> + $export DS9_ARRAY='[dim=256,bitpix=-32]'<br> + $ds9 -array foo.arr # load 256x256 float<br> + </tt></blockquote> + <p><b><a name="nrrd" id="nrrd"></a>NRRD (Nearly Raw Raster + Data)</b><br> + </p> + Images in NRRD are supported directly. Encodings supported: + <tt>raw, gzip<br> + </tt><br> + <tt>Syntax:<br> + </tt> + <tt><tt><tt><tt><tt><tt><tt>filename<br> + </tt></tt></tt> + filename[sect]<br> + </tt></tt></tt></tt><br> + <tt><tt><tt><tt><tt><tt>where:<br> + sect: see <a + href="file:///Users/joye/saods9/ds9/doc/ref/FITSImage">FITS + Image</a><br> + </tt></tt></tt> <tt><tt><br> + </tt></tt></tt></tt></tt> + <tt>Example:</tt><br> + <tt>$ds9 -nrrd foo.nrrd<br> + $ds9 -nrrd foo.nrrd[100:200,100:200] # cropped</tt><br> + <p><b><a name="envi" id="envi"></a>ENVI</b><br> + </p> + Images in ENVI are supported directly. Encodings supported: + <tt>BIL, BIP, BSQ.<br> + </tt><br> + <tt>Syntax:<br> + </tt> + <tt><tt><tt><tt><tt><tt><tt>filename<br> + </tt></tt></tt> + filename[sect]<br> + <br> + where:</tt></tt></tt></tt><br> + <tt><tt><tt><tt><tt><tt>sect: see <a + href="file:///Users/joye/saods9/ds9/doc/ref/FITSImage">FITS + Image</a><br> + </tt></tt></tt> <tt><tt><br> + </tt></tt></tt></tt></tt> + <tt>Example:</tt><br> + <tt>$ds9 -envi foo.hdr foo.bsq<br> + $ds9 -envi foo.hdr foo.bsq[100:200,100:200] # cropped<br> + </tt> + <p><b><a name="gif" id="gif"></a>GIF</b><br> + </p> + Images in GIF are supported directly. For a <tt>Frame</tt>, the + average of the luminosity is used. For <tt>Frame RGB</tt>, each + channel is loaded directly.<br> + <tt><br> + Syntax:<br> + </tt> + <tt><tt><tt><tt><tt><tt><tt>filename<br> + </tt></tt></tt></tt></tt></tt></tt><br> + <tt>Example:<br> + </tt> <tt>$ ds9 -gif foo.gif</tt><br> + <p><b><a name="tiff" id="tiff"></a>TIFF</b><br> + </p> + Images in TIFF are supported directly. For a <tt>Frame</tt>, the + average of the luminosity is used. For <tt>Frame RGB</tt>, each + channel is loaded directly.<br> + <br> + <tt>Syntax:<br> + </tt> + <tt><tt><tt><tt><tt><tt><tt>filename<br> + </tt></tt></tt></tt></tt></tt></tt><br> + <tt>Example:</tt><br> + <tt>$ ds9 -tiff foo.tiff</tt><br> + <p><b><a name="jpeg" id="jpeg"></a>JPEG</b><br> + </p> + Images in JPEG are supported directly. For a <tt>Frame</tt>, the + average of the luminosity is used. For <tt>Frame RGB</tt>, each + channel is loaded directly.<br> + <tt><br> + Syntax:<br> + </tt> + <tt><tt><tt><tt><tt><tt><tt>filename<br> + </tt></tt></tt></tt></tt></tt></tt><br> + <tt>Example:</tt><br> + <tt>$ ds9 -jpeg foo.jpeg</tt><br> + <p><b><a name="png" id="png"></a>PNG</b><br> + </p> + Images in PNG are supported directly. For a <tt>Frame</tt>, the + average of the luminosity is used. For <tt>Frame RGB</tt>, each + channel is loaded directly.<br> + <br> + <tt>Syntax:<br> + </tt> + <tt><tt><tt><tt><tt><tt><tt>filename<br> + </tt></tt></tt></tt></tt></tt></tt><br> + <tt>Example:</tt><br> + <tt>$ ds9 -png foo.png</tt><br> + <p><b><a name="ExternalFileSupport" id="ExternalFileSupport"></a>External + File Support</b></p> + DS9 supports external file formats via an ASCII description file. + When loading a file into DS9, these descriptions are referenced + for + instructions for loading the file, based on the file extension. If + found, the command is executed and the result, a FITS image or + FITS + Binary Table, is read into DS9 via stdin.<br> + At start-up, DS9 first searches for the ASCII file, named + <tt>.ds9.fil</tt>in the local directory, then in the users home + directory.<br> + The file command first is macro-expanded to fill in user-defined + arguments and then is executed externally.<br> + The ASCII file that defines the known image files consists of one + or more file descriptors, each of which has the following format: + <blockquote><tt>Help description<br> + A space-separated list of templates<br> + A space-separated list of file types (not currently used)<br> + The command line for the loading this file + type<br> + </tt></blockquote> + Note that blank lines separate the file descriptions and should + not + be used as part of a description. Also, the '#' character is a + comment character.<br> + <br> + The following macros are supported: <tt>$filename</tt><br> + <blockquote><tt>For Example:</tt><br> + <tt># File access descriptions:</tt><br> + <tt># help explanation</tt><br> + <tt># file template</tt><br> + <tt># file type</tt><br> + <tt># access command</tt><br> + <tt>IRAF IMH files</tt><br> + <tt>*.imh</tt><br> + <tt>IMH</tt><br> + <tt>i2f -s $filename</tt></blockquote> + <p><b><a name="ExternalAnalysisSupport" + id="ExternalAnalysisSupport"></a>External Analysis Support</b></p> + For more information about external analysis support files, see + <a href="analysis.html">Analysis</a>. + <p><b><a name="RegionFiles" id="RegionFiles"></a>Region + Files</b></p> + DS9 can read and write a number of region file formats. See + <a href="region.html">Regions</a> documentation for more + information. + <blockquote><tt><a href="region.html#RegionDescriptions">DS9</a><br> + <a href="region.html#FUNTools">FUNTools</a><br> + <a href="region.html#Ciao">Ciao</a><br> + <a href="region.html#SAOimage">SAOimage</a><br> + <a href="region.html#IRAFPROS">IRAF PROS</a><br> + <a href="region.html#FITSREGIONBinaryTable">FITS REGION Binary + Table</a><br> + <a href="region.html#XY">X Y</a><br> + </tt></blockquote> + <p><b><a name="ContourFiles" id="ContourFiles"></a>Contour + Files</b></p> + See <a href="contour.html">Contours</a> + documentation for more information.<br> + <p><b><a name="ColorLookupTable" id="ColorLookupTable"></a>Color + Lookup Table</b></p> + DS9 has a number of default colormaps available to the user. DS9 + also supports reading and writing color lookup table formats from + the following programs: + <blockquote><tt> + SAOimage<br> + SAOtng<br> + XImtool<br> + </tt></blockquote> + DS9 uses the file extension to determine the color table format: + <center> + <table nosave="" width="50%" cellspacing="2" cellpadding="2" + border="1"> + <tbody> + <tr nosave=""> + <td nosave=""> + <center><tt>Ext</tt></center> + </td> + <td> + <center><tt>Format</tt></center> + </td> + </tr> + <tr> + <td><tt>.lut</tt></td> + <td><tt>XImtool, SAOtng</tt></td> + </tr> + <tr> + <td><tt>.sao</tt></td> + <td><tt>DS9, SAOimage</tt></td> + </tr> + <tr> + <td><tt>any other</tt></td> + <td><tt>DS9</tt></td> + </tr> + </tbody> + </table> + </center> + <p><b><a name="WCS" id="WCS"></a>WCS</b></p> + A new WCS specification can be loaded and used by the current + image + regardless of the WCS that was contained in the image file. WCS + specification can be sent to DS9 as an ASCII file via XPA. The + format of the specification is a set of valid FITS keywords that + describe a WCS. + <blockquote><tt>Example:<br> + CRPIX1 = -257.75<br> - CRPIX2 + 257.75<br> + CRPIX2 = -258.93<br> - CRVAL1 = --201.94541667302<br> - CRVAL2 + 258.93<br> + CRVAL1 + = + -201.94541667302<br> + CRVAL2 = --47.45444<br> - CDELT1 -= -2.1277777E-4<br> - CDELT2 -= 2.1277777E-4<br> - CTYPE1 = 'RA---TAN'<br> - CTYPE2 = 'DEC--TAN'<br></tt></blockquote> -Note that the WCS definitions can contain standard FITS 80 -character WCS card images, as shown above, or free-form name/value -pairs without the intervening "=" sign: -<blockquote><tt> CRPIX1 -257.75<br> - CRPIX2 258.93<br> - CRVAL1 -201.94541667302<br> - CRVAL2 -47.45444<br> - CDELT1 -2.1277777E-4<br> - CDELT2 2.1277777E-4<br> - CTYPE1 'RA---TAN'<br> - CTYPE2 'DEC--TAN'</tt></blockquote> -<p><b><a name="PreferenceFile" id="PreferenceFile"></a>Preference -File</b></p> -A preference file is a valid tcl script generated by DS9 to save -the current preference items. See <a href= -"prefs.html">Preferences</a> for more information. -<p><b><a name="StartupFile" id="StartupFile"></a>Startup -File</b></p> -If a startup file <tt>$HOME/ds9.ini</tt> is available, it is -sourced as the last step in initialization. The file permissions -must be group/world readonly.<br> -Users may have several different startup files. DS9 looks for a -startup file with its own name. By default, if the application is -named <tt>ds9</tt>, it will look for <tt>.ds9.ini.</tt> However, if -the DS9 application is named <tt>foo</tt>, then DS9 will look for -<tt>.foo.ini.</tt> In this manner, the user can have several -predefined startup files that are activated by invoking DS9 with a -different application names.<br> -<p><b><a name="TCL" id="TCL"></a>TCL</b></p> -TCL/TK script file. Users may customize the appearance and enhance -the capabilities of DS9 by sourcing their own TCL -scripts.</blockquote> -</body> + -47.45444<br> + CDELT1 + = -2.1277777E-4<br> + CDELT2 + = 2.1277777E-4<br> + CTYPE1 = 'RA---TAN'<br> + CTYPE2 = 'DEC--TAN'<br> + </tt></blockquote> + Note that the WCS definitions can contain standard FITS 80 + character WCS card images, as shown above, or free-form name/value + pairs without the intervening "=" sign: + <blockquote><tt> CRPIX1 + 257.75<br> + CRPIX2 258.93<br> + CRVAL1 -201.94541667302<br> + CRVAL2 -47.45444<br> + CDELT1 -2.1277777E-4<br> + CDELT2 2.1277777E-4<br> + CTYPE1 'RA---TAN'<br> + CTYPE2 'DEC--TAN'</tt></blockquote> + <p><b><a name="PreferenceFile" id="PreferenceFile"></a>Preference + File</b></p> + A preference file is a valid tcl script generated by DS9 to save + the current preference items. See <a href="prefs.html">Preferences</a> + for more information. + <p><b><a name="StartupFile" id="StartupFile"></a>Startup + File</b></p> + If a startup file <tt>$HOME/ds9.ini</tt> is available, it is + sourced as the last step in initialization. The file permissions + must be group/world readonly.<br> + Users may have several different startup files. DS9 looks for a + startup file with its own name. By default, if the application is + named <tt>ds9</tt>, it will look for <tt>.ds9.ini.</tt> However, + if + the DS9 application is named <tt>foo</tt>, then DS9 will look for + <tt>.foo.ini.</tt> In this manner, the user can have several + predefined startup files that are activated by invoking DS9 with a + different application names.<br> + <p><b><a name="TCL" id="TCL"></a>TCL</b></p> + TCL/TK script file. Users may customize the appearance and enhance + the capabilities of DS9 by sourcing their own TCL + scripts.</blockquote> + </body> </html> diff --git a/ds9/doc/ref/samp.html b/ds9/doc/ref/samp.html index 198c67f..db5c239 100644 --- a/ds9/doc/ref/samp.html +++ b/ds9/doc/ref/samp.html @@ -454,199 +454,249 @@ <p>Support for catalogs. The first three commands will create a new catalog search. All other commands operated on the last search created, unless indicated otherwise.</p> - <tt>Syntax:<br> - </tt> <tt>catalog [new]<br> - - [ned|simbad|denis|skybot]<br> - </tt> <tt><tt> -[aavso|ac|ascss|cmc|gaia|gsc1|gsc2|gsc3|nomad|ppmx|sao|sdss5|sdss6|</tt><tt>sdss7|sdss8|</tt><tt>sdss9|tycho]<br> - [</tt><tt><tt>ua2|ub1|</tt>ucac2|ucac2sup|ucac3|ucac4|urat1]<br> - </tt></tt> <tt> - [2mass|iras]<br> - [csc|xmm|rosat]<br> - [first|nvss]<br> - - [chandralog|cfhtlog|esolog|stlog|xmmlog]<br> - [cds <catalogname>]<br> - [cds - <catalogid>]<br> - <br> - [load <filename>]<br> - [import sb|tsv - <filename>]<br> - <br> - </tt> <tt><tt> [<ref>] - [<ra> <dec> <coordsys>]</tt><tt><br> - </tt> [<ref>] [allcols]<br> - </tt> <tt> </tt><tt> - [<ref>] [allrows]<br> - </tt><tt> [<ref>] - [cancel]<br> - </tt> <tt> [<ref>] - [clear]<br> - </tt> <tt> [<ref>] [close]</tt><br> - <tt> </tt> <tt>[<ref>] - [crosshair]</tt><br> - <tt> [<ref>] [dec - <col>]</tt><br> - <tt> [<ref>] [edit - yes|no]</tt><br> - <tt> [<ref>] - [export sb|tsv <filename>]<br> - </tt> <tt> - [<ref>] [filter <string>]<br> - [<ref>] [filter load - <filename>]</tt><br> - <tt> [<ref>] - [header]</tt><br> - <tt> [<ref>] [location - <code>]</tt><br> - <tt><tt> [<ref>] - [match]<br> - </tt></tt> <tt><tt><tt> + <tt>Syntax:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog [new]</tt><tt><br> + </tt><tt> + [ned|simbad|denis|skybot]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> +[aavso|ac|ascss|cmc|gaia|gsc1|gsc2|gsc3|nomad|ppmx|sao|sdss5|sdss6|</tt><tt>sdss7|sdss8|</tt><tt>sdss9|tycho]</tt><tt><br> + </tt><tt> [</tt><tt>ua2|ub1|</tt><tt>ucac2|ucac2sup|ucac3|ucac4|urat1]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> - [<ref>] [match <ref> <ref>]<br> - </tt></tt> </tt> <tt>[<ref>] -[match - - error <value> degrees|arcmin|arcsec]</tt><br> - <tt> </tt> <tt>[<ref>] - [match function 1and2|1not2|2not1]<br> - </tt> <tt> </tt> <tt>[<ref>] - [match return 1and2|1only|2only]</tt><br> - <tt> </tt> <tt>[<ref>] - [match unique yes|no]</tt><br> - <tt> [<ref>] [maxrows - <number>]</tt><br> - <tt> [<ref>] [name - <object>]<br> - </tt> <tt> - [<ref>] [panto yes|no]</tt><br> - <tt> [<ref>] [plot - <xcol> <ycol> <xerrcol> <yerrcol>]</tt><br> - <tt> [<ref>] [print]</tt><br> - <tt> [<ref>] [psky - <skyframe>]</tt><br> - <tt> [<ref>] [psystem - <coordsys>]</tt><br> - <tt> [<ref>] [ra - <col>]</tt><br> - <tt> [<ref>] [regions]</tt><br> - <tt><tt> [<ref>] - [retrieve]</tt><br> - [<ref>] [samp]<br> - [<ref>] [samp - broadcast]<br> - [<ref>] [samp - send <application>]</tt><tt><br> - </tt> <tt> - [<ref>] [save <filename>]</tt><br> - <tt> [<ref>] - [server</tt> <tt><tt>cds|adac|cadc|cambridge|sao|ukirt|iucaa|bejing|saao]</tt></tt><br> - <tt> [<ref>] [show - yes|no]</tt><br> - <tt> [<ref>] [radius - <value> degrees|arcmin|arcsec]</tt><br> - <tt> [<ref>] [sky - <skyframe>]<br> - </tt> <tt> [<ref>] - [skyformat <skyformat>]<br> - </tt> <tt> [<ref>] - [sort <col> incr|decr]</tt><br> - <tt> [<ref>] [symbol - [#] - condition|shape|color|text|font|fontsize|fontweight|fontslant - <value>]<br> - </tt> <tt> [<ref>] - [symbol [#] text|size|size2|units|angle <value>]<br> - </tt> <tt><tt> [<ref>] - [symbol shape circle|ellipse|box|text|point]<br> - </tt></tt> <tt><tt><tt><tt>[<ref>] - [symbol shape</tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt>circle - point|box point|diamond point|</tt></tt></tt></tt>cross - point|x point|arrow point|boxcircle point]<br> - </tt> [<ref>] - [symbol add| [#] remove]<br> - [<ref>] [symbol - save|load <filename>]</tt><br> - <tt> [<ref>] [system + + + + + [2mass|iras]</tt><tt><br> + </tt><tt> + [csc|xmm|rosat]</tt><tt><br> + </tt><tt> [first|nvss]</tt><tt><br> + </tt><tt> + [chandralog|cfhtlog|esolog|stlog|xmmlog]</tt><tt><br> + </tt><tt> [cds + <catalogname>]</tt><tt><br> + </tt><tt> [cds + <catalogid>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> [load + <filename>]</tt><tt><br> + </tt><tt> [import sb|tsv + <filename>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [<ra> <dec> <coordsys>]</tt><tt><br> - </tt> <tt> </tt> <tt>[<ref>] - [update]</tt><br> - <tt> [<ref>] [x - <col>]</tt><br> - <tt> [<ref>] [y - <col>]</tt><br> - <tt> <br> - Example:<br> - string value = ds9.get(string cmd)<br> - catalog<br> - catalog header<br> - <br> - ds9.set(string cmd)<br> - </tt> <tt><tt>catalog new<br> - </tt> catalog 2mass<br> - catalog cds 2mass<br> - catalog cds</tt> <tt>{I/252}</tt><br> - <tt><br> - </tt> <tt>catalog load foo.xml<br> - catalog import tsv foo.tsv<br> - <br> - </tt> <tt>catalog allrows<br> - catalog allcols<br> - </tt> <tt>catalog cancel<br> - </tt> <tt>catalog clear<br> - </tt> <tt>catalog close<br> - </tt> <tt>catalog coordinate 202.48 47.21 fk5<br> - </tt> <tt>catalog crosshair<br> - </tt> <tt>catalog dec DEC<br> - </tt> <tt>catalog edit yes<br> - </tt> <tt>catalog export tsv bar.tsv<br> - </tt> <tt>catalog filter {$Jmag>10}<br> - catalog filter load foo.flt<br> - catalog header<br> - </tt> <tt>catalog location 500</tt><br> - <tt>catalog match error 2 arcsec<br> - catalog match function 1and2<br> - catalog match unique no<br> - catalog match return 1only<br> - </tt> <tt>catalog match # last two catalogs loaded<br> - </tt> <tt>catalog match 2mass csc<br> - </tt> <tt>catalog maxrows 2000<br> - </tt> <tt>catalog name m51<br> - catalog panto no<br> - </tt> <tt>catalog plot</tt> <tt>{$Jmag} {$Hmag} {$e_Jmag} - {$e_Hmag}</tt><tt><br> - </tt> <tt>catalog print</tt><br> - <tt>catalog psky fk5</tt><br> - <tt>catalog psystem wcs</tt><br> - <tt>catalog ra RA</tt><br> - <tt>catalog regions<br> - </tt> <tt>catalog retrieve<br> - </tt> <tt>catalog samp broadcast<br> - catalog samp send aladin<br> - catalog save foo.xml<br> - </tt> <tt>catalog server sao<br> - </tt> <tt>catalog show yes</tt><br> - <tt>catalog radius 1 degrees</tt><br> - <tt>catalog symbol condition</tt> <tt>{$Jmag>15}</tt><br> - <tt>catalog symbol 2 shape</tt> <tt>{boxcircle point}</tt><br> - <tt>catalog symbol color red<br> - catalog symbol font times<br> - </tt> <tt>catalog symbol fontsize 14<br> - </tt> <tt>catalog symbol fontweight bold<br> - </tt> <tt>catalog symbol fontslant italic<br> - </tt> <tt>catalog symbol add<br> - catalog symbol 2 remove<br> - catalog symbol load foo.sym<br> - catalog symbol save bar.sym</tt><tt><br> - catalog sky fk5<br> - catalog skyformat degrees<br> - </tt> <tt>catalog sort {Jmag} incr<br> - </tt> <tt>catalog system wcs</tt><tt><br> - </tt> <tt>catalog update<br> - </tt> <tt>catalog x RA<br> - catalog y DEC</tt><br> + </tt><tt> </tt><tt> + [<ref>] [allcols]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + [<ref>] [allrows]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [cancel]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [clear]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [close]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [crosshair]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [dec <col>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [edit yes|no]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [export sb|tsv <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + + [<ref>] [filter <string>]</tt><tt><br> + </tt><tt> [<ref>] + [filter load <filename>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [header]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [location <code>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [match]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + + + [<ref>] [match <ref> <ref>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [match error <value> + degrees|arcmin|arcsec]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [match function 1and2|1not2|2not1]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [match return 1and2|1only|2only]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [match unique yes|no]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [maxrows <number>]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] + [name <object>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + + [<ref>] [panto yes|no]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [plot <xcol> <ycol> <xerrcol> + <yerrcol>]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] + [print]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [psky <skyframe>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [psystem <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [ra <col>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [regions]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [retrieve]</tt><tt><br> + </tt><tt> [<ref>] + [samp]</tt><tt><br> + </tt><tt> [<ref>] + [samp broadcast]</tt><tt><br> + </tt><tt> [<ref>] + [samp send <application>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + + [<ref>] [save <filename>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [server</tt><tt> </tt><tt>cds|adac|cadc|cambridge|sao|ukirt|iucaa|bejing|saao]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [show yes|no]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] + [radius <value> degrees|arcmin|arcsec]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [sky <skyframe>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [skyformat <skyformat>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [sort <col> incr|decr]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [symbol [#] + condition|shape|color|text|font|fontsize|fontweight|fontslant + <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [symbol [#] + text|size|size2|units|angle <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [symbol shape + circle|ellipse|box|text|point]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>[<ref>] + + + + + + [symbol shape</tt><tt> </tt><tt>circle point|box point|diamond + point|</tt><tt>cross point|x point|arrow point|boxcircle point]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [symbol add| [#] remove]</tt><tt><br> + </tt><tt> [<ref>] + [symbol save|load <filename>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [system <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt> </tt><tt>[<ref>] [update]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [x <col>]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [y <col>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> catalog</tt><tt><br> + </tt><tt> catalog header</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog new</tt><tt><br> + </tt><tt> </tt><tt> catalog 2mass</tt><tt><br> + </tt><tt> catalog cds 2mass</tt><tt><br> + </tt><tt> catalog cds</tt><tt> </tt><tt>{I/252}</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog load foo.xml</tt><tt><br> + </tt><tt> catalog import tsv foo.tsv</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog allrows</tt><tt><br> + </tt><tt> catalog allcols</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog cancel</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog clear</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog close</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog coordinate 202.48 47.21 fk5</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog crosshair</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog dec DEC</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog edit yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog export tsv bar.tsv</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog filter {$Jmag>10}</tt><tt><br> + </tt><tt> catalog filter load foo.flt</tt><tt><br> + </tt><tt> catalog header</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog location 500</tt><tt><br> + </tt><tt> </tt><tt>catalog match error 2 arcsec</tt><tt><br> + </tt><tt> catalog match function 1and2</tt><tt><br> + </tt><tt> catalog match unique no</tt><tt><br> + </tt><tt> catalog match return 1only</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog match # last two catalogs + loaded</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog match 2mass csc</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog maxrows 2000</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog name m51</tt><tt><br> + </tt><tt> catalog panto no</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog plot</tt><tt> </tt><tt>{$Jmag} + + + + + {$Hmag} {$e_Jmag} {$e_Hmag}</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog print</tt><tt><br> + </tt><tt> </tt><tt>catalog psky fk5</tt><tt><br> + </tt><tt> </tt><tt>catalog psystem wcs</tt><tt><br> + </tt><tt> </tt><tt>catalog ra RA</tt><tt><br> + </tt><tt> </tt><tt>catalog regions</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog retrieve</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog samp broadcast</tt><tt><br> + </tt><tt> catalog samp send aladin</tt><tt><br> + </tt><tt> catalog save foo.xml</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog server sao</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog show yes</tt><tt><br> + </tt><tt> </tt><tt>catalog radius 1 degrees</tt><tt><br> + </tt><tt> </tt><tt>catalog symbol condition</tt><tt> </tt><tt>{$Jmag>15}</tt><tt><br> + </tt><tt> </tt><tt>catalog symbol 2 shape</tt><tt> </tt><tt>{boxcircle + + + + + point}</tt><tt><br> + </tt><tt> </tt><tt>catalog symbol color red</tt><tt><br> + </tt><tt> catalog symbol font times</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog symbol fontsize 14</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog symbol fontweight bold</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog symbol fontslant italic</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog symbol add</tt><tt><br> + </tt><tt> catalog symbol 2 remove</tt><tt><br> + </tt><tt> catalog symbol load foo.sym</tt><tt><br> + </tt><tt> catalog symbol save bar.sym</tt><tt><br> + </tt><tt> catalog sky fk5</tt><tt><br> + </tt><tt> catalog skyformat degrees</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog sort {Jmag} incr</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog system wcs</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog update</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>catalog x RA</tt><tt><br> + </tt><tt> catalog y DEC</tt><br> <p><b><a name="cd" id="cd"></a>cd</b></p> <p>Sets/Returns the current working directory.</p> <tt>Syntax:<br> @@ -770,6 +820,11 @@ </tt> <tt><tt> [load levels <filename>]<br> </tt></tt> <tt><tt><tt> + + + + + [save levels <filename>]<br> </tt></tt> [copy]<br> [paste @@ -836,29 +891,36 @@ contour mode zscale<br> contour scope local<br> contour limits 1 100<br> - contour levels {1 10 100 1000}<br> + contour levels 1 10 100 1000<br> contour open<br> contour close<br> </tt> <p><b><a name="crop" id="crop"></a>crop</b></p> <p>Set current image display area.</p> - <tt>Syntax:<br> - crop [<x> <y> <width> <height> - [<coordsys>][<skyframe>][degrees|arcmin|arcsec]<br> - </tt> <tt> [match <coordsys>]<br> - [lock <coordsys>|none]</tt><tt><br> - [reset]<br> - [3d</tt> <tt><tt>zmin zmax - <coordsys>]<br> - [open|close]</tt><br> - <br> - Example:<br> - string value = ds9.get(string cmd)<br> - </tt> <tt>crop # get crop in physical coords<br> - </tt> <tt>crop wcs galactic sexagesimal arcsec<br> - crop lock<br> - </tt> <tt>ds9.set(string cmd)</tt><br> - <tt>crop 40 30 10 20 # set crop in physical coords<br> + <tt>Syntax:</tt><tt><br> + </tt><tt> crop [<x> <y> <width> <height> + [<coordsys>][<skyframe>][degrees|arcmin|arcsec]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [match <coordsys>]</tt><tt><br> + </tt><tt> [lock + <coordsys>|none]</tt><tt><br> + </tt><tt> [reset]</tt><tt><br> + </tt><tt> [3d</tt><tt> </tt><tt>zmin + + + + + zmax <coordsys>]</tt><tt><br> + </tt><tt> [open|close]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>crop # get crop in physical coords</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>crop wcs galactic sexagesimal + arcsec</tt><tt><br> + </tt><tt> crop lock</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> crop 40 30 10 20 # set crop in physical coords<br> crop +104:51:06.915 +68:33:40.761 28.144405 22.000204 wcs galactic arcsec<br> crop match wcs<br> @@ -1102,24 +1164,29 @@ <p>Export loaded image data of current frame in specified image format. Optional parameters: array endian, nrrd endian, jpeg quality (1-100) and tiff compression method.</p> - <tt>Syntax:</tt> <tt><br> - </tt> <tt>export</tt> <tt>[array|nrrd|envi|gif|tiff|jpeg|png]</tt> - <tt><filename></tt><tt><br> - </tt> <tt>export array <filename></tt> <tt>[big|little</tt><tt>|native]</tt><tt><br> - </tt> <tt>export nrrd <filename></tt> <tt>[big|little</tt><tt>|native]</tt><br> - <tt>export envi <header> [<filename>]</tt> <tt>[big|little</tt><tt>|native]</tt><tt><br> - </tt> <tt>export jpeg <filename></tt> <tt>[1-100]</tt><tt><br> - </tt> <tt>export tiff <filename</tt><tt>></tt> <tt>[none|jpeg|packbits|deflate]</tt><br> - <tt> <br> - Example:<br> - </tt> <tt><tt><tt>ds9.set (string cmd)<br> - </tt> export array foo.arr little</tt></tt><br> - <tt><tt>export nrrd foo.nrrd little<br> - export envi foo.hdr little<br> - export envi foo.hdr foo.bsq little<br> - </tt></tt> <tt><tt><tt><tt>export tiff foo.tiff jpeg</tt></tt></tt><br> - export jpeg foo.jpeg 75<br> - export png foo.png</tt><br> + <tt>Syntax:</tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>export</tt><tt> </tt><tt>[array|nrrd|envi|gif|tiff|jpeg|png]</tt><tt> + </tt><tt><filename></tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>export array <filename></tt><tt> + </tt><tt>[big|little</tt><tt>|native]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>export nrrd <filename></tt><tt> + </tt><tt>[big|little</tt><tt>|native]</tt><tt><br> + </tt><tt> </tt><tt>export envi <header> [<filename>]</tt><tt> + </tt><tt>[big|little</tt><tt>|native]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>export jpeg <filename></tt><tt> + </tt><tt>[1-100]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>export tiff <filename</tt><tt>></tt><tt> + </tt><tt>[none|jpeg|packbits|deflate]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set (string cmd)</tt><tt><br> + </tt><tt> </tt><tt> export array foo.arr little</tt><tt><br> + </tt><tt> </tt><tt>export nrrd foo.nrrd little</tt><tt><br> + </tt><tt> export envi foo.hdr little</tt><tt><br> + </tt><tt> export envi foo.hdr foo.bsq little</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>export tiff foo.tiff jpeg</tt><tt><br> + </tt><tt> export jpeg foo.jpeg 75</tt><tt><br> + </tt><tt> export png foo.png</tt><br> <p><b><a name="file" id="file"></a>file</b></p> <p>Query currently loaded file information.</p> <tt>Syntax:<br> @@ -1576,6 +1643,11 @@ $x, $y, $z.</tt> See <a href="file:///Users/joye/saods9/doc/ref/analysis.html#macros">Analysis + + + + + Macros</a> for more information.</p> <tt>Syntax:<br> iexam []<br> @@ -1630,48 +1702,53 @@ </tt> jpeg</tt> <tt>slice</tt> <p><b><a name="lock" id="lock"></a>lock</b></p> <p>Lock all other frames to the current frame.</p> - <tt>Syntax:<br> - </tt> <tt>lock</tt> <tt>[frame <coordsys>|none]<br> - </tt> <tt>[crosshair - <coordsys>|none]</tt> <tt><br> - </tt> <tt> [crop <coordsys>|none]</tt><br> - <tt> [slice <coordsys>|none]</tt><br> - <tt> [bin [yes|no]]<br> - [axes [yes|no]]<br> - [scale [yes|no]]<br> - [scalelimits [yes|no]]<br> - [colorbar [yes|no]]<br> - [block [yes|no]]<br> - </tt> <tt> [smooth [yes|no]]</tt><tt><br> - </tt> <tt> [3d [yes|no]]</tt><tt><br> - </tt> <tt> </tt> <tt><br> - Example:<br> - </tt> <tt>string value = ds9.get(string cmd)<br> - </tt> <tt>lock frame<br> - lock crosshair<br> - </tt> <tt>lock crop</tt><br> - <tt>lock slice</tt><br> - <tt>lock bin<br> - lock axes<br> - lock scale<br> - lock scalelimits<br> - lock color</tt><tt>bar<br> - lock block<br> - </tt> <tt>lock smooth<br> - </tt> <tt>lock 3d<br> - </tt> <tt>ds9.set(string cmd)<br> - </tt> <tt>lock frame wcs</tt><tt><br> - </tt> <tt>lock crosshair wcs<br> - </tt> <tt>lock crop wcs</tt><br> - <tt>lock slice wcs</tt><br> - <tt>lock bin yes<br> - lock axes yes<br> - </tt> <tt>lock scale yes<br> - lock scalelimits yes<br> - </tt> <tt>lock colorbar yes</tt><tt><br> - lock block yes</tt><br> - <tt>lock smooth yes<br> - </tt> <tt>lock 3d yes<br> + <tt>Syntax:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>lock</tt><tt> </tt><tt>[frame + <coordsys>|none]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>[crosshair + <coordsys>|none]</tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [crop + <coordsys>|none]</tt><tt><br> + </tt><tt> </tt><tt> [slice + <coordsys>|none]</tt><tt><br> + </tt><tt> </tt><tt> [bin [yes|no]]</tt><tt><br> + </tt><tt> [axes [yes|no]]</tt><tt><br> + </tt><tt> [scale [yes|no]]</tt><tt><br> + </tt><tt> [scalelimits [yes|no]]</tt><tt><br> + </tt><tt> [colorbar [yes|no]]</tt><tt><br> + </tt><tt> [block [yes|no]]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [smooth + [yes|no]]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [3d + [yes|no]]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>lock frame</tt><tt><br> + </tt><tt> lock crosshair</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>lock crop</tt><tt><br> + </tt><tt> </tt><tt>lock slice</tt><tt><br> + </tt><tt> </tt><tt>lock bin</tt><tt><br> + </tt><tt> lock axes</tt><tt><br> + </tt><tt> lock scale</tt><tt><br> + </tt><tt> lock scalelimits</tt><tt><br> + </tt><tt> lock color</tt><tt>bar</tt><tt><br> + </tt><tt> lock block</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>lock smooth</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>lock 3d</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>lock frame wcs</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>lock crosshair wcs</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>lock crop wcs</tt><tt><br> + </tt><tt> </tt><tt>lock slice wcs</tt><tt><br> + </tt><tt> </tt><tt>lock bin yes</tt><tt><br> + </tt><tt> lock axes yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>lock scale yes</tt><tt><br> + </tt><tt> lock scalelimits yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>lock colorbar yes</tt><tt><br> + </tt><tt> lock block yes</tt><tt><br> + </tt><tt> </tt><tt>lock smooth yes</tt><tt><br> + </tt><tt> </tt><tt> lock 3d yes<br> <br> </tt> <b><a name="lower" id="lower"></a>lower</b> <p>Lower in the window stacking order.</p> @@ -1710,8 +1787,10 @@ <p>Controls mask parameters.</p> <tt>Syntax:<br> mask [color <color>]<br> - [mark 1|0]<br> + [mark zero|nonzero|nan|nonnan|range]<br> + [range <low> <high>]<br> [transparency <value>]<br> + [system <coordsys>]<br> [clear]<br> [open|close]<br> <br> @@ -1719,11 +1798,15 @@ string value = ds9.get(string cmd)<br> mask color<br> mask mark<br> + mask range<br> + mask system<br> mask transparency<br> ds9.set(string cmd)<br> mask color red<br> - mask mark 0<br> + mask mark zero<br> + mask range 10 100<br> mask transparency 50<br> + mask system wcs<br> mask clear<br> mask open<br> mask close<br> @@ -2051,270 +2134,386 @@ </blockquote> <p>To create a new plot, use the plot new command.</p> <tt>Syntax:</tt><tt><br> - </tt> <tt># create new empty plot window</tt><tt><br> - </tt> <tt>plot []</tt><tt><br> - </tt> <tt> [line|bar|scatter]</tt><tt><br> - </tt> <tt> [new]</tt><tt><br> - </tt> <tt> [new line|bar|scatter]</tt><tt><br> - </tt> <tt> [new name <plotname>]</tt><tt><br> - </tt> <tt> [new name <plotname> + </tt><tt> </tt><tt> </tt><tt># create new empty plot window</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot []</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [line|bar|scatter]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [new]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [new line|bar|scatter]</tt><tt><br> - </tt> <tt><br> - </tt> <tt>#</tt> <tt>load data into existing plot from stdin</tt><tt><br> - </tt> <tt>plot [[<plotname>] data xy|xyex|xyey|xyexey]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># existing plot</tt><tt><br> - </tt> <tt>plot</tt> <tt>[[<plotname>] load - <filename> xy|xyex|xyey|xyexey]</tt><tt><br> - </tt> <tt> [[<plotname>] save - <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] clear]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> [new name + <plotname>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [new name + <plotname> line|bar|scatter]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>#</tt><tt> </tt><tt>load data into + existing plot from stdin</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot [[<plotname>] data + xy|xyex|xyey|xyexey]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># existing plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot</tt><tt> </tt><tt>[[<plotname>] + + + + + load <filename> xy|xyex|xyey|xyexey]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] save <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] clear]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + duplicate [#]]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + stats yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + list yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + loadconfig <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] saveconfig - <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] pagesetup - orient portrait|landscape]</tt><tt><br> - </tt> <tt> [[<plotname>] pagesetup - size letter|legal|tabloid|poster|a4]</tt><tt><br> - </tt> <tt> [[<plotname>] print]</tt><tt><br> - </tt> <tt> [[<plotname>] print - destination printer|file]</tt><tt><br> - </tt> <tt> [[<plotname>] print - command <command>]</tt><tt><br> - </tt> <tt> [[<plotname>] print - filename <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] print - color rgb|gray]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] saveconfig <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] pagesetup orient portrait|landscape]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] pagesetup size + letter|legal|tabloid|poster|a4]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print destination printer|file]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print command <command>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print filename <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print color rgb|gray]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + close</tt><tt>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + mode pointer|zoom]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure graph</tt><tt><br> - </tt> <tt>plot [[<plotname>] axis x|y grid yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y - log yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y - flip yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y auto - yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y min - <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y max - <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y format - <string>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure graph</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot [[<plotname>] axis x|y + grid yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y log yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y flip yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y auto yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y min <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y max <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y format <string>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + legend yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] legend - position right|left|top|bottom]</tt><tt><br> - </tt> <tt> [[<plotname>] font - title|labels|numbers font times|helvetica|courier]</tt><tt><br> - </tt> <tt> [[<plotname>] font</tt> <tt>title|labels|numbers</tt> - <tt>size <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] font</tt> <tt>title|labels|numbers</tt> - <tt>weight normal|bold]</tt><tt><br> - </tt> <tt> [[<plotname>] font</tt> <tt>title|labels|numbers</tt> - <tt>slant roman|italic]</tt><tt><br> - </tt> <tt> [[<plotname>] title - <string>]</tt><tt><br> - </tt> <tt> [[<plotname>] title x|y - <string>]</tt><tt><br> - </tt> <tt> [</tt><tt>[<plotname>] + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] legend position right|left|top|bottom]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font title|labels|numbers font + times|helvetica|courier]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font</tt><tt> </tt><tt>title|labels|numbers</tt><tt> + </tt><tt>size <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font</tt><tt> </tt><tt>title|labels|numbers</tt><tt> + </tt><tt>weight normal|bold]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font</tt><tt> </tt><tt>title|labels|numbers</tt><tt> + </tt><tt>slant roman|italic]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] title <string>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] title x|y <string>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [</tt><tt>[<plotname>] + + + + + barmode normal|stacked|aligned|overlap]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure current dataset</tt><tt><br> - </tt> <tt>plot [[<plotname>] show yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] shape - circle|square|diamond|plus|splus|scross|triangle|arrow]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot [[<plotname>] show + yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + shape circle|square|diamond|plus|splus|scross|triangle|arrow]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + shape fill yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + shape color <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + smooth step|linear|cubic|quadratic|catrom]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + color <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + width <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + dash yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + error yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + error color <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] color - <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] color <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + error width <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + name <string>]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># select current dataset</tt><tt><br> - </tt> <tt>plot [[<plotname>] select <value>]</tt><tt><br> - </tt> <tt> </tt> <tt><br> - </tt> <tt>Example:</tt><tt><br> - </tt> <tt># return all plotnames</tt><tt><br> - </tt> <tt>string value = ds9.get(string cmd)</tt><tt><br> - </tt> <tt>plot</tt><tt><br> - </tt> <tt><br> - </tt> <tt># create new empty plot window</tt><tt><br> - </tt> <tt>ds9.set(string cmd)</tt><tt><br> - </tt> <tt>plot</tt><tt><br> - </tt> <tt>plot bar</tt><tt><br> - </tt> <tt>plot new</tt><tt><br> - </tt> <tt>plot new bar</tt><tt><br> - </tt> <tt>plot new name foo</tt><tt><br> - </tt> <tt>plot new name foo bar</tt><tt><br> - </tt> <tt><br> - </tt> <tt># load additional dataset into an existing plot</tt><tt><br> - </tt> <tt>ds9.set(string cmd, string url)</tt><tt><br> - </tt> <tt>plot data xy # plot additional data</tt><tt><br> - </tt> <tt>plot foo data xy # plot additional data</tt><tt><br> - </tt> <tt><br> - </tt> <tt>string value = ds9.get(string cmd)</tt><tt><br> - </tt> <tt>plot stats</tt><tt><br> - </tt> <tt>plot list</tt><tt><br> - </tt> <tt>ds9.set(string cmd)</tt><tt><br> - </tt> <tt>plot load foo.dat xy</tt><tt><br> - </tt> <tt>plot save foo.dat</tt><tt><br> - </tt> <tt>plot clear</tt><tt><br> - </tt> <tt>plot duplicate 1</tt><tt><br> - </tt> <tt>plot stats yes</tt><tt><br> - </tt> <tt>plot list yes</tt><tt><br> - </tt> <tt>plot loadconfig foo.plt</tt><tt><br> - </tt> <tt>plot saveconfig foo.plt</tt><tt><br> - </tt> <tt>plot pagesetup orient portrait</tt><tt><br> - </tt> <tt>plot pagesetup size letter</tt><tt><br> - </tt> <tt>plot print</tt><tt><br> - </tt> <tt>plot print destination file</tt><tt><br> - </tt> <tt>plot print command lp</tt><tt><br> - </tt> <tt>plot print filename foo.ps</tt><tt><br> - </tt> <tt>plot print color rgb</tt><tt><br> - </tt> <tt>plot close</tt><tt><br> - </tt> <tt><br> - </tt> <tt>string value = ds9.get(string cmd)</tt><tt><br> - </tt> <tt>plot mode</tt><tt><br> - </tt> <tt>ds9.set(string cmd)</tt><tt><br> - </tt> <tt>plot mode pointer</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure plot</tt><tt><br> - </tt> <tt>string value = ds9.get(string cmd)</tt><tt><br> - </tt> <tt>plot axis x grid</tt><tt><br> - </tt> <tt>plot axis x log</tt><tt><br> - </tt> <tt>plot axis x flip</tt><tt><br> - </tt> <tt>plot axis x auto</tt><tt><br> - </tt> <tt>plot axis x min</tt><tt><br> - </tt> <tt>plot axis x max</tt><tt><br> - </tt> <tt>plot axis x format</tt><tt><br> - </tt> <tt>plot legend</tt><tt><br> - </tt> <tt>plot legend position</tt><tt><br> - </tt> <tt>plot font numbers font</tt><tt><br> - </tt> <tt>plot font numbers size</tt><tt><br> - </tt> <tt>plot font numbers weight</tt><tt><br> - </tt> <tt>plot font numbers slant</tt><tt><br> - </tt> <tt>plot title</tt><tt><br> - </tt> <tt>plot title x</tt><tt><br> - </tt> <tt>plot barmode</tt><tt><br> - </tt> <tt>ds9.set(string cmd)</tt><tt><br> - </tt> <tt>plot axis x grid yes</tt><tt><br> - </tt> <tt>plot axis x log yes</tt><tt><br> - </tt> <tt>plot axis x flip yes</tt><tt><br> - </tt> <tt>plot axis x auto no</tt><tt><br> - </tt> <tt>plot axis x min 0</tt><tt><br> - </tt> <tt>plot axis x max 100</tt><tt><br> - </tt> <tt>plot axis x format "%f"</tt><tt><br> - </tt> <tt><br> - </tt> <tt>string value = ds9.get(string cmd)</tt><tt><br> - </tt> <tt>plot legend</tt><tt><br> - </tt> <tt>plot legend position</tt><tt><br> - </tt> <tt>ds9.set(string cmd)</tt><tt><br> - </tt> <tt>plot legend yes</tt><tt><br> - </tt> <tt>plot legend position left</tt><tt><br> - </tt> <tt><br> - </tt> <tt>string value = ds9.get(string cmd)</tt><tt><br> - </tt> <tt>plot font numbers font</tt><tt><br> - </tt> <tt>plot font numbers size</tt><tt><br> - </tt> <tt>plot font numbers weight</tt><tt><br> - </tt> <tt>plot font numbers slant</tt><tt><br> - </tt> <tt>ds9.set(string cmd)</tt><tt><br> - </tt> <tt>plot font numbers font times</tt><tt><br> - </tt> <tt>plot font numbers size 12</tt><tt><br> - </tt> <tt>plot font numbers weight bold</tt><tt><br> - </tt> <tt>plot font numbers slant italic</tt><tt><br> - </tt> <tt><br> - </tt> <tt>string value = ds9.get(string cmd)</tt><tt><br> - </tt> <tt>plot title</tt><tt><br> - </tt> <tt>plot title xaxis</tt><tt><br> - </tt> <tt>plot title yaxis</tt><tt><br> - </tt> <tt>ds9.set(string cmd)</tt><tt><br> - </tt> <tt>plot title "This is a Title"</tt><tt><br> - </tt> <tt>plot title x "X Axis"</tt><tt><br> - </tt> <tt>plot title y "Y Axis"</tt><tt><br> - </tt> <tt>plot title legend "This is the Legend"</tt><tt><br> - </tt> <tt><br> - </tt> <tt>string value = ds9.get(string cmd)</tt><tt><br> - </tt> <tt>plot barmode</tt><tt><br> - </tt> <tt>ds9.set(string cmd)</tt><tt><br> - </tt> <tt>plot barmode aligned</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure current dataset</tt><tt><br> - </tt> <tt>string value = ds9.get(string cmd)</tt><tt><br> - </tt> <tt>plot show</tt><tt><br> - </tt> <tt>plot shape</tt><tt><br> - </tt> <tt>plot shape fill</tt><tt><br> - </tt> <tt>plot shape color</tt><tt><br> - </tt> <tt>plot smooth</tt><tt><br> - </tt> <tt>plot color</tt><tt><br> - </tt> <tt>plot width</tt><tt><br> - </tt> <tt>plot dash</tt><tt><br> - </tt> <tt>plot error</tt><tt><br> - </tt> <tt>plot error color</tt><tt><br> - </tt> <tt>plot error width</tt><tt><br> - </tt> <tt>plot name</tt><tt><br> - </tt> <tt>ds9.set(string cmd)</tt><tt><br> - </tt> <tt>plot show yes</tt><tt><br> - </tt> <tt>plot shape circle</tt><tt><br> - </tt> <tt>plot shape fill no</tt><tt><br> - </tt> <tt>plot shape color cyan</tt><tt><br> - </tt> <tt>plot smooth step</tt><tt><br> - </tt> <tt>plot color red</tt><tt><br> - </tt> <tt>plot width 2</tt><tt><br> - </tt> <tt>plot dash yes</tt><tt><br> - </tt> <tt>plot error yes</tt><tt><br> - </tt> <tt>plot error color red</tt><tt><br> - </tt> <tt>plot error width 2</tt><tt><br> - </tt> <tt>plot name "My Data"</tt><tt><br> - </tt> <tt><br> - </tt> <tt># select current dataset</tt><tt><br> - </tt> <tt>string value = ds9.get(string cmd)</tt><tt><br> - </tt> <tt>plot select</tt><tt><br> - </tt> <tt>ds9.set(string cmd)<br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># select current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot [[<plotname>] select + <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>Example:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># return all plotnames</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># create new empty plot window</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot bar</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot new</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot new bar</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot new name foo</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot new name foo bar</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># load additional dataset into an + existing plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd, string url)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot data xy # plot additional data</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot foo data xy # plot additional + data</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot stats</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot list</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot load foo.dat xy</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot save foo.dat</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot clear</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot duplicate 1</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot stats yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot list yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot loadconfig foo.plt</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot saveconfig foo.plt</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot pagesetup orient portrait</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot pagesetup size letter</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot print</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot print destination file</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot print command lp</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot print filename foo.ps</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot print color rgb</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot close</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot mode</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot mode pointer</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x grid</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x log</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x flip</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x auto</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x min</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x max</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x format</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot legend</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot legend position</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers font</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers size</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers weight</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers slant</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot title</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot title x</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot barmode</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x grid yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x log yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x flip yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x auto no</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x min 0</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x max 100</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot axis x format "%f"</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot legend</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot legend position</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot legend yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot legend position left</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers font</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers size</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers weight</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers slant</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers font times</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers size 12</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers weight bold</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot font numbers slant italic</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot title</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot title xaxis</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot title yaxis</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot title "This is a Title"</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot title x "X Axis"</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot title y "Y Axis"</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot title legend "This is the + Legend"</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot barmode</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot barmode aligned</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot show</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot shape</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot shape fill</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot shape color</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot smooth</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot color</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot width</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot dash</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot error</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot error color</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot error width</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot name</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot show yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot shape circle</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot shape fill no</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot shape color cyan</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot smooth step</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot color red</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot width 2</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot dash yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot error yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot error color red</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot error width 2</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot name "My Data"</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># select current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot select</tt><tt><br> + </tt><tt> </tt><tt> ds9.set(string cmd)<br> plot select 2<br> <br> </tt> <b><a name="png" id="png"></a>png</b> <p>Load PNG image into current frame.<br> </p> - <tt>Syntax:<br> - png [new|slice] [<filename>]<br> - <br> - Example:<br> - </tt> <tt><tt>string value = ds9.get(string cmd)<br> - </tt> png</tt><br> - <tt><tt>ds9.set(string cmd)<br> - </tt> png foo.png</tt><br> - <tt><tt>png new foo.png<br> - </tt></tt> <tt><tt><tt>png slice foo.png<br> - </tt></tt> png</tt><br> - <tt><tt>png</tt> <tt>new<br> - </tt> png</tt> <tt>slice</tt><br> + <tt>Syntax:</tt><tt><br> + </tt><tt> png [new|slice] [<filename>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> png</tt><tt><br> + </tt><tt> </tt><tt>ds9.set(string cmd)</tt><tt><br> + </tt><tt> </tt><tt> png foo.png</tt><tt><br> + </tt><tt> </tt><tt>png new foo.png</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>png slice foo.png</tt><tt><br> + </tt><tt> </tt><tt> png</tt><tt><br> + </tt><tt> </tt><tt>png</tt><tt> </tt><tt>new</tt><tt><br> + </tt><tt> </tt><tt> png</tt><tt> </tt><tt>slice</tt><br> <p><b><a name="precision" id="precision"></a>precision</b></p> <p>Set region and coordinate output format precision.</p> <tt>Syntax:<br> @@ -2827,59 +3026,67 @@ <p>Support for VO Simple Image Access protocol. The first command will create a new search. All other commands operated on the last search created, unless indicated otherwise.</p> - <tt>Syntax:<br> - sia</tt> <tt><tt><tt>[2mass|akari|astrowise|cadc|cxc|mast|sdss|skyview|tgssadr</tt><tt>]</tt></tt><br> - <br> - </tt> <tt> </tt><tt> - [<ref>] [cancel]<br> - </tt> <tt> [<ref>] - [clear]<br> - </tt> <tt> [<ref>] [close]</tt><br> - <tt> [<ref>] - [coordinate <ra> <dec> <coordsys>]</tt><tt><br> - </tt> <tt> </tt> <tt>[<ref>] - [crosshair]</tt><br> - <tt> [<ref>] - [export sb|tsv <filename>]<br> - </tt> <tt> [<ref>] [name - <object>]<br> - </tt> <tt> [<ref>] [print]</tt><br> - <tt><tt> [<ref>] - [retrieve]</tt><br> - </tt> <tt> - [<ref>] [save <filename>]</tt><br> - <tt> [<ref>] [radius - <value> degrees|arcmin|arcsec]</tt><br> - <tt> [<ref>] [sky - <skyframe>]<br> - </tt> <tt> [<ref>] - [skyformat <skyformat>]<br> - </tt> <tt> [<ref>] - [system <coordsys>]</tt><tt><br> - </tt> <tt> </tt> <tt>[<ref>] - [update]</tt><br> - <tt><br> - Example:<br> - string value = ds9.get(string cmd)<br> - sia<br> - <br> - ds9.set(string cmd)<br> - sia</tt> <tt>2mass<br> - sia</tt> <tt>cancel<br> - sia</tt> <tt>clear<br> - sia</tt> <tt>close<br> - sia</tt> <tt>coordinate 202.48 47.21 fk5<br> - sia</tt> <tt>crosshair<br> - sia</tt> <tt>export tsv bar.tsv<br> - sia</tt> <tt>name m51<br> - sia</tt> <tt>print</tt><br> - <tt>sia</tt> <tt>retrieve<br> - sia</tt> <tt>save foo.xml<br> - sia</tt> <tt>radius 1degrees</tt><br> - <tt>sia</tt> <tt>sky fk5<br> - sia skyformat degrees<br> - sia</tt> <tt>system wcs</tt><tt><br> - sia</tt> <tt>update<br> + <tt>Syntax:</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>[2mass|akari|astrowise|cadc|cxc|mast|sdss|skyview|tgssadr</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + [<ref>] [cancel]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [clear]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [close]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [coordinate <ra> <dec> + <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + </tt><tt>[<ref>] [crosshair]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [export sb|tsv <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [name <object>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [print]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [retrieve]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + + + + + + [<ref>] [save <filename>]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] + [radius <value> degrees|arcmin|arcsec]</tt><tt><br> + </tt><tt> </tt><tt> + [<ref>] [sky <skyframe>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [skyformat <skyformat>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [<ref>] [system <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + </tt><tt> </tt><tt>[<ref>] [update]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> string value = ds9.get(string cmd)</tt><tt><br> + </tt><tt> sia</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> ds9.set(string cmd)</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>2mass</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>cancel</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>clear</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>close</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>coordinate 202.48 47.21 fk5</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>crosshair</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>export tsv bar.tsv</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>name m51</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>print</tt><tt><br> + </tt><tt> </tt><tt>sia</tt><tt> </tt><tt>retrieve</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>save foo.xml</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>radius 1degrees</tt><tt><br> + </tt><tt> </tt><tt>sia</tt><tt> </tt><tt>sky fk5</tt><tt><br> + </tt><tt> sia skyformat degrees</tt><tt><br> + </tt><tt> sia</tt><tt> </tt><tt>system wcs</tt><tt><br> + </tt><tt> sia</tt><tt> update<br> <br> </tt> <b><a name="single" id="single"></a>single</b> <p>Select Single Display mode</p> @@ -2965,15 +3172,35 @@ [radiusminor <value>]<br> </tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt> + + + + + [sigma <value>]<br> </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt> + + + + + [sigmaminor <value>]<br> </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt> [angle + + + + + <value>]<br> </tt></tt></tt></tt></tt></tt></tt></tt> <tt> + + + + + [match]<br> [lock [yes|no]]</tt><br> <tt><tt> [open|close]<br> @@ -2995,10 +3222,25 @@ </tt> <tt><tt>smooth radius 4<br> </tt></tt> <tt><tt><tt><tt><tt><tt>smooth radiusminor 4<br> </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt><tt>smooth + + + + + sigma 2.0<br> </tt></tt></tt></tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt><tt>smooth + + + + + sigmaminor 2.0<br> </tt></tt></tt></tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>smooth + + + + + angle 45<br> </tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt> smooth open<br> diff --git a/ds9/doc/ref/xpa.html b/ds9/doc/ref/xpa.html index 21d3ba7..c509dd9 100644 --- a/ds9/doc/ref/xpa.html +++ b/ds9/doc/ref/xpa.html @@ -207,6 +207,11 @@ </tt></tt></tt> <tt><tt><tt><tt><tt><tt>$xpaset -p ds9 3d compass color red</tt><br> </tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt>$xpaset + + + + + -p ds9 3d match</tt></tt></tt></tt></tt></tt></tt></tt><br> <tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>$xpaset -p ds9 3d lock yes</tt><br> @@ -445,6 +450,11 @@ [clear]<br> </tt> <tt> [<ref>] [close]</tt><br> <tt> </tt> <tt>[<ref>] + + + + + [crosshair]</tt><br> <tt> [<ref>] [dec <col>]</tt><br> @@ -464,16 +474,41 @@ [match]<br> </tt></tt> <tt><tt><tt> + + + + + [<ref>] [match <ref> <ref>]<br> </tt></tt> </tt> <tt>[<ref>] [match + + + + + error <value> degrees|arcmin|arcsec]</tt><br> <tt> </tt> <tt>[<ref>] + + + + + [match function 1and2|1not2|2not1]<br> </tt> <tt> </tt> <tt>[<ref>] + + + + + [match return 1and2|1only|2only]</tt><br> <tt> </tt> <tt>[<ref>] + + + + + [match unique yes|no]</tt><br> <tt> [<ref>] [maxrows <number>]</tt><br> @@ -522,7 +557,17 @@ </tt> <tt><tt>[<ref>] [symbol + + + + + shape</tt></tt> <tt><tt>circle point|box point|diamond point|</tt>cross + + + + + point|x point|arrow point|boxcircle point]<br> [<ref>] [symbol add| [#] remove]<br> @@ -531,6 +576,11 @@ <tt> [<ref>] [system <coordsys>]</tt><tt><br> </tt> <tt> </tt> <tt>[<ref>] + + + + + [update]</tt><br> <tt> [<ref>] [x <col>]</tt><br> @@ -671,17 +721,17 @@ [lock [yes|no]]</tt><br> </tt> <tt> </tt><br> - Example:<br> - $xpaget ds9 colorbar<br> - $xpaget ds9 colorbar orientation<br> - $xpaget ds9 colorbar numerics<br> - $xpaget ds9 colorbar space<br> - $xpaget ds9 colorbar font<br> - $xpaget ds9 colorbar fontsize<br> - $xpaget ds9 colorbar fontweight<br> - $xpaget ds9 colorbar fontslant<br> - $xpaget ds9 colorbar size<br> - $xpaget ds9 colorbar ticks<br> + <tt>Example:</tt><tt><br> + </tt><tt> $xpaget ds9 colorbar</tt><tt><br> + </tt><tt> $xpaget ds9 colorbar orientation</tt><tt><br> + </tt><tt> $xpaget ds9 colorbar numerics</tt><tt><br> + </tt><tt> $xpaget ds9 colorbar space</tt><tt><br> + </tt><tt> $xpaget ds9 colorbar font</tt><tt><br> + </tt><tt> $xpaget ds9 colorbar fontsize</tt><tt><br> + </tt><tt> $xpaget ds9 colorbar fontweight</tt><tt><br> + </tt><tt> $xpaget ds9 colorbar fontslant</tt><tt><br> + </tt><tt> $xpaget ds9 colorbar size</tt><tt><br> + </tt><tt> $xpaget ds9 colorbar ticks</tt><br> <tt><tt>$xpaget ds9 colorbar lock</tt><br> $xpaset -p ds9 colorbar yes<br> $xpaset -p ds9 colorbar vertical<br> @@ -786,7 +836,7 @@ $xpaset -p ds9 contour mode zscale<br> $xpaset -p ds9 contour scope local<br> $xpaset -p ds9 contour limits 1 100<br> - $xpaset -p ds9 contour levels {1 10 100 1000}<br> + $xpaset -p ds9 contour levels 1 10 100 1000<br> $xpaset -p ds9 contour open<br> $xpaset -p ds9 contour close<br> </tt> @@ -1039,21 +1089,29 @@ <p>Export loaded image data of current frame in specified image format. Optional parameters: array endian, nrrd endian, jpeg quality (1-100) and tiff compression method.</p> - <tt>Syntax:</tt> <tt><br> - </tt> <tt>export</tt> <tt>[array|nrrd|envi|gif|tiff|jpeg|png]</tt> - <tt><filename></tt><tt><br> - </tt> <tt>export array <filename></tt> <tt>[big|little</tt><tt>|native]<br> - </tt> <tt>export nrrd <filename></tt> <tt>[big|little</tt><tt>|native]</tt><tt><br> - export envi <header> [<filename>]</tt> <tt>[big|little</tt><tt>|native]</tt> - <tt><br> - export jpeg <filename></tt> <tt>[1-100]</tt><tt><br> - </tt> <tt>export tiff <filename</tt><tt>></tt> <tt>[none|jpeg|packbits|deflate]</tt><br> - <tt> <br> + <tt>Syntax:</tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>export</tt><tt> </tt><tt>[array|nrrd|envi|gif|tiff|jpeg|png]</tt><tt> + </tt><tt><filename></tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>export array <filename></tt><tt> + </tt><tt>[big|little</tt><tt>|native]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>export nrrd <filename></tt><tt> + </tt><tt>[big|little</tt><tt>|native]</tt><tt><br> + </tt><tt> export envi <header> [<filename>]</tt><tt> </tt><tt>[big|little</tt><tt>|native]</tt><tt> + </tt><tt><br> + </tt><tt> export jpeg <filename></tt><tt> </tt><tt>[1-100]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>export tiff <filename</tt><tt>></tt><tt> + </tt><tt>[none|jpeg|packbits|deflate]</tt><tt><br> + </tt><tt> <br> Example:<br> </tt> <tt><tt>$xpaset -p ds9 export array foo.arr little</tt></tt><br> <tt><tt>$xpaset -p ds9 export nrrd foo.nrrd little</tt></tt><br> <tt><tt><tt><tt><tt><tt>$xpaset -p ds9 export envi foo.hdr little</tt></tt><br> </tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>$xpaset + + + + + -p ds9 export envi foo.hdr foo.bsq little</tt></tt><br> </tt></tt></tt></tt> $xpaset -p ds9 export tiff foo.tiff jpeg</tt></tt></tt><br> @@ -1596,18 +1654,24 @@ <p>Controls mask parameters.</p> <tt>Syntax:<br> mask [color <color>]<br> - [mark 1|0]<br> + [mark zero|nonzero|nan|nonnan|range]<br> + [range <low> <high>]<br> [transparency <value>]<br> - [clear]<br> + </tt><tt><tt> [system <coordsys>]<br> + </tt> [clear]<br> [open|close]<br> <br> Example:<br> $xpaget ds9 mask color<br> $xpaget ds9 mask mark<br> + $xpaget ds9 mask range<br> + $xpaget ds9 mask system<br> $xpaget ds9 mask transparency<br> $xpaset -p ds9 mask color red<br> - $xpaset -p ds9 mask mark 0<br> + $xpaset -p ds9 mask mark zero<br> + $xpaset -p ds9 mask range 10 100<br> $xpaset -p ds9 mask transparency 50<br> + $xpaset -p ds9 mask system wcs<br> $xpaset -p ds9 mask clear<br> $xpaset -p ds9 mask open<br> $xpaset -p ds9 mask close<br> @@ -1685,19 +1749,21 @@ $xpaset -p ds9 mode crosshair</tt><br> <p><b><a name="mosaic" id="mosaic"></a>mosaic</b></p> <p>Load FITS mosaic segment into current frame.</p> - <tt>Syntax:<br> - mosaic [wcs|wcsa...wcsz|iraf] [new|mask] [<filename>]<br> - <br> - Example:<br> - $xpaget ds9 mosaic > foo.fits</tt><tt><br> - $xpaset -p ds9 mosaic foo.fits</tt><br> - <tt><tt>$xpaset -p ds9 mosaic wcs foo.fits</tt></tt><br> - <tt><tt>$xpaset -p ds9 mosaic wcs new foo.fits</tt></tt><br> - <tt><tt>$xpaset -p ds9 mosaic wcs mask foo.fits</tt></tt><tt><tt><tt><br> - </tt></tt> $cat foo.fits | xpaset ds9 mosaic</tt><br> - <tt><tt>$cat foo.fits | xpaset ds9 mosaic wcs<br> - $cat foo.fits | xpaset ds9 mosaic wcs</tt> <tt>new<br> - </tt> $cat foo.fits | xpaset ds9 mosaic wcs</tt> <tt>mask<br> + <tt>Syntax:</tt><tt><br> + </tt><tt> mosaic [wcs|wcsa...wcsz|iraf] [new|mask] + [<filename>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> $xpaget ds9 mosaic > foo.fits</tt><tt><br> + </tt><tt> $xpaset -p ds9 mosaic foo.fits</tt><tt><br> + </tt><tt> </tt><tt>$xpaset -p ds9 mosaic wcs foo.fits</tt><tt><br> + </tt><tt> </tt><tt>$xpaset -p ds9 mosaic wcs new foo.fits</tt><tt><br> + </tt><tt> </tt><tt>$xpaset -p ds9 mosaic wcs mask foo.fits</tt><tt><br> + </tt><tt> </tt><tt> $cat foo.fits | xpaset ds9 mosaic</tt><tt><br> + </tt><tt> </tt><tt>$cat foo.fits | xpaset ds9 mosaic wcs</tt><tt><br> + </tt><tt> $cat foo.fits | xpaset ds9 mosaic wcs</tt><tt> </tt><tt>new</tt><tt><br> + </tt><tt> </tt><tt> $cat foo.fits | xpaset ds9 mosaic wcs</tt><tt> + mask<br> </tt> <p><b><a name="mosaicimage" id="mosaicimage"></a>mosaicimage</b></p> <p>Load FITS mosaic image into current frame.</p> @@ -1789,20 +1855,19 @@ <p>Load an NRRD (Nearly Raw Raster Data) file. Optional parameter: array endian.<br> </p> - <tt>Syntax:<br> - nrrd [native|little|big]<br> - nrrd [new|mask] [<filename>]<br> - <br> - Example:<br> - $xpaget ds9 nrrd</tt><br> - <tt><tt>$xpaget ds9 nrrd big<br> - $xpaset -p ds9 nrrd foo.nrrd</tt></tt><br> - <tt><tt><tt><tt>$xpaset -p ds9 nrrd new foo.nrrd</tt></tt></tt></tt><br> - <tt><tt><tt><tt><tt><tt>$xpaset -p ds9 nrrd mask foo.nrrd<br> - </tt></tt></tt></tt></tt> $cat foo.nrrd | xpaset ds9 - nrrd</tt><br> - <tt>$cat foo.nrrd | xpaset ds9 nrrd</tt> <tt>new<br> - $cat foo.nrrd | xpaset ds9 nrrd mask</tt> + <tt>Syntax:</tt><tt><br> + </tt><tt> nrrd [native|little|big]</tt><tt><br> + </tt><tt> nrrd [new|mask] [<filename>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> $xpaget ds9 nrrd</tt><tt><br> + </tt><tt> </tt><tt>$xpaget ds9 nrrd big</tt><tt><br> + </tt><tt> $xpaset -p ds9 nrrd foo.nrrd</tt><tt><br> + </tt><tt> </tt><tt>$xpaset -p ds9 nrrd new foo.nrrd</tt><tt><br> + </tt><tt> </tt><tt>$xpaset -p ds9 nrrd mask foo.nrrd</tt><tt><br> + </tt><tt> </tt><tt> $cat foo.nrrd | xpaset ds9 nrrd</tt><tt><br> + </tt><tt> </tt><tt>$cat foo.nrrd | xpaset ds9 nrrd</tt><tt> </tt><tt>new</tt><tt><br> + </tt><tt> $cat foo.nrrd | xpaset ds9 nrrd mask</tt> <p><b><a name="nvss" id="nvss"></a>nvss</b></p> <p>Support for NRAO VLA Sky Survey.</p> <tt>Syntax:<br> @@ -1915,264 +1980,419 @@ </blockquote> <p>To create a new plot, use the plot new command.</p> <tt>Syntax:</tt><tt><br> - </tt> <tt># create new empty plot window</tt><tt><br> - </tt> <tt>plot []</tt><tt><br> - </tt> <tt> [line|bar|scatter]</tt><tt><br> - </tt> <tt> [new]</tt><tt><br> - </tt> <tt> [new line|bar|scatter]</tt><tt><br> - </tt> <tt> [new name <plotname>]</tt><tt><br> - </tt> <tt> [new name <plotname> + </tt><tt> </tt><tt> </tt><tt># create new empty plot window</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot []</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [line|bar|scatter]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [new]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [new line|bar|scatter]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># create new plot with data from stdin</tt><tt><br> - </tt> <tt>plot</tt> <tt>[new <title> <xaxis label> - <yaxis label></tt> <tt>xy|xyex|xyey|xyexey</tt><tt>]</tt><tt><br> - </tt> <tt> </tt> <tt>[new + </tt><tt> </tt><tt> </tt><tt> [new name + <plotname>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [new name + <plotname> line|bar|scatter]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># create new plot with data from + stdin</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot</tt><tt> </tt><tt>[new + <title> <xaxis label> <yaxis label></tt><tt> </tt><tt>xy|xyex|xyey|xyexey</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[new + + + + + [line|bar|scatter] <title> <xaxis label> <yaxis - label></tt> <tt>xy|xyex|xyey|xyexey</tt><tt>]</tt><tt><br> - </tt> <tt> </tt> <tt>[new</tt> <tt>name - <plotname></tt> <tt><title> <xaxis label> - <yaxis label></tt> <tt>xy|xyex|xyey|xyexey</tt><tt>]</tt><tt><br> - </tt> <tt> </tt> <tt>[new</tt> <tt>name - <plotname></tt> <tt>line|bar|scatter <title> - <xaxis label> <yaxis label></tt> <tt>xy|xyex|xyey|xyexey</tt><tt>]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># create new plot with data from stdin which includes - title/dim headers</tt><tt><br> - </tt> <tt>plot [new stdin</tt><tt>]</tt><tt><br> - </tt> <tt> </tt> <tt>[new</tt> <tt>[line|bar|scatter]</tt> - <tt>stdin</tt><tt>]</tt><tt><br> - </tt> <tt> </tt> <tt>[new name - <plotname> stdin</tt><tt>]</tt><tt><br> - </tt> <tt> </tt> <tt>[new name - <plotname></tt> <tt>line|bar|scatter</tt> <tt>stdin</tt><tt>]</tt><tt><br> - </tt> <tt><br> - </tt> <tt>#</tt> <tt>load data into existing plot from stdin</tt><tt><br> - </tt> <tt>plot [[<plotname>] data xy|xyex|xyey|xyexey]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># existing plot</tt><tt><br> - </tt> <tt>plot</tt> <tt>[[<plotname>] load - <filename> xy|xyex|xyey|xyexey]</tt><tt><br> - </tt> <tt> [[<plotname>] save - <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] clear]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + label></tt><tt> </tt><tt>xy|xyex|xyey|xyexey</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[new</tt><tt> + </tt><tt>name <plotname></tt><tt> </tt><tt><title> + <xaxis label> <yaxis label></tt><tt> </tt><tt>xy|xyex|xyey|xyexey</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[new</tt><tt> + </tt><tt>name <plotname></tt><tt> </tt><tt>line|bar|scatter + <title> <xaxis label> <yaxis label></tt><tt> </tt><tt>xy|xyex|xyey|xyexey</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># create new plot with data from + stdin which includes title/dim headers</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot [new stdin</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[new</tt><tt> + </tt><tt>[line|bar|scatter]</tt><tt> </tt><tt>stdin</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[new + + + + + name <plotname> stdin</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[new + + + + + name <plotname></tt><tt> </tt><tt>line|bar|scatter</tt><tt> + </tt><tt>stdin</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>#</tt><tt> </tt><tt>load data into + existing plot from stdin</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot [[<plotname>] data + xy|xyex|xyey|xyexey]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># existing plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot</tt><tt> </tt><tt>[[<plotname>] + + + + + load <filename> xy|xyex|xyey|xyexey]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] save <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] clear]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + duplicate [#]]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + stats yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + list yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + loadconfig <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] saveconfig - <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] pagesetup - orient portrait|landscape]</tt><tt><br> - </tt> <tt> [[<plotname>] pagesetup - size letter|legal|tabloid|poster|a4]</tt><tt><br> - </tt> <tt> [[<plotname>] print]</tt><tt><br> - </tt> <tt> [[<plotname>] print - destination printer|file]</tt><tt><br> - </tt> <tt> [[<plotname>] print - command <command>]</tt><tt><br> - </tt> <tt> [[<plotname>] print - filename <filename>]</tt><tt><br> - </tt> <tt> [[<plotname>] print - color rgb|gray]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] saveconfig <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] pagesetup orient portrait|landscape]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] pagesetup size + letter|legal|tabloid|poster|a4]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print destination printer|file]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print command <command>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print filename <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] print color rgb|gray]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + close</tt><tt>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + mode pointer|zoom]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure graph</tt><tt><br> - </tt> <tt>plot [[<plotname>] axis x|y grid yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y - log yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y - flip yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y auto - yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y min - <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y max - <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] axis x|y format - <string>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure graph</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot [[<plotname>] axis x|y + grid yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y log yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y flip yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y auto yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y min <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y max <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] axis x|y format <string>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + legend yes|no]</tt><tt><br> - </tt> <tt> [[<plotname>] legend - position right|left|top|bottom]</tt><tt><br> - </tt> <tt> [[<plotname>] font - title|labels|numbers font times|helvetica|courier]</tt><tt><br> - </tt> <tt> [[<plotname>] font</tt> <tt>title|labels|numbers</tt> - <tt>size <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] font</tt> <tt>title|labels|numbers</tt> - <tt>weight normal|bold]</tt><tt><br> - </tt> <tt> [[<plotname>] font</tt> <tt>title|labels|numbers</tt> - <tt>slant roman|italic]</tt><tt><br> - </tt> <tt> [[<plotname>] title - <string>]</tt><tt><br> - </tt> <tt> [[<plotname>] title x|y - <string>]</tt><tt><br> - </tt> <tt> [</tt><tt>[<plotname>] + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] legend position right|left|top|bottom]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font title|labels|numbers font + times|helvetica|courier]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font</tt><tt> </tt><tt>title|labels|numbers</tt><tt> + </tt><tt>size <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font</tt><tt> </tt><tt>title|labels|numbers</tt><tt> + </tt><tt>weight normal|bold]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] font</tt><tt> </tt><tt>title|labels|numbers</tt><tt> + </tt><tt>slant roman|italic]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] title <string>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] title x|y <string>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [</tt><tt>[<plotname>] + + + + + barmode normal|stacked|aligned|overlap]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure current dataset</tt><tt><br> - </tt> <tt>plot [[<plotname>] show yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] shape - circle|square|diamond|plus|splus|scross|triangle|arrow]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot [[<plotname>] show + yes|no]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + shape circle|square|diamond|plus|splus|scross|triangle|arrow]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + shape fill yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + shape color <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + smooth step|linear|cubic|quadratic|catrom]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + color <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + width <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + dash yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + error yes|no]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + error color <value>]</tt><tt><br> - </tt> <tt> [[<plotname>] color - <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> + [[<plotname>] color <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + error width <value>]</tt><tt><br> - </tt> <tt> </tt> <tt>[[<plotname>] + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[[<plotname>] + + + + + name <string>]</tt><tt><br> - </tt> <tt><br> - </tt> <tt># select current dataset</tt><tt><br> - </tt> <tt>plot [[<plotname>] select <value>]</tt><tt><br> - </tt> <tt> </tt><tt><br> - </tt> <tt>Example:</tt><tt><br> - </tt> <tt># return all plotnames</tt><tt><br> - </tt> <tt>$xpaget ds9 plot</tt><tt><br> - </tt> <tt><br> - </tt> <tt># create new empty plot window</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot bar</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot new</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot new bar</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot new name foo</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot new name foo bar</tt><tt><br> - </tt> <tt><br> - </tt> <tt># create new plot with data from stdin</tt><tt><br> - </tt> <tt>$cat xy.dat | xpaset ds9 plot new {The Title} {X Axis} - {Y Axis} xy</tt><tt><br> - </tt> <tt>$cat xy.dat | xpaset ds9 plot new bar {The Title} {X - Axis} {Y Axis} xy</tt><tt><br> - </tt> <tt>$cat xy.dat | xpaset ds9 plot new name foo {The Title} - {X Axis} {Y Axis} xy</tt><tt><br> - </tt> <tt>$cat xy.dat | xpaset ds9 plot new name foo bar {The - Title} {X Axis} {Y Axis} xy</tt><tt><br> - </tt> <tt><br> - </tt> <tt># create new plot with data from stdin which includes - title/dim headers</tt><tt><br> - </tt> <tt>$cat stdin.2.dat | xpaset ds9 plot new stdin</tt><tt><br> - </tt> <tt>$cat stdin.2.dat | xpaset ds9 plot new line stdin</tt><tt><br> - </tt> <tt>$cat stdin.2.dat | xpaset ds9 plot new name foo stdin</tt><tt><br> - </tt> <tt>$cat stdin.2.dat | xpaset ds9 plot new name foo line + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># select current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>plot [[<plotname>] select + <value>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>Example:</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># return all plotnames</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># create new empty plot window</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot bar</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot new</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot new bar</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot new name foo</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot new name foo + bar</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># create new plot with data from stdin</tt><tt><br> - </tt> <tt><br> - </tt> <tt>#</tt> <tt>load data into existing plot from stdin</tt><tt><br> - </tt> <tt>$cat xy.dat | xpaset ds9 plot data xy</tt><tt><br> - </tt> <tt>$cat xy.dat | xpaset ds9 plot foo data xy</tt><tt><br> - </tt> <tt><br> - </tt> <tt># existing plot</tt><tt><br> - </tt> <tt>$xpaget ds9 plot stats</tt><tt><br> - </tt> <tt>$xpaget ds9 plot list</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot load xy.dat xy</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot save foo.dat</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot clear</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot duplicate 1</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot stats yes</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot list yes</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot loadconfig foo.plt</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot saveconfig foo.plt</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot pagesetup orient portrait</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot pagesetup size letter</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot print</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot print destination file</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot print command lp</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot print filename foo.ps</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot print color rgb</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot close</tt><tt><br> - </tt> <tt>$xpaget ds9 plot mode</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot mode pointer</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure plot</tt><tt><br> - </tt> <tt>$xpaget ds9 plot axis x grid</tt><tt><br> - </tt> <tt>$xpaget ds9 plot axis x log</tt><tt><br> - </tt> <tt>$xpaget ds9 plot axis x flip</tt><tt><br> - </tt> <tt>$xpaget ds9 plot axis x auto</tt><tt><br> - </tt> <tt>$xpaget ds9 plot axis x min</tt><tt><br> - </tt> <tt>$xpaget ds9 plot axis x max</tt><tt><br> - </tt> <tt>$xpaget ds9 plot axis x format</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot axis x grid yes</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot axis x log yes</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot axis x flip yes</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot axis x auto no</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot axis x min 1</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot axis x max 100</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot axis x format {%f}</tt><tt><br> - </tt> <tt><br> - </tt> <tt>$xpaget ds9 plot legend</tt><tt><br> - </tt> <tt>$xpaget ds9 plot legend position</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot legend yes</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot legend position left</tt><tt><br> - </tt> <tt><br> - </tt> <tt>$xpaget ds9 plot font numbers font</tt><tt><br> - </tt> <tt>$xpaget ds9 plot font numbers size</tt><tt><br> - </tt> <tt>$xpaget ds9 plot font numbers weight</tt><tt><br> - </tt> <tt>$xpaget ds9 plot font numbers slant</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot font numbers font times</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot font numbers size 12</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot font numbers weight bold</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot font numbers slant italic</tt><tt><br> - </tt> <tt><br> - </tt> <tt>$xpaget ds9 plot title</tt><tt><br> - </tt> <tt>$xpaget ds9 plot title xaxis</tt><tt><br> - </tt> <tt>$xpaget ds9 plot title yaxis</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot title {This is a Title}</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot title x {X Axis}</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot title y {Y Axis}</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot title legend {This is the Legend}</tt><tt><br> - </tt> <tt><br> - </tt> <tt>$xpaget ds9 plot barmode</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot barmode aligned</tt><tt><br> - </tt> <tt><br> - </tt> <tt># configure current dataset</tt><tt><br> - </tt> <tt>$xpaget ds9 plot show</tt><tt><br> - </tt> <tt>$xpaget ds9 plot shape</tt><tt><br> - </tt> <tt>$xpaget ds9 plot shape fill</tt><tt><br> - </tt> <tt>$xpaget ds9 plot shape color</tt><tt><br> - </tt> <tt>$xpaget ds9 plot smooth</tt><tt><br> - </tt> <tt>$xpaget ds9 plot color</tt><tt><br> - </tt> <tt>$xpaget ds9 plot width</tt><tt><br> - </tt> <tt>$xpaget ds9 plot dash</tt><tt><br> - </tt> <tt>$xpaget ds9 plot error</tt><tt><br> - </tt> <tt>$xpaget ds9 plot error color</tt><tt><br> - </tt> <tt>$xpaget ds9 plot error width</tt><tt><br> - </tt> <tt>$xpaget ds9 plot name</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot show yes</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot shape circle</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot shape fill no</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot shape color cyan</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot smooth step</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot color red</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot width 2</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot dash yes</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot error yes</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot error color red</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot error width 2</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot name {My Data}</tt><tt><br> - </tt> <tt><br> - </tt> <tt># select current dataset</tt><tt><br> - </tt> <tt>$xpaget ds9 plot select</tt><tt><br> - </tt> <tt>$xpaset -p ds9 plot select 2</tt><br> + </tt><tt> </tt><tt> </tt><tt>$cat xy.dat | xpaset ds9 plot new + {The Title} {X Axis} {Y Axis} xy</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$cat xy.dat | xpaset ds9 plot new + bar {The Title} {X Axis} {Y Axis} xy</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$cat xy.dat | xpaset ds9 plot new + name foo {The Title} {X Axis} {Y Axis} xy</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$cat xy.dat | xpaset ds9 plot new + name foo bar {The Title} {X Axis} {Y Axis} xy</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># create new plot with data from + stdin which includes title/dim headers</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$cat stdin.2.dat | xpaset ds9 plot + new stdin</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$cat stdin.2.dat | xpaset ds9 plot + new line stdin</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$cat stdin.2.dat | xpaset ds9 plot + new name foo stdin</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$cat stdin.2.dat | xpaset ds9 plot + new name foo line stdin</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>#</tt><tt> </tt><tt>load data into + existing plot from stdin</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$cat xy.dat | xpaset ds9 plot data + xy</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$cat xy.dat | xpaset ds9 plot foo + data xy</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># existing plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot stats</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot list</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot load xy.dat xy</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot save foo.dat</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot clear</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot duplicate 1</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot stats yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot list yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot loadconfig + foo.plt</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot saveconfig + foo.plt</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot pagesetup + orient portrait</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot pagesetup size + letter</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot print</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot print + destination file</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot print command + lp</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot print filename + foo.ps</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot print color rgb</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot close</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot mode</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot mode pointer</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure plot</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot axis x grid</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot axis x log</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot axis x flip</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot axis x auto</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot axis x min</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot axis x max</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot axis x format</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot axis x grid yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot axis x log yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot axis x flip yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot axis x auto no</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot axis x min 1</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot axis x max 100</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot axis x format + {%f}</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot legend</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot legend position</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot legend yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot legend position + left</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot font numbers font</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot font numbers size</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot font numbers + weight</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot font numbers slant</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot font numbers + font times</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot font numbers + size 12</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot font numbers + weight bold</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot font numbers + slant italic</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot title</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot title xaxis</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot title yaxis</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot title {This is + a Title}</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot title x {X + Axis}</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot title y {Y + Axis}</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot title legend + {This is the Legend}</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot barmode</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot barmode aligned</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># configure current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot show</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot shape</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot shape fill</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot shape color</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot smooth</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot color</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot width</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot dash</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot error</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot error color</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot error width</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot name</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot show yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot shape circle</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot shape fill no</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot shape color + cyan</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot smooth step</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot color red</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot width 2</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot dash yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot error yes</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot error color red</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot error width 2</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot name {My Data}</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt># select current dataset</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaget ds9 plot select</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 plot select 2</tt><br> <p><b><a name="png" id="png"></a>png</b></p> <p>Load PNG image into current frame.<br> </p> @@ -2236,8 +2456,7 @@ [filename <filename>]<br> [color rgb|cmyk|gray]<br> [level 1|2|3]<br> - [resolution - 72|screen|96|144|150|225|300|600|1200]<br> + [resolution 72|screen|96|144|150|225|300|600|1200]<br> <br> Example:<br> $xpaget ds9 print destination<br> @@ -2544,16 +2763,16 @@ <p><b><a name="rgbimage" id="rgbimage"></a>rgbimage</b></p> <p>Load FITS rgbimage into rgb frame.<br> </p> - <tt>Syntax:<br> - rgbimage [new] [<filename>]<br> - <br> - Example:<br> - $xpaget ds9 rgbimage > foo.fits<br> - $xpaset -p ds9 rgbimage foo.fits</tt><br> - <tt><tt>$xpaset -p ds9 rgbimage new foo.fits<br> - </tt> $cat foo.fits | xpaset ds9 rgbimage</tt><br> - <tt>$cat foo.fits | xpaset ds9 rgbimage</tt> <tt>new<br> - </tt> + <tt>Syntax:</tt><tt><br> + </tt><tt> rgbimage [new] [<filename>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> $xpaget ds9 rgbimage > foo.fits</tt><tt><br> + </tt><tt> $xpaset -p ds9 rgbimage foo.fits</tt><tt><br> + </tt><tt> </tt><tt>$xpaset -p ds9 rgbimage new foo.fits</tt><tt><br> + </tt><tt> </tt><tt> $cat foo.fits | xpaset ds9 rgbimage</tt><tt><br> + </tt><tt> </tt><tt>$cat foo.fits | xpaset ds9 rgbimage</tt><tt> </tt><tt>new</tt><tt><br> + </tt><tt> </tt><tt> </tt> <p><b><a name="rotate" id="rotate"></a>rotate</b></p> <p>Controls the rotation angle (in degrees) of the current frame.</p> <tt>Syntax:<br> @@ -2684,29 +2903,47 @@ <p>Support for VO Simple Image Access protocol. The first command will create a new search. All other commands operated on the last search created, unless indicated otherwise.</p> - <tt>Syntax:<br> - sia [2mass|akari|astrowise|cadc|cxc|mast|sdss|skyview|tgssadr</tt><tt>]<br> - <br> - </tt> <tt> </tt><tt> [<ref>] [cancel]<br> - </tt> <tt> [<ref>] [clear]<br> - </tt> <tt> [<ref>] [close]</tt><br> - <tt> [<ref>] [coordinate <ra> - <dec> <coordsys>]</tt><tt><br> - </tt> <tt> </tt> <tt>[<ref>] [crosshair]</tt><br> - <tt> [<ref>] [export sb|tsv - <filename>]<br> - </tt> <tt> [<ref>] [name <object>]<br> - </tt> <tt> [<ref>] [print]</tt><br> - <tt> [<ref>] [retrieve]</tt><br> - <tt> [<ref>] [save <filename>]</tt><br> - <tt> [<ref>] [radius <value> - degrees|arcmin|arcsec]</tt><br> - <tt> [<ref>] [sky <skyframe>]<br> - </tt> <tt> [<ref>] [skyformat - <skyformat>]<br> - </tt> <tt> [<ref>] [system - <coordsys>]</tt><tt><br> - </tt> <tt> </tt> <tt>[<ref>] [update]</tt><br> + <tt>Syntax:</tt><tt><br> + </tt><tt> sia + [2mass|akari|astrowise|cadc|cxc|mast|sdss|skyview|tgssadr</tt><tt>]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> + [<ref>] [cancel]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [<ref>] + [clear]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [<ref>] + [close]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] [coordinate + <ra> <dec> <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[<ref>] + + + + + [crosshair]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] [export + sb|tsv <filename>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [<ref>] + [name <object>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [<ref>] + [print]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] [retrieve]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] [save + <filename>]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] [radius + <value> degrees|arcmin|arcsec]</tt><tt><br> + </tt><tt> </tt><tt> [<ref>] [sky + <skyframe>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [<ref>] + [skyformat <skyformat>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> [<ref>] + [system <coordsys>]</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt> </tt><tt> </tt><tt>[<ref>] + + + + + [update]</tt><br> <tt><br> Example:<br> $xpaget ds9 sia<br> @@ -2808,15 +3045,35 @@ [radiusminor <value>]<br> </tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt> + + + + + [sigma <value>]<br> </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt> + + + + + [sigmaminor <value>]<br> </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt> [angle + + + + + <value>]<br> </tt></tt></tt></tt></tt></tt></tt></tt> <tt> + + + + + [match]<br> [lock [yes|no]]</tt><br> <tt><tt> [open|close]<br> @@ -2828,6 +3085,11 @@ </tt></tt> <tt><tt>$xpaget ds9 smooth radiusminor<br> </tt></tt> <tt><tt><tt><tt><tt><tt>$xpaget ds9 smooth sigma<br> </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt><tt>$xpaget + + + + + ds9 smooth sigmaminor<br> </tt></tt></tt></tt></tt></tt></tt></tt> $xpaget ds9 smooth lock<br> @@ -2838,10 +3100,25 @@ </tt></tt> <tt><tt><tt><tt><tt><tt>$xpaset -p ds9 smooth radiusminor 4<br> </tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt><tt>$xpaset + + + + + -p ds9 smooth sigma 2.0<br> </tt></tt></tt></tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt><tt>$xpaset + + + + + -p ds9 smooth sigmaminor 2.0<br> </tt></tt></tt></tt></tt></tt></tt></tt></tt> <tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt><tt>$xpaset + + + + + -p ds9 smooth angle 45<br> </tt></tt></tt></tt></tt></tt></tt></tt></tt></tt></tt> $xpaset -p ds9 smooth match<br> @@ -2880,21 +3157,22 @@ <p><b><a name="tiff" id="tiff"></a>tiff</b></p> <p>Load TIFF image into current frame. Optional parameters: <tt>tiff</tt> compression method.</p> - <tt>Syntax:<br> - tiff [new|slice] [<filename>] [none|jpeg|packbits|deflate]<br> - <br> - Example:<br> - $xpaget ds9 tiff > foo.tiff</tt><br> - <tt><tt>$xpaget ds9 tiff jpeg > foo.tiff</tt><br> - $xpaset -p ds9 tiff foo.tiff</tt><br> - <tt><tt>$xpaset -p ds9 tiff new foo.tiff<br> - </tt></tt> <tt><tt><tt>$xpaset -p ds9 tiff slice foo.tiff<br> - </tt></tt> $cat foo.tiff | xpaset ds9 tiff</tt> <tt><tt><tt># - not available windows</tt></tt></tt><br> - <tt><tt>$cat foo.tiff | xpaset ds9 tiff</tt> <tt>new</tt></tt> <tt><tt><tt><tt># - not available windows</tt></tt><br> - </tt> $cat foo.tiff | xpaset ds9 tiff</tt> <tt>slice</tt> <tt><tt><tt># - not available windows</tt></tt></tt> + <tt>Syntax:</tt><tt><br> + </tt><tt> tiff [new|slice] [<filename>] + [none|jpeg|packbits|deflate]</tt><tt><br> + </tt><tt> </tt><tt><br> + </tt><tt> Example:</tt><tt><br> + </tt><tt> $xpaget ds9 tiff > foo.tiff</tt><tt><br> + </tt><tt> </tt><tt>$xpaget ds9 tiff jpeg > foo.tiff</tt><tt><br> + </tt><tt> $xpaset -p ds9 tiff foo.tiff</tt><tt><br> + </tt><tt> </tt><tt>$xpaset -p ds9 tiff new foo.tiff</tt><tt><br> + </tt><tt> </tt><tt> </tt><tt>$xpaset -p ds9 tiff slice foo.tiff</tt><tt><br> + </tt><tt> </tt><tt> $cat foo.tiff | xpaset ds9 tiff</tt><tt> </tt><tt># + not available windows</tt><tt><br> + </tt><tt> </tt><tt>$cat foo.tiff | xpaset ds9 tiff</tt><tt> </tt><tt>new</tt><tt> + </tt><tt># not available windows</tt><tt><br> + </tt><tt> </tt><tt> $cat foo.tiff | xpaset ds9 tiff</tt><tt> </tt><tt>slice</tt><tt> + </tt><tt># not available windows</tt> <p><b><a name="tile" id="tile"></a>tile</b></p> <p>Controls the tile display mode.</p> <tt>Syntax:<br> @@ -3092,7 +3370,6 @@ $xpaset -p ds9 vlss update frame<br> $xpaset -p ds9 vlss open<br> </tt> <tt>$xpaset -p ds9 vlss close</tt><br> - <br> <p><b><a name="vo" id="vo"></a>vo</b></p> <p>Invoke an connection to a Virtual Observatory site.</p> <tt>Syntax:<br> @@ -3243,7 +3520,7 @@ $xpaset -p ds9 zoom to 2 4<br> $xpaset -p ds9 zoom in<br> $xpaset -p ds9 zoom out<br> - <$xpaset -p ds9 zoom to fit<br> + $xpaset -p ds9 zoom to fit<br> $xpaset -p ds9 zoom open<br> $xpaset -p ds9 zoom close<br> </tt></blockquote> diff --git a/ds9/doc/release/r8.1.html b/ds9/doc/release/r8.1.html new file mode 100644 index 0000000..fe0558c --- /dev/null +++ b/ds9/doc/release/r8.1.html @@ -0,0 +1,46 @@ +<!DOCTYPE doctype PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> +<html> +<head> +<meta name="generator" content= +"HTML Tidy for Mac OS X (vers 31 October 2006 - Apple Inc. build 15.18.1), see www.w3.org"> +<meta http-equiv="Content-Type" content= +"text/html; charset=us-ascii"> +<meta name="GENERATOR" content= +"Mozilla/4.78 [en] (X11; U; Linux 2.4.7-10 i686) [Netscape]"> +<title>DS9 Version 8.1 Release Notes</title> +</head> +<body vlink="#551A8B" text="#000000" link="#0000EE" bgcolor= +"#FFFFFF" alink="#FF0000"> +<h3><img alt="" src="../sun.gif" width="100" height="98" align= +"middle"> SAOImageDS9 Version 8.0 Release Notes</h3> +<div style="margin-left: 2em"> +<ol> +<li><tt>10.29.2018 BLOCK: all supported WCSs now updated to reflect blocking.</tt></li> +<li><tt>10.30.2018 WFPC2: fixed an issue with blocking and WFPC2 images.</tt></li> +<li><tt>11.06.2018 SAVEIMAGE: all supported WCSs now updated to reflect current rotation, orientation, pan, and zoom.</tt></li> +<li><tt>11.26.2018 TCL/TK: updated to version 8.6.9.</tt></li> +<li><tt>12.07.2018 CONTOUR: merge old and new contour parsers so that regardless of file extension, the file will be correctly parsed.</tt></li> +<li><tt>12.10.2018 CONTOUR: LEVELS command now takes one numeric in addition to a string.</tt></li> +<li><tt>12.14.2018 GRID: add checks to avoid NULL pointers in cases of odd WCS defs.</tt></li> +<li><tt>12.14.2018 BINNING: bring forward any 3rd column WCS defines for binned 3d cubes.</tt></li> +<li><tt>12.14.2018 PLOT3D: verify 3D WCS, reset to IMAGE if not available.</tt></li> +<li><tt>12.19.2018 SAVEIMAGE: is now supported under Windows.</tt></li> +<li><tt>12.26.2018 VIEW: fixed view graph command.</tt></li> +<li><tt>12.27.2018 TCLIIS: update TEA to 3.13.</tt></li> +<li><tt>12.27.2018 TKSAO: update TEA to 3.13.</tt></li> +<li><tt>12.29.2018 TKMACOSX: update TEA to 3.13.</tt></li> +<li><tt>12.29.2018 TKWIN: update TEA to 3.13.</tt></li> +<li><tt>12.29.2018 TCLSIGNAL: update TEA to 3.13.</tt></li> +<li><tt>12.29.2018 TCLXML: update TEA to 3.13.</tt></li> +<li><tt>12.29.2018 TCLZVFS: update TEA to 3.13.</tt></li> +<li><tt>12.29.2018 TKBLT: update TEA to 3.13.</tt></li> +<li><tt>12.29.2018 TLS: update TEA to 3.13.</tt></li> +<li><tt>01.03.2019 DS9: fixed a problem with MacOS Aqua and Windows unable to locate ds9 parser scripts at startup.</tt></li> +<li><tt>01.03.2019 SCALE: fixed scale command.</tt></li> +<li><tt>01.03.2019 PRINT: add backward compatible options for resolution to command.</tt></li> +<li><tt>01.03.2019 TILE: fix tile grid layout command.</tt></li> +<li><tt><b>xx.xx.2018 RELEASE version 8.1b1</b></tt></li> +</ol> +</div> +</body> +</html> diff --git a/ds9/library/catdialog.tcl b/ds9/library/catdialog.tcl index 09acc5f..bc4562e 100644 --- a/ds9/library/catdialog.tcl +++ b/ds9/library/catdialog.tcl @@ -525,7 +525,7 @@ proc CATDialogUpdate {varname} { $var(mb).file entryconfig [msgcat::mc {Plot}] -state disabled $var(mb).file entryconfig "[msgcat::mc {Display Header}]..." \ -state disabled - $var(mb).file entryconfig [msgcat::mc {Copy to Regions}] -stat disabled + $var(mb).file entryconfig [msgcat::mc {Copy to Regions}] -state disabled $var(mb).file entryconfig "[msgcat::mc {Print}]..." -state disabled $var(top).buttons.filter configure -state disabled diff --git a/ds9/library/command.tcl b/ds9/library/command.tcl index 525c032..6fd1e53 100644 --- a/ds9/library/command.tcl +++ b/ds9/library/command.tcl @@ -555,7 +555,7 @@ proc CommandLineLoadBase {item argvname iname} { MultiLoad $file(layer) switch -- $file(mosaic) { iraf {LoadMosaicImageIRAFFile $item $file(layer)} - wfpc2 {LoadMosaicImageWFPC2File $item} + wfpc2 {LoadMosaicImageWFPC2File $item $file(layer)} default {LoadMosaicImageWCSFile $item $file(layer) $file(mosaic)} } } @@ -647,7 +647,7 @@ proc CommandLineLoadRGB {item argvname iname} { mosaicimage { switch -- $file(mosaic) { iraf {LoadMosaicImageIRAFFile $item {}} - wfpc2 {LoadMosaicImageWFPC2File $item} + wfpc2 {LoadMosaicImageWFPC2File $item {}} default {LoadMosaicImageWCSFile $item {} $file(mosaic)} } } @@ -734,7 +734,7 @@ proc CommandLineLoad3D {item argvname iname} { MultiLoad switch -- $file(mosaic) { iraf {LoadMosaicImageIRAFFile $item {}} - wfpc2 {LoadMosaicImageWFPC2File $item} + wfpc2 {LoadMosaicImageWFPC2File $item {}} default {LoadMosaicImageWCSFile $item {} $file(mosaic)} } } diff --git a/ds9/library/contour.tcl b/ds9/library/contour.tcl index 44e32b9..e737695 100644 --- a/ds9/library/contour.tcl +++ b/ds9/library/contour.tcl @@ -832,7 +832,6 @@ proc ContourLoadNewDialog {fn} { proc Contour2Polygons {} { global current - global contour if {$current(frame) != {}} { $current(frame) contour create polygon diff --git a/ds9/library/ds9.tcl b/ds9/library/ds9.tcl index 9954af1..6f05a58 100644 --- a/ds9/library/ds9.tcl +++ b/ds9/library/ds9.tcl @@ -13,9 +13,9 @@ proc DS9Def {} { } # Must be major,minor - set ds9(version) {8.0} + set ds9(version) {8.1} # For display purposes only - set ds9(version,display) {8.0.1} + set ds9(version,display) {8.1b1} set ds9(top) . set ds9(mb) .mb @@ -207,7 +207,7 @@ switch $ds9(wm) { source $ds9(root)/tcl8/8.5/msgcat-1.5.2.tm } if {![namespace exists http]} { - source $ds9(root)/tcl8/8.6/http-2.8.12.tm + source $ds9(root)/tcl8/8.6/http-2.9.0.tm source $ds9(root)/library/htp.tcl } diff --git a/ds9/library/help.tcl b/ds9/library/help.tcl index 11c95aa..dff8bc7 100644 --- a/ds9/library/help.tcl +++ b/ds9/library/help.tcl @@ -12,7 +12,7 @@ proc HelpDef {} { set help(command) "$ds9(root)/doc/ref/command.html" set help(userman) "$ds9(root)/doc/user/index.html" set help(faq) "$ds9(root)/doc/faq.html" - set help(release) "$ds9(root)/doc/release/r8.0.html" + set help(release) "$ds9(root)/doc/release/r8.1.html" set help(helpdesk) "$ds9(root)/doc/helpdesk.html" set help(story) "$ds9(root)/doc/story.html" set help(ack) "$ds9(root)/doc/acknowledgment.html" diff --git a/ds9/library/manalysis.tcl b/ds9/library/manalysis.tcl index df282c0..cc49586 100644 --- a/ds9/library/manalysis.tcl +++ b/ds9/library/manalysis.tcl @@ -335,8 +335,10 @@ proc UpdateAnalysisMenu {} { if {$ds9(active,num) > 0} { $ds9(mb) entryconfig [msgcat::mc {Analysis}] -state normal + ConfigureButtons analysis normal } else { $ds9(mb) entryconfig [msgcat::mc {Analysis}] -state disabled + ConfigureButtons analysis disabled } if {$current(frame) != {}} { diff --git a/ds9/library/marker.tcl b/ds9/library/marker.tcl index a618fd3..38dfb0d 100644 --- a/ds9/library/marker.tcl +++ b/ds9/library/marker.tcl @@ -1014,6 +1014,18 @@ proc MarkerDeleteAll {} { UpdateEditMenu } +proc MarkerDeleteLoad {} { + global pds9 + + if {$pds9(confirm)} { + if {[tk_messageBox -type okcancel -icon question -message [msgcat::mc {Delete All Regions?}]] != {ok}} { + return + } + } + MarkerDeleteAll + MarkerLoad +} + proc MarkerColor {} { global current global marker diff --git a/ds9/library/markeranalysisplot3d.tcl b/ds9/library/markeranalysisplot3d.tcl index e26dd0b..2b93cbc 100644 --- a/ds9/library/markeranalysisplot3d.tcl +++ b/ds9/library/markeranalysisplot3d.tcl @@ -144,6 +144,11 @@ proc MarkerAnalysisPlot3dCB {frame id} { set vvar(method) average } + # sanity check + if {![$frame has wcs 3d $vvar(system)]} { + set vvar(system) image + } + set xdata ${vvarname}x set ydata ${vvarname}y global $xdata $ydata diff --git a/ds9/library/mask.tcl b/ds9/library/mask.tcl index 58036b4..3015a99 100644 --- a/ds9/library/mask.tcl +++ b/ds9/library/mask.tcl @@ -12,8 +12,11 @@ proc MaskDef {} { set imask(top) .msk set imask(mb) .mskmb + set mask(system) physical set mask(color) red - set mask(mark) 1 + set mask(mark) nonzero + set mask(low) 0 + set mask(high) 0 set mask(transparency) 0 array set pmask [array get mask] @@ -25,6 +28,17 @@ proc MaskMark {} { if {$current(frame) != {}} { $current(frame) mask mark $mask(mark) + # for backward compatibility + set mask(mark) [$current(frame) get mask mark] + } +} + +proc MaskRange {} { + global mask + global current + + if {$current(frame) != {}} { + $current(frame) mask range $mask(low) $mask(high) } } @@ -46,6 +60,15 @@ proc MaskTransparency {} { } } +proc MaskSystem {} { + global mask + global current + + if {$current(frame) != {}} { + $current(frame) mask system $mask(system) + } +} + proc MaskClear {} { global current @@ -90,25 +113,21 @@ proc MaskDialog {} { $mb.file add command -label [msgcat::mc {Close}] -command MaskDestroyDialog menu $mb.file.open - $mb.file.open add command \ - -label "[msgcat::mc {Mosaic WCS}]..." \ + $mb.file.open add command -label "[msgcat::mc {Mosaic WCS}]..." \ -command [list OpenDialog mosaicimagewcs mask] - $mb.file.open add command \ - -label "[msgcat::mc {Mosaic WCS Segment}]..." \ + $mb.file.open add command -label "[msgcat::mc {Mosaic WCS Segment}]..." \ -command [list OpenDialog mosaicwcs mask] - $mb.file.open add command \ - -label "[msgcat::mc {Mosaic IRAF}]..." \ + $mb.file.open add command -label "[msgcat::mc {Mosaic IRAF}]..." \ -command [list OpenDialog mosaicimageiraf mask] - $mb.file.open add command \ - -label "[msgcat::mc {Mosaic IRAF Segment}]..." \ + $mb.file.open add command -label "[msgcat::mc {Mosaic IRAF Segment}]..." \ -command [list OpenDialog mosaiciraf mask] + $mb.file.open add command -label "[msgcat::mc {Mosaic WFPC2}]..." \ + -command [list OpenDialog mosaicimagewfpc2 mask] menu $mb.file.import - $mb.file.import add command \ - -label "[msgcat::mc {Array}]..." \ + $mb.file.import add command -label "[msgcat::mc {Array}]..." \ -command [list ImportDialog array mask] - $mb.file.import add command \ - -label "[msgcat::mc {NRRD}]..." \ + $mb.file.import add command -label {NRRD} \ -command [list ImportDialog nrrd mask] EditMenu $mb imask @@ -166,6 +185,10 @@ proc UpdateMaskMenu {} { set mask(color) [$current(frame) get mask color] set mask(mark) [$current(frame) get mask mark] + set range [$current(frame) get mask range] + set mask(low) [lindex $range 0] + set mask(high) [lindex $range 1] + set mask(system) [$current(frame) get mask system] set mask(transparency) [$current(frame) get mask transparency] switch -- [$current(frame) get type] { @@ -190,6 +213,8 @@ proc MaskLoad {} { if {$rr} { $current(frame) mask color $mask(color) $current(frame) mask mark $mask(mark) + $current(frame) mask range $mask(low) $mask(high) + $current(frame) mask system $mask(system) } } return $rr @@ -204,23 +229,43 @@ proc MaskParamsDialog {} { set ed(ok) 0 set ed(color) $mask(color) set ed(mark) $mask(mark) + set ed(low) $mask(low) + set ed(high) $mask(high) DialogCreate $w [msgcat::mc {Mask Parameters}] ed(ok) # Param set f [ttk::frame $w.param] + ttk::label $f.coordtitle -text [msgcat::mc {Coordinate System}] + CoordMenuButton $f.coordbutton mask system 1 {} {} {} + ttk::label $f.colortitle -text [msgcat::mc {Color}] ColorMenuButton $f.colorbutton ed color {} - ttk::label $f.marktitle -text [msgcat::mc {Block}] - ttk::radiobutton $f.markz -text [msgcat::mc {Zero}] \ - -variable ed(mark) -value 0 - ttk::radiobutton $f.marknz -text [msgcat::mc {Non-zero}] \ - -variable ed(mark) -value 1 - ttk::label $f.marktitle2 -text [msgcat::mc {Value}] - grid $f.colortitle $f.colorbutton - -padx 2 -pady 2 -sticky w - grid $f.marktitle $f.markz $f.marknz $f.marktitle2 -padx 2 -pady 2 -sticky w + ttk::label $f.marktitle -text [msgcat::mc {Block Pixel}] + set mb $f.markbutton.menu + ttk::menubutton $f.markbutton -textvariable ed(mark) -menu $mb + menu $mb + $mb add radiobutton -label [msgcat::mc {Zero}] \ + -variable ed(mark) -value zero + $mb add radiobutton -label [msgcat::mc {Non-Zero}] \ + -variable ed(mark) -value nonzero + $mb add radiobutton -label [msgcat::mc {NAN}] \ + -variable ed(mark) -value nan + $mb add radiobutton -label [msgcat::mc {Non-NAN}] \ + -variable ed(mark) -value nonnan + $mb add radiobutton -label [msgcat::mc {Range}] \ + -variable ed(mark) -value range + + ttk::label $f.rangetitle -text [msgcat::mc {Range}] + ttk::entry $f.low -textvariable ed(low) -width 13 + ttk::entry $f.high -textvariable ed(high) -width 13 + + grid $f.coordtitle $f.coordbutton -padx 2 -pady 2 -sticky w + grid $f.colortitle $f.colorbutton -padx 2 -pady 2 -sticky w + grid $f.marktitle $f.markbutton -padx 2 -pady 2 -sticky w + grid $f.rangetitle $f.low $f.high -padx 2 -pady 2 -sticky w # Buttons set f [ttk::frame $w.buttons] @@ -243,6 +288,8 @@ proc MaskParamsDialog {} { if {$ed(ok)} { set mask(color) [string tolower $ed(color)] set mask(mark) $ed(mark) + set mask(low) $ed(low) + set mask(high) $ed(high) } set rr $ed(ok) @@ -253,6 +300,7 @@ proc MaskParamsDialog {} { proc MaskBackup {ch which} { puts $ch "$which mask color [$which get mask color]" puts $ch "$which mask mark [$which get mask mark]" + puts $ch "$which mask range [$which get mask range]" puts $ch "$which mask transparency [$which get mask transparency]" } @@ -264,6 +312,8 @@ proc ProcessMaskCmd {varname iname} { global parse set parse(result) {} + MaskDialog + mask::YY_FLUSH_BUFFER mask::yy_scan_string [lrange $var $i end] mask::yyparse diff --git a/ds9/library/mbin.tcl b/ds9/library/mbin.tcl index 9ada431..a0c8afd 100644 --- a/ds9/library/mbin.tcl +++ b/ds9/library/mbin.tcl @@ -323,11 +323,14 @@ proc UpdateBinMenu {} { if {[$current(frame) has fits]} { if {[$current(frame) has fits bin]} { $ds9(mb) entryconfig [msgcat::mc {Bin}] -state normal + ConfigureButtons bin normal } else { $ds9(mb) entryconfig [msgcat::mc {Bin}] -state disabled + ConfigureButtons bin disabled } } else { $ds9(mb) entryconfig [msgcat::mc {Bin}] -state normal + ConfigureButtons bin normal } set bin(function) [$current(frame) get bin function] @@ -336,6 +339,7 @@ proc UpdateBinMenu {} { set bin(buffersize) [$current(frame) get bin buffer size] } else { $ds9(mb) entryconfig [msgcat::mc {Bin}] -state disabled + ConfigureButtons bin disabled } } diff --git a/ds9/library/menu.tcl b/ds9/library/menu.tcl index b51626f..122ee06 100644 --- a/ds9/library/menu.tcl +++ b/ds9/library/menu.tcl @@ -658,3 +658,12 @@ proc PrefsDialogMenu {} { PrefsDialogHelpMenu $w.menu } +proc ConfigureButtons {menu state} { + global ds9 + global pbuttons + + foreach aa [array names pbuttons "$menu,*"] { + set bb [lindex [split $aa {,}] 1] + $ds9(buttons).$menu.$bb configure -state $state + } +} diff --git a/ds9/library/mosaicimagewfpc2.tcl b/ds9/library/mosaicimagewfpc2.tcl index fcedc97..f98c596 100644 --- a/ds9/library/mosaicimagewfpc2.tcl +++ b/ds9/library/mosaicimagewfpc2.tcl @@ -4,22 +4,20 @@ package provide DS9 1.0 -proc LoadMosaicImageWFPC2File {fn} { +proc LoadMosaicImageWFPC2File {fn layer} { global loadParam set loadParam(file,type) fits set loadParam(file,mode) {mosaic image wfpc2} set loadParam(load,type) mmapincr set loadParam(file,name) $fn - - # mask not supported - set loadParam(load,layer) {} + set loadParam(load,layer) $layer ConvertFitsFile ProcessLoad } -proc LoadMosaicImageWFPC2Alloc {path fn} { +proc LoadMosaicImageWFPC2Alloc {path fn layer} { global loadParam set loadParam(file,type) fits @@ -27,14 +25,12 @@ proc LoadMosaicImageWFPC2Alloc {path fn} { set loadParam(load,type) allocgz set loadParam(file,name) $fn set loadParam(file,fn) $path - - # mask not supported - set loadParam(load,layer) {} + set loadParam(load,layer) $layer ProcessLoad } -proc LoadMosaicImageWFPC2Socket {sock fn} { +proc LoadMosaicImageWFPC2Socket {sock fn layer} { global loadParam set loadParam(file,type) fits @@ -42,9 +38,7 @@ proc LoadMosaicImageWFPC2Socket {sock fn} { set loadParam(load,type) socketgz set loadParam(file,name) $fn set loadParam(socket,id) $sock - - # mask not supported - set loadParam(load,layer) {} + set loadParam(load,layer) $layer return [ProcessLoad 0] } @@ -63,21 +57,21 @@ proc ProcessMosaicImageWFPC2Cmd {varname iname sock fn} { incr i [expr $mosaicimagewfpc2::yycnt-1] } -proc MosaicImageWFPC2CmdLoad {param} { +proc MosaicImageWFPC2CmdLoad {param layer} { global parse if {$parse(sock) != {}} { # xpa - if {![LoadMosaicImageWFPC2Socket $parse(sock) $param]} { + if {![LoadMosaicImageWFPC2Socket $parse(sock) $param $layer]} { InitError xpa - LoadMosaicImageWFPC2File $param + LoadMosaicImageWFPC2File $param $layer } } else { # comm if {$parse(fn) != {}} { - LoadMosaicImageWFPC2Alloc $parse(fn) $param + LoadMosaicImageWFPC2Alloc $parse(fn) $param $layer } else { - LoadMosaicImageWFPC2File $param + LoadMosaicImageWFPC2File $param $layer } } FinishLoad diff --git a/ds9/library/mregion.tcl b/ds9/library/mregion.tcl index 1035d02..08a1539 100644 --- a/ds9/library/mregion.tcl +++ b/ds9/library/mregion.tcl @@ -39,6 +39,11 @@ proc RegionMainMenu {} { $ds9(mb).region add command -label [msgcat::mc {Move to Back}] \ -command MarkerBack $ds9(mb).region add separator + $ds9(mb).region add command -label [msgcat::mc {New Group}] \ + -command GroupCreate + $ds9(mb).region add command -label "[msgcat::mc {Groups}]..." \ + -command GroupDialog + $ds9(mb).region add separator $ds9(mb).region add command -label [msgcat::mc {Select All}] \ -command MarkerSelectAll -accelerator "${ds9(ctrl)}A" $ds9(mb).region add command -label [msgcat::mc {Select None}] \ @@ -51,15 +56,14 @@ proc RegionMainMenu {} { $ds9(mb).region add command -label [msgcat::mc {Delete All Regions}] \ -command MarkerDeleteAllMenu $ds9(mb).region add separator - $ds9(mb).region add command -label [msgcat::mc {New Group}] \ - -command GroupCreate - $ds9(mb).region add command -label "[msgcat::mc {Groups}]..." \ - -command GroupDialog - $ds9(mb).region add separator $ds9(mb).region add command -label "[msgcat::mc {List Regions}]..." \ -command MarkerList $ds9(mb).region add command -label "[msgcat::mc {Load Regions}]..." \ -command MarkerLoad + $ds9(mb).region add command \ + -label "[msgcat::mc {Delete and Load Regions}]..." \ + -command MarkerDeleteLoad + $ds9(mb).region add separator $ds9(mb).region add command -label "[msgcat::mc {Save Regions}]..." \ -command MarkerSave $ds9(mb).region add separator @@ -712,7 +716,9 @@ proc ButtonsRegionDef {} { region,group 0 region,list 1 region,load 1 + region,deleteload 0 region,save 1 + region,mask 0 region,show 0 region,showtext 0 region,autocentroid 0 @@ -820,9 +826,15 @@ proc CreateButtonsRegion {} { [string tolower [msgcat::mc {List}]] MarkerList ButtonButton $ds9(buttons).region.load \ [string tolower [msgcat::mc {Load}]] MarkerLoad + ButtonButton $ds9(buttons).region.deleteload \ + [string tolower [msgcat::mc {Delete Load}]] MarkerDeleteLoad + ButtonButton $ds9(buttons).region.save \ [string tolower [msgcat::mc {Save}]] MarkerSave + ButtonButton $ds9(buttons).region.mask \ + [string tolower [msgcat::mc {Mask}]] MarkerMask + CheckButton $ds9(buttons).region.show \ [string tolower [msgcat::mc {Show}]] \ marker(show) MarkerShow @@ -869,7 +881,9 @@ proc CreateButtonsRegion {} { $ds9(buttons).region.group pbuttons(region,group) $ds9(buttons).region.list pbuttons(region,list) $ds9(buttons).region.load pbuttons(region,load) + $ds9(buttons).region.deleteload pbuttons(region,deleteload) $ds9(buttons).region.save pbuttons(region,save) + $ds9(buttons).region.mask pbuttons(region,mask) $ds9(buttons).region.show pbuttons(region,show) $ds9(buttons).region.showtext pbuttons(region,showtext) $ds9(buttons).region.autocentroid pbuttons(region,autocentroid) @@ -932,6 +946,10 @@ proc PrefsDialogButtonbarRegion {f} { $m add checkbutton -label "[msgcat::mc {Load Regions}]..." \ -variable pbuttons(region,load) \ -command {UpdateButtons buttons(region)} + $m add checkbutton -label "[msgcat::mc {Delete and Load Regions}]..." \ + -variable pbuttons(region,deleteload) \ + -command {UpdateButtons buttons(region)} + $m add separator $m add checkbutton -label "[msgcat::mc {Save Regions}]..." \ -variable pbuttons(region,save) \ -command {UpdateButtons buttons(region)} @@ -1035,8 +1053,12 @@ proc UpdateRegionMenu {} { global pmarker global ds9 + set mm $ds9(mb).region + set bb $ds9(buttons).region + if {$current(frame) != {}} { $ds9(mb) entryconfig [msgcat::mc {Region}] -state normal + ConfigureButtons region normal set marker(show) [$current(frame) get marker show] set marker(show,text) [$current(frame) get marker show text] @@ -1097,7 +1119,114 @@ proc UpdateRegionMenu {} { } } } + + if {[$current(frame) has fits]} { + $mm entryconfig "[msgcat::mc {Get Information}]..." -state normal + + $mm entryconfig [msgcat::mc {Composite Region}] -state normal + $mm entryconfig [msgcat::mc {Instrument FOV}] -state normal + $mm entryconfig [msgcat::mc {Template}] -state normal + + $mm entryconfig [msgcat::mc {Centroid}] -state normal + $mm entryconfig [msgcat::mc {Move to Front}] -state normal + $mm entryconfig [msgcat::mc {Move to Back}] -state normal + + $mm entryconfig [msgcat::mc {New Group}] -state normal + $mm entryconfig "[msgcat::mc {Groups}]..." -state normal + + $mm entryconfig [msgcat::mc {Select All}] -state normal + $mm entryconfig [msgcat::mc {Select None}] -state normal + $mm entryconfig [msgcat::mc {Invert Selection}] -state normal + + $mm entryconfig [msgcat::mc {Delete Selected Regions}] -state normal + $mm entryconfig [msgcat::mc {Delete All Regions}] -state normal + + $mm entryconfig "[msgcat::mc {List Regions}]..." -state normal + $mm entryconfig "[msgcat::mc {Load Regions}]..." -state normal + $mm entryconfig "[msgcat::mc {Delete and Load Regions}]..." -state normal + $mm entryconfig "[msgcat::mc {Save Regions}]..." -state normal + + $bb.info configure -state normal + + $bb.create configure -state normal + $bb.dissolve configure -state normal + + $bb.loadtemplate configure -state normal + $bb.savetemplate configure -state normal + + $bb.centroid configure -state normal + $bb.front configure -state normal + $bb.back configure -state normal + + $bb.newgroup configure -state normal + $bb.group configure -state normal + + $bb.all configure -state normal + $bb.none configure -state normal + $bb.invert configure -state normal + + $bb.delete configure -state normal + $bb.deleteall configure -state normal + + $bb.list configure -state normal + $bb.load configure -state normal + $bb.deleteload configure -state normal + $bb.save configure -state normal + } else { + $mm entryconfig "[msgcat::mc {Get Information}]..." -state disabled + + $mm entryconfig [msgcat::mc {Composite Region}] -state disabled + $mm entryconfig [msgcat::mc {Instrument FOV}] -state disabled + $mm entryconfig [msgcat::mc {Template}] -state disabled + + $mm entryconfig [msgcat::mc {Centroid}] -state disabled + $mm entryconfig [msgcat::mc {Move to Front}] -state disabled + $mm entryconfig [msgcat::mc {Move to Back}] -state disabled + + $mm entryconfig [msgcat::mc {New Group}] -state disabled + $mm entryconfig "[msgcat::mc {Groups}]..." -state disabled + + $mm entryconfig [msgcat::mc {Select All}] -state disabled + $mm entryconfig [msgcat::mc {Select None}] -state disabled + $mm entryconfig [msgcat::mc {Invert Selection}] -state disabled + + $mm entryconfig [msgcat::mc {Delete Selected Regions}] -state disabled + $mm entryconfig [msgcat::mc {Delete All Regions}] -state disabled + + $mm entryconfig "[msgcat::mc {List Regions}]..." -state disabled + $mm entryconfig "[msgcat::mc {Load Regions}]..." -state disabled + $mm entryconfig "[msgcat::mc {Delete and Load Regions}]..." -state disabled + $mm entryconfig "[msgcat::mc {Save Regions}]..." -state disabled + + $bb.info configure -state disabled + + $bb.create configure -state disabled + $bb.dissolve configure -state disabled + + $bb.loadtemplate configure -state disabled + $bb.savetemplate configure -state disabled + + $bb.centroid configure -state disabled + $bb.front configure -state disabled + $bb.back configure -state disabled + + $bb.newgroup configure -state disabled + $bb.group configure -state disabled + + $bb.all configure -state disabled + $bb.none configure -state disabled + $bb.invert configure -state disabled + + $bb.delete configure -state disabled + $bb.deleteall configure -state disabled + + $bb.list configure -state disabled + $bb.load configure -state disabled + $bb.deleteload configure -state disabled + $bb.save configure -state disabled + } } else { $ds9(mb) entryconfig [msgcat::mc {Region}] -state disabled + ConfigureButtons region disabled } } diff --git a/ds9/library/mscale.tcl b/ds9/library/mscale.tcl index 564d027..ce5b50f 100644 --- a/ds9/library/mscale.tcl +++ b/ds9/library/mscale.tcl @@ -395,6 +395,7 @@ proc UpdateScaleMenu {} { if {$current(frame) != {}} { if {![$current(frame) has iis]} { $ds9(mb) entryconfig [msgcat::mc {Scale}] -state normal + ConfigureButtons scale normal set scale(type) [$current(frame) get colorscale] set scale(log) [$current(frame) get colorscale log] @@ -433,9 +434,11 @@ proc UpdateScaleMenu {} { } else { $ds9(mb) entryconfig [msgcat::mc {Scale}] -state disabled + ConfigureButtons scale disabled } } else { $ds9(mb) entryconfig [msgcat::mc {Scale}] -state disabled + ConfigureButtons scale disabled } } diff --git a/ds9/library/mwcs.tcl b/ds9/library/mwcs.tcl index b9c6755..e9b0c6c 100644 --- a/ds9/library/mwcs.tcl +++ b/ds9/library/mwcs.tcl @@ -29,6 +29,7 @@ proc UpdateWCSMenu {} { if {$current(frame) != {}} { $ds9(mb) entryconfig [msgcat::mc {WCS}] -state normal + ConfigureButtons wcs normal set ww [$current(frame) get wcs] set wcs(system) [lindex $ww 0] @@ -44,6 +45,7 @@ proc UpdateWCSMenu {} { LayoutWCSInfoBox $current(frame) } else { $ds9(mb) entryconfig [msgcat::mc {WCS}] -state disabled + ConfigureButtons wcs disabled } } diff --git a/ds9/library/mzoom.tcl b/ds9/library/mzoom.tcl index 1c7829b..a1235c8 100644 --- a/ds9/library/mzoom.tcl +++ b/ds9/library/mzoom.tcl @@ -384,8 +384,10 @@ proc UpdateZoomMenu {} { if {$ds9(active,num) > 0} { $ds9(mb) entryconfig [msgcat::mc {Zoom}] -state normal + ConfigureButtons zoom normal } else { $ds9(mb) entryconfig [msgcat::mc {Zoom}] -state disabled + ConfigureButtons zoom disabled } if {$current(frame) == {}} { diff --git a/ds9/library/nsvr.tcl b/ds9/library/nsvr.tcl index b4430c2..e7192ce 100644 --- a/ds9/library/nsvr.tcl +++ b/ds9/library/nsvr.tcl @@ -31,7 +31,7 @@ proc NSVRServer {varname} { vizier {append ${varname}(url) {/V}} } - set var(query) [http::formatQuery $var(name)] + set var(query) [http::mapReply $var(name)] NSVRGetURL $varname $var(url) } diff --git a/ds9/library/open.tcl b/ds9/library/open.tcl index d7d789b..0a45453 100644 --- a/ds9/library/open.tcl +++ b/ds9/library/open.tcl @@ -13,7 +13,7 @@ proc Open {fn format layer mode sys} { fits {LoadFitsFile $fn $layer $mode} mosaicimagewcs {LoadMosaicImageWCSFile $fn $layer $sys} mosaicimageiraf {LoadMosaicImageIRAFFile $fn $layer} - mosaicimagewfpc2 {LoadMosaicImageWFPC2File $fn} + mosaicimagewfpc2 {LoadMosaicImageWFPC2File $fn $layer} mosaicwcs {LoadMosaicWCSFile $fn $layer $sys} mosaiciraf {LoadMosaicIRAFFile $fn $layer} mecube {LoadMECubeFile $fn} diff --git a/ds9/library/saveimage.tcl b/ds9/library/saveimage.tcl index cf6b240..ba421a2 100644 --- a/ds9/library/saveimage.tcl +++ b/ds9/library/saveimage.tcl @@ -31,8 +31,8 @@ proc SaveImageDef {} { default {set saveimage(error) $aa} } } - aqua - - win32 {set saveimage(error) $cc} + aqua {set saveimage(error) $cc} + win32 {set saveimage(error) $aa} } } @@ -117,11 +117,11 @@ proc SaveImagePhoto {fn format} { switch $ds9(wm) { x11 {} - aqua - - win32 { + aqua { Error $saveimage(error) return } + win32 {} } set rr [catch {image create photo -format window -data $ds9(canvas)} ph] diff --git a/ds9/library/stdfbox.tcl b/ds9/library/stdfbox.tcl index a7998d8..ba40183 100644 --- a/ds9/library/stdfbox.tcl +++ b/ds9/library/stdfbox.tcl @@ -50,6 +50,19 @@ proc InitDialogBox {} { [list {FITS} {*.fits.z}] \ ] + global maskfbox + set maskfbox(file) {mask.fits} + set maskfbox(dir) {} + set maskfbox(types) [list \ + [list {FITS} {*.fits}] \ + [list {FITS} {*.fit}] \ + [list {FITS} {*.fts}] \ + [list {FITS} {*.fits.gz}] \ + [list {FITS} {*.fits.bz2}] \ + [list {FITS} {*.fits.Z}] \ + [list {FITS} {*.fits.z}] \ + ] + global epsfbox set epsfbox(file) {ds9.eps} set epsfbox(dir) {} diff --git a/ds9/macos/SAOImageDS9.app/Contents/Info.plist b/ds9/macos/SAOImageDS9.app/Contents/Info.plist index 8da42ae..cd4d125 100644 --- a/ds9/macos/SAOImageDS9.app/Contents/Info.plist +++ b/ds9/macos/SAOImageDS9.app/Contents/Info.plist @@ -35,7 +35,7 @@ <key>CFBundleExecutable</key> <string>ds9</string> <key>CFBundleGetInfoString</key> - <string>"SAOImageDS9 8.0.1 + <string>"SAOImageDS9 8.1b1 Copyright 1999-2018 Smithsonian Astrophysical Observatory"</string> <key>CFBundleIconFile</key> @@ -49,11 +49,11 @@ Smithsonian Astrophysical Observatory"</string> <key>CFBundlePackageType</key> <string>APPL</string> <key>CFBundleShortVersionString</key> - <string>8.0.1</string> + <string>8.1b1</string> <key>CFBundleSignature</key> <string>DS9</string> <key>CFBundleVersion</key> - <string>8.0.1</string> + <string>8.1b1</string> <key>NSHighResolutionCapable</key> <string>True</string> <key>LSMinimumSystemVersion</key> diff --git a/ds9/macos/configure b/ds9/macos/configure index 4f4bd03..56d1405 100755 --- a/ds9/macos/configure +++ b/ds9/macos/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for ds9 8.0. +# Generated by GNU Autoconf 2.69 for ds9 8.1. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -577,8 +577,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='ds9' PACKAGE_TARNAME='ds9' -PACKAGE_VERSION='8.0' -PACKAGE_STRING='ds9 8.0' +PACKAGE_VERSION='8.1' +PACKAGE_STRING='ds9 8.1' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -621,14 +621,6 @@ ac_includes_default="\ ac_subst_vars='LTLIBOBJS LIBOBJS TCLSH_PROG -PRACTCL_NAME_LIBRARY -PRACTCL_VC_MANIFEST_EMBED_EXE -PRACTCL_VC_MANIFEST_EMBED_DLL -PRACTCL_STUB_LIB -PRACTCL_STATIC_LIB -PRACTCL_SHARED_LIB -PRACTCL_TOOLSET -PRACTCL_CFLAGS VC_MANIFEST_EMBED_EXE VC_MANIFEST_EMBED_DLL RANLIB_STUB @@ -642,7 +634,6 @@ CFLAGS_DEFAULT LD_LIBRARY_PATH_VAR SHLIB_CFLAGS SHLIB_LD_LIBS -SHLIB_SUFFIX SHLIB_LD STLIB_LD CFLAGS_WARNING @@ -658,17 +649,10 @@ XMKMF TK_INCLUDES TCL_INCLUDES SSLLIBS -MATH_LIBS EGREP GREP RANLIB SET_MAKE -INSTALL_LIBRARY -INSTALL_SCRIPT -INSTALL_PROGRAM -INSTALL_DATA -INSTALL_DATA_DIR -INSTALL CPP tktable_STUB_LIB_PATH tktable_STUB_LIB_SPEC @@ -830,7 +814,6 @@ tifftcl_LIB_FILE tifftcl_SRC_DIR tifftcl_BIN_DIR tifftcl_VERSION -PRACTCL_WINDOWINGSYSTEM TK_XINCLUDES TK_LIBS TK_STUB_LIB_SPEC @@ -864,6 +847,12 @@ TCL_SRC_DIR TCL_BIN_DIR TCL_PATCH_LEVEL TCL_VERSION +INSTALL_LIBRARY +INSTALL_SCRIPT +INSTALL_PROGRAM +INSTALL_DATA +INSTALL_DATA_DIR +INSTALL PKG_CFLAGS PKG_LIBS PKG_INCLUDES @@ -875,7 +864,6 @@ PKG_STUB_LIB_FILE PKG_LIB_FILE EXEEXT CYGPATH -TEA_TK_EXTENSION target_alias host_alias build_alias @@ -951,7 +939,6 @@ enable_rpath enable_wince with_celib enable_symbols -with_tclsh ' ac_precious_vars='build_alias host_alias @@ -1503,7 +1490,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures ds9 8.0 to adapt to many kinds of systems. +\`configure' configures ds9 8.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1568,7 +1555,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of ds9 8.0:";; + short | recursive ) echo "Configuration of ds9 8.1:";; esac cat <<\_ACEOF @@ -1576,7 +1563,7 @@ Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-threads build with threads + --enable-threads build with threads (default: on) --enable-shared build and link with shared libraries (default: on) --enable-stubs build and link with stub libraries. Always true for shared builds (default: on) @@ -1616,7 +1603,6 @@ Optional Packages: --with-tkinclude directory containing the public Tk header files --with-x use the X Window System --with-celib=DIR use Windows/CE support library from DIR - --with-tclsh Specify a local tcl shell to use for dynamic code Some influential environment variables: CC C compiler command @@ -1695,7 +1681,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -ds9 configure 8.0 +ds9 configure 8.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1969,98 +1955,11 @@ $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_func - -# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES -# ------------------------------------------------------- -# Tests whether HEADER exists, giving a warning if it cannot be compiled using -# the include files in INCLUDES and setting the cache variable VAR -# accordingly. -ac_fn_c_check_header_mongrel () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if eval \${$3+:} false; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -else - # Is the header compilable? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 -$as_echo_n "checking $2 usability... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -#include <$2> -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_header_compiler=yes -else - ac_header_compiler=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 -$as_echo_n "checking $2 presence... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <$2> -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - ac_header_preproc=yes -else - ac_header_preproc=no -fi -rm -f conftest.err conftest.i conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( - yes:no: ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; - no:yes:* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; -esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - eval "$3=\$ac_header_compiler" -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_header_mongrel cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by ds9 $as_me 8.0, which was +It was created by ds9 $as_me 8.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2416,35 +2315,25 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu #-------------------------------------------------------------------- - # TEA extensions pass this us the version of TEA they think they - # are compatible with. - TEA_VERSION="3.10" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for correct TEA configuration" >&5 -$as_echo_n "checking for correct TEA configuration... " >&6; } + TEA_VERSION="3.13" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking TEA configuration" >&5 +$as_echo_n "checking TEA configuration... " >&6; } if test x"${PACKAGE_NAME}" = x ; then as_fn_error $? " The PACKAGE_NAME variable must be defined by your TEA configure.ac" "$LINENO" 5 fi - if test x"3.10" = x ; then - as_fn_error $? " -TEA version not specified." "$LINENO" 5 - elif test "3.10" != "${TEA_VERSION}" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: warning: requested TEA version \"3.10\", have \"${TEA_VERSION}\"" >&5 -$as_echo "warning: requested TEA version \"3.10\", have \"${TEA_VERSION}\"" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok (TEA ${TEA_VERSION})" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok (TEA ${TEA_VERSION})" >&5 $as_echo "ok (TEA ${TEA_VERSION})" >&6; } - fi # If the user did not set CFLAGS, set it now to keep macros # like AC_PROG_CC and AC_TRY_COMPILE from adding "-g -O2". if test "${CFLAGS+set}" != "set" ; then CFLAGS="" fi - TEA_TK_EXTENSION=0 case "`uname -s`" in - *win32*|*WIN32*|*MINGW32_*) + *win32*|*WIN32*|*MINGW32_*|*MINGW64_*) # Extract the first word of "cygpath", so it can be a program name with args. set dummy cygpath; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 @@ -2536,6 +2425,55 @@ $as_echo "$as_me: configuring ${PACKAGE_NAME} ${PACKAGE_VERSION}" >&6;} + # Configure the installer. + + INSTALL='$(SHELL) $(srcdir)/tclconfig/install-sh -c' + INSTALL_DATA_DIR='${INSTALL} -d -m 755' + INSTALL_DATA='${INSTALL} -m 644' + INSTALL_PROGRAM='${INSTALL} -m 755' + INSTALL_SCRIPT='${INSTALL} -m 755' + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking system version" >&5 +$as_echo_n "checking system version... " >&6; } +if ${tcl_cv_sys_version+:} false; then : + $as_echo_n "(cached) " >&6 +else + + # TEA specific: + if test "${TEA_PLATFORM}" = "windows" ; then + tcl_cv_sys_version=windows + else + tcl_cv_sys_version=`uname -s`-`uname -r` + if test "$?" -ne 0 ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: can't find uname command" >&5 +$as_echo "$as_me: WARNING: can't find uname command" >&2;} + tcl_cv_sys_version=unknown + else + if test "`uname -s`" = "AIX" ; then + tcl_cv_sys_version=AIX-`uname -v`.`uname -r` + fi + fi + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $tcl_cv_sys_version" >&5 +$as_echo "$tcl_cv_sys_version" >&6; } + system=$tcl_cv_sys_version + + case $system in + HP-UX-*) INSTALL_LIBRARY='${INSTALL} -m 755' ;; + *) INSTALL_LIBRARY='${INSTALL} -m 644' ;; + esac + + + + + + + + + ac_aux_dir= for ac_dir in ../tclconfig "$srcdir"/../tclconfig; do @@ -2645,6 +2583,9 @@ $as_echo "$as_me: WARNING: --with-tcl argument should refer to directory contain `ls -d /Library/Frameworks 2>/dev/null` \ `ls -d /Network/Library/Frameworks 2>/dev/null` \ `ls -d /System/Library/Frameworks 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Network/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Tcl.framework 2>/dev/null` \ ; do if test -f "$i/Tcl.framework/tclConfig.sh" ; then ac_cv_c_tclconfig="`(cd $i/Tcl.framework; pwd)`" @@ -2671,13 +2612,17 @@ $as_echo "$as_me: WARNING: --with-tcl argument should refer to directory contain for i in `ls -d ${libdir} 2>/dev/null` \ `ls -d ${exec_prefix}/lib 2>/dev/null` \ `ls -d ${prefix}/lib 2>/dev/null` \ - `ls -d /usr/contrib/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ + `ls -d /usr/contrib/lib 2>/dev/null` \ `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ `ls -d /usr/lib/tcl8.6 2>/dev/null` \ `ls -d /usr/lib/tcl8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tcl8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tcl8.5 2>/dev/null` \ ; do if test -f "$i/tclConfig.sh" ; then ac_cv_c_tclconfig="`(cd $i; pwd)`" @@ -3685,7 +3630,6 @@ _ACEOF if test x"${no_tk}" = x ; then # we reset no_tk in case something fails here no_tk=true - TEA_TK_EXTENSION=0 # Check whether --with-tk was given. if test "${with_tk+set}" = set; then : @@ -3749,6 +3693,9 @@ $as_echo "$as_me: WARNING: --with-tk argument should refer to directory containi `ls -d /Library/Frameworks 2>/dev/null` \ `ls -d /Network/Library/Frameworks 2>/dev/null` \ `ls -d /System/Library/Frameworks 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Network/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Tcl.framework 2>/dev/null` \ ; do if test -f "$i/Tk.framework/tkConfig.sh" ; then ac_cv_c_tkconfig="`(cd $i/Tk.framework; pwd)`" @@ -3764,8 +3711,15 @@ $as_echo "$as_me: WARNING: --with-tk argument should refer to directory containi `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ + `ls -d /usr/lib/tk8.6 2>/dev/null` \ + `ls -d /usr/lib/tk8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tk8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tk8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tk8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tk8.5 2>/dev/null` \ ; do if test -f "$i/tkConfig.sh" ; then ac_cv_c_tkconfig="`(cd $i; pwd)`" @@ -3814,7 +3768,6 @@ fi as_fn_error $? "Can't find Tk configuration definitions. Use --with-tk to specify a directory containing tkConfig.sh" "$LINENO" 5 else no_tk= - TEA_TK_EXTENSION=1 TK_BIN_DIR="${ac_cv_c_tkconfig}" { $as_echo "$as_me:${as_lineno-$LINENO}: result: found ${TK_BIN_DIR}/tkConfig.sh" >&5 $as_echo "found ${TK_BIN_DIR}/tkConfig.sh" >&6; } @@ -3878,44 +3831,20 @@ $as_echo "could not find ${TK_BIN_DIR}/tkConfig.sh" >&6; } eval "TK_STUB_LIB_SPEC=\"${TK_STUB_LIB_SPEC}\"" # TEA specific: Ensure windowingsystem is defined - case ${TK_DEFS} in - *PLATFORM_SDL*) - TEA_WINDOWINGSYSTEM="x11" - PRACTCL_WINDOWINGSYSTEM="sdl" - TEA_USE_SDL=yes - ;; - esac - if test "${TEA_USE_SDL}" = "yes" ; then - true - elif test "${TEA_PLATFORM}" = "unix" ; then + if test "${TEA_PLATFORM}" = "unix" ; then case ${TK_DEFS} in *MAC_OSX_TK*) $as_echo "#define MAC_OSX_TK 1" >>confdefs.h TEA_WINDOWINGSYSTEM="aqua" - PRACTCL_WINDOWINGSYSTEM="cocoa" - TEA_USE_HITHEME=no; - if test "${TK_VERSION}" = "8.5" ; then - if test "${TK_PATCH_LEVEL}" > ".17" ; then - TEA_USE_HITHEME=yes; - fi - elif test "${TK_VERSION}" = "8.6" ; then - if test "${TK_PATCH_LEVEL}" > ".3" ; then - TEA_USE_HITHEME=yes; - fi - elif test "${TK_VERSION}" > "8.6" ; then - TEA_USE_HITHEME=yes; - fi ;; *) TEA_WINDOWINGSYSTEM="x11" - PRACTCL_WINDOWINGSYSTEM="x11" ;; esac elif test "${TEA_PLATFORM}" = "windows" ; then TEA_WINDOWINGSYSTEM="win32" - PRACTCL_WINDOWINGSYSTEM="windows" fi @@ -3933,8 +3862,6 @@ $as_echo "#define MAC_OSX_TK 1" >>confdefs.h # TEA specific: - # Practcl - #-------------------------------------------------------------------- @@ -4023,6 +3950,7 @@ $as_echo "$as_me: WARNING: --with-tifftcl argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4112,12 +4040,8 @@ $as_echo_n "checking For TIFFTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TIFFTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4130,12 +4054,8 @@ $as_echo "using TIFFTCL_STUB_LIB_PATH ${TIFFTCL_STUB_LIB_PATH}" >&6; } vars="${TIFFTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4163,12 +4083,8 @@ $as_echo_n "checking For tifftcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tifftcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4181,12 +4097,8 @@ $as_echo "using tifftcl_STUB_LIB_PATH ${tifftcl_STUB_LIB_PATH}" >&6; } vars="${tifftcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4287,6 +4199,7 @@ $as_echo "$as_me: WARNING: --with-pngtcl argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4376,12 +4289,8 @@ $as_echo_n "checking For PNGTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${PNGTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4394,12 +4303,8 @@ $as_echo "using PNGTCL_STUB_LIB_PATH ${PNGTCL_STUB_LIB_PATH}" >&6; } vars="${PNGTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4427,12 +4332,8 @@ $as_echo_n "checking For pngtcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${pngtcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4445,12 +4346,8 @@ $as_echo "using pngtcl_STUB_LIB_PATH ${pngtcl_STUB_LIB_PATH}" >&6; } vars="${pngtcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4551,6 +4448,7 @@ $as_echo "$as_me: WARNING: --with-jpegtcl argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4640,12 +4538,8 @@ $as_echo_n "checking For JPEGTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${JPEGTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4658,12 +4552,8 @@ $as_echo "using JPEGTCL_STUB_LIB_PATH ${JPEGTCL_STUB_LIB_PATH}" >&6; } vars="${JPEGTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4691,12 +4581,8 @@ $as_echo_n "checking For jpegtcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${jpegtcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4709,12 +4595,8 @@ $as_echo "using jpegtcl_STUB_LIB_PATH ${jpegtcl_STUB_LIB_PATH}" >&6; } vars="${jpegtcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4815,6 +4697,7 @@ $as_echo "$as_me: WARNING: --with-zlibtcl argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4904,12 +4787,8 @@ $as_echo_n "checking For ZLIBTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${ZLIBTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4922,12 +4801,8 @@ $as_echo "using ZLIBTCL_STUB_LIB_PATH ${ZLIBTCL_STUB_LIB_PATH}" >&6; } vars="${ZLIBTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4955,12 +4830,8 @@ $as_echo_n "checking For zlibtcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${zlibtcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4973,12 +4844,8 @@ $as_echo "using zlibtcl_STUB_LIB_PATH ${zlibtcl_STUB_LIB_PATH}" >&6; } vars="${zlibtcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5079,6 +4946,7 @@ $as_echo "$as_me: WARNING: --with-tcliis argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5168,12 +5036,8 @@ $as_echo_n "checking For TCLIIS_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TCLIIS_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5186,12 +5050,8 @@ $as_echo "using TCLIIS_STUB_LIB_PATH ${TCLIIS_STUB_LIB_PATH}" >&6; } vars="${TCLIIS_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5219,12 +5079,8 @@ $as_echo_n "checking For tcliis_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tcliis_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5237,12 +5093,8 @@ $as_echo "using tcliis_STUB_LIB_PATH ${tcliis_STUB_LIB_PATH}" >&6; } vars="${tcliis_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5343,6 +5195,7 @@ $as_echo "$as_me: WARNING: --with-tclsignal argument should refer to directory c `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5432,12 +5285,8 @@ $as_echo_n "checking For TCLSIGNAL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TCLSIGNAL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5450,12 +5299,8 @@ $as_echo "using TCLSIGNAL_STUB_LIB_PATH ${TCLSIGNAL_STUB_LIB_PATH}" >&6; } vars="${TCLSIGNAL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5483,12 +5328,8 @@ $as_echo_n "checking For tclsignal_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tclsignal_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5501,12 +5342,8 @@ $as_echo "using tclsignal_STUB_LIB_PATH ${tclsignal_STUB_LIB_PATH}" >&6; } vars="${tclsignal_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5607,6 +5444,7 @@ $as_echo "$as_me: WARNING: --with-tclxml argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5696,12 +5534,8 @@ $as_echo_n "checking For TCLXML_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TCLXML_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5714,12 +5548,8 @@ $as_echo "using TCLXML_STUB_LIB_PATH ${TCLXML_STUB_LIB_PATH}" >&6; } vars="${TCLXML_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5747,12 +5577,8 @@ $as_echo_n "checking For tclxml_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tclxml_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5765,12 +5591,8 @@ $as_echo "using tclxml_STUB_LIB_PATH ${tclxml_STUB_LIB_PATH}" >&6; } vars="${tclxml_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5871,6 +5693,7 @@ $as_echo "$as_me: WARNING: --with-tls argument should refer to directory contain `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5960,12 +5783,8 @@ $as_echo_n "checking For TLS_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TLS_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5978,12 +5797,8 @@ $as_echo "using TLS_STUB_LIB_PATH ${TLS_STUB_LIB_PATH}" >&6; } vars="${TLS_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6011,12 +5826,8 @@ $as_echo_n "checking For tls_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tls_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6029,12 +5840,8 @@ $as_echo "using tls_STUB_LIB_PATH ${tls_STUB_LIB_PATH}" >&6; } vars="${tls_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6135,6 +5942,7 @@ $as_echo "$as_me: WARNING: --with-tkblt argument should refer to directory conta `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -6224,12 +6032,8 @@ $as_echo_n "checking For TKBLT_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKBLT_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6242,12 +6046,8 @@ $as_echo "using TKBLT_STUB_LIB_PATH ${TKBLT_STUB_LIB_PATH}" >&6; } vars="${TKBLT_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6275,12 +6075,8 @@ $as_echo_n "checking For tkblt_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkblt_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6293,12 +6089,8 @@ $as_echo "using tkblt_STUB_LIB_PATH ${tkblt_STUB_LIB_PATH}" >&6; } vars="${tkblt_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6399,6 +6191,7 @@ $as_echo "$as_me: WARNING: --with-tkhtml1 argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -6488,12 +6281,8 @@ $as_echo_n "checking For TKHTML1_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKHTML1_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6506,12 +6295,8 @@ $as_echo "using TKHTML1_STUB_LIB_PATH ${TKHTML1_STUB_LIB_PATH}" >&6; } vars="${TKHTML1_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6539,12 +6324,8 @@ $as_echo_n "checking For tkhtml1_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkhtml1_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6557,12 +6338,8 @@ $as_echo "using tkhtml1_STUB_LIB_PATH ${tkhtml1_STUB_LIB_PATH}" >&6; } vars="${tkhtml1_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6663,6 +6440,7 @@ $as_echo "$as_me: WARNING: --with-tkimg argument should refer to directory conta `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -6752,12 +6530,8 @@ $as_echo_n "checking For TKIMG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6770,12 +6544,8 @@ $as_echo "using TKIMG_STUB_LIB_PATH ${TKIMG_STUB_LIB_PATH}" >&6; } vars="${TKIMG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6803,12 +6573,8 @@ $as_echo_n "checking For tkimg_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimg_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6821,12 +6587,8 @@ $as_echo "using tkimg_STUB_LIB_PATH ${tkimg_STUB_LIB_PATH}" >&6; } vars="${tkimg_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6927,6 +6689,7 @@ $as_echo "$as_me: WARNING: --with-tkimggif argument should refer to directory co `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7016,12 +6779,8 @@ $as_echo_n "checking For TKIMGGIF_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGGIF_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7034,12 +6793,8 @@ $as_echo "using TKIMGGIF_STUB_LIB_PATH ${TKIMGGIF_STUB_LIB_PATH}" >&6; } vars="${TKIMGGIF_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7067,12 +6822,8 @@ $as_echo_n "checking For tkimggif_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimggif_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7085,12 +6836,8 @@ $as_echo "using tkimggif_STUB_LIB_PATH ${tkimggif_STUB_LIB_PATH}" >&6; } vars="${tkimggif_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7191,6 +6938,7 @@ $as_echo "$as_me: WARNING: --with-tkimgjpeg argument should refer to directory c `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7280,12 +7028,8 @@ $as_echo_n "checking For TKIMGJPEG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGJPEG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7298,12 +7042,8 @@ $as_echo "using TKIMGJPEG_STUB_LIB_PATH ${TKIMGJPEG_STUB_LIB_PATH}" >&6; } vars="${TKIMGJPEG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7331,12 +7071,8 @@ $as_echo_n "checking For tkimgjpeg_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgjpeg_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7349,12 +7085,8 @@ $as_echo "using tkimgjpeg_STUB_LIB_PATH ${tkimgjpeg_STUB_LIB_PATH}" >&6; } vars="${tkimgjpeg_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7455,6 +7187,7 @@ $as_echo "$as_me: WARNING: --with-tkimgpng argument should refer to directory co `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7544,12 +7277,8 @@ $as_echo_n "checking For TKIMGPNG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGPNG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7562,12 +7291,8 @@ $as_echo "using TKIMGPNG_STUB_LIB_PATH ${TKIMGPNG_STUB_LIB_PATH}" >&6; } vars="${TKIMGPNG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7595,12 +7320,8 @@ $as_echo_n "checking For tkimgpng_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgpng_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7613,12 +7334,8 @@ $as_echo "using tkimgpng_STUB_LIB_PATH ${tkimgpng_STUB_LIB_PATH}" >&6; } vars="${tkimgpng_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7719,6 +7436,7 @@ $as_echo "$as_me: WARNING: --with-tkimgtiff argument should refer to directory c `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7808,12 +7526,8 @@ $as_echo_n "checking For TKIMGTIFF_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGTIFF_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7826,12 +7540,8 @@ $as_echo "using TKIMGTIFF_STUB_LIB_PATH ${TKIMGTIFF_STUB_LIB_PATH}" >&6; } vars="${TKIMGTIFF_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7859,12 +7569,8 @@ $as_echo_n "checking For tkimgtiff_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgtiff_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7877,12 +7583,8 @@ $as_echo "using tkimgtiff_STUB_LIB_PATH ${tkimgtiff_STUB_LIB_PATH}" >&6; } vars="${tkimgtiff_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7983,6 +7685,7 @@ $as_echo "$as_me: WARNING: --with-tkimgwindow argument should refer to directory `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8072,12 +7775,8 @@ $as_echo_n "checking For TKIMGWINDOW_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGWINDOW_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8090,12 +7789,8 @@ $as_echo "using TKIMGWINDOW_STUB_LIB_PATH ${TKIMGWINDOW_STUB_LIB_PATH}" >&6; } vars="${TKIMGWINDOW_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8123,12 +7818,8 @@ $as_echo_n "checking For tkimgwindow_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgwindow_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8141,12 +7832,8 @@ $as_echo "using tkimgwindow_STUB_LIB_PATH ${tkimgwindow_STUB_LIB_PATH}" >&6; } vars="${tkimgwindow_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8247,6 +7934,7 @@ $as_echo "$as_me: WARNING: --with-tkmacosx argument should refer to directory co `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8336,12 +8024,8 @@ $as_echo_n "checking For TKMACOSX_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKMACOSX_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8354,12 +8038,8 @@ $as_echo "using TKMACOSX_STUB_LIB_PATH ${TKMACOSX_STUB_LIB_PATH}" >&6; } vars="${TKMACOSX_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8387,12 +8067,8 @@ $as_echo_n "checking For tkmacosx_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkmacosx_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8405,12 +8081,8 @@ $as_echo "using tkmacosx_STUB_LIB_PATH ${tkmacosx_STUB_LIB_PATH}" >&6; } vars="${tkmacosx_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8511,6 +8183,7 @@ $as_echo "$as_me: WARNING: --with-tkmpeg argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8600,12 +8273,8 @@ $as_echo_n "checking For TKMPEG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKMPEG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8618,12 +8287,8 @@ $as_echo "using TKMPEG_STUB_LIB_PATH ${TKMPEG_STUB_LIB_PATH}" >&6; } vars="${TKMPEG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8651,12 +8316,8 @@ $as_echo_n "checking For tkmpeg_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkmpeg_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8669,12 +8330,8 @@ $as_echo "using tkmpeg_STUB_LIB_PATH ${tkmpeg_STUB_LIB_PATH}" >&6; } vars="${tkmpeg_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8775,6 +8432,7 @@ $as_echo "$as_me: WARNING: --with-tksao argument should refer to directory conta `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8864,12 +8522,8 @@ $as_echo_n "checking For TKSAO_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKSAO_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8882,12 +8536,8 @@ $as_echo "using TKSAO_STUB_LIB_PATH ${TKSAO_STUB_LIB_PATH}" >&6; } vars="${TKSAO_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8915,12 +8565,8 @@ $as_echo_n "checking For tksao_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tksao_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8933,12 +8579,8 @@ $as_echo "using tksao_STUB_LIB_PATH ${tksao_STUB_LIB_PATH}" >&6; } vars="${tksao_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9039,6 +8681,7 @@ $as_echo "$as_me: WARNING: --with-tktable argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -9128,12 +8771,8 @@ $as_echo_n "checking For TKTABLE_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKTABLE_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9146,12 +8785,8 @@ $as_echo "using TKTABLE_STUB_LIB_PATH ${TKTABLE_STUB_LIB_PATH}" >&6; } vars="${TKTABLE_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9179,12 +8814,8 @@ $as_echo_n "checking For tktable_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tktable_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9197,12 +8828,8 @@ $as_echo "using tktable_STUB_LIB_PATH ${tktable_STUB_LIB_PATH}" >&6; } vars="${tktable_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9941,20 +9568,6 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu - INSTALL='$(SHELL) $(srcdir)/tclconfig/install-sh -c' - INSTALL_DATA_DIR='${INSTALL} -d -m 755' - INSTALL_DATA='${INSTALL} -m 644' - INSTALL_PROGRAM='${INSTALL}' - INSTALL_SCRIPT='${INSTALL}' - INSTALL_LIBRARY='${INSTALL_DATA}' - - - - - - - - #-------------------------------------------------------------------- # Checks to see if the make program sets the $MAKE variable. #-------------------------------------------------------------------- @@ -10626,480 +10239,6 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; esac - if test "${TEA_PLATFORM}" = "unix" ; then - - #-------------------------------------------------------------------- - # On a few very rare systems, all of the libm.a stuff is - # already in libc.a. Set compiler flags accordingly. - # Also, Linux requires the "ieee" library for math to work - # right (and it must appear before "-lm"). - #-------------------------------------------------------------------- - - ac_fn_c_check_func "$LINENO" "sin" "ac_cv_func_sin" -if test "x$ac_cv_func_sin" = xyes; then : - MATH_LIBS="" -else - MATH_LIBS="-lm" -fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lieee" >&5 -$as_echo_n "checking for main in -lieee... " >&6; } -if ${ac_cv_lib_ieee_main+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lieee $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - -int -main () -{ -return main (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_ieee_main=yes -else - ac_cv_lib_ieee_main=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ieee_main" >&5 -$as_echo "$ac_cv_lib_ieee_main" >&6; } -if test "x$ac_cv_lib_ieee_main" = xyes; then : - MATH_LIBS="-lieee $MATH_LIBS" -fi - - - #-------------------------------------------------------------------- - # Interactive UNIX requires -linet instead of -lsocket, plus it - # needs net/errno.h to define the socket-related error codes. - #-------------------------------------------------------------------- - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -linet" >&5 -$as_echo_n "checking for main in -linet... " >&6; } -if ${ac_cv_lib_inet_main+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-linet $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - -int -main () -{ -return main (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_inet_main=yes -else - ac_cv_lib_inet_main=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_inet_main" >&5 -$as_echo "$ac_cv_lib_inet_main" >&6; } -if test "x$ac_cv_lib_inet_main" = xyes; then : - LIBS="$LIBS -linet" -fi - - ac_fn_c_check_header_mongrel "$LINENO" "net/errno.h" "ac_cv_header_net_errno_h" "$ac_includes_default" -if test "x$ac_cv_header_net_errno_h" = xyes; then : - - -$as_echo "#define HAVE_NET_ERRNO_H 1" >>confdefs.h - -fi - - - - #-------------------------------------------------------------------- - # Check for the existence of the -lsocket and -lnsl libraries. - # The order here is important, so that they end up in the right - # order in the command line generated by make. Here are some - # special considerations: - # 1. Use "connect" and "accept" to check for -lsocket, and - # "gethostbyname" to check for -lnsl. - # 2. Use each function name only once: can't redo a check because - # autoconf caches the results of the last check and won't redo it. - # 3. Use -lnsl and -lsocket only if they supply procedures that - # aren't already present in the normal libraries. This is because - # IRIX 5.2 has libraries, but they aren't needed and they're - # bogus: they goof up name resolution if used. - # 4. On some SVR4 systems, can't use -lsocket without -lnsl too. - # To get around this problem, check for both libraries together - # if -lsocket doesn't work by itself. - #-------------------------------------------------------------------- - - tcl_checkBoth=0 - ac_fn_c_check_func "$LINENO" "connect" "ac_cv_func_connect" -if test "x$ac_cv_func_connect" = xyes; then : - tcl_checkSocket=0 -else - tcl_checkSocket=1 -fi - - if test "$tcl_checkSocket" = 1; then - ac_fn_c_check_func "$LINENO" "setsockopt" "ac_cv_func_setsockopt" -if test "x$ac_cv_func_setsockopt" = xyes; then : - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setsockopt in -lsocket" >&5 -$as_echo_n "checking for setsockopt in -lsocket... " >&6; } -if ${ac_cv_lib_socket_setsockopt+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsocket $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char setsockopt (); -int -main () -{ -return setsockopt (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_socket_setsockopt=yes -else - ac_cv_lib_socket_setsockopt=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_setsockopt" >&5 -$as_echo "$ac_cv_lib_socket_setsockopt" >&6; } -if test "x$ac_cv_lib_socket_setsockopt" = xyes; then : - LIBS="$LIBS -lsocket" -else - tcl_checkBoth=1 -fi - -fi - - fi - if test "$tcl_checkBoth" = 1; then - tk_oldLibs=$LIBS - LIBS="$LIBS -lsocket -lnsl" - ac_fn_c_check_func "$LINENO" "accept" "ac_cv_func_accept" -if test "x$ac_cv_func_accept" = xyes; then : - tcl_checkNsl=0 -else - LIBS=$tk_oldLibs -fi - - fi - ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname" -if test "x$ac_cv_func_gethostbyname" = xyes; then : - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5 -$as_echo_n "checking for gethostbyname in -lnsl... " >&6; } -if ${ac_cv_lib_nsl_gethostbyname+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lnsl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char gethostbyname (); -int -main () -{ -return gethostbyname (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_nsl_gethostbyname=yes -else - ac_cv_lib_nsl_gethostbyname=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5 -$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; } -if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then : - LIBS="$LIBS -lnsl" -fi - -fi - - - # TEA specific: Don't perform the eval of the libraries here because - # DL_LIBS won't be set until we call TEA_CONFIG_CFLAGS - - TCL_LIBS='${DL_LIBS} ${LIBS} ${MATH_LIBS}' - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking dirent.h" >&5 -$as_echo_n "checking dirent.h... " >&6; } -if ${tcl_cv_dirent_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <sys/types.h> -#include <dirent.h> -int -main () -{ - -#ifndef _POSIX_SOURCE -# ifdef __Lynx__ - /* - * Generate compilation error to make the test fail: Lynx headers - * are only valid if really in the POSIX environment. - */ - - missing_procedure(); -# endif -#endif -DIR *d; -struct dirent *entryPtr; -char *p; -d = opendir("foobar"); -entryPtr = readdir(d); -p = entryPtr->d_name; -closedir(d); - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - tcl_cv_dirent_h=yes -else - tcl_cv_dirent_h=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $tcl_cv_dirent_h" >&5 -$as_echo "$tcl_cv_dirent_h" >&6; } - - if test $tcl_cv_dirent_h = no; then - -$as_echo "#define NO_DIRENT_H 1" >>confdefs.h - - fi - - # TEA specific: - ac_fn_c_check_header_mongrel "$LINENO" "errno.h" "ac_cv_header_errno_h" "$ac_includes_default" -if test "x$ac_cv_header_errno_h" = xyes; then : - -else - -$as_echo "#define NO_ERRNO_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "float.h" "ac_cv_header_float_h" "$ac_includes_default" -if test "x$ac_cv_header_float_h" = xyes; then : - -else - -$as_echo "#define NO_FLOAT_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "values.h" "ac_cv_header_values_h" "$ac_includes_default" -if test "x$ac_cv_header_values_h" = xyes; then : - -else - -$as_echo "#define NO_VALUES_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "limits.h" "ac_cv_header_limits_h" "$ac_includes_default" -if test "x$ac_cv_header_limits_h" = xyes; then : - -$as_echo "#define HAVE_LIMITS_H 1" >>confdefs.h - -else - -$as_echo "#define NO_LIMITS_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" -if test "x$ac_cv_header_stdlib_h" = xyes; then : - tcl_ok=1 -else - tcl_ok=0 -fi - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strtol" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strtoul" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strtod" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - if test $tcl_ok = 0; then - -$as_echo "#define NO_STDLIB_H 1" >>confdefs.h - - fi - ac_fn_c_check_header_mongrel "$LINENO" "string.h" "ac_cv_header_string_h" "$ac_includes_default" -if test "x$ac_cv_header_string_h" = xyes; then : - tcl_ok=1 -else - tcl_ok=0 -fi - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <string.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strstr" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <string.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strerror" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - - # See also memmove check below for a place where NO_STRING_H can be - # set and why. - - if test $tcl_ok = 0; then - -$as_echo "#define NO_STRING_H 1" >>confdefs.h - - fi - - ac_fn_c_check_header_mongrel "$LINENO" "sys/wait.h" "ac_cv_header_sys_wait_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_wait_h" = xyes; then : - -else - -$as_echo "#define NO_SYS_WAIT_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default" -if test "x$ac_cv_header_dlfcn_h" = xyes; then : - -else - -$as_echo "#define NO_DLFCN_H 1" >>confdefs.h - -fi - - - - # OS/390 lacks sys/param.h (and doesn't need it, by chance). - for ac_header in sys/param.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "sys/param.h" "ac_cv_header_sys_param_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_param_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_SYS_PARAM_H 1 -_ACEOF - -fi - -done - - - # Let the user call this, because if it triggers, they will - # need a compat/strtod.c that is correct. Users can also - # use Tcl_GetDouble(FromObj) instead. - #TEA_BUGGY_STRTOD - fi #----------------------------------------------------------------------- @@ -11119,12 +10258,8 @@ done vars="-lstdc++" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -11389,7 +10524,7 @@ $as_echo "${ac_cv_c_tkh}" >&6; } - if test "${PRACTCL_WINDOWINGSYSTEM}" != "x11"; then + if test "${TEA_WINDOWINGSYSTEM}" != "x11"; then # On Windows and Aqua, we need the X compat headers { $as_echo "$as_me:${as_lineno-$LINENO}: checking for X11 header files" >&5 $as_echo_n "checking for X11 header files... " >&6; } @@ -11404,7 +10539,7 @@ $as_echo "${INCLUDE_DIR_NATIVE}" >&6; } #TEA_PRIVATE_TK_HEADERS - if test "${PRACTCL_WINDOWINGSYSTEM}" = "x11" ; then + if test "${TEA_WINDOWINGSYSTEM}" = "x11" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for X" >&5 $as_echo_n "checking for X... " >&6; } @@ -12042,18 +11177,6 @@ $as_echo "$as_me: WARNING: that IS thread-enabled. It is recommended to use --enable-threads." >&2;} fi ;; - *) - if test "${TCL_THREADS}" = "1"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: - --enable-threads requested, but building against a Tcl that is NOT - thread-enabled. This is an OK configuration that will also run in - a thread-enabled core." >&5 -$as_echo "$as_me: WARNING: - --enable-threads requested, but building against a Tcl that is NOT - thread-enabled. This is an OK configuration that will also run in - a thread-enabled core." >&2;} - fi - ;; esac @@ -12675,12 +11798,8 @@ $as_echo "found $CELIB_DIR" >&6; } vars="ucrt.lib" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -12706,12 +11825,8 @@ $as_echo "found $CELIB_DIR" >&6; } vars="bufferoverflowU.lib" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -12862,8 +11977,6 @@ fi CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" SHLIB_LD='${CC} -shared' UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' - PRACTCL_UNSHARED_LIB_SUFFIX='.a' - LDFLAGS_CONSOLE="-wl,--subsystem,console ${lflags}" LDFLAGS_WINDOW="-wl,--subsystem,windows ${lflags}" @@ -13093,7 +12206,7 @@ fi LDFLAGS="$LDFLAGS -Wl,--export-dynamic" SHLIB_CFLAGS="-fPIC" SHLIB_SUFFIX=".so" - SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}' + SHLIB_LD='${CC} ${CFLAGS} ${LDFLAGS} -shared' { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inet_ntoa in -lnetwork" >&5 $as_echo_n "checking for inet_ntoa in -lnetwork... " >&6; } if ${ac_cv_lib_network_inet_ntoa+:} false; then : @@ -13320,7 +12433,7 @@ fi CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" # TEA specific: use LDFLAGS_DEFAULT instead of LDFLAGS - SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS_DEFAULT}' + SHLIB_LD='${CC} ${CFLAGS} ${LDFLAGS_DEFAULT} -shared' LDFLAGS="$LDFLAGS -Wl,--export-dynamic" if test $doRpath = yes; then : @@ -13396,39 +12509,23 @@ fi OpenBSD-*) arch=`arch -s` case "$arch" in - vax) - SHLIB_SUFFIX="" - SHARED_LIB_SUFFIX="" - LDFLAGS="" + alpha|sparc64) + SHLIB_CFLAGS="-fPIC" ;; *) - case "$arch" in - alpha|sparc64) - SHLIB_CFLAGS="-fPIC" - ;; - *) - SHLIB_CFLAGS="-fpic" - ;; - esac - SHLIB_LD='${CC} -shared ${SHLIB_CFLAGS}' - SHLIB_SUFFIX=".so" - if test $doRpath = yes; then : - - CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -fi - LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} - SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so${SHLIB_VERSION}' - LDFLAGS="-Wl,-export-dynamic" - ;; - esac - case "$arch" in - vax) - CFLAGS_OPTIMIZE="-O1" - ;; - *) - CFLAGS_OPTIMIZE="-O2" + SHLIB_CFLAGS="-fpic" ;; esac + SHLIB_LD='${CC} ${SHLIB_CFLAGS} -shared' + SHLIB_SUFFIX=".so" + if test $doRpath = yes; then : + + CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' +fi + LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} + SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so${SHLIB_VERSION}' + LDFLAGS="-Wl,-export-dynamic" + CFLAGS_OPTIMIZE="-O2" if test "${TCL_THREADS}" = "1"; then : # On OpenBSD: Compile with -pthread @@ -13444,7 +12541,7 @@ fi NetBSD-*) # NetBSD has ELF and can use 'cc -shared' to build shared libs SHLIB_CFLAGS="-fPIC" - SHLIB_LD='${CC} -shared ${SHLIB_CFLAGS}' + SHLIB_LD='${CC} ${SHLIB_CFLAGS} -shared' SHLIB_SUFFIX=".so" LDFLAGS="$LDFLAGS -export-dynamic" if test $doRpath = yes; then : @@ -13461,7 +12558,7 @@ fi fi ;; - FreeBSD-*) + DragonFly-*|FreeBSD-*) # This configuration from FreeBSD Ports. SHLIB_CFLAGS="-fPIC" SHLIB_LD="${CC} -shared" @@ -14095,9 +13192,9 @@ fi case $system in AIX-*) ;; BSD/OS*) ;; - CYGWIN_*|MINGW32_*) ;; + CYGWIN_*|MINGW32_*|MINGW64_*) ;; IRIX*) ;; - NetBSD-*|FreeBSD-*|OpenBSD-*) ;; + NetBSD-*|DragonFly-*|FreeBSD-*|OpenBSD-*) ;; Darwin-*) ;; SCO_SV-3.2*) ;; windows) ;; @@ -14117,13 +13214,11 @@ fi # TEA specific: use PACKAGE_VERSION instead of VERSION SHARED_LIB_SUFFIX='${PACKAGE_VERSION}${SHLIB_SUFFIX}' - fi if test "$UNSHARED_LIB_SUFFIX" = ""; then : # TEA specific: use PACKAGE_VERSION instead of VERSION UNSHARED_LIB_SUFFIX='${PACKAGE_VERSION}.a' - fi if test "${GCC}" = "yes" -a ${SHLIB_SUFFIX} = ".dll"; then @@ -14314,7 +13409,6 @@ $as_echo "#define HAVE_CAST_TO_UNION 1" >>confdefs.h - # These must be called after we do the basic CFLAGS checks and # verify any possible 64-bit or similar switches are necessary @@ -14721,16 +13815,10 @@ $as_echo "enabled $tcl_ok debugging" >&6; } #-------------------------------------------------------------------- - PRACTCL_TOOLSET="gcc" - PRACTCL_VC_MANIFEST_EMBED_DLL=: - PRACTCL_VC_MANIFEST_EMBED_EXE=: - if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes"; then - PRACTCL_TOOLSET="msvc" - PRACTCL_STATIC_LIB="%STLIB_LD% -out:%OUTFILE% %LIBRARY_OBJECTS%" - PRACTCL_SHARED_LIB="%SHLIB_LD% %SHLIB_LD_LIBS% %LDFLAGS_DEFAULT% -out:%OUTFILE% %LIBRARY_OBJECTS%" - MAKE_STATIC_LIB="\${STLIB_LD} -out:\$@ \$(PKG_OBJECTS)" - MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LD_LIBS} \${LDFLAGS_DEFAULT} -out:\$@ \$(PKG_OBJECTS)" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes"; then + MAKE_STATIC_LIB="\${STLIB_LD} -out:\$@ \$(PKG_OBJECTS)" + MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LD_LIBS} \${LDFLAGS_DEFAULT} -out:\$@ \$(PKG_OBJECTS)" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #if defined(_MSC_VER) && _MSC_VER >= 1400 @@ -14741,12 +13829,10 @@ _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "manifest needed" >/dev/null 2>&1; then : - # Could do a CHECK_PROG for mt, but should always be with MSVC8+ - PRACTCL_VC_MANIFEST_EMBED_DLL="mt.exe -nologo -manifest %OUTFILE%.manifest -outputresource:%OUTFILE%\;2" - PRACTCL_VC_MANIFEST_EMBED_EXE="mt.exe -nologo -manifest %OUTFILE%.manifest -outputresource:%OUTFILE%\;1" - VC_MANIFEST_EMBED_DLL="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;2 ; fi" - VC_MANIFEST_EMBED_EXE="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;1 ; fi" - MAKE_SHARED_LIB="${MAKE_SHARED_LIB} ; ${VC_MANIFEST_EMBED_DLL}" + # Could do a CHECK_PROG for mt, but should always be with MSVC8+ + VC_MANIFEST_EMBED_DLL="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;2 ; fi" + VC_MANIFEST_EMBED_EXE="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;1 ; fi" + MAKE_SHARED_LIB="${MAKE_SHARED_LIB} ; ${VC_MANIFEST_EMBED_DLL}" CLEANFILES="$CLEANFILES *.manifest" @@ -14754,89 +13840,73 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | fi rm -f conftest* - PRACTCL_STUB_LIB="%STLIB_LD% -nodefaultlib -out:%OUTFILE% %LIBRARY_OBJECTS%" - MAKE_STUB_LIB="\${STLIB_LD} -nodefaultlib -out:\$@ \$(PKG_STUB_OBJECTS)" - else - MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(PKG_OBJECTS)" - MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(PKG_OBJECTS) \${SHLIB_LD_LIBS}" - MAKE_STUB_LIB="\${STLIB_LD} \$@ \$(PKG_STUB_OBJECTS)" + MAKE_STUB_LIB="\${STLIB_LD} -nodefaultlib -out:\$@ \$(PKG_STUB_OBJECTS)" + else + MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(PKG_OBJECTS)" + MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(PKG_OBJECTS) \${SHLIB_LD_LIBS}" + MAKE_STUB_LIB="\${STLIB_LD} \$@ \$(PKG_STUB_OBJECTS)" + fi - PRACTCL_STATIC_LIB="%STLIB_LD% %OUTFILE% %LIBRARY_OBJECTS%" - PRACTCL_SHARED_LIB="%SHLIB_LD% -o %OUTFILE% %LIBRARY_OBJECTS% %SHLIB_LD_LIBS%" - PRACTCL_STUB_LIB="%STLIB_LD% %OUTFILE% %LIBRARY_OBJECTS%" - fi + if test "${SHARED_BUILD}" = "1" ; then + MAKE_LIB="${MAKE_SHARED_LIB} " + else + MAKE_LIB="${MAKE_STATIC_LIB} " + fi - if test "${SHARED_BUILD}" = "1" ; then - MAKE_LIB="${MAKE_SHARED_LIB} " - else - MAKE_LIB="${MAKE_STATIC_LIB} " - fi + #-------------------------------------------------------------------- + # Shared libraries and static libraries have different names. + # Use the double eval to make sure any variables in the suffix is + # substituted. (@@@ Might not be necessary anymore) + #-------------------------------------------------------------------- - #-------------------------------------------------------------------- - # Shared libraries and static libraries have different names. - # Use the double eval to make sure any variables in the suffix is - # substituted. (@@@ Might not be necessary anymore) - #-------------------------------------------------------------------- - if test "${TEA_PLATFORM}" = "windows" ; then - PRACTCL_NAME_LIBRARY="%LIBRARY_PREFIX%%LIBRARY_NAME%%LIBRARY_VERSION_NODOTS%" - if test "${SHARED_BUILD}" = "1" ; then + if test "${TEA_PLATFORM}" = "windows" ; then + if test "${SHARED_BUILD}" = "1" ; then # We force the unresolved linking of symbols that are really in # the private libraries of Tcl and Tk. if test x"${TK_BIN_DIR}" != x ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TK_BIN_DIR}/${TK_STUB_LIB_FILE}`\"" + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TK_BIN_DIR}/${TK_STUB_LIB_FILE}`\"" fi SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TCL_BIN_DIR}/${TCL_STUB_LIB_FILE}`\"" if test "$GCC" = "yes"; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -static-libgcc" + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -static-libgcc" fi eval eval "PKG_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" - else + else eval eval "PKG_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" if test "$GCC" = "yes"; then - PKG_LIB_FILE=lib${PKG_LIB_FILE} + PKG_LIB_FILE=lib${PKG_LIB_FILE} fi - fi - # Some packages build their own stubs libraries - eval eval "PKG_STUB_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" - if test "$GCC" = "yes"; then - PKG_STUB_LIB_FILE=lib${PKG_STUB_LIB_FILE} - fi - # These aren't needed on Windows (either MSVC or gcc) - RANLIB=: - RANLIB_STUB=: - else - PRACTCL_NAME_LIBRARY="lib%LIBRARY_PREFIX%%LIBRARY_NAME%%LIBRARY_VERSION%" - RANLIB_STUB="${RANLIB}" - if test "${SHARED_BUILD}" = "1" ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TCL_STUB_LIB_SPEC}" - if test x"${TK_BIN_DIR}" != x ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TK_STUB_LIB_SPEC}" - fi - eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" - RANLIB=: + fi + # Some packages build their own stubs libraries + eval eval "PKG_STUB_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" + if test "$GCC" = "yes"; then + PKG_STUB_LIB_FILE=lib${PKG_STUB_LIB_FILE} + fi + # These aren't needed on Windows (either MSVC or gcc) + RANLIB=: + RANLIB_STUB=: else - eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" + RANLIB_STUB="${RANLIB}" + if test "${SHARED_BUILD}" = "1" ; then + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TCL_STUB_LIB_SPEC}" + if test x"${TK_BIN_DIR}" != x ; then + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TK_STUB_LIB_SPEC}" + fi + eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" + RANLIB=: + else + eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" + fi + # Some packages build their own stubs libraries + eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" fi - # Some packages build their own stubs libraries - eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" - fi - - # Store the raw CFLAGS before we add the trimmings - PRACTCL_CFLAGS=${CFLAGS} - # These are escaped so that only CFLAGS is picked up at configure time. - # The other values will be substituted at make time. - CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" - if test "${SHARED_BUILD}" = "1" ; then - CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" - fi - - - - - - - + # These are escaped so that only CFLAGS is picked up at configure time. + # The other values will be substituted at make time. + CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" + if test "${SHARED_BUILD}" = "1" ; then + CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" + fi @@ -14858,31 +13928,7 @@ rm -f conftest* { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tclsh" >&5 $as_echo_n "checking for tclsh... " >&6; } - - -# Check whether --with-tclsh was given. -if test "${with_tclsh+set}" = set; then : - withval=$with_tclsh; with_tclsh=${withval} -fi - - # Use the value from --with-tclsh, if it was given - TCLSH_PROG=0 - if test x"${with_tclsh}" != x ; then - if test -f "${with_tclsh}" ; then - TCLSH_PROG=${with_tclsh} - else - if test -f "${with_tclsh}/tcl8.6" ; then - TCLSH_PROG="${with_tclsh}/tcl8.6" - else - if test -f "${with_tclsh}/tclsh86.exe" ; then - TCLSH_PROG="${with_tclsh}/tclsh86.exe" - else - as_fn_error $? "${with_tclsh} does not point to a valid Tcl executable" "$LINENO" 5 - fi - fi - fi - else - if test -f "${TCL_BIN_DIR}/Makefile" ; then + if test -f "${TCL_BIN_DIR}/Makefile" ; then # tclConfig.sh is in Tcl build directory if test "${TEA_PLATFORM}" = "windows"; then if test -f "${TCL_BIN_DIR}/tclsh${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${TCL_DBGX}${EXEEXT}" ; then @@ -14897,7 +13943,7 @@ fi else TCLSH_PROG="${TCL_BIN_DIR}/tclsh" fi - else + else # tclConfig.sh is in install location if test "${TEA_PLATFORM}" = "windows"; then TCLSH_PROG="tclsh${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${TCL_DBGX}${EXEEXT}" @@ -14914,8 +13960,7 @@ fi fi done TCLSH_PROG="${REAL_TCL_BIN_DIR}${TCLSH_PROG}" - fi - fi + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${TCLSH_PROG}" >&5 $as_echo "${TCLSH_PROG}" >&6; } @@ -14923,13 +13968,27 @@ $as_echo "${TCLSH_PROG}" >&6; } #TEA_PROG_WISH #-------------------------------------------------------------------- -# Finally, substitute all of the various values into the Makefile. -# You may alternatively have a special pkgIndex.tcl.in or other files -# which require substituting th AC variables in. Include these here. +# Setup a *Config.sh.in configuration file. +#-------------------------------------------------------------------- + +#TEA_EXPORT_CONFIG([sample]) +#AC_SUBST(SAMPLE_VAR) + +#-------------------------------------------------------------------- +# Specify files to substitute AC variables in. You may alternatively +# have a special pkgIndex.tcl.in or other files which require +# substituting the AC variables in. Include these here. #-------------------------------------------------------------------- ac_config_files="$ac_config_files Makefile" +#AC_CONFIG_FILES([sampleConfig.sh]) + +#-------------------------------------------------------------------- +# Finally, substitute all of the various values into the files +# specified with AC_CONFIG_FILES. +#-------------------------------------------------------------------- + cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure @@ -15474,7 +14533,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by ds9 $as_me 8.0, which was +This file was extended by ds9 $as_me 8.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -15527,7 +14586,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -ds9 config.status 8.0 +ds9 config.status 8.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/ds9/macos/configure.ac b/ds9/macos/configure.ac index 279216f..d08f3bd 100644 --- a/ds9/macos/configure.ac +++ b/ds9/macos/configure.ac @@ -19,7 +19,7 @@ dnl to configure the system for the local environment. # so that we create the export library with the dll. #----------------------------------------------------------------------- -AC_INIT([ds9], [8.0]) +AC_INIT([ds9], [8.1]) #-------------------------------------------------------------------- # Call TEA_INIT as the first TEA_ macro to set up initial vars. @@ -27,7 +27,7 @@ AC_INIT([ds9], [8.0]) # as well as PKG_LIB_FILE and PKG_STUB_LIB_FILE. #-------------------------------------------------------------------- -TEA_INIT([3.10]) +TEA_INIT() AC_CONFIG_AUX_DIR(../tclconfig) @@ -236,9 +236,24 @@ TEA_PROG_TCLSH #TEA_PROG_WISH #-------------------------------------------------------------------- -# Finally, substitute all of the various values into the Makefile. -# You may alternatively have a special pkgIndex.tcl.in or other files -# which require substituting th AC variables in. Include these here. +# Setup a *Config.sh.in configuration file. #-------------------------------------------------------------------- -AC_OUTPUT([Makefile]) +#TEA_EXPORT_CONFIG([sample]) +#AC_SUBST(SAMPLE_VAR) + +#-------------------------------------------------------------------- +# Specify files to substitute AC variables in. You may alternatively +# have a special pkgIndex.tcl.in or other files which require +# substituting the AC variables in. Include these here. +#-------------------------------------------------------------------- + +AC_CONFIG_FILES([Makefile]) +#AC_CONFIG_FILES([sampleConfig.sh]) + +#-------------------------------------------------------------------- +# Finally, substitute all of the various values into the files +# specified with AC_CONFIG_FILES. +#-------------------------------------------------------------------- + +AC_OUTPUT() diff --git a/ds9/msgs/cs.msg b/ds9/msgs/cs.msg index a052d3d..89e03ac 100644 --- a/ds9/msgs/cs.msg +++ b/ds9/msgs/cs.msg @@ -166,6 +166,7 @@ ::msgcat::mcset cs {Contours} [encoding convertfrom iso8859-2 {Obrysy}] ::msgcat::mcset cs {Contour} [encoding convertfrom iso8859-2 {Obrys}] ::msgcat::mcset cs {Contrast} [encoding convertfrom iso8859-2 {Kontrast}] +::msgcat::mcset cs {Convert to Mask} ::msgcat::mcset cs {Convert to Polygons} [encoding convertfrom iso8859-2 {Zmìnit na obdélníky}] ::msgcat::mcset cs {Coordinate Grid Parameters} [encoding convertfrom iso8859-2 {Nastavení møí¾ky}] ::msgcat::mcset cs {Coordinate Grid} [encoding convertfrom iso8859-2 {Møí¾ka}] @@ -222,6 +223,7 @@ ::msgcat::mcset cs {Delete Frame} [encoding convertfrom iso8859-2 {Smazat snímek}] ::msgcat::mcset cs {Delete Group} [encoding convertfrom iso8859-2 {Smazat skupiny}] ::msgcat::mcset cs {Delete Selected Regions} [encoding convertfrom iso8859-2 {Smazat vybrané oblasti}] +::msgcat::mcset cs {Delete and Load Regions} ::msgcat::mcset cs {Delete} [encoding convertfrom iso8859-2 {Smazat}] ::msgcat::mcset cs {Depth} [encoding convertfrom iso8859-2 {Hloubka}] ::msgcat::mcset cs {Detector} [encoding convertfrom iso8859-2 {Detektor}] @@ -374,7 +376,6 @@ ::msgcat::mcset cs {Iteration} ::msgcat::mcset cs {JPEG Quality Factor} [encoding convertfrom iso8859-2 {Kvalita JPEGu}] ::msgcat::mcset cs {Keep-Alive} -::msgcat::mcset cs {Keyboard} [encoding convertfrom iso8859-2 {Klávesnice}] ::msgcat::mcset cs {Keyword} ::msgcat::mcset cs {Labels} [encoding convertfrom iso8859-2 {Oznaèení}] ::msgcat::mcset cs {Label} [encoding convertfrom iso8859-2 {Oznaèení}] diff --git a/ds9/msgs/da.msg b/ds9/msgs/da.msg index 1eaea8c..33d28bd 100644 --- a/ds9/msgs/da.msg +++ b/ds9/msgs/da.msg @@ -166,6 +166,7 @@ ::msgcat::mcset da {Contours} {Konturer} ::msgcat::mcset da {Contour} {Konturer} ::msgcat::mcset da {Contrast} {Kontrast} +::msgcat::mcset da {Convert to Mask} ::msgcat::mcset da {Convert to Polygons} {Omdan til poygoner} ::msgcat::mcset da {Coordinate Grid Parameters} {Koordinatnetparametre} ::msgcat::mcset da {Coordinate Grid} {Koordinatnet} @@ -222,6 +223,7 @@ ::msgcat::mcset da {Delete Frame} {Slet denne ramme} ::msgcat::mcset da {Delete Group} {Slet gruppe} ::msgcat::mcset da {Delete Selected Regions} [encoding convertfrom iso8859-1 {Slet valgte områder}] +::msgcat::mcset da {Delete and Load Regions} ::msgcat::mcset da {Delete} {Slet} ::msgcat::mcset da {Depth} {Dybde} ::msgcat::mcset da {Detector} {Detektor} @@ -374,7 +376,6 @@ ::msgcat::mcset da {Iteration} ::msgcat::mcset da {JPEG Quality Factor} {JPEG kvalitetsfaktor} ::msgcat::mcset da {Keep-Alive} -::msgcat::mcset da {Keyboard} {Tastatur} ::msgcat::mcset da {Keyword} ::msgcat::mcset da {Labels} {Etiketter} ::msgcat::mcset da {Label} {Etikette} diff --git a/ds9/msgs/de.msg b/ds9/msgs/de.msg index 5c21e2e..29359de 100644 --- a/ds9/msgs/de.msg +++ b/ds9/msgs/de.msg @@ -166,6 +166,7 @@ ::msgcat::mcset de {Contours} {Konturen} ::msgcat::mcset de {Contour} ::msgcat::mcset de {Contrast} {Kontrast} +::msgcat::mcset de {Convert to Mask} ::msgcat::mcset de {Convert to Polygons} {Zu Polygonen konvertieren} ::msgcat::mcset de {Coordinate Grid Parameters} {Koordinatennetzparameter} ::msgcat::mcset de {Coordinate Grid} {Koordinatennetz} @@ -222,6 +223,7 @@ ::msgcat::mcset de {Delete Frame} [encoding convertfrom iso8859-1 {Rahmen löschen}] ::msgcat::mcset de {Delete Group} [encoding convertfrom iso8859-1 {Gruppe löschen}] ::msgcat::mcset de {Delete Selected Regions} [encoding convertfrom iso8859-1 {Ausgewählte Regionen löschen}] +::msgcat::mcset de {Delete and Load Regions} ::msgcat::mcset de {Delete} [encoding convertfrom iso8859-1 {Löschen}] ::msgcat::mcset de {Depth} {Tiefe} ::msgcat::mcset de {Detector} {Detektor} @@ -374,7 +376,6 @@ ::msgcat::mcset de {Iteration} ::msgcat::mcset de {JPEG Quality Factor} [encoding convertfrom iso8859-1 {JPEG Qualitätsfaktor}] ::msgcat::mcset de {Keep-Alive} -::msgcat::mcset de {Keyboard} {Tastatur} ::msgcat::mcset de {Keyword} ::msgcat::mcset de {Labels} {Beschriftung} ::msgcat::mcset de {Label} diff --git a/ds9/msgs/es.msg b/ds9/msgs/es.msg index 7bacef3..73b4dff 100644 --- a/ds9/msgs/es.msg +++ b/ds9/msgs/es.msg @@ -166,6 +166,7 @@ ::msgcat::mcset es {Contours} {Contornos} ::msgcat::mcset es {Contour} ::msgcat::mcset es {Contrast} {Contraste} +::msgcat::mcset es {Convert to Mask} ::msgcat::mcset es {Convert to Polygons} [encoding convertfrom iso8859-1 {Convertir a polígonos}] ::msgcat::mcset es {Coordinate Grid Parameters} [encoding convertfrom iso8859-1 {Parámetros de la cuadrícula de coordenadas}] ::msgcat::mcset es {Coordinate Grid} [encoding convertfrom iso8859-1 {Cuadrícula de coordenadas}] @@ -222,6 +223,7 @@ ::msgcat::mcset es {Delete Frame} {Borrar marco} ::msgcat::mcset es {Delete Group} {Borrar grupo} ::msgcat::mcset es {Delete Selected Regions} {Borrar regiones seleccionadas} +::msgcat::mcset es {Delete and Load Regions} ::msgcat::mcset es {Delete} {Borrar} ::msgcat::mcset es {Depth} {Profundidad} ::msgcat::mcset es {Detector} @@ -374,7 +376,6 @@ ::msgcat::mcset es {Iteration} [encoding convertfrom iso8859-1 {Iteración}] ::msgcat::mcset es {JPEG Quality Factor} {Factor de calidad JPEG} ::msgcat::mcset es {Keep-Alive} -::msgcat::mcset es {Keyboard} {Teclado} ::msgcat::mcset es {Keyword} ::msgcat::mcset es {Labels} {Etiquetas} ::msgcat::mcset es {Label} {Etiqueta} diff --git a/ds9/msgs/fr.msg b/ds9/msgs/fr.msg index f8b2a84..8e66eb9 100644 --- a/ds9/msgs/fr.msg +++ b/ds9/msgs/fr.msg @@ -166,6 +166,7 @@ ::msgcat::mcset fr {Contours} ::msgcat::mcset fr {Contour} ::msgcat::mcset fr {Contrast} {Contraste} +::msgcat::mcset fr {Convert to Mask} ::msgcat::mcset fr {Convert to Polygons} {Convertir en polygones} ::msgcat::mcset fr {Coordinate Grid Parameters} [encoding convertfrom iso8859-1 {Paramètres de grille de coordonnées}] ::msgcat::mcset fr {Coordinate Grid} [encoding convertfrom iso8859-1 {Grille de coordonnées}] @@ -222,6 +223,7 @@ ::msgcat::mcset fr {Delete Frame} [encoding convertfrom iso8859-1 {Supprimer la fenêtre}] ::msgcat::mcset fr {Delete Group} {Supprimer le groupe} ::msgcat::mcset fr {Delete Selected Regions} [encoding convertfrom iso8859-1 {Supprimer les régions séléctionnées}] +::msgcat::mcset fr {Delete and Load Regions} ::msgcat::mcset fr {Delete} {Supprimer} ::msgcat::mcset fr {Depth} {Profondeur} ::msgcat::mcset fr {Detector} {Detecteur} @@ -374,7 +376,6 @@ ::msgcat::mcset fr {Iteration} ::msgcat::mcset fr {JPEG Quality Factor} [encoding convertfrom iso8859-1 {Le facteur de qualité JPEG}] ::msgcat::mcset fr {Keep-Alive} -::msgcat::mcset fr {Keyboard} {Clavier} ::msgcat::mcset fr {Keyword} ::msgcat::mcset fr {Labels} {Étiquettes} ::msgcat::mcset fr {Label} {Étiquette} diff --git a/ds9/msgs/ja.msg b/ds9/msgs/ja.msg index c882bc3..d9dbf8a 100644 --- a/ds9/msgs/ja.msg +++ b/ds9/msgs/ja.msg @@ -166,6 +166,7 @@ ::msgcat::mcset ja {Contours} [encoding convertfrom euc-jp "\xa5\xb3\xa5\xf3\xa5\xc8\xa5\xa2"] ::msgcat::mcset ja {Contour} ::msgcat::mcset ja {Contrast} [encoding convertfrom euc-jp "\xa5\xb3\xa5\xf3\xa5\xc8\xa5\xe9\xa5\xb9\xa5\xc8"] +::msgcat::mcset ja {Convert to Mask} ::msgcat::mcset ja {Convert to Polygons} [encoding convertfrom euc-jp "\xc2\xbf\xb3\xd1\xb7\xc1\xa4\xcb\xca\xd1\xb4\xb9"] ::msgcat::mcset ja {Coordinate Grid Parameters} [encoding convertfrom euc-jp "\xba\xc2\xc9\xb8\xa5\xb0\xa5\xea\xa5\xc3\xa5\xc9\xa4\xce\xc0\xdf\xc4\xea"] ::msgcat::mcset ja {Coordinate Grid} [encoding convertfrom euc-jp "\xba\xc2\xc9\xb8\xa5\xb0\xa5\xea\xa5\xc3\xa5\xc9"] @@ -222,6 +223,7 @@ ::msgcat::mcset ja {Delete Frame} [encoding convertfrom euc-jp "\xa5\xd5\xa5\xec\xa1\xbc\xa5\xe0\xa4\xf2\xbe\xc3\xb5\xee"] ::msgcat::mcset ja {Delete Group} [encoding convertfrom euc-jp "\xa5\xb0\xa5\xeb\xa1\xbc\xa5\xd7\xa4\xf2\xbe\xc3\xb5\xee"] ::msgcat::mcset ja {Delete Selected Regions} [encoding convertfrom euc-jp "\xc1\xaa\xc2\xf2\xa4\xb7\xa4\xbf\xce\xce\xb0\xe8\xa4\xf2\xba\xef\xbd\xfc"] +::msgcat::mcset ja {Delete and Load Regions} ::msgcat::mcset ja {Delete} [encoding convertfrom euc-jp "\xbe\xc3\xb5\xee"] ::msgcat::mcset ja {Depth} [encoding convertfrom euc-jp "\xbf\xbc\xa4\xb5"] ::msgcat::mcset ja {Detector} [encoding convertfrom euc-jp "\xb8\xa1\xbd\xd0\xb4\xef\xba\xc2\xc9\xb8"] @@ -374,7 +376,6 @@ ::msgcat::mcset ja {Iteration} [encoding convertfrom euc-jp "\xb7\xab\xa4\xea\xca\xd6\xa4\xb7"] ::msgcat::mcset ja {JPEG Quality Factor} [encoding convertfrom euc-jp "\x4a\x50\x45\x47\xa4\xce\xc9\xca\xbc\xc1"] ::msgcat::mcset ja {Keep-Alive} -::msgcat::mcset ja {Keyboard} [encoding convertfrom euc-jp "\xa5\xad\xa1\xbc\xa5\xdc\xa1\xbc\xa5\xc9"] ::msgcat::mcset ja {Keyword} ::msgcat::mcset ja {Labels} [encoding convertfrom euc-jp "\xa5\xe9\xa5\xd9\xa5\xeb"] ::msgcat::mcset ja {Label} [encoding convertfrom euc-jp "\xa5\xe9\xa5\xd9\xa5\xeb"] diff --git a/ds9/msgs/pt.msg b/ds9/msgs/pt.msg index a3e2046..0f9bc4f 100644 --- a/ds9/msgs/pt.msg +++ b/ds9/msgs/pt.msg @@ -166,6 +166,7 @@ ::msgcat::mcset pt {Contours} {Contornos} ::msgcat::mcset pt {Contour} ::msgcat::mcset pt {Contrast} {Contraste} +::msgcat::mcset pt {Convert to Mask} ::msgcat::mcset pt {Convert to Polygons} [encoding convertfrom iso8859-1 {Converter para polígonos}] ::msgcat::mcset pt {Coordinate Grid Parameters} [encoding convertfrom iso8859-1 {Parâmetros do Grid de Coordenadas}] ::msgcat::mcset pt {Coordinate Grid} {Grid de Coordenadas} @@ -222,6 +223,7 @@ ::msgcat::mcset pt {Delete Frame} {Apague o Frame} ::msgcat::mcset pt {Delete Group} {Apague o Grupo} ::msgcat::mcset pt {Delete Selected Regions} [encoding convertfrom iso8859-1 {Apagar Regiões Selecionadas}] +::msgcat::mcset pt {Delete and Load Regions} ::msgcat::mcset pt {Delete} {Apagar} ::msgcat::mcset pt {Depth} {Profundidade} ::msgcat::mcset pt {Detector} @@ -374,7 +376,6 @@ ::msgcat::mcset pt {Iteration} ::msgcat::mcset pt {JPEG Quality Factor} {Fator de qualidade JPEG} ::msgcat::mcset pt {Keep-Alive} -::msgcat::mcset pt {Keyboard} {Teclado} ::msgcat::mcset pt {Keyword} ::msgcat::mcset pt {Labels} {Legendas} ::msgcat::mcset pt {Label} {Legenda} diff --git a/ds9/msgs/zh.msg b/ds9/msgs/zh.msg index 6f382f4..bbb077f 100644 --- a/ds9/msgs/zh.msg +++ b/ds9/msgs/zh.msg @@ -166,6 +166,7 @@ ::msgcat::mcset zh {Contours} [encoding convertfrom big5 "\xB5\xA5 \xAD\xC8 \xBD\x75"] ::msgcat::mcset zh {Contour} ::msgcat::mcset zh {Contrast} +::msgcat::mcset zh {Convert to Mask} ::msgcat::mcset zh {Convert to Polygons} ::msgcat::mcset zh {Coordinate Grid Parameters} [encoding convertfrom big5 "\xAE\x79 \xBC\xD0 \xAE\xE6 \xBD\x75 \xB0\xD1 \xBC\xC6"] ::msgcat::mcset zh {Coordinate Grid} [encoding convertfrom big5 "\xAE\x79 \xBC\xD0 \xAE\xE6 \xBD\x75"] @@ -222,6 +223,7 @@ ::msgcat::mcset zh {Delete Frame} [encoding convertfrom big5 "\xA7\x52 \xB0\xA3 \xBC\x76 \xB9\xB3 \xB5\xF8 \xB5\xA1"] ::msgcat::mcset zh {Delete Group} ::msgcat::mcset zh {Delete Selected Regions} [encoding convertfrom big5 "\xA7\x52 \xB0\xA3 \xBF\xEF \xA8\xFA \xB0\xCF \xB0\xEC"] +::msgcat::mcset zh {Delete and Load Regions} ::msgcat::mcset zh {Delete} [encoding convertfrom big5 "\xA7\x52 \xB0\xA3"] ::msgcat::mcset zh {Depth} ::msgcat::mcset zh {Detector} @@ -374,7 +376,6 @@ ::msgcat::mcset zh {Iteration} ::msgcat::mcset zh {JPEG Quality Factor} ::msgcat::mcset zh {Keep-Alive} -::msgcat::mcset zh {Keyboard} ::msgcat::mcset zh {Keyword} ::msgcat::mcset zh {Labels} ::msgcat::mcset zh {Label} diff --git a/ds9/parsers/contourparser.tac b/ds9/parsers/contourparser.tac index 11384f2..417b06b 100644 --- a/ds9/parsers/contourparser.tac +++ b/ds9/parsers/contourparser.tac @@ -87,10 +87,19 @@ contour : yesno {ProcessCmdSet contour view $1 UpdateContour} | MODE_ modes | SCOPE_ scope {ContourCmdMode scope $2} | LIMITS_ numeric numeric {ContourCmdLimits $2 $3} - | LEVELS_ STRING_ {ContourCmdLevels $2} + | LEVELS_ levels | GENERATE_ {ContourDialog; ContourGenerateDialog; UpdateContour} ; +levels : numerics {ContourCmdLevels $1} +# backward compatible + | STRING_ {ContourCmdLevels $1} + ; + +numerics : numerics numeric {append _ " $2"} + | numeric + ; + load : STRING_ {ContourCmdLoad $1} | LEVELS_ STRING_ {ContourCmdLoadLevels $2} # backward compatibility diff --git a/ds9/parsers/masklex.fcl b/ds9/parsers/masklex.fcl index 080b345..22817ef 100644 --- a/ds9/parsers/masklex.fcl +++ b/ds9/parsers/masklex.fcl @@ -11,9 +11,17 @@ close {return $CLOSE_} clear {return $CLEAR_} color {return $COLOR_} mark {return $MARK_} +nan {return $NAN_} +nonnan {return $NONNAN_} +nonzero {return $NONZERO_} open {return $OPEN_} +range {return $RANGE_} +system {return $SYSTEM_} transparency {return $TRANSPARENCY_} +zero {return $ZERO_} +#include coordsys.fin +#include wcssys.fin #include numeric.fin #include string.fin #include ws.fin diff --git a/ds9/parsers/maskparser.tac b/ds9/parsers/maskparser.tac index 4759e50..3c777a7 100644 --- a/ds9/parsers/maskparser.tac +++ b/ds9/parsers/maskparser.tac @@ -2,6 +2,8 @@ %} #include def.tin +#include coordsys.tin +#include wcssys.tin #include numeric.tin #include string.tin @@ -11,11 +13,19 @@ %token CLOSE_ %token COLOR_ %token MARK_ +%token NAN_ +%token NONNAN_ +%token NONZERO_ %token OPEN_ +%token RANGE_ +%token SYSTEM_ %token TRANSPARENCY_ +%token ZERO_ %% +#include coordsys.trl +#include wcssys.trl #include numeric.trl command : mask @@ -23,12 +33,27 @@ command : mask ; mask : {global parse; set parse(result) mask} - | OPEN_ {MaskDialog} + | OPEN_ | CLOSE_ {MaskDestroyDialog} | CLEAR_ {MaskClear} | COLOR_ STRING_ {ProcessCmdSet mask color $2 MaskColor} - | MARK_ INT_ {ProcessCmdSet mask mark $2 MaskMark} + | MARK_ mark {ProcessCmdSet mask mark $2 MaskMark} + | RANGE_ numeric numeric {ProcessCmdSet2 mask low $2 high $3 MaskRange} + | SYSTEM_ system | TRANSPARENCY_ numeric {ProcessCmdSet mask transparency $2 MaskTransparency} +# backward compatibility + | MARK_ INT_ {ProcessCmdSet mask mark $2 MaskMark} + ; + +mark : ZERO_ {set _ zero} + | NONZERO_ {set _ nonzero} + | NAN_ {set _ nan} + | NONNAN_ {set _ nonnan} + | RANGE_ {set _ range} + ; + +system : coordsys {ProcessCmdSet mask system $1 MaskSystem} + | wcssys {ProcessCmdSet mask system $1 MaskSystem} ; %% diff --git a/ds9/parsers/masksendlex.fcl b/ds9/parsers/masksendlex.fcl index 993e163..71d11c8 100644 --- a/ds9/parsers/masksendlex.fcl +++ b/ds9/parsers/masksendlex.fcl @@ -9,6 +9,8 @@ color {return $COLOR_} mark {return $MARK_} +range {return $RANGE_} +system {return $SYSTEM_} transparency {return $TRANSPARENCY_} #include ws.fin diff --git a/ds9/parsers/masksendparser.tac b/ds9/parsers/masksendparser.tac index bfb4f8a..94d9acd 100644 --- a/ds9/parsers/masksendparser.tac +++ b/ds9/parsers/masksendparser.tac @@ -6,12 +6,16 @@ %token COLOR_ %token MARK_ +%token RANGE_ +%token SYSTEM_ %token TRANSPARENCY_ %% masksend : COLOR_ {ProcessSendCmdGet mask color} | MARK_ {ProcessSendCmdGet mask mark} + | RANGE_ {ProcessSendCmdGet2 mask low high} + | SYSTEM_ {ProcessSendCmdGet mask system} | TRANSPARENCY_ {ProcessSendCmdGet mask transparency} ; diff --git a/ds9/parsers/mosaicimagewfpc2lex.fcl b/ds9/parsers/mosaicimagewfpc2lex.fcl index bdcec4d..5e875f7 100644 --- a/ds9/parsers/mosaicimagewfpc2lex.fcl +++ b/ds9/parsers/mosaicimagewfpc2lex.fcl @@ -7,6 +7,7 @@ %% +mask {return $MASK_} new {return $NEW_} #include string.fin diff --git a/ds9/parsers/mosaicimagewfpc2parser.tac b/ds9/parsers/mosaicimagewfpc2parser.tac index 88030fd..a607419 100644 --- a/ds9/parsers/mosaicimagewfpc2parser.tac +++ b/ds9/parsers/mosaicimagewfpc2parser.tac @@ -6,6 +6,7 @@ %start command +%token MASK_ %token NEW_ %% @@ -14,12 +15,13 @@ command : mosaicimagewfpc2 ; -mosaicimagewfpc2 : opts {MosaicImageWFPC2CmdLoad {}} - | opts STRING_ {MosaicImageWFPC2CmdLoad $2} +mosaicimagewfpc2 : opts {MosaicImageWFPC2CmdLoad {} $1} + | opts STRING_ {MosaicImageWFPC2CmdLoad $2 $1} ; opts : - | NEW_ {CreateFrame} + | NEW_ {CreateFrame; set _ {}} + | MASK_ {set _ mask} ; %% diff --git a/ds9/tclconfig/config.tcl.in b/ds9/tclconfig/config.tcl.in deleted file mode 100644 index ffc1c9d..0000000 --- a/ds9/tclconfig/config.tcl.in +++ /dev/null @@ -1,82 +0,0 @@ -###
-# Tcl Parsable version of data from xxxConfig.sh
-###
-name {@PACKAGE_NAME@}
-version {@PACKAGE_VERSION@}
-libfile {@PKG_LIB_FILE@}
-srcdir {@srcdir@}
-prefix {@prefix@}
-exec_prefix {@exec_prefix@}
-exeext {@EXEEXT@}
-tk {@TEA_TK_EXTENSION@}
-
-bindir {@bindir@}
-libdir {@libdir@}
-includedir {@includedir@}
-datarootdir {@datarootdir@}
-datadir {@datadir@}
-mandir {@mandir@}
-cleanfiles {@CLEANFILES@}
-
-AR {@AR@}
-CC {@CC@}
-CFLAGS {@CFLAGS@}
-CFLAGS_DEBUG {@CFLAGS_DEBUG@}
-CFLAGS_OPTIMIZE {@CFLAGS_OPTIMIZE@}
-CFLAGS_DEFAULT {@CFLAGS_DEFAULT@}
-CFLAGS_WARNING {@CFLAGS_WARNING@}
-CPPFLAGS {@CPPFLAGS@}
-DEFS {@DEFS@ @PKG_CFLAGS@}
-EXEEXT {@EXEEXT@}
-LDFLAGS {@LDFLAGS@}
-LDFLAGS_DEFAULT {@LDFLAGS_DEFAULT@}
-LIBS {@PKG_LIBS@ @LIBS@}
-MAKE_LIB {@MAKE_LIB@}
-MAKE_SHARED_LIB {@MAKE_SHARED_LIB@}
-MAKE_STATIC_LIB {@MAKE_STATIC_LIB@}
-MAKE_STUB_LIB {@MAKE_STUB_LIB@}
-OBJEXT {@OBJEXT@}
-PKG_CFLAGS {@PKG_CFLAGS@}
-RANLIB {@RANLIB@}
-RANLIB_STUB {@RANLIB_STUB@}
-
-SHELL {@SHELL@}
-
-SHARED_BUILD {@SHARED_BUILD@}
-
-SHLIB_CFLAGS {@SHLIB_CFLAGS@}
-SHLIB_LD {@SHLIB_LD@}
-SHLIB_LD_LIBS {@SHLIB_LD_LIBS@}
-SHLIB_SUFFIX {@SHLIB_SUFFIX@}
-STLIB_LD {@STLIB_LD@}
-TCL_DEFS {@TCL_DEFS@}
-TCL_VERSION {@TCL_VERSION@}
-TCL_PATCH_LEVEL {@TCL_PATCH_LEVEL@}
-TCL_BIN_DIR {@TCL_BIN_DIR@}
-TCL_SRC_DIR {@TCL_SRC_DIR@}
-TEA_TK_EXTENSION {@TEA_TK_EXTENSION@}
-
-TK_VERSION {@TK_VERSION@}
-TK_PATCH_LEVEL {@TK_PATCH_LEVEL@}
-TK_BIN_DIR {@TK_BIN_DIR@}
-TK_SRC_DIR {@TK_SRC_DIR@}
-
-TEA_PLATFORM {@TEA_PLATFORM@}
-TEA_WINDOWINGSYSTEM {@TEA_WINDOWINGSYSTEM@}
-TEA_SYSTEM {@TEA_SYSTEM@}
-TEACUP_OS {@TEACUP_OS@}
-TEACUP_ARCH {@TEACUP_ARCH@}
-TEACUP_TOOLSET {@TEACUP_TOOLSET@}
-TEACUP_PROFILE {@TEACUP_PROFILE@}
-
-PRACTCL_DEFS {@PRACTCL_DEFS@}
-PRACTCL_TOOLSET {@PRACTCL_TOOLSET@}
-PRACTCL_SHARED_LIB {@PRACTCL_SHARED_LIB@}
-PRACTCL_STATIC_LIB {@PRACTCL_STATIC_LIB@}
-PRACTCL_STUB_LIB {@PRACTCL_STUB_LIB@}
-PRACTCL_LIBS {@PKG_LIBS@ @LIBS@}
-PRACTCL_VC_MANIFEST_EMBED_DLL {@PRACTCL_VC_MANIFEST_EMBED_DLL@}
-PRACTCL_VC_MANIFEST_EMBED_EXE {@PRACTCL_VC_MANIFEST_EMBED_EXE@}
-PRACTCL_NAME_LIBRARY {@PRACTCL_NAME_LIBRARY@}
-
-PRACTCL_PKG_LIBS {@PKG_LIBS@}
\ No newline at end of file diff --git a/ds9/tclconfig/practcl.tcl b/ds9/tclconfig/practcl.tcl deleted file mode 100644 index ecabbf8..0000000 --- a/ds9/tclconfig/practcl.tcl +++ /dev/null @@ -1,4923 +0,0 @@ -### -# Practcl -# An object oriented templating system for stamping out Tcl API calls to C -### -puts [list LOADED practcl.tcl from [info script]] - -package require TclOO -### -# Seek out Tcllib if it's available -### -set tcllib_path {} -foreach path {.. ../.. ../../..} { - foreach path [glob -nocomplain [file join [file normalize $path] tcllib* modules]] { - set tclib_path $path - lappend ::auto_path $path - break - } - if {$tcllib_path ne {}} break -} - -### -# Build utility functions -### - - -### -# Extend http to follow redirects (ala Sourceforge downloads) -### -namespace eval ::http {} -proc ::http::_followRedirects {url args} { - while 1 { - set token [geturl $url -validate 1] - set ncode [ncode $token] - if { $ncode eq "404" } { - error "URL Not found" - } - switch -glob $ncode { - 30[1237] {### redirect - see below ###} - default {cleanup $token ; return $url} - } - upvar #0 $token state - array set meta [set ${token}(meta)] - cleanup $token - if {![info exists meta(Location)]} { - return $url - } - set url $meta(Location) - unset meta - } - return $url -} - -proc ::http::wget {url destfile {verbose 1}} { - package require http - set tmpchan [open $destfile w] - fconfigure $tmpchan -translation binary - if { $verbose } { - puts [list GETTING [file tail $destfile] from $url] - } - set real_url [_followRedirects $url] - set token [geturl $real_url -channel $tmpchan -binary yes] - if {[ncode $token] != "200"} { - error "DOWNLOAD FAILED" - } - cleanup $token - close $tmpchan -} - -namespace eval ::practcl {} - -### -# A command to do nothing. A handy way of -# negating an instruction without -# having to comment it completely out. -# It's also a handy attachment point for -# an object to be named later -### -if {[info command ::noop] eq {}} { - proc ::noop args {} -} - -proc ::practcl::debug args { - #puts $args - ::practcl::cputs ::DEBUG_INFO $args -} - -### -# Drop in a static copy of Tcl -### -proc ::practcl::doexec args { - puts [list {*}$args] - exec {*}$args >&@ stdout -} - -proc ::practcl::doexec_in {path args} { - set PWD [pwd] - cd $path - puts [list {*}$args] - exec {*}$args >&@ stdout - cd $PWD -} - -proc ::practcl::dotclexec args { - puts [list [info nameofexecutable] {*}$args] - exec [info nameofexecutable] {*}$args >&@ stdout -} - -proc ::practcl::domake {path args} { - set PWD [pwd] - cd $path - puts [list *** $path ***] - puts [list make {*}$args] - exec make {*}$args >&@ stdout - cd $PWD -} - -proc ::practcl::domake.tcl {path args} { - set PWD [pwd] - cd $path - puts [list *** $path ***] - puts [list make.tcl {*}$args] - exec [info nameofexecutable] make.tcl {*}$args >&@ stdout - cd $PWD -} - -proc ::practcl::fossil {path args} { - set PWD [pwd] - cd $path - puts [list {*}$args] - exec fossil {*}$args >&@ stdout - cd $PWD -} - - -proc ::practcl::fossil_status {dir} { - if {[info exists ::fosdat($dir)]} { - return $::fosdat($dir) - } - set result { -tags experimental -version {} - } - set pwd [pwd] - cd $dir - set info [exec fossil status] - cd $pwd - foreach line [split $info \n] { - if {[lindex $line 0] eq "checkout:"} { - set hash [lindex $line end-3] - set maxdate [lrange $line end-2 end-1] - dict set result hash $hash - dict set result maxdate $maxdate - regsub -all {[^0-9]} $maxdate {} isodate - dict set result isodate $isodate - } - if {[lindex $line 0] eq "tags:"} { - set tags [lrange $line 1 end] - dict set result tags $tags - break - } - } - set ::fosdat($dir) $result - return $result -} - -proc ::practcl::os {} { - return [${::practcl::MAIN} define get TEACUP_OS] -} - -if {[::package vcompare $::tcl_version 8.6] < 0} { - # Approximate ::zipfile::mkzip with exec calls - proc ::practcl::mkzip {exename barekit vfspath} { - set path [file dirname [file normalize $exename]] - set zipfile [file join $path [file rootname $exename].zip] - file copy -force $barekit $exename - set pwd [pwd] - cd $vfspath - exec zip -r $zipfile . - cd $pwd - set fout [open $exename a] - set fin [open $zipfile r] - chan configure $fout -translation binary - chan configure $fin -translation binary - chan copy $fin $fout - chan close $fin - chan close $fout - exec zip -A $exename - } - proc ::practcl::sort_dict list { - set result {} - foreach key [lsort -dictionary [dict keys $list]] { - dict set result $key [dict get $list $key] - } - return $result - } -} else { - proc ::practcl::mkzip {exename barekit vfspath} { - ::practcl::tcllib_require zipfile::mkzip - ::zipfile::mkzip::mkzip $exename -runtime $barekit -directory $vfspath - } - proc ::practcl::sort_dict list { - return [::lsort -stride 2 -dictionary $list] - } -} - -proc ::practcl::local_os {} { - # If we have already run this command, return - # a cached copy of the data - if {[info exists ::practcl::LOCAL_INFO]} { - return $::practcl::LOCAL_INFO - } - set result [array get ::practcl::CONFIG] - dict set result TEACUP_PROFILE unknown - dict set result TEACUP_OS unknown - dict set result EXEEXT {} - set windows 0 - if {$::tcl_platform(platform) eq "windows"} { - set windows 1 - } - if {$windows} { - set system "windows" - set arch ix86 - dict set result TEACUP_PROFILE win32-ix86 - dict set result TEACUP_OS windows - dict set result EXEEXT .exe - } else { - set system [exec uname -s]-[exec uname -r] - set arch unknown - dict set result TEACUP_OS generic - } - dict set result TEA_PLATFORM $system - dict set result TEA_SYSTEM $system - if {[info exists ::SANDBOX]} { - dict set result sandbox $::SANDBOX - } - switch -glob $system { - Linux* { - dict set result TEACUP_OS linux - set arch [exec uname -m] - dict set result TEACUP_PROFILE "linux-glibc2.3-$arch" - } - GNU* { - set arch [exec uname -m] - dict set result TEACUP_OS "gnu" - } - NetBSD-Debian { - set arch [exec uname -m] - dict set result TEACUP_OS "netbsd-debian" - } - OpenBSD-* { - set arch [exec arch -s] - dict set result TEACUP_OS "openbsd" - } - Darwin* { - set arch [exec uname -m] - dict set result TEACUP_OS "macosx" - if {$arch eq "x86_64"} { - dict set result TEACUP_PROFILE "macosx10.5-i386-x86_84" - } else { - dict set result TEACUP_PROFILE "macosx-universal" - } - } - OpenBSD* { - set arch [exec arch -s] - dict set result TEACUP_OS "openbsd" - } - } - if {$arch eq "unknown"} { - catch {set arch [exec uname -m]} - } - switch -glob $arch { - i*86 { - set arch "ix86" - } - amd64 { - set arch "x86_64" - } - } - dict set result TEACUP_ARCH $arch - if {[dict get $result TEACUP_PROFILE] eq "unknown"} { - dict set result TEACUP_PROFILE [dict get $result TEACUP_OS]-$arch - } - set OS [dict get $result TEACUP_OS] - dict set result os $OS - - # Look for a local preference file - set pathlist {} - set userhome [file normalize ~/tcl] - set local_install [file join $userhome lib] - switch $OS { - windows { - set userhome [file join [file normalize $::env(LOCALAPPDATA)] Tcl] - if {[file exists c:/Tcl/Teapot]} { - dict set result teapot c:/Tcl/Teapot - } - } - macosx { - set userhome [file join [file normalize {~/Library/Application Support/}] Tcl] - if {[file exists {~/Library/Application Support/ActiveState/Teapot/repository/}]} { - dict set result teapot [file normalize {~/Library/Application Support/ActiveState/Teapot/repository/}] - } - dict set result local_install [file normalize ~/Library/Tcl] - if {![dict exists $result sandbox]} { - dict set result sandbox [file normalize ~/Library/Tcl/sandbox] - } - } - default { - } - } - dict set result userhome $userhome - # Load user preferences - if {[file exists [file join $userhome practcl.rc]]} { - set dat [::practcl::cat [file join $path practcl.rc]] - } - if {![dict exists $result prefix]} { - dict set result prefix $userhome - } - - # Create a default path for the teapot - if {![dict exists $result teapot]} { - dict set result teapot [file join $userhome teapot] - } - # Create a default path for the local sandbox - if {![dict exists $result sandbox]} { - dict set result sandbox [file join $userhome sandbox] - } - # Create a default path for download folder - if {![dict exists $result download]} { - dict set result download [file join $userhome download] - } - # Path to install local packages - if {![dict exists $result local_install]} { - dict set result local_install [file join $userhome lib] - } - if {![dict exists result fossil_mirror] && [::info exists ::env(FOSSIL_MIRROR)]} { - dict set result fossil_mirror $::env(FOSSIL_MIRROR) - } - - set ::practcl::LOCAL_INFO $result - return $result -} - - -### -# Detect local platform -### -proc ::practcl::config.tcl {path} { - dict set result buildpath $path - set result [local_os] - set OS [dict get $result TEACUP_OS] - set windows 0 - dict set result USEMSVC 0 - if {[file exists [file join $path config.tcl]]} { - # We have a definitive configuration file. Read its content - # and take it as gospel - set cresult [read_rc_file [file join $path config.tcl]] - set cresult [::practcl::de_shell $cresult] - if {[dict exists $cresult srcdir] && ![dict exists $cresult sandbox]} { - dict set cresult sandbox [file dirname [dict get $cresult srcdir]] - } - set result [dict merge $result [::practcl::de_shell $cresult]] - } - if {[file exists [file join $path config.site]]} { - # No config.tcl file is present but we do seed - dict set result USEMSVC 0 - foreach {f v} [::practcl::de_shell [::practcl::read_sh_file [file join $path config.site]]] { - dict set result $f $v - dict set result XCOMPILE_${f} $v - } - dict set result CONFIG_SITE [file join $path config.site] - if {[dict exist $result XCOMPILE_CC] && [regexp mingw [dict get $result XCOMPILE_CC]]} { - set windows 1 - } - } elseif {[info exists ::env(VisualStudioVersion)]} { - set windows 1 - dict set result USEMSVC 1 - } - if {$windows && [dict get $result TEACUP_OS] ne "windows"} { - if {![dict exists exists $result TEACUP_ARCH]} { - dict set result TEACUP_ARCH ix86 - } - dict set result TEACUP_PROFILE win32-[dict get $result TEACUP_ARCH] - dict set result TEACUP_OS windows - dict set result EXEEXT .exe - } - return $result -} - - -### -# Convert an MSYS path to a windows native path -### -if {$::tcl_platform(platform) eq "windows"} { -proc ::practcl::msys_to_tclpath msyspath { - return [exec sh -c "cd $msyspath ; pwd -W"] -} -} else { -proc ::practcl::msys_to_tclpath msyspath { - return [file normalize $msyspath] -} -} - -### -# Bits stolen from fileutil -### -proc ::practcl::cat fname { - set fname [open $fname r] - set data [read $fname] - close $fname - return $data -} - -proc ::practcl::file_lexnormalize {sp} { - set spx [file split $sp] - - # Resolution of embedded relative modifiers (., and ..). - - if { - ([lsearch -exact $spx . ] < 0) && - ([lsearch -exact $spx ..] < 0) - } { - # Quick path out if there are no relative modifiers - return $sp - } - - set absolute [expr {![string equal [file pathtype $sp] relative]}] - # A volumerelative path counts as absolute for our purposes. - - set sp $spx - set np {} - set noskip 1 - - while {[llength $sp]} { - set ele [lindex $sp 0] - set sp [lrange $sp 1 end] - set islast [expr {[llength $sp] == 0}] - - if {[string equal $ele ".."]} { - if { - ($absolute && ([llength $np] > 1)) || - (!$absolute && ([llength $np] >= 1)) - } { - # .. : Remove the previous element added to the - # new path, if there actually is enough to remove. - set np [lrange $np 0 end-1] - } - } elseif {[string equal $ele "."]} { - # Ignore .'s, they stay at the current location - continue - } else { - # A regular element. - lappend np $ele - } - } - if {[llength $np] > 0} { - return [eval [linsert $np 0 file join]] - # 8.5: return [file join {*}$np] - } - return {} -} - -proc ::practcl::file_relative {base dst} { - # Ensure that the link to directory 'dst' is properly done relative to - # the directory 'base'. - - if {![string equal [file pathtype $base] [file pathtype $dst]]} { - return -code error "Unable to compute relation for paths of different pathtypes: [file pathtype $base] vs. [file pathtype $dst], ($base vs. $dst)" - } - - set base [file_lexnormalize [file join [pwd] $base]] - set dst [file_lexnormalize [file join [pwd] $dst]] - - set save $dst - set base [file split $base] - set dst [file split $dst] - - while {[string equal [lindex $dst 0] [lindex $base 0]]} { - set dst [lrange $dst 1 end] - set base [lrange $base 1 end] - if {![llength $dst]} {break} - } - - set dstlen [llength $dst] - set baselen [llength $base] - - if {($dstlen == 0) && ($baselen == 0)} { - # Cases: - # (a) base == dst - - set dst . - } else { - # Cases: - # (b) base is: base/sub = sub - # dst is: base = {} - - # (c) base is: base = {} - # dst is: base/sub = sub - - while {$baselen > 0} { - set dst [linsert $dst 0 ..] - incr baselen -1 - } - # 8.5: set dst [file join {*}$dst] - set dst [eval [linsert $dst 0 file join]] - } - - return $dst -} - -# Try to load a package, and failing that -# retrieve tcllib -proc ::practcl::tcllib_require {pkg args} { - # Try to load the package from the local environment - if {[catch [list ::package require $pkg {*}$args] err]==0} { - return $err - } - ::practcl::LOCAL tool tcllib load - uplevel #0 [list ::package require $pkg {*}$args] -} - -namespace eval ::practcl::platform {} - -proc ::practcl::platform::tcl_core_options {os} { - ### - # Download our required packages - ### - set tcl_config_opts {} - # Auto-guess options for the local operating system - switch $os { - windows { - #lappend tcl_config_opts --disable-stubs - } - linux { - } - macosx { - lappend tcl_config_opts --enable-corefoundation=yes --enable-framework=no - } - } - lappend tcl_config_opts --with-tzdata - return $tcl_config_opts -} - -proc ::practcl::platform::tk_core_options {os} { - ### - # Download our required packages - ### - set tk_config_opts {} - - # Auto-guess options for the local operating system - switch $os { - windows { - } - linux { - lappend tk_config_opts --enable-xft=no --enable-xss=no - } - macosx { - lappend tk_config_opts --enable-aqua=yes - } - } - return $tk_config_opts -} - -### -# Read a stylized key/value list stored in a file -### -proc ::practcl::read_rc_file {filename {localdat {}}} { - set result $localdat - set fin [open $filename r] - set bufline {} - set rawcount 0 - set linecount 0 - while {[gets $fin thisline]>=0} { - incr rawcount - append bufline \n $thisline - if {![info complete $bufline]} continue - set line [string trimleft $bufline] - set bufline {} - if {[string index [string trimleft $line] 0] eq "#"} continue - append result \n $line - #incr linecount - #set key [lindex $line 0] - #set value [lindex $line 1] - #dict set result $key $value - } - return $result -} - -### -# topic: e71f3f61c348d56292011eec83e95f0aacc1c618 -# description: Converts a XXX.sh file into a series of Tcl variables -### -proc ::practcl::read_sh_subst {line info} { - regsub -all {\x28} $line \x7B line - regsub -all {\x29} $line \x7D line - - #set line [string map $key [string trim $line]] - foreach {field value} $info { - catch {set $field $value} - } - if [catch {subst $line} result] { - return {} - } - set result [string trim $result] - return [string trim $result '] -} - -### -# topic: 03567140cca33c814664c7439570f669b9ab88e6 -### -proc ::practcl::read_sh_file {filename {localdat {}}} { - set fin [open $filename r] - set result {} - if {$localdat eq {}} { - set top 1 - set local [array get ::env] - dict set local EXE {} - } else { - set top 0 - set local $localdat - } - while {[gets $fin line] >= 0} { - set line [string trim $line] - if {[string index $line 0] eq "#"} continue - if {$line eq {}} continue - catch { - if {[string range $line 0 6] eq "export "} { - set eq [string first "=" $line] - set field [string trim [string range $line 6 [expr {$eq - 1}]]] - set value [read_sh_subst [string range $line [expr {$eq+1}] end] $local] - dict set result $field [read_sh_subst $value $local] - dict set local $field $value - } elseif {[string range $line 0 7] eq "include "} { - set subfile [read_sh_subst [string range $line 7 end] $local] - foreach {field value} [read_sh_file $subfile $local] { - dict set result $field $value - } - } else { - set eq [string first "=" $line] - if {$eq > 0} { - set field [read_sh_subst [string range $line 0 [expr {$eq - 1}]] $local] - set value [string trim [string range $line [expr {$eq+1}] end] '] - #set value [read_sh_subst [string range $line [expr {$eq+1}] end] $local] - dict set local $field $value - dict set result $field $value - } - } - } err opts - if {[dict get $opts -code] != 0} { - #puts $opts - puts "Error reading line:\n$line\nerr: $err\n***" - return $err {*}$opts - } - } - return $result -} - -### -# A simpler form of read_sh_file tailored -# to pulling data from (tcl|tk)Config.sh -### -proc ::practcl::read_Config.sh filename { - set fin [open $filename r] - set result {} - set linecount 0 - while {[gets $fin line] >= 0} { - set line [string trim $line] - if {[string index $line 0] eq "#"} continue - if {$line eq {}} continue - catch { - set eq [string first "=" $line] - if {$eq > 0} { - set field [string range $line 0 [expr {$eq - 1}]] - set value [string trim [string range $line [expr {$eq+1}] end] '] - #set value [read_sh_subst [string range $line [expr {$eq+1}] end] $local] - dict set result $field $value - incr $linecount - } - } err opts - if {[dict get $opts -code] != 0} { - #puts $opts - puts "Error reading line:\n$line\nerr: $err\n***" - return $err {*}$opts - } - } - return $result -} - -### -# A simpler form of read_sh_file tailored -# to pulling data from a Makefile -### -proc ::practcl::read_Makefile filename { - set fin [open $filename r] - set result {} - while {[gets $fin line] >= 0} { - set line [string trim $line] - if {[string index $line 0] eq "#"} continue - if {$line eq {}} continue - catch { - set eq [string first "=" $line] - if {$eq > 0} { - set field [string trim [string range $line 0 [expr {$eq - 1}]]] - set value [string trim [string trim [string range $line [expr {$eq+1}] end] ']] - switch $field { - PKG_LIB_FILE { - dict set result libfile $value - } - srcdir { - if {$value eq "."} { - dict set result srcdir [file dirname $filename] - } else { - dict set result srcdir $value - } - } - PACKAGE_NAME { - dict set result name $value - } - PACKAGE_VERSION { - dict set result version $value - } - LIBS { - dict set result PRACTCL_LIBS $value - } - PKG_LIB_FILE { - dict set result libfile $value - } - } - } - } err opts - if {[dict get $opts -code] != 0} { - #puts $opts - puts "Error reading line:\n$line\nerr: $err\n***" - return $err {*}$opts - } - # the Compile field is about where most TEA files start getting silly - if {$field eq "compile"} { - break - } - } - return $result -} - -## Append arguments to a buffer -# The command works like puts in that each call will also insert -# a line feed. Unlike puts, blank links in the interstitial are -# suppressed -proc ::practcl::cputs {varname args} { - upvar 1 $varname buffer - if {[llength $args]==1 && [string length [string trim [lindex $args 0]]] == 0} { - - } - if {[info exist buffer]} { - if {[string index $buffer end] ne "\n"} { - append buffer \n - } - } else { - set buffer \n - } - # Trim leading \n's - append buffer [string trimleft [lindex $args 0] \n] {*}[lrange $args 1 end] -} - - -proc ::practcl::tcl_to_c {body} { - set result {} - foreach rawline [split $body \n] { - set line [string map [list \" \\\" \\ \\\\] $rawline] - cputs result "\n \"$line\\n\" \\" - } - return [string trimright $result \\] -} - - -proc ::practcl::_tagblock {text {style tcl} {note {}}} { - if {[string length [string trim $text]]==0} { - return {} - } - set output {} - switch $style { - tcl { - ::practcl::cputs output "# BEGIN $note" - } - c { - ::practcl::cputs output "/* BEGIN $note */" - } - default { - ::practcl::cputs output "# BEGIN $note" - } - } - ::practcl::cputs output $text - switch $style { - tcl { - ::practcl::cputs output "# END $note" - } - c { - ::practcl::cputs output "/* END $note */" - } - default { - ::practcl::cputs output "# END $note" - } - } - return $output -} - -proc ::practcl::_isdirectory name { - return [file isdirectory $name] -} - -### -# Return true if the pkgindex file contains -# any statement other than "package ifneeded" -# and/or if any package ifneeded loads a DLL -### -proc ::practcl::_pkgindex_directory {path} { - set buffer {} - set pkgidxfile [file join $path pkgIndex.tcl] - if {![file exists $pkgidxfile]} { - # No pkgIndex file, read the source - foreach file [glob -nocomplain $path/*.tm] { - set file [file normalize $file] - set fname [file rootname [file tail $file]] - ### - # We used to be able to ... Assume the package is correct in the filename - # No hunt for a "package provides" - ### - set package [lindex [split $fname -] 0] - set version [lindex [split $fname -] 1] - ### - # Read the file, and override assumptions as needed - ### - set fin [open $file r] - set dat [read $fin] - close $fin - # Look for a teapot style Package statement - foreach line [split $dat \n] { - set line [string trim $line] - if { [string range $line 0 9] != "# Package " } continue - set package [lindex $line 2] - set version [lindex $line 3] - break - } - # Look for a package provide statement - foreach line [split $dat \n] { - set line [string trim $line] - if { [string range $line 0 14] != "package provide" } continue - set package [lindex $line 2] - set version [lindex $line 3] - break - } - append buffer "package ifneeded $package $version \[list source \[file join \$dir [file tail $file]\]\]" \n - } - foreach file [glob -nocomplain $path/*.tcl] { - if { [file tail $file] == "version_info.tcl" } continue - set fin [open $file r] - set dat [read $fin] - close $fin - if {![regexp "package provide" $dat]} continue - set fname [file rootname [file tail $file]] - # Look for a package provide statement - foreach line [split $dat \n] { - set line [string trim $line] - if { [string range $line 0 14] != "package provide" } continue - set package [lindex $line 2] - set version [lindex $line 3] - if {[string index $package 0] in "\$ \["} continue - if {[string index $version 0] in "\$ \["} continue - append buffer "package ifneeded $package $version \[list source \[file join \$dir [file tail $file]\]\]" \n - break - } - } - return $buffer - } - set fin [open $pkgidxfile r] - set dat [read $fin] - close $fin - set trace 0 - #if {[file tail $path] eq "tool"} { - # set trace 1 - #} - set thisline {} - foreach line [split $dat \n] { - append thisline $line \n - if {![info complete $thisline]} continue - set line [string trim $line] - if {[string length $line]==0} { - set thisline {} ; continue - } - if {[string index $line 0] eq "#"} { - set thisline {} ; continue - } - if {[regexp "if.*catch.*package.*Tcl.*return" $thisline]} { - if {$trace} {puts "[file dirname $pkgidxfile] Ignoring $thisline"} - set thisline {} ; continue - } - if {[regexp "if.*package.*vsatisfies.*package.*provide.*return" $thisline]} { - if {$trace} { puts "[file dirname $pkgidxfile] Ignoring $thisline" } - set thisline {} ; continue - } - if {![regexp "package.*ifneeded" $thisline]} { - # This package index contains arbitrary code - # source instead of trying to add it to the master - # package index - if {$trace} { puts "[file dirname $pkgidxfile] Arbitrary code $thisline" } - return {source [file join $dir pkgIndex.tcl]} - } - append buffer $thisline \n - set thisline {} - } - if {$trace} {puts [list [file dirname $pkgidxfile] $buffer]} - return $buffer -} - - -proc ::practcl::_pkgindex_path_subdir {path} { - set result {} - foreach subpath [glob -nocomplain [file join $path *]] { - if {[file isdirectory $subpath]} { - lappend result $subpath {*}[_pkgindex_path_subdir $subpath] - } - } - return $result -} -### -# Index all paths given as though they will end up in the same -# virtual file system -### -proc ::practcl::pkgindex_path args { - set stack {} - set buffer { -lappend ::PATHSTACK $dir - } - foreach base $args { - set base [file normalize $base] - set paths [::practcl::_pkgindex_path_subdir $base] - set i [string length $base] - # Build a list of all of the paths - foreach path $paths { - if {$path eq $base} continue - set path_indexed($path) 0 - } - set path_indexed($base) 1 - set path_indexed([file join $base boot tcl]) 1 - #set path_index([file join $base boot tk]) 1 - - foreach path $paths { - if {$path_indexed($path)} continue - set thisdir [file_relative $base $path] - #set thisdir [string range $path $i+1 end] - #append buffer "# DIR $thisdir" \n - set idxbuf [::practcl::_pkgindex_directory $path] - if {[string length $idxbuf]} { - incr path_indexed($path) - append buffer "set dir \[set PKGDIR \[file join \[lindex \$::PATHSTACK end\] $thisdir\]\]" \n - append buffer [string map {$dir $PKGDIR} [string trimright $idxbuf]] \n - } - } - } - append buffer { -set dir [lindex $::PATHSTACK end] -set ::PATHSTACK [lrange $::PATHSTACK 0 end-1] -} - return $buffer -} - -### -# topic: 64319f4600fb63c82b2258d908f9d066 -# description: Script to build the VFS file system -### -proc ::practcl::installDir {d1 d2} { - - puts [format {%*sCreating %s} [expr {4 * [info level]}] {} [file tail $d2]] - file delete -force -- $d2 - file mkdir $d2 - - foreach ftail [glob -directory $d1 -nocomplain -tails *] { - set f [file join $d1 $ftail] - if {[file isdirectory $f] && [string compare CVS $ftail]} { - installDir $f [file join $d2 $ftail] - } elseif {[file isfile $f]} { - file copy -force $f [file join $d2 $ftail] - if {$::tcl_platform(platform) eq {unix}} { - file attributes [file join $d2 $ftail] -permissions 0644 - } else { - file attributes [file join $d2 $ftail] -readonly 1 - } - } - } - - if {$::tcl_platform(platform) eq {unix}} { - file attributes $d2 -permissions 0755 - } else { - file attributes $d2 -readonly 1 - } -} - -proc ::practcl::copyDir {d1 d2 {toplevel 1}} { - if {$toplevel} { - puts [list ::practcl::copyDir $d1 -> $d2] - } - #file delete -force -- $d2 - file mkdir $d2 - - foreach ftail [glob -directory $d1 -nocomplain -tails *] { - set f [file join $d1 $ftail] - if {[file isdirectory $f] && [string compare CVS $ftail]} { - copyDir $f [file join $d2 $ftail] 0 - } elseif {[file isfile $f]} { - file copy -force $f [file join $d2 $ftail] - } - } -} - -::oo::class create ::practcl::metaclass { - superclass ::oo::object - - method script script { - eval $script - } - - method source filename { - source $filename - } - - method initialize {} {} - - method define {submethod args} { - my variable define - switch $submethod { - dump { - return [array get define] - } - add { - set field [lindex $args 0] - if {![info exists define($field)]} { - set define($field) {} - } - foreach arg [lrange $args 1 end] { - if {$arg ni $define($field)} { - lappend define($field) $arg - } - } - return $define($field) - } - remove { - set field [lindex $args 0] - if {![info exists define($field)]} { - return - } - set rlist [lrange $args 1 end] - set olist $define($field) - set nlist {} - foreach arg $olist { - if {$arg in $rlist} continue - lappend nlist $arg - } - set define($field) $nlist - return $nlist - } - exists { - set field [lindex $args 0] - return [info exists define($field)] - } - getnull - - get - - cget { - set field [lindex $args 0] - if {[info exists define($field)]} { - return $define($field) - } - return [lindex $args 1] - } - set { - if {[llength $args]==1} { - set arglist [lindex $args 0] - } else { - set arglist $args - } - array set define $arglist - if {[dict exists $arglist class]} { - my select - } - } - default { - array $submethod define {*}$args - } - } - } - - method graft args { - my variable organs - if {[llength $args] == 1} { - error "Need two arguments" - } - set object {} - foreach {stub object} $args { - dict set organs $stub $object - oo::objdefine [self] forward <${stub}> $object - oo::objdefine [self] export <${stub}> - } - return $object - } - - method organ {{stub all}} { - my variable organs - if {![info exists organs]} { - return {} - } - if { $stub eq "all" } { - return $organs - } - if {[dict exists $organs $stub]} { - return [dict get $organs $stub] - } - } - - method link {command args} { - my variable links - switch $command { - object { - foreach obj $args { - foreach linktype [$obj linktype] { - my link add $linktype $obj - } - } - } - add { - ### - # Add a link to an object that was externally created - ### - if {[llength $args] ne 2} { error "Usage: link add LINKTYPE OBJECT"} - lassign $args linktype object - if {[info exists links($linktype)] && $object in $links($linktype)} { - return - } - lappend links($linktype) $object - } - remove { - set object [lindex $args 0] - if {[llength $args]==1} { - set ltype * - } else { - set ltype [lindex $args 1] - } - foreach {linktype elements} [array get links $ltype] { - if {$object in $elements} { - set nlist {} - foreach e $elements { - if { $object ne $e } { lappend nlist $e } - } - set links($linktype) $nlist - } - } - } - list { - if {[llength $args]==0} { - return [array get links] - } - if {[llength $args] != 1} { error "Usage: link list LINKTYPE"} - set linktype [lindex $args 0] - if {![info exists links($linktype)]} { - return {} - } - return $links($linktype) - } - dump { - return [array get links] - } - } - } - - method select {} { - my variable define - set class {} - if {[info exists define(class)]} { - if {[info command $define(class)] ne {}} { - set class $define(class) - } elseif {[info command ::practcl::$define(class)] ne {}} { - set class ::practcl::$define(class) - } else { - switch $define(class) { - default { - set class ::practcl::object - } - } - } - } - if {$class ne {}} { - ::oo::objdefine [self] class $class - } - if {[::info exists define(oodefine)]} { - ::oo::objdefine [self] $define(oodefine) - unset define(oodefine) - } - } -} - -proc ::practcl::trigger {args} { - foreach name $args { - if {[dict exists $::make_objects $name]} { - [dict get $::make_objects $name] triggers - } - } -} - -proc ::practcl::depends {args} { - foreach name $args { - if {[dict exists $::make_objects $name]} { - [dict get $::make_objects $name] check - } - } -} - -proc ::practcl::target {name info} { - set obj [::practcl::target_obj new $name $info] - dict set ::make_objects $name $obj - if {[dict exists $info aliases]} { - foreach item [dict get $info aliases] { - if {![dict exists $::make_objects $item]} { - dict set ::make_objects $item $obj - } - } - } - set ::make($name) 0 - set ::trigger($name) 0 - set filename [$obj define get filename] - if {$filename ne {}} { - set ::target($name) $filename - } -} - -### Batch Tasks - -proc ::practcl::de_shell {data} { - set values {} - foreach flag {DEFS TCL_DEFS TK_DEFS} { - if {[dict exists $data $flag]} { - #set value {} - #foreach item [dict get $data $flag] { - # append value " " [string map {{ } {\ }} $item] - #} - dict set values $flag [dict get $data $flag] - } - } - set map {} - lappend map {${PKG_OBJECTS}} %LIBRARY_OBJECTS% - lappend map {$(PKG_OBJECTS)} %LIBRARY_OBJECTS% - lappend map {${PKG_STUB_OBJECTS}} %LIBRARY_STUB_OBJECTS% - lappend map {$(PKG_STUB_OBJECTS)} %LIBRARY_STUB_OBJECTS% - - if {[dict exists $data name]} { - lappend map %LIBRARY_NAME% [dict get $data name] - lappend map %LIBRARY_VERSION% [dict get $data version] - lappend map %LIBRARY_VERSION_NODOTS% [string map {. {}} [dict get $data version]] - if {[dict exists $data libprefix]} { - lappend map %LIBRARY_PREFIX% [dict get $data libprefix] - } else { - lappend map %LIBRARY_PREFIX% [dict get $data prefix] - } - } - foreach flag [dict keys $data] { - if {$flag in {TCL_DEFS TK_DEFS DEFS}} continue - set value [string trim [dict get $data $flag] \"] - dict set map "\$\{${flag}\}" $value - dict set map "\$\(${flag}\)" $value - #dict set map "\$${flag}" $value - dict set map "%${flag}%" $value - dict set values $flag [dict get $data $flag] - #dict set map "\$\{${flag}\}" $proj($flag) - } - set changed 1 - while {$changed} { - set changed 0 - foreach {field value} $values { - if {$field in {TCL_DEFS TK_DEFS DEFS}} continue - dict with values {} - set newval [string map $map $value] - if {$newval eq $value} continue - set changed 1 - dict set values $field $newval - } - } - return $values -} - -### -# Ancestor-less class intended to be a mixin -# which defines a family of build related behaviors -# that are modified when targetting either gcc or msvc -### -::oo::class create ::practcl::build { - ## method DEFS - # This method populates 4 variables: - # name - The name of the package - # version - The version of the package - # defs - C flags passed to the compiler - # includedir - A list of paths to feed to the compiler for finding headers - # - method build-cflags {PROJECT DEFS namevar versionvar defsvar} { - upvar 1 $namevar name $versionvar version NAME NAME $defsvar defs - set name [string tolower [${PROJECT} define get name [${PROJECT} define get pkg_name]]] - set NAME [string toupper $name] - set version [${PROJECT} define get version [${PROJECT} define get pkg_vers]] - if {$version eq {}} { - set version 0.1a - } - set defs $DEFS - foreach flag { - -DPACKAGE_NAME - -DPACKAGE_VERSION - -DPACKAGE_TARNAME - -DPACKAGE_STRING - } { - if {[set i [string first $flag $defs]] >= 0} { - set j [string first -D $flag [expr {$i+[string length $flag]}]] - set predef [string range $defs 0 [expr {$i-1}]] - set postdef [string range $defs $j end] - set defs "$predef $postdef" - } - } - append defs " -DPACKAGE_NAME=\"${name}\" -DPACKAGE_VERSION=\"${version}\"" - append defs " -DPACKAGE_TARNAME=\"${name}\" -DPACKAGE_STRING=\"${name}\x5c\x20${version}\"" - return $defs - } - - method build-tclkit_main {PROJECT PKG_OBJS} { - ### - # Build static package list - ### - set statpkglist {} - foreach cobj [list {*}${PKG_OBJS} $PROJECT] { - foreach {pkg info} [$cobj static-packages] { - dict set statpkglist $pkg $info - } - } - foreach {ofile info} [${PROJECT} compile-products] { - if {![dict exists $info object]} continue - set cobj [dict get $info object] - foreach {pkg info} [$cobj static-packages] { - dict set statpkglist $pkg $info - } - } - - set result {} - $PROJECT include {<tcl.h>} - $PROJECT include {"tclInt.h"} - $PROJECT include {"tclFileSystem.h"} - $PROJECT include {<assert.h>} - $PROJECT include {<stdio.h>} - $PROJECT include {<stdlib.h>} - $PROJECT include {<string.h>} - $PROJECT include {<math.h>} - - $PROJECT code header { -#ifndef MODULE_SCOPE -# define MODULE_SCOPE extern -#endif - -/* -** Provide a dummy Tcl_InitStubs if we are using this as a static -** library. -*/ -#ifndef USE_TCL_STUBS -# undef Tcl_InitStubs -# define Tcl_InitStubs(a,b,c) TCL_VERSION -#endif -#define STATIC_BUILD 1 -#undef USE_TCL_STUBS - -/* Make sure the stubbed variants of those are never used. */ -#undef Tcl_ObjSetVar2 -#undef Tcl_NewStringObj -#undef Tk_Init -#undef Tk_MainEx -#undef Tk_SafeInit -} - - # Build an area of the file for #define directives and - # function declarations - set define {} - set mainhook [$PROJECT define get TCL_LOCAL_MAIN_HOOK Tclkit_MainHook] - set mainfunc [$PROJECT define get TCL_LOCAL_APPINIT Tclkit_AppInit] - set mainscript [$PROJECT define get main.tcl main.tcl] - set vfsroot [$PROJECT define get vfsroot [file join [$PROJECT define get ZIPFS_VOLUME] app]] - set vfs_main "${vfsroot}/${mainscript}" - set vfs_tcl_library "${vfsroot}/boot/tcl" - set vfs_tk_library "${vfsroot}/boot/tk" - - set map {} - foreach var { - vfsroot mainhook mainfunc vfs_main vfs_tcl_library vfs_tk_library - } { - dict set map %${var}% [set $var] - } - set preinitscript { -set ::odie(boot_vfs) {%vfsroot%} -set ::SRCDIR {%vfsroot%} -if {[file exists {%vfs_tcl_library%}]} { - set ::tcl_library {%vfs_tcl_library%} - set ::auto_path {} -} -if {[file exists {%vfs_tk_library%}]} { - set ::tk_library {%vfs_tk_library%} -} -} ; # Preinitscript - - set zvfsboot { -/* - * %mainhook% -- - * Performs the argument munging for the shell - */ - } - ::practcl::cputs zvfsboot { - CONST char *archive; - Tcl_FindExecutable(*argv[0]); - archive=Tcl_GetNameOfExecutable(); - } - # We have to initialize the virtual filesystem before calling - # Tcl_Init(). Otherwise, Tcl_Init() will not be able to find - # its startup script files. - if {[$PROJECT define get tip_430 0]} { - ::practcl::cputs zvfsboot " if(!TclZipfsMount(NULL, archive, \"%vfsroot%\", NULL)) \x7B " - } else { - $PROJECT include {"tclZipfs.h"} - ::practcl::cputs zvfsboot { Tclzipfs_Init(NULL);} - ::practcl::cputs zvfsboot " if(!Tclzipfs_Mount(NULL, archive, \"%vfsroot%\", NULL)) \x7B " - } - ::practcl::cputs zvfsboot { - Tcl_Obj *vfsinitscript; - vfsinitscript=Tcl_NewStringObj("%vfs_main%",-1); - Tcl_IncrRefCount(vfsinitscript); - if(Tcl_FSAccess(vfsinitscript,F_OK)==0) { - /* Startup script should be set before calling Tcl_AppInit */ - Tcl_SetStartupScript(vfsinitscript,NULL); - } - } - ::practcl::cputs zvfsboot " TclSetPreInitScript([::practcl::tcl_to_c $preinitscript])\;" - ::practcl::cputs zvfsboot " \x7D else \x7B" - ::practcl::cputs zvfsboot " TclSetPreInitScript([::practcl::tcl_to_c { -foreach path { - ../tcl -} { - set p [file join $path library init.tcl] - if {[file exists [file join $path library init.tcl]]} { - set ::tcl_library [file normalize [file join $path library]] - break - } -} -foreach path { - ../tk -} { - if {[file exists [file join $path library tk.tcl]]} { - set ::tk_library [file normalize [file join $path library]] - break - } -} -}])\;" - - ::practcl::cputs zvfsboot " \x7D" - ::practcl::cputs zvfsboot " return TCL_OK;" - - if {[$PROJECT define get TEACUP_OS] eq "windows"} { - set header {int %mainhook%(int *argc, TCHAR ***argv)} - } else { - set header {int %mainhook%(int *argc, char ***argv)} - } - $PROJECT c_function [string map $map $header] [string map $map $zvfsboot] - - practcl::cputs appinit "int %mainfunc%(Tcl_Interp *interp) \x7B" - - # Build AppInit() - set appinit {} - practcl::cputs appinit { - if ((Tcl_Init)(interp) == TCL_ERROR) { - return TCL_ERROR; - } -} - set main_init_script {} - - foreach {statpkg info} $statpkglist { - set initfunc {} - if {[dict exists $info initfunc]} { - set initfunc [dict get $info initfunc] - } - if {$initfunc eq {}} { - set initfunc [string totitle ${statpkg}]_Init - } - if {![dict exists $info version]} { - error "$statpkg HAS NO VERSION" - } - # We employ a NULL to prevent the package system from thinking the - # package is actually loaded into the interpreter - $PROJECT code header "extern Tcl_PackageInitProc $initfunc\;\n" - set script [list package ifneeded $statpkg [dict get $info version] [list ::load {} $statpkg]] - append main_init_script \n [list set ::kitpkg(${statpkg}) $script] - if {[dict get $info autoload]} { - ::practcl::cputs appinit " if(${initfunc}(interp)) return TCL_ERROR\;" - ::practcl::cputs appinit " Tcl_StaticPackage(interp,\"$statpkg\",$initfunc,NULL)\;" - } else { - ::practcl::cputs appinit "\n Tcl_StaticPackage(NULL,\"$statpkg\",$initfunc,NULL)\;" - append main_init_script \n $script - } - } - append main_init_script \n { -if {[file exists [file join $::SRCDIR packages.tcl]]} { - #In a wrapped exe, we don't go out to the environment - set dir $::SRCDIR - source [file join $::SRCDIR packages.tcl] -} -# Specify a user-specific startup file to invoke if the application -# is run interactively. Typically the startup file is "~/.apprc" -# where "app" is the name of the application. If this line is deleted -# then no user-specific startup file will be run under any conditions. - } - append main_init_script \n [list set tcl_rcFileName [$PROJECT define get tcl_rcFileName ~/.tclshrc]] - practcl::cputs appinit " Tcl_Eval(interp,[::practcl::tcl_to_c $main_init_script]);" - practcl::cputs appinit { return TCL_OK;} - $PROJECT c_function [string map $map "int %mainfunc%(Tcl_Interp *interp)"] [string map $map $appinit] -} - -} - - -::oo::class create ::practcl::build.gcc { - superclass ::practcl::build - - method build-compile-sources {PROJECT COMPILE {CPPCOMPILE {}}} { - set EXTERN_OBJS {} - set OBJECTS {} - set result {} - set builddir [$PROJECT define get builddir] - file mkdir [file join $builddir objs] - set debug [$PROJECT define get debug 0] - if {$CPPCOMPILE eq {}} { - set CPPCOMPILE $COMPILE - } - set task [${PROJECT} compile-products] - ### - # Compile the C sources - ### - foreach {ofile info} $task { - dict set task $ofile done 0 - if {[dict exists $info external] && [dict get $info external]==1} { - dict set task $ofile external 1 - } else { - dict set task $ofile external 0 - } - if {[dict exists $info library]} { - dict set task $ofile done 1 - continue - } - # Products with no cfile aren't compiled - if {![dict exists $info cfile] || [set cfile [dict get $info cfile]] eq {}} { - dict set task $ofile done 1 - continue - } - set cfile [dict get $info cfile] - set ofilename [file join $builddir objs [file tail $ofile]] - if {$debug} { - set ofilename [file join $builddir objs [file rootname [file tail $ofile]].debug.o] - } - dict set task $ofile filename $ofilename - if {[file exists $ofilename] && [file mtime $ofilename]>[file mtime $cfile]} { - lappend result $ofilename - dict set task $ofile done 1 - continue - } - if {![dict exist $info command]} { - if {[file extension $cfile] in {.c++ .cpp}} { - set cmd $CPPCOMPILE - } else { - set cmd $COMPILE - } - if {[dict exists $info extra]} { - append cmd " [dict get $info extra]" - } - append cmd " -c $cfile" - append cmd " -o $ofilename" - dict set task $ofile command $cmd - } - } - set completed 0 - while {$completed==0} { - set completed 1 - foreach {ofile info} $task { - set waiting {} - if {[dict exists $info done] && [dict get $info done]} continue - if {[dict exists $info depend]} { - foreach file [dict get $info depend] { - if {[dict exists $task $file command] && [dict exists $task $file done] && [dict get $task $file done] != 1} { - set waiting $file - break - } - } - } - if {$waiting ne {}} { - set completed 0 - puts "$ofile waiting for $waiting" - continue - } - if {[dict exists $info command]} { - set cmd [dict get $info command] - puts "$cmd" - exec {*}$cmd >&@ stdout - } - lappend result [dict get $info filename] - dict set task $ofile done 1 - } - } - return $result -} - -method build-Makefile {path PROJECT} { - array set proj [$PROJECT define dump] - set path $proj(builddir) - cd $path - set includedir . - #lappend includedir [::practcl::file_relative $path $proj(TCL_INCLUDES)] - lappend includedir [::practcl::file_relative $path [file normalize [file join $proj(TCL_SRC_DIR) generic]]] - lappend includedir [::practcl::file_relative $path [file normalize [file join $proj(srcdir) generic]]] - foreach include [$PROJECT generate-include-directory] { - set cpath [::practcl::file_relative $path [file normalize $include]] - if {$cpath ni $includedir} { - lappend includedir $cpath - } - } - set INCLUDES "-I[join $includedir " -I"]" - set NAME [string toupper $proj(name)] - set result {} - set products {} - set libraries {} - set thisline {} - ::practcl::cputs result "${NAME}_DEFS = $proj(DEFS)\n" - ::practcl::cputs result "${NAME}_INCLUDES = -I\"[join $includedir "\" -I\""]\"\n" - ::practcl::cputs result "${NAME}_COMPILE = \$(CC) \$(CFLAGS) \$(PKG_CFLAGS) \$(${NAME}_DEFS) \$(${NAME}_INCLUDES) \$(INCLUDES) \$(AM_CPPFLAGS) \$(CPPFLAGS) \$(AM_CFLAGS)" - ::practcl::cputs result "${NAME}_CPPCOMPILE = \$(CXX) \$(CFLAGS) \$(PKG_CFLAGS) \$(${NAME}_DEFS) \$(${NAME}_INCLUDES) \$(INCLUDES) \$(AM_CPPFLAGS) \$(CPPFLAGS) \$(AM_CFLAGS)" - - foreach {ofile info} [$PROJECT compile-products] { - dict set products $ofile $info - if {[dict exists $info library]} { -lappend libraries $ofile -continue - } - if {[dict exists $info depend]} { - ::practcl::cputs result "\n${ofile}: [dict get $info depend]" - } else { - ::practcl::cputs result "\n${ofile}:" - } - set cfile [dict get $info cfile] - if {[file extension $cfile] in {.c++ .cpp}} { - set cmd "\t\$\(${NAME}_CPPCOMPILE\)" - } else { - set cmd "\t\$\(${NAME}_COMPILE\)" - } - if {[dict exists $info extra]} { - append cmd " [dict get $info extra]" - } - append cmd " -c [dict get $info cfile] -o \$@\n\t" - ::practcl::cputs result $cmd - } - - set map {} - lappend map %LIBRARY_NAME% $proj(name) - lappend map %LIBRARY_VERSION% $proj(version) - lappend map %LIBRARY_VERSION_NODOTS% [string map {. {}} $proj(version)] - lappend map %LIBRARY_PREFIX% [$PROJECT define getnull libprefix] - - if {[string is true [$PROJECT define get SHARED_BUILD]]} { - set outfile [$PROJECT define get libfile] - } else { - set outfile [$PROJECT shared_library] - } - $PROJECT define set shared_library $outfile - ::practcl::cputs result " -${NAME}_SHLIB = $outfile -${NAME}_OBJS = [dict keys $products] -" - - #lappend map %OUTFILE% {\[$]@} - lappend map %OUTFILE% $outfile - lappend map %LIBRARY_OBJECTS% "\$(${NAME}_OBJS)" - ::practcl::cputs result "$outfile: \$(${NAME}_OBJS)" - ::practcl::cputs result "\t[string map $map [$PROJECT define get PRACTCL_SHARED_LIB]]" - if {[$PROJECT define get PRACTCL_VC_MANIFEST_EMBED_DLL] ni {: {}}} { - ::practcl::cputs result "\t[string map $map [$PROJECT define get PRACTCL_VC_MANIFEST_EMBED_DLL]]" - } - ::practcl::cputs result {} - if {[string is true [$PROJECT define get SHARED_BUILD]]} { - #set outfile [$PROJECT static_library] - set outfile $proj(name).a - } else { - set outfile [$PROJECT define get libfile] - } - $PROJECT define set static_library $outfile - dict set map %OUTFILE% $outfile - ::practcl::cputs result "$outfile: \$(${NAME}_OBJS)" - ::practcl::cputs result "\t[string map $map [$PROJECT define get PRACTCL_STATIC_LIB]]" - ::practcl::cputs result {} - return $result -} - -### -# Produce a static or dynamic library -### -method build-library {outfile PROJECT} { - array set proj [$PROJECT define dump] - set path $proj(builddir) - cd $path - set includedir . - #lappend includedir [::practcl::file_relative $path $proj(TCL_INCLUDES)] - lappend includedir [::practcl::file_relative $path [file normalize [file join $proj(TCL_SRC_DIR) generic]]] - lappend includedir [::practcl::file_relative $path [file normalize [file join $proj(srcdir) generic]]] - if {[$PROJECT define get tk 0]} { - lappend includedir [::practcl::file_relative $path [file normalize [file join $proj(TK_SRC_DIR) generic]]] - lappend includedir [::practcl::file_relative $path [file normalize [file join $proj(TK_SRC_DIR) ttk]]] - lappend includedir [::practcl::file_relative $path [file normalize [file join $proj(TK_SRC_DIR) xlib]]] - lappend includedir [::practcl::file_relative $path [file normalize $proj(TK_BIN_DIR)]] - } - foreach include [$PROJECT generate-include-directory] { - set cpath [::practcl::file_relative $path [file normalize $include]] - if {$cpath ni $includedir} { - lappend includedir $cpath - } - } - my build-cflags $PROJECT $proj(DEFS) name version defs - set NAME [string toupper $name] - set debug [$PROJECT define get debug 0] - set os [$PROJECT define get TEACUP_OS] - - set INCLUDES "-I[join $includedir " -I"]" - if {$debug} { - set COMPILE "$proj(CC) $proj(CFLAGS_DEBUG) -ggdb \ -$proj(CFLAGS_WARNING) $INCLUDES $defs" - - if {[info exists proc(CXX)]} { - set COMPILECPP "$proj(CXX) $defs $INCLUDES $proj(CFLAGS_DEBUG) -ggdb \ - $defs $proj(CFLAGS_WARNING)" - } else { - set COMPILECPP $COMPILE - } - } else { - set COMPILE "$proj(CC) $proj(CFLAGS) $defs $INCLUDES " - - if {[info exists proc(CXX)]} { - set COMPILECPP "$proj(CXX) $defs $INCLUDES $proj(CFLAGS) $defs" - } else { - set COMPILECPP $COMPILE - } - } - - set products [my build-compile-sources $PROJECT $COMPILE $COMPILECPP] - - set map {} - lappend map %LIBRARY_NAME% $proj(name) - lappend map %LIBRARY_VERSION% $proj(version) - lappend map %LIBRARY_VERSION_NODOTS% [string map {. {}} $proj(version)] - lappend map %OUTFILE% $outfile - lappend map %LIBRARY_OBJECTS% $products - lappend map {${CFLAGS}} "$proj(CFLAGS_DEFAULT) $proj(CFLAGS_WARNING)" - - if {[string is true [$PROJECT define get SHARED_BUILD 1]]} { - set cmd [$PROJECT define get PRACTCL_SHARED_LIB] - append cmd " [$PROJECT define get PRACTCL_LIBS]" - set cmd [string map $map $cmd] - puts $cmd - exec {*}$cmd >&@ stdout - if {[$PROJECT define get PRACTCL_VC_MANIFEST_EMBED_DLL] ni {: {}}} { - set cmd [string map $map [$PROJECT define get PRACTCL_VC_MANIFEST_EMBED_DLL]] - puts $cmd - exec {*}$cmd >&@ stdout - } - } else { - set cmd [string map $map [$PROJECT define get PRACTCL_STATIC_LIB]] - puts $cmd - exec {*}$cmd >&@ stdout - } - set ranlib [$PROJECT define get RANLIB] - if {$ranlib ni {{} :}} { - catch {exec $ranlib $outfile} - } -} - -### -# Produce a static executable -### -method build-tclsh {outfile PROJECT} { - puts " BUILDING STATIC TCLSH " - set TCLOBJ [$PROJECT project TCLCORE] - set PKG_OBJS {} - foreach item [$PROJECT link list core.library] { - if {[string is true [$item define get static]]} { - lappend PKG_OBJS $item - } - } - foreach item [$PROJECT link list package] { - if {[string is true [$item define get static]]} { - lappend PKG_OBJS $item - } - } - array set TCL [$TCLOBJ config.sh] - - set TKOBJ [$PROJECT project tk] - if {[info command $TKOBJ] eq {}} { - set TKOBJ ::noop - $PROJECT define set static_tk 0 - } else { - array set TK [$TKOBJ config.sh] - $PROJECT define set static_tk [$TKOBJ define get static] - set TKSRCDIR [$TKOBJ define get srcdir] - } - set path [file dirname $outfile] - cd $path - ### - # For a static Tcl shell, we need to build all local sources - # with the same DEFS flags as the tcl core was compiled with. - # The DEFS produced by a TEA extension aren't intended to operate - # with the internals of a staticly linked Tcl - ### - my build-cflags $PROJECT $TCL(defs) name version defs - set debug [$PROJECT define get debug 0] - set NAME [string toupper $name] - set result {} - set libraries {} - set thisline {} - set OBJECTS {} - set EXTERN_OBJS {} - foreach obj $PKG_OBJS { - $obj compile - set config($obj) [$obj config.sh] - } - set os [$PROJECT define get TEACUP_OS] - set TCLSRCDIR [$TCLOBJ define get srcdir] - - set includedir . - foreach include [$TCLOBJ generate-include-directory] { - set cpath [::practcl::file_relative $path [file normalize $include]] - if {$cpath ni $includedir} { - lappend includedir $cpath - } - } - lappend includedir [::practcl::file_relative $path [file normalize ../tcl/compat/zlib]] - foreach include [$PROJECT generate-include-directory] { - set cpath [::practcl::file_relative $path [file normalize $include]] - if {$cpath ni $includedir} { - lappend includedir $cpath - } - } - - set INCLUDES "-I[join $includedir " -I"]" - if {$debug} { - set COMPILE "$TCL(cc) $TCL(shlib_cflags) $TCL(cflags_debug) -ggdb \ -$TCL(cflags_warning) $TCL(extra_cflags) $INCLUDES" - } else { - set COMPILE "$TCL(cc) $TCL(shlib_cflags) $TCL(cflags_optimize) \ -$TCL(cflags_warning) $TCL(extra_cflags) $INCLUDES" - } - append COMPILE " " $defs - lappend OBJECTS {*}[my build-compile-sources $PROJECT $COMPILE $COMPILE] - - set TCLSRC [file normalize $TCLSRCDIR] - - if {[${PROJECT} define get TEACUP_OS] eq "windows"} { - set windres [$PROJECT define get RC windres] - set RSOBJ [file join $path build tclkit.res.o] - set RCSRC [${PROJECT} define get kit_resource_file] - set cmd [list $windres -o $RSOBJ -DSTATIC_BUILD --include [::practcl::file_relative $path [file join $TCLSRC generic]]] - if {[$PROJECT define get static_tk]} { - if {$RCSRC eq {} || ![file exists $RCSRC]} { - set RCSRC [file join $TKSRCDIR win rc wish.rc] - } - set TKSRC [file normalize $TKSRCDIR] - lappend cmd --include [::practcl::file_relative $path [file join $TKSRC generic]] \ - --include [::practcl::file_relative $path [file join $TKSRC win]] \ - --include [::practcl::file_relative $path [file join $TKSRC win rc]] - } else { - if {$RCSRC eq {} || ![file exists $RCSRC]} { - set RCSRC [file join $TCLSRCDIR tclsh.rc] - } - } - foreach item [${PROJECT} define get resource_include] { - lappend cmd --include [::practcl::file_relative $path [file normalize $item]] - } - lappend cmd $RCSRC - ::practcl::doexec {*}$cmd - lappend OBJECTS $RSOBJ - set LDFLAGS_CONSOLE {-mconsole -pipe -static-libgcc} - set LDFLAGS_WINDOW {-mwindows -pipe -static-libgcc} - } else { - set LDFLAGS_CONSOLE {} - set LDFLAGS_WINDOW {} - } - puts "***" - if {$debug} { - set cmd "$TCL(cc) $TCL(shlib_cflags) $TCL(cflags_debug) \ -$TCL(cflags_warning) $TCL(extra_cflags) $INCLUDES" - } else { - set cmd "$TCL(cc) $TCL(shlib_cflags) $TCL(cflags_optimize) \ -$TCL(cflags_warning) $TCL(extra_cflags) $INCLUDES" - } - append cmd " $OBJECTS" - append cmd " $EXTERN_OBJS " - # On OSX it is impossibly to generate a completely static - # executable - if {[$PROJECT define get TEACUP_OS] ne "macosx"} { - append cmd " -static " - } - if {$debug} { - if {$os eq "windows"} { - append cmd " -L${TCL(src_dir)}/win -ltcl86g" - if {[$PROJECT define get static_tk]} { - append cmd " -L${TK(src_dir)}/win -ltk86g" - } - } else { - append cmd " -L${TCL(src_dir)}/unix -ltcl86g" - if {[$PROJECT define get static_tk]} { - append cmd " -L${TK(src_dir)}/unix -ltk86g" - } - } - } else { - append cmd " $TCL(build_lib_spec)" - if {[$PROJECT define get static_tk]} { - append cmd " $TK(build_lib_spec)" - } - } - foreach obj $PKG_OBJS { - append cmd " [$obj linker-products $config($obj)]" - } - append cmd " $TCL(libs) " - if {[$PROJECT define get static_tk]} { - append cmd " $TK(libs)" - } - foreach obj $PKG_OBJS { - append cmd " [$obj linker-external $config($obj)]" - } - if {$debug} { - if {$os eq "windows"} { - append cmd " -L${TCL(src_dir)}/win ${TCL(stub_lib_flag)}" - if {[$PROJECT define get static_tk]} { - append cmd " -L${TK(src_dir)}/win ${TK(stub_lib_flag)}" - } - } else { - append cmd " -L${TCL(src_dir)}/unix ${TCL(stub_lib_flag)}" - if {[$PROJECT define get static_tk]} { - append cmd " -L${TK(src_dir)}/unix ${TK(stub_lib_flag)}" - } - } - } else { - append cmd " $TCL(build_stub_lib_spec)" - if {[$PROJECT define get static_tk]} { - append cmd " $TK(build_stub_lib_spec)" - } - } - append cmd " -o $outfile $LDFLAGS_CONSOLE" - puts "LINK: $cmd" - exec {*}$cmd >&@ stdout -} -} - - -::oo::class create ::practcl::build.msvc { - superclass ::practcl::build - -} - -::oo::class create ::practcl::target_obj { - superclass ::practcl::metaclass - - constructor {name info} { - my variable define triggered domake - set triggered 0 - set domake 0 - set define(name) $name - set data [uplevel 2 [list subst $info]] - array set define $data - my select - my initialize - } - - method do {} { - my variable domake - return $domake - } - - method check {} { - my variable needs_make domake - if {$domake} { - return 1 - } - if {[info exists needs_make]} { - return $needs_make - } - set needs_make 0 - foreach item [my define get depends] { - if {![dict exists $::make_objects $item]} continue - set depobj [dict get $::make_objects $item] - if {$depobj eq [self]} { - puts "WARNING [self] depends on itself" - continue - } - if {[$depobj check]} { - set needs_make 1 - } - } - if {!$needs_make} { - set filename [my define get filename] - if {$filename ne {} && ![file exists $filename]} { - set needs_make 1 - } - } - return $needs_make - } - - method triggers {} { - my variable triggered domake define - if {$triggered} { - return $domake - } - set triggered 1 - foreach item [my define get depends] { - if {![dict exists $::make_objects $item]} continue - set depobj [dict get $::make_objects $item] - if {$depobj eq [self]} { - puts "WARNING [self] triggers itself" - continue - } else { - set r [$depobj check] - if {$r} { - $depobj triggers - } - } - } - if {[info exists ::make($define(name))] && $::make($define(name))} { - return - } - set ::make($define(name)) 1 - ::practcl::trigger {*}[my define get triggers] - } -} - - -### -# Define the metaclass -### -::oo::class create ::practcl::object { - superclass ::practcl::metaclass - - constructor {parent args} { - my variable links define - set organs [$parent child organs] - my graft {*}$organs - array set define $organs - array set define [$parent child define] - array set links {} - if {[llength $args]==1 && [file exists [lindex $args 0]]} { - my InitializeSourceFile [lindex $args 0] - } elseif {[llength $args] == 1} { - set data [uplevel 1 [list subst [lindex $args 0]]] - array set define $data - my select - my initialize - } else { - array set define [uplevel 1 [list subst $args]] - my select - my initialize - } - } - - - method include_dir args { - my define add include_dir {*}$args - } - - method include_directory args { - my define add include_dir {*}$args - } - - method Collate_Source CWD {} - - - method child {method} { - return {} - } - - method InitializeSourceFile filename { - my define set filename $filename - set class {} - switch [file extension $filename] { - .tcl { - set class ::practcl::dynamic - } - .h { - set class ::practcl::cheader - } - .c { - set class ::practcl::csource - } - .ini { - switch [file tail $filename] { - module.ini { - set class ::practcl::module - } - library.ini { - set class ::practcl::subproject - } - } - } - .so - - .dll - - .dylib - - .a { - set class ::practcl::clibrary - } - } - if {$class ne {}} { - oo::objdefine [self] class $class - my initialize - } - } - - method add args { - my variable links - set object [::practcl::object new [self] {*}$args] - foreach linktype [$object linktype] { - lappend links($linktype) $object - } - return $object - } - - method go {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable links - foreach {linktype objs} [array get links] { - foreach obj $objs { - $obj go - } - } - ::practcl::debug [list /[self] [self method] [self class]] - } - - method code {section body} { - my variable code - ::practcl::cputs code($section) $body - } - - method Ofile filename { - set lpath [my <module> define get localpath] - if {$lpath eq {}} { - set lpath [my <module> define get name] - } - return ${lpath}_[file rootname [file tail $filename]].o - } - - method compile-products {} { - set filename [my define get filename] - set result {} - if {$filename ne {}} { - if {[my define exists ofile]} { - set ofile [my define get ofile] - } else { - set ofile [my Ofile $filename] - my define set ofile $ofile - } - lappend result $ofile [list cfile $filename extra [my define get extra] external [string is true -strict [my define get external]] object [self]] - } - foreach item [my link list subordinate] { - lappend result {*}[$item compile-products] - } - return $result - } - - method generate-include-directory {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set result [my define get include_dir] - foreach obj [my link list product] { - foreach path [$obj generate-include-directory] { - lappend result $path - } - } - return $result - } - - method generate-debug {{spaces {}}} { - set result {} - ::practcl::cputs result "$spaces[list [self] [list class [info object class [self]] filename [my define get filename]] links [my link list]]" - foreach item [my link list subordinate] { - practcl::cputs result [$item generate-debug "$spaces "] - } - return $result - } - - # Empty template methods - method generate-cheader {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code cfunct cstruct methods tcltype tclprocs - set result {} - if {[info exists code(header)]} { - ::practcl::cputs result $code(header) - } - foreach obj [my link list product] { - # Exclude products that will generate their own C files - if {[$obj define get output_c] ne {}} continue - set dat [$obj generate-cheader] - if {[string length [string trim $dat]]} { - ::practcl::cputs result "/* BEGIN [$obj define get filename] generate-cheader */" - ::practcl::cputs result $dat - ::practcl::cputs result "/* END [$obj define get filename] generate-cheader */" - } - } - ::practcl::debug [list cfunct [info exists cfunct]] - if {[info exists cfunct]} { - foreach {funcname info} $cfunct { - if {[dict get $info public]} continue - ::practcl::cputs result "[dict get $info header]\;" - } - } - ::practcl::debug [list tclprocs [info exists tclprocs]] - if {[info exists tclprocs]} { - foreach {name info} $tclprocs { - if {[dict exists $info header]} { - ::practcl::cputs result "[dict get $info header]\;" - } - } - } - ::practcl::debug [list methods [info exists methods] [my define get cclass]] - - if {[info exists methods]} { - set thisclass [my define get cclass] - foreach {name info} $methods { - if {[dict exists $info header]} { - ::practcl::cputs result "[dict get $info header]\;" - } - } - # Add the initializer wrapper for the class - ::practcl::cputs result "static int ${thisclass}_OO_Init(Tcl_Interp *interp)\;" - } - return $result - } - - method generate-public-define {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code - set result {} - if {[info exists code(public-define)]} { - ::practcl::cputs result $code(public-define) - } - set result [::practcl::_tagblock $result c [my define get filename]] - foreach mod [my link list product] { - ::practcl::cputs result [$mod generate-public-define] - } - return $result - } - - method generate-public-macro {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code - set result {} - if {[info exists code(public-macro)]} { - ::practcl::cputs result $code(public-macro) - } - set result [::practcl::_tagblock $result c [my define get filename]] - foreach mod [my link list product] { - ::practcl::cputs result [$mod generate-public-macro] - } - return $result - } - - method generate-public-typedef {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code cstruct - set result {} - if {[info exists code(public-typedef)]} { - ::practcl::cputs result $code(public-typedef) - } - if {[info exists cstruct]} { - # Add defintion for native c data structures - foreach {name info} $cstruct { - if {[dict get $info public]==0} continue - ::practcl::cputs result "typedef struct $name ${name}\;" - if {[dict exists $info aliases]} { - foreach n [dict get $info aliases] { - ::practcl::cputs result "typedef struct $name ${n}\;" - } - } - } - } - set result [::practcl::_tagblock $result c [my define get filename]] - foreach mod [my link list product] { - ::practcl::cputs result [$mod generate-public-typedef] - } - return $result - } - - method generate-private-typedef {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code cstruct - set result {} - if {[info exists code(private-typedef)]} { - ::practcl::cputs result $code(private-typedef) - } - if {[info exists cstruct]} { - # Add defintion for native c data structures - foreach {name info} $cstruct { - if {[dict get $info public]==1} continue - ::practcl::cputs result "typedef struct $name ${name}\;" - if {[dict exists $info aliases]} { - foreach n [dict get $info aliases] { - ::practcl::cputs result "typedef struct $name ${n}\;" - } - } - } - } - set result [::practcl::_tagblock $result c [my define get filename]] - foreach mod [my link list product] { - ::practcl::cputs result [$mod generate-private-typedef] - } - return $result - } - - method generate-public-structure {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code cstruct - set result {} - if {[info exists code(public-structure)]} { - ::practcl::cputs result $code(public-structure) - } - if {[info exists cstruct]} { - foreach {name info} $cstruct { - if {[dict get $info public]==0} continue - if {[dict exists $info comment]} { - ::practcl::cputs result [dict get $info comment] - } - ::practcl::cputs result "struct $name \{[dict get $info body]\}\;" - } - } - set result [::practcl::_tagblock $result c [my define get filename]] - foreach mod [my link list product] { - ::practcl::cputs result [$mod generate-public-structure] - } - return $result - } - - - method generate-private-structure {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code cstruct - set result {} - if {[info exists code(private-structure)]} { - ::practcl::cputs result $code(private-structure) - } - if {[info exists cstruct]} { - foreach {name info} $cstruct { - if {[dict get $info public]==1} continue - if {[dict exists $info comment]} { - ::practcl::cputs result [dict get $info comment] - } - ::practcl::cputs result "struct $name \{[dict get $info body]\}\;" - } - } - set result [::practcl::_tagblock $result c [my define get filename]] - foreach mod [my link list product] { - ::practcl::cputs result [$mod generate-private-structure] - } - return $result - } - - method generate-public-headers {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code tcltype - set result {} - if {[info exists code(public-header)]} { - ::practcl::cputs result $code(public-header) - } - if {[info exists tcltype]} { - foreach {type info} $tcltype { - if {![dict exists $info cname]} { - set cname [string tolower ${type}]_tclobjtype - dict set tcltype $type cname $cname - } else { - set cname [dict get $info cname] - } - ::practcl::cputs result "extern const Tcl_ObjType $cname\;" - } - } - if {[info exists code(public)]} { - ::practcl::cputs result $code(public) - } - set result [::practcl::_tagblock $result c [my define get filename]] - foreach mod [my link list product] { - ::practcl::cputs result [$mod generate-public-headers] - } - return $result - } - - method generate-stub-function {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code cfunct tcltype - set result {} - foreach mod [my link list product] { - foreach {funct def} [$mod generate-stub-function] { - dict set result $funct $def - } - } - if {[info exists cfunct]} { - foreach {funcname info} $cfunct { - if {![dict get $info export]} continue - dict set result $funcname [dict get $info header] - } - } - return $result - } - - method generate-public-function {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code cfunct tcltype - set result {} - - if {[my define get initfunc] ne {}} { - ::practcl::cputs result "int [my define get initfunc](Tcl_Interp *interp);" - } - if {[info exists cfunct]} { - foreach {funcname info} $cfunct { - if {![dict get $info public]} continue - ::practcl::cputs result "[dict get $info header]\;" - } - } - set result [::practcl::_tagblock $result c [my define get filename]] - foreach mod [my link list product] { - ::practcl::cputs result [$mod generate-public-function] - } - return $result - } - - method generate-public-includes {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set includes {} - foreach item [my define get public-include] { - if {$item ni $includes} { - lappend includes $item - } - } - foreach mod [my link list product] { - foreach item [$mod generate-public-includes] { - if {$item ni $includes} { - lappend includes $item - } - } - } - return $includes - } - method generate-public-verbatim {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set includes {} - foreach item [my define get public-verbatim] { - if {$item ni $includes} { - lappend includes $item - } - } - foreach mod [my link list subordinate] { - foreach item [$mod generate-public-verbatim] { - if {$item ni $includes} { - lappend includes $item - } - } - } - return $includes - } - ### - # This methods generates the contents of an amalgamated .h file - # which describes the public API of this module - ### - method generate-h {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set result {} - set includes [my generate-public-includes] - foreach inc $includes { - if {[string index $inc 0] ni {< \"}} { - ::practcl::cputs result "#include \"$inc\"" - } else { - ::practcl::cputs result "#include $inc" - } - } - - foreach method { - generate-public-define - generate-public-macro - generate-public-typedef - generate-public-structure - } { - ::practcl::cputs result "/* BEGIN SECTION $method */" - ::practcl::cputs result [my $method] - ::practcl::cputs result "/* END SECTION $method */" - } - - foreach file [my generate-public-verbatim] { - ::practcl::cputs result "/* BEGIN $file */" - ::practcl::cputs result [::practcl::cat $file] - ::practcl::cputs result "/* END $file */" - } - - foreach method { - generate-public-headers - generate-public-function - } { - ::practcl::cputs result "/* BEGIN SECTION $method */" - ::practcl::cputs result [my $method] - ::practcl::cputs result "/* END SECTION $method */" - } - return $result - } - - method IncludeAdd {headervar args} { - upvar 1 $headervar headers - foreach inc $args { - if {[string index $inc 0] ni {< \"}} { - set inc "\"$inc\"" - } - if {$inc ni $headers} { - lappend headers $inc - } - } - } - - ### - # This methods generates the contents of an amalgamated .c file - # which implements the loader for a batch of tools - ### - method generate-c {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set result { -/* This file was generated by practcl */ - } - set includes {} - - foreach mod [my link list product] { - # Signal modules to formulate final implementation - $mod go - } - set headers {} - - my IncludeAdd headers <tcl.h> <tclOO.h> - if {[my define get tk 0]} { - my IncludeAdd headers <tk.h> - } - if {[my define get output_h] ne {}} { - my IncludeAdd headers [my define get output_h] - } - my IncludeAdd headers {*}[my define get include] - - foreach mod [my link list dynamic] { - my IncludeAdd headers {*}[$mod define get include] - } - foreach inc $headers { - ::practcl::cputs result "#include $inc" - } - foreach {method} { - generate-cheader - generate-private-typedef - generate-private-structure - generate-cstruct - generate-constant - generate-cfunct - generate-cmethod - } { - set dat [my $method] - if {[string length [string trim $dat]]} { - ::practcl::cputs result "/* BEGIN $method [my define get filename] */" - ::practcl::cputs result $dat - ::practcl::cputs result "/* END $method [my define get filename] */" - } - } - ::practcl::debug [list /[self] [self method] [self class] -- [my define get filename] [info object class [self]]] - return $result - } - - - method generate-loader {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set result {} - if {[my define get initfunc] eq {}} return - ::practcl::cputs result " -extern int DLLEXPORT [my define get initfunc]( Tcl_Interp *interp ) \{" - ::practcl::cputs result { - /* Initialise the stubs tables. */ - #ifdef USE_TCL_STUBS - if (Tcl_InitStubs(interp, "8.6", 0)==NULL) return TCL_ERROR; - if (TclOOInitializeStubs(interp, "1.0") == NULL) return TCL_ERROR; -} - if {[my define get tk 0]} { - ::practcl::cputs result { if (Tk_InitStubs(interp, "8.6", 0)==NULL) return TCL_ERROR;} - } - ::practcl::cputs result { #endif} - set TCLINIT [my generate-tcl-pre] - if {[string length $TCLINIT]} { - ::practcl::cputs result " if(Tcl_Eval(interp,[::practcl::tcl_to_c $TCLINIT])) return TCL_ERROR ;" - } - foreach item [my link list product] { - if {[$item define get output_c] ne {}} { - ::practcl::cputs result [$item generate-cinit-external] - } else { - ::practcl::cputs result [$item generate-cinit] - } - } - set TCLINIT [my generate-tcl-post] - if {[string length $TCLINIT]} { - ::practcl::cputs result " if(Tcl_Eval(interp,[::practcl::tcl_to_c $TCLINIT])) return TCL_ERROR ;" - } - if {[my define exists pkg_name]} { - ::practcl::cputs result " if (Tcl_PkgProvide(interp, \"[my define get pkg_name [my define get name]]\" , \"[my define get pkg_vers [my define get version]]\" )) return TCL_ERROR\;" - } - ::practcl::cputs result " return TCL_OK\;\n\}\n" - return $result - } - - ### - # This methods generates any Tcl script file - # which is required to pre-initialize the C library - ### - method generate-tcl-pre {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set result {} - my variable code - if {[info exists code(tcl)]} { - set result [::practcl::_tagblock $code(tcl) tcl [my define get filename]] - } - if {[info exists code(tcl-pre)]} { - set result [::practcl::_tagblock $code(tcl) tcl [my define get filename]] - } - foreach mod [my link list product] { - ::practcl::cputs result [$mod generate-tcl-pre] - } - return $result - } - - method generate-tcl-post {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set result {} - my variable code - if {[info exists code(tcl-post)]} { - set result [::practcl::_tagblock $code(tcl-post) tcl [my define get filename]] - } - foreach mod [my link list product] { - ::practcl::cputs result [$mod generate-tcl-post] - } - return $result - } - - method static-packages {} { - set result [my define get static_packages] - set statpkg [my define get static_pkg] - set initfunc [my define get initfunc] - if {$initfunc ne {}} { - set pkg_name [my define get pkg_name] - if {$pkg_name ne {}} { - dict set result $pkg_name initfunc $initfunc - dict set result $pkg_name version [my define get version [my define get pkg_vers]] - dict set result $pkg_name autoload [my define get autoload 0] - } - } - foreach item [my link list subordinate] { - foreach {pkg info} [$item static-packages] { - dict set result $pkg $info - } - } - return $result - } - - method target {method args} { - switch $method { - is_unix { return [expr {$::tcl_platform(platform) eq "unix"}] } - } - } - -} - -::oo::class create ::practcl::product { - superclass ::practcl::object - - method linktype {} { - return {subordinate product} - } - - method include header { - my define add include $header - } - - method cstructure {name definition {argdat {}}} { - my variable cstruct - dict set cstruct $name body $definition - foreach {f v} $argdat { - dict set cstruct $name $f $v - } - if {![dict exists $cstruct $name public]} { - dict set cstruct $name public 1 - } - } - - method generate-cinit {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code - set result {} - if {[info exists code(cinit)]} { - ::practcl::cputs result $code(cinit) - } - if {[my define get initfunc] ne {}} { - ::practcl::cputs result " if([my define get initfunc](interp)!=TCL_OK) return TCL_ERROR\;" - } - set result [::practcl::_tagblock $result c [my define get filename]] - foreach obj [my link list product] { - ::practcl::cputs result [$obj generate-cinit] - } - return $result - } -} - -### -# Dynamic blocks do not generate their own .c files, -# instead the contribute to the amalgamation -# of the main library file -### -::oo::class create ::practcl::dynamic { - superclass ::practcl::product - - # Retrieve any additional source files required - - method compile-products {} { - set filename [my define get output_c] - set result {} - if {$filename ne {}} { - if {[my define exists ofile]} { - set ofile [my define get ofile] - } else { - set ofile [my Ofile $filename] - my define set ofile $ofile - } - lappend result $ofile [list cfile $filename extra [my define get extra] external [string is true -strict [my define get external]]] - } else { - set filename [my define get cfile] - if {$filename ne {}} { - if {[my define exists ofile]} { - set ofile [my define get ofile] - } else { - set ofile [my Ofile $filename] - my define set ofile $ofile - } - lappend result $ofile [list cfile $filename extra [my define get extra] external [string is true -strict [my define get external]]] - } - } - foreach item [my link list subordinate] { - lappend result {*}[$item compile-products] - } - return $result - } - - method implement path { - my go - my Collate_Source $path - if {[my define get output_c] eq {}} return - set filename [file join $path [my define get output_c]] - my define set cfile $filename - set fout [open $filename w] - puts $fout [my generate-c] - if {[my define get initfunc] ne {}} { - puts $fout "extern int DLLEXPORT [my define get initfunc]( Tcl_Interp *interp ) \x7B" - puts $fout [my generate-cinit] - if {[my define get pkg_name] ne {}} { - puts $fout " Tcl_PkgProvide(interp, \"[my define get pkg_name]\", \"[my define get pkg_vers]\");" - } - puts $fout " return TCL_OK\;" - puts $fout "\x7D" - } - close $fout - } - - method initialize {} { - set filename [my define get filename] - if {$filename eq {}} { - return - } - if {[my define get name] eq {}} { - my define set name [file tail [file rootname $filename]] - } - if {[my define get localpath] eq {}} { - my define set localpath [my <module> define get localpath]_[my define get name] - } - ::source $filename - } - - method linktype {} { - return {subordinate product dynamic} - } - - ### - # Populate const static data structures - ### - method generate-cstruct {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code cstruct methods tcltype - set result {} - if {[info exists code(struct)]} { - ::practcl::cputs result $code(struct) - } - foreach obj [my link list dynamic] { - # Exclude products that will generate their own C files - if {[$obj define get output_c] ne {}} continue - ::practcl::cputs result [$obj generate-cstruct] - } - return $result - } - - method generate-constant {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set result {} - my variable code cstruct methods tcltype - if {[info exists code(constant)]} { - ::practcl::cputs result "/* [my define get filename] CONSTANT */" - ::practcl::cputs result $code(constant) - } - if {[info exists cstruct]} { - foreach {name info} $cstruct { - set map {} - lappend map @NAME@ $name - lappend map @MACRO@ GET[string toupper $name] - - if {[dict exists $info deleteproc]} { - lappend map @DELETEPROC@ [dict get $info deleteproc] - } else { - lappend map @DELETEPROC@ NULL - } - if {[dict exists $info cloneproc]} { - lappend map @CLONEPROC@ [dict get $info cloneproc] - } else { - lappend map @CLONEPROC@ NULL - } - ::practcl::cputs result [string map $map { -const static Tcl_ObjectMetadataType @NAME@DataType = { - TCL_OO_METADATA_VERSION_CURRENT, - "@NAME@", - @DELETEPROC@, - @CLONEPROC@ -}; -#define @MACRO@(OBJCONTEXT) (@NAME@ *) Tcl_ObjectGetMetadata(OBJCONTEXT,&@NAME@DataType) -}] - } - } - if {[info exists tcltype]} { - foreach {type info} $tcltype { - dict with info {} - ::practcl::cputs result "const Tcl_ObjType $cname = \{\n .freeIntRepProc = &${freeproc},\n .dupIntRepProc = &${dupproc},\n .updateStringProc = &${updatestringproc},\n .setFromAnyProc = &${setfromanyproc}\n\}\;" - } - } - - if {[info exists methods]} { - set mtypes {} - foreach {name info} $methods { - set callproc [dict get $info callproc] - set methodtype [dict get $info methodtype] - if {$methodtype in $mtypes} continue - lappend mtypes $methodtype - ### - # Build the data struct for this method - ### - ::practcl::cputs result "const static Tcl_MethodType $methodtype = \{" - ::practcl::cputs result " .version = TCL_OO_METADATA_VERSION_CURRENT,\n .name = \"$name\",\n .callProc = $callproc," - if {[dict exists $info deleteproc]} { - set deleteproc [dict get $info deleteproc] - } else { - set deleteproc NULL - } - if {$deleteproc ni { {} NULL }} { - ::practcl::cputs result " .deleteProc = $deleteproc," - } else { - ::practcl::cputs result " .deleteProc = NULL," - } - if {[dict exists $info cloneproc]} { - set cloneproc [dict get $info cloneproc] - } else { - set cloneproc NULL - } - if {$cloneproc ni { {} NULL }} { - ::practcl::cputs result " .cloneProc = $cloneproc\n\}\;" - } else { - ::practcl::cputs result " .cloneProc = NULL\n\}\;" - } - dict set methods $name methodtype $methodtype - } - } - foreach obj [my link list dynamic] { - # Exclude products that will generate their own C files - if {[$obj define get output_c] ne {}} continue - ::practcl::cputs result [$obj generate-constant] - } - return $result - } - - ### - # Generate code that provides subroutines called by - # Tcl API methods - ### - method generate-cfunct {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code cfunct - set result {} - if {[info exists code(funct)]} { - ::practcl::cputs result $code(funct) - } - if {[info exists cfunct]} { - foreach {funcname info} $cfunct { - ::practcl::cputs result "/* $funcname */" - ::practcl::cputs result "\n[dict get $info header]\{[dict get $info body]\}" - } - } - foreach obj [my link list dynamic] { - # Exclude products that will generate their own C files - if {[$obj define get output_c] ne {}} { - continue - } - ::practcl::cputs result [$obj generate-cfunct] - } - return $result - } - - ### - # Generate code that provides implements Tcl API - # calls - ### - method generate-cmethod {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - my variable code methods tclprocs - set result {} - if {[info exists code(method)]} { - ::practcl::cputs result $code(method) - } - - if {[info exists tclprocs]} { - foreach {name info} $tclprocs { - if {![dict exists $info body]} continue - set callproc [dict get $info callproc] - set header [dict get $info header] - set body [dict get $info body] - ::practcl::cputs result "/* Tcl Proc $name */" - ::practcl::cputs result "${header} \{${body}\}" - } - } - - - if {[info exists methods]} { - set thisclass [my define get cclass] - foreach {name info} $methods { - if {![dict exists $info body]} continue - set callproc [dict get $info callproc] - set header [dict get $info header] - set body [dict get $info body] - ::practcl::cputs result "/* OO Method $thisclass $name */" - ::practcl::cputs result "${header} \{${body}\}" - } - # Build the OO_Init function - ::practcl::cputs result "/* Loader for $thisclass */" - ::practcl::cputs result "static int ${thisclass}_OO_Init(Tcl_Interp *interp) \{" - ::practcl::cputs result [string map [list @CCLASS@ $thisclass @TCLCLASS@ [my define get class]] { - /* - ** Build the "@TCLCLASS@" class - */ - Tcl_Obj* nameObj; /* Name of a class or method being looked up */ - Tcl_Object curClassObject; /* Tcl_Object representing the current class */ - Tcl_Class curClass; /* Tcl_Class representing the current class */ - - /* - * Find the "@TCLCLASS@" class, and attach an 'init' method to it. - */ - - nameObj = Tcl_NewStringObj("@TCLCLASS@", -1); - Tcl_IncrRefCount(nameObj); - if ((curClassObject = Tcl_GetObjectFromObj(interp, nameObj)) == NULL) { - Tcl_DecrRefCount(nameObj); - return TCL_ERROR; - } - Tcl_DecrRefCount(nameObj); - curClass = Tcl_GetObjectAsClass(curClassObject); -}] - if {[dict exists $methods constructor]} { - set mtype [dict get $methods constructor methodtype] - ::practcl::cputs result [string map [list @MTYPE@ $mtype] { - /* Attach the constructor to the class */ - Tcl_ClassSetConstructor(interp, curClass, Tcl_NewMethod(interp, curClass, NULL, 1, &@MTYPE@, NULL)); - }] - } - foreach {name info} $methods { - dict with info {} - if {$name in {constructor destructor}} continue - ::practcl::cputs result [string map [list @NAME@ $name @MTYPE@ $methodtype] { - nameObj=Tcl_NewStringObj("@NAME@",-1); - Tcl_NewMethod(interp, curClass, nameObj, 1, &@MTYPE@, (ClientData) NULL); - Tcl_DecrRefCount(nameObj); -}] - if {[dict exists $info aliases]} { - foreach alias [dict get $info aliases] { - if {[dict exists $methods $alias]} continue - ::practcl::cputs result [string map [list @NAME@ $alias @MTYPE@ $methodtype] { - nameObj=Tcl_NewStringObj("@NAME@",-1); - Tcl_NewMethod(interp, curClass, nameObj, 1, &@MTYPE@, (ClientData) NULL); - Tcl_DecrRefCount(nameObj); -}] - } - } - } - ::practcl::cputs result " return TCL_OK\;\n\}\n" - } - foreach obj [my link list dynamic] { - # Exclude products that will generate their own C files - if {[$obj define get output_c] ne {}} continue - ::practcl::cputs result [$obj generate-cmethod] - } - return $result - } - - method generate-cinit-external {} { - if {[my define get initfunc] eq {}} { - return "/* [my define get filename] declared not initfunc */" - } - return " if([my define get initfunc](interp)) return TCL_ERROR\;" - } - - ### - # Generate code that runs when the package/module is - # initialized into the interpreter - ### - method generate-cinit {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set result {} - my variable code methods tclprocs - if {[info exists code(nspace)]} { - ::practcl::cputs result " \{\n Tcl_Namespace *modPtr;" - foreach nspace $code(nspace) { - ::practcl::cputs result [string map [list @NSPACE@ $nspace] { - modPtr=Tcl_FindNamespace(interp,"@NSPACE@",NULL,TCL_NAMESPACE_ONLY); - if(!modPtr) { - modPtr = Tcl_CreateNamespace(interp, "@NSPACE@", NULL, NULL); - } -}] - } - ::practcl::cputs result " \}" - } - if {[info exists code(tclinit)]} { - ::practcl::cputs result $code(tclinit) - } - if {[info exists code(cinit)]} { - ::practcl::cputs result $code(cinit) - } - if {[info exists code(initfuncts)]} { - foreach func $code(initfuncts) { - ::practcl::cputs result " if (${func}(interp) != TCL_OK) return TCL_ERROR\;" - } - } - if {[info exists tclprocs]} { - foreach {name info} $tclprocs { - set map [list @NAME@ $name @CALLPROC@ [dict get $info callproc]] - ::practcl::cputs result [string map $map { Tcl_CreateObjCommand(interp,"@NAME@",(Tcl_ObjCmdProc *)@CALLPROC@,NULL,NULL);}] - if {[dict exists $info aliases]} { - foreach alias [dict get $info aliases] { - set map [list @NAME@ $alias @CALLPROC@ [dict get $info callproc]] - ::practcl::cputs result [string map $map { Tcl_CreateObjCommand(interp,"@NAME@",(Tcl_ObjCmdProc *)@CALLPROC@,NULL,NULL);}] - } - } - } - } - - if {[info exists code(nspace)]} { - ::practcl::cputs result " \{\n Tcl_Namespace *modPtr;" - foreach nspace $code(nspace) { - ::practcl::cputs result [string map [list @NSPACE@ $nspace] { - modPtr=Tcl_FindNamespace(interp,"@NSPACE@",NULL,TCL_NAMESPACE_ONLY); - Tcl_CreateEnsemble(interp, modPtr->fullName, modPtr, TCL_ENSEMBLE_PREFIX); - Tcl_Export(interp, modPtr, "[a-z]*", 1); -}] - } - ::practcl::cputs result " \}" - } - set result [::practcl::_tagblock $result c [my define get filename]] - foreach obj [my link list product] { - # Exclude products that will generate their own C files - if {[$obj define get output_c] ne {}} { - ::practcl::cputs result [$obj generate-cinit-external] - } else { - ::practcl::cputs result [$obj generate-cinit] - } - } - return $result - } - - method c_header body { - my variable code - ::practcl::cputs code(header) $body - } - - method c_code body { - my variable code - ::practcl::cputs code(funct) $body - } - method c_function {header body {info {}}} { - set header [string map "\t \ \n \ \ \ \ " $header] - my variable code cfunct - foreach regexp { - {(.*) ([a-zA-Z_][a-zA-Z0-9_]*) *\((.*)\)} - {(.*) (\x2a[a-zA-Z_][a-zA-Z0-9_]*) *\((.*)\)} - } { - if {[regexp $regexp $header all keywords funcname arglist]} { - dict set cfunct $funcname header $header - dict set cfunct $funcname body $body - dict set cfunct $funcname keywords $keywords - dict set cfunct $funcname arglist $arglist - dict set cfunct $funcname inline [expr {"inline" ni $keywords}] - dict set cfunct $funcname public [expr {"static" ni $keywords}] - dict set cfunct $funcname export [expr {"STUB_EXPORT" in $keywords}] - foreach {f v} $info { - dict set cfunct $f $v - } - return - } - } - foreach {f v} $info { - dict set cfunct $f $v - } - ::practcl::cputs code(header) "$header\;" - # Could not parse that block as a function - # append it verbatim to our c_implementation - ::practcl::cputs code(funct) "$header [list $body]" - } - - - method cmethod {name body {arginfo {}}} { - my variable methods code - foreach {f v} $arginfo { - dict set methods $name $f $v - } - dict set methods $name body "Tcl_Object thisObject = Tcl_ObjectContextObject(objectContext); /* The current connection object */ -$body" - } - - method c_tclproc_nspace nspace { - my variable code - if {![info exists code(nspace)]} { - set code(nspace) {} - } - if {$nspace ni $code(nspace)} { - lappend code(nspace) $nspace - } - } - - method c_tclproc_raw {name body {arginfo {}}} { - my variable tclprocs code - - foreach {f v} $arginfo { - dict set tclprocs $name $f $v - } - dict set tclprocs $name body $body - } - - method go {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - next - my variable methods code cstruct tclprocs - if {[info exists methods]} { - ::practcl::debug [self] methods [my define get cclass] - set thisclass [my define get cclass] - foreach {name info} $methods { - # Provide a callproc - if {![dict exists $info callproc]} { - set callproc [string map {____ _ ___ _ __ _} [string map {{ } _ : _} OOMethod_${thisclass}_${name}]] - dict set methods $name callproc $callproc - } else { - set callproc [dict get $info callproc] - } - if {[dict exists $info body] && ![dict exists $info header]} { - dict set methods $name header "static int ${callproc}(ClientData clientData, Tcl_Interp *interp, Tcl_ObjectContext objectContext ,int objc ,Tcl_Obj *const *objv)" - } - if {![dict exists $info methodtype]} { - set methodtype [string map {{ } _ : _} OOMethodType_${thisclass}_${name}] - dict set methods $name methodtype $methodtype - } - } - if {![info exists code(initfuncts)] || "${thisclass}_OO_Init" ni $code(initfuncts)} { - lappend code(initfuncts) "${thisclass}_OO_Init" - } - } - set thisnspace [my define get nspace] - - if {[info exists tclprocs]} { - ::practcl::debug [self] tclprocs [dict keys $tclprocs] - foreach {name info} $tclprocs { - if {![dict exists $info callproc]} { - set callproc [string map {____ _ ___ _ __ _} [string map {{ } _ : _} TclCmd_${thisnspace}_${name}]] - dict set tclprocs $name callproc $callproc - } else { - set callproc [dict get $info callproc] - } - if {[dict exists $info body] && ![dict exists $info header]} { - dict set tclprocs $name header "static int ${callproc}(ClientData clientData, Tcl_Interp *interp, int objc, Tcl_Obj *CONST objv\[\])" - } - } - } - ::practcl::debug [list /[self] [self method] [self class]] - } - - # Once an object marks itself as some - # flavor of dynamic, stop trying to morph - # it into something else - method select {} {} - - - method tcltype {name argdat} { - my variable tcltype - foreach {f v} $argdat { - dict set tcltype $name $f $v - } - if {![dict exists tcltype $name cname]} { - dict set tcltype $name cname [string tolower $name]_tclobjtype - } - lappend map @NAME@ $name - set info [dict get $tcltype $name] - foreach {f v} $info { - lappend map @[string toupper $f]@ $v - } - foreach {func fpat template} { - freeproc {@Name@Obj_freeIntRepProc} {void @FNAME@(Tcl_Obj *objPtr)} - dupproc {@Name@Obj_dupIntRepProc} {void @FNAME@(Tcl_Obj *srcPtr,Tcl_Obj *dupPtr)} - updatestringproc {@Name@Obj_updateStringRepProc} {void @FNAME@(Tcl_Obj *objPtr)} - setfromanyproc {@Name@Obj_setFromAnyProc} {int @FNAME@(Tcl_Interp *interp,Tcl_Obj *objPtr)} - } { - if {![dict exists $info $func]} { - error "$name does not define $func" - } - set body [dict get $info $func] - # We were given a function name to call - if {[llength $body] eq 1} continue - set fname [string map [list @Name@ [string totitle $name]] $fpat] - my c_function [string map [list @FNAME@ $fname] $template] [string map $map $body] - dict set tcltype $name $func $fname - } - } -} - -::oo::class create ::practcl::cheader { - superclass ::practcl::product - - method compile-products {} {} - method generate-cinit {} {} -} - -::oo::class create ::practcl::csource { - superclass ::practcl::product -} - -::oo::class create ::practcl::clibrary { - superclass ::practcl::product - - method linker-products {configdict} { - return [my define get filename] - } - -} - -### -# In the end, all C code must be loaded into a module -# This will either be a dynamically loaded library implementing -# a tcl extension, or a compiled in segment of a custom shell/app -### -::oo::class create ::practcl::module { - superclass ::practcl::dynamic - - method child which { - switch $which { - organs { - return [list project [my define get project] module [self]] - } - } - } - - method initialize {} { - set filename [my define get filename] - if {$filename eq {}} { - return - } - if {[my define get name] eq {}} { - my define set name [file tail [file dirname $filename]] - } - if {[my define get localpath] eq {}} { - my define set localpath [my <project> define get name]_[my define get name] - } - ::practcl::debug [self] SOURCE $filename - my source $filename - } - - method implement path { - my go - my Collate_Source $path - foreach item [my link list dynamic] { - if {[catch {$item implement $path} err]} { - puts "Skipped $item: $err" - } - } - foreach item [my link list module] { - if {[catch {$item implement $path} err]} { - puts "Skipped $item: $err" - } - } - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set filename [my define get output_c] - if {$filename eq {}} { - ::practcl::debug [list /[self] [self method] [self class]] - return - } - set cout [open [file join $path [file rootname $filename].c] w] - puts $cout [subst {/* -** This file is generated by the [info script] script -** any changes will be overwritten the next time it is run -*/}] - puts $cout [my generate-c] - puts $cout [my generate-loader] - close $cout - ::practcl::debug [list /[self] [self method] [self class]] - } - - method linktype {} { - return {subordinate product dynamic module} - } -} - -::oo::class create ::practcl::autoconf { - - ### - # find or fake a key/value list describing this project - ### - method config.sh {} { - my variable conf_result - if {[info exists conf_result]} { - return $conf_result - } - set result {} - set name [my define get name] - set PWD $::CWD - set builddir [my define get builddir] - my unpack - set srcdir [my define get srcdir] - if {![file exists $builddir]} { - my Configure - } - set filename [file join $builddir config.tcl] - # Project uses the practcl template. Use the leavings from autoconf - if {[file exists $filename]} { - set dat [::practcl::config.tcl $builddir] - foreach {item value} [::practcl::sort_dict $dat] { - dict set result $item $value - } - set conf_result $result - return $result - } - set filename [file join $builddir ${name}Config.sh] - if {[file exists $filename]} { - set l [expr {[string length $name]+1}] - foreach {field dat} [::practcl::read_Config.sh $filename] { - set field [string tolower $field] - if {[string match ${name}_* $field]} { - set field [string range $field $l end] - } - dict set result $field $dat - } - set conf_result $result - return $result - } - ### - # Oh man... we have to guess - ### - set filename [file join $builddir Makefile] - if {![file exists $filename]} { - error "Could not locate any configuration data in $srcdir" - } - foreach {field dat} [::practcl::read_Makefile $filename] { - dict set result $field $dat - } - set conf_result $result - cd $PWD - return $result - } -} - - -::oo::class create ::practcl::project { - superclass ::practcl::module ::practcl::autoconf - - constructor args { - my variable define - if {[llength $args] == 1} { - set rawcontents [lindex $args 0] - } else { - set rawcontents $args - } - if {[catch {uplevel 1 [list subst $rawcontents]} contents]} { - set contents $rawcontents - } - ### - # The first instance of ::practcl::project (or its descendents) - # registers itself as the ::practcl::MAIN. If a project other - # than ::practcl::LOCAL is created, odds are that was the one - # the developer intended to be the main project - ### - if {$::practcl::MAIN eq "::practcl::LOCAL"} { - set ::practcl::MAIN [self] - } - # DEFS fields need to be passed unchanged and unsubstituted - # as we need to preserve their escape characters - foreach field {TCL_DEFS DEFS TK_DEFS} { - if {[dict exists $rawcontents $field]} { - dict set contents $field [dict get $rawcontents $field] - } - } - array set define $contents - my select - my initialize - } - - method add_project {pkg info {oodefine {}}} { - set os [my define get TEACUP_OS] - if {$os eq {}} { - set os [::practcl::os] - my define set os $os - } - set fossilinfo [list download [my define get download] tag trunk sandbox [my define get sandbox]] - if {[dict exists $info os] && ($os ni [dict get $info os])} return - # Select which tag to use here. - # For production builds: tag-release - set profile [my define get profile release]: - if {[dict exists $info profile $profile]} { - dict set info tag [dict get $info profile $profile] - } - if {[my define get USEMSVC 0]} { - dict set info USEMSVC 1 - } - set obj [namespace current]::PROJECT.$pkg - if {[info command $obj] eq {}} { - set obj [::practcl::subproject create $obj [self] [dict merge $fossilinfo [list name $pkg pkg_name $pkg static 0 class subproject.binary] $info]] - } - my link object $obj - oo::objdefine $obj $oodefine - $obj define set masterpath $::CWD - $obj go - return $obj - } - - method add_tool {pkg info {oodefine {}}} { - set info [dict merge [::practcl::local_os] $info] - set os [dict get $info TEACUP_OS] - set fossilinfo [list download [my define get download] tag trunk sandbox [my define get sandbox]] - if {[dict exists $info os] && ($os ni [dict get $info os])} return - # Select which tag to use here. - # For production builds: tag-release - set profile [my define get profile release]: - if {[dict exists $info profile $profile]} { - dict set info tag [dict get $info profile $profile] - } - set obj [namespace current]::TOOL.$pkg - if {[info command $obj] eq {}} { - set obj [::practcl::tool create $obj [self] [dict merge $fossilinfo [list name $pkg pkg_name $pkg static 0] $info]] - } - my link object $obj - oo::objdefine $obj $oodefine - $obj define set masterpath $::CWD - $obj go - return $obj - } - - method child which { - switch $which { - organs { - # A library can be a project, it can be a module. Any - # subordinate modules will indicate their existance - return [list project [self] module [self]] - } - } - } - - method linktype {} { - return project - } - - # Exercise the methods of a sub-object - method project {pkg args} { - set obj [namespace current]::PROJECT.$pkg - if {[llength $args]==0} { - return $obj - } - ${obj} {*}$args - } - - method select {} { - next - ### - # Select the toolset to use for this project - ### - my variable define - set class {} - if {[info exists define(toolset)]} { - if {[info command $define(toolset)] ne {}} { - set class $define(toolset) - } elseif {[info command ::practcl::$define(toolset)] ne {}} { - set class ::practcl::$define(toolset) - } else { - switch $define(toolset) { - default { - set class ::practcl::build.gcc - } - } - } - } else { - if {[info exists ::env(VisualStudioVersion)]} { - set class ::practcl::build.msvc - } else { - set class ::practcl::build.gcc - } - } - ::oo::objdefine [self] mixin $class - } - - method tool {pkg args} { - set obj [namespace current]::TOOL.$pkg - if {[llength $args]==0} { - return $obj - } - ${obj} {*}$args - } -} - -::oo::class create ::practcl::library { - superclass ::practcl::project - - method compile-products {} { - set result {} - foreach item [my link list subordinate] { - lappend result {*}[$item compile-products] - } - set filename [my define get output_c] - if {$filename ne {}} { - set ofile [file rootname [file tail $filename]]_main.o - lappend result $ofile [list cfile $filename extra [my define get extra] external [string is true -strict [my define get external]]] - } - return $result - } - - method generate-tcl-loader {} { - set result {} - set PKGINIT [my define get pkginit] - set PKG_NAME [my define get name [my define get pkg_name]] - set PKG_VERSION [my define get pkg_vers [my define get version]] - if {[string is true [my define get SHARED_BUILD 0]]} { - set LIBFILE [my define get libfile] - ::practcl::cputs result [string map \ - [list @LIBFILE@ $LIBFILE @PKGINIT@ $PKGINIT @PKG_NAME@ $PKG_NAME @PKG_VERSION@ $PKG_VERSION] { -# Shared Library Style -load [file join [file dirname [file join [pwd] [info script]]] @LIBFILE@] @PKGINIT@ -package provide @PKG_NAME@ @PKG_VERSION@ -}] - } else { - ::practcl::cputs result [string map \ - [list @PKGINIT@ $PKGINIT @PKG_NAME@ $PKG_NAME @PKG_VERSION@ $PKG_VERSION] { -# Tclkit Style -load {} @PKGINIT@ -package provide @PKG_NAME@ @PKG_VERSION@ -}] - } - return $result - } - - method go {} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set name [my define getnull name] - if {$name eq {}} { - set name generic - my define name generic - } - if {[my define get tk] eq {@TEA_TK_EXTENSION@}} { - my define set tk 0 - } - set output_c [my define getnull output_c] - if {$output_c eq {}} { - set output_c [file rootname $name].c - my define set output_c $output_c - } - set output_h [my define getnull output_h] - if {$output_h eq {}} { - set output_h [file rootname $output_c].h - my define set output_h $output_h - } - set output_tcl [my define getnull output_tcl] - #if {$output_tcl eq {}} { - # set output_tcl [file rootname $output_c].tcl - # my define set output_tcl $output_tcl - #} - #set output_mk [my define getnull output_mk] - #if {$output_mk eq {}} { - # set output_mk [file rootname $output_c].mk - # my define set output_mk $output_mk - #} - set initfunc [my define getnull initfunc] - if {$initfunc eq {}} { - set initfunc [string totitle $name]_Init - my define set initfunc $initfunc - } - set output_decls [my define getnull output_decls] - if {$output_decls eq {}} { - set output_decls [file rootname $output_c].decls - my define set output_decls $output_decls - } - my variable links - foreach {linktype objs} [array get links] { - foreach obj $objs { - $obj go - } - } - ::practcl::debug [list /[self] [self method] [self class] -- [my define get filename] [info object class [self]]] - } - - method implement path { - my go - my Collate_Source $path - foreach item [my link list dynamic] { - if {[catch {$item implement $path} err]} { - puts "Skipped $item: $err" - } - } - foreach item [my link list module] { - if {[catch {$item implement $path} err]} { - puts "Skipped $item: $err" - } - } - set cout [open [file join $path [my define get output_c]] w] - puts $cout [subst {/* -** This file is generated by the [info script] script -** any changes will be overwritten the next time it is run -*/}] - puts $cout [my generate-c] - puts $cout [my generate-loader] - close $cout - - set macro HAVE_[string toupper [file rootname [my define get output_h]]]_H - set hout [open [file join $path [my define get output_h]] w] - puts $hout [subst {/* -** This file is generated by the [info script] script -** any changes will be overwritten the next time it is run -*/}] - puts $hout "#ifndef ${macro}" - puts $hout "#define ${macro}" - puts $hout [my generate-h] - puts $hout "#endif" - close $hout - - set output_tcl [my define get output_tcl] - if {$output_tcl ne {}} { - set tclout [open [file join $path [my define get output_tcl]] w] - puts $tclout "### -# This file is generated by the [info script] script -# any changes will be overwritten the next time it is run -###" - puts $tclout [my generate-tcl-pre] - puts $tclout [my generate-tcl-loader] - puts $tclout [my generate-tcl-post] - close $tclout - } - } - - method generate-decls {pkgname path} { - ::practcl::debug [list [self] [self method] [self class] -- [my define get filename] [info object class [self]]] - set outfile [file join $path/$pkgname.decls] - - ### - # Build the decls file - ### - set fout [open $outfile w] - puts $fout [subst {### - # $outfile - # - # This file was generated by [info script] - ### - - library $pkgname - interface $pkgname - }] - - ### - # Generate list of functions - ### - set stubfuncts [my generate-stub-function] - set thisline {} - set functcount 0 - foreach {func header} $stubfuncts { - puts $fout [list declare [incr functcount] $header] - } - puts $fout [list export "int [my define get initfunc](Tcl_Inter *interp)"] - puts $fout [list export "char *[string totitle [my define get name]]_InitStubs(Tcl_Inter *interp, char *version, int exact)"] - - close $fout - - ### - # Build [package]Decls.h - ### - set hout [open [file join $path ${pkgname}Decls.h] w] - - close $hout - - set cout [open [file join $path ${pkgname}StubInit.c] w] -puts $cout [string map [list %pkgname% $pkgname %PkgName% [string totitle $pkgname]] { -#ifndef USE_TCL_STUBS -#define USE_TCL_STUBS -#endif -#undef USE_TCL_STUB_PROCS - -#include "tcl.h" -#include "%pkgname%.h" - - /* - ** Ensure that Tdom_InitStubs is built as an exported symbol. The other stub - ** functions should be built as non-exported symbols. - */ - -#undef TCL_STORAGE_CLASS -#define TCL_STORAGE_CLASS DLLEXPORT - -%PkgName%Stubs *%pkgname%StubsPtr; - - /* - **---------------------------------------------------------------------- - ** - ** %PkgName%_InitStubs -- - ** - ** Checks that the correct version of %PkgName% is loaded and that it - ** supports stubs. It then initialises the stub table pointers. - ** - ** Results: - ** The actual version of %PkgName% that satisfies the request, or - ** NULL to indicate that an error occurred. - ** - ** Side effects: - ** Sets the stub table pointers. - ** - **---------------------------------------------------------------------- - */ - -char * -%PkgName%_InitStubs (Tcl_Interp *interp, char *version, int exact) -{ - char *actualVersion; - actualVersion = Tcl_PkgRequireEx(interp, "%pkgname%", version, exact,(ClientData *) &%pkgname%StubsPtr); - if (!actualVersion) { - return NULL; - } - if (!%pkgname%StubsPtr) { - Tcl_SetResult(interp,"This implementation of %PkgName% does not support stubs",TCL_STATIC); - return NULL; - } - return actualVersion; -} -}] - close $cout - } - - # Backward compadible call - method generate-make path { - my build-Makefile $path [self] - } - - method install-headers {} { - set result {} - return $result - } - - method linktype {} { - return library - } - - # Create a "package ifneeded" - # Args are a list of aliases for which this package will answer to - method package-ifneeded {args} { - set result {} - set name [my define get pkg_name [my define get name]] - set version [my define get pkg_vers [my define get version]] - if {$version eq {}} { - set version 0.1a - } - set output_tcl [my define get output_tcl] - if {$output_tcl ne {}} { - set script "\[list source \[file join \$dir $output_tcl\]\]" - } elseif {[string is true -strict [my define get SHARED_BUILD]]} { - set script "\[list load \[file join \$dir [my define get libfile]\] $name\]" - } else { - # Provide a null passthrough - set script "\[list package provide $name $version\]" - } - set result "package ifneeded [list $name] [list $version] $script" - foreach alias $args { - set script "package require $name $version \; package provide $alias $version" - append result \n\n [list package ifneeded $alias $version $script] - } - return $result - } - - - method shared_library {} { - set name [string tolower [my define get name [my define get pkg_name]]] - set NAME [string toupper $name] - set version [my define get version [my define get pkg_vers]] - set map {} - lappend map %LIBRARY_NAME% $name - lappend map %LIBRARY_VERSION% $version - lappend map %LIBRARY_VERSION_NODOTS% [string map {. {}} $version] - lappend map %LIBRARY_PREFIX% [my define getnull libprefix] - set outfile [string map $map [my define get PRACTCL_NAME_LIBRARY]][my define get SHLIB_SUFFIX] - return $outfile - } -} - -::oo::class create ::practcl::tclkit { - superclass ::practcl::library - - method Collate_Source CWD { - set name [my define get name] - # Assume a static shell - if {[my define exists SHARED_BUILD]} { - my define exists SHARED_BUILD 0 - } - if {![my define exists TCL_LOCAL_APPINIT]} { - my define set TCL_LOCAL_APPINIT Tclkit_AppInit - } - if {![my define exists TCL_LOCAL_MAIN_HOOK]} { - my define set TCL_LOCAL_MAIN_HOOK Tclkit_MainHook - } - set PROJECT [self] - set os [$PROJECT define get TEACUP_OS] - if {[my define get SHARED_BUILD]} { - puts [list BUILDING TCLSH FOR OS $os] - } else { - puts [list BUILDING KIT FOR OS $os] - } - set TCLOBJ [$PROJECT project TCLCORE] - set TCLSRCDIR [$TCLOBJ define get srcdir] - set PKG_OBJS {} - foreach item [$PROJECT link list core.library] { - if {[string is true [$item define get static]]} { - lappend PKG_OBJS $item - } - } - foreach item [$PROJECT link list package] { - if {[string is true [$item define get static]]} { - lappend PKG_OBJS $item - } - } - # Arrange to build an main.c that utilizes TCL_LOCAL_APPINIT and TCL_LOCAL_MAIN_HOOK - if {$os eq "windows"} { - set PLATFORM_SRC_DIR win - if {[my define get SHARED_BUILD]} { - my add class csource filename [file join $TCLSRCDIR win tclWinReg.c] initfunc Registry_Init pkg_name registry pkg_vers 1.3.1 autoload 1 - my add class csource filename [file join $TCLSRCDIR win tclWinDde.c] initfunc Dde_Init pkg_name dde pkg_vers 1.4.0 autoload 1 - } - my add class csource ofile [my define get name]_appinit.o filename [file join $TCLSRCDIR win tclAppInit.c] extra [list -DTCL_LOCAL_MAIN_HOOK=[my define get TCL_LOCAL_MAIN_HOOK Tclkit_MainHook] -DTCL_LOCAL_APPINIT=[my define get TCL_LOCAL_APPINIT Tclkit_AppInit]] - } else { - set PLATFORM_SRC_DIR unix - my add class csource ofile [my define get name]_appinit.o filename [file join $TCLSRCDIR unix tclAppInit.c] extra [list -DTCL_LOCAL_MAIN_HOOK=[my define get TCL_LOCAL_MAIN_HOOK Tclkit_MainHook] -DTCL_LOCAL_APPINIT=[my define get TCL_LOCAL_APPINIT Tclkit_AppInit]] - } - - if {[my define get SHARED_BUILD]} { - ### - # Add local static Zlib implementation - ### - set cdir [file join $TCLSRCDIR compat zlib] - foreach file { - adler32.c compress.c crc32.c - deflate.c infback.c inffast.c - inflate.c inftrees.c trees.c - uncompr.c zutil.c - } { - my add [file join $cdir $file] - } - } - ### - # Pre 8.7, Tcl doesn't include a Zipfs implementation - # in the core. Grab the one from odielib - ### - set zipfs [file join $TCLSRCDIR generic tclZipfs.c] - if {![$PROJECT define exists ZIPFS_VOLUME]} { - $PROJECT define set ZIPFS_VOLUME "//zipfs:/" - } - $PROJECT code header "#define ZIPFS_VOLUME \"[$PROJECT define get ZIPFS_VOLUME]\"" - if {[file exists $zipfs]} { - $TCLOBJ define set tip_430 1 - my define set tip_430 1 - } else { - # The Tclconfig project maintains a mirror of the version - # released with the Tcl core - my define set tip_430 0 - ::practcl::LOCAL tool odie load - set COMPATSRCROOT [::practcl::LOCAL tool odie define get srcdir] - set cdir [file join $COMPATSRCROOT compat zipfs] - my define add include_dir $cdir - set zipfs [file join $cdir tclZipfs.c] - my add class csource filename $zipfs initfunc Tclzipfs_Init pkg_name zipfs pkg_vers 1.1 autoload 1 extra "-DZIPFS_VOLUME=\"[$PROJECT define get ZIPFS_VOLUME]\"" - } - - my define add include_dir [file join $TCLSRCDIR generic] - my define add include_dir [file join $TCLSRCDIR $PLATFORM_SRC_DIR] - # This file will implement TCL_LOCAL_APPINIT and TCL_LOCAL_MAIN_HOOK - my build-tclkit_main $PROJECT $PKG_OBJS - } - - ## Wrap an executable - # - method wrap {PWD exename vfspath args} { - cd $PWD - if {![file exists $vfspath]} { - file mkdir $vfspath - } - foreach item [my link list core.library] { - set name [$item define get name] - set libsrcdir [$item define get srcdir] - if {[file exists [file join $libsrcdir library]]} { - ::practcl::copyDir [file join $libsrcdir library] [file join $vfspath boot $name] - } - } - # Assume the user will populate the VFS path - #if {[my define get installdir] ne {}} { - # ::practcl::copyDir [file join [my define get installdir] [string trimleft [my define get prefix] /] lib] [file join $vfspath lib] - #} - foreach arg $args { - ::practcl::copyDir $arg $vfspath - } - - set fout [open [file join $vfspath packages.tcl] w] - puts $fout { - set ::PKGIDXFILE [info script] - set dir [file dirname $::PKGIDXFILE] - } - #set BASEVFS [my define get BASEVFS] - set EXEEXT [my define get EXEEXT] - - set tclkit_bare [my define get tclkit_bare] - - set buffer [::practcl::pkgindex_path $vfspath] - puts $fout $buffer - puts $fout { - # Advertise statically linked packages - foreach {pkg script} [array get ::kitpkg] { - eval $script - } - } - close $fout - ::practcl::mkzip ${exename}${EXEEXT} $tclkit_bare $vfspath - if { [my define get TEACUP_OS] ne "windows" } { - file attributes ${exename}${EXEEXT} -permissions a+x - } - } -} - -### -# Standalone class to manage code distribution -# This class is intended to be mixed into another class -# (Thus the lack of ancestors) -### -oo::class create ::practcl::distribution { - - method DistroMixIn {} { - my define set scm none - } - - method Sandbox {} { - if {[my define exists sandbox]} { - return [my define get sandbox] - } - if {[my organ project] ni {::noop {}}} { - set sandbox [my <project> define get sandbox] - if {$sandbox ne {}} { - my define set sandbox $sandbox - return $sandbox - } - } - set sandbox [file normalize [file join $::CWD .. $pkg]] - my define set sandbox $sandbox - return $sandbox - } - - method SrcDir {} { - set pkg [my define get name] - if {[my define exists srcdir]} { - return [my define get srcdir] - } - set sandbox [my Sandbox] - set srcdir [file join [my Sandbox] $pkg] - my define set srcdir $srcdir - return $srcdir - } - - method ScmSelect {} { - if {[my define exists scm]} { - return [my define get scm] - } - set srcdir [my SrcDir] - set classprefix ::practcl::distribution. - if {[file exists $srcdir]} { - foreach class [::info commands ${classprefix}*] { - if {[$class claim_path $srcdir]} { - oo::objdefine [self] mixin $class - my define set scm [string range $class [string length ::practcl::distribution.] end] - } - } - } - foreach class [::info commands ${classprefix}*] { - if {[$class claim_object [self]]} { - oo::objdefine [self] mixin $class - my define set scm [string range $class [string length ::practcl::distribution.] end] - } - } - if {[my define get scm] eq {} && [my define exists file_url]} { - set class - } - - if {[my define get scm] eq {}} { - error "No SCM selected" - } - return [my define get scm] - } - - method ScmTag {} {} - method ScmClone {} {} - method ScmUnpack {} {} - method ScmUpdate {} {} - - method unpack {} { - my ScmSelect - set srcdir [my SrcDir] - if {[file exists $srcdir]} { - return - } - set pkg [my define get name] - if {[my define exists download]} { - # Utilize a staged download - set download [my define get download] - if {[file exists [file join $download $pkg.zip]]} { - ::practcl::tcllib_require zipfile::decode - ::zipfile::decode::unzipfile [file join $download $pkg.zip] $srcdir - return - } - } - my ScmUnpack - } - - method update {} { - my ScmSelect - my ScmUpdate - } -} - -oo::objdefine ::practcl::distribution { - method claim_path path { - return false - } - method claim_object object { - return false - } -} - -oo::class create ::practcl::distribution.snapshot { - superclass ::practcl::distribution - method ScmUnpack {} { - set srcdir [my SrcDir] - if {[file exists [file join $srcdir .download]]} { - return 0 - } - set dpath [::practcl::LOCAL define get download] - set url [my define get file_url] - set fname [file tail $url] - set archive [file join $dpath $fname] - if {![file exists $archive]} { - ::http::wget $url $archive - } - set CWD [pwd] - switch [file extension $fname] { - .zip { - # Zipfile - - } - .tar { - ::practcl::tcllib_require tar - } - .tgz - - .gz { - # Tarball - ::practcl::tcllib_require tcl::transform::zlib - ::practcl::tcllib_require tar - set fh [::open $archive] - fconfigure $fh -encoding binary -translation lf -eofchar {} - ::tcl::transform::zlib $fh - } - } - set fosdb [my ScmClone] - set tag [my ScmTag] - file mkdir $srcdir - ::practcl::fossil $srcdir open $fosdb $tag - return 1 - } -} - -oo::objdefine ::practcl::distribution.snapshot { - method claim_path path { - if {[file exists [file join $path .download]]} { - return true - } - return false - } - method claim_object object { - return false - } -} - - -oo::class create ::practcl::distribution.fossil { - superclass ::practcl::distribution - - # Clone the source - method ScmClone {} { - set srcdir [my SrcDir] - if {[file exists [file join $srcdir .fslckout]]} { - return - } - if {[file exists [file join $srcdir _FOSSIL_]]} { - return - } - if {![::info exists ::practcl::fossil_dbs]} { - # Get a list of local fossil databases - set ::practcl::fossil_dbs [exec fossil all list] - } - set pkg [my define get name] - # Return an already downloaded fossil repo - foreach line [split $::practcl::fossil_dbs \n] { - set line [string trim $line] - if {[file rootname [file tail $line]] eq $pkg} { - return $line - } - } - set download [::practcl::LOCAL define get download] - set fosdb [file join $download $pkg.fos] - if {[file exists $fosdb]} { - return $fosdb - } - - file mkdir [file join $download fossil] - set fosdb [file join $download fossil $pkg.fos] - if {[file exists $fosdb]} { - return $fosdb - } - - set cloned 0 - # Attempt to clone from a local network mirror - if {[::practcl::LOCAL define exists fossil_mirror]} { - set localmirror [::practcl::LOCAL define get fossil_mirror] - catch { - ::practcl::doexec fossil clone $localmirror/$pkg $fosdb - set cloned 1 - } - if {$cloned} { - return $fosdb - } - } - # Attempt to clone from the canonical source - if {[my define get fossil_url] ne {}} { - catch { - ::practcl::doexec fossil clone [my define get fossil_url] $fosdb - set cloned 1 - } - if {$cloned} { - return $fosdb - } - } - # Fall back to the fossil mirror on the island of misfit toys - ::practcl::doexec fossil clone http://fossil.etoyoc.com/fossil/$pkg $fosdb - return $fosdb - } - - method ScmTag {} { - if {[my define exists scm_tag]} { - return [my define get scm_tag] - } - if {[my define exists tag]} { - set tag [my define get tag] - } else { - set tag trunk - } - my define set scm_tag $tag - return $tag - } - - method ScmUnpack {} { - set srcdir [my SrcDir] - if {[file exists [file join $srcdir .fslckout]]} { - return 0 - } - if {[file exists [file join $srcdir _FOSSIL_]]} { - return 0 - } - set CWD [pwd] - set fosdb [my ScmClone] - set tag [my ScmTag] - file mkdir $srcdir - ::practcl::fossil $srcdir open $fosdb $tag - return 1 - } - - method ScmUpdate {} { - if {[my ScmUnpack]} { - return - } - set srcdir [my SrcDir] - set tag [my ScmTag] - ::practcl::fossil $srcdir update $tag - } -} - -oo::objdefine ::practcl::distribution.fossil { - - # Check for markers in the source root - method claim_path path { - if {[file exists [file join $path .fslckout]]} { - return true - } - if {[file exists [file join $path _FOSSIL_]]} { - return true - } - return false - } - - # Check for markers in the metadata - method claim_object obj { - set path [$obj define get srcdir] - if {[my claim_path $path]} { - return true - } - if {[$obj define get fossil_url] ne {}} { - return true - } - return false - } -} - -oo::class create ::practcl::distribution.git { - - method ScmTag {} { - if {[my define exists scm_tag]} { - return [my define get scm_tag] - } - if {[my define exists tag]} { - set tag [my define get tag] - } else { - set tag master - } - my define set scm_tag $tag - return $tag - } - - method ScmUnpack {} { - set srcdir [my SrcDir] - if {[file exists [file join $srcdir .git]]} { - return 0 - } - set CWD [pwd] - set tag [my ScmTag] - set pkg [my define get name] - if {[my define exists git_url]} { - ::practcl::doexec git clone --branch $tag [my define get git_url] $srcdir - } else { - ::practcl::doexec git clone --branch $tag https://github.com/eviltwinskippy/$pkg $srcdir - } - return 1 - } - - method ScmUpdate {} { - if {[my ScmUnpack]} { - return - } - set srcdir [my SrcDir] - set tag [my ScmTag] - ::practcl::doexec_in $srcdir git pull $tag - cd $CWD - } - -} -oo::objdefine ::practcl::distribution.git { - method claim_path path { - if {[file exists [file join $path .git]]} { - return true - } - return false - } - method claim_object obj { - set path [$obj define get srcdir] - if {[my claim_path $path]} { - return true - } - if {[$obj define get git_url] ne {}} { - return true - } - return false - } -} - -### -# Meta repository -# The default is an inert source code block -### -oo::class create ::practcl::subproject { - superclass ::practcl::object ::practcl::distribution - - method compile {} {} - - method critcl args { - if {![info exists critcl]} { - ::pratcl::LOCAL tool critcl load - set critcl [file join [::pratcl::LOCAL tool critcl define get srcdir] main.tcl - } - set srcdir [my SourceRoot] - set PWD [pwd] - cd $srcdir - ::pratcl::dotclexec $critcl {*}$args - cd $PWD - } - - method go {} { - set name [my define get name] - set srcdir [my SrcDir] - my define set localsrcdir $srcdir - my define add include_dir [file join $srcdir generic] - my sources - } - - # Install project into the local build system - method install args {} - - method linktype {} { - return {subordinate package} - } - - method linker-products {configdict} {} - - method linker-external {configdict} { - if {[dict exists $configdict PRACTCL_PKG_LIBS]} { - return [dict get $configdict PRACTCL_PKG_LIBS] - } - } - - method sources {} {} -} - -### -# A project which the kit compiles and integrates -# the source for itself -### -oo::class create ::practcl::subproject.source { - superclass ::practcl::subproject ::practcl::library - - method linktype {} { - return {subordinate package source} - } - -} - -# a copy from the teapot -oo::class create ::practcl::subproject.teapot { - superclass ::practcl::subproject - - method install-local {} { - my install-vfs - } - - method install DEST { - set pkg [my define get pkg_name [my define get name]] - set download [my <project> define get download] - my unpack - set prefix [string trimleft [my <project> define get prefix] /] - ::practcl::tcllib_require zipfile::decode - ::zipfile::decode::unzipfile [file join $download $pkg.zip] [file join $DEST $prefix lib $pkg] - } -} - -oo::class create ::practcl::subproject.kettle { - superclass ::practcl::subproject - - method install-local {} { - my install-vfs - } - - method kettle {path args} { - my variable kettle - if {![info exists kettle]} { - ::pratcl::LOCAL tool kettle load - set kettle [file join [::pratcl::LOCAL tool kettle define get srcdir] kettle] - } - set srcdir [my SourceRoot] - ::pratcl::dotclexec $kettle -f [file join $srcdir build.tcl] {*}$args - } - - method install DEST { - my kettle reinstall --prefix $DEST - } -} - -oo::class create ::practcl::subproject.critcl { - superclass ::practcl::subproject - - method install-local {} { - my install-vfs - } - - method install DEST { - my critcl -pkg [my define get name] - set srcdir [my SourceRoot] - ::pratcl::copyDir [file join $srcdir [my define get name]] [file join $DEST lib [my define get name]] - } -} - - -oo::class create ::practcl::subproject.sak { - superclass ::practcl::subproject - - method install-local {} { - my install-vfs - } - - method install DEST { - ### - # Handle teapot installs - ### - set pkg [my define get pkg_name [my define get name]] - my unpack - set prefix [string trimleft [my <project> define get prefix] /] - set srcdir [my define get srcdir] - ::practcl::dotclexec [file join $srcdir installer.tcl] \ - -pkg-path [file join $DEST $prefix lib $pkg] \ - -no-examples -no-html -no-nroff \ - -no-wait -no-gui -no-apps - } -} - -### -# A binary package -### -oo::class create ::practcl::subproject.binary { - superclass ::practcl::subproject ::practcl::autoconf - - method compile-products {} {} - - method ConfigureOpts {} { - set opts {} - set builddir [my define get builddir] - if {[my define get broken_destroot 0]} { - set PREFIX [my <project> define get prefix_broken_destdir] - } else { - set PREFIX [my <project> define get prefix] - } - if {[my <project> define get CONFIG_SITE] != {}} { - lappend opts --host=[my <project> define get HOST] - lappend opts --with-tclsh=[info nameofexecutable] - } - if {[my <project> define exists tclsrcdir]} { - ### - # On Windows we are probably running under MSYS, which doesn't deal with - # spaces in filename well - ### - set TCLSRCDIR [::practcl::file_relative [file normalize $builddir] [file normalize [file join $::CWD [my <project> define get tclsrcdir]]]] - set TCLGENERIC [::practcl::file_relative [file normalize $builddir] [file normalize [file join $::CWD [my <project> define get tclsrcdir] .. generic]]] - lappend opts --with-tcl=$TCLSRCDIR --with-tclinclude=$TCLGENERIC - } - if {[my <project> define exists tksrcdir]} { - set TKSRCDIR [::practcl::file_relative [file normalize $builddir] [file normalize [file join $::CWD [my <project> define get tksrcdir]]]] - set TKGENERIC [::practcl::file_relative [file normalize $builddir] [file normalize [file join $::CWD [my <project> define get tksrcdir] .. generic]]] - lappend opts --with-tk=$TKSRCDIR --with-tkinclude=$TKGENERIC - } - lappend opts {*}[my define get config_opts] - if {![regexp -- "--prefix" $opts]} { - lappend opts --prefix=$PREFIX - } - #--exec_prefix=$PREFIX - #if {$::tcl_platform(platform) eq "windows"} { - # lappend opts --disable-64bit - #} - if {[my define get static 1]} { - lappend opts --disable-shared --disable-stubs - # - } else { - lappend opts --enable-shared - } - return $opts - } - - method ComputeInstall {} { - if {[my define exists install]} { - switch [my define get install] { - static { - my define set static 1 - my define set autoload 0 - } - static-autoload { - my define set static 1 - my define set autoload 1 - } - vfs { - my define set static 0 - my define set autoload 0 - my define set vfsinstall 1 - } - null { - my define set static 0 - my define set autoload 0 - my define set vfsinstall 0 - } - default { - - } - } - } - } - - method go {} { - next - my ComputeInstall - my define set builddir [my BuildDir [my define get masterpath]] - } - - method linker-products {configdict} { - if {![my define get static 0]} { - return {} - } - set srcdir [my define get builddir] - if {[dict exists $configdict libfile]} { - return " [file join $srcdir [dict get $configdict libfile]]" - } - } - - method static-packages {} { - if {![my define get static 0]} { - return {} - } - set result [my define get static_packages] - set statpkg [my define get static_pkg] - set initfunc [my define get initfunc] - if {$initfunc ne {}} { - set pkg_name [my define get pkg_name] - if {$pkg_name ne {}} { - dict set result $pkg_name initfunc $initfunc - set version [my define get version] - if {$version eq {}} { - set info [my config.sh] - set version [dict get $info version] - set pl {} - if {[dict exists $info patch_level]} { - set pl [dict get $info patch_level] - append version $pl - } - my define set version $version - } - dict set result $pkg_name version $version - dict set result $pkg_name autoload [my define get autoload 0] - } - } - foreach item [my link list subordinate] { - foreach {pkg info} [$item static-packages] { - dict set result $pkg $info - } - } - return $result - } - - method BuildDir {PWD} { - set name [my define get name] - return [my define get builddir [file join $PWD pkg.$name]] - } - - method compile {} { - set name [my define get name] - set PWD $::CWD - cd $PWD - my unpack - set srcdir [file normalize [my SrcDir]] - my Collate_Source $PWD - - ### - # Build a starter VFS for both Tcl and wish - ### - set srcdir [my define get srcdir] - if {[my define get static 1]} { - puts "BUILDING Static $name $srcdir" - } else { - puts "BUILDING Dynamic $name $srcdir" - } - if {[my define get USEMSVC 0]} { - cd $srcdir - ::practcl::doexec nmake -f makefile.vc INSTALLDIR=[my <project> define get installdir] release - } else { - cd $::CWD - set builddir [file normalize [my define get builddir]] - file mkdir $builddir - if {![file exists [file join $builddir Makefile]]} { - my Configure - } - if {[file exists [file join $builddir make.tcl]]} { - ::practcl::domake.tcl $builddir library - } else { - ::practcl::domake $builddir all - } - } - cd $PWD - } - - method Configure {} { - cd $::CWD - my unpack - set srcdir [file normalize [my define get srcdir]] - set builddir [file normalize [my define get builddir]] - file mkdir $builddir - if {[my define get USEMSVC 0]} { - return - } - if {[file exists [file join $builddir practcl.log]]} { - file delete [file join $builddir practcl.log] - } - if {![file exists [file join $srcdir configure]]} { - if {[file exists [file join $srcdir autogen.sh]]} { - cd $srcdir - catch {exec sh autogen.sh >>& [file join $builddir practcl.log]} - cd $::CWD - } - } - if {![file exists [file join $srcdir tclconfig install-sh]]} { - # ensure we have tclconfig with all of the trimmings - set teapath {} - if {[file exists [file join $srcdir .. tclconfig install-sh]]} { - set teapath [file join $srcdir .. tclconfig] - } else { - set tclConfigObj [::practcl::LOCAL tool tclconfig] - $tclConfigObj load - set teapath [$tclConfigObj define get srcdir] - } - set teapath [file normalize $teapath] - #file mkdir [file join $srcdir tclconfig] - if {[catch {file link -symbolic [file join $srcdir tclconfig] $teapath}]} { - ::practcl::copyDir [file join $teapath] [file join $srcdir tclconfig] - } - } - - set opts [my ConfigureOpts] - puts [list PKG [my define get name] CONFIGURE {*}$opts] - cd $builddir - if {[my <project> define get CONFIG_SITE] ne {}} { - set ::env(CONFIG_SITE) [my <project> define get CONFIG_SITE] - } - catch {exec sh [file join $srcdir configure] {*}$opts >>& [file join $builddir practcl.log]} - cd $::CWD - } - - method install DEST { - set PWD [pwd] - set PREFIX [my <project> define get prefix] - ### - # Handle teapot installs - ### - set pkg [my define get pkg_name [my define get name]] - if {[my <project> define get teapot] ne {}} { - set TEAPOT [my <project> define get teapot] - set found 0 - foreach ver [my define get pkg_vers [my define get version]] { - set teapath [file join $TEAPOT $pkg$ver] - if {[file exists $teapath]} { - set dest [file join $DEST [string trimleft $PREFIX /] lib [file tail $teapath]] - ::practcl::copyDir $teapath $dest - return - } - } - } - my compile - if {[my define get USEMSVC 0]} { - set srcdir [my define get srcdir] - cd $srcdir - puts "[self] VFS INSTALL $DEST" - ::practcl::doexec nmake -f makefile.vc INSTALLDIR=$DEST install - } else { - set builddir [my define get builddir] - if {[file exists [file join $builddir make.tcl]]} { - # Practcl builds can inject right to where we need them - puts "[self] VFS INSTALL $DEST (Practcl)" - ::practcl::domake.tcl $builddir install-package $DEST - } elseif {[my define get broken_destroot 0] == 0} { - # Most modern TEA projects understand DESTROOT in the makefile - puts "[self] VFS INSTALL $DEST (TEA)" - ::practcl::domake $builddir install DESTDIR=$DEST - } else { - # But some require us to do an install into a fictitious filesystem - # and then extract the gooey parts within. - # (*cough*) TkImg - set PREFIX [my <project> define get prefix] - set BROKENROOT [::practcl::msys_to_tclpath [my <project> define get prefix_broken_destdir]] - file delete -force $BROKENROOT - file mkdir $BROKENROOT - ::practcl::domake $builddir $install - ::practcl::copyDir $BROKENROOT [file join $DEST [string trimleft $PREFIX /]] - file delete -force $BROKENROOT - } - } - cd $PWD - } - - method Autoconf {} { - ### - # Re-run autoconf for this project - # Not a good idea in practice... but in the right hands it can be useful - ### - set pwd [pwd] - set srcdir [file normalize [my define get srcdir]] - cd $srcdir - foreach template {configure.ac configure.in} { - set input [file join $srcdir $template] - if {[file exists $input]} { - puts "autoconf -f $input > [file join $srcdir configure]" - exec autoconf -f $input > [file join $srcdir configure] - } - } - cd $pwd - } -} - -# An external library -oo::class create ::practcl::subproject.external { - superclass ::practcl::subproject.binary - method install DEST { - my compile - } -} - -oo::class create ::practcl::subproject.core { - superclass ::practcl::subproject.binary - - # On the windows platform MinGW must build - # from the platform directory in the source repo - method BuildDir {PWD} { - return [my define get localsrcdir] - } - - method Configure {} { - if {[my define get USEMSVC 0]} { - return - } - set opts [my ConfigureOpts] - set builddir [file normalize [my define get builddir]] - set localsrcdir [file normalize [my define get localsrcdir]] - puts [list PKG [my define get name] CONFIGURE {*}$opts] - cd $localsrcdir - if {[my <project> define get CONFIG_SITE] ne {}} { - set ::env(CONFIG_SITE) [my <project> define get CONFIG_SITE] - } - catch {exec sh [file join $localsrcdir configure] {*}$opts >& [file join $builddir practcl.log]} - } - - method ConfigureOpts {} { - set opts {} - set builddir [file normalize [my define get builddir]] - set PREFIX [my <project> define get prefix] - if {[my <project> define get CONFIG_SITE] != {}} { - lappend opts --host=[my <project> define get HOST] - lappend opts --with-tclsh=[info nameofexecutable] - } - lappend opts {*}[my define get config_opts] - if {![regexp -- "--prefix" $opts]} { - lappend opts --prefix=$PREFIX - } - #--exec_prefix=$PREFIX - lappend opts --disable-shared - return $opts - } - - method go {} { - set name [my define get name] - set os [my <project> define get TEACUP_OS] - my ComputeInstall - set srcdir [my SrcDir] - my define add include_dir [file join $srcdir generic] - switch $os { - windows { - my define set localsrcdir [file join $srcdir win] - my define add include_dir [file join $srcdir win] - } - default { - my define set localsrcdir [file join $srcdir unix] - my define add include_dir [file join $srcdir $name unix] - } - } - my define set builddir [my BuildDir [my define get masterpath]] - } - - method linktype {} { - return {subordinate core.library} - } -} - - -### -# Classes to manage tools that needed in the local environment -# to compile and/or installed other packages -### -oo::class create ::practcl::tool { - superclass ::practcl::object ::practcl::distribution - - method critcl args { - if {![info exists critcl]} { - ::pratcl::LOCAL tool critcl load - set critcl [file join [::pratcl::LOCAL tool critcl define get srcdir] main.tcl - } - set srcdir [my SourceRoot] - set PWD [pwd] - cd $srcdir - ::pratcl::dotclexec $critcl {*}$args - cd $PWD - } - - method SourceRoot {} { - set info [my define dump] - set result $info - if {![my define exists srcdir]} { - if {[dict exists $info srcdir]} { - set srcdir [dict get $info srcdir] - } elseif {[dict exists $info sandbox]} { - set srcdir [file join [dict get $info sandbox] $pkg] - } else { - set srcdir [file join $::CWD .. $pkg] - } - dict set result srcdir $srcdir - my define set srcdir $srcdir - } - return [my define get srcdir] - } - - method linktype {} { - return tool - } - - # Return boolean if present - method present {} { - return 1 - } - - # Procedure to install in the local environment - method install {} { - my unpack - } - - # Procedure to load into the local interpreter - method load {} { - my variable loaded - if {[info exists loaded]} { - return 0 - } - if {![my present]} { - my install - } - my LocalLoad - set loaded 1 - } - - method LocalLoad {} {} -} - -oo::class create ::practcl::tool.source { - superclass ::practcl::tool - - method present {} { - return [file exists [my define get srcdir]] - } - - method toplevel_script {} { - my load - return [file join [my SourceRoot] [my define get toplevel_script]] - } - - method LocalLoad {} { - set LibraryRoot [file join [my define get srcdir] [my define get module_root modules]] - if {[file exists $LibraryRoot] && $LibraryRoot ni $::auto_path} { - set ::auto_path [linsert $::auto_path 0 $LibraryRoot] - } - } -} - -### -# Create an object to represent the local environment -### -set ::practcl::MAIN ::practcl::LOCAL -# Defer the creation of the ::pratcl::LOCAL object until it is called -# in order to allow packages to -set ::auto_index(::practcl::LOCAL) { - puts "Building LOCAL" - ::practcl::project create ::practcl::LOCAL - ::practcl::LOCAL define set [::practcl::local_os] - # Until something better comes along, use ::practcl::LOCAL - # as our main project - # Add tclconfig as a project of record - ::practcl::LOCAL add_tool tclconfig { - tag trunk class tool.source fossil_url http://core.tcl.tk/tclconfig - } - # Add tcllib as a project of record - ::practcl::LOCAL add_tool tcllib { - tag trunk class tool.source fossil_url http://core.tcl.tk/tcllib - } - ::practcl::LOCAL add_tool kettle { - tag trunk class tool.source fossil_url http://fossil.etoyoc.com/fossil/kettle - } - ::practcl::LOCAL add_tool critcl { - tag trunk class tool.source - git_url http://github.com/andreas-kupries/critcl - } - ::practcl::LOCAL add_tool odie { - tag trunk class tool.source - fossil_url http://fossil.etoyoc.com/fossil/odie - } -} -package provide practcl 0.8a1 diff --git a/ds9/tclconfig/tcl.m4 b/ds9/tclconfig/tcl.m4 index b07ec54..655be25 100644 --- a/ds9/tclconfig/tcl.m4 +++ b/ds9/tclconfig/tcl.m4 @@ -11,19 +11,11 @@ AC_PREREQ(2.57) -dnl TEA extensions pass us the version of TEA they think they -dnl are compatible with (must be set in TEA_INIT below) -dnl TEA_VERSION="3.10" - # Possible values for key variables defined: # # TEA_WINDOWINGSYSTEM - win32 aqua x11 (mirrors 'tk windowingsystem') -# PRACTCL_WINDOWINGSYSTEM - windows cocoa hitheme x11 sdl # TEA_PLATFORM - windows unix # TEA_TK_EXTENSION - True if this is a Tk extension -# TEACUP_OS - windows macosx linux generic -# TEACUP_TOOLSET - Toolset in use (gcc,mingw,msvc,llvm) -# TEACUP_PROFILE - win32 # #------------------------------------------------------------------------ @@ -113,6 +105,9 @@ AC_DEFUN([TEA_PATH_TCLCONFIG], [ `ls -d /Library/Frameworks 2>/dev/null` \ `ls -d /Network/Library/Frameworks 2>/dev/null` \ `ls -d /System/Library/Frameworks 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Network/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Tcl.framework 2>/dev/null` \ ; do if test -f "$i/Tcl.framework/tclConfig.sh" ; then ac_cv_c_tclconfig="`(cd $i/Tcl.framework; pwd)`" @@ -139,13 +134,17 @@ AC_DEFUN([TEA_PATH_TCLCONFIG], [ for i in `ls -d ${libdir} 2>/dev/null` \ `ls -d ${exec_prefix}/lib 2>/dev/null` \ `ls -d ${prefix}/lib 2>/dev/null` \ - `ls -d /usr/contrib/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ + `ls -d /usr/contrib/lib 2>/dev/null` \ `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ `ls -d /usr/lib/tcl8.6 2>/dev/null` \ `ls -d /usr/lib/tcl8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tcl8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tcl8.5 2>/dev/null` \ ; do if test -f "$i/tclConfig.sh" ; then ac_cv_c_tclconfig="`(cd $i; pwd)`" @@ -213,7 +212,6 @@ AC_DEFUN([TEA_PATH_TKCONFIG], [ if test x"${no_tk}" = x ; then # we reset no_tk in case something fails here no_tk=true - TEA_TK_EXTENSION=0 AC_ARG_WITH(tk, AC_HELP_STRING([--with-tk], [directory containing tk configuration (tkConfig.sh)]), @@ -270,6 +268,9 @@ AC_DEFUN([TEA_PATH_TKCONFIG], [ `ls -d /Library/Frameworks 2>/dev/null` \ `ls -d /Network/Library/Frameworks 2>/dev/null` \ `ls -d /System/Library/Frameworks 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Network/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Tcl.framework 2>/dev/null` \ ; do if test -f "$i/Tk.framework/tkConfig.sh" ; then ac_cv_c_tkconfig="`(cd $i/Tk.framework; pwd)`" @@ -285,8 +286,15 @@ AC_DEFUN([TEA_PATH_TKCONFIG], [ `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ + `ls -d /usr/lib/tk8.6 2>/dev/null` \ + `ls -d /usr/lib/tk8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tk8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tk8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tk8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tk8.5 2>/dev/null` \ ; do if test -f "$i/tkConfig.sh" ; then ac_cv_c_tkconfig="`(cd $i; pwd)`" @@ -333,7 +341,6 @@ AC_DEFUN([TEA_PATH_TKCONFIG], [ AC_MSG_ERROR([Can't find Tk configuration definitions. Use --with-tk to specify a directory containing tkConfig.sh]) else no_tk= - TEA_TK_EXTENSION=1 TK_BIN_DIR="${ac_cv_c_tkconfig}" AC_MSG_RESULT([found ${TK_BIN_DIR}/tkConfig.sh]) fi @@ -356,6 +363,8 @@ AC_DEFUN([TEA_PATH_TKCONFIG], [ # TCL_BIN_DIR # TCL_SRC_DIR # TCL_LIB_FILE +# TCL_ZIP_FILE +# TCL_ZIPFS_SUPPORT #------------------------------------------------------------------------ AC_DEFUN([TEA_LOAD_TCLCONFIG], [ @@ -529,42 +538,18 @@ AC_DEFUN([TEA_LOAD_TKCONFIG], [ eval "TK_STUB_LIB_SPEC=\"${TK_STUB_LIB_SPEC}\"" # TEA specific: Ensure windowingsystem is defined - case ${TK_DEFS} in - *PLATFORM_SDL*) - TEA_WINDOWINGSYSTEM="x11" - PRACTCL_WINDOWINGSYSTEM="sdl" - TEA_USE_SDL=yes - ;; - esac - if test "${TEA_USE_SDL}" = "yes" ; then - true - elif test "${TEA_PLATFORM}" = "unix" ; then + if test "${TEA_PLATFORM}" = "unix" ; then case ${TK_DEFS} in *MAC_OSX_TK*) - AC_DEFINE(MAC_OSX_TK, 1, [Are we building against Mac OS X Cocoa?]) + AC_DEFINE(MAC_OSX_TK, 1, [Are we building against Mac OS X TkAqua?]) TEA_WINDOWINGSYSTEM="aqua" - PRACTCL_WINDOWINGSYSTEM="cocoa" - TEA_USE_HITHEME=no; - if test "${TK_VERSION}" = "8.5" ; then - if test "${TK_PATCH_LEVEL}" > ".17" ; then - TEA_USE_HITHEME=yes; - fi - elif test "${TK_VERSION}" = "8.6" ; then - if test "${TK_PATCH_LEVEL}" > ".3" ; then - TEA_USE_HITHEME=yes; - fi - elif test "${TK_VERSION}" > "8.6" ; then - TEA_USE_HITHEME=yes; - fi ;; *) TEA_WINDOWINGSYSTEM="x11" - PRACTCL_WINDOWINGSYSTEM="x11" ;; esac elif test "${TEA_PLATFORM}" = "windows" ; then TEA_WINDOWINGSYSTEM="win32" - PRACTCL_WINDOWINGSYSTEM="windows" fi AC_SUBST(TK_VERSION) @@ -582,8 +567,6 @@ AC_DEFUN([TEA_LOAD_TKCONFIG], [ # TEA specific: AC_SUBST(TK_LIBS) AC_SUBST(TK_XINCLUDES) - # Practcl - AC_SUBST(PRACTCL_WINDOWINGSYSTEM) ]) #------------------------------------------------------------------------ @@ -607,26 +590,7 @@ AC_DEFUN([TEA_LOAD_TKCONFIG], [ AC_DEFUN([TEA_PROG_TCLSH], [ AC_MSG_CHECKING([for tclsh]) - - AC_ARG_WITH(tclsh, [ --with-tclsh Specify a local tcl shell to use for dynamic code], with_tclsh=${withval}) - # Use the value from --with-tclsh, if it was given - TCLSH_PROG=0 - if test x"${with_tclsh}" != x ; then - if test -f "${with_tclsh}" ; then - TCLSH_PROG=${with_tclsh} - else - if test -f "${with_tclsh}/tcl8.6" ; then - TCLSH_PROG="${with_tclsh}/tcl8.6" - else - if test -f "${with_tclsh}/tclsh86.exe" ; then - TCLSH_PROG="${with_tclsh}/tclsh86.exe" - else - AC_MSG_ERROR([${with_tclsh} does not point to a valid Tcl executable]) - fi - fi - fi - else - if test -f "${TCL_BIN_DIR}/Makefile" ; then + if test -f "${TCL_BIN_DIR}/Makefile" ; then # tclConfig.sh is in Tcl build directory if test "${TEA_PLATFORM}" = "windows"; then if test -f "${TCL_BIN_DIR}/tclsh${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${TCL_DBGX}${EXEEXT}" ; then @@ -641,7 +605,7 @@ AC_DEFUN([TEA_PROG_TCLSH], [ else TCLSH_PROG="${TCL_BIN_DIR}/tclsh" fi - else + else # tclConfig.sh is in install location if test "${TEA_PLATFORM}" = "windows"; then TCLSH_PROG="tclsh${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${TCL_DBGX}${EXEEXT}" @@ -658,8 +622,7 @@ AC_DEFUN([TEA_PROG_TCLSH], [ fi done TCLSH_PROG="${REAL_TCL_BIN_DIR}${TCLSH_PROG}" - fi - fi + fi AC_MSG_RESULT([${TCLSH_PROG}]) AC_SUBST(TCLSH_PROG) ]) @@ -698,7 +661,7 @@ AC_DEFUN([TEA_PROG_WISH], [ WISH_PROG="${TK_BIN_DIR}/wish${TK_MAJOR_VERSION}${TK_MINOR_VERSION}${TK_DBGX}st${EXEEXT}" fi else - WISH_PROG="${TK_BIN_DIR}/wish" + WISH_PROG="${TK_BIN_DIR}/wish" fi else # tkConfig.sh is in install location @@ -836,7 +799,7 @@ AC_DEFUN([TEA_ENABLE_SHARED], [ AC_DEFUN([TEA_ENABLE_THREADS], [ AC_ARG_ENABLE(threads, AC_HELP_STRING([--enable-threads], - [build with threads]), + [build with threads (default: on)]), [tcl_ok=$enableval], [tcl_ok=yes]) if test "${enable_threads+set}" = set; then @@ -920,14 +883,6 @@ AC_DEFUN([TEA_ENABLE_THREADS], [ that IS thread-enabled. It is recommended to use --enable-threads.]) fi ;; - *) - if test "${TCL_THREADS}" = "1"; then - AC_MSG_WARN([ - --enable-threads requested, but building against a Tcl that is NOT - thread-enabled. This is an OK configuration that will also run in - a thread-enabled core.]) - fi - ;; esac AC_SUBST(TCL_THREADS) ]) @@ -1404,8 +1359,6 @@ AC_DEFUN([TEA_CONFIG_CFLAGS], [ CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" SHLIB_LD='${CC} -shared' UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' - PRACTCL_UNSHARED_LIB_SUFFIX='.a' - LDFLAGS_CONSOLE="-wl,--subsystem,console ${lflags}" LDFLAGS_WINDOW="-wl,--subsystem,windows ${lflags}" @@ -1554,7 +1507,7 @@ AC_DEFUN([TEA_CONFIG_CFLAGS], [ LDFLAGS="$LDFLAGS -Wl,--export-dynamic" SHLIB_CFLAGS="-fPIC" SHLIB_SUFFIX=".so" - SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}' + SHLIB_LD='${CC} ${CFLAGS} ${LDFLAGS} -shared' AC_CHECK_LIB(network, inet_ntoa, [LIBS="$LIBS -lnetwork"]) ;; HP-UX-*.11.*) @@ -1665,7 +1618,7 @@ AC_DEFUN([TEA_CONFIG_CFLAGS], [ CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" # TEA specific: use LDFLAGS_DEFAULT instead of LDFLAGS - SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS_DEFAULT}' + SHLIB_LD='${CC} ${CFLAGS} ${LDFLAGS_DEFAULT} -shared' LDFLAGS="$LDFLAGS -Wl,--export-dynamic" AS_IF([test $doRpath = yes], [ CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}']) @@ -1704,37 +1657,21 @@ AC_DEFUN([TEA_CONFIG_CFLAGS], [ OpenBSD-*) arch=`arch -s` case "$arch" in - vax) - SHLIB_SUFFIX="" - SHARED_LIB_SUFFIX="" - LDFLAGS="" - ;; - *) - case "$arch" in - alpha|sparc64) - SHLIB_CFLAGS="-fPIC" - ;; - *) - SHLIB_CFLAGS="-fpic" - ;; - esac - SHLIB_LD='${CC} -shared ${SHLIB_CFLAGS}' - SHLIB_SUFFIX=".so" - AS_IF([test $doRpath = yes], [ - CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}']) - LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} - SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so${SHLIB_VERSION}' - LDFLAGS="-Wl,-export-dynamic" - ;; - esac - case "$arch" in - vax) - CFLAGS_OPTIMIZE="-O1" + alpha|sparc64) + SHLIB_CFLAGS="-fPIC" ;; *) - CFLAGS_OPTIMIZE="-O2" + SHLIB_CFLAGS="-fpic" ;; esac + SHLIB_LD='${CC} ${SHLIB_CFLAGS} -shared' + SHLIB_SUFFIX=".so" + AS_IF([test $doRpath = yes], [ + CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}']) + LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} + SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so${SHLIB_VERSION}' + LDFLAGS="-Wl,-export-dynamic" + CFLAGS_OPTIMIZE="-O2" AS_IF([test "${TCL_THREADS}" = "1"], [ # On OpenBSD: Compile with -pthread # Don't link with -lpthread @@ -1748,7 +1685,7 @@ AC_DEFUN([TEA_CONFIG_CFLAGS], [ NetBSD-*) # NetBSD has ELF and can use 'cc -shared' to build shared libs SHLIB_CFLAGS="-fPIC" - SHLIB_LD='${CC} -shared ${SHLIB_CFLAGS}' + SHLIB_LD='${CC} ${SHLIB_CFLAGS} -shared' SHLIB_SUFFIX=".so" LDFLAGS="$LDFLAGS -export-dynamic" AS_IF([test $doRpath = yes], [ @@ -1761,7 +1698,7 @@ AC_DEFUN([TEA_CONFIG_CFLAGS], [ LDFLAGS="$LDFLAGS -pthread" ]) ;; - FreeBSD-*) + DragonFly-*|FreeBSD-*) # This configuration from FreeBSD Ports. SHLIB_CFLAGS="-fPIC" SHLIB_LD="${CC} -shared" @@ -2121,9 +2058,9 @@ dnl # preprocessing tests use only CPPFLAGS. case $system in AIX-*) ;; BSD/OS*) ;; - CYGWIN_*|MINGW32_*) ;; + CYGWIN_*|MINGW32_*|MINGW64_*) ;; IRIX*) ;; - NetBSD-*|FreeBSD-*|OpenBSD-*) ;; + NetBSD-*|DragonFly-*|FreeBSD-*|OpenBSD-*) ;; Darwin-*) ;; SCO_SV-3.2*) ;; windows) ;; @@ -2137,12 +2074,10 @@ dnl # preprocessing tests use only CPPFLAGS. AS_IF([test "$SHARED_LIB_SUFFIX" = ""], [ # TEA specific: use PACKAGE_VERSION instead of VERSION - SHARED_LIB_SUFFIX='${PACKAGE_VERSION}${SHLIB_SUFFIX}' - ]) + SHARED_LIB_SUFFIX='${PACKAGE_VERSION}${SHLIB_SUFFIX}']) AS_IF([test "$UNSHARED_LIB_SUFFIX" = ""], [ # TEA specific: use PACKAGE_VERSION instead of VERSION - UNSHARED_LIB_SUFFIX='${PACKAGE_VERSION}.a' - ]) + UNSHARED_LIB_SUFFIX='${PACKAGE_VERSION}.a']) if test "${GCC}" = "yes" -a ${SHLIB_SUFFIX} = ".dll"; then AC_CACHE_CHECK(for SEH support in compiler, @@ -2245,7 +2180,6 @@ dnl # preprocessing tests use only CPPFLAGS. AC_SUBST(STLIB_LD) AC_SUBST(SHLIB_LD) - AC_SUBST(SHLIB_SUFFIX) AC_SUBST(SHLIB_LD_LIBS) AC_SUBST(SHLIB_CFLAGS) @@ -2376,97 +2310,6 @@ int main() { ]) #-------------------------------------------------------------------- -# TEA_MISSING_POSIX_HEADERS -# -# Supply substitutes for missing POSIX header files. Special -# notes: -# - stdlib.h doesn't define strtol, strtoul, or -# strtod in some versions of SunOS -# - some versions of string.h don't declare procedures such -# as strstr -# -# Arguments: -# none -# -# Results: -# -# Defines some of the following vars: -# NO_DIRENT_H -# NO_ERRNO_H -# NO_VALUES_H -# HAVE_LIMITS_H or NO_LIMITS_H -# NO_STDLIB_H -# NO_STRING_H -# NO_SYS_WAIT_H -# NO_DLFCN_H -# HAVE_SYS_PARAM_H -# -# HAVE_STRING_H ? -# -# tkUnixPort.h checks for HAVE_LIMITS_H, so do both HAVE and -# CHECK on limits.h -#-------------------------------------------------------------------- - -AC_DEFUN([TEA_MISSING_POSIX_HEADERS], [ - AC_CACHE_CHECK([dirent.h], tcl_cv_dirent_h, [ - AC_TRY_LINK([#include <sys/types.h> -#include <dirent.h>], [ -#ifndef _POSIX_SOURCE -# ifdef __Lynx__ - /* - * Generate compilation error to make the test fail: Lynx headers - * are only valid if really in the POSIX environment. - */ - - missing_procedure(); -# endif -#endif -DIR *d; -struct dirent *entryPtr; -char *p; -d = opendir("foobar"); -entryPtr = readdir(d); -p = entryPtr->d_name; -closedir(d); -], tcl_cv_dirent_h=yes, tcl_cv_dirent_h=no)]) - - if test $tcl_cv_dirent_h = no; then - AC_DEFINE(NO_DIRENT_H, 1, [Do we have <dirent.h>?]) - fi - - # TEA specific: - AC_CHECK_HEADER(errno.h, , [AC_DEFINE(NO_ERRNO_H, 1, [Do we have <errno.h>?])]) - AC_CHECK_HEADER(float.h, , [AC_DEFINE(NO_FLOAT_H, 1, [Do we have <float.h>?])]) - AC_CHECK_HEADER(values.h, , [AC_DEFINE(NO_VALUES_H, 1, [Do we have <values.h>?])]) - AC_CHECK_HEADER(limits.h, - [AC_DEFINE(HAVE_LIMITS_H, 1, [Do we have <limits.h>?])], - [AC_DEFINE(NO_LIMITS_H, 1, [Do we have <limits.h>?])]) - AC_CHECK_HEADER(stdlib.h, tcl_ok=1, tcl_ok=0) - AC_EGREP_HEADER(strtol, stdlib.h, , tcl_ok=0) - AC_EGREP_HEADER(strtoul, stdlib.h, , tcl_ok=0) - AC_EGREP_HEADER(strtod, stdlib.h, , tcl_ok=0) - if test $tcl_ok = 0; then - AC_DEFINE(NO_STDLIB_H, 1, [Do we have <stdlib.h>?]) - fi - AC_CHECK_HEADER(string.h, tcl_ok=1, tcl_ok=0) - AC_EGREP_HEADER(strstr, string.h, , tcl_ok=0) - AC_EGREP_HEADER(strerror, string.h, , tcl_ok=0) - - # See also memmove check below for a place where NO_STRING_H can be - # set and why. - - if test $tcl_ok = 0; then - AC_DEFINE(NO_STRING_H, 1, [Do we have <string.h>?]) - fi - - AC_CHECK_HEADER(sys/wait.h, , [AC_DEFINE(NO_SYS_WAIT_H, 1, [Do we have <sys/wait.h>?])]) - AC_CHECK_HEADER(dlfcn.h, , [AC_DEFINE(NO_DLFCN_H, 1, [Do we have <dlfcn.h>?])]) - - # OS/390 lacks sys/param.h (and doesn't need it, by chance). - AC_HAVE_HEADERS(sys/param.h) -]) - -#-------------------------------------------------------------------- # TEA_PATH_X # # Locate the X11 header files and the X11 library archive. Try @@ -2491,7 +2334,7 @@ closedir(d); #-------------------------------------------------------------------- AC_DEFUN([TEA_PATH_X], [ - if test "${PRACTCL_WINDOWINGSYSTEM}" = "x11" ; then + if test "${TEA_WINDOWINGSYSTEM}" = "x11" ; then TEA_PATH_UNIX_X fi ]) @@ -2721,92 +2564,6 @@ AC_DEFUN([TEA_BUGGY_STRTOD], [ ]) #-------------------------------------------------------------------- -# TEA_TCL_LINK_LIBS -# -# Search for the libraries needed to link the Tcl shell. -# Things like the math library (-lm) and socket stuff (-lsocket vs. -# -lnsl) are dealt with here. -# -# Arguments: -# Requires the following vars to be set in the Makefile: -# DL_LIBS (not in TEA, only needed in core) -# LIBS -# MATH_LIBS -# -# Results: -# -# Substitutes the following vars: -# TCL_LIBS -# MATH_LIBS -# -# Might append to the following vars: -# LIBS -# -# Might define the following vars: -# HAVE_NET_ERRNO_H -#-------------------------------------------------------------------- - -AC_DEFUN([TEA_TCL_LINK_LIBS], [ - #-------------------------------------------------------------------- - # On a few very rare systems, all of the libm.a stuff is - # already in libc.a. Set compiler flags accordingly. - # Also, Linux requires the "ieee" library for math to work - # right (and it must appear before "-lm"). - #-------------------------------------------------------------------- - - AC_CHECK_FUNC(sin, MATH_LIBS="", MATH_LIBS="-lm") - AC_CHECK_LIB(ieee, main, [MATH_LIBS="-lieee $MATH_LIBS"]) - - #-------------------------------------------------------------------- - # Interactive UNIX requires -linet instead of -lsocket, plus it - # needs net/errno.h to define the socket-related error codes. - #-------------------------------------------------------------------- - - AC_CHECK_LIB(inet, main, [LIBS="$LIBS -linet"]) - AC_CHECK_HEADER(net/errno.h, [ - AC_DEFINE(HAVE_NET_ERRNO_H, 1, [Do we have <net/errno.h>?])]) - - #-------------------------------------------------------------------- - # Check for the existence of the -lsocket and -lnsl libraries. - # The order here is important, so that they end up in the right - # order in the command line generated by make. Here are some - # special considerations: - # 1. Use "connect" and "accept" to check for -lsocket, and - # "gethostbyname" to check for -lnsl. - # 2. Use each function name only once: can't redo a check because - # autoconf caches the results of the last check and won't redo it. - # 3. Use -lnsl and -lsocket only if they supply procedures that - # aren't already present in the normal libraries. This is because - # IRIX 5.2 has libraries, but they aren't needed and they're - # bogus: they goof up name resolution if used. - # 4. On some SVR4 systems, can't use -lsocket without -lnsl too. - # To get around this problem, check for both libraries together - # if -lsocket doesn't work by itself. - #-------------------------------------------------------------------- - - tcl_checkBoth=0 - AC_CHECK_FUNC(connect, tcl_checkSocket=0, tcl_checkSocket=1) - if test "$tcl_checkSocket" = 1; then - AC_CHECK_FUNC(setsockopt, , [AC_CHECK_LIB(socket, setsockopt, - LIBS="$LIBS -lsocket", tcl_checkBoth=1)]) - fi - if test "$tcl_checkBoth" = 1; then - tk_oldLibs=$LIBS - LIBS="$LIBS -lsocket -lnsl" - AC_CHECK_FUNC(accept, tcl_checkNsl=0, [LIBS=$tk_oldLibs]) - fi - AC_CHECK_FUNC(gethostbyname, , [AC_CHECK_LIB(nsl, gethostbyname, - [LIBS="$LIBS -lnsl"])]) - - # TEA specific: Don't perform the eval of the libraries here because - # DL_LIBS won't be set until we call TEA_CONFIG_CFLAGS - - TCL_LIBS='${DL_LIBS} ${LIBS} ${MATH_LIBS}' - AC_SUBST(TCL_LIBS) - AC_SUBST(MATH_LIBS) -]) - -#-------------------------------------------------------------------- # TEA_TCL_EARLY_FLAGS # # Check for what flags are needed to be passed so the correct OS @@ -2967,32 +2724,23 @@ AC_DEFUN([TEA_TCL_64BIT_FLAGS], [ #------------------------------------------------------------------------ AC_DEFUN([TEA_INIT], [ - # TEA extensions pass this us the version of TEA they think they - # are compatible with. - TEA_VERSION="3.10" - AC_MSG_CHECKING([for correct TEA configuration]) + TEA_VERSION="3.13" + + AC_MSG_CHECKING([TEA configuration]) if test x"${PACKAGE_NAME}" = x ; then AC_MSG_ERROR([ The PACKAGE_NAME variable must be defined by your TEA configure.ac]) fi - if test x"$1" = x ; then - AC_MSG_ERROR([ -TEA version not specified.]) - elif test "$1" != "${TEA_VERSION}" ; then - AC_MSG_RESULT([warning: requested TEA version "$1", have "${TEA_VERSION}"]) - else - AC_MSG_RESULT([ok (TEA ${TEA_VERSION})]) - fi + AC_MSG_RESULT([ok (TEA ${TEA_VERSION})]) # If the user did not set CFLAGS, set it now to keep macros # like AC_PROG_CC and AC_TRY_COMPILE from adding "-g -O2". if test "${CFLAGS+set}" != "set" ; then CFLAGS="" fi - TEA_TK_EXTENSION=0 - AC_SUBST(TEA_TK_EXTENSION) + case "`uname -s`" in - *win32*|*WIN32*|*MINGW32_*) + *win32*|*WIN32*|*MINGW32_*|*MINGW64_*) AC_CHECK_PROG(CYGPATH, cygpath, cygpath -m, echo) EXEEXT=".exe" TEA_PLATFORM="windows" @@ -3045,6 +2793,9 @@ TEA version not specified.]) AC_SUBST(PKG_INCLUDES) AC_SUBST(PKG_LIBS) AC_SUBST(PKG_CFLAGS) + + # Configure the installer. + TEA_INSTALLER ]) #------------------------------------------------------------------------ @@ -3236,12 +2987,8 @@ AC_DEFUN([TEA_ADD_LIBS], [ vars="$@" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[[^.]]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([[^-]].*\)\.lib[$]/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -3340,20 +3087,6 @@ AC_DEFUN([TEA_SETUP_COMPILER_CC], [ AC_PROG_CC AC_PROG_CPP - INSTALL='$(SHELL) $(srcdir)/tclconfig/install-sh -c' - INSTALL_DATA_DIR='${INSTALL} -d -m 755' - INSTALL_DATA='${INSTALL} -m 644' - INSTALL_PROGRAM='${INSTALL}' - INSTALL_SCRIPT='${INSTALL}' - INSTALL_LIBRARY='${INSTALL_DATA}' - - AC_SUBST(INSTALL) - AC_SUBST(INSTALL_DATA_DIR) - AC_SUBST(INSTALL_DATA) - AC_SUBST(INSTALL_PROGRAM) - AC_SUBST(INSTALL_SCRIPT) - AC_SUBST(INSTALL_LIBRARY) - #-------------------------------------------------------------------- # Checks to see if the make program sets the $MAKE variable. #-------------------------------------------------------------------- @@ -3412,14 +3145,6 @@ AC_DEFUN([TEA_SETUP_COMPILER], [ #-------------------------------------------------------------------- AC_C_BIGENDIAN - if test "${TEA_PLATFORM}" = "unix" ; then - TEA_TCL_LINK_LIBS - TEA_MISSING_POSIX_HEADERS - # Let the user call this, because if it triggers, they will - # need a compat/strtod.c that is correct. Users can also - # use Tcl_GetDouble(FromObj) instead. - #TEA_BUGGY_STRTOD - fi ]) #------------------------------------------------------------------------ @@ -3445,131 +3170,98 @@ AC_DEFUN([TEA_SETUP_COMPILER], [ # MAKE_STUB_LIB Makefile rule for building a stub library # VC_MANIFEST_EMBED_DLL Makefile rule for embedded VC manifest in DLL # VC_MANIFEST_EMBED_EXE Makefile rule for embedded VC manifest in EXE -# -# PRACTCL_TOOLSET What toolset is in use (gcc or msvc) -# PRACTCL_SHARED_LIB Template rule for building a shared library -# PRACTCL_STATIC_LIB Template rule for building a static library -# PRACTCL_STUB_LIB Template rule for building a stub library -# PRACTCL_VC_MANIFEST_EMBED_DLL Template rule for embedded VC manifest in DLL -# PRACTCL_VC_MANIFEST_EMBED_EXE Template rule for embedded VC manifest in EXE -# PRACTCL_NAME_LIBRARY Template rule for naming libraries -# #------------------------------------------------------------------------ AC_DEFUN([TEA_MAKE_LIB], [ - PRACTCL_TOOLSET="gcc" - PRACTCL_VC_MANIFEST_EMBED_DLL=: - PRACTCL_VC_MANIFEST_EMBED_EXE=: - if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes"; then - PRACTCL_TOOLSET="msvc" - PRACTCL_STATIC_LIB="%STLIB_LD% -out:%OUTFILE% %LIBRARY_OBJECTS%" - PRACTCL_SHARED_LIB="%SHLIB_LD% %SHLIB_LD_LIBS% %LDFLAGS_DEFAULT% -out:%OUTFILE% %LIBRARY_OBJECTS%" - MAKE_STATIC_LIB="\${STLIB_LD} -out:\[$]@ \$(PKG_OBJECTS)" - MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LD_LIBS} \${LDFLAGS_DEFAULT} -out:\[$]@ \$(PKG_OBJECTS)" - AC_EGREP_CPP([manifest needed], [ + if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes"; then + MAKE_STATIC_LIB="\${STLIB_LD} -out:\[$]@ \$(PKG_OBJECTS)" + MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LD_LIBS} \${LDFLAGS_DEFAULT} -out:\[$]@ \$(PKG_OBJECTS)" + AC_EGREP_CPP([manifest needed], [ #if defined(_MSC_VER) && _MSC_VER >= 1400 print("manifest needed") #endif - ], [ - # Could do a CHECK_PROG for mt, but should always be with MSVC8+ - PRACTCL_VC_MANIFEST_EMBED_DLL="mt.exe -nologo -manifest %OUTFILE%.manifest -outputresource:%OUTFILE%\;2" - PRACTCL_VC_MANIFEST_EMBED_EXE="mt.exe -nologo -manifest %OUTFILE%.manifest -outputresource:%OUTFILE%\;1" - VC_MANIFEST_EMBED_DLL="if test -f \[$]@.manifest ; then mt.exe -nologo -manifest \[$]@.manifest -outputresource:\[$]@\;2 ; fi" - VC_MANIFEST_EMBED_EXE="if test -f \[$]@.manifest ; then mt.exe -nologo -manifest \[$]@.manifest -outputresource:\[$]@\;1 ; fi" - MAKE_SHARED_LIB="${MAKE_SHARED_LIB} ; ${VC_MANIFEST_EMBED_DLL}" - TEA_ADD_CLEANFILES([*.manifest]) - ]) - PRACTCL_STUB_LIB="%STLIB_LD% -nodefaultlib -out:%OUTFILE% %LIBRARY_OBJECTS%" - MAKE_STUB_LIB="\${STLIB_LD} -nodefaultlib -out:\[$]@ \$(PKG_STUB_OBJECTS)" - else - MAKE_STATIC_LIB="\${STLIB_LD} \[$]@ \$(PKG_OBJECTS)" - MAKE_SHARED_LIB="\${SHLIB_LD} -o \[$]@ \$(PKG_OBJECTS) \${SHLIB_LD_LIBS}" - MAKE_STUB_LIB="\${STLIB_LD} \[$]@ \$(PKG_STUB_OBJECTS)" - - PRACTCL_STATIC_LIB="%STLIB_LD% %OUTFILE% %LIBRARY_OBJECTS%" - PRACTCL_SHARED_LIB="%SHLIB_LD% -o %OUTFILE% %LIBRARY_OBJECTS% %SHLIB_LD_LIBS%" - PRACTCL_STUB_LIB="%STLIB_LD% %OUTFILE% %LIBRARY_OBJECTS%" - fi - - if test "${SHARED_BUILD}" = "1" ; then - MAKE_LIB="${MAKE_SHARED_LIB} " - else - MAKE_LIB="${MAKE_STATIC_LIB} " - fi - - #-------------------------------------------------------------------- - # Shared libraries and static libraries have different names. - # Use the double eval to make sure any variables in the suffix is - # substituted. (@@@ Might not be necessary anymore) - #-------------------------------------------------------------------- - if test "${TEA_PLATFORM}" = "windows" ; then - PRACTCL_NAME_LIBRARY="%LIBRARY_PREFIX%%LIBRARY_NAME%%LIBRARY_VERSION_NODOTS%" - if test "${SHARED_BUILD}" = "1" ; then + ], [ + # Could do a CHECK_PROG for mt, but should always be with MSVC8+ + VC_MANIFEST_EMBED_DLL="if test -f \[$]@.manifest ; then mt.exe -nologo -manifest \[$]@.manifest -outputresource:\[$]@\;2 ; fi" + VC_MANIFEST_EMBED_EXE="if test -f \[$]@.manifest ; then mt.exe -nologo -manifest \[$]@.manifest -outputresource:\[$]@\;1 ; fi" + MAKE_SHARED_LIB="${MAKE_SHARED_LIB} ; ${VC_MANIFEST_EMBED_DLL}" + TEA_ADD_CLEANFILES([*.manifest]) + ]) + MAKE_STUB_LIB="\${STLIB_LD} -nodefaultlib -out:\[$]@ \$(PKG_STUB_OBJECTS)" + else + MAKE_STATIC_LIB="\${STLIB_LD} \[$]@ \$(PKG_OBJECTS)" + MAKE_SHARED_LIB="\${SHLIB_LD} -o \[$]@ \$(PKG_OBJECTS) \${SHLIB_LD_LIBS}" + MAKE_STUB_LIB="\${STLIB_LD} \[$]@ \$(PKG_STUB_OBJECTS)" + fi + + if test "${SHARED_BUILD}" = "1" ; then + MAKE_LIB="${MAKE_SHARED_LIB} " + else + MAKE_LIB="${MAKE_STATIC_LIB} " + fi + + #-------------------------------------------------------------------- + # Shared libraries and static libraries have different names. + # Use the double eval to make sure any variables in the suffix is + # substituted. (@@@ Might not be necessary anymore) + #-------------------------------------------------------------------- + + if test "${TEA_PLATFORM}" = "windows" ; then + if test "${SHARED_BUILD}" = "1" ; then # We force the unresolved linking of symbols that are really in # the private libraries of Tcl and Tk. if test x"${TK_BIN_DIR}" != x ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TK_BIN_DIR}/${TK_STUB_LIB_FILE}`\"" + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TK_BIN_DIR}/${TK_STUB_LIB_FILE}`\"" fi SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TCL_BIN_DIR}/${TCL_STUB_LIB_FILE}`\"" if test "$GCC" = "yes"; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -static-libgcc" + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -static-libgcc" fi eval eval "PKG_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" - else + else eval eval "PKG_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" if test "$GCC" = "yes"; then - PKG_LIB_FILE=lib${PKG_LIB_FILE} + PKG_LIB_FILE=lib${PKG_LIB_FILE} fi - fi - # Some packages build their own stubs libraries - eval eval "PKG_STUB_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" - if test "$GCC" = "yes"; then - PKG_STUB_LIB_FILE=lib${PKG_STUB_LIB_FILE} - fi - # These aren't needed on Windows (either MSVC or gcc) - RANLIB=: - RANLIB_STUB=: - else - PRACTCL_NAME_LIBRARY="lib%LIBRARY_PREFIX%%LIBRARY_NAME%%LIBRARY_VERSION%" - RANLIB_STUB="${RANLIB}" - if test "${SHARED_BUILD}" = "1" ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TCL_STUB_LIB_SPEC}" - if test x"${TK_BIN_DIR}" != x ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TK_STUB_LIB_SPEC}" - fi - eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" - RANLIB=: + fi + # Some packages build their own stubs libraries + eval eval "PKG_STUB_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" + if test "$GCC" = "yes"; then + PKG_STUB_LIB_FILE=lib${PKG_STUB_LIB_FILE} + fi + # These aren't needed on Windows (either MSVC or gcc) + RANLIB=: + RANLIB_STUB=: else - eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" + RANLIB_STUB="${RANLIB}" + if test "${SHARED_BUILD}" = "1" ; then + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TCL_STUB_LIB_SPEC}" + if test x"${TK_BIN_DIR}" != x ; then + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TK_STUB_LIB_SPEC}" + fi + eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" + RANLIB=: + else + eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" + fi + # Some packages build their own stubs libraries + eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" + fi + + # These are escaped so that only CFLAGS is picked up at configure time. + # The other values will be substituted at make time. + CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" + if test "${SHARED_BUILD}" = "1" ; then + CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" fi - # Some packages build their own stubs libraries - eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" - fi - - # Store the raw CFLAGS before we add the trimmings - PRACTCL_CFLAGS=${CFLAGS} - # These are escaped so that only CFLAGS is picked up at configure time. - # The other values will be substituted at make time. - CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" - if test "${SHARED_BUILD}" = "1" ; then - CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" - fi - - AC_SUBST(MAKE_LIB) - AC_SUBST(MAKE_SHARED_LIB) - AC_SUBST(MAKE_STATIC_LIB) - AC_SUBST(MAKE_STUB_LIB) - AC_SUBST(RANLIB_STUB) - AC_SUBST(VC_MANIFEST_EMBED_DLL) - AC_SUBST(VC_MANIFEST_EMBED_EXE) - AC_SUBST(PRACTCL_CFLAGS) - AC_SUBST(PRACTCL_TOOLSET) - AC_SUBST(PRACTCL_SHARED_LIB) - AC_SUBST(PRACTCL_STATIC_LIB) - AC_SUBST(PRACTCL_STUB_LIB) - AC_SUBST(PRACTCL_VC_MANIFEST_EMBED_DLL) - AC_SUBST(PRACTCL_VC_MANIFEST_EMBED_EXE) - AC_SUBST(PRACTCL_NAME_LIBRARY) + + AC_SUBST(MAKE_LIB) + AC_SUBST(MAKE_SHARED_LIB) + AC_SUBST(MAKE_STATIC_LIB) + AC_SUBST(MAKE_STUB_LIB) + AC_SUBST(RANLIB_STUB) + AC_SUBST(VC_MANIFEST_EMBED_DLL) + AC_SUBST(VC_MANIFEST_EMBED_EXE) ]) #------------------------------------------------------------------------ @@ -3864,24 +3556,12 @@ AC_DEFUN([TEA_PRIVATE_TK_HEADERS], [ if test -d "${TK_SRC_DIR}/generic/ttk"; then TK_INCLUDES="${TK_INCLUDES} -I\"${TK_SRC_DIR_NATIVE}/generic/ttk\"" fi - case ${PRACTCL_WINDOWINGSYSTEM} in - cocoa) - TK_INCLUDES="${TK_INCLUDES} -I\"${TK_XLIB_DIR_NATIVE}\"" - TK_INCLUDES="${TK_INCLUDES} -I\"${TK_SRC_DIR_NATIVE}/macosx\"" - ;; - hitheme) + if test "${TEA_WINDOWINGSYSTEM}" != "x11"; then TK_INCLUDES="${TK_INCLUDES} -I\"${TK_XLIB_DIR_NATIVE}\"" + fi + if test "${TEA_WINDOWINGSYSTEM}" = "aqua"; then TK_INCLUDES="${TK_INCLUDES} -I\"${TK_SRC_DIR_NATIVE}/macosx\"" - ;; - sdl) - TK_INCLUDES="${TK_INCLUDES} -I\"${TK_XLIB_DIR_NATIVE}\"" - ;; - x11) - ;; - *) - TK_INCLUDES="${TK_INCLUDES} -I\"${TK_XLIB_DIR_NATIVE}\"" - ;; - esac + fi if test "`uname -s`" = "Darwin"; then # If Tk was built as a framework, attempt to use # the framework's Headers and PrivateHeaders directories @@ -4006,7 +3686,7 @@ AC_DEFUN([TEA_PUBLIC_TK_HEADERS], [ AC_SUBST(TK_INCLUDES) - if test "${PRACTCL_WINDOWINGSYSTEM}" != "x11"; then + if test "${TEA_WINDOWINGSYSTEM}" != "x11"; then # On Windows and Aqua, we need the X compat headers AC_MSG_CHECKING([for X11 header files]) if test ! -r "${INCLUDE_DIR_NATIVE}/X11/Xlib.h"; then @@ -4110,6 +3790,7 @@ AC_DEFUN([TEA_PATH_CONFIG], [ `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4344,111 +4025,150 @@ AC_DEFUN([TEA_PATH_CELIB], [ fi ]) -#-------------------------------------------------------------------- -# TEA_CONFIG_TEAPOT +#------------------------------------------------------------------------ +# TEA_INSTALLER -- # -# Try to determine the canonical name for this package's binary -# target +# Configure the installer. # # Arguments: # none -AC_DEFUN([TEA_CONFIG_TEAPOT], [ - AC_REQUIRE([TEA_INIT]) - AC_REQUIRE([TEA_CONFIG_SYSTEM]) - TEACUP_OS=$system - TEACUP_ARCH="unknown" - TEACUP_TOOLSET="gcc" - TEACUP_PROFILE="unknown" - arch="unknown" - case ${host_alias} in - *mingw32*) - arch="ix86" - TEACUP_PROFILE="win32-ix86" - ;; - *mingw64*) - arch="x86_64" - TEACUP_PROFILE="win32-x86_64" - ;; - esac - if test "${arch}" = "unknown" ; then - if test "${TEA_PLATFORM}" = "windows" ; then - if test "$GCC" = "yes" ; then - TEACUP_TOOLSET="gcc" - else - TEACUP_TOOLSET="msvc" - fi - if test "$do64bit" != "no" ; then - case "$do64bit" in - amd64|x64|yes) - arch="x86_64" - TEACUP_PROFILE="win32-x86_64" - ;; - ia64) - arch="ia64" - TEACUP_PROFILE="win32-ia64" - ;; - esac - else - arch="ix86" - TEACUP_PROFILE="win32-ix86" - fi - else - case $system in - Linux*) - TEACUP_OS="linux" - arch=`uname -m` - TEACUP_PROFILE="linux-glibc2.3-$arch" - ;; - GNU*) - TEACUP_OS="gnu" - arch=`uname -m` - ;; - NetBSD-Debian) - TEACUP_OS="netbsd-debian" - arch=`uname -m` - ;; - OpenBSD-*) - TEACUP_OS="openbsd" - arch=`arch -s` - ;; - Darwin*) - TEACUP_OS="macosx" - TEACUP_PROFILE="macosx-universal" - arch=`uname -m` - if test $arch = "x86_64"; then - TEACUP_PROFILE="macosx10.5-i386-x86_84" +# +# Results: +# Substitutes the following vars: +# INSTALL +# INSTALL_DATA_DIR +# INSTALL_DATA +# INSTALL_PROGRAM +# INSTALL_SCRIPT +# INSTALL_LIBRARY +#------------------------------------------------------------------------ + +AC_DEFUN([TEA_INSTALLER], [ + INSTALL='$(SHELL) $(srcdir)/tclconfig/install-sh -c' + INSTALL_DATA_DIR='${INSTALL} -d -m 755' + INSTALL_DATA='${INSTALL} -m 644' + INSTALL_PROGRAM='${INSTALL} -m 755' + INSTALL_SCRIPT='${INSTALL} -m 755' + + TEA_CONFIG_SYSTEM + case $system in + HP-UX-*) INSTALL_LIBRARY='${INSTALL} -m 755' ;; + *) INSTALL_LIBRARY='${INSTALL} -m 644' ;; + esac + + AC_SUBST(INSTALL) + AC_SUBST(INSTALL_DATA_DIR) + AC_SUBST(INSTALL_DATA) + AC_SUBST(INSTALL_PROGRAM) + AC_SUBST(INSTALL_SCRIPT) + AC_SUBST(INSTALL_LIBRARY) +]) + +### +# Tip 430 - ZipFS Modifications +### +#------------------------------------------------------------------------ +# SC_ZIPFS_SUPPORT +# Locate a zip encoder installed on the system path, or none. +# +# Arguments: +# none +# +# Results: +# Substitutes the following vars: +# TCL_ZIP_FILE +# TCL_ZIPFS_SUPPORT +# TCL_ZIPFS_FLAG +# ZIP_PROG +#------------------------------------------------------------------------ + +#------------------------------------------------------------------------ +# SC_PROG_ZIP +# Locate a zip encoder installed on the system path, or none. +# +# Arguments: +# none +# +# Results: +# Substitutes the following vars: +# ZIP_PROG +# ZIP_PROG_OPTIONS +# ZIP_PROG_VFSSEARCH +# ZIP_INSTALL_OBJS +#------------------------------------------------------------------------ +AC_DEFUN([TEA_ZIPFS_SUPPORT], [ + AC_MSG_CHECKING([for zipfs support]) + ZIP_PROG="" + ZIP_PROG_OPTIONS="" + ZIP_PROG_VFSSEARCH="" + INSTALL_MSGS="" + # If our native tclsh processes the "install" command line option + # we can use it to mint zip files + AS_IF([$TCLSH_PROG install],[ + ZIP_PROG=${TCLSH_PROG} + ZIP_PROG_OPTIONS="install mkzip" + ZIP_PROG_VFSSEARCH="." + AC_MSG_RESULT([Can use Native Tclsh for Zip encoding]) + ]) + if test "x$ZIP_PROG" = "x" ; then + AC_CACHE_VAL(ac_cv_path_zip, [ + search_path=`echo ${PATH} | sed -e 's/:/ /g'` + for dir in $search_path ; do + for j in `ls -r $dir/zip 2> /dev/null` \ + `ls -r $dir/zip 2> /dev/null` ; do + if test x"$ac_cv_path_zip" = x ; then + if test -f "$j" ; then + ac_cv_path_zip=$j + break fi - ;; - OpenBSD*) - TEACUP_OS="openbsd" - arch=`arch -s` - ;; - esac + fi + done + done + ]) + if test -f "$ac_cv_path_zip" ; then + ZIP_PROG="$ac_cv_path_zip " + AC_MSG_RESULT([$ZIP_PROG]) + ZIP_PROG_OPTIONS="-rq" + ZIP_PROG_VFSSEARCH="." + AC_MSG_RESULT([Found INFO Zip in environment]) + # Use standard arguments for zip + fi fi - fi - TEACUP_ARCH=$arch - if test "$TEACUP_PROFILE" = "unknown"; then - if test $arch = "unknown"; then - arch=`uname -m` + if test "x$ZIP_PROG" = "x" ; then + # It is not an error if an installed version of Zip can't be located. + ZIP_PROG="" + ZIP_PROG_OPTIONS="" + ZIP_PROG_VFSSEARCH="" + TCL_ZIPFS_SUPPORT=0 + TCL_ZIPFS_FLAG= + else + # ZIPFS Support + eval "TCL_ZIP_FILE=\"${TCL_ZIP_FILE}\"" + if test ${TCL_ZIP_FILE} = "" ; then + TCL_ZIPFS_SUPPORT=0 + TCL_ZIPFS_FLAG= + INSTALL_LIBRARIES=install-libraries + INSTALL_MSGS=install-msgs + else + if test ${SHARED_BUILD} = 1 ; then + TCL_ZIPFS_SUPPORT=1 + INSTALL_LIBRARIES=install-libraries-zipfs-shared + else + TCL_ZIPFS_SUPPORT=2 + INSTALL_LIBRARIES=install-libraries-zipfs-static + fi + TCL_ZIPFS_FLAG=-DTCL_ZIPFS_SUPPORT + fi fi - case $arch in - i*86) - arch="ix86" - ;; - amd64) - arch="x86_64" - ;; - esac - TEACUP_PROFILE="$TEACUP_OS-$arch" - fi - TEA_SYSTEM=$system - AC_SUBST(TEA_SYSTEM) - AC_SUBST(TEA_PLATFORM) - AC_SUBST(TEA_WINDOWINGSYSTEM) - AC_SUBST(TEACUP_OS) - AC_SUBST(TEACUP_ARCH) - AC_SUBST(TEACUP_TOOLSET) - AC_SUBST(TEACUP_PROFILE) + + AC_SUBST(TCL_ZIP_FILE) + AC_SUBST(TCL_ZIPFS_SUPPORT) + AC_SUBST(TCL_ZIPFS_FLAG) + AC_SUBST(ZIP_PROG) + AC_SUBST(ZIP_PROG_OPTIONS) + AC_SUBST(ZIP_PROG_VFSSEARCH) + AC_SUBST(INSTALL_LIBRARIES) + AC_SUBST(INSTALL_MSGS) ]) # Local Variables: diff --git a/ds9/unix/configure b/ds9/unix/configure index 9ab1843..158f33c 100755 --- a/ds9/unix/configure +++ b/ds9/unix/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for ds9 8.0. +# Generated by GNU Autoconf 2.69 for ds9 8.1. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -577,8 +577,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='ds9' PACKAGE_TARNAME='ds9' -PACKAGE_VERSION='8.0' -PACKAGE_STRING='ds9 8.0' +PACKAGE_VERSION='8.1' +PACKAGE_STRING='ds9 8.1' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -621,14 +621,6 @@ ac_includes_default="\ ac_subst_vars='LTLIBOBJS LIBOBJS TCLSH_PROG -PRACTCL_NAME_LIBRARY -PRACTCL_VC_MANIFEST_EMBED_EXE -PRACTCL_VC_MANIFEST_EMBED_DLL -PRACTCL_STUB_LIB -PRACTCL_STATIC_LIB -PRACTCL_SHARED_LIB -PRACTCL_TOOLSET -PRACTCL_CFLAGS VC_MANIFEST_EMBED_EXE VC_MANIFEST_EMBED_DLL RANLIB_STUB @@ -642,7 +634,6 @@ CFLAGS_DEFAULT LD_LIBRARY_PATH_VAR SHLIB_CFLAGS SHLIB_LD_LIBS -SHLIB_SUFFIX SHLIB_LD STLIB_LD CFLAGS_WARNING @@ -659,17 +650,10 @@ TK_INCLUDES TCL_INCLUDES system SSLLIBS -MATH_LIBS EGREP GREP RANLIB SET_MAKE -INSTALL_LIBRARY -INSTALL_SCRIPT -INSTALL_PROGRAM -INSTALL_DATA -INSTALL_DATA_DIR -INSTALL CPP tktable_STUB_LIB_PATH tktable_STUB_LIB_SPEC @@ -831,7 +815,6 @@ tifftcl_LIB_FILE tifftcl_SRC_DIR tifftcl_BIN_DIR tifftcl_VERSION -PRACTCL_WINDOWINGSYSTEM TK_XINCLUDES TK_LIBS TK_STUB_LIB_SPEC @@ -865,6 +848,12 @@ TCL_SRC_DIR TCL_BIN_DIR TCL_PATCH_LEVEL TCL_VERSION +INSTALL_LIBRARY +INSTALL_SCRIPT +INSTALL_PROGRAM +INSTALL_DATA +INSTALL_DATA_DIR +INSTALL PKG_CFLAGS PKG_LIBS PKG_INCLUDES @@ -876,7 +865,6 @@ PKG_STUB_LIB_FILE PKG_LIB_FILE EXEEXT CYGPATH -TEA_TK_EXTENSION target_alias host_alias build_alias @@ -952,7 +940,6 @@ enable_rpath enable_wince with_celib enable_symbols -with_tclsh ' ac_precious_vars='build_alias host_alias @@ -1504,7 +1491,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures ds9 8.0 to adapt to many kinds of systems. +\`configure' configures ds9 8.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1569,7 +1556,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of ds9 8.0:";; + short | recursive ) echo "Configuration of ds9 8.1:";; esac cat <<\_ACEOF @@ -1577,7 +1564,7 @@ Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-threads build with threads + --enable-threads build with threads (default: on) --enable-shared build and link with shared libraries (default: on) --enable-stubs build and link with stub libraries. Always true for shared builds (default: on) @@ -1617,7 +1604,6 @@ Optional Packages: --with-tkinclude directory containing the public Tk header files --with-x use the X Window System --with-celib=DIR use Windows/CE support library from DIR - --with-tclsh Specify a local tcl shell to use for dynamic code Some influential environment variables: CC C compiler command @@ -1696,7 +1682,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -ds9 configure 8.0 +ds9 configure 8.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1970,98 +1956,11 @@ $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_func - -# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES -# ------------------------------------------------------- -# Tests whether HEADER exists, giving a warning if it cannot be compiled using -# the include files in INCLUDES and setting the cache variable VAR -# accordingly. -ac_fn_c_check_header_mongrel () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if eval \${$3+:} false; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -else - # Is the header compilable? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 -$as_echo_n "checking $2 usability... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -#include <$2> -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_header_compiler=yes -else - ac_header_compiler=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 -$as_echo_n "checking $2 presence... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <$2> -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - ac_header_preproc=yes -else - ac_header_preproc=no -fi -rm -f conftest.err conftest.i conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( - yes:no: ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; - no:yes:* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; -esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - eval "$3=\$ac_header_compiler" -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_header_mongrel cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by ds9 $as_me 8.0, which was +It was created by ds9 $as_me 8.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2417,35 +2316,25 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu #-------------------------------------------------------------------- - # TEA extensions pass this us the version of TEA they think they - # are compatible with. - TEA_VERSION="3.10" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for correct TEA configuration" >&5 -$as_echo_n "checking for correct TEA configuration... " >&6; } + TEA_VERSION="3.13" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking TEA configuration" >&5 +$as_echo_n "checking TEA configuration... " >&6; } if test x"${PACKAGE_NAME}" = x ; then as_fn_error $? " The PACKAGE_NAME variable must be defined by your TEA configure.ac" "$LINENO" 5 fi - if test x"3.10" = x ; then - as_fn_error $? " -TEA version not specified." "$LINENO" 5 - elif test "3.10" != "${TEA_VERSION}" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: warning: requested TEA version \"3.10\", have \"${TEA_VERSION}\"" >&5 -$as_echo "warning: requested TEA version \"3.10\", have \"${TEA_VERSION}\"" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok (TEA ${TEA_VERSION})" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok (TEA ${TEA_VERSION})" >&5 $as_echo "ok (TEA ${TEA_VERSION})" >&6; } - fi # If the user did not set CFLAGS, set it now to keep macros # like AC_PROG_CC and AC_TRY_COMPILE from adding "-g -O2". if test "${CFLAGS+set}" != "set" ; then CFLAGS="" fi - TEA_TK_EXTENSION=0 case "`uname -s`" in - *win32*|*WIN32*|*MINGW32_*) + *win32*|*WIN32*|*MINGW32_*|*MINGW64_*) # Extract the first word of "cygpath", so it can be a program name with args. set dummy cygpath; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 @@ -2537,6 +2426,55 @@ $as_echo "$as_me: configuring ${PACKAGE_NAME} ${PACKAGE_VERSION}" >&6;} + # Configure the installer. + + INSTALL='$(SHELL) $(srcdir)/tclconfig/install-sh -c' + INSTALL_DATA_DIR='${INSTALL} -d -m 755' + INSTALL_DATA='${INSTALL} -m 644' + INSTALL_PROGRAM='${INSTALL} -m 755' + INSTALL_SCRIPT='${INSTALL} -m 755' + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking system version" >&5 +$as_echo_n "checking system version... " >&6; } +if ${tcl_cv_sys_version+:} false; then : + $as_echo_n "(cached) " >&6 +else + + # TEA specific: + if test "${TEA_PLATFORM}" = "windows" ; then + tcl_cv_sys_version=windows + else + tcl_cv_sys_version=`uname -s`-`uname -r` + if test "$?" -ne 0 ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: can't find uname command" >&5 +$as_echo "$as_me: WARNING: can't find uname command" >&2;} + tcl_cv_sys_version=unknown + else + if test "`uname -s`" = "AIX" ; then + tcl_cv_sys_version=AIX-`uname -v`.`uname -r` + fi + fi + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $tcl_cv_sys_version" >&5 +$as_echo "$tcl_cv_sys_version" >&6; } + system=$tcl_cv_sys_version + + case $system in + HP-UX-*) INSTALL_LIBRARY='${INSTALL} -m 755' ;; + *) INSTALL_LIBRARY='${INSTALL} -m 644' ;; + esac + + + + + + + + + ac_aux_dir= for ac_dir in ../tclconfig "$srcdir"/../tclconfig; do @@ -2646,6 +2584,9 @@ $as_echo "$as_me: WARNING: --with-tcl argument should refer to directory contain `ls -d /Library/Frameworks 2>/dev/null` \ `ls -d /Network/Library/Frameworks 2>/dev/null` \ `ls -d /System/Library/Frameworks 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Network/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Tcl.framework 2>/dev/null` \ ; do if test -f "$i/Tcl.framework/tclConfig.sh" ; then ac_cv_c_tclconfig="`(cd $i/Tcl.framework; pwd)`" @@ -2672,13 +2613,17 @@ $as_echo "$as_me: WARNING: --with-tcl argument should refer to directory contain for i in `ls -d ${libdir} 2>/dev/null` \ `ls -d ${exec_prefix}/lib 2>/dev/null` \ `ls -d ${prefix}/lib 2>/dev/null` \ - `ls -d /usr/contrib/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ + `ls -d /usr/contrib/lib 2>/dev/null` \ `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ `ls -d /usr/lib/tcl8.6 2>/dev/null` \ `ls -d /usr/lib/tcl8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tcl8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tcl8.5 2>/dev/null` \ ; do if test -f "$i/tclConfig.sh" ; then ac_cv_c_tclconfig="`(cd $i; pwd)`" @@ -3686,7 +3631,6 @@ _ACEOF if test x"${no_tk}" = x ; then # we reset no_tk in case something fails here no_tk=true - TEA_TK_EXTENSION=0 # Check whether --with-tk was given. if test "${with_tk+set}" = set; then : @@ -3750,6 +3694,9 @@ $as_echo "$as_me: WARNING: --with-tk argument should refer to directory containi `ls -d /Library/Frameworks 2>/dev/null` \ `ls -d /Network/Library/Frameworks 2>/dev/null` \ `ls -d /System/Library/Frameworks 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Network/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Tcl.framework 2>/dev/null` \ ; do if test -f "$i/Tk.framework/tkConfig.sh" ; then ac_cv_c_tkconfig="`(cd $i/Tk.framework; pwd)`" @@ -3765,8 +3712,15 @@ $as_echo "$as_me: WARNING: --with-tk argument should refer to directory containi `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ + `ls -d /usr/lib/tk8.6 2>/dev/null` \ + `ls -d /usr/lib/tk8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tk8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tk8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tk8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tk8.5 2>/dev/null` \ ; do if test -f "$i/tkConfig.sh" ; then ac_cv_c_tkconfig="`(cd $i; pwd)`" @@ -3815,7 +3769,6 @@ fi as_fn_error $? "Can't find Tk configuration definitions. Use --with-tk to specify a directory containing tkConfig.sh" "$LINENO" 5 else no_tk= - TEA_TK_EXTENSION=1 TK_BIN_DIR="${ac_cv_c_tkconfig}" { $as_echo "$as_me:${as_lineno-$LINENO}: result: found ${TK_BIN_DIR}/tkConfig.sh" >&5 $as_echo "found ${TK_BIN_DIR}/tkConfig.sh" >&6; } @@ -3879,44 +3832,20 @@ $as_echo "could not find ${TK_BIN_DIR}/tkConfig.sh" >&6; } eval "TK_STUB_LIB_SPEC=\"${TK_STUB_LIB_SPEC}\"" # TEA specific: Ensure windowingsystem is defined - case ${TK_DEFS} in - *PLATFORM_SDL*) - TEA_WINDOWINGSYSTEM="x11" - PRACTCL_WINDOWINGSYSTEM="sdl" - TEA_USE_SDL=yes - ;; - esac - if test "${TEA_USE_SDL}" = "yes" ; then - true - elif test "${TEA_PLATFORM}" = "unix" ; then + if test "${TEA_PLATFORM}" = "unix" ; then case ${TK_DEFS} in *MAC_OSX_TK*) $as_echo "#define MAC_OSX_TK 1" >>confdefs.h TEA_WINDOWINGSYSTEM="aqua" - PRACTCL_WINDOWINGSYSTEM="cocoa" - TEA_USE_HITHEME=no; - if test "${TK_VERSION}" = "8.5" ; then - if test "${TK_PATCH_LEVEL}" > ".17" ; then - TEA_USE_HITHEME=yes; - fi - elif test "${TK_VERSION}" = "8.6" ; then - if test "${TK_PATCH_LEVEL}" > ".3" ; then - TEA_USE_HITHEME=yes; - fi - elif test "${TK_VERSION}" > "8.6" ; then - TEA_USE_HITHEME=yes; - fi ;; *) TEA_WINDOWINGSYSTEM="x11" - PRACTCL_WINDOWINGSYSTEM="x11" ;; esac elif test "${TEA_PLATFORM}" = "windows" ; then TEA_WINDOWINGSYSTEM="win32" - PRACTCL_WINDOWINGSYSTEM="windows" fi @@ -3934,8 +3863,6 @@ $as_echo "#define MAC_OSX_TK 1" >>confdefs.h # TEA specific: - # Practcl - #-------------------------------------------------------------------- @@ -4024,6 +3951,7 @@ $as_echo "$as_me: WARNING: --with-tifftcl argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4113,12 +4041,8 @@ $as_echo_n "checking For TIFFTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TIFFTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4131,12 +4055,8 @@ $as_echo "using TIFFTCL_STUB_LIB_PATH ${TIFFTCL_STUB_LIB_PATH}" >&6; } vars="${TIFFTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4164,12 +4084,8 @@ $as_echo_n "checking For tifftcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tifftcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4182,12 +4098,8 @@ $as_echo "using tifftcl_STUB_LIB_PATH ${tifftcl_STUB_LIB_PATH}" >&6; } vars="${tifftcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4288,6 +4200,7 @@ $as_echo "$as_me: WARNING: --with-pngtcl argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4377,12 +4290,8 @@ $as_echo_n "checking For PNGTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${PNGTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4395,12 +4304,8 @@ $as_echo "using PNGTCL_STUB_LIB_PATH ${PNGTCL_STUB_LIB_PATH}" >&6; } vars="${PNGTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4428,12 +4333,8 @@ $as_echo_n "checking For pngtcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${pngtcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4446,12 +4347,8 @@ $as_echo "using pngtcl_STUB_LIB_PATH ${pngtcl_STUB_LIB_PATH}" >&6; } vars="${pngtcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4552,6 +4449,7 @@ $as_echo "$as_me: WARNING: --with-jpegtcl argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4641,12 +4539,8 @@ $as_echo_n "checking For JPEGTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${JPEGTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4659,12 +4553,8 @@ $as_echo "using JPEGTCL_STUB_LIB_PATH ${JPEGTCL_STUB_LIB_PATH}" >&6; } vars="${JPEGTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4692,12 +4582,8 @@ $as_echo_n "checking For jpegtcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${jpegtcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4710,12 +4596,8 @@ $as_echo "using jpegtcl_STUB_LIB_PATH ${jpegtcl_STUB_LIB_PATH}" >&6; } vars="${jpegtcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4816,6 +4698,7 @@ $as_echo "$as_me: WARNING: --with-zlibtcl argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4905,12 +4788,8 @@ $as_echo_n "checking For ZLIBTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${ZLIBTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4923,12 +4802,8 @@ $as_echo "using ZLIBTCL_STUB_LIB_PATH ${ZLIBTCL_STUB_LIB_PATH}" >&6; } vars="${ZLIBTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4956,12 +4831,8 @@ $as_echo_n "checking For zlibtcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${zlibtcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4974,12 +4845,8 @@ $as_echo "using zlibtcl_STUB_LIB_PATH ${zlibtcl_STUB_LIB_PATH}" >&6; } vars="${zlibtcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5080,6 +4947,7 @@ $as_echo "$as_me: WARNING: --with-tcliis argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5169,12 +5037,8 @@ $as_echo_n "checking For TCLIIS_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TCLIIS_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5187,12 +5051,8 @@ $as_echo "using TCLIIS_STUB_LIB_PATH ${TCLIIS_STUB_LIB_PATH}" >&6; } vars="${TCLIIS_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5220,12 +5080,8 @@ $as_echo_n "checking For tcliis_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tcliis_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5238,12 +5094,8 @@ $as_echo "using tcliis_STUB_LIB_PATH ${tcliis_STUB_LIB_PATH}" >&6; } vars="${tcliis_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5344,6 +5196,7 @@ $as_echo "$as_me: WARNING: --with-tclsignal argument should refer to directory c `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5433,12 +5286,8 @@ $as_echo_n "checking For TCLSIGNAL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TCLSIGNAL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5451,12 +5300,8 @@ $as_echo "using TCLSIGNAL_STUB_LIB_PATH ${TCLSIGNAL_STUB_LIB_PATH}" >&6; } vars="${TCLSIGNAL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5484,12 +5329,8 @@ $as_echo_n "checking For tclsignal_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tclsignal_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5502,12 +5343,8 @@ $as_echo "using tclsignal_STUB_LIB_PATH ${tclsignal_STUB_LIB_PATH}" >&6; } vars="${tclsignal_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5608,6 +5445,7 @@ $as_echo "$as_me: WARNING: --with-tclxml argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5697,12 +5535,8 @@ $as_echo_n "checking For TCLXML_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TCLXML_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5715,12 +5549,8 @@ $as_echo "using TCLXML_STUB_LIB_PATH ${TCLXML_STUB_LIB_PATH}" >&6; } vars="${TCLXML_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5748,12 +5578,8 @@ $as_echo_n "checking For tclxml_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tclxml_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5766,12 +5592,8 @@ $as_echo "using tclxml_STUB_LIB_PATH ${tclxml_STUB_LIB_PATH}" >&6; } vars="${tclxml_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5872,6 +5694,7 @@ $as_echo "$as_me: WARNING: --with-tclzvfs argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5961,12 +5784,8 @@ $as_echo_n "checking For TCLZVFS_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TCLZVFS_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5979,12 +5798,8 @@ $as_echo "using TCLZVFS_STUB_LIB_PATH ${TCLZVFS_STUB_LIB_PATH}" >&6; } vars="${TCLZVFS_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6012,12 +5827,8 @@ $as_echo_n "checking For tclzvfs_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tclzvfs_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6030,12 +5841,8 @@ $as_echo "using tclzvfs_STUB_LIB_PATH ${tclzvfs_STUB_LIB_PATH}" >&6; } vars="${tclzvfs_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6136,6 +5943,7 @@ $as_echo "$as_me: WARNING: --with-tls argument should refer to directory contain `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -6225,12 +6033,8 @@ $as_echo_n "checking For TLS_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TLS_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6243,12 +6047,8 @@ $as_echo "using TLS_STUB_LIB_PATH ${TLS_STUB_LIB_PATH}" >&6; } vars="${TLS_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6276,12 +6076,8 @@ $as_echo_n "checking For tls_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tls_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6294,12 +6090,8 @@ $as_echo "using tls_STUB_LIB_PATH ${tls_STUB_LIB_PATH}" >&6; } vars="${tls_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6400,6 +6192,7 @@ $as_echo "$as_me: WARNING: --with-tkblt argument should refer to directory conta `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -6489,12 +6282,8 @@ $as_echo_n "checking For TKBLT_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKBLT_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6507,12 +6296,8 @@ $as_echo "using TKBLT_STUB_LIB_PATH ${TKBLT_STUB_LIB_PATH}" >&6; } vars="${TKBLT_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6540,12 +6325,8 @@ $as_echo_n "checking For tkblt_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkblt_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6558,12 +6339,8 @@ $as_echo "using tkblt_STUB_LIB_PATH ${tkblt_STUB_LIB_PATH}" >&6; } vars="${tkblt_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6664,6 +6441,7 @@ $as_echo "$as_me: WARNING: --with-tkhtml1 argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -6753,12 +6531,8 @@ $as_echo_n "checking For TKHTML1_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKHTML1_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6771,12 +6545,8 @@ $as_echo "using TKHTML1_STUB_LIB_PATH ${TKHTML1_STUB_LIB_PATH}" >&6; } vars="${TKHTML1_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6804,12 +6574,8 @@ $as_echo_n "checking For tkhtml1_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkhtml1_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6822,12 +6588,8 @@ $as_echo "using tkhtml1_STUB_LIB_PATH ${tkhtml1_STUB_LIB_PATH}" >&6; } vars="${tkhtml1_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6928,6 +6690,7 @@ $as_echo "$as_me: WARNING: --with-tkimg argument should refer to directory conta `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7017,12 +6780,8 @@ $as_echo_n "checking For TKIMG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7035,12 +6794,8 @@ $as_echo "using TKIMG_STUB_LIB_PATH ${TKIMG_STUB_LIB_PATH}" >&6; } vars="${TKIMG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7068,12 +6823,8 @@ $as_echo_n "checking For tkimg_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimg_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7086,12 +6837,8 @@ $as_echo "using tkimg_STUB_LIB_PATH ${tkimg_STUB_LIB_PATH}" >&6; } vars="${tkimg_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7192,6 +6939,7 @@ $as_echo "$as_me: WARNING: --with-tkimggif argument should refer to directory co `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7281,12 +7029,8 @@ $as_echo_n "checking For TKIMGGIF_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGGIF_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7299,12 +7043,8 @@ $as_echo "using TKIMGGIF_STUB_LIB_PATH ${TKIMGGIF_STUB_LIB_PATH}" >&6; } vars="${TKIMGGIF_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7332,12 +7072,8 @@ $as_echo_n "checking For tkimggif_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimggif_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7350,12 +7086,8 @@ $as_echo "using tkimggif_STUB_LIB_PATH ${tkimggif_STUB_LIB_PATH}" >&6; } vars="${tkimggif_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7456,6 +7188,7 @@ $as_echo "$as_me: WARNING: --with-tkimgjpeg argument should refer to directory c `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7545,12 +7278,8 @@ $as_echo_n "checking For TKIMGJPEG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGJPEG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7563,12 +7292,8 @@ $as_echo "using TKIMGJPEG_STUB_LIB_PATH ${TKIMGJPEG_STUB_LIB_PATH}" >&6; } vars="${TKIMGJPEG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7596,12 +7321,8 @@ $as_echo_n "checking For tkimgjpeg_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgjpeg_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7614,12 +7335,8 @@ $as_echo "using tkimgjpeg_STUB_LIB_PATH ${tkimgjpeg_STUB_LIB_PATH}" >&6; } vars="${tkimgjpeg_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7720,6 +7437,7 @@ $as_echo "$as_me: WARNING: --with-tkimgpng argument should refer to directory co `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7809,12 +7527,8 @@ $as_echo_n "checking For TKIMGPNG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGPNG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7827,12 +7541,8 @@ $as_echo "using TKIMGPNG_STUB_LIB_PATH ${TKIMGPNG_STUB_LIB_PATH}" >&6; } vars="${TKIMGPNG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7860,12 +7570,8 @@ $as_echo_n "checking For tkimgpng_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgpng_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7878,12 +7584,8 @@ $as_echo "using tkimgpng_STUB_LIB_PATH ${tkimgpng_STUB_LIB_PATH}" >&6; } vars="${tkimgpng_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7984,6 +7686,7 @@ $as_echo "$as_me: WARNING: --with-tkimgtiff argument should refer to directory c `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8073,12 +7776,8 @@ $as_echo_n "checking For TKIMGTIFF_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGTIFF_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8091,12 +7790,8 @@ $as_echo "using TKIMGTIFF_STUB_LIB_PATH ${TKIMGTIFF_STUB_LIB_PATH}" >&6; } vars="${TKIMGTIFF_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8124,12 +7819,8 @@ $as_echo_n "checking For tkimgtiff_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgtiff_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8142,12 +7833,8 @@ $as_echo "using tkimgtiff_STUB_LIB_PATH ${tkimgtiff_STUB_LIB_PATH}" >&6; } vars="${tkimgtiff_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8248,6 +7935,7 @@ $as_echo "$as_me: WARNING: --with-tkimgwindow argument should refer to directory `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8337,12 +8025,8 @@ $as_echo_n "checking For TKIMGWINDOW_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGWINDOW_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8355,12 +8039,8 @@ $as_echo "using TKIMGWINDOW_STUB_LIB_PATH ${TKIMGWINDOW_STUB_LIB_PATH}" >&6; } vars="${TKIMGWINDOW_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8388,12 +8068,8 @@ $as_echo_n "checking For tkimgwindow_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgwindow_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8406,12 +8082,8 @@ $as_echo "using tkimgwindow_STUB_LIB_PATH ${tkimgwindow_STUB_LIB_PATH}" >&6; } vars="${tkimgwindow_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8512,6 +8184,7 @@ $as_echo "$as_me: WARNING: --with-tkmpeg argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8601,12 +8274,8 @@ $as_echo_n "checking For TKMPEG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKMPEG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8619,12 +8288,8 @@ $as_echo "using TKMPEG_STUB_LIB_PATH ${TKMPEG_STUB_LIB_PATH}" >&6; } vars="${TKMPEG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8652,12 +8317,8 @@ $as_echo_n "checking For tkmpeg_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkmpeg_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8670,12 +8331,8 @@ $as_echo "using tkmpeg_STUB_LIB_PATH ${tkmpeg_STUB_LIB_PATH}" >&6; } vars="${tkmpeg_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8776,6 +8433,7 @@ $as_echo "$as_me: WARNING: --with-tksao argument should refer to directory conta `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8865,12 +8523,8 @@ $as_echo_n "checking For TKSAO_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKSAO_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8883,12 +8537,8 @@ $as_echo "using TKSAO_STUB_LIB_PATH ${TKSAO_STUB_LIB_PATH}" >&6; } vars="${TKSAO_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8916,12 +8566,8 @@ $as_echo_n "checking For tksao_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tksao_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8934,12 +8580,8 @@ $as_echo "using tksao_STUB_LIB_PATH ${tksao_STUB_LIB_PATH}" >&6; } vars="${tksao_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9040,6 +8682,7 @@ $as_echo "$as_me: WARNING: --with-tktable argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -9129,12 +8772,8 @@ $as_echo_n "checking For TKTABLE_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKTABLE_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9147,12 +8786,8 @@ $as_echo "using TKTABLE_STUB_LIB_PATH ${TKTABLE_STUB_LIB_PATH}" >&6; } vars="${TKTABLE_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9180,12 +8815,8 @@ $as_echo_n "checking For tktable_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tktable_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9198,12 +8829,8 @@ $as_echo "using tktable_STUB_LIB_PATH ${tktable_STUB_LIB_PATH}" >&6; } vars="${tktable_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9942,20 +9569,6 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu - INSTALL='$(SHELL) $(srcdir)/tclconfig/install-sh -c' - INSTALL_DATA_DIR='${INSTALL} -d -m 755' - INSTALL_DATA='${INSTALL} -m 644' - INSTALL_PROGRAM='${INSTALL}' - INSTALL_SCRIPT='${INSTALL}' - INSTALL_LIBRARY='${INSTALL_DATA}' - - - - - - - - #-------------------------------------------------------------------- # Checks to see if the make program sets the $MAKE variable. #-------------------------------------------------------------------- @@ -10627,480 +10240,6 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; esac - if test "${TEA_PLATFORM}" = "unix" ; then - - #-------------------------------------------------------------------- - # On a few very rare systems, all of the libm.a stuff is - # already in libc.a. Set compiler flags accordingly. - # Also, Linux requires the "ieee" library for math to work - # right (and it must appear before "-lm"). - #-------------------------------------------------------------------- - - ac_fn_c_check_func "$LINENO" "sin" "ac_cv_func_sin" -if test "x$ac_cv_func_sin" = xyes; then : - MATH_LIBS="" -else - MATH_LIBS="-lm" -fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lieee" >&5 -$as_echo_n "checking for main in -lieee... " >&6; } -if ${ac_cv_lib_ieee_main+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lieee $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - -int -main () -{ -return main (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_ieee_main=yes -else - ac_cv_lib_ieee_main=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ieee_main" >&5 -$as_echo "$ac_cv_lib_ieee_main" >&6; } -if test "x$ac_cv_lib_ieee_main" = xyes; then : - MATH_LIBS="-lieee $MATH_LIBS" -fi - - - #-------------------------------------------------------------------- - # Interactive UNIX requires -linet instead of -lsocket, plus it - # needs net/errno.h to define the socket-related error codes. - #-------------------------------------------------------------------- - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -linet" >&5 -$as_echo_n "checking for main in -linet... " >&6; } -if ${ac_cv_lib_inet_main+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-linet $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - -int -main () -{ -return main (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_inet_main=yes -else - ac_cv_lib_inet_main=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_inet_main" >&5 -$as_echo "$ac_cv_lib_inet_main" >&6; } -if test "x$ac_cv_lib_inet_main" = xyes; then : - LIBS="$LIBS -linet" -fi - - ac_fn_c_check_header_mongrel "$LINENO" "net/errno.h" "ac_cv_header_net_errno_h" "$ac_includes_default" -if test "x$ac_cv_header_net_errno_h" = xyes; then : - - -$as_echo "#define HAVE_NET_ERRNO_H 1" >>confdefs.h - -fi - - - - #-------------------------------------------------------------------- - # Check for the existence of the -lsocket and -lnsl libraries. - # The order here is important, so that they end up in the right - # order in the command line generated by make. Here are some - # special considerations: - # 1. Use "connect" and "accept" to check for -lsocket, and - # "gethostbyname" to check for -lnsl. - # 2. Use each function name only once: can't redo a check because - # autoconf caches the results of the last check and won't redo it. - # 3. Use -lnsl and -lsocket only if they supply procedures that - # aren't already present in the normal libraries. This is because - # IRIX 5.2 has libraries, but they aren't needed and they're - # bogus: they goof up name resolution if used. - # 4. On some SVR4 systems, can't use -lsocket without -lnsl too. - # To get around this problem, check for both libraries together - # if -lsocket doesn't work by itself. - #-------------------------------------------------------------------- - - tcl_checkBoth=0 - ac_fn_c_check_func "$LINENO" "connect" "ac_cv_func_connect" -if test "x$ac_cv_func_connect" = xyes; then : - tcl_checkSocket=0 -else - tcl_checkSocket=1 -fi - - if test "$tcl_checkSocket" = 1; then - ac_fn_c_check_func "$LINENO" "setsockopt" "ac_cv_func_setsockopt" -if test "x$ac_cv_func_setsockopt" = xyes; then : - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setsockopt in -lsocket" >&5 -$as_echo_n "checking for setsockopt in -lsocket... " >&6; } -if ${ac_cv_lib_socket_setsockopt+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsocket $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char setsockopt (); -int -main () -{ -return setsockopt (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_socket_setsockopt=yes -else - ac_cv_lib_socket_setsockopt=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_setsockopt" >&5 -$as_echo "$ac_cv_lib_socket_setsockopt" >&6; } -if test "x$ac_cv_lib_socket_setsockopt" = xyes; then : - LIBS="$LIBS -lsocket" -else - tcl_checkBoth=1 -fi - -fi - - fi - if test "$tcl_checkBoth" = 1; then - tk_oldLibs=$LIBS - LIBS="$LIBS -lsocket -lnsl" - ac_fn_c_check_func "$LINENO" "accept" "ac_cv_func_accept" -if test "x$ac_cv_func_accept" = xyes; then : - tcl_checkNsl=0 -else - LIBS=$tk_oldLibs -fi - - fi - ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname" -if test "x$ac_cv_func_gethostbyname" = xyes; then : - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5 -$as_echo_n "checking for gethostbyname in -lnsl... " >&6; } -if ${ac_cv_lib_nsl_gethostbyname+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lnsl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char gethostbyname (); -int -main () -{ -return gethostbyname (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_nsl_gethostbyname=yes -else - ac_cv_lib_nsl_gethostbyname=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5 -$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; } -if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then : - LIBS="$LIBS -lnsl" -fi - -fi - - - # TEA specific: Don't perform the eval of the libraries here because - # DL_LIBS won't be set until we call TEA_CONFIG_CFLAGS - - TCL_LIBS='${DL_LIBS} ${LIBS} ${MATH_LIBS}' - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking dirent.h" >&5 -$as_echo_n "checking dirent.h... " >&6; } -if ${tcl_cv_dirent_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <sys/types.h> -#include <dirent.h> -int -main () -{ - -#ifndef _POSIX_SOURCE -# ifdef __Lynx__ - /* - * Generate compilation error to make the test fail: Lynx headers - * are only valid if really in the POSIX environment. - */ - - missing_procedure(); -# endif -#endif -DIR *d; -struct dirent *entryPtr; -char *p; -d = opendir("foobar"); -entryPtr = readdir(d); -p = entryPtr->d_name; -closedir(d); - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - tcl_cv_dirent_h=yes -else - tcl_cv_dirent_h=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $tcl_cv_dirent_h" >&5 -$as_echo "$tcl_cv_dirent_h" >&6; } - - if test $tcl_cv_dirent_h = no; then - -$as_echo "#define NO_DIRENT_H 1" >>confdefs.h - - fi - - # TEA specific: - ac_fn_c_check_header_mongrel "$LINENO" "errno.h" "ac_cv_header_errno_h" "$ac_includes_default" -if test "x$ac_cv_header_errno_h" = xyes; then : - -else - -$as_echo "#define NO_ERRNO_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "float.h" "ac_cv_header_float_h" "$ac_includes_default" -if test "x$ac_cv_header_float_h" = xyes; then : - -else - -$as_echo "#define NO_FLOAT_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "values.h" "ac_cv_header_values_h" "$ac_includes_default" -if test "x$ac_cv_header_values_h" = xyes; then : - -else - -$as_echo "#define NO_VALUES_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "limits.h" "ac_cv_header_limits_h" "$ac_includes_default" -if test "x$ac_cv_header_limits_h" = xyes; then : - -$as_echo "#define HAVE_LIMITS_H 1" >>confdefs.h - -else - -$as_echo "#define NO_LIMITS_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" -if test "x$ac_cv_header_stdlib_h" = xyes; then : - tcl_ok=1 -else - tcl_ok=0 -fi - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strtol" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strtoul" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strtod" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - if test $tcl_ok = 0; then - -$as_echo "#define NO_STDLIB_H 1" >>confdefs.h - - fi - ac_fn_c_check_header_mongrel "$LINENO" "string.h" "ac_cv_header_string_h" "$ac_includes_default" -if test "x$ac_cv_header_string_h" = xyes; then : - tcl_ok=1 -else - tcl_ok=0 -fi - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <string.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strstr" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <string.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strerror" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - - # See also memmove check below for a place where NO_STRING_H can be - # set and why. - - if test $tcl_ok = 0; then - -$as_echo "#define NO_STRING_H 1" >>confdefs.h - - fi - - ac_fn_c_check_header_mongrel "$LINENO" "sys/wait.h" "ac_cv_header_sys_wait_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_wait_h" = xyes; then : - -else - -$as_echo "#define NO_SYS_WAIT_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default" -if test "x$ac_cv_header_dlfcn_h" = xyes; then : - -else - -$as_echo "#define NO_DLFCN_H 1" >>confdefs.h - -fi - - - - # OS/390 lacks sys/param.h (and doesn't need it, by chance). - for ac_header in sys/param.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "sys/param.h" "ac_cv_header_sys_param_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_param_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_SYS_PARAM_H 1 -_ACEOF - -fi - -done - - - # Let the user call this, because if it triggers, they will - # need a compat/strtod.c that is correct. Users can also - # use Tcl_GetDouble(FromObj) instead. - #TEA_BUGGY_STRTOD - fi #----------------------------------------------------------------------- @@ -11120,12 +10259,8 @@ done vars="-lstdc++" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -11519,7 +10654,7 @@ $as_echo "${ac_cv_c_tkh}" >&6; } - if test "${PRACTCL_WINDOWINGSYSTEM}" != "x11"; then + if test "${TEA_WINDOWINGSYSTEM}" != "x11"; then # On Windows and Aqua, we need the X compat headers { $as_echo "$as_me:${as_lineno-$LINENO}: checking for X11 header files" >&5 $as_echo_n "checking for X11 header files... " >&6; } @@ -11534,7 +10669,7 @@ $as_echo "${INCLUDE_DIR_NATIVE}" >&6; } #TEA_PRIVATE_TK_HEADERS - if test "${PRACTCL_WINDOWINGSYSTEM}" = "x11" ; then + if test "${TEA_WINDOWINGSYSTEM}" = "x11" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for X" >&5 $as_echo_n "checking for X... " >&6; } @@ -12172,18 +11307,6 @@ $as_echo "$as_me: WARNING: that IS thread-enabled. It is recommended to use --enable-threads." >&2;} fi ;; - *) - if test "${TCL_THREADS}" = "1"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: - --enable-threads requested, but building against a Tcl that is NOT - thread-enabled. This is an OK configuration that will also run in - a thread-enabled core." >&5 -$as_echo "$as_me: WARNING: - --enable-threads requested, but building against a Tcl that is NOT - thread-enabled. This is an OK configuration that will also run in - a thread-enabled core." >&2;} - fi - ;; esac @@ -12805,12 +11928,8 @@ $as_echo "found $CELIB_DIR" >&6; } vars="ucrt.lib" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -12836,12 +11955,8 @@ $as_echo "found $CELIB_DIR" >&6; } vars="bufferoverflowU.lib" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -12992,8 +12107,6 @@ fi CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" SHLIB_LD='${CC} -shared' UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' - PRACTCL_UNSHARED_LIB_SUFFIX='.a' - LDFLAGS_CONSOLE="-wl,--subsystem,console ${lflags}" LDFLAGS_WINDOW="-wl,--subsystem,windows ${lflags}" @@ -13223,7 +12336,7 @@ fi LDFLAGS="$LDFLAGS -Wl,--export-dynamic" SHLIB_CFLAGS="-fPIC" SHLIB_SUFFIX=".so" - SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}' + SHLIB_LD='${CC} ${CFLAGS} ${LDFLAGS} -shared' { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inet_ntoa in -lnetwork" >&5 $as_echo_n "checking for inet_ntoa in -lnetwork... " >&6; } if ${ac_cv_lib_network_inet_ntoa+:} false; then : @@ -13450,7 +12563,7 @@ fi CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" # TEA specific: use LDFLAGS_DEFAULT instead of LDFLAGS - SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS_DEFAULT}' + SHLIB_LD='${CC} ${CFLAGS} ${LDFLAGS_DEFAULT} -shared' LDFLAGS="$LDFLAGS -Wl,--export-dynamic" if test $doRpath = yes; then : @@ -13526,39 +12639,23 @@ fi OpenBSD-*) arch=`arch -s` case "$arch" in - vax) - SHLIB_SUFFIX="" - SHARED_LIB_SUFFIX="" - LDFLAGS="" + alpha|sparc64) + SHLIB_CFLAGS="-fPIC" ;; *) - case "$arch" in - alpha|sparc64) - SHLIB_CFLAGS="-fPIC" - ;; - *) - SHLIB_CFLAGS="-fpic" - ;; - esac - SHLIB_LD='${CC} -shared ${SHLIB_CFLAGS}' - SHLIB_SUFFIX=".so" - if test $doRpath = yes; then : - - CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -fi - LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} - SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so${SHLIB_VERSION}' - LDFLAGS="-Wl,-export-dynamic" - ;; - esac - case "$arch" in - vax) - CFLAGS_OPTIMIZE="-O1" - ;; - *) - CFLAGS_OPTIMIZE="-O2" + SHLIB_CFLAGS="-fpic" ;; esac + SHLIB_LD='${CC} ${SHLIB_CFLAGS} -shared' + SHLIB_SUFFIX=".so" + if test $doRpath = yes; then : + + CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' +fi + LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} + SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so${SHLIB_VERSION}' + LDFLAGS="-Wl,-export-dynamic" + CFLAGS_OPTIMIZE="-O2" if test "${TCL_THREADS}" = "1"; then : # On OpenBSD: Compile with -pthread @@ -13574,7 +12671,7 @@ fi NetBSD-*) # NetBSD has ELF and can use 'cc -shared' to build shared libs SHLIB_CFLAGS="-fPIC" - SHLIB_LD='${CC} -shared ${SHLIB_CFLAGS}' + SHLIB_LD='${CC} ${SHLIB_CFLAGS} -shared' SHLIB_SUFFIX=".so" LDFLAGS="$LDFLAGS -export-dynamic" if test $doRpath = yes; then : @@ -13591,7 +12688,7 @@ fi fi ;; - FreeBSD-*) + DragonFly-*|FreeBSD-*) # This configuration from FreeBSD Ports. SHLIB_CFLAGS="-fPIC" SHLIB_LD="${CC} -shared" @@ -14225,9 +13322,9 @@ fi case $system in AIX-*) ;; BSD/OS*) ;; - CYGWIN_*|MINGW32_*) ;; + CYGWIN_*|MINGW32_*|MINGW64_*) ;; IRIX*) ;; - NetBSD-*|FreeBSD-*|OpenBSD-*) ;; + NetBSD-*|DragonFly-*|FreeBSD-*|OpenBSD-*) ;; Darwin-*) ;; SCO_SV-3.2*) ;; windows) ;; @@ -14247,13 +13344,11 @@ fi # TEA specific: use PACKAGE_VERSION instead of VERSION SHARED_LIB_SUFFIX='${PACKAGE_VERSION}${SHLIB_SUFFIX}' - fi if test "$UNSHARED_LIB_SUFFIX" = ""; then : # TEA specific: use PACKAGE_VERSION instead of VERSION UNSHARED_LIB_SUFFIX='${PACKAGE_VERSION}.a' - fi if test "${GCC}" = "yes" -a ${SHLIB_SUFFIX} = ".dll"; then @@ -14444,7 +13539,6 @@ $as_echo "#define HAVE_CAST_TO_UNION 1" >>confdefs.h - # These must be called after we do the basic CFLAGS checks and # verify any possible 64-bit or similar switches are necessary @@ -14851,16 +13945,10 @@ $as_echo "enabled $tcl_ok debugging" >&6; } #-------------------------------------------------------------------- - PRACTCL_TOOLSET="gcc" - PRACTCL_VC_MANIFEST_EMBED_DLL=: - PRACTCL_VC_MANIFEST_EMBED_EXE=: - if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes"; then - PRACTCL_TOOLSET="msvc" - PRACTCL_STATIC_LIB="%STLIB_LD% -out:%OUTFILE% %LIBRARY_OBJECTS%" - PRACTCL_SHARED_LIB="%SHLIB_LD% %SHLIB_LD_LIBS% %LDFLAGS_DEFAULT% -out:%OUTFILE% %LIBRARY_OBJECTS%" - MAKE_STATIC_LIB="\${STLIB_LD} -out:\$@ \$(PKG_OBJECTS)" - MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LD_LIBS} \${LDFLAGS_DEFAULT} -out:\$@ \$(PKG_OBJECTS)" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes"; then + MAKE_STATIC_LIB="\${STLIB_LD} -out:\$@ \$(PKG_OBJECTS)" + MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LD_LIBS} \${LDFLAGS_DEFAULT} -out:\$@ \$(PKG_OBJECTS)" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #if defined(_MSC_VER) && _MSC_VER >= 1400 @@ -14871,12 +13959,10 @@ _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "manifest needed" >/dev/null 2>&1; then : - # Could do a CHECK_PROG for mt, but should always be with MSVC8+ - PRACTCL_VC_MANIFEST_EMBED_DLL="mt.exe -nologo -manifest %OUTFILE%.manifest -outputresource:%OUTFILE%\;2" - PRACTCL_VC_MANIFEST_EMBED_EXE="mt.exe -nologo -manifest %OUTFILE%.manifest -outputresource:%OUTFILE%\;1" - VC_MANIFEST_EMBED_DLL="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;2 ; fi" - VC_MANIFEST_EMBED_EXE="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;1 ; fi" - MAKE_SHARED_LIB="${MAKE_SHARED_LIB} ; ${VC_MANIFEST_EMBED_DLL}" + # Could do a CHECK_PROG for mt, but should always be with MSVC8+ + VC_MANIFEST_EMBED_DLL="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;2 ; fi" + VC_MANIFEST_EMBED_EXE="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;1 ; fi" + MAKE_SHARED_LIB="${MAKE_SHARED_LIB} ; ${VC_MANIFEST_EMBED_DLL}" CLEANFILES="$CLEANFILES *.manifest" @@ -14884,89 +13970,73 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | fi rm -f conftest* - PRACTCL_STUB_LIB="%STLIB_LD% -nodefaultlib -out:%OUTFILE% %LIBRARY_OBJECTS%" - MAKE_STUB_LIB="\${STLIB_LD} -nodefaultlib -out:\$@ \$(PKG_STUB_OBJECTS)" - else - MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(PKG_OBJECTS)" - MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(PKG_OBJECTS) \${SHLIB_LD_LIBS}" - MAKE_STUB_LIB="\${STLIB_LD} \$@ \$(PKG_STUB_OBJECTS)" + MAKE_STUB_LIB="\${STLIB_LD} -nodefaultlib -out:\$@ \$(PKG_STUB_OBJECTS)" + else + MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(PKG_OBJECTS)" + MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(PKG_OBJECTS) \${SHLIB_LD_LIBS}" + MAKE_STUB_LIB="\${STLIB_LD} \$@ \$(PKG_STUB_OBJECTS)" + fi - PRACTCL_STATIC_LIB="%STLIB_LD% %OUTFILE% %LIBRARY_OBJECTS%" - PRACTCL_SHARED_LIB="%SHLIB_LD% -o %OUTFILE% %LIBRARY_OBJECTS% %SHLIB_LD_LIBS%" - PRACTCL_STUB_LIB="%STLIB_LD% %OUTFILE% %LIBRARY_OBJECTS%" - fi + if test "${SHARED_BUILD}" = "1" ; then + MAKE_LIB="${MAKE_SHARED_LIB} " + else + MAKE_LIB="${MAKE_STATIC_LIB} " + fi - if test "${SHARED_BUILD}" = "1" ; then - MAKE_LIB="${MAKE_SHARED_LIB} " - else - MAKE_LIB="${MAKE_STATIC_LIB} " - fi + #-------------------------------------------------------------------- + # Shared libraries and static libraries have different names. + # Use the double eval to make sure any variables in the suffix is + # substituted. (@@@ Might not be necessary anymore) + #-------------------------------------------------------------------- - #-------------------------------------------------------------------- - # Shared libraries and static libraries have different names. - # Use the double eval to make sure any variables in the suffix is - # substituted. (@@@ Might not be necessary anymore) - #-------------------------------------------------------------------- - if test "${TEA_PLATFORM}" = "windows" ; then - PRACTCL_NAME_LIBRARY="%LIBRARY_PREFIX%%LIBRARY_NAME%%LIBRARY_VERSION_NODOTS%" - if test "${SHARED_BUILD}" = "1" ; then + if test "${TEA_PLATFORM}" = "windows" ; then + if test "${SHARED_BUILD}" = "1" ; then # We force the unresolved linking of symbols that are really in # the private libraries of Tcl and Tk. if test x"${TK_BIN_DIR}" != x ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TK_BIN_DIR}/${TK_STUB_LIB_FILE}`\"" + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TK_BIN_DIR}/${TK_STUB_LIB_FILE}`\"" fi SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TCL_BIN_DIR}/${TCL_STUB_LIB_FILE}`\"" if test "$GCC" = "yes"; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -static-libgcc" + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -static-libgcc" fi eval eval "PKG_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" - else + else eval eval "PKG_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" if test "$GCC" = "yes"; then - PKG_LIB_FILE=lib${PKG_LIB_FILE} + PKG_LIB_FILE=lib${PKG_LIB_FILE} fi - fi - # Some packages build their own stubs libraries - eval eval "PKG_STUB_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" - if test "$GCC" = "yes"; then - PKG_STUB_LIB_FILE=lib${PKG_STUB_LIB_FILE} - fi - # These aren't needed on Windows (either MSVC or gcc) - RANLIB=: - RANLIB_STUB=: - else - PRACTCL_NAME_LIBRARY="lib%LIBRARY_PREFIX%%LIBRARY_NAME%%LIBRARY_VERSION%" - RANLIB_STUB="${RANLIB}" - if test "${SHARED_BUILD}" = "1" ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TCL_STUB_LIB_SPEC}" - if test x"${TK_BIN_DIR}" != x ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TK_STUB_LIB_SPEC}" - fi - eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" - RANLIB=: + fi + # Some packages build their own stubs libraries + eval eval "PKG_STUB_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" + if test "$GCC" = "yes"; then + PKG_STUB_LIB_FILE=lib${PKG_STUB_LIB_FILE} + fi + # These aren't needed on Windows (either MSVC or gcc) + RANLIB=: + RANLIB_STUB=: else - eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" + RANLIB_STUB="${RANLIB}" + if test "${SHARED_BUILD}" = "1" ; then + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TCL_STUB_LIB_SPEC}" + if test x"${TK_BIN_DIR}" != x ; then + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TK_STUB_LIB_SPEC}" + fi + eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" + RANLIB=: + else + eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" + fi + # Some packages build their own stubs libraries + eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" fi - # Some packages build their own stubs libraries - eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" - fi - - # Store the raw CFLAGS before we add the trimmings - PRACTCL_CFLAGS=${CFLAGS} - # These are escaped so that only CFLAGS is picked up at configure time. - # The other values will be substituted at make time. - CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" - if test "${SHARED_BUILD}" = "1" ; then - CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" - fi - - - - - - - + # These are escaped so that only CFLAGS is picked up at configure time. + # The other values will be substituted at make time. + CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" + if test "${SHARED_BUILD}" = "1" ; then + CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" + fi @@ -14988,31 +14058,7 @@ rm -f conftest* { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tclsh" >&5 $as_echo_n "checking for tclsh... " >&6; } - - -# Check whether --with-tclsh was given. -if test "${with_tclsh+set}" = set; then : - withval=$with_tclsh; with_tclsh=${withval} -fi - - # Use the value from --with-tclsh, if it was given - TCLSH_PROG=0 - if test x"${with_tclsh}" != x ; then - if test -f "${with_tclsh}" ; then - TCLSH_PROG=${with_tclsh} - else - if test -f "${with_tclsh}/tcl8.6" ; then - TCLSH_PROG="${with_tclsh}/tcl8.6" - else - if test -f "${with_tclsh}/tclsh86.exe" ; then - TCLSH_PROG="${with_tclsh}/tclsh86.exe" - else - as_fn_error $? "${with_tclsh} does not point to a valid Tcl executable" "$LINENO" 5 - fi - fi - fi - else - if test -f "${TCL_BIN_DIR}/Makefile" ; then + if test -f "${TCL_BIN_DIR}/Makefile" ; then # tclConfig.sh is in Tcl build directory if test "${TEA_PLATFORM}" = "windows"; then if test -f "${TCL_BIN_DIR}/tclsh${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${TCL_DBGX}${EXEEXT}" ; then @@ -15027,7 +14073,7 @@ fi else TCLSH_PROG="${TCL_BIN_DIR}/tclsh" fi - else + else # tclConfig.sh is in install location if test "${TEA_PLATFORM}" = "windows"; then TCLSH_PROG="tclsh${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${TCL_DBGX}${EXEEXT}" @@ -15044,8 +14090,7 @@ fi fi done TCLSH_PROG="${REAL_TCL_BIN_DIR}${TCLSH_PROG}" - fi - fi + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${TCLSH_PROG}" >&5 $as_echo "${TCLSH_PROG}" >&6; } @@ -15053,13 +14098,27 @@ $as_echo "${TCLSH_PROG}" >&6; } #TEA_PROG_WISH #-------------------------------------------------------------------- -# Finally, substitute all of the various values into the Makefile. -# You may alternatively have a special pkgIndex.tcl.in or other files -# which require substituting th AC variables in. Include these here. +# Setup a *Config.sh.in configuration file. +#-------------------------------------------------------------------- + +#TEA_EXPORT_CONFIG([sample]) +#AC_SUBST(SAMPLE_VAR) + +#-------------------------------------------------------------------- +# Specify files to substitute AC variables in. You may alternatively +# have a special pkgIndex.tcl.in or other files which require +# substituting the AC variables in. Include these here. #-------------------------------------------------------------------- ac_config_files="$ac_config_files Makefile" +#AC_CONFIG_FILES([sampleConfig.sh]) + +#-------------------------------------------------------------------- +# Finally, substitute all of the various values into the files +# specified with AC_CONFIG_FILES. +#-------------------------------------------------------------------- + cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure @@ -15604,7 +14663,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by ds9 $as_me 8.0, which was +This file was extended by ds9 $as_me 8.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -15657,7 +14716,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -ds9 config.status 8.0 +ds9 config.status 8.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/ds9/unix/configure.ac b/ds9/unix/configure.ac index 0c3b2ce..8269108 100644 --- a/ds9/unix/configure.ac +++ b/ds9/unix/configure.ac @@ -19,7 +19,7 @@ dnl to configure the system for the local environment. # so that we create the export library with the dll. #----------------------------------------------------------------------- -AC_INIT([ds9], [8.0]) +AC_INIT([ds9], [8.1]) #-------------------------------------------------------------------- # Call TEA_INIT as the first TEA_ macro to set up initial vars. @@ -27,7 +27,7 @@ AC_INIT([ds9], [8.0]) # as well as PKG_LIB_FILE and PKG_STUB_LIB_FILE. #-------------------------------------------------------------------- -TEA_INIT([3.10]) +TEA_INIT() AC_CONFIG_AUX_DIR(../tclconfig) @@ -249,9 +249,24 @@ TEA_PROG_TCLSH #TEA_PROG_WISH #-------------------------------------------------------------------- -# Finally, substitute all of the various values into the Makefile. -# You may alternatively have a special pkgIndex.tcl.in or other files -# which require substituting th AC variables in. Include these here. +# Setup a *Config.sh.in configuration file. #-------------------------------------------------------------------- -AC_OUTPUT([Makefile]) +#TEA_EXPORT_CONFIG([sample]) +#AC_SUBST(SAMPLE_VAR) + +#-------------------------------------------------------------------- +# Specify files to substitute AC variables in. You may alternatively +# have a special pkgIndex.tcl.in or other files which require +# substituting the AC variables in. Include these here. +#-------------------------------------------------------------------- + +AC_CONFIG_FILES([Makefile]) +#AC_CONFIG_FILES([sampleConfig.sh]) + +#-------------------------------------------------------------------- +# Finally, substitute all of the various values into the files +# specified with AC_CONFIG_FILES. +#-------------------------------------------------------------------- + +AC_OUTPUT() diff --git a/ds9/win/configure b/ds9/win/configure index 027e13d..8510eff 100755 --- a/ds9/win/configure +++ b/ds9/win/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for ds9 8.0. +# Generated by GNU Autoconf 2.69 for ds9 8.1. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -577,8 +577,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='ds9' PACKAGE_TARNAME='ds9' -PACKAGE_VERSION='8.0' -PACKAGE_STRING='ds9 8.0' +PACKAGE_VERSION='8.1' +PACKAGE_STRING='ds9 8.1' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -621,14 +621,6 @@ ac_includes_default="\ ac_subst_vars='LTLIBOBJS LIBOBJS TCLSH_PROG -PRACTCL_NAME_LIBRARY -PRACTCL_VC_MANIFEST_EMBED_EXE -PRACTCL_VC_MANIFEST_EMBED_DLL -PRACTCL_STUB_LIB -PRACTCL_STATIC_LIB -PRACTCL_SHARED_LIB -PRACTCL_TOOLSET -PRACTCL_CFLAGS VC_MANIFEST_EMBED_EXE VC_MANIFEST_EMBED_DLL RANLIB_STUB @@ -642,7 +634,6 @@ CFLAGS_DEFAULT LD_LIBRARY_PATH_VAR SHLIB_CFLAGS SHLIB_LD_LIBS -SHLIB_SUFFIX SHLIB_LD STLIB_LD CFLAGS_WARNING @@ -653,19 +644,13 @@ CELIB_DIR AR STUBS_BUILD SHARED_BUILD +TCL_THREADS TK_INCLUDES TCL_INCLUDES -MATH_LIBS EGREP GREP RANLIB SET_MAKE -INSTALL_LIBRARY -INSTALL_SCRIPT -INSTALL_PROGRAM -INSTALL_DATA -INSTALL_DATA_DIR -INSTALL CPP tkwin_STUB_LIB_PATH tkwin_STUB_LIB_SPEC @@ -819,7 +804,6 @@ tifftcl_LIB_FILE tifftcl_SRC_DIR tifftcl_BIN_DIR tifftcl_VERSION -PRACTCL_WINDOWINGSYSTEM TK_XINCLUDES TK_LIBS TK_STUB_LIB_SPEC @@ -853,6 +837,12 @@ TCL_SRC_DIR TCL_BIN_DIR TCL_PATCH_LEVEL TCL_VERSION +INSTALL_LIBRARY +INSTALL_SCRIPT +INSTALL_PROGRAM +INSTALL_DATA +INSTALL_DATA_DIR +INSTALL PKG_CFLAGS PKG_LIBS PKG_INCLUDES @@ -864,7 +854,6 @@ PKG_STUB_LIB_FILE PKG_LIB_FILE EXEEXT CYGPATH -TEA_TK_EXTENSION target_alias host_alias build_alias @@ -929,6 +918,7 @@ with_tktable with_tkwin with_tclinclude with_tkinclude +enable_threads enable_shared enable_stubs enable_64bit @@ -937,7 +927,6 @@ enable_rpath enable_wince with_celib enable_symbols -with_tclsh ' ac_precious_vars='build_alias host_alias @@ -1488,7 +1477,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures ds9 8.0 to adapt to many kinds of systems. +\`configure' configures ds9 8.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1549,7 +1538,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of ds9 8.0:";; + short | recursive ) echo "Configuration of ds9 8.1:";; esac cat <<\_ACEOF @@ -1557,6 +1546,7 @@ Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --enable-threads build with threads (default: on) --enable-shared build and link with shared libraries (default: on) --enable-stubs build and link with stub libraries. Always true for shared builds (default: on) @@ -1594,7 +1584,6 @@ Optional Packages: --with-tclinclude directory containing the public Tcl header files --with-tkinclude directory containing the public Tk header files --with-celib=DIR use Windows/CE support library from DIR - --with-tclsh Specify a local tcl shell to use for dynamic code Some influential environment variables: CC C compiler command @@ -1672,7 +1661,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -ds9 configure 8.0 +ds9 configure 8.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1946,98 +1935,11 @@ $as_echo "$ac_res" >&6; } eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_func - -# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES -# ------------------------------------------------------- -# Tests whether HEADER exists, giving a warning if it cannot be compiled using -# the include files in INCLUDES and setting the cache variable VAR -# accordingly. -ac_fn_c_check_header_mongrel () -{ - as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if eval \${$3+:} false; then : - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -else - # Is the header compilable? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 -$as_echo_n "checking $2 usability... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -$4 -#include <$2> -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - ac_header_compiler=yes -else - ac_header_compiler=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 -$as_echo_n "checking $2 presence... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <$2> -_ACEOF -if ac_fn_c_try_cpp "$LINENO"; then : - ac_header_preproc=yes -else - ac_header_preproc=no -fi -rm -f conftest.err conftest.i conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( - yes:no: ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; - no:yes:* ) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} - ;; -esac - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 -$as_echo_n "checking for $2... " >&6; } -if eval \${$3+:} false; then : - $as_echo_n "(cached) " >&6 -else - eval "$3=\$ac_header_compiler" -fi -eval ac_res=\$$3 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -fi - eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno - -} # ac_fn_c_check_header_mongrel cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by ds9 $as_me 8.0, which was +It was created by ds9 $as_me 8.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2393,35 +2295,25 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu #-------------------------------------------------------------------- - # TEA extensions pass this us the version of TEA they think they - # are compatible with. - TEA_VERSION="3.10" - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for correct TEA configuration" >&5 -$as_echo_n "checking for correct TEA configuration... " >&6; } + TEA_VERSION="3.13" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking TEA configuration" >&5 +$as_echo_n "checking TEA configuration... " >&6; } if test x"${PACKAGE_NAME}" = x ; then as_fn_error $? " The PACKAGE_NAME variable must be defined by your TEA configure.ac" "$LINENO" 5 fi - if test x"3.10" = x ; then - as_fn_error $? " -TEA version not specified." "$LINENO" 5 - elif test "3.10" != "${TEA_VERSION}" ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: warning: requested TEA version \"3.10\", have \"${TEA_VERSION}\"" >&5 -$as_echo "warning: requested TEA version \"3.10\", have \"${TEA_VERSION}\"" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok (TEA ${TEA_VERSION})" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok (TEA ${TEA_VERSION})" >&5 $as_echo "ok (TEA ${TEA_VERSION})" >&6; } - fi # If the user did not set CFLAGS, set it now to keep macros # like AC_PROG_CC and AC_TRY_COMPILE from adding "-g -O2". if test "${CFLAGS+set}" != "set" ; then CFLAGS="" fi - TEA_TK_EXTENSION=0 case "`uname -s`" in - *win32*|*WIN32*|*MINGW32_*) + *win32*|*WIN32*|*MINGW32_*|*MINGW64_*) # Extract the first word of "cygpath", so it can be a program name with args. set dummy cygpath; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 @@ -2513,6 +2405,55 @@ $as_echo "$as_me: configuring ${PACKAGE_NAME} ${PACKAGE_VERSION}" >&6;} + # Configure the installer. + + INSTALL='$(SHELL) $(srcdir)/tclconfig/install-sh -c' + INSTALL_DATA_DIR='${INSTALL} -d -m 755' + INSTALL_DATA='${INSTALL} -m 644' + INSTALL_PROGRAM='${INSTALL} -m 755' + INSTALL_SCRIPT='${INSTALL} -m 755' + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking system version" >&5 +$as_echo_n "checking system version... " >&6; } +if ${tcl_cv_sys_version+:} false; then : + $as_echo_n "(cached) " >&6 +else + + # TEA specific: + if test "${TEA_PLATFORM}" = "windows" ; then + tcl_cv_sys_version=windows + else + tcl_cv_sys_version=`uname -s`-`uname -r` + if test "$?" -ne 0 ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: can't find uname command" >&5 +$as_echo "$as_me: WARNING: can't find uname command" >&2;} + tcl_cv_sys_version=unknown + else + if test "`uname -s`" = "AIX" ; then + tcl_cv_sys_version=AIX-`uname -v`.`uname -r` + fi + fi + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $tcl_cv_sys_version" >&5 +$as_echo "$tcl_cv_sys_version" >&6; } + system=$tcl_cv_sys_version + + case $system in + HP-UX-*) INSTALL_LIBRARY='${INSTALL} -m 755' ;; + *) INSTALL_LIBRARY='${INSTALL} -m 644' ;; + esac + + + + + + + + + ac_aux_dir= for ac_dir in ../tclconfig "$srcdir"/../tclconfig; do @@ -2622,6 +2563,9 @@ $as_echo "$as_me: WARNING: --with-tcl argument should refer to directory contain `ls -d /Library/Frameworks 2>/dev/null` \ `ls -d /Network/Library/Frameworks 2>/dev/null` \ `ls -d /System/Library/Frameworks 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Network/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Tcl.framework 2>/dev/null` \ ; do if test -f "$i/Tcl.framework/tclConfig.sh" ; then ac_cv_c_tclconfig="`(cd $i/Tcl.framework; pwd)`" @@ -2648,13 +2592,17 @@ $as_echo "$as_me: WARNING: --with-tcl argument should refer to directory contain for i in `ls -d ${libdir} 2>/dev/null` \ `ls -d ${exec_prefix}/lib 2>/dev/null` \ `ls -d ${prefix}/lib 2>/dev/null` \ - `ls -d /usr/contrib/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ + `ls -d /usr/contrib/lib 2>/dev/null` \ `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ `ls -d /usr/lib/tcl8.6 2>/dev/null` \ `ls -d /usr/lib/tcl8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tcl8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tcl8.5 2>/dev/null` \ ; do if test -f "$i/tclConfig.sh" ; then ac_cv_c_tclconfig="`(cd $i; pwd)`" @@ -3662,7 +3610,6 @@ _ACEOF if test x"${no_tk}" = x ; then # we reset no_tk in case something fails here no_tk=true - TEA_TK_EXTENSION=0 # Check whether --with-tk was given. if test "${with_tk+set}" = set; then : @@ -3726,6 +3673,9 @@ $as_echo "$as_me: WARNING: --with-tk argument should refer to directory containi `ls -d /Library/Frameworks 2>/dev/null` \ `ls -d /Network/Library/Frameworks 2>/dev/null` \ `ls -d /System/Library/Frameworks 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/Network/Library/Frameworks/Tcl.framework 2>/dev/null` \ + `ls -d /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Tcl.framework 2>/dev/null` \ ; do if test -f "$i/Tk.framework/tkConfig.sh" ; then ac_cv_c_tkconfig="`(cd $i/Tk.framework; pwd)`" @@ -3741,8 +3691,15 @@ $as_echo "$as_me: WARNING: --with-tk argument should refer to directory containi `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ + `ls -d /usr/lib/tk8.6 2>/dev/null` \ + `ls -d /usr/lib/tk8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tk8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tk8.5 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tk8.6 2>/dev/null` \ + `ls -d /usr/local/lib/tcl/tk8.5 2>/dev/null` \ ; do if test -f "$i/tkConfig.sh" ; then ac_cv_c_tkconfig="`(cd $i; pwd)`" @@ -3791,7 +3748,6 @@ fi as_fn_error $? "Can't find Tk configuration definitions. Use --with-tk to specify a directory containing tkConfig.sh" "$LINENO" 5 else no_tk= - TEA_TK_EXTENSION=1 TK_BIN_DIR="${ac_cv_c_tkconfig}" { $as_echo "$as_me:${as_lineno-$LINENO}: result: found ${TK_BIN_DIR}/tkConfig.sh" >&5 $as_echo "found ${TK_BIN_DIR}/tkConfig.sh" >&6; } @@ -3855,44 +3811,20 @@ $as_echo "could not find ${TK_BIN_DIR}/tkConfig.sh" >&6; } eval "TK_STUB_LIB_SPEC=\"${TK_STUB_LIB_SPEC}\"" # TEA specific: Ensure windowingsystem is defined - case ${TK_DEFS} in - *PLATFORM_SDL*) - TEA_WINDOWINGSYSTEM="x11" - PRACTCL_WINDOWINGSYSTEM="sdl" - TEA_USE_SDL=yes - ;; - esac - if test "${TEA_USE_SDL}" = "yes" ; then - true - elif test "${TEA_PLATFORM}" = "unix" ; then + if test "${TEA_PLATFORM}" = "unix" ; then case ${TK_DEFS} in *MAC_OSX_TK*) $as_echo "#define MAC_OSX_TK 1" >>confdefs.h TEA_WINDOWINGSYSTEM="aqua" - PRACTCL_WINDOWINGSYSTEM="cocoa" - TEA_USE_HITHEME=no; - if test "${TK_VERSION}" = "8.5" ; then - if test "${TK_PATCH_LEVEL}" > ".17" ; then - TEA_USE_HITHEME=yes; - fi - elif test "${TK_VERSION}" = "8.6" ; then - if test "${TK_PATCH_LEVEL}" > ".3" ; then - TEA_USE_HITHEME=yes; - fi - elif test "${TK_VERSION}" > "8.6" ; then - TEA_USE_HITHEME=yes; - fi ;; *) TEA_WINDOWINGSYSTEM="x11" - PRACTCL_WINDOWINGSYSTEM="x11" ;; esac elif test "${TEA_PLATFORM}" = "windows" ; then TEA_WINDOWINGSYSTEM="win32" - PRACTCL_WINDOWINGSYSTEM="windows" fi @@ -3910,8 +3842,6 @@ $as_echo "#define MAC_OSX_TK 1" >>confdefs.h # TEA specific: - # Practcl - #-------------------------------------------------------------------- @@ -4000,6 +3930,7 @@ $as_echo "$as_me: WARNING: --with-tifftcl argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4089,12 +4020,8 @@ $as_echo_n "checking For TIFFTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TIFFTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4107,12 +4034,8 @@ $as_echo "using TIFFTCL_STUB_LIB_PATH ${TIFFTCL_STUB_LIB_PATH}" >&6; } vars="${TIFFTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4140,12 +4063,8 @@ $as_echo_n "checking For tifftcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tifftcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4158,12 +4077,8 @@ $as_echo "using tifftcl_STUB_LIB_PATH ${tifftcl_STUB_LIB_PATH}" >&6; } vars="${tifftcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4264,6 +4179,7 @@ $as_echo "$as_me: WARNING: --with-pngtcl argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4353,12 +4269,8 @@ $as_echo_n "checking For PNGTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${PNGTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4371,12 +4283,8 @@ $as_echo "using PNGTCL_STUB_LIB_PATH ${PNGTCL_STUB_LIB_PATH}" >&6; } vars="${PNGTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4404,12 +4312,8 @@ $as_echo_n "checking For pngtcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${pngtcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4422,12 +4326,8 @@ $as_echo "using pngtcl_STUB_LIB_PATH ${pngtcl_STUB_LIB_PATH}" >&6; } vars="${pngtcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4528,6 +4428,7 @@ $as_echo "$as_me: WARNING: --with-jpegtcl argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4617,12 +4518,8 @@ $as_echo_n "checking For JPEGTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${JPEGTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4635,12 +4532,8 @@ $as_echo "using JPEGTCL_STUB_LIB_PATH ${JPEGTCL_STUB_LIB_PATH}" >&6; } vars="${JPEGTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4668,12 +4561,8 @@ $as_echo_n "checking For jpegtcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${jpegtcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4686,12 +4575,8 @@ $as_echo "using jpegtcl_STUB_LIB_PATH ${jpegtcl_STUB_LIB_PATH}" >&6; } vars="${jpegtcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4792,6 +4677,7 @@ $as_echo "$as_me: WARNING: --with-zlibtcl argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -4881,12 +4767,8 @@ $as_echo_n "checking For ZLIBTCL_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${ZLIBTCL_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4899,12 +4781,8 @@ $as_echo "using ZLIBTCL_STUB_LIB_PATH ${ZLIBTCL_STUB_LIB_PATH}" >&6; } vars="${ZLIBTCL_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4932,12 +4810,8 @@ $as_echo_n "checking For zlibtcl_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${zlibtcl_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -4950,12 +4824,8 @@ $as_echo "using zlibtcl_STUB_LIB_PATH ${zlibtcl_STUB_LIB_PATH}" >&6; } vars="${zlibtcl_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5056,6 +4926,7 @@ $as_echo "$as_me: WARNING: --with-tcliis argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5145,12 +5016,8 @@ $as_echo_n "checking For TCLIIS_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TCLIIS_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5163,12 +5030,8 @@ $as_echo "using TCLIIS_STUB_LIB_PATH ${TCLIIS_STUB_LIB_PATH}" >&6; } vars="${TCLIIS_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5196,12 +5059,8 @@ $as_echo_n "checking For tcliis_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tcliis_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5214,12 +5073,8 @@ $as_echo "using tcliis_STUB_LIB_PATH ${tcliis_STUB_LIB_PATH}" >&6; } vars="${tcliis_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5320,6 +5175,7 @@ $as_echo "$as_me: WARNING: --with-tclxml argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5409,12 +5265,8 @@ $as_echo_n "checking For TCLXML_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TCLXML_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5427,12 +5279,8 @@ $as_echo "using TCLXML_STUB_LIB_PATH ${TCLXML_STUB_LIB_PATH}" >&6; } vars="${TCLXML_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5460,12 +5308,8 @@ $as_echo_n "checking For tclxml_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tclxml_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5478,12 +5322,8 @@ $as_echo "using tclxml_STUB_LIB_PATH ${tclxml_STUB_LIB_PATH}" >&6; } vars="${tclxml_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5584,6 +5424,7 @@ $as_echo "$as_me: WARNING: --with-tls argument should refer to directory contain `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5673,12 +5514,8 @@ $as_echo_n "checking For TLS_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TLS_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5691,12 +5528,8 @@ $as_echo "using TLS_STUB_LIB_PATH ${TLS_STUB_LIB_PATH}" >&6; } vars="${TLS_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5724,12 +5557,8 @@ $as_echo_n "checking For tls_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tls_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5742,12 +5571,8 @@ $as_echo "using tls_STUB_LIB_PATH ${tls_STUB_LIB_PATH}" >&6; } vars="${tls_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5848,6 +5673,7 @@ $as_echo "$as_me: WARNING: --with-tkblt argument should refer to directory conta `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -5937,12 +5763,8 @@ $as_echo_n "checking For TKBLT_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKBLT_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5955,12 +5777,8 @@ $as_echo "using TKBLT_STUB_LIB_PATH ${TKBLT_STUB_LIB_PATH}" >&6; } vars="${TKBLT_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -5988,12 +5806,8 @@ $as_echo_n "checking For tkblt_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkblt_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6006,12 +5820,8 @@ $as_echo "using tkblt_STUB_LIB_PATH ${tkblt_STUB_LIB_PATH}" >&6; } vars="${tkblt_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6112,6 +5922,7 @@ $as_echo "$as_me: WARNING: --with-tkhtml1 argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -6201,12 +6012,8 @@ $as_echo_n "checking For TKHTML1_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKHTML1_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6219,12 +6026,8 @@ $as_echo "using TKHTML1_STUB_LIB_PATH ${TKHTML1_STUB_LIB_PATH}" >&6; } vars="${TKHTML1_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6252,12 +6055,8 @@ $as_echo_n "checking For tkhtml1_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkhtml1_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6270,12 +6069,8 @@ $as_echo "using tkhtml1_STUB_LIB_PATH ${tkhtml1_STUB_LIB_PATH}" >&6; } vars="${tkhtml1_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6376,6 +6171,7 @@ $as_echo "$as_me: WARNING: --with-tkimg argument should refer to directory conta `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -6465,12 +6261,8 @@ $as_echo_n "checking For TKIMG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6483,12 +6275,8 @@ $as_echo "using TKIMG_STUB_LIB_PATH ${TKIMG_STUB_LIB_PATH}" >&6; } vars="${TKIMG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6516,12 +6304,8 @@ $as_echo_n "checking For tkimg_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimg_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6534,12 +6318,8 @@ $as_echo "using tkimg_STUB_LIB_PATH ${tkimg_STUB_LIB_PATH}" >&6; } vars="${tkimg_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6640,6 +6420,7 @@ $as_echo "$as_me: WARNING: --with-tkimggif argument should refer to directory co `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -6729,12 +6510,8 @@ $as_echo_n "checking For TKIMGGIF_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGGIF_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6747,12 +6524,8 @@ $as_echo "using TKIMGGIF_STUB_LIB_PATH ${TKIMGGIF_STUB_LIB_PATH}" >&6; } vars="${TKIMGGIF_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6780,12 +6553,8 @@ $as_echo_n "checking For tkimggif_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimggif_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6798,12 +6567,8 @@ $as_echo "using tkimggif_STUB_LIB_PATH ${tkimggif_STUB_LIB_PATH}" >&6; } vars="${tkimggif_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -6904,6 +6669,7 @@ $as_echo "$as_me: WARNING: --with-tkimgjpeg argument should refer to directory c `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -6993,12 +6759,8 @@ $as_echo_n "checking For TKIMGJPEG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGJPEG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7011,12 +6773,8 @@ $as_echo "using TKIMGJPEG_STUB_LIB_PATH ${TKIMGJPEG_STUB_LIB_PATH}" >&6; } vars="${TKIMGJPEG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7044,12 +6802,8 @@ $as_echo_n "checking For tkimgjpeg_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgjpeg_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7062,12 +6816,8 @@ $as_echo "using tkimgjpeg_STUB_LIB_PATH ${tkimgjpeg_STUB_LIB_PATH}" >&6; } vars="${tkimgjpeg_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7168,6 +6918,7 @@ $as_echo "$as_me: WARNING: --with-tkimgpng argument should refer to directory co `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7257,12 +7008,8 @@ $as_echo_n "checking For TKIMGPNG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGPNG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7275,12 +7022,8 @@ $as_echo "using TKIMGPNG_STUB_LIB_PATH ${TKIMGPNG_STUB_LIB_PATH}" >&6; } vars="${TKIMGPNG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7308,12 +7051,8 @@ $as_echo_n "checking For tkimgpng_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgpng_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7326,12 +7065,8 @@ $as_echo "using tkimgpng_STUB_LIB_PATH ${tkimgpng_STUB_LIB_PATH}" >&6; } vars="${tkimgpng_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7432,6 +7167,7 @@ $as_echo "$as_me: WARNING: --with-tkimgtiff argument should refer to directory c `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7521,12 +7257,8 @@ $as_echo_n "checking For TKIMGTIFF_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGTIFF_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7539,12 +7271,8 @@ $as_echo "using TKIMGTIFF_STUB_LIB_PATH ${TKIMGTIFF_STUB_LIB_PATH}" >&6; } vars="${TKIMGTIFF_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7572,12 +7300,8 @@ $as_echo_n "checking For tkimgtiff_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgtiff_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7590,12 +7314,8 @@ $as_echo "using tkimgtiff_STUB_LIB_PATH ${tkimgtiff_STUB_LIB_PATH}" >&6; } vars="${tkimgtiff_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7696,6 +7416,7 @@ $as_echo "$as_me: WARNING: --with-tkimgwindow argument should refer to directory `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -7785,12 +7506,8 @@ $as_echo_n "checking For TKIMGWINDOW_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKIMGWINDOW_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7803,12 +7520,8 @@ $as_echo "using TKIMGWINDOW_STUB_LIB_PATH ${TKIMGWINDOW_STUB_LIB_PATH}" >&6; } vars="${TKIMGWINDOW_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7836,12 +7549,8 @@ $as_echo_n "checking For tkimgwindow_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkimgwindow_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7854,12 +7563,8 @@ $as_echo "using tkimgwindow_STUB_LIB_PATH ${tkimgwindow_STUB_LIB_PATH}" >&6; } vars="${tkimgwindow_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -7960,6 +7665,7 @@ $as_echo "$as_me: WARNING: --with-tkmpeg argument should refer to directory cont `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8049,12 +7755,8 @@ $as_echo_n "checking For TKMPEG_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKMPEG_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8067,12 +7769,8 @@ $as_echo "using TKMPEG_STUB_LIB_PATH ${TKMPEG_STUB_LIB_PATH}" >&6; } vars="${TKMPEG_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8100,12 +7798,8 @@ $as_echo_n "checking For tkmpeg_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkmpeg_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8118,12 +7812,8 @@ $as_echo "using tkmpeg_STUB_LIB_PATH ${tkmpeg_STUB_LIB_PATH}" >&6; } vars="${tkmpeg_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8224,6 +7914,7 @@ $as_echo "$as_me: WARNING: --with-tksao argument should refer to directory conta `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8313,12 +8004,8 @@ $as_echo_n "checking For TKSAO_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKSAO_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8331,12 +8018,8 @@ $as_echo "using TKSAO_STUB_LIB_PATH ${TKSAO_STUB_LIB_PATH}" >&6; } vars="${TKSAO_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8364,12 +8047,8 @@ $as_echo_n "checking For tksao_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tksao_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8382,12 +8061,8 @@ $as_echo "using tksao_STUB_LIB_PATH ${tksao_STUB_LIB_PATH}" >&6; } vars="${tksao_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8488,6 +8163,7 @@ $as_echo "$as_me: WARNING: --with-tktable argument should refer to directory con `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8577,12 +8253,8 @@ $as_echo_n "checking For TKTABLE_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKTABLE_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8595,12 +8267,8 @@ $as_echo "using TKTABLE_STUB_LIB_PATH ${TKTABLE_STUB_LIB_PATH}" >&6; } vars="${TKTABLE_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8628,12 +8296,8 @@ $as_echo_n "checking For tktable_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tktable_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8646,12 +8310,8 @@ $as_echo "using tktable_STUB_LIB_PATH ${tktable_STUB_LIB_PATH}" >&6; } vars="${tktable_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8752,6 +8412,7 @@ $as_echo "$as_me: WARNING: --with-tkwin argument should refer to directory conta `ls -d ${prefix}/lib 2>/dev/null` \ `ls -d /usr/local/lib 2>/dev/null` \ `ls -d /usr/contrib/lib 2>/dev/null` \ + `ls -d /usr/pkg/lib 2>/dev/null` \ `ls -d /usr/lib 2>/dev/null` \ `ls -d /usr/lib64 2>/dev/null` \ ; do @@ -8841,12 +8502,8 @@ $as_echo_n "checking For TKWIN_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${TKWIN_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8859,12 +8516,8 @@ $as_echo "using TKWIN_STUB_LIB_PATH ${TKWIN_STUB_LIB_PATH}" >&6; } vars="${TKWIN_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8892,12 +8545,8 @@ $as_echo_n "checking For tkwin_STUB library for LIBS... " >&6; } vars="\"`${CYGPATH} ${tkwin_STUB_LIB_PATH}`\"" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -8910,12 +8559,8 @@ $as_echo "using tkwin_STUB_LIB_PATH ${tkwin_STUB_LIB_PATH}" >&6; } vars="${tkwin_STUB_LIB_SPEC}" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -9654,20 +9299,6 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu - INSTALL='$(SHELL) $(srcdir)/tclconfig/install-sh -c' - INSTALL_DATA_DIR='${INSTALL} -d -m 755' - INSTALL_DATA='${INSTALL} -m 644' - INSTALL_PROGRAM='${INSTALL}' - INSTALL_SCRIPT='${INSTALL}' - INSTALL_LIBRARY='${INSTALL_DATA}' - - - - - - - - #-------------------------------------------------------------------- # Checks to see if the make program sets the $MAKE variable. #-------------------------------------------------------------------- @@ -10339,480 +9970,6 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; esac - if test "${TEA_PLATFORM}" = "unix" ; then - - #-------------------------------------------------------------------- - # On a few very rare systems, all of the libm.a stuff is - # already in libc.a. Set compiler flags accordingly. - # Also, Linux requires the "ieee" library for math to work - # right (and it must appear before "-lm"). - #-------------------------------------------------------------------- - - ac_fn_c_check_func "$LINENO" "sin" "ac_cv_func_sin" -if test "x$ac_cv_func_sin" = xyes; then : - MATH_LIBS="" -else - MATH_LIBS="-lm" -fi - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lieee" >&5 -$as_echo_n "checking for main in -lieee... " >&6; } -if ${ac_cv_lib_ieee_main+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lieee $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - -int -main () -{ -return main (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_ieee_main=yes -else - ac_cv_lib_ieee_main=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ieee_main" >&5 -$as_echo "$ac_cv_lib_ieee_main" >&6; } -if test "x$ac_cv_lib_ieee_main" = xyes; then : - MATH_LIBS="-lieee $MATH_LIBS" -fi - - - #-------------------------------------------------------------------- - # Interactive UNIX requires -linet instead of -lsocket, plus it - # needs net/errno.h to define the socket-related error codes. - #-------------------------------------------------------------------- - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -linet" >&5 -$as_echo_n "checking for main in -linet... " >&6; } -if ${ac_cv_lib_inet_main+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-linet $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - -int -main () -{ -return main (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_inet_main=yes -else - ac_cv_lib_inet_main=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_inet_main" >&5 -$as_echo "$ac_cv_lib_inet_main" >&6; } -if test "x$ac_cv_lib_inet_main" = xyes; then : - LIBS="$LIBS -linet" -fi - - ac_fn_c_check_header_mongrel "$LINENO" "net/errno.h" "ac_cv_header_net_errno_h" "$ac_includes_default" -if test "x$ac_cv_header_net_errno_h" = xyes; then : - - -$as_echo "#define HAVE_NET_ERRNO_H 1" >>confdefs.h - -fi - - - - #-------------------------------------------------------------------- - # Check for the existence of the -lsocket and -lnsl libraries. - # The order here is important, so that they end up in the right - # order in the command line generated by make. Here are some - # special considerations: - # 1. Use "connect" and "accept" to check for -lsocket, and - # "gethostbyname" to check for -lnsl. - # 2. Use each function name only once: can't redo a check because - # autoconf caches the results of the last check and won't redo it. - # 3. Use -lnsl and -lsocket only if they supply procedures that - # aren't already present in the normal libraries. This is because - # IRIX 5.2 has libraries, but they aren't needed and they're - # bogus: they goof up name resolution if used. - # 4. On some SVR4 systems, can't use -lsocket without -lnsl too. - # To get around this problem, check for both libraries together - # if -lsocket doesn't work by itself. - #-------------------------------------------------------------------- - - tcl_checkBoth=0 - ac_fn_c_check_func "$LINENO" "connect" "ac_cv_func_connect" -if test "x$ac_cv_func_connect" = xyes; then : - tcl_checkSocket=0 -else - tcl_checkSocket=1 -fi - - if test "$tcl_checkSocket" = 1; then - ac_fn_c_check_func "$LINENO" "setsockopt" "ac_cv_func_setsockopt" -if test "x$ac_cv_func_setsockopt" = xyes; then : - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for setsockopt in -lsocket" >&5 -$as_echo_n "checking for setsockopt in -lsocket... " >&6; } -if ${ac_cv_lib_socket_setsockopt+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsocket $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char setsockopt (); -int -main () -{ -return setsockopt (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_socket_setsockopt=yes -else - ac_cv_lib_socket_setsockopt=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_setsockopt" >&5 -$as_echo "$ac_cv_lib_socket_setsockopt" >&6; } -if test "x$ac_cv_lib_socket_setsockopt" = xyes; then : - LIBS="$LIBS -lsocket" -else - tcl_checkBoth=1 -fi - -fi - - fi - if test "$tcl_checkBoth" = 1; then - tk_oldLibs=$LIBS - LIBS="$LIBS -lsocket -lnsl" - ac_fn_c_check_func "$LINENO" "accept" "ac_cv_func_accept" -if test "x$ac_cv_func_accept" = xyes; then : - tcl_checkNsl=0 -else - LIBS=$tk_oldLibs -fi - - fi - ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname" -if test "x$ac_cv_func_gethostbyname" = xyes; then : - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5 -$as_echo_n "checking for gethostbyname in -lnsl... " >&6; } -if ${ac_cv_lib_nsl_gethostbyname+:} false; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lnsl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char gethostbyname (); -int -main () -{ -return gethostbyname (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_nsl_gethostbyname=yes -else - ac_cv_lib_nsl_gethostbyname=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5 -$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; } -if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then : - LIBS="$LIBS -lnsl" -fi - -fi - - - # TEA specific: Don't perform the eval of the libraries here because - # DL_LIBS won't be set until we call TEA_CONFIG_CFLAGS - - TCL_LIBS='${DL_LIBS} ${LIBS} ${MATH_LIBS}' - - - - - { $as_echo "$as_me:${as_lineno-$LINENO}: checking dirent.h" >&5 -$as_echo_n "checking dirent.h... " >&6; } -if ${tcl_cv_dirent_h+:} false; then : - $as_echo_n "(cached) " >&6 -else - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <sys/types.h> -#include <dirent.h> -int -main () -{ - -#ifndef _POSIX_SOURCE -# ifdef __Lynx__ - /* - * Generate compilation error to make the test fail: Lynx headers - * are only valid if really in the POSIX environment. - */ - - missing_procedure(); -# endif -#endif -DIR *d; -struct dirent *entryPtr; -char *p; -d = opendir("foobar"); -entryPtr = readdir(d); -p = entryPtr->d_name; -closedir(d); - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - tcl_cv_dirent_h=yes -else - tcl_cv_dirent_h=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $tcl_cv_dirent_h" >&5 -$as_echo "$tcl_cv_dirent_h" >&6; } - - if test $tcl_cv_dirent_h = no; then - -$as_echo "#define NO_DIRENT_H 1" >>confdefs.h - - fi - - # TEA specific: - ac_fn_c_check_header_mongrel "$LINENO" "errno.h" "ac_cv_header_errno_h" "$ac_includes_default" -if test "x$ac_cv_header_errno_h" = xyes; then : - -else - -$as_echo "#define NO_ERRNO_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "float.h" "ac_cv_header_float_h" "$ac_includes_default" -if test "x$ac_cv_header_float_h" = xyes; then : - -else - -$as_echo "#define NO_FLOAT_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "values.h" "ac_cv_header_values_h" "$ac_includes_default" -if test "x$ac_cv_header_values_h" = xyes; then : - -else - -$as_echo "#define NO_VALUES_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "limits.h" "ac_cv_header_limits_h" "$ac_includes_default" -if test "x$ac_cv_header_limits_h" = xyes; then : - -$as_echo "#define HAVE_LIMITS_H 1" >>confdefs.h - -else - -$as_echo "#define NO_LIMITS_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$ac_includes_default" -if test "x$ac_cv_header_stdlib_h" = xyes; then : - tcl_ok=1 -else - tcl_ok=0 -fi - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strtol" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strtoul" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <stdlib.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strtod" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - if test $tcl_ok = 0; then - -$as_echo "#define NO_STDLIB_H 1" >>confdefs.h - - fi - ac_fn_c_check_header_mongrel "$LINENO" "string.h" "ac_cv_header_string_h" "$ac_includes_default" -if test "x$ac_cv_header_string_h" = xyes; then : - tcl_ok=1 -else - tcl_ok=0 -fi - - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <string.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strstr" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -#include <string.h> - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "strerror" >/dev/null 2>&1; then : - -else - tcl_ok=0 -fi -rm -f conftest* - - - # See also memmove check below for a place where NO_STRING_H can be - # set and why. - - if test $tcl_ok = 0; then - -$as_echo "#define NO_STRING_H 1" >>confdefs.h - - fi - - ac_fn_c_check_header_mongrel "$LINENO" "sys/wait.h" "ac_cv_header_sys_wait_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_wait_h" = xyes; then : - -else - -$as_echo "#define NO_SYS_WAIT_H 1" >>confdefs.h - -fi - - - ac_fn_c_check_header_mongrel "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default" -if test "x$ac_cv_header_dlfcn_h" = xyes; then : - -else - -$as_echo "#define NO_DLFCN_H 1" >>confdefs.h - -fi - - - - # OS/390 lacks sys/param.h (and doesn't need it, by chance). - for ac_header in sys/param.h -do : - ac_fn_c_check_header_mongrel "$LINENO" "sys/param.h" "ac_cv_header_sys_param_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_param_h" = xyes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_SYS_PARAM_H 1 -_ACEOF - -fi - -done - - - # Let the user call this, because if it triggers, they will - # need a compat/strtod.c that is correct. Users can also - # use Tcl_GetDouble(FromObj) instead. - #TEA_BUGGY_STRTOD - fi #----------------------------------------------------------------------- @@ -10832,12 +9989,8 @@ done vars="-lstdc++" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -11054,7 +10207,7 @@ $as_echo "${ac_cv_c_tkh}" >&6; } - if test "${PRACTCL_WINDOWINGSYSTEM}" != "x11"; then + if test "${TEA_WINDOWINGSYSTEM}" != "x11"; then # On Windows and Aqua, we need the X compat headers { $as_echo "$as_me:${as_lineno-$LINENO}: checking for X11 header files" >&5 $as_echo_n "checking for X11 header files... " >&6; } @@ -11075,7 +10228,315 @@ $as_echo "${INCLUDE_DIR_NATIVE}" >&6; } # This auto-enables if Tcl was compiled threaded. #-------------------------------------------------------------------- -#TEA_ENABLE_THREADS + + # Check whether --enable-threads was given. +if test "${enable_threads+set}" = set; then : + enableval=$enable_threads; tcl_ok=$enableval +else + tcl_ok=yes +fi + + + if test "${enable_threads+set}" = set; then + enableval="$enable_threads" + tcl_ok=$enableval + else + tcl_ok=yes + fi + + if test "$tcl_ok" = "yes" -o "${TCL_THREADS}" = 1; then + TCL_THREADS=1 + + if test "${TEA_PLATFORM}" != "windows" ; then + # We are always OK on Windows, so check what this platform wants: + + # USE_THREAD_ALLOC tells us to try the special thread-based + # allocator that significantly reduces lock contention + +$as_echo "#define USE_THREAD_ALLOC 1" >>confdefs.h + + +$as_echo "#define _REENTRANT 1" >>confdefs.h + + if test "`uname -s`" = "SunOS" ; then + +$as_echo "#define _POSIX_PTHREAD_SEMANTICS 1" >>confdefs.h + + fi + +$as_echo "#define _THREAD_SAFE 1" >>confdefs.h + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_mutex_init in -lpthread" >&5 +$as_echo_n "checking for pthread_mutex_init in -lpthread... " >&6; } +if ${ac_cv_lib_pthread_pthread_mutex_init+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_mutex_init (); +int +main () +{ +return pthread_mutex_init (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_pthread_pthread_mutex_init=yes +else + ac_cv_lib_pthread_pthread_mutex_init=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_mutex_init" >&5 +$as_echo "$ac_cv_lib_pthread_pthread_mutex_init" >&6; } +if test "x$ac_cv_lib_pthread_pthread_mutex_init" = xyes; then : + tcl_ok=yes +else + tcl_ok=no +fi + + if test "$tcl_ok" = "no"; then + # Check a little harder for __pthread_mutex_init in the same + # library, as some systems hide it there until pthread.h is + # defined. We could alternatively do an AC_TRY_COMPILE with + # pthread.h, but that will work with libpthread really doesn't + # exist, like AIX 4.2. [Bug: 4359] + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __pthread_mutex_init in -lpthread" >&5 +$as_echo_n "checking for __pthread_mutex_init in -lpthread... " >&6; } +if ${ac_cv_lib_pthread___pthread_mutex_init+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char __pthread_mutex_init (); +int +main () +{ +return __pthread_mutex_init (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_pthread___pthread_mutex_init=yes +else + ac_cv_lib_pthread___pthread_mutex_init=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread___pthread_mutex_init" >&5 +$as_echo "$ac_cv_lib_pthread___pthread_mutex_init" >&6; } +if test "x$ac_cv_lib_pthread___pthread_mutex_init" = xyes; then : + tcl_ok=yes +else + tcl_ok=no +fi + + fi + + if test "$tcl_ok" = "yes"; then + # The space is needed + THREADS_LIBS=" -lpthread" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_mutex_init in -lpthreads" >&5 +$as_echo_n "checking for pthread_mutex_init in -lpthreads... " >&6; } +if ${ac_cv_lib_pthreads_pthread_mutex_init+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthreads $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_mutex_init (); +int +main () +{ +return pthread_mutex_init (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_pthreads_pthread_mutex_init=yes +else + ac_cv_lib_pthreads_pthread_mutex_init=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthreads_pthread_mutex_init" >&5 +$as_echo "$ac_cv_lib_pthreads_pthread_mutex_init" >&6; } +if test "x$ac_cv_lib_pthreads_pthread_mutex_init" = xyes; then : + tcl_ok=yes +else + tcl_ok=no +fi + + if test "$tcl_ok" = "yes"; then + # The space is needed + THREADS_LIBS=" -lpthreads" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_mutex_init in -lc" >&5 +$as_echo_n "checking for pthread_mutex_init in -lc... " >&6; } +if ${ac_cv_lib_c_pthread_mutex_init+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lc $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_mutex_init (); +int +main () +{ +return pthread_mutex_init (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_c_pthread_mutex_init=yes +else + ac_cv_lib_c_pthread_mutex_init=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_pthread_mutex_init" >&5 +$as_echo "$ac_cv_lib_c_pthread_mutex_init" >&6; } +if test "x$ac_cv_lib_c_pthread_mutex_init" = xyes; then : + tcl_ok=yes +else + tcl_ok=no +fi + + if test "$tcl_ok" = "no"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_mutex_init in -lc_r" >&5 +$as_echo_n "checking for pthread_mutex_init in -lc_r... " >&6; } +if ${ac_cv_lib_c_r_pthread_mutex_init+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lc_r $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pthread_mutex_init (); +int +main () +{ +return pthread_mutex_init (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_c_r_pthread_mutex_init=yes +else + ac_cv_lib_c_r_pthread_mutex_init=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_r_pthread_mutex_init" >&5 +$as_echo "$ac_cv_lib_c_r_pthread_mutex_init" >&6; } +if test "x$ac_cv_lib_c_r_pthread_mutex_init" = xyes; then : + tcl_ok=yes +else + tcl_ok=no +fi + + if test "$tcl_ok" = "yes"; then + # The space is needed + THREADS_LIBS=" -pthread" + else + TCL_THREADS=0 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Do not know how to find pthread lib on your system - thread support disabled" >&5 +$as_echo "$as_me: WARNING: Do not know how to find pthread lib on your system - thread support disabled" >&2;} + fi + fi + fi + fi + fi + else + TCL_THREADS=0 + fi + # Do checking message here to not mess up interleaved configure output + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for building with threads" >&5 +$as_echo_n "checking for building with threads... " >&6; } + if test "${TCL_THREADS}" = 1; then + +$as_echo "#define TCL_THREADS 1" >>confdefs.h + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (default)" >&5 +$as_echo "yes (default)" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + # TCL_THREADS sanity checking. See if our request for building with + # threads is the same as the way Tcl was built. If not, warn the user. + case ${TCL_DEFS} in + *THREADS=1*) + if test "${TCL_THREADS}" = "0"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: + Building ${PACKAGE_NAME} without threads enabled, but building against Tcl + that IS thread-enabled. It is recommended to use --enable-threads." >&5 +$as_echo "$as_me: WARNING: + Building ${PACKAGE_NAME} without threads enabled, but building against Tcl + that IS thread-enabled. It is recommended to use --enable-threads." >&2;} + fi + ;; + esac + + #-------------------------------------------------------------------- # The statement below defines a collection of symbols related to @@ -11694,12 +11155,8 @@ $as_echo "found $CELIB_DIR" >&6; } vars="ucrt.lib" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -11725,12 +11182,8 @@ $as_echo "found $CELIB_DIR" >&6; } vars="bufferoverflowU.lib" for i in $vars; do if test "${TEA_PLATFORM}" = "windows" -a "$GCC" = "yes" ; then - case $i in - *.lib) - # Convert foo.lib to -lfoo for GCC - i=-l`echo "$i" | sed -e 's/\.[^.]*$//' -e 's/\.lib.*//'` - ;; - esac + # Convert foo.lib to -lfoo for GCC. No-op if not *.lib + i=`echo "$i" | sed -e 's/^\([^-].*\)\.lib$/-l\1/i'` fi PKG_LIBS="$PKG_LIBS $i" done @@ -11881,8 +11334,6 @@ fi CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" SHLIB_LD='${CC} -shared' UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a' - PRACTCL_UNSHARED_LIB_SUFFIX='.a' - LDFLAGS_CONSOLE="-wl,--subsystem,console ${lflags}" LDFLAGS_WINDOW="-wl,--subsystem,windows ${lflags}" @@ -12112,7 +11563,7 @@ fi LDFLAGS="$LDFLAGS -Wl,--export-dynamic" SHLIB_CFLAGS="-fPIC" SHLIB_SUFFIX=".so" - SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS}' + SHLIB_LD='${CC} ${CFLAGS} ${LDFLAGS} -shared' { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inet_ntoa in -lnetwork" >&5 $as_echo_n "checking for inet_ntoa in -lnetwork... " >&6; } if ${ac_cv_lib_network_inet_ntoa+:} false; then : @@ -12339,7 +11790,7 @@ fi CFLAGS_OPTIMIZE="-O2 -fomit-frame-pointer" # TEA specific: use LDFLAGS_DEFAULT instead of LDFLAGS - SHLIB_LD='${CC} -shared ${CFLAGS} ${LDFLAGS_DEFAULT}' + SHLIB_LD='${CC} ${CFLAGS} ${LDFLAGS_DEFAULT} -shared' LDFLAGS="$LDFLAGS -Wl,--export-dynamic" if test $doRpath = yes; then : @@ -12415,39 +11866,23 @@ fi OpenBSD-*) arch=`arch -s` case "$arch" in - vax) - SHLIB_SUFFIX="" - SHARED_LIB_SUFFIX="" - LDFLAGS="" + alpha|sparc64) + SHLIB_CFLAGS="-fPIC" ;; *) - case "$arch" in - alpha|sparc64) - SHLIB_CFLAGS="-fPIC" - ;; - *) - SHLIB_CFLAGS="-fpic" - ;; - esac - SHLIB_LD='${CC} -shared ${SHLIB_CFLAGS}' - SHLIB_SUFFIX=".so" - if test $doRpath = yes; then : - - CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' -fi - LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} - SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so${SHLIB_VERSION}' - LDFLAGS="-Wl,-export-dynamic" - ;; - esac - case "$arch" in - vax) - CFLAGS_OPTIMIZE="-O1" - ;; - *) - CFLAGS_OPTIMIZE="-O2" + SHLIB_CFLAGS="-fpic" ;; esac + SHLIB_LD='${CC} ${SHLIB_CFLAGS} -shared' + SHLIB_SUFFIX=".so" + if test $doRpath = yes; then : + + CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' +fi + LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS} + SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so${SHLIB_VERSION}' + LDFLAGS="-Wl,-export-dynamic" + CFLAGS_OPTIMIZE="-O2" if test "${TCL_THREADS}" = "1"; then : # On OpenBSD: Compile with -pthread @@ -12463,7 +11898,7 @@ fi NetBSD-*) # NetBSD has ELF and can use 'cc -shared' to build shared libs SHLIB_CFLAGS="-fPIC" - SHLIB_LD='${CC} -shared ${SHLIB_CFLAGS}' + SHLIB_LD='${CC} ${SHLIB_CFLAGS} -shared' SHLIB_SUFFIX=".so" LDFLAGS="$LDFLAGS -export-dynamic" if test $doRpath = yes; then : @@ -12480,7 +11915,7 @@ fi fi ;; - FreeBSD-*) + DragonFly-*|FreeBSD-*) # This configuration from FreeBSD Ports. SHLIB_CFLAGS="-fPIC" SHLIB_LD="${CC} -shared" @@ -13114,9 +12549,9 @@ fi case $system in AIX-*) ;; BSD/OS*) ;; - CYGWIN_*|MINGW32_*) ;; + CYGWIN_*|MINGW32_*|MINGW64_*) ;; IRIX*) ;; - NetBSD-*|FreeBSD-*|OpenBSD-*) ;; + NetBSD-*|DragonFly-*|FreeBSD-*|OpenBSD-*) ;; Darwin-*) ;; SCO_SV-3.2*) ;; windows) ;; @@ -13136,13 +12571,11 @@ fi # TEA specific: use PACKAGE_VERSION instead of VERSION SHARED_LIB_SUFFIX='${PACKAGE_VERSION}${SHLIB_SUFFIX}' - fi if test "$UNSHARED_LIB_SUFFIX" = ""; then : # TEA specific: use PACKAGE_VERSION instead of VERSION UNSHARED_LIB_SUFFIX='${PACKAGE_VERSION}.a' - fi if test "${GCC}" = "yes" -a ${SHLIB_SUFFIX} = ".dll"; then @@ -13333,7 +12766,6 @@ $as_echo "#define HAVE_CAST_TO_UNION 1" >>confdefs.h - # These must be called after we do the basic CFLAGS checks and # verify any possible 64-bit or similar switches are necessary @@ -13740,16 +13172,10 @@ $as_echo "enabled $tcl_ok debugging" >&6; } #-------------------------------------------------------------------- - PRACTCL_TOOLSET="gcc" - PRACTCL_VC_MANIFEST_EMBED_DLL=: - PRACTCL_VC_MANIFEST_EMBED_EXE=: - if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes"; then - PRACTCL_TOOLSET="msvc" - PRACTCL_STATIC_LIB="%STLIB_LD% -out:%OUTFILE% %LIBRARY_OBJECTS%" - PRACTCL_SHARED_LIB="%SHLIB_LD% %SHLIB_LD_LIBS% %LDFLAGS_DEFAULT% -out:%OUTFILE% %LIBRARY_OBJECTS%" - MAKE_STATIC_LIB="\${STLIB_LD} -out:\$@ \$(PKG_OBJECTS)" - MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LD_LIBS} \${LDFLAGS_DEFAULT} -out:\$@ \$(PKG_OBJECTS)" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "${TEA_PLATFORM}" = "windows" -a "$GCC" != "yes"; then + MAKE_STATIC_LIB="\${STLIB_LD} -out:\$@ \$(PKG_OBJECTS)" + MAKE_SHARED_LIB="\${SHLIB_LD} \${SHLIB_LD_LIBS} \${LDFLAGS_DEFAULT} -out:\$@ \$(PKG_OBJECTS)" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #if defined(_MSC_VER) && _MSC_VER >= 1400 @@ -13760,12 +13186,10 @@ _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "manifest needed" >/dev/null 2>&1; then : - # Could do a CHECK_PROG for mt, but should always be with MSVC8+ - PRACTCL_VC_MANIFEST_EMBED_DLL="mt.exe -nologo -manifest %OUTFILE%.manifest -outputresource:%OUTFILE%\;2" - PRACTCL_VC_MANIFEST_EMBED_EXE="mt.exe -nologo -manifest %OUTFILE%.manifest -outputresource:%OUTFILE%\;1" - VC_MANIFEST_EMBED_DLL="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;2 ; fi" - VC_MANIFEST_EMBED_EXE="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;1 ; fi" - MAKE_SHARED_LIB="${MAKE_SHARED_LIB} ; ${VC_MANIFEST_EMBED_DLL}" + # Could do a CHECK_PROG for mt, but should always be with MSVC8+ + VC_MANIFEST_EMBED_DLL="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;2 ; fi" + VC_MANIFEST_EMBED_EXE="if test -f \$@.manifest ; then mt.exe -nologo -manifest \$@.manifest -outputresource:\$@\;1 ; fi" + MAKE_SHARED_LIB="${MAKE_SHARED_LIB} ; ${VC_MANIFEST_EMBED_DLL}" CLEANFILES="$CLEANFILES *.manifest" @@ -13773,89 +13197,73 @@ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | fi rm -f conftest* - PRACTCL_STUB_LIB="%STLIB_LD% -nodefaultlib -out:%OUTFILE% %LIBRARY_OBJECTS%" - MAKE_STUB_LIB="\${STLIB_LD} -nodefaultlib -out:\$@ \$(PKG_STUB_OBJECTS)" - else - MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(PKG_OBJECTS)" - MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(PKG_OBJECTS) \${SHLIB_LD_LIBS}" - MAKE_STUB_LIB="\${STLIB_LD} \$@ \$(PKG_STUB_OBJECTS)" + MAKE_STUB_LIB="\${STLIB_LD} -nodefaultlib -out:\$@ \$(PKG_STUB_OBJECTS)" + else + MAKE_STATIC_LIB="\${STLIB_LD} \$@ \$(PKG_OBJECTS)" + MAKE_SHARED_LIB="\${SHLIB_LD} -o \$@ \$(PKG_OBJECTS) \${SHLIB_LD_LIBS}" + MAKE_STUB_LIB="\${STLIB_LD} \$@ \$(PKG_STUB_OBJECTS)" + fi - PRACTCL_STATIC_LIB="%STLIB_LD% %OUTFILE% %LIBRARY_OBJECTS%" - PRACTCL_SHARED_LIB="%SHLIB_LD% -o %OUTFILE% %LIBRARY_OBJECTS% %SHLIB_LD_LIBS%" - PRACTCL_STUB_LIB="%STLIB_LD% %OUTFILE% %LIBRARY_OBJECTS%" - fi + if test "${SHARED_BUILD}" = "1" ; then + MAKE_LIB="${MAKE_SHARED_LIB} " + else + MAKE_LIB="${MAKE_STATIC_LIB} " + fi - if test "${SHARED_BUILD}" = "1" ; then - MAKE_LIB="${MAKE_SHARED_LIB} " - else - MAKE_LIB="${MAKE_STATIC_LIB} " - fi + #-------------------------------------------------------------------- + # Shared libraries and static libraries have different names. + # Use the double eval to make sure any variables in the suffix is + # substituted. (@@@ Might not be necessary anymore) + #-------------------------------------------------------------------- - #-------------------------------------------------------------------- - # Shared libraries and static libraries have different names. - # Use the double eval to make sure any variables in the suffix is - # substituted. (@@@ Might not be necessary anymore) - #-------------------------------------------------------------------- - if test "${TEA_PLATFORM}" = "windows" ; then - PRACTCL_NAME_LIBRARY="%LIBRARY_PREFIX%%LIBRARY_NAME%%LIBRARY_VERSION_NODOTS%" - if test "${SHARED_BUILD}" = "1" ; then + if test "${TEA_PLATFORM}" = "windows" ; then + if test "${SHARED_BUILD}" = "1" ; then # We force the unresolved linking of symbols that are really in # the private libraries of Tcl and Tk. if test x"${TK_BIN_DIR}" != x ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TK_BIN_DIR}/${TK_STUB_LIB_FILE}`\"" + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TK_BIN_DIR}/${TK_STUB_LIB_FILE}`\"" fi SHLIB_LD_LIBS="${SHLIB_LD_LIBS} \"`${CYGPATH} ${TCL_BIN_DIR}/${TCL_STUB_LIB_FILE}`\"" if test "$GCC" = "yes"; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -static-libgcc" + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -static-libgcc" fi eval eval "PKG_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" - else + else eval eval "PKG_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" if test "$GCC" = "yes"; then - PKG_LIB_FILE=lib${PKG_LIB_FILE} + PKG_LIB_FILE=lib${PKG_LIB_FILE} fi - fi - # Some packages build their own stubs libraries - eval eval "PKG_STUB_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" - if test "$GCC" = "yes"; then - PKG_STUB_LIB_FILE=lib${PKG_STUB_LIB_FILE} - fi - # These aren't needed on Windows (either MSVC or gcc) - RANLIB=: - RANLIB_STUB=: - else - PRACTCL_NAME_LIBRARY="lib%LIBRARY_PREFIX%%LIBRARY_NAME%%LIBRARY_VERSION%" - RANLIB_STUB="${RANLIB}" - if test "${SHARED_BUILD}" = "1" ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TCL_STUB_LIB_SPEC}" - if test x"${TK_BIN_DIR}" != x ; then - SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TK_STUB_LIB_SPEC}" - fi - eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" - RANLIB=: + fi + # Some packages build their own stubs libraries + eval eval "PKG_STUB_LIB_FILE=${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" + if test "$GCC" = "yes"; then + PKG_STUB_LIB_FILE=lib${PKG_STUB_LIB_FILE} + fi + # These aren't needed on Windows (either MSVC or gcc) + RANLIB=: + RANLIB_STUB=: else - eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" + RANLIB_STUB="${RANLIB}" + if test "${SHARED_BUILD}" = "1" ; then + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TCL_STUB_LIB_SPEC}" + if test x"${TK_BIN_DIR}" != x ; then + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} ${TK_STUB_LIB_SPEC}" + fi + eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${SHARED_LIB_SUFFIX}" + RANLIB=: + else + eval eval "PKG_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}${UNSHARED_LIB_SUFFIX}" + fi + # Some packages build their own stubs libraries + eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" fi - # Some packages build their own stubs libraries - eval eval "PKG_STUB_LIB_FILE=lib${PACKAGE_LIB_PREFIX}${PACKAGE_NAME}stub${UNSHARED_LIB_SUFFIX}" - fi - - # Store the raw CFLAGS before we add the trimmings - PRACTCL_CFLAGS=${CFLAGS} - # These are escaped so that only CFLAGS is picked up at configure time. - # The other values will be substituted at make time. - CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" - if test "${SHARED_BUILD}" = "1" ; then - CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" - fi - - - - - - - + # These are escaped so that only CFLAGS is picked up at configure time. + # The other values will be substituted at make time. + CFLAGS="${CFLAGS} \${CFLAGS_DEFAULT} \${CFLAGS_WARNING}" + if test "${SHARED_BUILD}" = "1" ; then + CFLAGS="${CFLAGS} \${SHLIB_CFLAGS}" + fi @@ -13877,31 +13285,7 @@ rm -f conftest* { $as_echo "$as_me:${as_lineno-$LINENO}: checking for tclsh" >&5 $as_echo_n "checking for tclsh... " >&6; } - - -# Check whether --with-tclsh was given. -if test "${with_tclsh+set}" = set; then : - withval=$with_tclsh; with_tclsh=${withval} -fi - - # Use the value from --with-tclsh, if it was given - TCLSH_PROG=0 - if test x"${with_tclsh}" != x ; then - if test -f "${with_tclsh}" ; then - TCLSH_PROG=${with_tclsh} - else - if test -f "${with_tclsh}/tcl8.6" ; then - TCLSH_PROG="${with_tclsh}/tcl8.6" - else - if test -f "${with_tclsh}/tclsh86.exe" ; then - TCLSH_PROG="${with_tclsh}/tclsh86.exe" - else - as_fn_error $? "${with_tclsh} does not point to a valid Tcl executable" "$LINENO" 5 - fi - fi - fi - else - if test -f "${TCL_BIN_DIR}/Makefile" ; then + if test -f "${TCL_BIN_DIR}/Makefile" ; then # tclConfig.sh is in Tcl build directory if test "${TEA_PLATFORM}" = "windows"; then if test -f "${TCL_BIN_DIR}/tclsh${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${TCL_DBGX}${EXEEXT}" ; then @@ -13916,7 +13300,7 @@ fi else TCLSH_PROG="${TCL_BIN_DIR}/tclsh" fi - else + else # tclConfig.sh is in install location if test "${TEA_PLATFORM}" = "windows"; then TCLSH_PROG="tclsh${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${TCL_DBGX}${EXEEXT}" @@ -13933,8 +13317,7 @@ fi fi done TCLSH_PROG="${REAL_TCL_BIN_DIR}${TCLSH_PROG}" - fi - fi + fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${TCLSH_PROG}" >&5 $as_echo "${TCLSH_PROG}" >&6; } @@ -13942,13 +13325,27 @@ $as_echo "${TCLSH_PROG}" >&6; } #TEA_PROG_WISH #-------------------------------------------------------------------- -# Finally, substitute all of the various values into the Makefile. -# You may alternatively have a special pkgIndex.tcl.in or other files -# which require substituting th AC variables in. Include these here. +# Setup a *Config.sh.in configuration file. +#-------------------------------------------------------------------- + +#TEA_EXPORT_CONFIG([sample]) +#AC_SUBST(SAMPLE_VAR) + +#-------------------------------------------------------------------- +# Specify files to substitute AC variables in. You may alternatively +# have a special pkgIndex.tcl.in or other files which require +# substituting the AC variables in. Include these here. #-------------------------------------------------------------------- ac_config_files="$ac_config_files Makefile" +#AC_CONFIG_FILES([sampleConfig.sh]) + +#-------------------------------------------------------------------- +# Finally, substitute all of the various values into the files +# specified with AC_CONFIG_FILES. +#-------------------------------------------------------------------- + cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure @@ -14493,7 +13890,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by ds9 $as_me 8.0, which was +This file was extended by ds9 $as_me 8.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -14546,7 +13943,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -ds9 config.status 8.0 +ds9 config.status 8.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/ds9/win/configure.ac b/ds9/win/configure.ac index b44fbc3..c5be2df 100644 --- a/ds9/win/configure.ac +++ b/ds9/win/configure.ac @@ -19,7 +19,7 @@ dnl to configure the system for the local environment. # so that we create the export library with the dll. #----------------------------------------------------------------------- -AC_INIT([ds9], [8.0]) +AC_INIT([ds9], [8.1]) #-------------------------------------------------------------------- # Call TEA_INIT as the first TEA_ macro to set up initial vars. @@ -27,7 +27,7 @@ AC_INIT([ds9], [8.0]) # as well as PKG_LIB_FILE and PKG_STUB_LIB_FILE. #-------------------------------------------------------------------- -TEA_INIT([3.10]) +TEA_INIT() AC_CONFIG_AUX_DIR(../tclconfig) @@ -186,7 +186,7 @@ TEA_PUBLIC_TK_HEADERS # This auto-enables if Tcl was compiled threaded. #-------------------------------------------------------------------- -#TEA_ENABLE_THREADS +TEA_ENABLE_THREADS #-------------------------------------------------------------------- # The statement below defines a collection of symbols related to @@ -229,9 +229,24 @@ TEA_PROG_TCLSH #TEA_PROG_WISH #-------------------------------------------------------------------- -# Finally, substitute all of the various values into the Makefile. -# You may alternatively have a special pkgIndex.tcl.in or other files -# which require substituting th AC variables in. Include these here. +# Setup a *Config.sh.in configuration file. #-------------------------------------------------------------------- -AC_OUTPUT([Makefile]) +#TEA_EXPORT_CONFIG([sample]) +#AC_SUBST(SAMPLE_VAR) + +#-------------------------------------------------------------------- +# Specify files to substitute AC variables in. You may alternatively +# have a special pkgIndex.tcl.in or other files which require +# substituting the AC variables in. Include these here. +#-------------------------------------------------------------------- + +AC_CONFIG_FILES([Makefile]) +#AC_CONFIG_FILES([sampleConfig.sh]) + +#-------------------------------------------------------------------- +# Finally, substitute all of the various values into the files +# specified with AC_CONFIG_FILES. +#-------------------------------------------------------------------- + +AC_OUTPUT() diff --git a/ds9/win/ds9.C b/ds9/win/ds9.C index 4fa228a..f66d1f7 100644 --- a/ds9/win/ds9.C +++ b/ds9/win/ds9.C @@ -241,8 +241,8 @@ int SAOAppInit(Tcl_Interp *interp) // Tkwin32 if (Tkwin32_Init(interp) == TCL_ERROR) return TCL_ERROR; - Tcl_StaticPackage (interp, "tkwin32", Tkwin32_Init, - (Tcl_PackageInitProc*)NULL); + Tcl_StaticPackage (interp, "tkwin32", Tkwin32_Init, + (Tcl_PackageInitProc*)NULL); return TCL_OK; } diff --git a/ds9/win/ds9.rc b/ds9/win/ds9.rc index fa8a7cd..43bf834 100644 --- a/ds9/win/ds9.rc +++ b/ds9/win/ds9.rc @@ -1,10 +1,10 @@ #include <windows.h> -#define VV "8.0.1" +#define VV "8.1b1" VS_VERSION_INFO VERSIONINFO - FILEVERSION 8,0,0,0 - PRODUCTVERSION 8,0,0,0 + FILEVERSION 8,1,0,0 + PRODUCTVERSION 8,1,0,0 FILEFLAGSMASK 0x3fL FILEFLAGS 0x0L FILEOS VOS__WINDOWS32 |