Commit graph

19 commits

Author SHA1 Message Date
jlam
18fc23567b Fix the installed tclConfig.sh so it's possible to use its values to generate
a shared library that depends on libtcl83.so.  The TCL_SHLIB_LD command was
set to the incorrect value for ELF platforms, relying on "ld" which doesn't
understand the -Wl,... options it receives via ${TCL_LIB_SPEC}.  Patch the
configure script to set TCL_SHLIB_LD to the proper value on NetBSD systems
depending on whether they are ELF or a.out, and also modify TCL_LIB_SPEC
to include -Wl,-rpath,... or -R...  accordingly.

Bump version number to 8.3.2nb2.
2001-05-24 02:58:15 +00:00
jlam
3d47adb084 Sort. 2001-05-12 06:05:31 +00:00
agc
8118fe36ae Move to sha1 digests, and add distfile sizes. 2001-04-19 15:00:47 +00:00
agc
fb467f5ac2 + move the distfile digest/checksum value from files/md5 to distinfo
+ move the patch digest/checksum values from files/patch-sum to distinfo
2001-04-17 11:22:34 +00:00
hubertf
d32e698de6 Cleanup MKDIR usage => INSTALL_*_DIR
XXX need to teach pkglint to be more picky about this
2001-02-25 04:17:35 +00:00
agc
82acd159f7 Move the COMMENT from being in its own file to a definition in the
package Makefile.
2001-02-17 09:06:56 +00:00
wiz
20766df5be Don't hardwire -O. From Adam Ciarcinski. 2001-01-24 20:13:39 +00:00
he
323b045b4b Add a point patch pulled from development version of tcl, so that
``while 1 { close [open /dev/null r] }'' does not leak memory for
each go-around.  This corresponds to sourceforge bugid #117988.
Bump PKGNAME to tcl-8.3.2nb1.
2001-01-24 18:42:33 +00:00
agc
9c2d582fc9 The way that shared objects were handled in the PLISTs and bsd.pkg.mk was
out of date - it was based on a.out OBJECT_FMT, and added entries in the
generated PLISTs to reflect the symlinks that ELF packages uses. It also
tried to be clever, and removed and recreated any symbolic links that were
created, which has resulted in some fun, especially with packages which
use dlopen(3) to load modules. Some recent changes to our ld.so to bring
it more into line with other Operating Systems also exposed some cracks.

+ Modify bsd.pkg.mk and its shared object handling, so that PLISTs now contain
the ELF symlinks.
+ Don't mess about with file system entries when handling shared objects in
bsd.pkg.mk, since it's likely that libtool and the BSD *.mk processing will
have got it right, and have a much better idea than we do.
+ Modify PLISTs to contain "ELF symlinks"
+ On a.out platforms, delete any "ELF symlinks" from the generated PLISTs
+ On ELF platforms, no extra processing needs to be done in bsd.pkg.mk
+ Modify print-PLIST target in bsd.pkg.mk to add dummy symlink entries on
a.out platforms
+ Update the documentation in Packages.txt

With many thanks to Thomas Klausner for keeping me honest with this.
2001-01-04 15:10:17 +00:00
jlam
1708f27d93 Honor CFLAGS passed in from the environment during build. 2000-12-08 20:41:18 +00:00
wiz
fa5c7a12ab remove one MASTERSITE (wouldn't let me log in), add three others 2000-09-02 15:59:53 +00:00
fredb
f7c085b82b Regen 2000-09-01 16:41:33 +00:00
jwise
a14829cb4f Since the configure script comes up with different shared lib suffixes on
different versions/platforms of NetBSD, use

	$(TCL_LIB_FILE:C/\.so.*/.la/)

instead of

	$(TCL_LIB_FILE:.so=.la)

to derive the libtool archive name from the shared library name.

From Frederick Bruckman, addresses PR pkg/10924.
2000-09-01 16:20:47 +00:00
tron
a712a6c2ea Add mirror on "ftp.informatik.uni-hamburg.de" to master site list. 2000-08-30 08:35:13 +00:00
jwise
faeeab4d35 Restore RCS Id accidentally lost from a patch, and make this conflict with
tclman80-*, as this package installs tcl and it's documentation.
2000-08-29 20:23:58 +00:00
jwise
b316add08e Fix bug in last commit -- new value of tcl_pkgPath was lost. 2000-08-29 18:27:44 +00:00
jwise
c7fdbad17d Rework shared library runtime search flags slightly, and improve the
values of such flags that get exported in ${PREFIX}/lib/tclConfig.sh
2000-08-29 15:13:43 +00:00
jwise
544e0a6750 Quick aesthetic fix. Tcl as shipped leaves two @foo@ cookies in the generated
tclConfig.sh.  Even thought we have nothing to sub in for these, sub them out.
2000-08-24 22:48:15 +00:00
jwise
3b10a1042d Initial import of new pkgsrc/lang/tcl (tcl-8.3.2) package, partly derived
from the older pkgsrc/lang/tcl-8.0.5.

This is an update of the tcl package from version 8.0.5 to version 8.3.2,
and also a slight change in the organization of tcl packages.

This will be added disabled to pkgsrc/lang/Makefile until I finish updating
tk and all tcl-based packags.

Changes from out of the box tcl-8.3.2:

	Both static and shared libtcl83.* are installed, thanks to
	the magic of libtool.

	$tcl_platform(machine) is set to ${MACHINE_ARCH}, not ${MACHINE},
	thanks to the patch to tcl-8.0 from Dan McMahill.  This makes
	sharing of binary packages of tcl and tcl extensions easier.

Changes to the package since tcl-8.0.5:

	$tcl_pkgPath is now set to ${PREFIX}/lib/tcl instead of ${PREFIX}/lib
	and packages which install tcl extensions will be updated to install
	there.  This produces less clutter in ${PREFIX}/lib, and mirrors the
	usage of java and elisp extension packages.

	A symlink to ${PREFIX}/bin/tclsh8.3.2 is installed as ${PREFIX}/bin/tclsh
	This change and the above are designed to allow tcl-using packages to
	not depend on any particular version of tcl.

	public tcl include files and the tcl configuration information script
	are now installed in their standard places (${PREFIX}/include/tcl.h,
	${PREFIX}/include/tclDecls.h, and ${PREFIX}/lib/tclConfig.sh), and
	private tcl include files are now installed in ${PREFIX}/include/tcl.
	This change allows tcl extension packages to work out of the box, and
	to not need modification when tcl is updated.  When extension package
	authors use the new libtclstubs*.a API, this even allows binary packages
	of dynamically-loadable tcl extensions to be used with newer versions of
	tcl without recompilation.

Here are the new features in tcl-8.3.x as opposed to 8.0.x.  I am not including
bug fixes as this represents about 18 months of them.

New Features since Tcl 8.2:
------------------------------

Improved clarity of error messages, especially for common programming
mistakes.

New lsort -unique switch to uniqify lists when sorting.

Enhanced glob command to provide simpler and more powerful cross-platform
file listing functionality.

File date stamping through "file atime" and "file mtime" and support for
chmod style permissions setting in file attributes -permissions on Unix.

New file channels command to obtain list of open channels.

"scan" command can now be used inline to return a list of values.

"regexp" has new -start, -all and -inline switches.

New "array unset" command.

New -milliseconds granularity option to "clock clicks".

Tcl optimization improvements, as well as numerous bug fixes.

Overhaul of the clock command to improve grammar and add support for
common ISO 8601 date/time formats.

Improved build support for numerous platforms.

New Features since Tcl 8.1.1
----------------------------------

Optimized string index, length, range, and append commands. Added a
new Unicode object type.

Added Tcl_RegExpMatchObj and Tcl_RegExpGetInfo
to public Tcl API, these functions are needed by Expect.  Changed
tools/genStubs.tcl to always write output in LF mode.

Merged string and Unicode object types.  Added new public Tcl API
functions:  Tcl_NewUnicodeObj, Tcl_SetUnicodeObj,
Tcl_GetUnicode, Tcl_GetUniChar, Tcl_GetCharLength, Tcl_GetRange,
Tcl_AppendUnicodeToObj.

Changed to conform to TEA specification, added tcl.m4 and aclocal.m4
macro libraries for configure.

Added new regexp interfaces: -expanded, -line, -linestop, and
-lineanchor switches.  Renamed Tcl_RegExpMatchObj to
Tcl_RegExpExecObj and added new Tcl_RegExpMatchObj that is equivalent
to Tcl_RegExpMatch.  Added public macros for regexp flags.  Added
REG_BOSONLY flag to allow Expect to iterate through a string and only
find matches that start at the current position within the
string.

Updated Unicode character tables to reflect Unicode 2.1 data.

Added initial implementation of new Tcl test harness package.
Modified test files to use new tcltest package.

Applied patch from Peter Hardie to add poke command to dde and changed
the dde package version number to 1.1.

Added options to tcltest package: -preservecore, -limitconstraints,
-help, -file, -notfile, and flags.

Changed parsing of variable names to allow empty array names.
Now "$(foo)" is a variable reference.  Previously you had to use
something line $::(foo), which is slower.  This change was
requested by Jean-Luc Fontaine for his STOOOP package.

Added Tcl_SetNotifier (public API) and associated hook points in the
notifiers to be able to replace the notifier calls at runtime. The
Xt notifier and test program use this hook.

Added a new variant of the "Trf core patch" from Andreas Kupries
that adds new C APIs Tcl_StackChannel, Tcl_UnstackChannel, and
Tcl_GetStackedChannel.  This allows the Trf extension to work without
applying patches to the Tcl core.

Added -timeout option to http.tcl to handle timeouts that occur during
connection attempts to hosts that are down.

New features since Tcl 8.1:
---------------------------

Applied Jeff Hobbs' string patch which includes the following changes:
   new subcommands: equal, repeat, map, is, replace
    -length option to "string compare|equal"
    -nocase option to "string compare|equal|match"
    string and list indices can be an integer or end?-integer?.
    added optional first and last index args to string toupper, et al.
See the string.n manual entry for more details about the new string features.

Applied Jeff Hobb's patch to add Tcl_StringCaseMatch to support case
insensitive glob style matching and Tcl_UniCharIs* character classification
functions.

Added Tcl_UtfNcmp and Tcl_UtfNcasecmp to make Utf string comparision easier.

Replaced the per-interpreter regexp cache with a per-thread cache.  Changed
the Regexp object to take advantage of this extra cache.  Added a reference
count to the TclRegexp type so regexps can be shared by multiple objects.
Removed the per-interp regexp cache from the interpreter.  Now regexps can be
used with no need for an interpreter. This set of changes should provide
significant speed improvements for many Tcl scripts.

Applied the patch to fix 100-year and 400-year boundaries in leap year code,
from Isaac Hollander.

New features since Tcl 8.0.5:
-----------------------------
Full Unicode support and a message catalog for internationalization.

Thread-safety for Tcl and Tk.

A new regular expression package by Henry Spencer that adds many
advanced features: non-greedy quantifiers, bounds, positive
and negative lookahead, collating elements, equivalence classes,
several built-in character classes, and comments.  In addition,
the regular expression engine works on Unicode strings to make
this the best regular expression package available anywhere.

Integrated the stub library mechanism contributed by Paul Duffin,
Jan Nijtmans, and Jean-Claude Wippler.  This feature will make it
possible to write extensions that support multiple versions of Tcl
simultaneously.  It also makes it possible to dynamically load
extensions into statically linked interpreters.  This patch includes
the following changes:
      - Added a Tcl_InitStubs() interface
      - Added Tcl_PkgProvideEx, Tcl_PkgRequireEx, Tcl_PkgPresentEx,
        and Tcl_PkgPresent.
More information about using the stubs interface in your extensions
can be found at http://www.scriptics.com/support/howto/stubs.html

Added a message catalog facility to Tcl.  This adds several commands
in the "msgcat" package.  Thanks to Mark Harrison for contributing
the initial implementation.

Added the "encoding" command that facilitate translations of strings
between different character encodings.

Added "string totitle" command to convert strings to capitalize the
first character of a string and lowercase all of the other characters.

-----

Whew...  If you're still reading, thanks.  Enjoy!
2000-08-24 19:53:32 +00:00