--- Makefile.in.orig Wed Oct 23 19:45:50 2002 +++ Makefile.in Mon Mar 12 18:00:56 2007 @@ -58,6 +58,8 @@ # Directory in which to install the include file tk.h: INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(includedir) +GENERIC_INCLUDE_INSTALL_DIR = $(INCLUDE_INSTALL_DIR)/generic +UNIX_INCLUDE_INSTALL_DIR = $(INCLUDE_INSTALL_DIR)/unix # Top-level directory for manual entries: MAN_INSTALL_DIR = $(INSTALL_ROOT)$(mandir) @@ -100,7 +102,7 @@ #CFLAGS = $(CFLAGS_DEBUG) #CFLAGS = $(CFLAGS_OPTIMIZE) #CFLAGS = $(CFLAGS_DEBUG) $(CFLAGS_OPTIMIZE) -CFLAGS = @CFLAGS@ @CFLAGS_DEFAULT@ +CFLAGS ?= @CFLAGS@ # Flags to pass to the linker LDFLAGS_DEBUG = @LDFLAGS_DEBUG@ @@ -203,7 +205,7 @@ # Libraries to use when linking. This definition is determined by the # configure script. LIBS = @LIBS@ $(X11_LIB_SWITCHES) @DL_LIBS@ @MATH_LIBS@ -WISH_LIBS = $(TCL_LIB_SPEC) @LIBS@ $(X11_LIB_SWITCHES) @DL_LIBS@ @MATH_LIBS@ +WISH_LIBS = -L${PREFIX}/lib -ltcl${SHORT_TK_VER} @LIBS@ $(X11_LIB_SWITCHES) @DL_LIBS@ @MATH_LIBS@ -lc # The symbol below provides support for dynamic loading and shared # libraries. See configure.in for a description of what it means. @@ -352,6 +354,8 @@ default.h ks_names.h tkPatch.h tk.h tkButton.h tkCanvas.h tkInt.h \ tkPort.h tkScrollbar.h tkText.h +INSTALL_HDRS = tk.h tkDecls.h tkInt.h tkIntXlibDecls.h + DEMOPROGS = browse hello ixset rmt rolodex square tcolor timer widget all: binaries libraries doc @@ -371,8 +375,14 @@ ${TK_LIB_FILE}: ${OBJS} rm -f ${TK_LIB_FILE} @MAKE_LIB@ + ln -sf @TK_LIB_FILE@ libtk${SHORT_TK_VER}.so $(RANLIB) ${TK_LIB_FILE} +libtk${SHORT_TK_VER}.a: ${OBJS} + rm -f libtk${SHORT_TK_VER}.a + ar cr libtk${SHORT_TK_VER}.a ${OBJS} + $(RANLIB) libtk${SHORT_TK_VER}.a + ${STUB_LIB_FILE}: ${STUB_LIB_OBJS} rm -f ${STUB_LIB_FILE} @MAKE_STUB_LIB@ @@ -454,13 +464,13 @@ gdb ./wish --command=gdb.run rm gdb.run -install: all install-binaries install-libraries install-demos install-doc +install: all install-binaries install-libraries install-demos # 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: $(TK_LIB_FILE) $(TK_STUB_LIB_FILE) $(TK_BUILD_EXP_FILE) wish +install-binaries: $(TK_LIB_FILE) $(TK_STUB_LIB_FILE) $(TK_BUILD_EXP_FILE) libtk${SHORT_TK_VER}.a wish @for i in $(LIB_INSTALL_DIR) $(BIN_INSTALL_DIR) ; \ do \ if [ ! -d $$i ] ; then \ @@ -478,12 +488,18 @@ fi @echo "Installing $(TK_LIB_FILE) to $(LIB_INSTALL_DIR)/" @$(INSTALL_DATA) $(TK_LIB_FILE) $(LIB_INSTALL_DIR)/$(TK_LIB_FILE) + @ln -sf $(LIB_INSTALL_DIR)/$(TK_LIB_FILE) $(LIB_INSTALL_DIR)/libtk${SHORT_TK_VER}.so @(cd $(LIB_INSTALL_DIR); $(RANLIB) $(TK_LIB_FILE)) @chmod 555 $(LIB_INSTALL_DIR)/$(TK_LIB_FILE) + @echo "Installing libtk${SHORT_TK_VER}.a" + @$(INSTALL_DATA) libtk${SHORT_TK_VER}.a $(LIB_INSTALL_DIR)/libtk${SHORT_TK_VER}.a + @(cd $(LIB_INSTALL_DIR); $(RANLIB) libtk${SHORT_TK_VER}.a) + @chmod 555 $(LIB_INSTALL_DIR)/libtk${SHORT_TK_VER}.a @echo "Installing wish as $(BIN_INSTALL_DIR)/wish$(VERSION)" @$(INSTALL_PROGRAM) wish $(BIN_INSTALL_DIR)/wish$(VERSION) @echo "Installing tkConfig.sh to $(LIB_INSTALL_DIR)/" - @$(INSTALL_DATA) tkConfig.sh $(LIB_INSTALL_DIR)/tkConfig.sh + @mkdir -p $(LIB_INSTALL_DIR)/tk$(VERSION) + @$(INSTALL_DATA) tkConfig.sh $(LIB_INSTALL_DIR)/tk$(VERSION)/tkConfig.sh @if test "$(TK_BUILD_EXP_FILE)" != ""; then \ echo "Installing $(TK_EXP_FILE) to $(LIB_INSTALL_DIR)/"; \ $(INSTALL_DATA) $(TK_BUILD_EXP_FILE) \ @@ -497,6 +513,7 @@ install-libraries: @for i in $(INCLUDE_INSTALL_DIR) \ + $(GENERIC_INCLUDE_INSTALL_DIR) $(UNIX_INCLUDE_INSTALL_DIR) \ $(SCRIPT_INSTALL_DIR) $(SCRIPT_INSTALL_DIR)/images; \ do \ if [ ! -d $$i ] ; then \ @@ -510,10 +527,18 @@ chmod +x $(UNIX_DIR)/install-sh; \ fi @echo "Installing header files"; - @for i in $(GENERIC_DIR)/tk.h $(GENERIC_DIR)/tkPlatDecls.h \ - $(GENERIC_DIR)/tkDecls.h ; \ + @for i in $(GENERIC_DIR)/*.h ; \ + do \ + $(INSTALL_DATA) $$i $(GENERIC_INCLUDE_INSTALL_DIR); \ + done; + @for i in $(UNIX_DIR)/*.h ; \ + do \ + $(INSTALL_DATA) $$i $(UNIX_INCLUDE_INSTALL_DIR); \ + done; + @for i in $(INSTALL_HDRS) ; \ do \ - $(INSTALL_DATA) $$i $(INCLUDE_INSTALL_DIR); \ + j=`basename $$i` ; \ + ln -sf $(GENERIC_INCLUDE_INSTALL_DIR)/$$j $(INCLUDE_INSTALL_DIR)/$$j ; \ done; @echo "Installing library files to $(SCRIPT_INSTALL_DIR)"; @for i in $(SRC_DIR)/library/*.tcl $(GENERIC_DIR)/prolog.ps \ @@ -580,7 +605,6 @@ chmod 444 $(MAN1_INSTALL_DIR)/$$i; \ done; @echo "Cross-linking top-level (.1) docs"; - @$(UNIX_DIR)/mkLinks $(MAN1_INSTALL_DIR) @echo "Installing C API (.3) docs"; @cd $(SRC_DIR)/doc; for i in *.3; \ do \ @@ -590,7 +614,6 @@ chmod 444 $(MAN3_INSTALL_DIR)/$$i; \ done; @echo "Cross-linking top-level (.3) docs"; - @$(UNIX_DIR)/mkLinks $(MAN3_INSTALL_DIR) @echo "Installing command (.n) docs"; @cd $(SRC_DIR)/doc; for i in *.n; \ do \ @@ -600,7 +623,6 @@ chmod 444 $(MANN_INSTALL_DIR)/$$i; \ done; @echo "Cross-linking command (.n) docs"; - @$(UNIX_DIR)/mkLinks $(MANN_INSTALL_DIR) Makefile: $(UNIX_DIR)/Makefile.in $(SHELL) config.status