[prev in list] [next in list] [prev in thread] [next in thread]
List: openbsd-ports
Subject: Re: bad tcl patch
From: Kevin Lo <kevlo () openbsd ! org>
Date: 2002-12-04 6:53:05
[Download RAW message or body]
Marco S Hyman wrote:
> The new patch-Makefile_in in the latest version of tcl is incorrect.
> Specifically, it does a ranlib after libtcl83.a is created, but not
> after the file is installed.
>
> Side effect of this error: XF4 fails to build.
My bad. Please try this diff, thanks.
> // marc
- Kevin
["patch-Makefile_in" (patch-Makefile_in)]
$OpenBSD: patch-Makefile_in,v 1.1 2002/11/29 09:45:51 kevlo Exp $
--- Makefile.in.orig Fri Oct 18 20:44:46 2002
+++ Makefile.in Wed Dec 4 14:42:18 2002
@@ -37,6 +37,9 @@
# when installing files.
INSTALL_ROOT =
+# Path for the platform independent Tcl scripting generic header files:
+TCL_INCLUDE_GENERIC = $(prefix)/include/tcl$(VERSION)/generic
+
# Path for the platform independent Tcl scripting libraries:
TCL_LIBRARY = $(prefix)/lib/tcl$(VERSION)
@@ -407,7 +410,7 @@
all: binaries libraries doc
-binaries: ${TCL_LIB_FILE} $(TCL_STUB_LIB_FILE) $(TCL_BUILD_EXP_FILE) tclsh
+binaries: ${TCL_LIB_FILE} $(TCL_STUB_LIB_FILE) $(TCL_BUILD_EXP_FILE) libtcl83.a \
tclsh
libraries:
@@ -423,7 +426,11 @@
${STUB_LIB_FILE}: ${STUB_LIB_OBJS}
rm -f ${STUB_LIB_FILE}
@MAKE_STUB_LIB@
- $(RANLIB) ${STUB_LIB_FILE}
+
+libtcl83.a: ${OBJS}
+ rm -f libtcl83.a
+ ar cr libtcl83.a ${OBJS}
+ $(RANLIB) libtcl83.a
# 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
@@ -561,6 +568,9 @@
@$(INSTALL_LIBRARY) $(TCL_LIB_FILE) $(LIB_INSTALL_DIR)/$(TCL_LIB_FILE)
@(cd $(LIB_INSTALL_DIR); $(RANLIB) $(TCL_LIB_FILE))
@chmod 555 $(LIB_INSTALL_DIR)/$(TCL_LIB_FILE)
+ @echo "Installing libtcl83.a"
+ @$(INSTALL_DATA) libtcl83.a $(LIB_INSTALL_DIR)/libtcl83.a
+ @chmod 555 $(LIB_INSTALL_DIR)/libtcl83.a
@if test "$(TCL_BUILD_EXP_FILE)" != ""; then \
echo "Installing $(TCL_EXP_FILE) to $(LIB_INSTALL_DIR)/"; \
$(INSTALL_DATA) $(TCL_BUILD_EXP_FILE) \
@@ -569,7 +579,8 @@
@echo "Installing tclsh as $(BIN_INSTALL_DIR)/tclsh$(VERSION)"
@$(INSTALL_PROGRAM) tclsh $(BIN_INSTALL_DIR)/tclsh$(VERSION)
@echo "Installing tclConfig.sh to $(LIB_INSTALL_DIR)/"
- @$(INSTALL_DATA) tclConfig.sh $(LIB_INSTALL_DIR)/tclConfig.sh
+ @mkdir -p $(SCRIPT_INSTALL_DIR)
+ @$(INSTALL_DATA) tclConfig.sh $(SCRIPT_INSTALL_DIR)/tclConfig.sh
@if test "$(TCL_STUB_LIB_FILE)" != "" ; then \
echo "Installing $(TCL_STUB_LIB_FILE) to $(LIB_INSTALL_DIR)/"; \
$(INSTALL_LIBRARY) $(STUB_LIB_FILE) \
@@ -577,7 +588,8 @@
fi
install-libraries: libraries
- @for i in $(INCLUDE_INSTALL_DIR) $(SCRIPT_INSTALL_DIR); \
+ @for i in $(INSTALL_ROOT)$(prefix)/lib \
$(INSTALL_ROOT)$(GENERIC_INCLUDE_INSTALL_DIR) \ + \
$(INSTALL_ROOT)$(UNIX_INCLUDE_INSTALL_DIR) $(SCRIPT_INSTALL_DIR); \ do \
if [ ! -d $$i ] ; then \
echo "Making directory $$i"; \
@@ -599,11 +611,19 @@
chmod +x $(SRC_DIR)/install-sh; \
fi
@echo "Installing header files";
- @for i in $(GENERIC_DIR)/tcl.h $(GENERIC_DIR)/tclDecls.h \
- $(GENERIC_DIR)/tclPlatDecls.h ; \
+ @echo "Installing libraries, tcl.h and other headers"
+ @for i in $(GENERIC_DIR)/*.h ; \
+ do \
+ echo "Installing $$i"; \
+ $(INSTALL_DATA) $$i $(INSTALL_ROOT)$(GENERIC_INCLUDE_INSTALL_DIR); \
+ done;
+ @for i in $(UNIX_DIR)/*.h ; \
do \
- $(INSTALL_DATA) $$i $(INCLUDE_INSTALL_DIR); \
+ $(INSTALL_DATA) $$i $(INSTALL_ROOT)$(UNIX_INCLUDE_INSTALL_DIR); \
done;
+ @ln -sf $(GENERIC_INCLUDE_INSTALL_DIR)/tcl.h $(INCLUDE_INSTALL_DIR)/tcl.h
+ @ln -sf $(GENERIC_INCLUDE_INSTALL_DIR)/tclDecls.h $(INCLUDE_INSTALL_DIR)/tclDecls.h
+ @ln -sf $(GENERIC_INCLUDE_INSTALL_DIR)/tclPlatDecls.h \
$(INCLUDE_INSTALL_DIR)/tclPlatDecls.h @echo "Installing library files to \
$(SCRIPT_INSTALL_DIR)"; @for i in $(TOP_DIR)/library/*.tcl \
$(TOP_DIR)/library/tclIndex $(UNIX_DIR)/tclAppInit.c $(UNIX_DIR)/ldAix; \ do \
@@ -682,6 +702,15 @@
done;
@echo "Cross-linking command (.n) docs";
@$(UNIX_DIR)/mkLinks $(MANN_INSTALL_DIR)
+ @echo "**********"
+ @echo "IMPORTANT:"
+ @echo "**********"
+ @echo "tclConfig.sh in $(TCL_LIBRARY)/tclConfig.sh"
+ @echo "tcl.h in $(TCL_INCLUDE_GENERIC)/tcl.h"
+ @echo "tclDecls.h in $(TCL_INCLUDE_GENERIC)/tclDecls.h"
+ @echo "tclPlatDecls.h in $(TCL_INCLUDE_GENERIC)/tclPlatDecls.h"
+ @echo "These are NOT in the default place, but in a good place to avoid"
+ @echo "conflicting with another version of Tcl/Tk."
Makefile: $(UNIX_DIR)/Makefile.in
$(SHELL) config.status
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic