1
0
mirror of https://github.com/OlafvdSpek/ctemplate.git synced 2025-09-28 19:05:49 +08:00

Fri Sep 24 11:38:27 PDT 2010 Google Inc. <opensource@google.com>

* ctemplate: version 0.98 release
	* Add new image URL modifier: :I=html, :I=css, etc (jshneier, dougy)
	* Allow lowercase words in pragma contexts (csilvers)
	* Enable full-word matching for tpl filenames (aneeshnaman)
	* Performance improvements for small_map (wonchun)
	* Avoid some compiler warnings (mac)
	* Fix a c++ conformance bug involving const (chandlerc)
	* BUGFIX: never reload string templates (panicker)
	* BUGFIX: Fix refcounting to avoid accessing freed memory (panicker)
	* PORTING: Avoid SIBGUS on sparc by aligning memory more (csilvers)
	* PORTING: Use isascii_is*() to avoid langtype issues (csilvers)
	* PORTING: Fix 'class not properly dll-epxorted' warnings (csilvers)
	* PORTING: Rename README.windows to README_windows.txt (csilvers)
	* Made NEWS file non-empty.
	* Added ctemplate.pc + ctemplate_nothreads.pc for pkg-config (csilvers)
This commit is contained in:
csilvers 2010-09-25 04:05:20 +00:00
parent 2f5f4b7baa
commit 9f086a9da1
11 changed files with 146 additions and 27 deletions

View File

@ -1,3 +1,21 @@
Fri Sep 24 11:38:27 PDT 2010 Google Inc. <opensource@google.com>
* ctemplate: version 0.98 release
* Add new image URL modifier: :I=html, :I=css, etc (jshneier, dougy)
* Allow lowercase words in pragma contexts (csilvers)
* Enable full-word matching for tpl filenames (aneeshnaman)
* Performance improvements for small_map (wonchun)
* Avoid some compiler warnings (mac)
* Fix a c++ conformance bug involving const (chandlerc)
* BUGFIX: never reload string templates (panicker)
* BUGFIX: Fix refcounting to avoid accessing freed memory (panicker)
* PORTING: Avoid SIBGUS on sparc by aligning memory more (csilvers)
* PORTING: Use isascii_is*() to avoid langtype issues (csilvers)
* PORTING: Fix 'class not properly dll-epxorted' warnings (csilvers)
* PORTING: Rename README.windows to README_windows.txt (csilvers)
* Made NEWS file non-empty.
* Added ctemplate.pc + ctemplate_nothreads.pc for pkg-config (csilvers)
Mon Apr 19 15:55:23 2010 Google Inc. <opensource@google.com>
* ctemplate: version 0.97 release

View File

@ -415,6 +415,34 @@ rpm: dist-gzip packages/rpm.sh packages/rpm/rpm.spec
deb: dist-gzip packages/deb.sh packages/deb/*
@cd packages && ./deb.sh ${PACKAGE} ${VERSION}
# http://linux.die.net/man/1/pkg-config, http://pkg-config.freedesktop.org/wiki
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = lib${PACKAGE}.pc lib${PACKAGE}_nothreads.pc
CLEANFILES += $(pkgconfig_DATA)
# I get the description and URL lines from the rpm spec. I use sed to
# try to rewrite exec_prefix, libdir, and includedir in terms of
# prefix, if possible.
lib${PACKAGE}.pc: Makefile packages/rpm/rpm.spec
echo 'prefix=$(prefix)' > "$@".tmp
echo 'exec_prefix='`echo '$(exec_prefix)' | sed 's@^$(prefix)@$${prefix}@'` >> "$@".tmp
echo 'libdir='`echo '$(libdir)' | sed 's@^$(exec_prefix)@$${exec_prefix}@'` >> "$@".tmp
echo 'includedir='`echo '$(includedir)' | sed 's@^$(prefix)@$${prefix}@'` >> "$@".tmp
echo '' >> "$@".tmp
echo 'Name: $(PACKAGE)' >> "$@".tmp
echo 'Version: $(VERSION)' >> "$@".tmp
-grep '^Summary:' packages/rpm/rpm.spec | sed s/^Summary:/Description:/ | head -n1 >> "$@".tmp
-grep '^URL: ' packages/rpm/rpm.spec >> "$@".tmp
echo 'Requires:' >> "$@".tmp
echo 'Libs: -L$${libdir} -l$(PACKAGE)' >> "$@".tmp
echo 'Libs.private: $(PTHREAD_CFLAGS) $(PTHREAD_LIBS)' >> "$@".tmp
echo 'Cflags: -I$${includedir}' >> "$@".tmp
mv -f "$@".tmp "$@"
# The nothreads version is mostly the same
lib${PACKAGE}_nothreads.pc: lib${PACKAGE}.pc
grep -v Libs.private lib${PACKAGE}.pc | sed s/-l$(PACKAGE)/-l$(PACKAGE)_nothreads/ > "$@"
# Windows wants write permission to .vcproj files and maybe even sln files.
dist-hook:
test -e "$(distdir)/vsprojects" \
@ -423,6 +451,7 @@ dist-hook:
## If you're using libtool, add 'libtool' here. Also add this rule:
libtool: $(LIBTOOL_DEPS)
$(SHELL) ./config.status --recheck
# In addition to the normal stuff, we include all the windows-specific
# code, and also the code used to generate the html-parser fsm files.
# NOTE: BUILT_SOURCES should come after the .config files, so they

View File

@ -97,7 +97,7 @@ am__vpath_adj = case $$p in \
am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \
"$(DESTDIR)$(bindir)" "$(DESTDIR)$(docdir)" \
"$(DESTDIR)$(ctemplateincludedir)"
"$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(ctemplateincludedir)"
libLTLIBRARIES_INSTALL = $(INSTALL)
LTLIBRARIES = $(lib_LTLIBRARIES) $(noinst_LTLIBRARIES)
am__DEPENDENCIES_1 =
@ -490,7 +490,8 @@ DIST_SOURCES = $(am__libctemplate_la_SOURCES_DIST) \
$(template_test_util_test_SOURCES) \
$(template_unittest_SOURCES)
dist_docDATA_INSTALL = $(INSTALL_DATA)
DATA = $(dist_doc_DATA)
pkgconfigDATA_INSTALL = $(INSTALL_DATA)
DATA = $(dist_doc_DATA) $(pkgconfig_DATA)
nodist_ctemplateincludeHEADERS_INSTALL = $(INSTALL_HEADER)
HEADERS = $(nodist_ctemplateinclude_HEADERS) $(noinst_HEADERS)
ETAGS = etags
@ -949,13 +950,18 @@ htmlparser_test_LDADD = libctemplate_debug.la $(PTHREAD_LIBS)
htmlparser_nothreads_test_SOURCES = $(htmlparser_test_SOURCES)
htmlparser_nothreads_test_CXXFLAGS = -DNO_THREADS $(AM_CXXFLAGS)
htmlparser_nothreads_test_LDADD = libctemplate_nothreads_debug.la
CLEANFILES = statemachine.c
CLEANFILES = statemachine.c $(pkgconfig_DATA)
statemachine_test_SOURCES = src/tests/statemachine_test.c \
statemachine.c
statemachine_test_CFLAGS = -I$(top_srcdir)/src/htmlparser
generate_fsm_c_test_SOURCES = src/tests/generate_fsm_c_test.c
generate_fsm_c_test_DEPENDENCIES = src/tests/htmlparser_testdata/sample_fsm.c
# http://linux.die.net/man/1/pkg-config, http://pkg-config.freedesktop.org/wiki
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = lib${PACKAGE}.pc lib${PACKAGE}_nothreads.pc
# In addition to the normal stuff, we include all the windows-specific
# code, and also the code used to generate the html-parser fsm files.
# NOTE: BUILT_SOURCES should come after the .config files, so they
@ -2134,6 +2140,23 @@ uninstall-dist_docDATA:
echo " rm -f '$(DESTDIR)$(docdir)/$$f'"; \
rm -f "$(DESTDIR)$(docdir)/$$f"; \
done
install-pkgconfigDATA: $(pkgconfig_DATA)
@$(NORMAL_INSTALL)
test -z "$(pkgconfigdir)" || $(mkdir_p) "$(DESTDIR)$(pkgconfigdir)"
@list='$(pkgconfig_DATA)'; for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
f=$(am__strip_dir) \
echo " $(pkgconfigDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
$(pkgconfigDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgconfigdir)/$$f"; \
done
uninstall-pkgconfigDATA:
@$(NORMAL_UNINSTALL)
@list='$(pkgconfig_DATA)'; for p in $$list; do \
f=$(am__strip_dir) \
echo " rm -f '$(DESTDIR)$(pkgconfigdir)/$$f'"; \
rm -f "$(DESTDIR)$(pkgconfigdir)/$$f"; \
done
install-nodist_ctemplateincludeHEADERS: $(nodist_ctemplateinclude_HEADERS)
@$(NORMAL_INSTALL)
test -z "$(ctemplateincludedir)" || $(mkdir_p) "$(DESTDIR)$(ctemplateincludedir)"
@ -2414,7 +2437,7 @@ all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(SCRIPTS) $(DATA) \
install-binPROGRAMS: install-libLTLIBRARIES
installdirs:
for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(ctemplateincludedir)"; do \
for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(ctemplateincludedir)"; do \
test -z "$$dir" || $(mkdir_p) "$$dir"; \
done
install: $(BUILT_SOURCES)
@ -2468,7 +2491,7 @@ info: info-am
info-am:
install-data-am: install-dist_docDATA \
install-nodist_ctemplateincludeHEADERS
install-nodist_ctemplateincludeHEADERS install-pkgconfigDATA
install-exec-am: install-binPROGRAMS install-binSCRIPTS \
install-libLTLIBRARIES
@ -2502,7 +2525,8 @@ ps-am:
uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS \
uninstall-dist_docDATA uninstall-info-am \
uninstall-libLTLIBRARIES \
uninstall-nodist_ctemplateincludeHEADERS
uninstall-nodist_ctemplateincludeHEADERS \
uninstall-pkgconfigDATA
.PHONY: CTAGS GTAGS all all-am am--refresh check check-TESTS check-am \
clean clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \
@ -2516,14 +2540,16 @@ uninstall-am: uninstall-binPROGRAMS uninstall-binSCRIPTS \
install-data-am install-dist_docDATA install-exec \
install-exec-am install-info install-info-am \
install-libLTLIBRARIES install-man \
install-nodist_ctemplateincludeHEADERS install-strip \
installcheck installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-compile \
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags uninstall uninstall-am uninstall-binPROGRAMS \
uninstall-binSCRIPTS uninstall-dist_docDATA uninstall-info-am \
install-nodist_ctemplateincludeHEADERS install-pkgconfigDATA \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
pdf pdf-am ps ps-am tags uninstall uninstall-am \
uninstall-binPROGRAMS uninstall-binSCRIPTS \
uninstall-dist_docDATA uninstall-info-am \
uninstall-libLTLIBRARIES \
uninstall-nodist_ctemplateincludeHEADERS
uninstall-nodist_ctemplateincludeHEADERS \
uninstall-pkgconfigDATA
# These files are auto-generated via generate_fsm.py. Since we don't want
@ -2557,6 +2583,29 @@ rpm: dist-gzip packages/rpm.sh packages/rpm/rpm.spec
deb: dist-gzip packages/deb.sh packages/deb/*
@cd packages && ./deb.sh ${PACKAGE} ${VERSION}
# I get the description and URL lines from the rpm spec. I use sed to
# try to rewrite exec_prefix, libdir, and includedir in terms of
# prefix, if possible.
lib${PACKAGE}.pc: Makefile packages/rpm/rpm.spec
echo 'prefix=$(prefix)' > "$@".tmp
echo 'exec_prefix='`echo '$(exec_prefix)' | sed 's@^$(prefix)@$${prefix}@'` >> "$@".tmp
echo 'libdir='`echo '$(libdir)' | sed 's@^$(exec_prefix)@$${exec_prefix}@'` >> "$@".tmp
echo 'includedir='`echo '$(includedir)' | sed 's@^$(prefix)@$${prefix}@'` >> "$@".tmp
echo '' >> "$@".tmp
echo 'Name: $(PACKAGE)' >> "$@".tmp
echo 'Version: $(VERSION)' >> "$@".tmp
-grep '^Summary:' packages/rpm/rpm.spec | sed s/^Summary:/Description:/ | head -n1 >> "$@".tmp
-grep '^URL: ' packages/rpm/rpm.spec >> "$@".tmp
echo 'Requires:' >> "$@".tmp
echo 'Libs: -L$${libdir} -l$(PACKAGE)' >> "$@".tmp
echo 'Libs.private: $(PTHREAD_CFLAGS) $(PTHREAD_LIBS)' >> "$@".tmp
echo 'Cflags: -I$${includedir}' >> "$@".tmp
mv -f "$@".tmp "$@"
# The nothreads version is mostly the same
lib${PACKAGE}_nothreads.pc: lib${PACKAGE}.pc
grep -v Libs.private lib${PACKAGE}.pc | sed s/-l$(PACKAGE)/-l$(PACKAGE)_nothreads/ > "$@"
# Windows wants write permission to .vcproj files and maybe even sln files.
dist-hook:
test -e "$(distdir)/vsprojects" \

17
NEWS
View File

@ -1,4 +1,17 @@
=== 20 April 2010 ==
=== 23 September 2010 ===
I've just released ctemplate 0.98. The changes are settling down as
we approach ctemplate 1.0 -- a few new default modifiers, a few
performance tweaks, a few portability improvements, but nothing
disruptive.
In my testing for this release, I noticed that the template regression
test (but not other template tests) would segfault on gcc 4.1.1 when
compiled with -O2. This seems pretty clearly to be a compiler bug; if
you need to use gcc 4.1.1 to compile ctemplate, you may wish to build
via `./configure CXXFLAGS="-O1 -g"` just to be safe.
=== 20 April 2010 ===
I've just released ctemplate 0.97. This change consists primarily of
a significant change to the API: the addition of the `TemplateCache`
@ -51,7 +64,7 @@ before the 1.0 release. The most significant changes I expect to see
are the potential removal of some of the 'forwarding' methods in the
(deprecated) `Template` class.
=== 12 June 2009 ==
=== 12 June 2009 ===
I've just released ctemplate 0.95. This is entirely an API cleanup
release. Actually, relatively little of the API proper has changed:

20
configure vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.64 for ctemplate 0.97.
# Generated by GNU Autoconf 2.64 for ctemplate 0.98.
#
# Report bugs to <opensource@google.com>.
#
@ -703,8 +703,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='ctemplate'
PACKAGE_TARNAME='ctemplate'
PACKAGE_VERSION='0.97'
PACKAGE_STRING='ctemplate 0.97'
PACKAGE_VERSION='0.98'
PACKAGE_STRING='ctemplate 0.98'
PACKAGE_BUGREPORT='opensource@google.com'
PACKAGE_URL=''
@ -1444,7 +1444,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures ctemplate 0.97 to adapt to many kinds of systems.
\`configure' configures ctemplate 0.98 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1514,7 +1514,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of ctemplate 0.97:";;
short | recursive ) echo "Configuration of ctemplate 0.98:";;
esac
cat <<\_ACEOF
@ -1623,7 +1623,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
ctemplate configure 0.97
ctemplate configure 0.98
generated by GNU Autoconf 2.64
Copyright (C) 2009 Free Software Foundation, Inc.
@ -2253,7 +2253,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by ctemplate $as_me 0.97, which was
It was created by ctemplate $as_me 0.98, which was
generated by GNU Autoconf 2.64. Invocation command line was
$ $0 $@
@ -2986,7 +2986,7 @@ fi
# Define the identity of the package.
PACKAGE='ctemplate'
VERSION='0.97'
VERSION='0.98'
cat >>confdefs.h <<_ACEOF
@ -21224,7 +21224,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by ctemplate $as_me 0.97, which was
This file was extended by ctemplate $as_me 0.98, which was
generated by GNU Autoconf 2.64. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -21288,7 +21288,7 @@ Report bugs to <opensource@google.com>."
_ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_version="\\
ctemplate config.status 0.97
ctemplate config.status 0.98
configured by $0, generated by GNU Autoconf 2.64,
with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"

View File

@ -4,7 +4,7 @@
# make sure we're interpreted by some minimal autoconf
AC_PREREQ(2.57)
AC_INIT(ctemplate, 0.97, opensource@google.com)
AC_INIT(ctemplate, 0.98, opensource@google.com)
# The argument here is just something that should be in the current directory
# (for sanity checking)
AC_CONFIG_SRCDIR(README)

View File

@ -648,7 +648,7 @@ not just the first one:</p>
</pre>
<p>Note that this behavior is immaterial when using <A
HREF="expand"><code>STRIP_WHITESPACE</code></A>, since in that case
HREF="#expand"><code>STRIP_WHITESPACE</code></A>, since in that case
all leading whitespace is stripped.</p>

View File

@ -1,3 +1,9 @@
ctemplate (0.98-1) unstable; urgency=low
* New upstream release.
-- Google Inc. <opensource@google.com> Fri, 24 Sep 2010 11:38:27 -0700
ctemplate (0.97-1) unstable; urgency=low
* New upstream release.

View File

@ -1,4 +1,5 @@
usr/lib
usr/lib/pkgconfig
usr/include
usr/include/ctemplate
usr/bin

View File

@ -3,8 +3,10 @@ usr/lib/lib*.so
usr/lib/lib*.a
usr/lib/lib*.la
usr/bin/*
usr/lib/pkgconfig/*
debian/tmp/usr/include/ctemplate/*
debian/tmp/usr/lib/lib*.so
debian/tmp/usr/lib/lib*.a
debian/tmp/usr/lib/lib*.la
debian/tmp/usr/bin/*
debian/tmp/usr/lib/pkgconfig/*

View File

@ -78,3 +78,4 @@ rm -rf $RPM_BUILD_ROOT
%{_bindir}/make_tpl_varnames_h
%{_bindir}/template-converter
%{_bindir}/diff_tpl_auto_escape
%{_libdir}/pkgconfig/*.pc