# # Makefile.in -- make file def for websh # nca-073-9 # # (adapted from sampleextension-0.2) # # See the file "license.terms" for information on usage an # redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. # # # @(#) $Id$ # ECHO = echo TOP_DIR = .. lib_BINARIES=$(web_LIB_FILE) BINARIES=$(lib_BINARIES) SCRIPT_SOURCES = ../generic/context.tcl ../generic/script.ws3 ../generic/cookie.ws3 ../generic/sessctx.ws3 web_OBJECTS_gen = args.o \ cfg.o \ checksum.o \ command.o \ conv.o \ crypt.o \ nca_d.o \ dispatch.o \ filecounter.o \ filelock.o \ formdata.o \ hashutl.o \ htmlify.o \ log.o \ logtocmd.o \ logtochannel.o \ logtofile.o \ logtosyslog.o \ logutl.o \ messages.o \ messagesCmd.o \ paramlist.o \ querystring.o \ request.o \ script.o \ uricode.o \ url.o \ web.o \ webout.o \ weboutint.o \ webutl.o \ webutlcmd.o \ varchannel.o web_OBJECTS_cgi = modwebsh_cgi.o \ request_cgi.o \ response_cgi.o web_OBJECTS_ap = apchannel.o \ interpool.o \ logtoap.o \ mod_websh.o \ modwebsh_ap.o \ request_ap.o \ response_ap.o web_OBJECTS = $(web_OBJECTS_gen) $(web_OBJECTS_cgi) web_ap_OBJECTS := $(web_OBJECTS_gen) $(web_OBJECTS_ap) OBJECTS = $(web_OBJECTS) web_LIB_FILE = @web_LIB_FILE@ $(web_LIB_FILE)_OBJECTS = $(web_OBJECTS) # ============================================================================= # This is a list of header files to be installed # ============================================================================= GENERIC_HDRS= 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@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = . INSTALL = @INSTALL@ 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_LIB_SPEC = @TCL_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@ TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@ SHARED_LIB_SUFFIX = @SHARED_LIB_SUFFIX@ UNSHARED_LIB_SUFFIX = @UNSHARED_LIB_SUFFIX@ HTTPD_INCLUDES = @HTTPD_INCLUDES@ AUTOCONF = autoconf LDFLAGS = $(LDFLAGS_DEFAULT) INCLUDES = @TCL_INCLUDES@ $(HTTPD_INCLUDES) EXTRA_CFLAGS = $(TCL_DEFS) $(PROTO_FLAGS) $(SECURITY_FLAGS) $(MEM_DEBUG_FLAGS) $(KEYSYM_FLAGS) $(NO_DEPRECATED_FLAGS) $(TCL_EXTRA_FLAGS) DEFS = -DVERSION=\"@VERSION@\" -D@PLATFORM@=1 -DUSE_TCL_STUBS=@USE_TCL_STUBS@ $(EXTRA_CFLAGS) ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_CLEAN_FILES = mkIndex.tcl CPPFLAGS = @CPPFLAGS@ LIBS = @LIBS@ AR = ar CFLAGS = @CFLAGS@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ # ============================================================================= # TEA TARGETS. # ============================================================================= bin_BINARIES:=websh$(VERSION) all: binaries libraries binaries: $(BINARIES) $(OBJECTS) websh libraries: mod_websh.so doc: install: all install-binaries install-libraries install-doc install-binaries: binaries install-lib-binaries install-bin-binaries # ============================================================================= # Dist target - to make the tarball. # ============================================================================= dist: @echo "use ../../makedist to create a tar ball for a specific release" distdoc: ../../doc/quickref.xml ../../doc/quickref.xsl (cd ../../doc/ && make) # ============================================================================= # This rule installs platform-independent files, such as header files. # ============================================================================= install-libraries: libraries # $(mkinstalldirs) $(includedir) # echo "Installing header files in $(includedir)" # @for i in $(GENERIC_HDRS) ; do \ # echo "Installing $$i" ; \ # $(INSTALL_DATA) $$i $(includedir) ; \ # done; test: websh$(VERSION) $(web_LIB_FILE) $(web_OBJECTS) @LD_LIBRARY_PATH="$(TCL_PACKAGE_PATH):$(TCL_LIB_DIR):`pwd`:$(LD_LIBRARY_PATH)"; \ export LD_LIBRARY_PATH; \ TCL_LIBRARY="$(TCL_SRC_DIR)/library"; export TCL_LIBRARY; \ WEB_LIBRARY=$(TOP_DIR)/unix/$(web_LIB_FILE); export WEB_LIBRARY; \ WEB_BIN=$(TOP_DIR)/unix/websh$(VERSION); export WEB_BIN; \ TCLLIBPATH=$(TCL_PACKAGE_PATH); export TCLLIBPATH; \ cd $(TOP_DIR)/tests; \ umask 0; \ (echo source webtest.ws3) | ../unix/websh$(VERSION) test.pure: websh$(VERSION).pure @LD_LIBRARY_PATH="$(TCL_PACKAGE_PATH):$(TCL_LIB_DIR):`pwd`:$(LD_LIBRARY_PATH)"; \ export LD_LIBRARY_PATH; \ TCL_LIBRARY="$(TCL_SRC_DIR)/library"; export TCL_LIBRARY; \ WEB_LIBRARY=$(TOP_DIR)/unix/$(web_LIB_FILE); export WEB_LIBRARY; \ WEB_BIN=$(TOP_DIR)/unix/websh$(VERSION).pure; export WEB_BIN; \ TCLLIBPATH=$(TCL_PACKAGE_PATH); export TCLLIBPATH; \ cd $(TOP_DIR)/tests; \ umask 0; \ (echo source webtest.ws3) | ../unix/websh$(VERSION).pure test.cov: websh$(VERSION).cov @LD_LIBRARY_PATH="$(TCL_PACKAGE_PATH):$(TCL_LIB_DIR):`pwd`:$(LD_LIBRARY_PATH)"; \ export LD_LIBRARY_PATH; \ TCL_LIBRARY="$(TCL_SRC_DIR)/library"; export TCL_LIBRARY; \ WEB_LIBRARY=$(TOP_DIR)/unix/$(web_LIB_FILE); export WEB_LIBRARY; \ WEB_BIN=$(TOP_DIR)/unix/websh$(VERSION).cov; export WEB_BIN; \ TCLLIBPATH=$(TCL_PACKAGE_PATH); export TCLLIBPATH; \ cd $(TOP_DIR)/tests; \ (echo source webtest.ws3) | ../unix/websh$(VERSION).cov depend: $(web_LIB_FILE): $(web_OBJECTS) -rm -f $(web_LIB_FILE) @MAKE_LIB@ $(RANLIB) $(web_LIB_FILE) # generic ../generic/script.h: ../generic/tcldecmt.tcl $(SCRIPT_SOURCES) $(TCLSH_PROG) ../generic/tcldecmt.tcl $(SCRIPT_SOURCES) > $@ script.o: ../generic/script.c ../generic/script.h $(COMPILE) -c $< interpool.o: ../generic/interpool.c $(COMPILE) -UUSE_TCL_STUBS -c $< %.o: ../generic/%.c $(COMPILE) -c $< websh: websh$(VERSION) mod_websh.so: mod_websh$(SHARED_LIB_SUFFIX) websh$(VERSION): tclAppInit.$(OBJEXT) $(web_OBJECTS) $(CC) @LDFLAGS@ tclAppInit.$(OBJEXT) $(web_OBJECTS) \ $(TCL_LIB_SPEC) $(TCL_LIBS) $(TCL_LD_FLAGS) -o websh$(VERSION) mod_websh$(SHARED_LIB_SUFFIX): $(web_ap_OBJECTS) $(SHLIB_LD) $(TCL_LD_FLAGS) -o mod_websh$(SHARED_LIB_SUFFIX) $(web_ap_OBJECTS) $(TCL_LIB_SPEC) mod_websh.a: $(web_ap_OBJECTS) echo "proto: $(PROTO_FLAGS)" echo "sec: $(SECURITY_FLAGS)" echo "mem: $(MEM_DEBUG_FLAGS)" echo "key: $(KEYSYM_FLAGS)" echo "depre: $(NO_DEPRECATED_FLAGS)" echo "tcl_defs: $(TCL_DEFS)" echo "defs: $(DEFS)" echo "cflags $(CFLAGS)" echo "compile $(COMPILE)" exit $(STLIB_LD) mod_websh$(UNSHARED_LIB_SUFFIX) $(web_ap_OBJECTS) pure: tclAppInit.$(OBJEXT) $(web_OBJECTS) purify $(CC) @LDFLAGS@ tclAppInit.$(OBJEXT) $(web_OBJECTS) \ $(TCL_LIB_SPEC) $(TCL_LD_FLAGS) -o websh$(VERSION).pure -rm -f *_pure_*.o cov: tclAppInit.$(OBJEXT) $(web_OBJECTS) purecov $(CC) @LDFLAGS@ tclAppInit.$(OBJEXT) $(web_OBJECTS) \ $(TCL_LIB_SPEC) $(TCL_LD_FLAGS) -o websh$(VERSION).cov -rm -f *_pure_*.o # ============================================================================= # Don't modify the file to clean here. Instead, set the "CLEANFILES" # variable in configure.in # ============================================================================= clean: -rm -f $(BINARIES) -rm -f $(bin_BINARIES) -rm -f *.o core *.core -rm -f *.$(OBJEXT) -rm -f *pure* .*pure* -rm -f ../generic/script.h -rm -f *~ -rm -f ../tests/locktest.* -rm -f $(web_OBJECTS) $(web_ap_OBJECTS) mod_websh$(SHARED_LIB_SUFFIX) mod_websh$(UNSHARED_LIB_SUFFIX) -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean: clean -rm -f *.tab.c -rm -f config.cache config.log stamp-h stamp-h[0-9]* -rm -f config.status -rm -rf autom4te*.cache -rm -f configure ( cd ../../ && find . -name "*~" -exec rm -f {} \;) -rm -f Makefile $(CONFIG_CLEAN_FILES) # ============================================================================= # 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_DATA) $$p $(DESTDIR)$(bindir)/$$p"; \ $(INSTALL_DATA) $$p $(DESTDIR)$(bindir)/$$p; \ lib=`basename $$p|sed -e 's/.[^.]*$$//'`.lib; \ if test -f $$lib; then \ echo " $(INSTALL_DATA) $$lib $(DESTDIR)$(libdir)/$$lib"; \ $(INSTALL_DATA) $$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)$(bindir)/$$p"; \ $(RANLIB) $(DESTDIR)$(bindir)/$$p; \ else :; fi; \ done # ============================================================================= # Install documentation. Unix manpages should go in the $(mandir) # directory. # ============================================================================= install-doc: doc $(mkinstalldirs) $(DESTDIR)/doc @for i in quickref.html quickref.txt ; \ do \ echo "Installing $$i"; \ rm -f $(DESTDIR)/doc/$$i; \ $(INSTALL_DATA) ../../doc/$$i $(DESTDIR)/doc/$$i ; \ chmod 444 $(DESTDIR)/doc/$$i; \ done @for i in README license.terms ChangeLog changes ; \ do \ echo "Installing $$i"; \ rm -f $(DESTDIR)/doc/$$i; \ $(INSTALL_DATA) ../$$i $(DESTDIR)/doc/$$i ; \ chmod 444 $(DESTDIR)/doc/$$i; \ done # ============================================================================= # 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_PROGRAM) $$p $(DESTDIR)$(bindir)/$$p"; \ $(INSTALL_PROGRAM) $$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) .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: