Commit graph

35 commits

Author SHA1 Message Date
drochner
ed0d96bfa5 add hooks to plug in a non-threaded version of libtcl.so (needed for
embedding into non-threaded programs) without duplicating anything else
2004-06-22 18:34:09 +00:00
jwise
708eae5f4d Reverse previous commit (disabling thread-safety), which was poorly though
through, unacceptably breaks threaded apps, and was made without consulting
the package's maintainer.

To quote my mail to packages@:

I am reversing this change.

With this change, tcl is _not_ usable in threaded apps, while without
this change, tcl is perfectly usable in non-threaded apps.

The fix for a package which is incorrectly written is not to break the
package it depends on, but do your job correctly when writing the
package.

With buildlink3, this is mind-numbingly easy to do.

That you neither contacted the maintainer of this package, nor did the
buildlink and dependent package changes which your change requires shows
that you have not really thought this through.

So, as I said, I am reversing this change.  Fix your own package, don't
break others.
2004-06-15 16:39:12 +00:00
drochner
0d9ac4a765 Don't --enable-threads for now. If we do this, all potential users of
libtcl.so/libtk.so (whether linking it in or dlopen() it) must be linked
against libpthread. This is something we can't guarantee.
Fixes bulk build error in py-imagingtk and numerous runtime problems.
2004-06-15 16:17:48 +00:00
minskim
38df5f6cb3 Install regex.h, which is used in tclRegexp.h.
While here, simplify header installation in Makefile by replacing many
INSTALL commands with a for-loop.

Bump PKGREVISION.
2004-05-12 23:50:15 +00:00
danw
1ebcb21bea Fix up some Makefile logic that got broken by the libtool patches (and
prevented it from building on some platforms). Ensure that the built
library is named libtcl84 (as opposed to libtcl8.4) on all platforms.
2004-04-09 23:37:28 +00:00
jlam
98196bcc44 Fix tcl/tk configure script stupidity: it overwrote the value of LDFLAGS
that accumulates within itself with a do-nothing version because it tried
to re-use LDFLAGS for another purpose.  This broke all library checks after
the "checking for ELF" step.  Fix this by (duh) not re-using LDFLAGS but
by using a different variable.  Bump the PKGREVISIONs of lang/tcl and
x11/tk.

This fixes building the threaded versions of tcl and tk.
2004-03-25 22:49:14 +00:00
jwise
0b05178f11 Now that we build tcl/tk with thread safety enabled, pull pthread buildlink
glue into the tcl buildlink glue.

Also, update buildlink dependencies appropriately.

Pointed out by wiz@netbsd.org.
2004-03-24 15:24:36 +00:00
jwise
73345802b3 Build thread-safe versions of tcl and tk. Bump PKG_REVISION to nb1 to match. 2004-03-22 16:14:02 +00:00
minskim
9c121e17ff Update Tcl/Tk to 8.4.6.
* Tcl_Obj sharing fixed in [binary scan]
  * Updated errno usage for recent glibc
  * Fixed [file normalize ~unknownuser] error
  * Fixed two memory leaks in VFS code
  * Fixed possible infinite loop in TclFinalizeFilesystem
  * Updated HP-UX 11 build libraries setup
  * Unix std channels forced to exist at startup
  * Stopped broken [exec] quoting of '{'
  * Fixed memory leak with very long host names
  * Corrected level interpretation of Tcl_CreateTrace
  * Allow 64-bit configure on IRIX64-6.5*
  * Several OS X/Aqua native integration improvements (scrollbar,
    event generate, unicode clipboard, tk_messageBox, mousewheel event,
    alpha blending for partially transparent images)
  * Recognized native hand2/fleur cursors on Windows
  * Post menubuttons so they stay on screen better
  * Fixed crash during intra-image copy/resize
  * New msg catalogs for Esperanto and Polish
  * Corrections bold/italic font handling (width calculations) on Windows
  * Fixed shrinking grid geometry calculations
2004-03-08 22:14:18 +00:00
minskim
194b9321a0 Update tcl to 8.4.5. Too many changes since 8.3.4. Please see
ChangeLog in the distfile.
2004-03-08 19:55:35 +00:00
minskim
2e42b35dac Remove a temporary directory created at post-install, so that a
non-root user can 'make clean'.  Approved by wiz@.
2004-02-09 23:19:27 +00:00
minskim
a89fef0347 Set permission of man directories correctly. Approved by wiz@. 2004-02-07 17:37:24 +00:00
agc
3ad1bdbf06 Move WRKSRC definition away from the first paragraph in a Makefile. 2004-01-20 12:18:15 +00:00
jlam
2c03f435c8 bl3ify 2004-01-05 11:17:10 +00:00
jschauma
5be33375e5 Apply patches from cyber@ provided in PR pkg/22688 to make this work under
Darwin.
2003-10-08 03:13:21 +00:00
grant
0155927c43 s/netbsd.org/NetBSD.org/ 2003-07-17 21:41:05 +00:00
grant
afdebcf9a4 make ${PAX} usage consistent:
- group 'zrw' and 'p' args, -s last
- use the && operator consistently
- strip unneeded parens
- some whitespace cleanup
2003-04-10 01:28:03 +00:00
jmmv
0916498c1b Place WRKSRC where it belongs, to make pkglint happy; ok'ed by wiz. 2003-03-29 12:40:00 +00:00
dillo
5f4ad95078 convert to use test target from bsd.pkg.mk
addresses PR pkg/19416
2003-02-17 15:27:58 +00:00
jlam
e2afa97f51 Merge changes in packages from the buildlink2 branch that have
buildlink2.mk files back into the main trunk.  This provides sufficient
buildlink2 infrastructure to start merging other packages from the
buildlink2 branch that have already been converted to use the buildlink2
framework.
2002-08-25 18:38:05 +00:00
jlam
81dbd3c75a Touch a few files that are modified as part of post-build so that they're
not rebuilt at install-time.
2002-03-20 18:04:04 +00:00
bjoern
78ca1bc313 Update to version 8.3.4
Besides more bug fixes and several enhancements some of the
NetBSD relevant changes (taken from "changes" in the
distribution):


