# 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. # # 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.2.4.4 2001/07/13 00:57:11 mdejong Exp $ #======================================================================== # Edit the following few lines when writing a new extension #======================================================================== #======================================================================== # Change the name of the variable "exampleA_LIB_FILE" to match the one # used in the configure script. This is the parameterized name of the # library that we are building. #======================================================================== lib_BINARIES=$(itcl_LIB_FILE) $(itclstub_LIB_FILE) BINARIES=$(lib_BINARIES) #======================================================================== # Enumerate the names of the source files included in this package. # This will be used when a dist target is added to the Makefile. #======================================================================== WIN_DIR=$(srcdir)/win UNIX_DIR=$(srcdir)/unix GENERIC_DIR=$(srcdir)/generic PLATFORM_DIR=@PLATFORM_DIR@ WIN_SOURCES=$(PLATFORM_DIR)/tclAppInit.c \ $(PLATFORM_DIR)/dllEntryPoint.c UNIX_SOURCES=$(PLATFORM_DIR)/tclAppInit.c GENERIC_SOURCES = $(GENERIC_DIR)/itclStubInit.c \ $(GENERIC_DIR)/itclStubLib.c \ $(GENERIC_DIR)/itcl_bicmds.c \ $(GENERIC_DIR)/itcl_class.c \ $(GENERIC_DIR)/itcl_cmds.c \ $(GENERIC_DIR)/itcl_ensemble.c \ $(GENERIC_DIR)/itcl_linkage.c \ $(GENERIC_DIR)/itcl_methods.c \ $(GENERIC_DIR)/itcl_migrate.c \ $(GENERIC_DIR)/itcl_objects.c \ $(GENERIC_DIR)/itcl_obsolete.c \ $(GENERIC_DIR)/itcl_parse.c \ $(GENERIC_DIR)/itcl_util.c PLATFORM_SOURCES = @PLATFORM_SOURCES@ itcl_SOURCES = $(PLATFORM_SOURCES) $(GENERIC_SOURCES) SOURCES = $(itcl_SOURCES) #======================================================================== # Enumerate the names of the object files included in this package. # These objects are created and linked into the final library. In # most cases these object files will correspond to the source files # above. # #======================================================================== WIN_OBJECTS = dllEntryPoint.$(OBJEXT) UNIX_OBJECTS = GENERIC_OBJECTS = itclStubInit.$(OBJEXT) \ itcl_bicmds.$(OBJEXT) \ itcl_class.$(OBJEXT) \ itcl_cmds.$(OBJEXT) \ itcl_ensemble.$(OBJEXT) \ itcl_linkage.$(OBJEXT) \ itcl_methods.$(OBJEXT) \ itcl_migrate.$(OBJEXT) \ itcl_objects.$(OBJEXT) \ itcl_obsolete.$(OBJEXT) \ itcl_parse.$(OBJEXT) \ itcl_util.$(OBJEXT) PLATFORM_OBJECTS = @PLATFORM_OBJECTS@ itclstub_OBJECTS = itclStubLib.$(OBJEXT) itcl_OBJECTS = $(PLATFORM_OBJECTS) $(GENERIC_OBJECTS) OBJECTS = $(itcl_OBJECTS) $(itclstub_OBJECTS) #======================================================================== # The substitution of "exampleA_LIB_FILE" into the variable name below # let's us refer to the objects for the library without knowing the name # of the library in advance. It also lets us use the "$@" variable in # the rule for building the library, so we can refer to both the list of # objects and the library itself in a platform-independent manner. #======================================================================== itcl_LIB_FILE = @itcl_LIB_FILE@ @itcl_LIB_FILE@_OBJECTS = $(itcl_OBJECTS) itclstub_LIB_FILE = @itclstub_LIB_FILE@ @itclstub_LIB_FILE@_OBJECTS = $(itclstub_OBJECTS) #======================================================================== # This is a list of header files to be installed # itk.h includes itclInt.h, which needs itclIntDecls.h, so we must install them. #======================================================================== GENERIC_HDRS= \ $(srcdir)/generic/itcl.h \ $(srcdir)/generic/itclDecls.h \ $(srcdir)/generic/itclInt.h \ $(srcdir)/generic/itclIntDecls.h #======================================================================== # Add additional lines to handle any additional AC_SUBST cases that # have been added to the configure script. #======================================================================== SAMPLE_NEW_VAR=@SAMPLE_NEW_VAR@ # CYGNUS LOCAL ITCL_LIBRARY = @datadir@/itcl$(VERSION) # END CYGNUS LOCAL ITCL_GENERIC_DIR_NATIVE = @ITCL_GENERIC_DIR_NATIVE@ ITCL_UNIX_DIR_NATIVE = @ITCL_UNIX_DIR_NATIVE@ ITCL_WIN_DIR_NATIVE = @ITCL_WIN_DIR_NATIVE@ #======================================================================== # 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. #======================================================================== SHELL = @SHELL@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ bindir = @bindir@ sbindir = @sbindir@ libexecdir = @libexecdir@ datadir = @datadir@ sysconfdir = @sysconfdir@ sharedstatedir = @sharedstatedir@ localstatedir = @localstatedir@ libdir = @libdir@ infodir = @infodir@ mandir = @mandir@ includedir = @includedir@ oldincludedir = /usr/include DESTDIR = pkgdatadir = $(datadir)/@PACKAGE@@VERSION@ pkglibdir = $(libdir)/@PACKAGE@@VERSION@ pkgincludedir = $(includedir)/@PACKAGE@@VERSION@ top_builddir = . # CYGNUS LOCAL INSTALL = @INSTALL@ # END CYGNUS LOCAL INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : PACKAGE = @PACKAGE@ VERSION = @VERSION@ CC = @CC@ CFLAGS_DEBUG = @CFLAGS_DEBUG@ CFLAGS_DEFAULT = @CFLAGS_DEFAULT@ CFLAGS_OPTIMIZE = @CFLAGS_OPTIMIZE@ CLEANFILES = @CLEANFILES@ EXEEXT = @EXEEXT@ LDFLAGS_DEBUG = @LDFLAGS_DEBUG@ LDFLAGS_DEFAULT = @LDFLAGS_DEFAULT@ LDFLAGS_OPTIMIZE = @LDFLAGS_OPTIMIZE@ MAKE_LIB = @MAKE_LIB@ MAKE_SHARED_LIB = @MAKE_SHARED_LIB@ MAKE_STATIC_LIB = @MAKE_STATIC_LIB@ OBJEXT = @OBJEXT@ RANLIB = @RANLIB@ SHLIB_CFLAGS = @SHLIB_CFLAGS@ SHLIB_LD = @SHLIB_LD@ SHLIB_LDFLAGS = @SHLIB_LDFLAGS@ SHLIB_LD_LIBS = @SHLIB_LD_LIBS@ STLIB_LD = @STLIB_LD@ TCL_BIN_DIR = @TCL_BIN_DIR@ TCL_DEFS = @TCL_DEFS@ TCL_EXTRA_CFLAGS = @TCL_EXTRA_CFLAGS@ TCL_LD_FLAGS = @TCL_LD_FLAGS@ TCL_LIBS = @TCL_LIBS@ TCL_SHLIB_LD_LIBS = @TCL_SHLIB_LD_LIBS@ TCL_SRC_DIR = @TCL_SRC_DIR@ TCL_DBGX = @TCL_DBGX@ TCL_STUB_LIB_FILE = @TCL_STUB_LIB_FILE@ TCL_STUB_LIB_SPEC = @TCL_STUB_LIB_SPEC@ TCL_TOOL_DIR_NATIVE = @TCL_TOOL_DIR_NATIVE@ TCL_TOP_DIR_NATIVE = @TCL_TOP_DIR_NATIVE@ TCL_UNIX_DIR_NATIVE = @TCL_UNIX_DIR_NATIVE@ TCL_WIN_DIR_NATIVE = @TCL_WIN_DIR_NATIVE@ INCLUDE_DIR_NATIVE = @INCLUDE_DIR_NATIVE@ TCL_BMAP_DIR_NATIVE = @TCL_BMAP_DIR_NATIVE@ TCL_PLATFORM_DIR_NATIVE = @TCL_PLATFORM_DIR_NATIVE@ TCL_GENERIC_DIR_NATIVE = @TCL_GENERIC_DIR_NATIVE@ TCLSH_PROG = @TCLSH_PROG@ ITCL_INCLUDES = @ITCL_INCLUDES@ AUTOCONF = autoconf LDFLAGS = $(LDFLAGS_DEFAULT) INCLUDES = @TCL_INCLUDES@ @ITCL_INCLUDES@ EXTRA_CFLAGS = $(AC_FLAGS) $(PROTO_FLAGS) $(MEM_DEBUG_FLAGS) $(NO_DEPRECATED_FLAGS) $(TCL_EXTRA_CFLAGS) DEFS = @DEFS@ $(EXTRA_CFLAGS) -DITCL_LIBRARY=\"$(ITCL_LIBRARY)\" ACLOCAL_M4 = $(srcdir)/aclocal.m4 mkinstalldirs = $(SHELL) $(top_srcdir)/../config/mkinstalldirs CPPFLAGS = @CPPFLAGS@ LIBS = @LIBS@ AR = ar CFLAGS2 = @CFLAGS@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(CFLAGS2) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ #======================================================================== # 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: doc: 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. #======================================================================== install-libraries: libraries $(mkinstalldirs) $(DESTDIR)$(includedir) @echo "Installing header files in $(includedir)" @for i in $(GENERIC_HDRS) ; do \ echo "Installing $$i" ; \ $(INSTALL_DATA) $$i $(DESTDIR)$(includedir) ; \ done; @echo "Installing library files in $(ITCL_LIBRARY)" @for i in $(srcdir)/library/*.tcl ; do \ echo "Installing $$i" ; \ $(INSTALL_DATA) $$i $(DESTDIR)$(ITCL_LIBRARY) ; \ done; #======================================================================== # Install documentation. Unix manpages should go in the $(mandir) # directory. #======================================================================== install-doc: doc $(mkinstalldirs) $(DESTDIR)$(mandir)/mann @echo "Installing man pages in $(mandir)" @cd $(srcdir)/doc; for i in *.n; \ do \ echo "Installing $$i"; \ sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \ $$i > $(DESTDIR)$(mandir)/mann/$$i; \ chmod 444 $(DESTDIR)$(mandir)/mann/$$i; \ done test: $(TCLSH_PROG) $(TCLSH_PROG) `@CYGPATH@ $(srcdir)/tests/all.tcl` \ -exedir `@CYGPATH@ $(bindir)` $(TESTFLAGS) depend: #======================================================================== # Enumerate the names of the object files included in this package. # These objects are created and linked into the final library. In # most cases these object files will correspond to the source files # above. # # $(exampleA_LIB_FILE) should be listed as part of the BINARIES variable # at the top of the Makefile. That will ensure that this target is built # when you run "make binaries". # # You shouldn't need to modify this target, except to change the package # name from "exampleA" to your package's name. #======================================================================== $(itcl_LIB_FILE): $(itcl_OBJECTS) -rm -f $(itcl_LIB_FILE) @MAKE_LIB@ @POST_MAKE_LIB@ $(itclstub_LIB_FILE): $(itclstub_OBJECTS) -rm -f $(itclstub_LIB_FILE) @MAKE_STATIC_LIB@ @POST_MAKE_STATIC_LIB@ #======================================================================== # We need to enumerate the list of .c to .o lines here. # Unfortunately, there does not seem to be any other way to do this # in a Makefile-independent way. We can't use VPATH because it picks up # object files that may be located in the source directory. # # 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: # # exampleA.$(OBJEXT): $(srcdir)/src/win/exampleA.c # $(COMPILE) -c `@CYGPATH@ $(srcdir)/src/win/exampleA.c` -o $@ #======================================================================== dllEntryPoint.$(OBJEXT): $(WIN_DIR)/dllEntryPoint.c $(COMPILE) -c `@CYGPATH@ $(WIN_DIR)/dllEntryPoint.c` -o $@ tclAppInit.$(OBJEXT): $(PLATFORM_DIR)/tclAppInit.c $(COMPILE) -c `@CYGPATH@ $(PLATFORM_DIR)/tclAppInit.c` -o $@ itclStubInit.$(OBJEXT): $(GENERIC_DIR)/itclStubInit.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itclStubInit.c` -o $@ itclStubLib.$(OBJEXT): $(GENERIC_DIR)/itclStubLib.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itclStubLib.c` -o $@ itcl_bicmds.$(OBJEXT): $(GENERIC_DIR)/itcl_bicmds.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_bicmds.c` -o $@ itcl_class.$(OBJEXT): $(GENERIC_DIR)/itcl_class.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_class.c` -o $@ itcl_cmds.$(OBJEXT): $(GENERIC_DIR)/itcl_cmds.c Makefile $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_cmds.c` -o $@ itcl_ensemble.$(OBJEXT): $(GENERIC_DIR)/itcl_ensemble.c Makefile $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_ensemble.c` -o $@ itcl_linkage.$(OBJEXT): $(GENERIC_DIR)/itcl_linkage.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_linkage.c` -o $@ itcl_methods.$(OBJEXT): $(GENERIC_DIR)/itcl_methods.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_methods.c` -o $@ itcl_migrate.$(OBJEXT): $(GENERIC_DIR)/itcl_migrate.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_migrate.c` -o $@ itcl_objects.$(OBJEXT): $(GENERIC_DIR)/itcl_objects.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_objects.c` -o $@ itcl_obsolete.$(OBJEXT): $(GENERIC_DIR)/itcl_obsolete.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_obsolete.c` -o $@ itcl_parse.$(OBJEXT): $(GENERIC_DIR)/itcl_parse.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_parse.c` -o $@ itcl_util.$(OBJEXT): $(GENERIC_DIR)/itcl_util.c $(COMPILE) -c `@CYGPATH@ $(GENERIC_DIR)/itcl_util.c` -o $@ #======================================================================== # 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 *.o core *.core -rm -f *.$(OBJEXT) -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean: clean -rm -f *.tab.c -rm -f Makefile $(CONFIG_CLEAN_FILES) -rm -f config.cache config.log stamp-h stamp-h[0-9]* -rm -f config.status itclConfig.sh pkgIndex.tcl #======================================================================== # 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. # Additionally, the .dll files go into the bin directory, but the .lib # files go into the lib directory. On Unix platforms, all 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 tclsh8.2 shell) # # You should not have to modify this target. #======================================================================== install-lib-binaries: installdirs @list='$(lib_BINARIES)'; for p in $$list; do \ if test -f $$p; then \ ext=`echo $$p|sed -e "s/.*\.//"`; \ if test "x$$ext" = "xdll"; then \ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p"; \ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p; \ lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \ if test -f $$lib; then \ echo " $(INSTALL_PROGRAM) $$lib $(DESTDIR)$(libdir)/$$lib"; \ $(INSTALL_PROGRAM) $$lib $(DESTDIR)$(libdir)/$$lib; \ fi; \ else \ echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p"; \ $(INSTALL_PROGRAM) $$p $(DESTDIR)$(libdir)/$$p; \ fi; \ else :; fi; \ done @list='$(lib_BINARIES)'; for p in $$list; do \ if test -f $$p; then \ echo " $(RANLIB) $(DESTDIR)$(libdir)/$$p"; \ $(RANLIB) $(DESTDIR)$(libdir)/$$p; \ else :; fi; \ done $(INSTALL_DATA) pkgIndex.tcl $(DESTDIR)$(pkglibdir) #======================================================================== # Install binary executables (e.g. .exe files) # # You should not have to modify this target. #======================================================================== install-bin-binaries: installdirs @list='$(bin_BINARIES)'; for p in $$list; do \ if test -f $$p; then \ echo " $(INSTALL_DATA) $$p $(DESTDIR)$(bindir)/$$p"; \ $(INSTALL_DATA) $$p $(DESTDIR)$(bindir)/$$p; \ else :; fi; \ done .SUFFIXES: .c .o .obj Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status cd $(top_builddir) \ && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status #config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) # $(SHELL) ./config.status --recheck #$(srcdir)/configure: $(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) # cd $(srcdir) && $(AUTOCONF) uninstall-binaries: @$(NORMAL_UNINSTALL) list='$(BINARIES)'; for p in $$list; do \ rm -f $(DESTDIR)$(libdir)/$$p; \ done installdirs: $(mkinstalldirs) $(DESTDIR)$(libdir) $(mkinstalldirs) $(DESTDIR)$(bindir) $(mkinstalldirs) $(DESTDIR)$(pkglibdir) $(mkinstalldirs) $(DESTDIR)$(ITCL_LIBRARY) .PHONY: all binaries clean depend distclean doc install installdirs \ 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: