summaryrefslogtreecommitdiffstats
path: root/lang/itcl/files/patch-aa
blob: 3520e7d3ed0136ed8be75e3432cdec45f3be8b73 (plain)
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
OpenPOWER on IntegriCloud