mirror of
https://github.com/sqlite/sqlite.git
synced 2024-11-28 16:09:31 +01:00
9edb5ceb1f
FossilOrigin-Name: e0a9978077a1b4e5988681438e4efff93920e574
441 lines
16 KiB
Makefile
441 lines
16 KiB
Makefile
# Makefile.in --
|
|
#
|
|
# This file is a Makefile for Sample TEA Extension. If it has the name
|
|
# "Makefile.in" then it is a template for a Makefile; to generate the
|
|
# actual Makefile, run "./configure", which is a configuration script
|
|
# generated by the "autoconf" program (constructs like "@foo@" will get
|
|
# replaced in the actual Makefile.
|
|
#
|
|
# Copyright (c) 1999 Scriptics Corporation.
|
|
# Copyright (c) 2002-2005 ActiveState Corporation.
|
|
#
|
|
# See the file "license.terms" for information on usage and redistribution
|
|
# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
|
#
|
|
# RCS: @(#) $Id: Makefile.in,v 1.59 2005/07/26 19:17:02 mdejong Exp $
|
|
|
|
#========================================================================
|
|
# Add additional lines to handle any additional AC_SUBST cases that
|
|
# have been added in a customized configure script.
|
|
#========================================================================
|
|
|
|
#SAMPLE_NEW_VAR = @SAMPLE_NEW_VAR@
|
|
|
|
#========================================================================
|
|
# Nothing of the variables below this line should need to be changed.
|
|
# Please check the TARGETS section below to make sure the make targets
|
|
# are correct.
|
|
#========================================================================
|
|
|
|
#========================================================================
|
|
# The names of the source files is defined in the configure script.
|
|
# The object files are used for linking into the final library.
|
|
# This will be used when a dist target is added to the Makefile.
|
|
# It is not important to specify the directory, as long as it is the
|
|
# $(srcdir) or in the generic, win or unix subdirectory.
|
|
#========================================================================
|
|
|
|
PKG_SOURCES = @PKG_SOURCES@
|
|
PKG_OBJECTS = @PKG_OBJECTS@
|
|
|
|
PKG_STUB_SOURCES = @PKG_STUB_SOURCES@
|
|
PKG_STUB_OBJECTS = @PKG_STUB_OBJECTS@
|
|
|
|
#========================================================================
|
|
# PKG_TCL_SOURCES identifies Tcl runtime files that are associated with
|
|
# this package that need to be installed, if any.
|
|
#========================================================================
|
|
|
|
PKG_TCL_SOURCES = @PKG_TCL_SOURCES@
|
|
|
|
#========================================================================
|
|
# This is a list of public header files to be installed, if any.
|
|
#========================================================================
|
|
|
|
PKG_HEADERS = @PKG_HEADERS@
|
|
|
|
#========================================================================
|
|
# "PKG_LIB_FILE" refers to the library (dynamic or static as per
|
|
# configuration options) composed of the named objects.
|
|
#========================================================================
|
|
|
|
PKG_LIB_FILE = @PKG_LIB_FILE@
|
|
PKG_STUB_LIB_FILE = @PKG_STUB_LIB_FILE@
|
|
|
|
lib_BINARIES = $(PKG_LIB_FILE)
|
|
BINARIES = $(lib_BINARIES)
|
|
|
|
SHELL = @SHELL@
|
|
|
|
srcdir = @srcdir@
|
|
prefix = @prefix@
|
|
exec_prefix = @exec_prefix@
|
|
|
|
bindir = @bindir@
|
|
libdir = @libdir@
|
|
datarootdir = @datarootdir@
|
|
datadir = @datadir@
|
|
mandir = @mandir@
|
|
includedir = @includedir@
|
|
|
|
DESTDIR =
|
|
|
|
PKG_DIR = $(PACKAGE_NAME)$(PACKAGE_VERSION)
|
|
pkgdatadir = $(datadir)/$(PKG_DIR)
|
|
pkglibdir = $(libdir)/$(PKG_DIR)
|
|
pkgincludedir = $(includedir)/$(PKG_DIR)
|
|
|
|
top_builddir = .
|
|
|
|
INSTALL = @INSTALL@
|
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|
INSTALL_DATA = @INSTALL_DATA@
|
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
|
|
|
PACKAGE_NAME = @PACKAGE_NAME@
|
|
PACKAGE_VERSION = @PACKAGE_VERSION@
|
|
CC = @CC@
|
|
CFLAGS_DEFAULT = @CFLAGS_DEFAULT@
|
|
CFLAGS_WARNING = @CFLAGS_WARNING@
|
|
CLEANFILES = @CLEANFILES@
|
|
EXEEXT = @EXEEXT@
|
|
LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@
|
|
MAKE_LIB = @MAKE_LIB@
|
|
MAKE_SHARED_LIB = @MAKE_SHARED_LIB@
|
|
MAKE_STATIC_LIB = @MAKE_STATIC_LIB@
|
|
MAKE_STUB_LIB = @MAKE_STUB_LIB@
|
|
OBJEXT = @OBJEXT@
|
|
RANLIB = @RANLIB@
|
|
RANLIB_STUB = @RANLIB_STUB@
|
|
SHLIB_CFLAGS = @SHLIB_CFLAGS@
|
|
SHLIB_LD = @SHLIB_LD@
|
|
SHLIB_LD_LIBS = @SHLIB_LD_LIBS@
|
|
STLIB_LD = @STLIB_LD@
|
|
#TCL_DEFS = @TCL_DEFS@
|
|
TCL_BIN_DIR = @TCL_BIN_DIR@
|
|
TCL_SRC_DIR = @TCL_SRC_DIR@
|
|
#TK_BIN_DIR = @TK_BIN_DIR@
|
|
#TK_SRC_DIR = @TK_SRC_DIR@
|
|
|
|
# This is no longer necessary even for packages that use private Tcl headers
|
|
#TCL_TOP_DIR_NATIVE = @TCL_TOP_DIR_NATIVE@
|
|
# Not used, but retained for reference of what libs Tcl required
|
|
#TCL_LIBS = @TCL_LIBS@
|
|
|
|
#========================================================================
|
|
# TCLLIBPATH seeds the auto_path in Tcl's init.tcl so we can test our
|
|
# package without installing. The other environment variables allow us
|
|
# to test against an uninstalled Tcl. Add special env vars that you
|
|
# require for testing here (like TCLX_LIBRARY).
|
|
#========================================================================
|
|
|
|
EXTRA_PATH = $(top_builddir):$(TCL_BIN_DIR)
|
|
#EXTRA_PATH = $(top_builddir):$(TCL_BIN_DIR):$(TK_BIN_DIR)
|
|
TCLLIBPATH = $(top_builddir)
|
|
TCLSH_ENV = TCL_LIBRARY=`@CYGPATH@ $(TCL_SRC_DIR)/library` \
|
|
@LD_LIBRARY_PATH_VAR@="$(EXTRA_PATH):$(@LD_LIBRARY_PATH_VAR@)" \
|
|
PATH="$(EXTRA_PATH):$(PATH)" \
|
|
TCLLIBPATH="$(TCLLIBPATH)"
|
|
# TK_LIBRARY=`@CYGPATH@ $(TK_SRC_DIR)/library`
|
|
|
|
TCLSH_PROG = @TCLSH_PROG@
|
|
TCLSH = $(TCLSH_ENV) $(TCLSH_PROG)
|
|
|
|
#WISH_PROG = @WISH_PROG@
|
|
#WISH = $(TCLSH_ENV) $(WISH_PROG)
|
|
|
|
|
|
SHARED_BUILD = @SHARED_BUILD@
|
|
|
|
INCLUDES = @PKG_INCLUDES@ @TCL_INCLUDES@ -I$(srcdir)/..
|
|
#INCLUDES = @PKG_INCLUDES@ @TCL_INCLUDES@ @TK_INCLUDES@ @TK_XINCLUDES@
|
|
|
|
PKG_CFLAGS = @PKG_CFLAGS@
|
|
|
|
# TCL_DEFS is not strictly need here, but if you remove it, then you
|
|
# must make sure that configure.in checks for the necessary components
|
|
# that your library may use. TCL_DEFS can actually be a problem if
|
|
# you do not compile with a similar machine setup as the Tcl core was
|
|
# compiled with.
|
|
#DEFS = $(TCL_DEFS) @DEFS@ $(PKG_CFLAGS)
|
|
DEFS = @DEFS@ $(PKG_CFLAGS)
|
|
|
|
CONFIG_CLEAN_FILES = Makefile pkgIndex.tcl
|
|
|
|
CPPFLAGS = @CPPFLAGS@
|
|
LIBS = @PKG_LIBS@ @LIBS@
|
|
AR = @AR@
|
|
CFLAGS = @CFLAGS@
|
|
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
|
|
|
|
#========================================================================
|
|
# Start of user-definable TARGETS section
|
|
#========================================================================
|
|
|
|
#========================================================================
|
|
# TEA TARGETS. Please note that the "libraries:" target refers to platform
|
|
# independent files, and the "binaries:" target inclues executable programs and
|
|
# platform-dependent libraries. Modify these targets so that they install
|
|
# the various pieces of your package. The make and install rules
|
|
# for the BINARIES that you specified above have already been done.
|
|
#========================================================================
|
|
|
|
all: binaries libraries doc
|
|
|
|
#========================================================================
|
|
# The binaries target builds executable programs, Windows .dll's, unix
|
|
# shared/static libraries, and any other platform-dependent files.
|
|
# The list of targets to build for "binaries:" is specified at the top
|
|
# of the Makefile, in the "BINARIES" variable.
|
|
#========================================================================
|
|
|
|
binaries: $(BINARIES)
|
|
|
|
libraries:
|
|
|
|
|
|
#========================================================================
|
|
# Your doc target should differentiate from doc builds (by the developer)
|
|
# and doc installs (see install-doc), which just install the docs on the
|
|
# end user machine when building from source.
|
|
#========================================================================
|
|
|
|
doc:
|
|
@echo "If you have documentation to create, place the commands to"
|
|
@echo "build the docs in the 'doc:' target. For example:"
|
|
@echo " xml2nroff sample.xml > sample.n"
|
|
@echo " xml2html sample.xml > sample.html"
|
|
|
|
install: all install-binaries install-libraries install-doc
|
|
|
|
install-binaries: binaries install-lib-binaries install-bin-binaries
|
|
|
|
#========================================================================
|
|
# This rule installs platform-independent files, such as header files.
|
|
# The list=...; for p in $$list handles the empty list case x-platform.
|
|
#========================================================================
|
|
|
|
install-libraries: libraries
|
|
@mkdir -p $(DESTDIR)$(includedir)
|
|
@echo "Installing header files in $(DESTDIR)$(includedir)"
|
|
@list='$(PKG_HEADERS)'; for i in $$list; do \
|
|
echo "Installing $(srcdir)/$$i" ; \
|
|
$(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(includedir) ; \
|
|
done;
|
|
|
|
#========================================================================
|
|
# Install documentation. Unix manpages should go in the $(mandir)
|
|
# directory.
|
|
#========================================================================
|
|
|
|
install-doc: doc
|
|
@mkdir -p $(DESTDIR)$(mandir)/mann
|
|
@echo "Installing documentation in $(DESTDIR)$(mandir)"
|
|
@list='$(srcdir)/doc/*.n'; for i in $$list; do \
|
|
echo "Installing $$i"; \
|
|
rm -f $(DESTDIR)$(mandir)/mann/`basename $$i`; \
|
|
$(INSTALL_DATA) $$i $(DESTDIR)$(mandir)/mann ; \
|
|
done
|
|
|
|
test: binaries libraries
|
|
@echo "SQLite TEA distribution does not include tests"
|
|
|
|
shell: binaries libraries
|
|
@$(TCLSH) $(SCRIPT)
|
|
|
|
gdb:
|
|
$(TCLSH_ENV) gdb $(TCLSH_PROG) $(SCRIPT)
|
|
|
|
depend:
|
|
|
|
#========================================================================
|
|
# $(PKG_LIB_FILE) should be listed as part of the BINARIES variable
|
|
# mentioned above. That will ensure that this target is built when you
|
|
# run "make binaries".
|
|
#
|
|
# The $(PKG_OBJECTS) objects are created and linked into the final
|
|
# library. In most cases these object files will correspond to the
|
|
# source files above.
|
|
#========================================================================
|
|
|
|
$(PKG_LIB_FILE): $(PKG_OBJECTS)
|
|
-rm -f $(PKG_LIB_FILE)
|
|
${MAKE_LIB}
|
|
$(RANLIB) $(PKG_LIB_FILE)
|
|
|
|
$(PKG_STUB_LIB_FILE): $(PKG_STUB_OBJECTS)
|
|
-rm -f $(PKG_STUB_LIB_FILE)
|
|
${MAKE_STUB_LIB}
|
|
$(RANLIB_STUB) $(PKG_STUB_LIB_FILE)
|
|
|
|
#========================================================================
|
|
# We need to enumerate the list of .c to .o lines here.
|
|
#
|
|
# In the following lines, $(srcdir) refers to the toplevel directory
|
|
# containing your extension. If your sources are in a subdirectory,
|
|
# you will have to modify the paths to reflect this:
|
|
#
|
|
# sample.$(OBJEXT): $(srcdir)/generic/sample.c
|
|
# $(COMPILE) -c `@CYGPATH@ $(srcdir)/generic/sample.c` -o $@
|
|
#
|
|
# Setting the VPATH variable to a list of paths will cause the makefile
|
|
# to look into these paths when resolving .c to .obj dependencies.
|
|
# As necessary, add $(srcdir):$(srcdir)/compat:....
|
|
#========================================================================
|
|
|
|
VPATH = $(srcdir):$(srcdir)/generic:$(srcdir)/unix:$(srcdir)/win
|
|
|
|
.c.@OBJEXT@:
|
|
$(COMPILE) -c `@CYGPATH@ $<` -o $@
|
|
|
|
#========================================================================
|
|
# Distribution creation
|
|
# You may need to tweak this target to make it work correctly.
|
|
#========================================================================
|
|
|
|
#COMPRESS = tar cvf $(PKG_DIR).tar $(PKG_DIR); compress $(PKG_DIR).tar
|
|
COMPRESS = gtar zcvf $(PKG_DIR).tar.gz $(PKG_DIR)
|
|
DIST_ROOT = /tmp/dist
|
|
DIST_DIR = $(DIST_ROOT)/$(PKG_DIR)
|
|
|
|
dist-clean:
|
|
rm -rf $(DIST_DIR) $(DIST_ROOT)/$(PKG_DIR).tar.*
|
|
|
|
dist: dist-clean
|
|
mkdir -p $(DIST_DIR)
|
|
cp -p $(srcdir)/README* $(srcdir)/license* \
|
|
$(srcdir)/aclocal.m4 $(srcdir)/configure $(srcdir)/*.in \
|
|
$(DIST_DIR)/
|
|
chmod 664 $(DIST_DIR)/Makefile.in $(DIST_DIR)/aclocal.m4
|
|
chmod 775 $(DIST_DIR)/configure $(DIST_DIR)/configure.in
|
|
|
|
for i in $(srcdir)/*.[ch]; do \
|
|
if [ -f $$i ]; then \
|
|
cp -p $$i $(DIST_DIR)/ ; \
|
|
fi; \
|
|
done;
|
|
|
|
mkdir $(DIST_DIR)/tclconfig
|
|
cp $(srcdir)/tclconfig/install-sh $(srcdir)/tclconfig/tcl.m4 \
|
|
$(DIST_DIR)/tclconfig/
|
|
chmod 664 $(DIST_DIR)/tclconfig/tcl.m4
|
|
chmod +x $(DIST_DIR)/tclconfig/install-sh
|
|
|
|
list='demos doc generic library mac tests unix win'; \
|
|
for p in $$list; do \
|
|
if test -d $(srcdir)/$$p ; then \
|
|
mkdir $(DIST_DIR)/$$p; \
|
|
cp -p $(srcdir)/$$p/*.* $(DIST_DIR)/$$p/; \
|
|
fi; \
|
|
done
|
|
|
|
(cd $(DIST_ROOT); $(COMPRESS);)
|
|
|
|
#========================================================================
|
|
# End of user-definable section
|
|
#========================================================================
|
|
|
|
#========================================================================
|
|
# Don't modify the file to clean here. Instead, set the "CLEANFILES"
|
|
# variable in configure.in
|
|
#========================================================================
|
|
|
|
clean:
|
|
-test -z "$(BINARIES)" || rm -f $(BINARIES)
|
|
-rm -f *.$(OBJEXT) core *.core
|
|
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
|
|
|
distclean: clean
|
|
-rm -f *.tab.c
|
|
-rm -f $(CONFIG_CLEAN_FILES)
|
|
-rm -f config.h config.cache config.log config.status
|
|
|
|
#========================================================================
|
|
# Install binary object libraries. On Windows this includes both .dll and
|
|
# .lib files. Because the .lib files are not explicitly listed anywhere,
|
|
# we need to deduce their existence from the .dll file of the same name.
|
|
# Library files go into the lib directory.
|
|
# In addition, this will generate the pkgIndex.tcl
|
|
# file in the install location (assuming it can find a usable tclsh shell)
|
|
#
|
|
# You should not have to modify this target.
|
|
#========================================================================
|
|
|
|
install-lib-binaries: binaries
|
|
@mkdir -p $(DESTDIR)$(pkglibdir)
|
|
@list='$(lib_BINARIES)'; for p in $$list; do \
|
|
if test -f $$p; then \
|
|
echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p"; \
|
|
$(INSTALL_PROGRAM) $$p $(DESTDIR)$(pkglibdir)/$$p; \
|
|
stub=`echo $$p|sed -e "s/.*\(stub\).*/\1/"`; \
|
|
if test "x$$stub" = "xstub"; then \
|
|
echo " $(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p"; \
|
|
$(RANLIB_STUB) $(DESTDIR)$(pkglibdir)/$$p; \
|
|
else \
|
|
echo " $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p"; \
|
|
$(RANLIB) $(DESTDIR)$(pkglibdir)/$$p; \
|
|
fi; \
|
|
ext=`echo $$p|sed -e "s/.*\.//"`; \
|
|
if test "x$$ext" = "xdll"; then \
|
|
lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \
|
|
if test -f $$lib; then \
|
|
echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib"; \
|
|
$(INSTALL_DATA) $$lib $(DESTDIR)$(pkglibdir)/$$lib; \
|
|
fi; \
|
|
fi; \
|
|
fi; \
|
|
done
|
|
@list='$(PKG_TCL_SOURCES)'; for p in $$list; do \
|
|
if test -f $(srcdir)/$$p; then \
|
|
destp=`basename $$p`; \
|
|
echo " Install $$destp $(DESTDIR)$(pkglibdir)/$$destp"; \
|
|
$(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkglibdir)/$$destp; \
|
|
fi; \
|
|
done
|
|
@if test "x$(SHARED_BUILD)" = "x1"; then \
|
|
echo " Install pkgIndex.tcl $(DESTDIR)$(pkglibdir)"; \
|
|
$(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir); \
|
|
fi
|
|
|
|
#========================================================================
|
|
# Install binary executables (e.g. .exe files and dependent .dll files)
|
|
# This is for files that must go in the bin directory (located next to
|
|
# wish and tclsh), like dependent .dll files on Windows.
|
|
#
|
|
# You should not have to modify this target, except to define bin_BINARIES
|
|
# above if necessary.
|
|
#========================================================================
|
|
|
|
install-bin-binaries: binaries
|
|
@mkdir -p $(DESTDIR)$(bindir)
|
|
@list='$(bin_BINARIES)'; for p in $$list; do \
|
|
if test -f $$p; then \
|
|
echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p"; \
|
|
$(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p; \
|
|
fi; \
|
|
done
|
|
|
|
.SUFFIXES: .c .$(OBJEXT)
|
|
|
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|
cd $(top_builddir) \
|
|
&& CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
|
|
|
|
uninstall-binaries:
|
|
list='$(lib_BINARIES)'; for p in $$list; do \
|
|
rm -f $(DESTDIR)$(pkglibdir)/$$p; \
|
|
done
|
|
list='$(PKG_TCL_SOURCES)'; for p in $$list; do \
|
|
p=`basename $$p`; \
|
|
rm -f $(DESTDIR)$(pkglibdir)/$$p; \
|
|
done
|
|
list='$(bin_BINARIES)'; for p in $$list; do \
|
|
rm -f $(DESTDIR)$(bindir)/$$p; \
|
|
done
|
|
|
|
.PHONY: all binaries clean depend distclean doc install libraries test
|
|
|
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
|
# Otherwise a system limit (for SysV at least) may be exceeded.
|
|
.NOEXPORT:
|