You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(38) |
Sep
(134) |
Oct
(30) |
Nov
(8) |
Dec
(17) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
|
Feb
|
Mar
(14) |
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(4) |
Dec
|
2009 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2010 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Matej U. <mat...@us...> - 2006-09-12 23:43:16
|
Update of /cvsroot/mod-c/ehtml/cfgaux In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv1763/cfgaux Added Files: config.guess config.sub depcomp install-sh ltmain.sh missing Log Message: Damn, I'm just making too many mistakes... --- NEW FILE: missing --- #! /bin/sh # Common stub for a few missing GNU programs while installing. scriptversion=2005-06-08.21 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # Originally by Fran,cois Pinard <pi...@ir...>, 1996. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then echo 1>&2 "Try \`$0 --help' for more information" exit 1 fi run=: # In the cases where this matters, `missing' is being run in the # srcdir already. if test -f configure.ac; then configure_ac=configure.ac else configure_ac=configure.in fi msg="missing on your system" case "$1" in --run) # Try to run requested program, and just exit if it succeeds. run= shift "$@" && exit 0 # Exit code 63 means version mismatch. This often happens # when the user try to use an ancient version of a tool on # a file that requires a minimum version. In this case we # we should proceed has if the program had been absent, or # if --run hadn't been passed. if test $? = 63; then run=: msg="probably too old" fi ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an error status if there is no known handling for PROGRAM. Options: -h, --help display this help and exit -v, --version output version information and exit --run try to run the given command, and emulate it if it fails Supported PROGRAM values: aclocal touch file \`aclocal.m4' autoconf touch file \`configure' autoheader touch file \`config.h.in' automake touch all \`Makefile.in' files bison create \`y.tab.[ch]', if possible, from existing .[ch] flex create \`lex.yy.c', if possible, from existing .c help2man touch the output file lex create \`lex.yy.c', if possible, from existing .c makeinfo touch the output file tar try tar, gnutar, gtar, then tar without non-portable flags yacc create \`y.tab.[ch]', if possible, from existing .[ch] Send bug reports to <bug...@gn...>." exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" exit $? ;; -*) echo 1>&2 "$0: Unknown \`$1' option" echo 1>&2 "Try \`$0 --help' for more information" exit 1 ;; esac # Now exit if we have it, but it failed. Also exit now if we # don't have it and --version was passed (most likely to detect # the program). case "$1" in lex|yacc) # Not GNU programs, they don't have --version. ;; tar) if test -n "$run"; then echo 1>&2 "ERROR: \`tar' requires --run" exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then exit 1 fi ;; *) if test -z "$run" && ($1 --version) > /dev/null 2>&1; then # We have it, but it failed. exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then # Could not run --version or --help. This is probably someone # running `$TOOL --version' or `$TOOL --help' to check whether # $TOOL exists and not knowing $TOOL uses missing. exit 1 fi ;; esac # If it does not exist, or fails to run (possibly an outdated version), # try to emulate it. case "$1" in aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." touch aclocal.m4 ;; autoconf) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." touch configure ;; autoheader) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acconfig.h' or \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` test -z "$files" && files="config.h" touch_files= for f in $files; do case "$f" in *:*) touch_files="$touch_files "`echo "$f" | sed -e 's/^[^:]*://' -e 's/:.*//'`;; *) touch_files="$touch_files $f.in";; esac done touch $touch_files ;; automake*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." find . -type f -name Makefile.am -print | sed 's/\.am$/.in/' | while read f; do touch "$f"; done ;; autom4te) echo 1>&2 "\ WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the proper tools for further handling them. You can get \`$1' as part of \`Autoconf' from any GNU archive site." file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'` test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'` if test -f "$file"; then touch $file else test -z "$file" || exec >$file echo "#! /bin/sh" echo "# Created by GNU Automake missing as a replacement of" echo "# $ $@" echo "exit 0" chmod +x $file exit 1 fi ;; bison|yacc) echo 1>&2 "\ WARNING: \`$1' $msg. You should only need it if you modified a \`.y' file. You may need the \`Bison' package in order for those modifications to take effect. You can get \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h if [ $# -ne 1 ]; then eval LASTARG="\${$#}" case "$LASTARG" in *.y) SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" y.tab.c fi SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" y.tab.h fi ;; esac fi if [ ! -f y.tab.h ]; then echo >y.tab.h fi if [ ! -f y.tab.c ]; then echo 'main() { return 0; }' >y.tab.c fi ;; lex|flex) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.l' file. You may need the \`Flex' package in order for those modifications to take effect. You can get \`Flex' from any GNU archive site." rm -f lex.yy.c if [ $# -ne 1 ]; then eval LASTARG="\${$#}" case "$LASTARG" in *.l) SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" lex.yy.c fi ;; esac fi if [ ! -f lex.yy.c ]; then echo 'main() { return 0; }' >lex.yy.c fi ;; help2man) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the \`Help2man' package in order for those modifications to take effect. You can get \`Help2man' from any GNU archive site." file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` if test -z "$file"; then file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'` fi if [ -f "$file" ]; then touch $file else test -z "$file" || exec >$file echo ".ab help2man is required to generate this page" exit 1 fi ;; makeinfo) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.texi' or \`.texinfo' file, or any other file indirectly affecting the aspect of the manual. The spurious call might also be the consequence of using a buggy \`make' (AIX, DU, IRIX). You might want to install the \`Texinfo' package or the \`GNU make' package. Grab either from any GNU archive site." # The file to touch is that specified with -o ... file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` if test -z "$file"; then # ... or it is the one specified with @setfilename ... infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile` # ... or it is derived from the source name (dir/f.texi becomes f.info) test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info fi # If the file does not exist, the user really needs makeinfo; # let's fail without touching anything. test -f $file || exit 1 touch $file ;; tar) shift # We have already tried tar in the generic part. # Look for gnutar/gtar before invocation to avoid ugly error # messages. if (gnutar --version > /dev/null 2>&1); then gnutar "$@" && exit 0 fi if (gtar --version > /dev/null 2>&1); then gtar "$@" && exit 0 fi firstarg="$1" if shift; then case "$firstarg" in *o*) firstarg=`echo "$firstarg" | sed s/o//` tar "$firstarg" "$@" && exit 0 ;; esac case "$firstarg" in *h*) firstarg=`echo "$firstarg" | sed s/h//` tar "$firstarg" "$@" && exit 0 ;; esac fi echo 1>&2 "\ WARNING: I can't seem to be able to run \`tar' with the given arguments. You may want to install GNU tar or Free paxutils, or check the command line arguments." exit 1 ;; *) echo 1>&2 "\ WARNING: \`$1' is needed, and is $msg. You might have modified some files without having the proper tools for further handling them. Check the \`README' file, it often tells you about the needed prerequisites for installing this package. You may also peek at any GNU archive site, in case some other package would contain this missing \`$1' program." exit 1 ;; esac exit 0 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: --- NEW FILE: config.guess --- #! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. timestamp='2003-06-17' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software [...1372 lines suppressed...] /bin/universe = `(/bin/universe) 2>/dev/null` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` /bin/arch = `(/bin/arch) 2>/dev/null` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` UNAME_MACHINE = ${UNAME_MACHINE} UNAME_RELEASE = ${UNAME_RELEASE} UNAME_SYSTEM = ${UNAME_SYSTEM} UNAME_VERSION = ${UNAME_VERSION} EOF exit 1 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: --- NEW FILE: config.sub --- #! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003 Free Software Foundation, Inc. timestamp='2003-06-18' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software # can handle that machine. It does not imply ALL GNU software can. # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the [...1461 lines suppressed...] -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) vendor=atari ;; -vos*) vendor=stratus ;; esac basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac echo $basic_machine$os exit 0 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: --- NEW FILE: ltmain.sh --- # ltmain.sh - Provide generalized library-building support services. # NOTE: Changing this file will not affect anything until you rerun configure. # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 # Free Software Foundation, Inc. # Originally by Gordon Matzigkeit <go...@gn...>, 1996 # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software [...6824 lines suppressed...] # since we can't tell whether shared libraries were disabled because # the user asked for that or because the platform doesn't support # them. This is particularly important on AIX, because we don't # support having both static and shared libraries enabled at the same # time on that platform, so we default to a shared-only configuration. # If a disable-shared tag is given, we'll fallback to a static-only # configuration. But we'll never go from static-only to shared-only. # ### BEGIN LIBTOOL TAG CONFIG: disable-shared disable_libs=shared # ### END LIBTOOL TAG CONFIG: disable-shared # ### BEGIN LIBTOOL TAG CONFIG: disable-static disable_libs=static # ### END LIBTOOL TAG CONFIG: disable-static # Local Variables: # mode:shell-script # sh-indentation:2 # End: --- NEW FILE: depcomp --- #! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2005-07-09.11 # Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Alexandre Oliva <ol...@dc...>. case $1 in '') echo "$0: No command. Try \`$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: depcomp [--help] [--version] PROGRAM [ARGS] Run PROGRAMS ARGS to compile a file, generating dependencies as side-effects. Environment variables: depmode Dependency tracking mode. source Source file read by `PROGRAMS ARGS'. object Object file output by `PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputing dependencies. libtool Whether libtool is used (yes/no). Report bugs to <bug...@gn...>. EOF exit $? ;; -v | --v*) echo "depcomp $scriptversion" exit $? ;; esac if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. depfile=${depfile-`echo "$object" | sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" # Some modes work just like other modes, but use different flags. We # parameterize here, but still list the modes in the big case below, # to make depend.m4 easier to write. Note that we *cannot* use a case # here, because this file can only contain one case statement. if test "$depmode" = hp; then # HP compiler uses -M and no extra arg. gccflag=-M depmode=gcc fi if test "$depmode" = dashXmstdout; then # This is just like dashmstdout with a different argument. dashmflag=-xM depmode=dashmstdout fi case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi mv "$tmpdepfile" "$depfile" ;; gcc) ## There are various ways to get dependency output from gcc. Here's ## why we pick this rather obscure method: ## - Don't want to use -MD because we'd like the dependencies to end ## up in a subdir. Having to rename by hand is ugly. ## (We might end up doing this anyway to support other compilers.) ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like ## -MM, not -M (despite what the docs say). ## - Using -M directly means running the compiler twice (even worse ## than renaming). if test -z "$gccflag"; then gccflag=-MD, fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ## The second -e expression handles DOS-style file names with drive letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" ## This next piece of magic avoids the `deleted header file' problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. tr ' ' ' ' < "$tmpdepfile" | ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as ## well. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; sgi) if test "$libtool" = yes; then "$@" "-Wp,-MDupdate,$tmpdepfile" else "$@" -MDupdate "$tmpdepfile" fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files echo "$object : \\" > "$depfile" # Clip off the initial element (the dependent). Don't try to be # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; # the IRIX cc adds comments like `#:fec' to the end of the # dependency line. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr ' ' ' ' >> $depfile echo >> $depfile # The second pass generates a dummy entry for each header file. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> $depfile else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the # current directory. Also, the AIX compiler puts `$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` tmpdepfile="$stripped.u" if test "$libtool" = yes; then "$@" -Wc,-M else "$@" -M fi stat=$? if test -f "$tmpdepfile"; then : else stripped=`echo "$stripped" | sed 's,^.*/,,'` tmpdepfile="$stripped.u" fi if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi if test -f "$tmpdepfile"; then outname="$stripped.o" # Each line is of the form `foo.o: dependent.h'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; icc) # Intel's C compiler understands `-MD -MF file'. However on # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c # ICC 7.0 will fill foo.d with something like # foo.o: sub/foo.c # foo.o: sub/foo.h # which is wrong. We want: # sub/foo.o: sub/foo.c # sub/foo.o: sub/foo.h # sub/foo.c: # sub/foo.h: # ICC 7.1 will output # foo.o: sub/foo.c sub/foo.h # and will wrap long lines using \ : # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each line is of the form `foo.o: dependent.h', # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this invocation # correctly. Breaking it into two sed invocations is a workaround. sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put # dependencies in `foo.d' instead, so we check for that too. # Subdirectories are respected. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then # With Tru64 cc, shared objects can also be used to make a # static library. This mecanism is used in libtool 1.4 series to # handle both shared and static libraries in a single compilation. # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. # # With libtool 1.5 this exception was removed, and libtool now # generates 2 separate objects for the 2 libraries. These two # compilations output dependencies in in $dir.libs/$base.o.d and # in $dir$base.o.d. We have to check for both files, because # one of the two compilations can be disabled. We should prefer # $dir$base.o.d over $dir.libs/$base.o.d because the latter is # automatically cleaned when .libs/ is deleted, while ignoring # the former would cause a distcleancheck panic. tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 tmpdepfile2=$dir$base.o.d # libtool 1.5 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 "$@" -Wc,-MD else tmpdepfile1=$dir$base.o.d tmpdepfile2=$dir$base.d tmpdepfile3=$dir$base.d tmpdepfile4=$dir$base.d "$@" -MD fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" # That's a tab and a space in the []. sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. dashmstdout) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done test -z "$dashmflag" && dashmflag=-M # Require at least two characters before searching for `:' # in the target name. This is to cope with DOS-style filenames: # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. "$@" $dashmflag | sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" tr ' ' ' ' < "$tmpdepfile" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; dashXmstdout) # This case only exists to satisfy depend.m4. It is never actually # run, as this mode is specially recognized in the preamble. exit 1 ;; makedepend) "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # X makedepend shift cleared=no for arg in "$@"; do case $cleared in no) set ""; shift cleared=yes ;; esac case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done obj_suffix="`echo $object | sed 's/^.*\././'`" touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" sed '1,2d' "$tmpdepfile" | tr ' ' ' ' | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" "$tmpdepfile".bak ;; cpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done "$@" -E | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | sed '$ s: \\$::' > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" cat < "$tmpdepfile" >> "$depfile" sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; msvisualcpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o, # because we must use -o when running libtool. "$@" || exit $? IFS=" " for arg do case "$arg" in "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" echo " " >> "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; none) exec "$@" ;; *) echo "Unknown depmode $depmode" 1>&2 exit 1 ;; esac exit 0 # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: --- NEW FILE: install-sh --- #!/bin/sh # install - install a program, script, or datafile scriptversion=2005-05-14.22 # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the # following copyright and license. # # Copyright (C) 1994 X Consortium # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to # deal in the Software without restriction, including without limitation the # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or # sell copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # Except as contained in this notice, the name of the X Consortium shall not # be used in advertising or otherwise to promote the sale, use or other deal- # ings in this Software without prior written authorization from the X Consor- # tium. # # # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent # `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. It can only install one file at a time, a restriction # shared with many OS's install programs. # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. doit="${DOITPROG-}" # put in absolute paths if you don't have them in your path; or use env. vars. mvprog="${MVPROG-mv}" cpprog="${CPPROG-cp}" chmodprog="${CHMODPROG-chmod}" chownprog="${CHOWNPROG-chown}" chgrpprog="${CHGRPPROG-chgrp}" stripprog="${STRIPPROG-strip}" rmprog="${RMPROG-rm}" mkdirprog="${MKDIRPROG-mkdir}" chmodcmd="$chmodprog 0755" chowncmd= chgrpcmd= stripcmd= rmcmd="$rmprog -f" mvcmd="$mvprog" src= dst= dir_arg= dstarg= no_target_directory= usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... In the 1st form, copy SRCFILE to DSTFILE. In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. In the 4th, create DIRECTORIES. Options: -c (ignored) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. -s $stripprog installed files. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. --help display this help and exit. --version display version info and exit. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG " while test -n "$1"; do case $1 in -c) shift continue;; -d) dir_arg=true shift continue;; -g) chgrpcmd="$chgrpprog $2" shift shift continue;; --help) echo "$usage"; exit $?;; -m) chmodcmd="$chmodprog $2" shift shift continue;; -o) chowncmd="$chownprog $2" shift shift continue;; -s) stripcmd=$stripprog shift continue;; -t) dstarg=$2 shift shift continue;; -T) no_target_directory=true shift continue;; --version) echo "$0 $scriptversion"; exit $?;; *) # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. test -n "$dir_arg$dstarg" && break # Otherwise, the last argument is the destination. Remove it from $@. for arg do if test -n "$dstarg"; then # $@ is not empty: it contains at least $arg. set fnord "$@" "$dstarg" shift # fnord fi shift # arg dstarg=$arg done break;; esac done if test -z "$1"; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 fi # It's OK to call `install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi for src do # Protect names starting with `-'. case $src in -*) src=./$src ;; esac if test -n "$dir_arg"; then dst=$src src= if test -d "$dst"; then mkdircmd=: chmodcmd= else mkdircmd=$mkdirprog fi else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then echo "$0: $src does not exist." >&2 exit 1 fi if test -z "$dstarg"; then echo "$0: no destination specified." >&2 exit 1 fi dst=$dstarg # Protect names starting with `-'. case $dst in -*) dst=./$dst ;; esac # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test -n "$no_target_directory"; then echo "$0: $dstarg: Is a directory" >&2 exit 1 fi dst=$dst/`basename "$src"` fi fi # This sed command emulates the dirname command. dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` # Make sure that the destination directory exists. # Skip lots of stat calls in the usual case. if test ! -d "$dstdir"; then defaultIFS=' ' IFS="${IFS-$defaultIFS}" oIFS=$IFS # Some sh's can't handle IFS=/ for some reason. IFS='%' set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` shift IFS=$oIFS pathcomp= while test $# -ne 0 ; do pathcomp=$pathcomp$1 shift if test ! -d "$pathcomp"; then $mkdirprog "$pathcomp" # mkdir can fail with a `File exist' error in case several # install-sh are creating the directory concurrently. This # is OK. test -d "$pathcomp" || exit fi pathcomp=$pathcomp/ done fi if test -n "$dir_arg"; then $doit $mkdircmd "$dst" \ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } else dstfile=`basename "$dst"` # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ rmtmp=$dstdir/_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 trap '(exit $?); exit' 1 2 13 15 # Copy the file name to the temp name. $doit $cpprog "$src" "$dsttmp" && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } && # Now rename the file to the real destination. { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \ || { # The rename failed, perhaps because mv can't rename something else # to itself, or perhaps because mv is so ancient that it does not # support -f. # Now remove or move aside any old file at destination location. # We try this two ways since rm can't unlink itself on some # systems and the destination file might be busy for other # reasons. In this case, the final cleanup might fail but the new # file should still install successfully. { if test -f "$dstdir/$dstfile"; then $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ || { echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 (exit 1); exit 1 } else : fi } && # Now rename the file to the real destination. $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" } } fi || { (exit 1); exit 1; } done # The final little trick to "correctly" pass the exit status to the exit trap. { (exit 0); exit 0 } # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: |
From: Matej U. <mat...@us...> - 2006-09-12 23:43:12
|
Update of /cvsroot/mod-c/ehtml In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv1763 Removed Files: config.h.in Log Message: Damn, I'm just making too many mistakes... --- config.h.in DELETED --- |
From: Matej U. <mat...@us...> - 2006-09-12 23:21:50
|
Update of /cvsroot/mod-c/mod_c/src In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26019/src Removed Files: Makefile.in Log Message: Removed some autogenerated files. --- Makefile.in DELETED --- |
From: Matej U. <mat...@us...> - 2006-09-12 23:21:49
|
Update of /cvsroot/mod-c/mod_c/cfgaux In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26019/cfgaux Removed Files: config.guess config.sub depcomp install-sh ltmain.sh missing Log Message: Removed some autogenerated files. --- missing DELETED --- --- config.guess DELETED --- --- config.sub DELETED --- --- ltmain.sh DELETED --- --- depcomp DELETED --- --- install-sh DELETED --- |
From: Matej U. <mat...@us...> - 2006-09-12 23:21:49
|
Update of /cvsroot/mod-c/mod_c In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26019 Removed Files: Makefile.in aclocal.m4 configure Log Message: Removed some autogenerated files. --- aclocal.m4 DELETED --- --- Makefile.in DELETED --- --- configure DELETED --- |
From: Matej U. <mat...@us...> - 2006-09-12 23:18:04
|
Update of /cvsroot/mod-c/ehtml/cfgaux In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv24315 Removed Files: config.guess config.sub depcomp install-sh ltmain.sh missing mkinstalldirs Log Message: Removed even more autogenerated files. --- mkinstalldirs DELETED --- --- missing DELETED --- --- config.guess DELETED --- --- config.sub DELETED --- --- ltmain.sh DELETED --- --- depcomp DELETED --- --- install-sh DELETED --- |
From: Matej U. <mat...@us...> - 2006-09-12 23:12:02
|
Update of /cvsroot/mod-c/ehtml/samples In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv21457/samples Modified Files: Makefile.am Added Files: ChangeLog Removed Files: Makefile.in Log Message: Removed the DECLARE_PLUGIN and the annoying files that should be ignored. --- Makefile.in DELETED --- Index: Makefile.am =================================================================== RCS file: /cvsroot/mod-c/ehtml/samples/Makefile.am,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Makefile.am 12 Sep 2006 19:54:24 -0000 1.3 --- Makefile.am 12 Sep 2006 23:11:58 -0000 1.4 *************** *** 12,16 **** # -shared -o basic.so -lehtml ! lib_LTLIBRARIES = libsamplebasic.la libsamplesession.la libsamplebasic_la_SOURCES = 01basic.cpp libsamplebasic_la_LDFLAGS = -shared -module --- 12,16 ---- # -shared -o basic.so -lehtml ! noinst_LTLIBRARIES = libsamplebasic.la libsamplesession.la libsamplebasic_la_SOURCES = 01basic.cpp libsamplebasic_la_LDFLAGS = -shared -module --- NEW FILE: ChangeLog --- 2006-09-13 Matej Urbas <mat...@gm...> * Makefile.am: Made the samples 'noinst' for now. |
From: Matej U. <mat...@us...> - 2006-09-12 23:12:01
|
Update of /cvsroot/mod-c/ehtml/src In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv21457/src Modified Files: ChangeLog Session.cpp Removed Files: Makefile.in Log Message: Removed the DECLARE_PLUGIN and the annoying files that should be ignored. --- Makefile.in DELETED --- Index: Session.cpp =================================================================== RCS file: /cvsroot/mod-c/ehtml/src/Session.cpp,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Session.cpp 12 Sep 2006 15:23:33 -0000 1.14 --- Session.cpp 12 Sep 2006 23:11:58 -0000 1.15 *************** *** 29,35 **** bool Session::_cookie_less = false; - DECLARE_PLUGIN(SessionDriver); - DECLARE_PLUGIN(SessionIDDriver); - ////////////////////////////////////////////////////////////////////////////// // --- 29,32 ---- Index: ChangeLog =================================================================== RCS file: /cvsroot/mod-c/ehtml/src/ChangeLog,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ChangeLog 8 Sep 2006 14:35:09 -0000 1.3 --- ChangeLog 12 Sep 2006 23:11:58 -0000 1.4 *************** *** 1,2 **** --- 1,6 ---- + 2006-09-13 Matej Urbas <mat...@gm...> + + * Session.cpp: Removed the DECLARE_PLUGIN macro calls + 2006-08-23 Matej Urbas <mat...@gm...> |
From: Matej U. <mat...@us...> - 2006-09-12 23:12:01
|
Update of /cvsroot/mod-c/ehtml/include In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv21457/include Modified Files: ChangeLog Plugin.h Removed Files: Makefile.in Log Message: Removed the DECLARE_PLUGIN and the annoying files that should be ignored. --- Makefile.in DELETED --- Index: ChangeLog =================================================================== RCS file: /cvsroot/mod-c/ehtml/include/ChangeLog,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ChangeLog 8 Sep 2006 14:35:09 -0000 1.3 --- ChangeLog 12 Sep 2006 23:11:58 -0000 1.4 *************** *** 1,2 **** --- 1,7 ---- + 2006-09-13 Matej Urbas <mat...@gm...> + + * Plugin.h: Changed the DECLARE_PLUGIN define into a static + initializer. + 2006-08-23 Matej Urbas <mat...@gm...> Index: Plugin.h =================================================================== RCS file: /cvsroot/mod-c/ehtml/include/Plugin.h,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Plugin.h 12 Sep 2006 14:31:02 -0000 1.3 --- Plugin.h 12 Sep 2006 23:11:58 -0000 1.4 *************** *** 47,59 **** }; ! #if __GNUC__ >= 4 ! #define EXPLICIT_TEMPLATE template<> ! #else ! #define EXPLICIT_TEMPLATE ! #endif ! ! #define DECLARE_PLUGIN(C) \ ! EXPLICIT_TEMPLATE std::map<std::string,C*> Pluggable<C>::_map; \ ! EXPLICIT_TEMPLATE C* Pluggable<C>::_selected = NULL; //@TODO: write a plug-in registerer --- 47,52 ---- }; ! template<class C> std::map<std::string,C*> Pluggable<C>::_map; ! template<class C> C* Pluggable<C>::_selected = NULL; //@TODO: write a plug-in registerer |
From: Matej U. <mat...@us...> - 2006-09-12 23:12:01
|
Update of /cvsroot/mod-c/ehtml In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv21457 Removed Files: Makefile.in aclocal.m4 configure Log Message: Removed the DECLARE_PLUGIN and the annoying files that should be ignored. --- aclocal.m4 DELETED --- --- Makefile.in DELETED --- --- configure DELETED --- |
From: Matej U. <mat...@us...> - 2006-09-12 22:48:01
|
Update of /cvsroot/mod-c/CVSROOT In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv11929 Added Files: cvsignore Removed Files: .cvsignore Log Message: Oops. Renamed the cvsignore file. --- .cvsignore DELETED --- --- NEW FILE: cvsignore --- Makefile Makefile.in configure config.* autom4te* *.m4 |
From: Matej U. <mat...@us...> - 2006-09-12 22:42:15
|
Update of /cvsroot/mod-c/mod_c/src In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv9394/src Modified Files: ChangeLog Makefile.am Makefile.in Log Message: Well, I guess I was tooo fast :-D Reverted my changes :) Index: Makefile.in =================================================================== RCS file: /cvsroot/mod-c/mod_c/src/Makefile.in,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Makefile.in 12 Sep 2006 22:16:30 -0000 1.15 --- Makefile.in 12 Sep 2006 22:42:07 -0000 1.16 *************** *** 476,480 **** mod_c$(EXEEXT): mod_c.c libmod_c.a ! $(APXS) $(INCLUDE_DIRS) -Wc,"$(CFLAGS)" -L$(srcdir) -c mod_c.c -lmod_c -ldl -lstdc++ rm -f mod_c.so ln -s .libs/mod_c.so mod_c.so --- 476,480 ---- mod_c$(EXEEXT): mod_c.c libmod_c.a ! $(APXS) $(INCLUDE_DIRS) -Wc,"$(CFLAGS)" -L$(srcdir) -c mod_c.c -lmod_c -ldl -lstdc++ -lehtml rm -f mod_c.so ln -s .libs/mod_c.so mod_c.so Index: Makefile.am =================================================================== RCS file: /cvsroot/mod-c/mod_c/src/Makefile.am,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Makefile.am 12 Sep 2006 22:16:30 -0000 1.15 --- Makefile.am 12 Sep 2006 22:42:07 -0000 1.16 *************** *** 16,20 **** mod_c$(EXEEXT): mod_c.c libmod_c.a ! $(APXS) $(INCLUDE_DIRS) -Wc,"$(CFLAGS)" -L$(srcdir) -c mod_c.c -lmod_c -ldl -lstdc++ rm -f mod_c.so ln -s .libs/mod_c.so mod_c.so --- 16,20 ---- mod_c$(EXEEXT): mod_c.c libmod_c.a ! $(APXS) $(INCLUDE_DIRS) -Wc,"$(CFLAGS)" -L$(srcdir) -c mod_c.c -lmod_c -ldl -lstdc++ -lehtml rm -f mod_c.so ln -s .libs/mod_c.so mod_c.so Index: ChangeLog =================================================================== RCS file: /cvsroot/mod-c/mod_c/src/ChangeLog,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ChangeLog 12 Sep 2006 22:16:30 -0000 1.3 --- ChangeLog 12 Sep 2006 22:42:07 -0000 1.4 *************** *** 1,7 **** - 2006-09-13 Matej Urbas <mat...@gm...> - - * Makefile.am: We mustn't tell APXS to link against libehtml - it will - report an error, saying that libehtml isn't portable. - 2006-08-25 Gonzalo Arana <gon...@gm...> --- 1,2 ---- |
From: Matej U. <mat...@us...> - 2006-09-12 22:21:11
|
Update of /cvsroot/mod-c/CVSROOT In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv32506 Added Files: .cvsignore Log Message: Added the cvsignore file. --- NEW FILE: .cvsignore --- Makefile Makefile.in configure config.* autom4te* *.m4 |
From: Matej U. <mat...@us...> - 2006-09-12 22:16:39
|
Update of /cvsroot/mod-c/mod_c/src In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv30293/src Modified Files: ChangeLog Makefile.am Makefile.in Log Message: Told apxs not to link against libehtml - it would complain about ehtml not being portable (and exit with error). Index: Makefile.in =================================================================== RCS file: /cvsroot/mod-c/mod_c/src/Makefile.in,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Makefile.in 8 Sep 2006 15:00:32 -0000 1.14 --- Makefile.in 12 Sep 2006 22:16:30 -0000 1.15 *************** *** 1,3 **** ! # Makefile.in generated by automake 1.9.5 from Makefile.am. # @configure_input@ --- 1,3 ---- ! # Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ *************** *** 16,21 **** - SOURCES = $(libmod_c_a_SOURCES) mod_c.c - srcdir = @srcdir@ top_srcdir = @top_srcdir@ --- 16,19 ---- *************** *** 478,482 **** mod_c$(EXEEXT): mod_c.c libmod_c.a ! $(APXS) $(INCLUDE_DIRS) -Wc,"$(CFLAGS)" -L$(srcdir) -c mod_c.c -lmod_c -ldl -lstdc++ -lehtml rm -f mod_c.so ln -s .libs/mod_c.so mod_c.so --- 476,480 ---- mod_c$(EXEEXT): mod_c.c libmod_c.a ! $(APXS) $(INCLUDE_DIRS) -Wc,"$(CFLAGS)" -L$(srcdir) -c mod_c.c -lmod_c -ldl -lstdc++ rm -f mod_c.so ln -s .libs/mod_c.so mod_c.so Index: Makefile.am =================================================================== RCS file: /cvsroot/mod-c/mod_c/src/Makefile.am,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -d -r1.14 -r1.15 *** Makefile.am 8 Sep 2006 15:01:38 -0000 1.14 --- Makefile.am 12 Sep 2006 22:16:30 -0000 1.15 *************** *** 16,20 **** mod_c$(EXEEXT): mod_c.c libmod_c.a ! $(APXS) $(INCLUDE_DIRS) -Wc,"$(CFLAGS)" -L$(srcdir) -c mod_c.c -lmod_c -ldl -lstdc++ -lehtml rm -f mod_c.so ln -s .libs/mod_c.so mod_c.so --- 16,20 ---- mod_c$(EXEEXT): mod_c.c libmod_c.a ! $(APXS) $(INCLUDE_DIRS) -Wc,"$(CFLAGS)" -L$(srcdir) -c mod_c.c -lmod_c -ldl -lstdc++ rm -f mod_c.so ln -s .libs/mod_c.so mod_c.so Index: ChangeLog =================================================================== RCS file: /cvsroot/mod-c/mod_c/src/ChangeLog,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ChangeLog 25 Aug 2006 14:23:57 -0000 1.2 --- ChangeLog 12 Sep 2006 22:16:30 -0000 1.3 *************** *** 1,2 **** --- 1,6 ---- + 2006-09-13 Matej Urbas <mat...@gm...> + + * Makefile.am: We mustn't tell APXS to link against libehtml - it will + report an error, saying that libehtml isn't portable. 2006-08-25 Gonzalo Arana <gon...@gm...> |
From: Matej U. <mat...@us...> - 2006-09-12 22:16:39
|
Update of /cvsroot/mod-c/mod_c/include In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv30293/include Modified Files: Makefile.in Log Message: Told apxs not to link against libehtml - it would complain about ehtml not being portable (and exit with error). Index: Makefile.in =================================================================== RCS file: /cvsroot/mod-c/mod_c/include/Makefile.in,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Makefile.in 8 Sep 2006 15:00:32 -0000 1.3 --- Makefile.in 12 Sep 2006 22:16:30 -0000 1.4 *************** *** 1,3 **** ! # Makefile.in generated by automake 1.9.5 from Makefile.am. # @configure_input@ --- 1,3 ---- ! # Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ |
From: Matej U. <mat...@us...> - 2006-09-12 22:16:35
|
Update of /cvsroot/mod-c/mod_c In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv30293 Modified Files: .cvsignore ChangeLog Makefile.in aclocal.m4 configure Log Message: Told apxs not to link against libehtml - it would complain about ehtml not being portable (and exit with error). Index: aclocal.m4 =================================================================== RCS file: /cvsroot/mod-c/mod_c/aclocal.m4,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** aclocal.m4 8 Sep 2006 15:00:32 -0000 1.3 --- aclocal.m4 12 Sep 2006 22:16:30 -0000 1.4 *************** *** 1,3 **** ! # generated automatically by aclocal 1.9.5 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, --- 1,3 ---- ! # generated automatically by aclocal 1.9.6 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, *************** *** 14,19 **** # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- [...3994 lines suppressed...] --- 6401,6406 ---- done done ]) + SED=$lt_cv_path_SED AC_MSG_RESULT([$SED]) ]) *************** *** 5945,5949 **** # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], ! [AM_AUTOMAKE_VERSION([1.9.5])]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- --- 6423,6427 ---- # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], ! [AM_AUTOMAKE_VERSION([1.9.6])]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- Index: Makefile.in =================================================================== RCS file: /cvsroot/mod-c/mod_c/Makefile.in,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Makefile.in 22 Aug 2006 20:24:04 -0000 1.4 --- Makefile.in 12 Sep 2006 22:16:30 -0000 1.5 *************** *** 99,102 **** --- 99,104 ---- DEFS = @DEFS@ DEPDIR = @DEPDIR@ + DOXYGEN = @DOXYGEN@ + DOXYGEN_SUBDIR = @DOXYGEN_SUBDIR@ ECHO = @ECHO@ ECHO_C = @ECHO_C@ *************** *** 176,180 **** sysconfdir = @sysconfdir@ target_alias = @target_alias@ ! SUBDIRS = src include all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive --- 178,182 ---- sysconfdir = @sysconfdir@ target_alias = @target_alias@ ! SUBDIRS = src include $(DOXYGEN_SUBDIR) all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive Index: .cvsignore =================================================================== RCS file: /cvsroot/mod-c/mod_c/.cvsignore,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** .cvsignore 23 Aug 2006 14:45:38 -0000 1.1 --- .cvsignore 12 Sep 2006 22:16:30 -0000 1.2 *************** *** 4,5 **** --- 4,6 ---- config.* autom4te* + *.m4 Index: configure =================================================================== RCS file: /cvsroot/mod-c/mod_c/configure,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** configure 8 Sep 2006 15:00:32 -0000 1.6 --- configure 12 Sep 2006 22:16:30 -0000 1.7 *************** *** 281,285 **** # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. ! if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi if test -z "$ECHO"; then --- 281,285 ---- # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. ! (unset CDPATH) >/dev/null 2>&1 && unset CDPATH [...9921 lines suppressed...] + if test x"$ac_file" != x-; then + { echo "$as_me:$LINENO: creating $ac_file" >&5 + echo "$as_me: creating $ac_file" >&6;} + rm -f "$ac_file" + fi # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: *************** *** 21016,21025 **** esac done` || { (exit 1); exit 1; } - - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 - echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF --- 20492,20495 ---- Index: ChangeLog =================================================================== RCS file: /cvsroot/mod-c/mod_c/ChangeLog,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ChangeLog 1 Feb 2006 12:13:09 -0000 1.4 --- ChangeLog 12 Sep 2006 22:16:30 -0000 1.5 *************** *** 1,2 **** --- 1,6 ---- + 2006-09-13 Matej Urbas <mat...@gm...> + + * .cvsignore: Added another ignore rule. + 2006-02-01: - The default session server has been rewritten to use sockets. It still |
From: Gonzalo A. <ga...@us...> - 2006-09-12 20:02:57
|
Update of /cvsroot/mod-c/ehtml/include In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv7076/include Modified Files: Profiling.h Log Message: * Added include stdint.h Index: Profiling.h =================================================================== RCS file: /cvsroot/mod-c/ehtml/include/Profiling.h,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Profiling.h 12 Sep 2006 18:12:33 -0000 1.2 --- Profiling.h 12 Sep 2006 20:02:52 -0000 1.3 *************** *** 8,11 **** --- 8,13 ---- // + #include <stdint.h> + typedef int64_t hrtime_t; |
From: Gonzalo A. <ga...@us...> - 2006-09-12 20:01:55
|
Update of /cvsroot/mod-c/ehtml/samples In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv6605/samples Modified Files: 02session.cpp Log Message: * Session automatic restore/save/release is shifted from 02session.cpp to EHTMLApplication. Index: 02session.cpp =================================================================== RCS file: /cvsroot/mod-c/ehtml/samples/02session.cpp,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** 02session.cpp 12 Sep 2006 15:28:15 -0000 1.3 --- 02session.cpp 12 Sep 2006 20:01:49 -0000 1.4 *************** *** 17,22 **** class SessionEHTMLApp: public EHTMLApplication { - SessionDriver* driver; - Session* session; size_t cnt; --- 17,20 ---- *************** *** 30,34 **** SessionEHTMLApp(request_context* req): EHTMLApplication(req), ! session(NULL), cnt(0), lblSessionDriver("No session driver. Use EHTMLSessionType."), lblCount("count = no session"){ ; } --- 28,32 ---- SessionEHTMLApp(request_context* req): EHTMLApplication(req), ! cnt(0), lblSessionDriver("No session driver. Use EHTMLSessionType."), lblCount("count = no session"){ ; } *************** *** 45,75 **** } ! driver = SessionDriver::Selected(); if (driver == NULL) return 0; - if (!driver->Connect()) { - ap_log_error(APLOG_MARK, LOG_ERR, 0, - Request->GetRequestContext()->r->server, - "Error connecting to session server: %s", - strerror(errno)); - lblSessionDriver.SetText("Error connecting to session store."); - lblCount.SetText(strerror(errno)); - return 0; - } - lblSessionDriver.SetText("Session driver = " + driver->name()); ! session = driver->Get(); ! ! if (session == NULL) { ! SessionIDDriver* iddriver = SessionIDDriver::Selected(); ! if (iddriver != NULL) { ! SessionID id = iddriver->GenerateID(); ! session = new Session(id); ! } else { ! lblCount.SetText("no session ID driver. Use EHTMLSessionIDType."); ! } ! } if (session != NULL) { --- 43,53 ---- } ! SessionDriver* driver = SessionDriver::Selected(); if (driver == NULL) return 0; lblSessionDriver.SetText("Session driver = " + driver->name()); ! Session* session = GetSession(); if (session != NULL) { *************** *** 86,93 **** } lblCount.SetText("count = " + (*session)[COUNT]); - Debug("Got session id=%s\n", session->ID().hex().c_str()); - GetResponse()->SetCookie(Session::SessionIDName(), - session->ID().hex()); } --- 64,69 ---- } lblCount.SetText("count = " + (*session)[COUNT]); + Debug("Got session id=%s\n", session->ID().hex().c_str()); } *************** *** 95,120 **** } - virtual int DoFinishStage() { - if (session && driver) { - Debug("Finish: session id=%s\n", session->ID().hex().c_str()); - if (!driver->Save(session)) { - Error("Error saving session (hex=%s): %s", - session->ID().hex().c_str(), strerror(errno)); - } - - if (!driver->Release(session)) { - Error("Error releasing session (hex=%s): %s", - session->ID().hex().c_str(), strerror(errno)); - } - - //@todo TODO: MUST USE CONFIGURATION DIRECTIVE TO SEE WHICH ENCODING - //IS TO BE USED. - if (!driver->Disconnect()) { - Error("Error disconnecting to session server: %s", - strerror(errno)); - } - } - return EHTMLApplication::DoFinishStage(); - } }; --- 71,74 ---- |
From: Gonzalo A. <ga...@us...> - 2006-09-12 20:01:55
|
Update of /cvsroot/mod-c/ehtml/src In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv6605/src Modified Files: EHTMLApplication.cpp Log Message: * Session automatic restore/save/release is shifted from 02session.cpp to EHTMLApplication. Index: EHTMLApplication.cpp =================================================================== RCS file: /cvsroot/mod-c/ehtml/src/EHTMLApplication.cpp,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** EHTMLApplication.cpp 12 Sep 2006 15:23:33 -0000 1.10 --- EHTMLApplication.cpp 12 Sep 2006 20:01:49 -0000 1.11 *************** *** 31,34 **** --- 31,39 ---- #include <http_log.h> + #include "Profiling.h" + #include "ehtml.h" + + ProfileFunction* ProfileFunction::_head = NULL; + using namespace std; *************** *** 45,48 **** --- 50,54 ---- /* MainRequestContext = ReqContext; MainAllocPool = ReqContext->r->pool;*/ + driver = NULL; } *************** *** 92,98 **** int EHTMLApplication::DoInitStage() { ! SessionDriver* driver = SessionDriver::Selected(); ! if (driver != NULL) driver->Application(this); OnInit.Trigger(); // @TODO: Restore the session... --- 98,125 ---- int EHTMLApplication::DoInitStage() { ! driver = SessionDriver::Selected(); ! if (driver != NULL) { driver->Application(this); + if (!driver->Connect()) + Error("connecting to session server: %s", strerror(errno)); + + session = driver->Get(); + + if (session == NULL) { + SessionIDDriver* iddriver = SessionIDDriver::Selected(); + if (iddriver != NULL) { + SessionID id = iddriver->GenerateID(); + session = new Session(id); + } else { + Error("no session ID driver. Use EHTMLSessionIDType."); + } + } + + if (session != NULL) { + if (!RequestContext->dir_config->cookieless) + GetResponse()->SetCookie(Session::SessionIDName(), + session->ID().hex()); + } + } OnInit.Trigger(); // @TODO: Restore the session... *************** *** 133,136 **** --- 160,183 ---- OnFinish.Trigger(); + if (session && driver) { + Debug("Finish: session id=%s\n", session->ID().hex().c_str()); + if (!driver->Save(session)) { + Error("Error saving session (hex=%s): %s", + session->ID().hex().c_str(), strerror(errno)); + } + + if (!driver->Release(session)) { + Error("Error releasing session (hex=%s): %s", + session->ID().hex().c_str(), strerror(errno)); + } + + //@todo TODO: MUST USE CONFIGURATION DIRECTIVE TO SEE WHICH ENCODING + //IS TO BE USED. + if (!driver->Disconnect()) { + Error("Error disconnecting to session server: %s", + strerror(errno)); + } + } + // Shut down all open sessions ShutSessionsDown(); |
From: Gonzalo A. <ga...@us...> - 2006-09-12 20:01:55
|
Update of /cvsroot/mod-c/ehtml/include In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv6605/include Modified Files: EHTMLApplication.h Log Message: * Session automatic restore/save/release is shifted from 02session.cpp to EHTMLApplication. Index: EHTMLApplication.h =================================================================== RCS file: /cvsroot/mod-c/ehtml/include/EHTMLApplication.h,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** EHTMLApplication.h 12 Sep 2006 15:23:32 -0000 1.8 --- EHTMLApplication.h 12 Sep 2006 20:01:48 -0000 1.9 *************** *** 231,234 **** --- 231,239 ---- void Debug(const char* fmt, ...) const __attribute__ ((format (printf, 2, 3))); + /** + * Gets the current session + */ + Session* GetSession() { return session; } + protected: friend class Session; *************** *** 263,266 **** --- 268,281 ---- /** + * Session Driver to store the sessions. + */ + SessionDriver* driver; + + /** + * Session data + */ + Session* session; + + /** * Message logging */ |
From: Gonzalo A. <ga...@us...> - 2006-09-12 19:54:27
|
Update of /cvsroot/mod-c/ehtml/samples In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv3248/samples Modified Files: Makefile.am Log Message: * -lehtml is not needed, since these will be dlopened by mod_c, which is linked against libehtml anyway. Index: Makefile.am =================================================================== RCS file: /cvsroot/mod-c/ehtml/samples/Makefile.am,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Makefile.am 8 Sep 2006 14:36:08 -0000 1.2 --- Makefile.am 12 Sep 2006 19:54:24 -0000 1.3 *************** *** 14,21 **** lib_LTLIBRARIES = libsamplebasic.la libsamplesession.la libsamplebasic_la_SOURCES = 01basic.cpp ! libsamplebasic_la_LDFLAGS = -shared -module -lehtml #libsamplebasic_la_LIBADD = ehtml libsamplesession_la_SOURCES = 02session.cpp ! libsamplesession_la_LDFLAGS = -shared -module -lehtml --- 14,21 ---- lib_LTLIBRARIES = libsamplebasic.la libsamplesession.la libsamplebasic_la_SOURCES = 01basic.cpp ! libsamplebasic_la_LDFLAGS = -shared -module #libsamplebasic_la_LIBADD = ehtml libsamplesession_la_SOURCES = 02session.cpp ! libsamplesession_la_LDFLAGS = -shared -module |
From: Gonzalo A. <ga...@us...> - 2006-09-12 18:12:36
|
Update of /cvsroot/mod-c/ehtml/include In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv26234/include Modified Files: Profiling.h Log Message: * Added some documentation. Index: Profiling.h =================================================================== RCS file: /cvsroot/mod-c/ehtml/include/Profiling.h,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Profiling.h 12 Sep 2006 18:05:01 -0000 1.1 --- Profiling.h 12 Sep 2006 18:12:33 -0000 1.2 *************** *** 10,13 **** --- 10,17 ---- typedef int64_t hrtime_t; + /** + * Gets the cpu 'read time stamp' instruction. + * Returns the value in a 64 bit signed integer. + */ static inline hrtime_t get_tick(void) { hrtime_t regs; *************** *** 16,19 **** --- 20,27 ---- } + /** + * Profiling class. + * This provides a placeholder for accumultaed profiling counts. + */ class ProfileFunction { hrtime_t _accum; *************** *** 58,61 **** --- 66,75 ---- }; + /** + * Single run profile function. + * Measures the CPU time accumulated between object creation & destruction, + * and accumulates the result in the ProfileFunction passed by parameter to + * the constructor. + */ class ProfileRun { hrtime_t _started; *************** *** 64,77 **** ProfileRun(ProfileFunction* f): _started(get_tick()), _f(f) { ; } ~ProfileRun() { ! hrtime_t diff = get_tick() - _started; ! if (diff < 0) { ++_f->_overflows; return; } ! _f->_accum += diff; ++_f->_ncalls; } }; #define ProfileMe \ static ProfileFunction(__PRETTY_FUNCTION__, __FILE__, __LINE__) __profile;\ --- 78,97 ---- ProfileRun(ProfileFunction* f): _started(get_tick()), _f(f) { ; } ~ProfileRun() { ! hrtime_t now = get_tick(); ! if (now < _started) { ++_f->_overflows; return; } ! _f->_accum += now - _started; ++_f->_ncalls; } }; + /** + * This makes easy to profile a function, simply add the line + * <code>ProfileMe;</code> + * at the very beggining of the function and you will get your function + * profiled. + */ #define ProfileMe \ static ProfileFunction(__PRETTY_FUNCTION__, __FILE__, __LINE__) __profile;\ |
From: Gonzalo A. <ga...@us...> - 2006-09-12 18:05:04
|
Update of /cvsroot/mod-c/ehtml/include In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv22962/include Added Files: Profiling.h Log Message: Profiling classes & macro ("ProfileMe"). --- NEW FILE: Profiling.h --- #ifndef __PROFILING_H_ #define __PROFILING_H_ ////////////////////////////////////////////////////////////////////////////// // // Profiling declarations // typedef int64_t hrtime_t; static inline hrtime_t get_tick(void) { hrtime_t regs; asm volatile ("rdtsc":"=A" (regs)); return regs; } class ProfileFunction { hrtime_t _accum; int64_t _ncalls; int _overflows; int _depth; const char* _name; const char* _file; int _line; ProfileFunction *_next, *_prev; static ProfileFunction *_head; friend class ProfileRun; public: ProfileFunction(const char* name, const char* file, int line): _accum(0), _ncalls(0), _overflows(0), _depth(0), _name(name), _file(file), _line(line) { _next = _head; _prev = NULL; if (_next) _next->_prev = this; _head = this; } ~ProfileFunction() { if (_next) _next->_prev = _prev; if (_prev) _prev->_next = _next; else _head = _next; } static ProfileFunction* Head() { return _head; } ProfileFunction* Next() { return _next; } hrtime_t Accum() const { return _accum; } int64_t NCalls() const { return _ncalls; } int Overflows() const { return _overflows; } const char* Function() const { return _name; } const char* File() const { return _file; } int Line() const { return _line; } }; class ProfileRun { hrtime_t _started; ProfileFunction* _f; public: ProfileRun(ProfileFunction* f): _started(get_tick()), _f(f) { ; } ~ProfileRun() { hrtime_t diff = get_tick() - _started; if (diff < 0) { ++_f->_overflows; return; } _f->_accum += diff; ++_f->_ncalls; } }; #define ProfileMe \ static ProfileFunction(__PRETTY_FUNCTION__, __FILE__, __LINE__) __profile;\ ProfileRun __profile_run(&__profileme); #endif |
From: Gonzalo A. <ga...@us...> - 2006-09-12 15:28:18
|
Update of /cvsroot/mod-c/ehtml/samples In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv21860/samples Modified Files: 02session.cpp Log Message: * Use the propper debugging framework. Index: 02session.cpp =================================================================== RCS file: /cvsroot/mod-c/ehtml/samples/02session.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** 02session.cpp 12 Sep 2006 00:21:09 -0000 1.2 --- 02session.cpp 12 Sep 2006 15:28:15 -0000 1.3 *************** *** 86,90 **** } lblCount.SetText("count = " + (*session)[COUNT]); ! printf("session id=%s\n", session->ID().hex().c_str()); GetResponse()->SetCookie(Session::SessionIDName(), session->ID().hex()); --- 86,90 ---- } lblCount.SetText("count = " + (*session)[COUNT]); ! Debug("Got session id=%s\n", session->ID().hex().c_str()); GetResponse()->SetCookie(Session::SessionIDName(), session->ID().hex()); *************** *** 97,115 **** virtual int DoFinishStage() { if (session && driver) { ! printf("session id=%s\n", session->ID().hex().c_str()); if (!driver->Save(session)) { ! ap_log_error(APLOG_MARK, LOG_ERR, 0, ! Request->GetRequestContext()->r->server, ! "Error saving session (hex=%s): %s", ! session->ID().hex().c_str(), ! strerror(errno)); } if (!driver->Release(session)) { ! ap_log_error(APLOG_MARK, LOG_ERR, 0, ! Request->GetRequestContext()->r->server, ! "Error releasing session (hex=%s): %s", ! session->ID().hex().c_str(), ! strerror(errno)); } --- 97,109 ---- virtual int DoFinishStage() { if (session && driver) { ! Debug("Finish: session id=%s\n", session->ID().hex().c_str()); if (!driver->Save(session)) { ! Error("Error saving session (hex=%s): %s", ! session->ID().hex().c_str(), strerror(errno)); } if (!driver->Release(session)) { ! Error("Error releasing session (hex=%s): %s", ! session->ID().hex().c_str(), strerror(errno)); } *************** *** 117,123 **** //IS TO BE USED. if (!driver->Disconnect()) { ! ap_log_error(APLOG_MARK, LOG_ERR, 0, ! Request->GetRequestContext()->r->server, ! "Error disconnecting to session server: %s", strerror(errno)); } --- 111,115 ---- //IS TO BE USED. if (!driver->Disconnect()) { ! Error("Error disconnecting to session server: %s", strerror(errno)); } *************** *** 140,142 **** } - --- 132,133 ---- |
From: Gonzalo A. <ga...@us...> - 2006-09-12 15:23:36
|
Update of /cvsroot/mod-c/ehtml/src In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv19761/src Modified Files: DiskSessionDriver.cpp EHTMLApplication.cpp Session.cpp Request.cpp Log Message: * Removed spurius debugging messages. * Added a propper debugging framework. Index: DiskSessionDriver.cpp =================================================================== RCS file: /cvsroot/mod-c/ehtml/src/DiskSessionDriver.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** DiskSessionDriver.cpp 12 Sep 2006 00:25:19 -0000 1.2 --- DiskSessionDriver.cpp 12 Sep 2006 15:23:33 -0000 1.3 *************** *** 1,3 **** --- 1,4 ---- + #include <EHTMLApplication.h> #include <Session.h> #include <Common.h> *************** *** 116,122 **** string name = filename(id); string lname = locked_filename(id); - printf("name %s / %s\n", name.c_str(), lname.c_str()); if (rename(name.c_str(), lname.c_str())) { ! printf("Error: stale session (id=%s, rename error=%s)\n", id.hex().c_str(), strerror(errno)); return NULL; --- 117,122 ---- string name = filename(id); string lname = locked_filename(id); if (rename(name.c_str(), lname.c_str())) { ! Application()->Error("stale session (id=%s, rename error=%s)\n", id.hex().c_str(), strerror(errno)); return NULL; *************** *** 127,142 **** in >> *dev; } catch (const char*) { ! printf("Error: corrupt session state (id=%s)\n", id.hex().c_str()); delete dev; return NULL; } if (!in.eof()) { ! printf("Error: corrupt session state (%s)\n", id.hex().c_str()); delete dev; return NULL; } if (dev->Expired()) { ! printf("Error: expired session (id=%s, expires=%lu, now=%lu)\n", ! id.hex().c_str(), dev->Expires(), time(NULL)); unlink(lname.c_str()); delete dev; --- 127,144 ---- in >> *dev; } catch (const char*) { ! Application()->Error("corrupt session state (id=%s)\n", ! id.hex().c_str()); delete dev; return NULL; } if (!in.eof()) { ! Application()->Error("corrupt session state (id=%s)\n", ! id.hex().c_str()); delete dev; return NULL; } if (dev->Expired()) { ! Application()->Error("expired session (id=%s, expires=%lu, " ! "now=%lu)\n", id.hex().c_str(), dev->Expires(), time(NULL)); unlink(lname.c_str()); delete dev; *************** *** 171,175 **** string lname(locked_filename(s->ID())); int status = rename(lname.c_str(), name.c_str()); - printf("rename(%s,%s): %d\n", lname.c_str(), name.c_str(), status); return status ? false : true; } --- 173,176 ---- Index: Request.cpp =================================================================== RCS file: /cvsroot/mod-c/ehtml/src/Request.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** Request.cpp 12 Sep 2006 00:29:01 -0000 1.7 --- Request.cpp 12 Sep 2006 15:23:33 -0000 1.8 *************** *** 117,120 **** --- 117,138 ---- } + void Request::Error(const char* fmt, ...) const { + if (Application == NULL) + return; + va_list l; + va_start(l, fmt); + Application->Error(fmt, l); + va_end(l); + } + + void Request::Debug(const char* fmt, ...) const { + if (Application == NULL) + return; + va_list l; + va_start(l, fmt); + Application->Debug(fmt, l); + va_end(l); + } + const string * Request::operator []( const string & Key ) const { *************** *** 130,140 **** const string* Request::GetCookie(const string& name) const { ! printf("Looking for %s\n", name.c_str()); string s = name + "="; for (HeaderEntryList::const_iterator i = HeaderCookies.begin(); i != HeaderCookies.end(); ++i) { ! printf("cmp %s =? %s\n", name.c_str(), (*i)->Value); if (!strncmp((*i)->Value, s.c_str(), s.length())) { ! printf("got it! (%s)\n", (*i)->Value + name.length()+1); cookies_returned.push_front(string((*i)->Value + name.length()+1)); return &*cookies_returned.begin(); --- 148,158 ---- const string* Request::GetCookie(const string& name) const { ! Debug("Looking for %s\n", name.c_str()); string s = name + "="; for (HeaderEntryList::const_iterator i = HeaderCookies.begin(); i != HeaderCookies.end(); ++i) { ! Debug("cmp %s =? %s\n", name.c_str(), (*i)->Value); if (!strncmp((*i)->Value, s.c_str(), s.length())) { ! Debug("got it! (%s)\n", (*i)->Value + name.length()+1); cookies_returned.push_front(string((*i)->Value + name.length()+1)); return &*cookies_returned.begin(); *************** *** 147,151 **** { const apr_array_header_t* arr = apr_table_elts( RequestContext->r->headers_in ); ! printf("%s:%d\n", __PRETTY_FUNCTION__, __LINE__); if ( arr->nelts > 0 ) { --- 165,169 ---- { const apr_array_header_t* arr = apr_table_elts( RequestContext->r->headers_in ); ! Debug("%s:%d\n", __PRETTY_FUNCTION__, __LINE__); if ( arr->nelts > 0 ) { *************** *** 161,165 **** if ( _key ) { ! printf("Parsing %s\n", _key); switch ( _key[0] ) { --- 179,183 ---- if ( _key ) { ! Debug("Parsing %s\n", _key); switch ( _key[0] ) { *************** *** 180,184 **** if ( strncmp( "kie", _tmp + 1, 3 ) == 0 ) // We have a cookie ! printf("Got cookie %s => %s\n", tmp->key, tmp->val); HeaderCookies.push_back( new HeaderEntry(tmp->key, tmp->val)); } --- 198,202 ---- if ( strncmp( "kie", _tmp + 1, 3 ) == 0 ) // We have a cookie ! Debug("Got cookie %s => %s\n", tmp->key, tmp->val); HeaderCookies.push_back( new HeaderEntry(tmp->key, tmp->val)); } Index: Session.cpp =================================================================== RCS file: /cvsroot/mod-c/ehtml/src/Session.cpp,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** Session.cpp 12 Sep 2006 00:26:09 -0000 1.13 --- Session.cpp 12 Sep 2006 15:23:33 -0000 1.14 *************** *** 173,177 **** int registerSessionDriver(const char* driver_name, const char* filename) { - fprintf(stderr, "registerSessionDriver(%s,%s)\n",driver_name, filename); void* dlh = dlopen(filename, RTLD_LAZY); if (dlh == NULL) --- 173,176 ---- *************** *** 193,197 **** int useSessionDriver(const char* name, const char* arg) { - fprintf(stderr,"useSessionDriver(%s,%s)\n",name,arg); SessionDriver* selected = SessionDriver::getByName(name); if (selected == NULL) { --- 192,195 ---- *************** *** 215,219 **** int registerSessionIDDriver(const char* driver_name, const char* filename) { - fprintf(stderr, "registerSessionIDDriver(%s,%s)\n",driver_name, filename); void* dlh = dlopen(filename, RTLD_LAZY); if (dlh == NULL) --- 213,216 ---- *************** *** 235,239 **** int useSessionIDDriver(const char* name, const char* arg) { - fprintf(stderr,"useSessionIDDriver(%s,%s)\n",name,arg); SessionIDDriver* selected = SessionIDDriver::getByName(name); if (selected == NULL) { --- 232,235 ---- *************** *** 270,274 **** return NULL; SessionID sid(hexdecode(*id)); - printf("got sessionid = %s\n", sid.hex().c_str()); return Get(sid); } --- 266,269 ---- *************** *** 302,306 **** istream& operator >> (istream& i, Session& s) { i >> *static_cast<Dictionary*>(&s); - printf("Expires=%s\n",s["$$__EXPIRES$$"].c_str()); s.Expires(xatoul(s["$$__EXPIRES$$"].c_str())); s.erase("$$__EXPIRES$$"); --- 297,300 ---- Index: EHTMLApplication.cpp =================================================================== RCS file: /cvsroot/mod-c/ehtml/src/EHTMLApplication.cpp,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** EHTMLApplication.cpp 8 Sep 2006 14:37:44 -0000 1.9 --- EHTMLApplication.cpp 12 Sep 2006 15:23:33 -0000 1.10 *************** *** 29,32 **** --- 29,34 ---- #include <iostream> + #include <http_log.h> + using namespace std; *************** *** 157,158 **** --- 159,204 ---- ShutSessionsDown(); } + + void EHTMLApplication::Error(const char* fmt, ...) const { + va_list l; + va_start (l, fmt); + Error(fmt, l); + va_end(l); + } + + void EHTMLApplication::Error(const char* fmt, va_list l) const { + Log(APLOG_ERR, fmt, l); + } + + void EHTMLApplication::Debug(const char* fmt, ...) const { + va_list l; + va_start (l, fmt); + Log(APLOG_DEBUG, fmt, l); + va_end(l); + } + + static const char* prefix(int level) { + switch (level) { + case APLOG_EMERG: return "EMERG"; + case APLOG_ALERT: return "ALERT"; + case APLOG_CRIT: return "CRIT"; + case APLOG_ERR: return "ERROR"; + case APLOG_WARNING: return "WARNING"; + case APLOG_NOTICE: return "NOTICE"; + case APLOG_INFO: return "INFO"; + case APLOG_DEBUG: return "DEBUG"; + + } + return "UNKNOWN"; + } + + void EHTMLApplication::Log(int level, const char* fmt, va_list l) const { + char* msg = (char*)malloc(512); + vsnprintf(msg, 511, fmt, l); + msg[511] = '\0'; + ap_log_error(APLOG_MARK, level, 0, + RequestContext->r->server, + "%s: %s", prefix(level), msg); + free(msg); + } + |