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