d7d29df148
PR: ports/10815 Submitted by: maintainer
241 lines
8.8 KiB
Plaintext
241 lines
8.8 KiB
Plaintext
--- configure.in.ORIG Wed Mar 24 11:07:36 1999
|
|
+++ configure.in Wed Mar 24 11:08:21 1999
|
|
@@ -851,15 +851,21 @@
|
|
NetBSD-*|FreeBSD-*|OpenBSD-*)
|
|
# Not available on all versions: check for include file.
|
|
AC_CHECK_HEADER(dlfcn.h, [
|
|
+ # FreeBSD-current supports elf format, now.
|
|
+ if test "X$PORTOBJFORMAT" = "Xelf"; then
|
|
+ SHLIB_LD='${CC} -shared -Wl,-x'
|
|
+ TCL_SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}\$\{DBGX\}.so.1'
|
|
+ else
|
|
+ SHLIB_LD="ld -Bshareable -x"
|
|
+ TCL_SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}\$\{DBGX\}.so.1.5'
|
|
+ fi
|
|
SHLIB_CFLAGS="-fpic"
|
|
- SHLIB_LD="ld -Bshareable -x"
|
|
SHLIB_LD_LIBS=""
|
|
SHLIB_SUFFIX=".so"
|
|
DL_OBJS="tclLoadDl.o"
|
|
DL_LIBS=""
|
|
LD_FLAGS=""
|
|
LD_SEARCH_FLAGS=""
|
|
- TCL_SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}\$\{DBGX\}.so.1.0'
|
|
], [
|
|
SHLIB_CFLAGS=""
|
|
SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r"
|
|
@@ -1222,6 +1228,7 @@
|
|
if test "$TCL_UNSHARED_LIB_SUFFIX" = "" ; then
|
|
TCL_UNSHARED_LIB_SUFFIX='${VERSION}\$\{DBGX\}.a'
|
|
fi
|
|
+TCL_STATIC_LIB_FILE=""
|
|
AC_ARG_ENABLE(shared,
|
|
[ --enable-shared build libtcl as a shared library],
|
|
[tcl_ok=$enableval], [tcl_ok=no])
|
|
@@ -1230,10 +1237,15 @@
|
|
TCL_SHLIB_CFLAGS="${SHLIB_CFLAGS}"
|
|
TCL_LD_SEARCH_FLAGS="${LD_SEARCH_FLAGS}"
|
|
eval "TCL_LIB_FILE=libtcl${TCL_SHARED_LIB_SUFFIX}"
|
|
+ eval "TCL_STATIC_LIB_FILE=libtcl${TCL_UNSHARED_LIB_SUFFIX}"
|
|
if test "x$DL_OBJS" = "xtclLoadAout.o"; then
|
|
MAKE_LIB="ar cr \${TCL_LIB_FILE} \${OBJS}"
|
|
else
|
|
- MAKE_LIB="\${SHLIB_LD} -o \${TCL_LIB_FILE} \${OBJS} ${SHLIB_LD_LIBS}"
|
|
+ if test "X$PORTOBJFORMAT" = "Xelf"; then
|
|
+ MAKE_LIB="\${SHLIB_LD} -o \${TCL_LIB_FILE} \${OBJS} -Wl,-soname,${TCL_LIB_FILE} ${SHLIB_LD_LIBS}"
|
|
+ else
|
|
+ MAKE_LIB="\${SHLIB_LD} -o \${TCL_LIB_FILE} \${OBJS} ${SHLIB_LD_LIBS}"
|
|
+ fi
|
|
RANLIB=":"
|
|
fi
|
|
else
|
|
@@ -1274,6 +1286,7 @@
|
|
# Trick to replace DBGX with TCL_DBGX
|
|
DBGX='${TCL_DBGX}'
|
|
eval "TCL_LIB_FILE=${TCL_LIB_FILE}"
|
|
+eval "TCL_STATIC_LIB_FILE=${TCL_STATIC_LIB_FILE}"
|
|
|
|
VERSION='${VERSION}'
|
|
eval "CFG_TCL_SHARED_LIB_SUFFIX=${TCL_SHARED_LIB_SUFFIX}"
|
|
@@ -1313,6 +1326,7 @@
|
|
AC_SUBST(TCL_BUILD_LIB_SPEC)
|
|
AC_SUBST(TCL_LD_SEARCH_FLAGS)
|
|
AC_SUBST(TCL_LIB_FILE)
|
|
+AC_SUBST(TCL_STATIC_LIB_FILE)
|
|
AC_SUBST(TCL_LIB_FLAG)
|
|
AC_SUBST(TCL_LIB_SPEC)
|
|
AC_SUBST(TCL_LIB_VERSIONS_OK)
|
|
--- Makefile.in.ORIG Wed Mar 24 11:07:50 1999
|
|
+++ Makefile.in Wed Mar 24 11:12:47 1999
|
|
@@ -55,11 +55,16 @@
|
|
BIN_INSTALL_DIR = $(INSTALL_ROOT)$(exec_prefix)/bin
|
|
|
|
# Directory in which to install the include file tcl.h:
|
|
-INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include
|
|
+INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/tcl$(VERSION)
|
|
+GENERIC_INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/tcl$(VERSION)/generic
|
|
+UNIX_INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/tcl$(VERSION)/unix
|
|
|
|
# Top-level directory in which to install manual entries:
|
|
MAN_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/man
|
|
|
|
+# Directory in which to install sharedable other documents:
|
|
+DOC_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/share/doc/tcl$(VERSION)
|
|
+
|
|
# Directory in which to install manual entry for tclsh:
|
|
MAN1_INSTALL_DIR = $(MAN_INSTALL_DIR)/man1
|
|
|
|
@@ -151,7 +156,7 @@
|
|
# "install" around; better to use the install-sh script that comes
|
|
# with the distribution, which is slower but guaranteed to work.
|
|
|
|
-INSTALL = @srcdir@/install-sh -c
|
|
+INSTALL = install -c
|
|
INSTALL_PROGRAM = ${INSTALL}
|
|
INSTALL_DATA = ${INSTALL} -m 644
|
|
|
|
@@ -184,6 +189,7 @@
|
|
#BUILD_DLTEST =
|
|
|
|
TCL_LIB_FILE = @TCL_LIB_FILE@
|
|
+TCL_STATIC_LIB_FILE= @TCL_STATIC_LIB_FILE@
|
|
#TCL_LIB_FILE = libtcl.a
|
|
|
|
TCL_LIB_FLAG = @TCL_LIB_FLAG@
|
|
@@ -336,7 +342,11 @@
|
|
|
|
SRCS = $(GENERIC_SRCS) $(UNIX_SRCS) $(KANJI_SRCS)
|
|
|
|
-all: ${TCL_LIB_FILE} tclsh
|
|
+DOCS = $(TOP_DIR)/README $(TOP_DIR)/changes $(TOP_DIR)/README.JP \
|
|
+ $(TOP_DIR)/Incompat80jp $(TOP_DIR)/changes.JP \
|
|
+ $(UNIX_DIR)/README.FreeBSD
|
|
+
|
|
+all: ${TCL_LIB_FILE} ${TCL_STATIC_LIB_FILE} tclsh
|
|
|
|
# The following target is configured by autoconf to generate either
|
|
# a shared library or non-shared library for Tcl.
|
|
@@ -344,6 +354,14 @@
|
|
rm -f ${TCL_LIB_FILE}
|
|
@MAKE_LIB@
|
|
$(RANLIB) ${TCL_LIB_FILE}
|
|
+.if ${PORTOBJFORMAT}X == elfX
|
|
+ ln -sf ${TCL_LIB_FILE} `echo ${TCL_LIB_FILE} | sed 's/\.so.*$$/.so/'`
|
|
+.endif
|
|
+
|
|
+${TCL_STATIC_LIB_FILE}: ${OBJS}
|
|
+ rm -f ${TCL_STATIC_LIB_FILE}
|
|
+ ar cr ${TCL_STATIC_LIB_FILE} ${OBJS}
|
|
+ $(RANLIB) ${TCL_STATIC_LIB_FILE}
|
|
|
|
# Make target which outputs the list of the .o contained in the Tcl lib
|
|
# usefull to build a single big shared library containing Tcl and other
|
|
@@ -432,13 +450,13 @@
|
|
cd dltest; if test -f configure; then ./configure; else \
|
|
$(DLTEST_DIR)/configure; fi
|
|
|
|
-install: install-binaries install-libraries install-man
|
|
+install: install-binaries install-libraries
|
|
|
|
# Note: before running ranlib below, must cd to target directory because
|
|
# some ranlibs write to current directory, and this might not always be
|
|
# possible (e.g. if installing as root).
|
|
|
|
-install-binaries: $(TCL_LIB_FILE) tclsh
|
|
+install-binaries: $(TCL_LIB_FILE) $(TCL_STATIC_LIB_FILE) tclsh
|
|
@for i in $(LIB_INSTALL_DIR) $(BIN_INSTALL_DIR) ; \
|
|
do \
|
|
if [ ! -d $$i ] ; then \
|
|
@@ -451,15 +469,23 @@
|
|
@echo "Installing $(TCL_LIB_FILE)"
|
|
@$(INSTALL_DATA) $(TCL_LIB_FILE) $(LIB_INSTALL_DIR)/$(TCL_LIB_FILE)
|
|
@(cd $(LIB_INSTALL_DIR); $(RANLIB) $(TCL_LIB_FILE))
|
|
+.if ${PORTOBJFORMAT}X == elfX
|
|
+ @(cd $(LIB_INSTALL_DIR); ln -sf ${TCL_LIB_FILE} `echo ${TCL_LIB_FILE} | sed 's/\.so.*$$/.so/'`)
|
|
+.endif
|
|
@chmod 555 $(LIB_INSTALL_DIR)/$(TCL_LIB_FILE)
|
|
+ @echo "Installing $(TCL_STATIC_LIB_FILE)"
|
|
+ @$(INSTALL_DATA) $(TCL_STATIC_LIB_FILE) $(LIB_INSTALL_DIR)/$(TCL_STATIC_LIB_FILE)
|
|
+ @(cd $(LIB_INSTALL_DIR); $(RANLIB) $(TCL_STATIC_LIB_FILE))
|
|
+ @chmod 555 $(LIB_INSTALL_DIR)/$(TCL_STATIC_LIB_FILE)
|
|
@echo "Installing tclsh"
|
|
@$(INSTALL_PROGRAM) tclsh $(BIN_INSTALL_DIR)/tclsh$(VERSION)
|
|
@echo "Installing tclConfig.sh"
|
|
- @$(INSTALL_DATA) tclConfig.sh $(LIB_INSTALL_DIR)/tclConfig.sh
|
|
+ @mkdir -p $(SCRIPT_INSTALL_DIR)
|
|
+ @$(INSTALL_DATA) tclConfig.sh $(SCRIPT_INSTALL_DIR)/tclConfig.sh
|
|
|
|
install-libraries:
|
|
- @for i in $(INSTALL_ROOT)$(prefix)/lib $(INCLUDE_INSTALL_DIR) \
|
|
- $(SCRIPT_INSTALL_DIR); \
|
|
+ @for i in $(INSTALL_ROOT)$(prefix)/lib $(GENERIC_INCLUDE_INSTALL_DIR) \
|
|
+ $(UNIX_INCLUDE_INSTALL_DIR) $(SCRIPT_INSTALL_DIR); \
|
|
do \
|
|
if [ ! -d $$i ] ; then \
|
|
echo "Making directory $$i"; \
|
|
@@ -477,8 +503,15 @@
|
|
else true; \
|
|
fi; \
|
|
done;
|
|
- @echo "Installing tcl.h"
|
|
- @$(INSTALL_DATA) $(GENERIC_DIR)/tcl.h $(INCLUDE_INSTALL_DIR)/tcl.h
|
|
+ @echo "Installing libraries, tcl.h and other headers"
|
|
+ @for i in $(GENERIC_DIR)/*.h ; \
|
|
+ do \
|
|
+ echo "Installing $$i"; \
|
|
+ $(INSTALL_DATA) $$i $(GENERIC_INCLUDE_INSTALL_DIR); \
|
|
+ done;
|
|
+ @ln -sf $(GENERIC_INCLUDE_INSTALL_DIR)/tcl.h $(INCLUDE_INSTALL_DIR)/tcl.h
|
|
+ @echo "Installing $(TOP_DIR)unix/tclUnixPort.h"
|
|
+ @$(INSTALL_DATA) $(TOP_DIR)/unix/tclUnixPort.h $(UNIX_INCLUDE_INSTALL_DIR)
|
|
@for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex $(UNIX_DIR)/tclAppInit.c $(UNIX_DIR)/ldAix; \
|
|
do \
|
|
echo "Installing $$i"; \
|
|
@@ -506,30 +539,37 @@
|
|
@cd $(TOP_DIR)/doc; for i in *.1; \
|
|
do \
|
|
echo "Installing doc/$$i"; \
|
|
- rm -f $(MAN1_INSTALL_DIR)/$$i; \
|
|
+ rm -f $(MAN1_INSTALL_DIR)/$$i $(MAN1_INSTALL_DIR)/$$i.gz ; \
|
|
sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
|
|
- $$i > $(MAN1_INSTALL_DIR)/$$i; \
|
|
- chmod 444 $(MAN1_INSTALL_DIR)/$$i; \
|
|
+ $$i | gzip -c > $(MAN1_INSTALL_DIR)/$$i.gz; \
|
|
+ chmod 444 $(MAN1_INSTALL_DIR)/$$i.gz; \
|
|
done;
|
|
$(UNIX_DIR)/mkLinks $(MAN1_INSTALL_DIR)
|
|
@cd $(TOP_DIR)/doc; for i in *.3; \
|
|
do \
|
|
echo "Installing doc/$$i"; \
|
|
- rm -f $(MAN3_INSTALL_DIR)/$$i; \
|
|
+ rm -f $(MAN3_INSTALL_DIR)/$$i $(MAN3_INSTALL_DIR)/$$i.gz ; \
|
|
sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
|
|
- $$i > $(MAN3_INSTALL_DIR)/$$i; \
|
|
- chmod 444 $(MAN3_INSTALL_DIR)/$$i; \
|
|
+ $$i | gzip -c > $(MAN3_INSTALL_DIR)/$$i.gz; \
|
|
+ chmod 444 $(MAN3_INSTALL_DIR)/$$i.gz; \
|
|
done;
|
|
$(UNIX_DIR)/mkLinks $(MAN3_INSTALL_DIR)
|
|
@cd $(TOP_DIR)/doc; for i in *.n; \
|
|
do \
|
|
echo "Installing doc/$$i"; \
|
|
- rm -f $(MANN_INSTALL_DIR)/$$i; \
|
|
+ rm -f $(MANN_INSTALL_DIR)/$$i $(MANN_INSTALL_DIR)/$$i.gz; \
|
|
sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
|
|
- $$i > $(MANN_INSTALL_DIR)/$$i; \
|
|
- chmod 444 $(MANN_INSTALL_DIR)/$$i; \
|
|
+ $$i | gzip -c > $(MANN_INSTALL_DIR)/$$i.gz; \
|
|
+ chmod 444 $(MANN_INSTALL_DIR)/$$i.gz; \
|
|
done;
|
|
$(UNIX_DIR)/mkLinks $(MANN_INSTALL_DIR)
|
|
+ @echo "**********"
|
|
+ @echo "IMPORTANT:"
|
|
+ @echo "**********"
|
|
+ @echo "tclConfig.sh in $(SCRIPT_INSTALL_DIR)/tclConfig.sh"
|
|
+ @echo "tcl.h in $(INCLUDE_INSTALL_DIR)/tcl.h"
|
|
+ @echo "There are NOT default place, but good place to avoid"
|
|
+ @echo "conflicting with another version of Tcl/Tks."
|
|
|
|
Makefile: $(UNIX_DIR)/Makefile.in
|
|
$(SHELL) config.status
|