2001-04-03 (doc fixes) numerous doc corrections and clarifications.
Update of READMEs.

2001-03-29 (bug fix) prevent potential race condition and security leak in
tmp filename creation on Unix. (max)

2001-03-13 (bug fix) Correctly possible memory corruption in string map {}
$str (fellows)

2001-01-30 (bug fix) Fixed possible hangs in fcopy. (porter)

2000-11-23 (mem leak) fixed potential memory leak in error case of lsort
(fellows)

2000-11-01 (mem leak) Corrected excessive mem use of info exists on a
non-existent array element (hobbs)

2000-09-27 (bug fix) fixed a bug introduced by a partial fix in 8.3.2 that
didn't set nonBlocking correctly when resetting the flags for the write
side (mem leak) Correct mem leak in channels when statePtr was released
(hobbs)

2001-07-18 (bug fix) corrected memory overwrite error when buffer size
of a channel is changed after channel use has already begun (kupries, porter)

2001-08-07 (bug fix) corrected bytecode stack management during [break]
(see test foreach-5.5) (sofer, tallneil, jstrot)

2001-08-08 (new features) updated packages msgcat 1.1.1, opt 0.4.3,
tcltest 1.0.1, dependencies checked (porter)

2001-08-24 (bug fix) [auto_import] now matches patterns like
[namespace import], not like [string match] (porter)
        **** POTENTIAL INCOMPATABILITY ****

2001-08-27 (new feature) added Tcl_SetMainLoop() to enable loading Tk as a
true package (hobbs)

2001-09-06 (new feature) http 2.4: honor the Content-encoding and charset
parameters; add -binary switch for forcing the issue (hobbs, saoukhi, orwell)

2001-09-10 (bug fix) protect against alias loops (hobbs)

2001-09-19 (bug fix) [format] and [scan] corrected for 64-bit machines (rmax)

2001-09-26 (bug fix) corrected potential deadlock in channels that do not
provide a BlockModeProc (kupries, kogorman)

2001-10-11 (bug fix) corrected cleanup of self-referential bytecodes at
interpreter deletion (sofer, rbrunner)
2001-12-23 17:02:30 +00:00
hubertf
5542206cba Get rid of manually adding "nbX" to PKGNAME when a pkg was changed in
pkgsrc. Instead, a new variable PKGREVISION is invented that can get
bumped independent of DISTNAME and PKGNAME.

Example #1:
        DISTNAME=       foo-X.Y
        PKGREVISION=    Z
     => PKGNAME=        foo-X.YnbZ

Example #2:
        DISTNAME=       barthing-X.Y
        PKGNAME=        bar-X.Y
        PKGREVISION=    Z
     => PKGNAME=        bar=X.YnbZ (!)

On subsequent changes, only PKGREVISION needs to be bumped, no more risk
of getting DISTNAME changed accidentally.
2001-11-29 01:12:24 +00:00
jlam
f79573370a Mechanical changes to 375 files to change dependency patterns of the form
foo-* to foo-[0-9]*.  This is to cause the dependencies to match only the
packages whose base package name is "foo", and not those named "foo-bar".
A concrete example is p5-Net-* matching p5-Net-DNS as well as p5-Net.  Also
change dependency examples in Packages.txt to reflect this.
2001-09-27 23:17:41 +00:00
jlam
27a2e05d4d Force no optimization (-O0) on NetBSD-1.5.x/m68k machines as there appears
to be an optimization bug that causes the build to fail (pkg/13395).  The
problem appeared in the original PR on an Amiga running NetBSD 1.5.1 and
also on a mac68k running NetBSD 1.5.1.  This workaround was tested on the
mac68k system (kindly provided by Jon Lindgren).
2001-07-25 19:42:58 +00:00
jlam
898abf64ac - Don't install the short names for section 3 manpages as the names are
too generic, e.g. Hash, Object, Access.  Approved by jwise@netbsd.org.
- Touch ${TCL_LIB_FILE} after the build so that the library isn't relinked
  during installation.
2001-06-30 18:24:17 +00:00
jlam
bcabc1fab9 Mark as USE_BUILDLINK_ONLY. 2001-06-21 18:07:51 +00:00
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
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
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
wiz
fa5c7a12ab remove one MASTERSITE (wouldn't let me log in), add three others 2000-09-02 15:59:53 +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
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