1# Makefile.in --
2#
3#	This file is a Makefile for Sample TEA Extension.  If it has the name
4#	"Makefile.in" then it is a template for a Makefile;  to generate the
5#	actual Makefile, run "./configure", which is a configuration script
6#	generated by the "autoconf" program (constructs like "@foo@" will get
7#	replaced in the actual Makefile.
8#
9# Copyright (c) 1999 Scriptics Corporation.
10# Copyright (c) 2002-2005 ActiveState Corporation.
11#
12# See the file "license.terms" for information on usage and redistribution
13# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
14#
15# RCS: @(#) $Id: Makefile.in,v 1.59 2005/07/26 19:17:02 mdejong Exp $
16
17#========================================================================
18# Add additional lines to handle any additional AC_SUBST cases that
19# have been added in a customized configure script.
20#========================================================================
21
22#SAMPLE_NEW_VAR	= @SAMPLE_NEW_VAR@
23
24#========================================================================
25# Nothing of the variables below this line should need to be changed.
26# Please check the TARGETS section below to make sure the make targets
27# are correct.
28#========================================================================
29
30#========================================================================
31# The names of the source files is defined in the configure script.
32# The object files are used for linking into the final library.
33# This will be used when a dist target is added to the Makefile.
34# It is not important to specify the directory, as long as it is the
35# $(srcdir) or in the generic, win or unix subdirectory.
36#========================================================================
37
38PKG_SOURCES	= @PKG_SOURCES@
39PKG_OBJECTS	= @PKG_OBJECTS@
40
41PKG_STUB_SOURCES = @PKG_STUB_SOURCES@
42PKG_STUB_OBJECTS = @PKG_STUB_OBJECTS@
43
44#========================================================================
45# PKG_TCL_SOURCES identifies Tcl runtime files that are associated with
46# this package that need to be installed, if any.
47#========================================================================
48
49PKG_TCL_SOURCES = @PKG_TCL_SOURCES@
50
51#========================================================================
52# This is a list of public header files to be installed, if any.
53#========================================================================
54
55PKG_HEADERS	= @PKG_HEADERS@
56
57#========================================================================
58# "PKG_LIB_FILE" refers to the library (dynamic or static as per
59# configuration options) composed of the named objects.
60#========================================================================
61
62PKG_LIB_FILE	= @PKG_LIB_FILE@
63PKG_STUB_LIB_FILE = @PKG_STUB_LIB_FILE@
64
65lib_BINARIES	= $(PKG_LIB_FILE)
66BINARIES	= $(lib_BINARIES)
67
68SHELL		= @SHELL@
69
70srcdir		= @srcdir@
71prefix		= @prefix@
72exec_prefix	= @exec_prefix@
73
74bindir		= @bindir@
75libdir		= @libdir@
76datarootdir	= @datarootdir@
77datadir		= @datadir@
78mandir		= @mandir@
79includedir	= @includedir@
80
81DESTDIR		=
82
83PKG_DIR		= $(PACKAGE_NAME)$(PACKAGE_VERSION)
84pkgdatadir	= $(datadir)/$(PKG_DIR)
85pkglibdir	= $(libdir)/$(PKG_DIR)
86pkgincludedir	= $(includedir)/$(PKG_DIR)
87
88top_builddir	= .
89
90INSTALL		= @INSTALL@
91INSTALL_PROGRAM	= @INSTALL_PROGRAM@
92INSTALL_DATA	= @INSTALL_DATA@
93INSTALL_SCRIPT	= @INSTALL_SCRIPT@
94
95PACKAGE_NAME	= @PACKAGE_NAME@
96PACKAGE_VERSION	= @PACKAGE_VERSION@
97CC		= @CC@
98CFLAGS_DEFAULT	= @CFLAGS_DEFAULT@
99CFLAGS_WARNING	= @CFLAGS_WARNING@
100CLEANFILES	= @CLEANFILES@
101EXEEXT		= @EXEEXT@
102LDFLAGS_DEFAULT	= @LDFLAGS_DEFAULT@
103MAKE_LIB	= @MAKE_LIB@
104MAKE_SHARED_LIB	= @MAKE_SHARED_LIB@
105MAKE_STATIC_LIB	= @MAKE_STATIC_LIB@
106MAKE_STUB_LIB	= @MAKE_STUB_LIB@
107OBJEXT		= @OBJEXT@
108RANLIB		= @RANLIB@
109RANLIB_STUB	= @RANLIB_STUB@
110SHLIB_CFLAGS	= @SHLIB_CFLAGS@
111SHLIB_LD	= @SHLIB_LD@
112SHLIB_LD_LIBS	= @SHLIB_LD_LIBS@
113STLIB_LD	= @STLIB_LD@
114#TCL_DEFS	= @TCL_DEFS@
115TCL_BIN_DIR	= @TCL_BIN_DIR@
116TCL_SRC_DIR	= @TCL_SRC_DIR@
117#TK_BIN_DIR	= @TK_BIN_DIR@
118#TK_SRC_DIR	= @TK_SRC_DIR@
119
120# This is no longer necessary even for packages that use private Tcl headers
121#TCL_TOP_DIR_NATIVE	= @TCL_TOP_DIR_NATIVE@
122# Not used, but retained for reference of what libs Tcl required
123#TCL_LIBS	= @TCL_LIBS@
124
125#========================================================================
126# TCLLIBPATH seeds the auto_path in Tcl's init.tcl so we can test our
127# package without installing.  The other environment variables allow us
128# to test against an uninstalled Tcl.  Add special env vars that you
129# require for testing here (like TCLX_LIBRARY).
130#========================================================================
131
132EXTRA_PATH	= $(top_builddir):$(TCL_BIN_DIR)
133#EXTRA_PATH	= $(top_builddir):$(TCL_BIN_DIR):$(TK_BIN_DIR)
134TCLLIBPATH	= $(top_builddir)
135TCLSH_ENV	= TCL_LIBRARY=`@CYGPATH@ $(TCL_SRC_DIR)/library` \
136		  @LD_LIBRARY_PATH_VAR@="$(EXTRA_PATH):$(@LD_LIBRARY_PATH_VAR@)" \
137		  PATH="$(EXTRA_PATH):$(PATH)" \
138		  TCLLIBPATH="$(TCLLIBPATH)"
139#		  TK_LIBRARY=`@CYGPATH@ $(TK_SRC_DIR)/library`
140
141TCLSH_PROG	= @TCLSH_PROG@
142TCLSH	= $(TCLSH_ENV) $(TCLSH_PROG)
143
144#WISH_PROG	= @WISH_PROG@
145#WISH	= $(TCLSH_ENV) $(WISH_PROG)
146
147
148SHARED_BUILD	= @SHARED_BUILD@
149
150INCLUDES	= @PKG_INCLUDES@ @TCL_INCLUDES@ -I$(srcdir)/..
151#INCLUDES	= @PKG_INCLUDES@ @TCL_INCLUDES@ @TK_INCLUDES@ @TK_XINCLUDES@
152
153PKG_CFLAGS	= @PKG_CFLAGS@
154
155# TCL_DEFS is not strictly need here, but if you remove it, then you
156# must make sure that configure.in checks for the necessary components
157# that your library may use.  TCL_DEFS can actually be a problem if
158# you do not compile with a similar machine setup as the Tcl core was
159# compiled with.
160#DEFS		= $(TCL_DEFS) @DEFS@ $(PKG_CFLAGS)
161DEFS		= @DEFS@ $(PKG_CFLAGS)
162
163CONFIG_CLEAN_FILES = Makefile pkgIndex.tcl
164
165CPPFLAGS	= @CPPFLAGS@
166LIBS		= @PKG_LIBS@ @LIBS@
167AR		= @AR@
168CFLAGS		= @CFLAGS@
169COMPILE		= $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
170
171#========================================================================
172# Start of user-definable TARGETS section
173#========================================================================
174
175#========================================================================
176# TEA TARGETS.  Please note that the "libraries:" target refers to platform
177# independent files, and the "binaries:" target inclues executable programs and
178# platform-dependent libraries.  Modify these targets so that they install
179# the various pieces of your package.  The make and install rules
180# for the BINARIES that you specified above have already been done.
181#========================================================================
182
183all: binaries libraries doc
184
185#========================================================================
186# The binaries target builds executable programs, Windows .dll's, unix
187# shared/static libraries, and any other platform-dependent files.
188# The list of targets to build for "binaries:" is specified at the top
189# of the Makefile, in the "BINARIES" variable.
190#========================================================================
191
192binaries: $(BINARIES)
193
194libraries:
195
196
197#========================================================================
198# Your doc target should differentiate from doc builds (by the developer)
199# and doc installs (see install-doc), which just install the docs on the
200# end user machine when building from source.
201#========================================================================
202
203doc:
204	@echo "If you have documentation to create, place the commands to"
205	@echo "build the docs in the 'doc:' target.  For example:"
206	@echo "        xml2nroff sample.xml > sample.n"
207	@echo "        xml2html sample.xml > sample.html"
208
209install: all install-binaries install-libraries install-doc
210
211install-binaries: binaries install-lib-binaries install-bin-binaries
212
213#========================================================================
214# This rule installs platform-independent files, such as header files.
215# The list=...; for p in $$list handles the empty list case x-platform.
216#========================================================================
217
218install-libraries: libraries
219	@mkdir -p $(DESTDIR)$(includedir)
220	@echo "Installing header files in $(DESTDIR)$(includedir)"
221	@list='$(PKG_HEADERS)'; for i in $$list; do \
222	    echo "Installing $(srcdir)/$$i" ; \
223	    $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(includedir) ; \
224	done;
225
226#========================================================================
227# Install documentation.  Unix manpages should go in the $(mandir)
228# directory.
229#========================================================================
230
231install-doc: doc
232	@mkdir -p $(DESTDIR)$(mandir)/mann
233	@echo "Installing documentation in $(DESTDIR)$(mandir)"
234	@list='$(srcdir)/doc/*.n'; for i in $$list; do \
235	    echo "Installing $$i"; \
236	    rm -f $(DESTDIR)$(mandir)/mann/`basename $$i`; \
237	    $(INSTALL_DATA) $$i $(DESTDIR)$(mandir)/mann ; \
238	done
239
240test: binaries libraries
241	@echo "SQLite TEA distribution does not include tests"
242
243shell: binaries libraries
244	@$(TCLSH) $(SCRIPT)
245
246gdb:
247	$(TCLSH_ENV) gdb $(TCLSH_PROG) $(SCRIPT)
248
249depend:
250
251#========================================================================
252# $(PKG_LIB_FILE) should be listed as part of the BINARIES variable
253# mentioned above.  That will ensure that this target is built when you
254# run "make binaries".
255#
256# The $(PKG_OBJECTS) objects are created and linked into the final
257# library.  In most cases these object files will correspond to the
258# source files above.
259#========================================================================
260
261$(PKG_LIB_FILE): $(PKG_OBJECTS)
262	-rm -f $(PKG_LIB_FILE)
263	${MAKE_LIB}
264	$(RANLIB) $(PKG_LIB_FILE)
265
266$(PKG_STUB_LIB_FILE): $(PKG_STUB_OBJECTS)
267	-rm -f $(PKG_STUB_LIB_FILE)
268	${MAKE_STUB_LIB}
269	$(RANLIB_STUB) $(PKG_STUB_LIB_FILE)
270
271#========================================================================
272# We need to enumerate the list of .c to .o lines here.
273#
274# In the following lines, $(srcdir) refers to the toplevel directory
275# containing your extension.  If your sources are in a subdirectory,
276# you will have to modify the paths to reflect this:
277#
278# sample.$(OBJEXT): $(srcdir)/generic/sample.c
279# 	$(COMPILE) -c `@CYGPATH@ $(srcdir)/generic/sample.c` -o $@
280#
281# Setting the VPATH variable to a list of paths will cause the makefile
282# to look into these paths when resolving .c to .obj dependencies.
283# As necessary, add $(srcdir):$(srcdir)/compat:....
284#========================================================================
285
286VPATH = $(srcdir):$(srcdir)/generic:$(srcdir)/unix:$(srcdir)/win
287
288.c.@OBJEXT@:
289	$(COMPILE) -c `@CYGPATH@ $<` -o $@
290
291#========================================================================
292# Distribution creation
293# You may need to tweak this target to make it work correctly.
294#========================================================================
295
296#COMPRESS	= tar cvf $(PKG_DIR).tar $(PKG_DIR); compress $(PKG_DIR).tar
297COMPRESS	= gtar zcvf $(PKG_DIR).tar.gz $(PKG_DIR)
298DIST_ROOT	= /tmp/dist
299DIST_DIR	= $(DIST_ROOT)/$(PKG_DIR)
300
301dist-clean:
302	rm -rf $(DIST_DIR) $(DIST_ROOT)/$(PKG_DIR).tar.*
303
304dist: dist-clean
305	mkdir -p $(DIST_DIR)
306	cp -p $(srcdir)/README* $(srcdir)/license* \
307		$(srcdir)/aclocal.m4 $(srcdir)/configure $(srcdir)/*.in \
308		$(DIST_DIR)/
309	chmod 664 $(DIST_DIR)/Makefile.in $(DIST_DIR)/aclocal.m4
310	chmod 775 $(DIST_DIR)/configure $(DIST_DIR)/configure.in
311
312	for i in $(srcdir)/*.[ch]; do \
313	    if [ -f $$i ]; then \
314		cp -p $$i $(DIST_DIR)/ ; \
315	    fi; \
316	done;
317
318	mkdir $(DIST_DIR)/tclconfig
319	cp $(srcdir)/tclconfig/install-sh $(srcdir)/tclconfig/tcl.m4 \
320		$(DIST_DIR)/tclconfig/
321	chmod 664 $(DIST_DIR)/tclconfig/tcl.m4
322	chmod +x $(DIST_DIR)/tclconfig/install-sh
323
324	list='demos doc generic library mac tests unix win'; \
325	for p in $$list; do \
326	    if test -d $(srcdir)/$$p ; then \
327		mkdir $(DIST_DIR)/$$p; \
328		cp -p $(srcdir)/$$p/*.* $(DIST_DIR)/$$p/; \
329	    fi; \
330	done
331
332	(cd $(DIST_ROOT); $(COMPRESS);)
333
334#========================================================================
335# End of user-definable section
336#========================================================================
337
338#========================================================================
339# Don't modify the file to clean here.  Instead, set the "CLEANFILES"
340# variable in configure.in
341#========================================================================
342
343clean:  
344	-test -z "$(BINARIES)" || rm -f $(BINARIES)
345	-rm -f *.$(OBJEXT) core *.core
346	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
347
348distclean: clean
349	-rm -f *.tab.c
350	-rm -f $(CONFIG_CLEAN_FILES)
351	-rm -f config.h config.cache config.log config.status
352
353#========================================================================
354# Install binary object libraries.  On Windows this includes both .dll and
355# .lib files.  Because the .lib files are not explicitly listed anywhere,
356# we need to deduce their existence from the .dll file of the same name.
357# Library files go into the lib directory.
358# In addition, this will generate the pkgIndex.tcl
359# file in the install location (assuming it can find a usable tclsh shell)
360#
361# You should not have to modify this target.
362#========================================================================
363
364install-lib-binaries: binaries
365	@mkdir -p $(DESTDIR)$(pkglibdir)
366	@list='$(lib_BINARIES)'; for p in $$list; do \
367	  if test -f $$p; then \
368	    echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p"; \
369	    $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p; \
370	    stub=`echo $$p|sed -e "s/.*\(stub\).*/\1/"`; \
371	    if test "x$$stub" = "xstub"; then \
372		echo " $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p"; \
373		$(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p; \
374	    else \
375		echo " $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p"; \
376		$(RANLIB) $(DESTDIR)$(pkglibdir)/$$p; \
377	    fi; \
378	    ext=`echo $$p|sed -e "s/.*\.//"`; \
379	    if test "x$$ext" = "xdll"; then \
380		lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \
381		if test -f $$lib; then \
382		    echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib"; \
383	            $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib; \
384		fi; \
385	    fi; \
386	  fi; \
387	done
388	@list='$(PKG_TCL_SOURCES)'; for p in $$list; do \
389	  if test -f $(srcdir)/$$p; then \
390	    destp=`basename $$p`; \
391	    echo " Install $$destp $(DESTDIR)$(pkglibdir)/$$destp"; \
392	    $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkglibdir)/$$destp; \
393	  fi; \
394	done
395	@if test "x$(SHARED_BUILD)" = "x1"; then \
396	    echo " Install pkgIndex.tcl $(DESTDIR)$(pkglibdir)"; \
397	    $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir); \
398	fi
399
400#========================================================================
401# Install binary executables (e.g. .exe files and dependent .dll files)
402# This is for files that must go in the bin directory (located next to
403# wish and tclsh), like dependent .dll files on Windows.
404#
405# You should not have to modify this target, except to define bin_BINARIES
406# above if necessary.
407#========================================================================
408
409install-bin-binaries: binaries
410	@mkdir -p $(DESTDIR)$(bindir)
411	@list='$(bin_BINARIES)'; for p in $$list; do \
412	  if test -f $$p; then \
413	    echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p"; \
414	    $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p; \
415	  fi; \
416	done
417
418.SUFFIXES: .c .$(OBJEXT)
419
420Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
421	cd $(top_builddir) \
422	  && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
423
424uninstall-binaries:
425	list='$(lib_BINARIES)'; for p in $$list; do \
426	  rm -f $(DESTDIR)$(pkglibdir)/$$p; \
427	done
428	list='$(PKG_TCL_SOURCES)'; for p in $$list; do \
429	  p=`basename $$p`; \
430	  rm -f $(DESTDIR)$(pkglibdir)/$$p; \
431	done
432	list='$(bin_BINARIES)'; for p in $$list; do \
433	  rm -f $(DESTDIR)$(bindir)/$$p; \
434	done
435
436.PHONY: all binaries clean depend distclean doc install libraries test
437
438# Tell versions [3.59,3.63) of GNU make to not export all variables.
439# Otherwise a system limit (for SysV at least) may be exceeded.
440.NOEXPORT:
441