summaryrefslogtreecommitdiff
path: root/Makefile.in
blob: 6adc9a42bb7d4761ee5b49e0f0313f4835245df9 (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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
#	$LAAS$

#
# Copyright (c) 2002 LAAS/CNRS                        --  Fri Mar 15 2002
# All rights reserved.
#
# Redistribution  and  use in source   and binary forms,  with or without
# modification, are permitted provided that  the following conditions are
# met:
#
#   1. Redistributions  of  source code must  retain  the above copyright
#      notice, this list of conditions and the following disclaimer.
#   2. Redistributions in binary form must  reproduce the above copyright
#      notice,  this list of  conditions and  the following disclaimer in
#      the  documentation   and/or  other  materials   provided with  the
#      distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE  AUTHOR AND CONTRIBUTORS ``AS IS'' AND
# ANY  EXPRESS OR IMPLIED WARRANTIES, INCLUDING,  BUT NOT LIMITED TO, THE
# IMPLIED WARRANTIES   OF MERCHANTABILITY AND  FITNESS  FOR  A PARTICULAR
# PURPOSE ARE DISCLAIMED.  IN NO  EVENT SHALL THE AUTHOR OR  CONTRIBUTORS
# BE LIABLE FOR ANY DIRECT, INDIRECT,  INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING,  BUT  NOT LIMITED TO, PROCUREMENT  OF
# SUBSTITUTE  GOODS OR SERVICES;  LOSS   OF  USE,  DATA, OR PROFITS;   OR
# BUSINESS  INTERRUPTION) HOWEVER CAUSED AND  ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE  USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#

include config.mk

topsrcdir=	@top_srcdir@
srcdir=		@srcdir@
prefix=		@prefix@
mandir=		@mandir@/man
catdir=		@mandir@/cat
host=		@host@

config_files = \
	config.mk		\
	Makefile		\
	src/Makefile		\
	tcl/Makefile

config_headers = \
	config.h

dist_path= eltclsh
dist_name= eltclsh-$(ELTCLSH_VERSION)

VPATH=		$(srcdir)

# --- Directory recursion -----------------------------------------------

SUBDIRS= src tcl

make_subdirs= @for d in ${SUBDIRS}; do (cd $$d; ${MAKE} $@ ); done

all depends: $(config_files) $(config_headers) doc
	$(make_subdirs)

clean:
	$(make_subdirs)

install: $(config_files) install-doc install-catdoc
	$(make_subdirs)


# --- man pages ---------------------------------------------------------

MAN=		eltclsh.1
CATMAN=		${MAN:=.cat}

doc: ${CATMAN}

%.cat: %
	@if test "X${GROFF}" != "X"; then \
		cmd="${GROFF} -mandoc -Tascii $<"; \
		echo $${cmd} "> $@"; \
		$${cmd} > $@; \
	fi

install-doc:
	@for man in ${MAN}; do \
		section=`echo $${man} | sed 's/.*\.\([^\.]*\)$$/\1/'`; \
		file=${srcdir}/${distdir}/$${man}; \
		cmd="${INSTALL} -d ${mandir}$${section}"; \
		echo $${cmd}; \
		$${cmd}; \
		cmd="${INSTALL_DATA} $${file} ${mandir}$${section}"; \
		echo $${cmd}; \
		$${cmd}; \
	done;

install-catdoc:
	@case "${host}" in \
		*-*-openbsd*) \
			transform="s/\.[0-9]$$/.0/";; \
		*-*-netbsd*) \
			transform="s/\.[0-9]$$/.0/";; \
		*) \
			transform="";; \
	esac; \
	for man in ${MAN}; do \
		section=`echo $${man} | sed 's/.*\.\([^\.]*\)$$/\1/'`; \
		dest=`echo $${man} | sed "$${transform}"`; \
		cmd="${INSTALL} -d ${catdir}$${section}"; \
		echo $${cmd}; \
		$${cmd}; \
		cmd="${INSTALL_DATA} $${man}.cat \
			${catdir}$${section}/$${dest}"; \
		echo $${cmd}; \
		$${cmd}; \
	done;


# --- build distribution ------------------------------------------------

dist:
	mkdir -p $(dist_path)
	(cd $(topsrcdir); tar cf - .) | (cd $(dist_path); tar xpf -)
	find $(dist_path) -name "CVS" | xargs rm -rf
	find $(dist_path) -name "*~" | xargs rm -rf
	find $(dist_path) -name "autom4te.cache" | xargs rm -rf
	tar cf - $(dist_path) | gzip -c -9 > $(dist_name).tar.gz
	rm -rf $(dist_path)


# --- autoconf/autoheader -----------------------------------------------

config.status: $(topsrcdir)/configure
	./config.status --recheck

libtool: $(LIBTOOL_DEPS)
	./config.status --recheck

$(config_files): %: $(topsrcdir)/%.in config.status
	CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status

$(config_headers): %: $(topsrcdir)/%.in config.status
	CONFIG_FILES= CONFIG_HEADERS=$@ ./config.status
	touch $@