summaryrefslogtreecommitdiff
path: root/jmake/files/Jmake.tmpl
blob: 066379376b3c22aef8493d2c26f1bfd7d6e87475 (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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
/*
 * Generic jmake template
 *
 * $Id: Jmake.tmpl 30 2009-10-28 07:45:28Z rmanfredi $
 *
 *  Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
 *  
 *  You may redistribute only under the terms of the Artistic Licence,
 *  as specified in the README file that comes with the distribution.
 *  You may reuse parts of this distribution only within the terms of
 *  that same Artistic Licence; a copy of which may be found at the root
 *  of the source tree for dist 4.0.
 *
 * $Log: Jmake.tmpl,v $
 * Revision 3.0.1.3  1997/02/28  14:56:16  ram
 * patch61: lex path can now be configured
 *
 * Revision 3.0.1.2  1995/01/11  14:50:21  ram
 * patch45: now pre-computes INSTALL and INSTALLDIR variables
 *
 * Revision 3.0.1.1  1993/08/20  07:36:36  ram
 * patch3: config.sh searching was not aborting properly
 *
 * Revision 3.0  1993/08/18  12:04:16  ram
 * Baseline for dist 3.0 netwide release.
 *
 */

: Makefile.SH generated from Jmake.tmpl and Jmakefile <TAG>
: $Id: Jmake.tmpl 30 2009-10-28 07:45:28Z rmanfredi $

/*************************************************************************
 *                                                                       *
 *                     DO NOT MODIFY BELOW THIS LINE                     *
 *                                                                       *
 *************************************************************************/

case $CONFIG in
'')
	if test -f config.sh; then TOP=.;
	elif test -f ../config.sh; then TOP=..;
	elif test -f ../../config.sh; then TOP=../..;
	elif test -f ../../../config.sh; then TOP=../../..;
	elif test -f ../../../../config.sh; then TOP=../../../..;
	else
		echo "Can't find config.sh."; exit 1
	fi
	. $TOP/config.sh
	;;
esac
case "$0" in
*/#*) cd `expr X$0 : 'X\(.*\)/'` ;;
esac
|expand cur!CURDIR!
CURRENT=!cur:^\./=
-expand
DIR=`echo $CURRENT/ | sed -e 's/\.\///g'`
echo "Extracting ${DIR}Makefile (with variable substitutions)"
/*
 * Variable pre-computation.
 */
?INSTALL:INSTALL=`echo $install | sed -e 's,\./i,\$(TOP)/i,'`
?INSTALLDIR:INSTALLDIR=`echo $installdir | sed -e 's,\./i,\$(TOP)/i,'`
DATE=`date`
/*
 * Makefile generation.
 */
$spitshell >Makefile <<!GROK!THIS!
;########################################################################
;# Makefile generated from Makefile.SH on $DATE

SHELL = /bin/sh
JMAKE = jmake
TOP = TOPDIR
CURRENT = $CURRENT
DIR = $DIR
?INSTALL:INSTALL = $INSTALL
?INSTALLDIR:INSTALLDIR = $INSTALLDIR

;########################################################################
;# Parameters set by Configure -- edit config.sh if changes are needed

?AR:AR = ar rc				/* FIXME */
?BINDIR:BINDIR = $installbin
?CC:CC = $cc
?CHMOD:CHMOD = $chmod
?CP:CP = $cp
?CPP:CPP = $cpp $cppminus $cppflags
?CTAGS:CTAGS = ctags		/* FIXME */
?_EXE:_EXE = $_exe
?INSTALLPREFIX:INSTALLPREFIX = $prefix
?JCFLAGS:JCFLAGS = \$(CFLAGS) $optimize $ccflags $large
?JCPPFLAGS:JCPPFLAGS = $cppflags
?JLDFLAGS:JLDFLAGS = \$(LDFLAGS) $optimize $ldflags
?JLFLAGS:JLFLAGS = \$(LFLAGS)
?JYFLAGS:JYFLAGS = \$(YFLAGS) $yaccflags
?L:L = $manext
?LD:LD = ld
?LEX:LEX = $lex
?LIBS:LIBS = $libs
?LINT:LINT = lint
?LN:LN = $ln
?MANSRC:MANSRC = $installmansrc
?MAKE:$make_set_make
?MKDEP:MKDEP = $mkdep \$(DPFLAGS) \$(JCPPFLAGS) --
?MV:MV = $mv
?PRIVLIB:PRIVLIB = $installprivlib
?RANLIB:RANLIB = $ranlib
?RM:RM = $rm -f
?SCRIPTDIR:SCRIPTDIR = $installscript
?SED:SED = $sed
?YACC:YACC = $yacc

