Bug 34210 - Tcl port screws up tclConfig.sh
Summary: Tcl port screws up tclConfig.sh
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Dirk Meyer
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-01-23 16:50 UTC by Peter Eisentraut
Modified: 2002-01-27 14:26 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Eisentraut 2002-01-23 16:50:01 UTC
In the port lang/tcl84, file files/patch-configure, revision 1.5 (might
apply to earlier revisions, other branches, other Tcl ports as well) you
set SHLIB_LD="ld -shared -x -soname \$@".  This gets substituted into
tclConfig.sh as TCL_SHLIB_LD which others software packages are supposed
to use to build with Tcl support.  This leads to two problems:

If I use TCL_SHLIB_LD to build a shared library linked against libtcl,
how do you know my makefile target is the soname I want?

tclConfig.sh isn't a makefile, it's a shell script.  Notice how some
lines in tclConfig.sh contain single-quoted variable references:  you're
supposed to "eval" each of these lines in a shell before using them, so
if you have a $@ in there you get completely wrong results.

Fix: 

Revert this change and patch the makefiles if you want the soname in
there. =OR= Make sure that this alteration of SHLIB_LD is reverted before
it's subsituted into TCL_SHLIB_LD.
How-To-Repeat: Install any recent version of PostgreSQL from source with Tcl support on
a recent FreeBSD.  Most likely to mess up a lot of other Tcl-using
programs as well.
Comment 1 Dirk Meyer freebsd_committer freebsd_triage 2002-01-27 09:12:40 UTC
Responsible Changed
From-To: freebsd-ports->dinoex

I will look into this.
Comment 2 Dirk Meyer freebsd_committer freebsd_triage 2002-01-27 14:25:02 UTC
State Changed
From-To: open->closed

A fix has been commited for tcl82 tcl83 and tcl84