--- Makefile.in.orig Fri Dec 11 18:36:13 1998 +++ Makefile.in Sat Jan 2 14:47:02 1999 @@ -55,7 +55,9 @@ 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 @@ -86,7 +88,7 @@ #CFLAGS = $(CFLAGS_DEBUG) #CFLAGS = $(CFLAGS_OPTIMIZE) #CFLAGS = $(CFLAGS_DEBUG) $(CFLAGS_OPTIMIZE) -CFLAGS = @CFLAGS@ +CFLAGS? = @CFLAGS@ # To disable ANSI-C procedure prototypes reverse the comment characters @@ -152,7 +154,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 @@ -357,15 +359,21 @@ SRCS = $(GENERIC_SRCS) $(UNIX_SRCS) -all: ${TCL_LIB_FILE} tclsh +all: ${TCL_LIB_FILE} libtcl81.a tclsh # The following target is configured by autoconf to generate either # a shared library or non-shared library for Tcl. ${TCL_LIB_FILE}: ${OBJS} rm -f ${TCL_LIB_FILE} @MAKE_LIB@ + ln -sf ${TCL_LIB_FILE} libtcl81.so $(RANLIB) ${TCL_LIB_FILE} +libtcl81.a: ${OBJS} + rm -f libtcl81.a + ar cr libtcl81.a ${OBJS} + $(RANLIB) libtcl81.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 # extensions. used for the Tcl Plugin. -- dl @@ -459,7 +467,7 @@ # 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) libtcl81.a tclsh @for i in $(LIB_INSTALL_DIR) $(BIN_INSTALL_DIR) ; \ do \ if [ ! -d $$i ] ; then \ @@ -471,16 +479,22 @@ done; @echo "Installing $(TCL_LIB_FILE)" @$(INSTALL_DATA) $(TCL_LIB_FILE) $(LIB_INSTALL_DIR)/$(TCL_LIB_FILE) + @ln -sf $(TCL_LIB_FILE) $(LIB_INSTALL_DIR)/libtcl81.so @(cd $(LIB_INSTALL_DIR); $(RANLIB) $(TCL_LIB_FILE)) @chmod 555 $(LIB_INSTALL_DIR)/$(TCL_LIB_FILE) + @echo "Installing libtcl81.a" + @$(INSTALL_DATA) libtcl81.a $(LIB_INSTALL_DIR)/libtcl81.a + @(cd $(LIB_INSTALL_DIR); $(RANLIB) libtcl81.a) + @chmod 555 $(LIB_INSTALL_DIR)/libtcl81.a @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"; \ @@ -498,8 +512,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"; \ @@ -531,30 +552,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