1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
|
--- Makefile.in.orig Wed Aug 12 06:02:00 1998
+++ Makefile.in Mon Apr 5 18:10:47 1999
@@ -55,7 +55,8 @@
BIN_INSTALL_DIR = $(INSTALL_ROOT)$(exec_prefix)/bin
# Directory in which to install the include file itcl.h:
-INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include
+INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/itcl$(VERSION)
+GENERIC_INCLUDE_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/include/itcl$(VERSION)/generic
# Top-level directory in which to install manual entries:
MAN_INSTALL_DIR = $(INSTALL_ROOT)$(prefix)/man
@@ -75,6 +76,9 @@
# get the correct path:
TCL_SRC_DIR = @TCL_SRC_DIR@
+# Tcl include dir
+TCL_INC_DIR = @TCL_INC_DIR@
+
# The directory containing the Tcl library archive file appropriate
# for this version of Tk:
TCL_LIB_DIR = @TCL_LIB_DIR@
@@ -115,7 +119,7 @@
# "install" around; better to use the install-sh script that comes
# with the distribution, which is slower but guaranteed to work.
-INSTALL = $(TOP_DIR)/../config/install-sh -c
+INSTALL = install -c
INSTALL_PROGRAM = ${INSTALL}
INSTALL_DATA = ${INSTALL} -m 644
MKINSTALLDIRS = $(TOP_DIR)/../config/mkinstalldirs
@@ -158,7 +162,7 @@
CC = @CC@
CC_SWITCHES = $(CFLAGS) $(SHLIB_CFLAGS) -I$(UNIX_DIR) -I$(GENERIC_DIR) \
--I$(TCL_SRC_DIR)/generic $(AC_FLAGS) $(PROTO_FLAGS) $(MEM_DEBUG_FLAGS) \
+-I$(TCL_INC_DIR)/generic $(AC_FLAGS) $(PROTO_FLAGS) $(MEM_DEBUG_FLAGS) \
-DITCL_LIBRARY=\"$(ITCL_LIBRARY)\"
SRCS = $(GENERIC_DIR)/itcl_bicmds.c \
@@ -178,13 +182,19 @@
itcl_linkage.o itcl_methods.o itcl_migrate.o itcl_objects.o \
itcl_obsolete.o itcl_parse.o itcl_util.o
-all: $(ITCL_LIB_FILE) itclsh
+all: $(ITCL_LIB_FILE) libitcl30.a itclsh
@ITCL_LIB_FILE@: $(OBJS)
rm -f $(ITCL_LIB_FILE)
@MAKE_LIB@
+ ln -sf $(ITCL_LIB_FILE) libitcl30.so
$(RANLIB) $(ITCL_LIB_FILE)
+libitcl30.a: $(OBJS)
+ rm -f libitcl30.a
+ ar cr libitcl30.a $(OBJS)
+ ranlib libitcl30.a
+
itclsh: tclAppInit.o $(ITCL_LIB_FILE)
$(CC) @LD_FLAGS@ tclAppInit.o @ITCL_BUILD_LIB_SPEC@ \
$(LIBS) $(LD_SEARCH_FLAGS) -o itclsh
@@ -199,21 +209,28 @@
install: install-binaries install-libraries install-man
-install-binaries: $(ITCL_LIB_FILE) itclsh
+install-binaries: $(ITCL_LIB_FILE) libitcl30.a itclsh
@$(MKINSTALLDIRS) $(LIB_INSTALL_DIR) $(BIN_INSTALL_DIR)
@echo "Installing $(ITCL_LIB_FILE)"
@$(INSTALL_DATA) $(ITCL_LIB_FILE) $(LIB_INSTALL_DIR)/$(ITCL_LIB_FILE)
@(cd $(LIB_INSTALL_DIR); $(RANLIB) $(ITCL_LIB_FILE))
chmod 555 $(LIB_INSTALL_DIR)/$(ITCL_LIB_FILE)
+ @echo "Installing libitcl30.a"
+ @$(INSTALL_DATA) libitcl30.a $(LIB_INSTALL_DIR)/libitcl30.a
+ @(cd $(LIB_INSTALL_DIR); $(RANLIB) libitcl30.a)
+ chmod 555 $(LIB_INSTALL_DIR)/libitcl30.a
@echo "Installing itclsh"
$(INSTALL_PROGRAM) itclsh $(BIN_INSTALL_DIR)/itclsh$(VERSION)
@echo "Installing itclConfig.sh"
- @$(INSTALL_DATA) itclConfig.sh $(LIB_INSTALL_DIR)/itclConfig.sh
+ @mkdir -p $(SCRIPT_INSTALL_DIR)
+ @$(INSTALL_DATA) itclConfig.sh $(SCRIPT_INSTALL_DIR)/itclConfig.sh
install-libraries:
- @$(MKINSTALLDIRS) $(INCLUDE_INSTALL_DIR) $(SCRIPT_INSTALL_DIR)
- @echo "Installing itcl.h"
- @$(INSTALL_DATA) $(GENERIC_DIR)/itcl.h $(INCLUDE_INSTALL_DIR)
+ @$(MKINSTALLDIRS) $(INCLUDE_INSTALL_DIR) $(GENERIC_INCLUDE_INSTALL_DIR) $(SCRIPT_INSTALL_DIR)
+ @echo "Installing itcl.h and itclInt.h"
+ @$(INSTALL_DATA) $(GENERIC_DIR)/itcl.h $(GENERIC_INCLUDE_INSTALL_DIR)
+ @$(INSTALL_DATA) $(GENERIC_DIR)/itclInt.h $(GENERIC_INCLUDE_INSTALL_DIR)
+ @ln -sf $(GENERIC_INCLUDE_INSTALL_DIR)/itcl.h $(INCLUDE_INSTALL_DIR)/itcl.h
@for i in $(TOP_DIR)/library/*.* $(UNIX_DIR)/tclAppInit.c; \
do \
echo "Installing $$i"; \
@@ -227,19 +244,26 @@
@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;
@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;
+ @echo "**********"
+ @echo "IMPORTANT:"
+ @echo "**********"
+ @echo "itclConfig.sh in $(SCRIPT_INSTALL_DIR)/itclConfig.sh"
+ @echo "itcl.h in $(INCLUDE_INSTALL_DIR)/itcl.h"
+ @echo "There are NOT default place, but good place to avoid"
+ @echo "conflicting with another version of [incr] Tcl/Tks."
Makefile: $(UNIX_DIR)/Makefile.in
$(SHELL) config.status
|