457 lines
16 KiB
Makefile
457 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 2004 ActiveState
|
|
#
|
|
# 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.5 2006/11/16 22:33:42 hobbs Exp $
|
|
|
|
#========================================================================
|
|
# Nothing of the variables below this line 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_TCL_SOURCES identifies Tcl runtime files that are associated with
|
|
# this package that need to be installed, if any.
|
|
#========================================================================
|
|
|
|
PKG_TCL_SOURCES = \
|
|
library/Init.tcl library/Balloon.tcl library/BtnBox.tcl \
|
|
library/CObjView.tcl library/ChkList.tcl library/ComboBox.tcl \
|
|
library/Compat.tcl library/Console.tcl library/Control.tcl \
|
|
library/DefSchm.tcl library/DialogS.tcl library/DirBox.tcl \
|
|
library/DirDlg.tcl library/DirList.tcl library/DirTree.tcl \
|
|
library/DragDrop.tcl library/DtlList.tcl library/EFileBox.tcl \
|
|
library/EFileDlg.tcl library/Event.tcl library/FileBox.tcl \
|
|
library/FileCbx.tcl library/FileDlg.tcl \
|
|
library/FileEnt.tcl library/FloatEnt.tcl library/Grid.tcl \
|
|
library/HList.tcl library/HListDD.tcl library/IconView.tcl \
|
|
library/LabEntry.tcl library/LabFrame.tcl library/LabWidg.tcl \
|
|
library/ListNBk.tcl library/Meter.tcl library/MultView.tcl \
|
|
library/NoteBook.tcl library/OldUtil.tcl library/OptMenu.tcl \
|
|
library/PanedWin.tcl library/PopMenu.tcl library/Primitiv.tcl \
|
|
library/ResizeH.tcl library/SGrid.tcl library/SHList.tcl \
|
|
library/SListBox.tcl library/STList.tcl library/SText.tcl \
|
|
library/SWidget.tcl library/SWindow.tcl library/Select.tcl \
|
|
library/Shell.tcl library/SimpDlg.tcl library/StackWin.tcl \
|
|
library/StatBar.tcl library/StdBBox.tcl library/StdShell.tcl \
|
|
library/TList.tcl library/Tix.tcl library/Tree.tcl \
|
|
library/Utils.tcl library/VResize.tcl library/VStack.tcl \
|
|
library/VTree.tcl library/Variable.tcl \
|
|
library/WInfo.tcl library/fs.tcl
|
|
|
|
#========================================================================
|
|
# This is a list of public header files to be installed, if any.
|
|
#========================================================================
|
|
|
|
PKG_HEADERS = @PKG_HEADERS@
|
|
|
|
PKG_EXTRA_FILES = license.terms README.txt
|
|
|
|
PKG_MAN_PAGES =
|
|
|
|
#========================================================================
|
|
# "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@
|
|
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_FLAGS = @SHLIB_LD_FLAGS@
|
|
SHLIB_LD_LIBS = @SHLIB_LD_LIBS@
|
|
STLIB_LD = @STLIB_LD@
|
|
TCL_DEFS = @TCL_DEFS@
|
|
TCL_SRC_DIR = @TCL_SRC_DIR@
|
|
TCL_BIN_DIR = @TCL_BIN_DIR@
|
|
TK_SRC_DIR = @TK_SRC_DIR@
|
|
TK_BIN_DIR = @TK_BIN_DIR@
|
|
|
|
# Not used by sample, but retained for reference of what Tcl required
|
|
TCL_LIBS = @TCL_LIBS@
|
|
TK_LIBS = @TK_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):$(TK_BIN_DIR)
|
|
TCLSH_ENV = TCL_LIBRARY=`@CYGPATH@ $(TCL_SRC_DIR)/library` \
|
|
TK_LIBRARY=`@CYGPATH@ $(TK_SRC_DIR)/library` \
|
|
TIX_LIBRARY=`@CYGPATH@ $(srcdir)/library` \
|
|
@LD_LIBRARY_PATH_VAR@="$(EXTRA_PATH):$(@LD_LIBRARY_PATH_VAR@)" \
|
|
PATH="$(EXTRA_PATH):$(PATH)" \
|
|
TCLLIBPATH="$(top_builddir)"
|
|
TCLSH_PROG = @TCLSH_PROG@
|
|
WISH_PROG = @WISH_PROG@
|
|
TCLSH = $(TCLSH_ENV) $(TCLSH_PROG)
|
|
WISH = $(TCLSH_ENV) $(WISH_PROG)
|
|
|
|
# The local includes must come first, because the TK_XINCLUDES can be
|
|
# just a comment
|
|
INCLUDES = @PKG_INCLUDES@ \
|
|
@TCL_INCLUDES@ @TK_INCLUDES@ @TK_XINCLUDES@
|
|
|
|
PKG_CFLAGS = @PKG_CFLAGS@
|
|
|
|
DEFS = @DEFS@ $(PKG_CFLAGS)
|
|
|
|
CONFIG_CLEAN_FILES = Makefile
|
|
|
|
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) pkgIndex.tcl
|
|
|
|
libraries:
|
|
|
|
doc:
|
|
|
|
install: all install-binaries install-libraries install-doc
|
|
|
|
install-binaries: binaries install-lib-binaries install-bin-binaries
|
|
@mkdir -p $(DESTDIR)$(pkglibdir)
|
|
$(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir)
|
|
@list='$(PKG_EXTRA_FILES)'; 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
|
|
|
|
#========================================================================
|
|
# This rule installs platform-independent files, such as header files.
|
|
#========================================================================
|
|
|
|
install-libraries: libraries
|
|
|
|
#========================================================================
|
|
# Install documentation. Unix manpages should go in the $(mandir)
|
|
# directory.
|
|
#========================================================================
|
|
|
|
install-doc: doc
|
|
@mkdir -p $(DESTDIR)$(pkglibdir)/html
|
|
@list='$(PKG_MAN_PAGES)'; for p in $$list; do \
|
|
html=`basename $$p|sed -e 's/.[^.]*$$//'`.html; \
|
|
$(INSTALL_DATA) $(srcdir)/doc/$$html $(DESTDIR)$(pkglibdir)/html/; \
|
|
done
|
|
|
|
html:
|
|
@cd $(srcdir)/doc; \
|
|
list='$(PKG_MAN_PAGES)'; for p in $$list; do \
|
|
html=`basename $$p|sed -e 's/.[^.]*$$//'`.html; \
|
|
echo "Creating \"$$html\" from \"$$p\""; \
|
|
rm -f $$html; \
|
|
nroff -man $$p | rman -f HTML > $$html; \
|
|
done
|
|
|
|
# Piping to cat is necessary on Windows to see the output, and
|
|
# harmless on Unix
|
|
test: binaries libraries
|
|
$(WISH) `@CYGPATH@ $(srcdir)/tests/all.tcl` $(TESTFLAGS) | cat
|
|
|
|
shell: binaries libraries
|
|
@$(WISH) $(SCRIPT)
|
|
|
|
demo: binaries libraries
|
|
$(WISH) `@CYGPATH@ $(srcdir)/demos/tixwidgets.tcl` $(TESTFLAGS) | cat
|
|
|
|
gdb:
|
|
$(TCLSH_ENV) gdb $(WISH_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)
|
|
|
|
#========================================================================
|
|
# 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:
|
|
#
|
|
# tkpkg.$(OBJEXT): $(srcdir)/src/win/tkpkg.c
|
|
# $(COMPILE) -c `@CYGPATH@ $(srcdir)/generic/tkpkg.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.
|
|
#========================================================================
|
|
|
|
VPATH = $(srcdir):$(srcdir)/generic:$(srcdir)/unix:$(srcdir)/win
|
|
|
|
.SUFFIXES: .c .$(OBJEXT)
|
|
|
|
.c.@OBJEXT@:
|
|
$(COMPILE) -c `@CYGPATH@ $<`
|
|
|
|
pkgIndex.tcl:
|
|
(\
|
|
echo 'if {[catch {package require Tcl 8.4}]} return';\
|
|
echo 'package ifneeded $(PACKAGE_NAME) $(PACKAGE_VERSION) \
|
|
[list load [file join $$dir $(PKG_LIB_FILE)] $(PACKAGE_NAME)]'\
|
|
) > pkgIndex.tcl
|
|
|
|
#========================================================================
|
|
# 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.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.
|
|
#
|
|
# You should not have to modify this target.
|
|
#========================================================================
|
|
|
|
install-lib-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; \
|
|
echo " $(RANLIB) $(DESTDIR)$(pkglibdir)/$$p"; \
|
|
$(RANLIB) $(DESTDIR)$(pkglibdir)/$$p; \
|
|
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
|
|
@echo "Installing library files to $(DESTDIR)$(pkglibdir)/$$destp";
|
|
@list='$(PKG_TCL_SOURCES)'; for p in $$list; do \
|
|
if test -f $(srcdir)/$$p; then \
|
|
destp=`basename $$p`; \
|
|
$(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(pkglibdir)/$$destp; \
|
|
fi; \
|
|
done
|
|
@echo "Installing preference sets to $(DESTDIR)$(pkglibdir)/pref"
|
|
@mkdir -p $(DESTDIR)$(pkglibdir)/pref
|
|
@cp -p $(srcdir)/library/pref/*.* $(DESTDIR)$(pkglibdir)/pref/
|
|
@echo "Installing bitmaps to $(DESTDIR)$(pkglibdir)/bitmaps"
|
|
@mkdir -p $(DESTDIR)$(pkglibdir)/bitmaps
|
|
@cp -p $(srcdir)/library/bitmaps/*.* $(DESTDIR)$(pkglibdir)/bitmaps/
|
|
|
|
#========================================================================
|
|
# Install binary executables (e.g. .exe files)
|
|
#
|
|
# You should not have to modify this target.
|
|
#========================================================================
|
|
|
|
install-bin-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
|
|
|
|
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
|
|
|
|
#========================================================================
|
|
# Starkit creation - requires ActiveTcl or compatible tclsh
|
|
# You should not have to modify this target.
|
|
#========================================================================
|
|
|
|
STARKIT_EXT = .kit.tcl
|
|
STARKIT_TCLSH = $(TCLSH)
|
|
STARKIT_BASE = tclsh
|
|
STARKIT = $(PACKAGE_NAME)$(STARKIT_EXT)
|
|
|
|
starkit-clean:
|
|
rm -f $(STARKIT)
|
|
|
|
starkit: starkit-clean
|
|
@echo "Building $(STARKIT)"
|
|
(\
|
|
echo 'package require vfs'; \
|
|
echo 'package require Mk4tcl'; \
|
|
echo ''; \
|
|
echo 'set HEADER {#!/bin/sh';\
|
|
echo '# \\'; \
|
|
echo 'exec %1s "$$0" $${1+"$$@"}'; \
|
|
echo 'package require starkit'; \
|
|
echo 'starkit::header mk4 -readonly}'; \
|
|
echo ''; \
|
|
echo 'set HEADER [format "$$HEADER\n%c" [file tail [info nameofexe]] 0x1a]'; \
|
|
echo 'set file "$(STARKIT)"'; \
|
|
echo 'set fid [open $$file w]'; \
|
|
echo 'puts $$fid $$HEADER'; \
|
|
echo 'close $$fid'; \
|
|
echo ''; \
|
|
echo 'vfs::mk4::Mount $$file $$file'; \
|
|
echo 'file copy $(PKG_LIB_FILE) $$file/'; \
|
|
echo 'vfs::unmount $$file'; \
|
|
) | $(STARKIT_TCLSH)
|
|
|
|
#========================================================================
|
|
# Distribution creation
|
|
# You should not have to modify this target.
|
|
#========================================================================
|
|
|
|
TAR = tar
|
|
#COMPRESS = $(TAR) cvf $(PKG_DIR)-src.tar $(PKG_DIR); compress $(PKG_DIR).tar
|
|
COMPRESS = $(TAR) zcvf $(PKG_DIR)-src.tar.gz $(PKG_DIR)
|
|
DIST_ROOT = /tmp/dist
|
|
DIST_DIR = $(DIST_ROOT)/$(PKG_DIR)
|
|
|
|
dist-clean:
|
|
rm -rf $(DIST_DIR) $(DIST_ROOT)/$(PKG_DIR)-src.tar.*
|
|
|
|
dist: dist-clean
|
|
mkdir -p $(DIST_DIR)
|
|
cp -pr $(srcdir)/* $(DIST_DIR)/
|
|
chmod 664 $(DIST_DIR)/Makefile.in $(DIST_DIR)/aclocal.m4
|
|
chmod 775 $(DIST_DIR)/configure $(DIST_DIR)/configure.in
|
|
|
|
find $(DIST_DIR) -type d -name CVS | xargs rm -rf
|
|
|
|
(cd $(DIST_ROOT); $(COMPRESS);)
|
|
|
|
.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:
|