/*
 * The following will only be added if at least one initialization
 * rule was found in the Jmakefile.
 */
%INIT:|skip			/* Skip if no initializations are necessary */
;########################################################################
;# Automatically generated parameters -- do not edit

INIT_SECTION

-skip				/* Initializations */
%SUFFIX:|skip		/* Skip if no suffixes/rules are defined */
;########################################################################
;# New suffixes and associated building rules -- edit with care

SUFFIX_SECTION
-skip				/* Suffixes/Rules */
!GROK!THIS!
$spitshell >>Makefile <<'!NO!SUBS!'
#include <Jmake.rules>

%MKDEP:|skip		/* Skip if no depend target */
;########################################################################
;# Force 'make depend' to be performed first -- do not edit
/*
 * The "all" target must appear first.  Some "make" programs will otherwise
 * default to the .FORCE_DEPEND target if it was listed first, despite it
 * starting with a leading dot.
 */
all:: .FORCE_DEPEND

.FORCE_DEPEND::

-skip				/* Depend target */
;########################################################################
;# Start of Jmakefile
#include <Jmakefile>

;########################################################################
;# Common rules for all Makefiles -- do not edit
/*
 * These need to be here so that rules in Jmakefile occur first;  the blank
 * all is to make sure that an empty Jmakefile doesn't default to make clean.
 */
all::

CleanTarget()
InstallTarget()

/*
 * The installation of manual pages is optional.  When they say "none" in
 * Configure, then they don't want any manual page and $installmansrc will
 * be empty.
 *
 * To avoid protecting all the jmake rules for an empty destination, we use
 * this clever hack: there is an "install.man-no" and an "install.man-yes"
 * target defined, where the first does nothing and the second triggers
 * the local install.  The same goes for deinstall.
 *
 * If the `MANSRC' symbol is not wanted, then there is no manual page
 * and we can force the -no version of the targets.
 */
%MANSRC:|skip		/* Skip if no manual targets */
!NO!SUBS!
case "$installmansrc" in
'') man=no;;
*) man=yes;;
esac
$spitshell >>Makefile <<!GROK!THIS!
maybe_install.man: install.man-$man
maybe_deinstall.man: deinstall.man-$man
!GROK!THIS!
$spitshell >>Makefile <<'!NO!SUBS!'
-skip
?MANSRC:|skip		/* Skip if it has manual targets */
maybe_install.man: install.man-no
maybe_deinstall.man: deinstall.man-no
-skip

MakefileTarget()
TagsTarget()

%SUBDIRS:|skip		/* Skip if no sub-directories */
;########################################################################
;# Rules for building in sub-directories -- do not edit

CommonSubdirsRule($(SUBDIRS))
InstallSubdirs()
InstallManSubdirs()
CleanSubdirs()
TagSubdirs($(SUBDIRS))
MakefileSubdirs()
MakeSubdirs()

/*
 * Empty rules in case they don't define anything to be installed
 * in this directory.
 */
local_install::
local_deinstall::
local_install.man::
local_deinstall.man::

-skip				/* Sub-directories */
?SUBDIRS:|skip		/* Skip if sub-directories */
;########################################################################
;# Empty rules for directories with no sub-directories -- do not edit

local_install::
	@echo "install in $(CURRENT) done."

local_deinstall::
	@echo "deinstall in $(CURRENT) done."

local_install.man::
	@echo "install.man in $(CURRENT) done."

local_deinstall.man::
	@echo "deinstall.man in $(CURRENT) done."

/*
 * Action for 'Makefiles' would be required, if a .SUFFIXES: .SH rule
 * were added, because in that case, a "/bin/sh Makefiles.SH" would
 * be issued and raise an error.
 */
Makefiles::

Makefiles.SH::

-skip				/* No sub-directories */
%MKDEP:|skip		/* Skip if no depend target */
;########################################################################
;# Dependencies generated by make depend
;# DO NOT DELETE THIS LINE -- make depend relies on it

;# Put nothing here or make depend will gobble it up
.FORCE_DEPEND::
?TOP: @echo "You haven't run a 'make depend' yet!"; exit 1
%TOP: @echo "You must run 'make depend' in $(TOP) first."; exit 1
-skip				/* Depend target */
!NO!SUBS!
chmod 644 Makefile
$eunicefix Makefile