diff options
Diffstat (limited to 'src/libicalss')
26 files changed, 1492 insertions, 1276 deletions
diff --git a/src/libicalss/CMakeLists.txt b/src/libicalss/CMakeLists.txt index 330dfeb..a016216 100644 --- a/src/libicalss/CMakeLists.txt +++ b/src/libicalss/CMakeLists.txt @@ -1,7 +1,7 @@ include_directories( ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/src ${CMAKE_BINARY_DIR}/src - ${CMAKE_SOURCE_DIR}/src/libicalss ${CMAKE_BINARY_DIR}/src/libicalss + ${CMAKE_SOURCE_DIR}/src/libicalss ${CMAKE_BINARY_DIR}/src/libicalss ${CMAKE_SOURCE_DIR}/src/libical ${CMAKE_BINARY_DIR}/src/libical ) @@ -15,21 +15,21 @@ endif(WIN32) add_custom_command( OUTPUT - ${CMAKE_BINARY_DIR}/src/libical/icalss.h + ${CMAKE_BINARY_DIR}/src/libicalss/icalss.h COMMAND ${CMAKE_COMMAND} -DTOPS:FILEPATH=${TOPS} -DTOPB:FILEPATH=${TOPB} - -DICAL_FILE_H_FILE:FILEPATH=${CMAKE_BINARY_DIR}/src/libical/icalss.h + -DICAL_FILE_H_FILE:FILEPATH=${CMAKE_BINARY_DIR}/src/libicalss/icalss.h -P ${CMAKE_CURRENT_SOURCE_DIR}/icalss_file.cmake DEPENDS - ${CMAKE_BINARY_DIR}/src/libical/icalderivedproperty.h - ${CMAKE_BINARY_DIR}/src/libical/icalderivedparameter.h - ${CMAKE_BINARY_DIR}/src/libical/icalderivedvalue.h + ical-header ) -add_custom_target(icalss-header DEPENDS - ${CMAKE_BINARY_DIR}/src/libical/icalss.h +add_custom_target(icalss-header + DEPENDS + ical-header + ${CMAKE_BINARY_DIR}/src/libicalss/icalss.h ) ########### next target ############### @@ -38,53 +38,67 @@ add_custom_target(icalss-header DEPENDS set(icalss_LIB_DEVSRCS icalsslexer.c icalssyacc.c) set(icalss_LIB_SRCS - icalcalendar.c - icalcalendar.h - icalclassify.c - icalclassify.h - icalcluster.c - icalcluster.h - icalclusterimpl.h - icalgauge.c - icalgauge.h - icalgaugeimpl.h - icaldirset.c - icaldirset.h - icaldirsetimpl.h - icalfileset.c - icalfileset.h - icalfilesetimpl.h - icalset.c - icalset.h - icalssyacc.h - icalspanlist.c - icalspanlist.h - icalmessage.c - icalmessage.h -# $(BDB_SOURCEFILES) - ${icalss_LIB_DEVSRCS} + icalcalendar.c + icalcalendar.h + icalclassify.c + icalclassify.h + icalcluster.c + icalcluster.h + icalclusterimpl.h + icalgauge.c + icalgauge.h + icalgaugeimpl.h + icaldirset.c + icaldirset.h + icaldirsetimpl.h + icalfileset.c + icalfileset.h + icalfilesetimpl.h + icalset.c + icalset.h + icalssyacc.h + icalspanlist.c + icalspanlist.h + icalmessage.c + icalmessage.h + ${icalss_LIB_DEVSRCS} ) if(MSVC) - list(APPEND icalss_LIB_SRCS ../icalss.def) + list(APPEND icalss_LIB_SRCS ../icalss.def) endif(MSVC) -add_library(icalss SHARED ${icalss_LIB_SRCS}) +add_library(icalss ${LIBRARY_TYPE} ${icalss_LIB_SRCS}) +add_library(icalss-static STATIC ${icalss_LIB_SRCS}) + add_dependencies(icalss icalss-header) +add_dependencies(icalss-static icalss-header) target_link_libraries(icalss ical) -set_target_properties(icalss PROPERTIES VERSION ${LIBICAL_LIB_VERSION_STRING} SOVERSION ${LIBICAL_LIB_MAJOR_VERSION}) -install(TARGETS icalss ${INSTALL_TARGETS_DEFAULT_ARGS}) +if(MSVC) + set_target_properties(icalss PROPERTIES OUTPUT_NAME "libicalss") + set_target_properties(icalss-static PROPERTIES OUTPUT_NAME "libicalss-static") +else(MSVC) + set_target_properties(icalss-static PROPERTIES OUTPUT_NAME "icalss") +endif(MSVC) +set_target_properties(icalss PROPERTIES + VERSION ${LIBICAL_LIB_VERSION_STRING} + SOVERSION ${LIBICAL_LIB_MAJOR_VERSION} +) +set_target_properties(icalss PROPERTIES CLEAN_DIRECT_OUTPUT 1) +set_target_properties(icalss-static PROPERTIES CLEAN_DIRECT_OUTPUT 1) + +install(TARGETS icalss icalss-static ${INSTALL_TARGETS_DEFAULT_ARGS}) ########### install files ############### install(FILES - ${CMAKE_BINARY_DIR}/src/libical/icalss.h + ${CMAKE_BINARY_DIR}/src/libicalss/icalss.h icalcalendar.h icalclassify.h icalcluster.h - icaldirset.h + icaldirset.h icaldirsetimpl.h icalfileset.h icalfilesetimpl.h @@ -94,155 +108,6 @@ install(FILES icalset.h icalspanlist.h icalssyacc.h - #$(libicalssinclude_BDBHEADERS) DESTINATION - ${INCLUDE_INSTALL_DIR}/libical + ${INCLUDE_INSTALL_DIR}/libical ) - -#original Makefile.am contents follow: - -##====================================================================== -## FILE: Makefile.am -## CREATOR: eric -## -## $Id: Makefile.am,v 1.24 2008-02-03 15:27:34 dothebart Exp $ -## -## -## (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org -## -## This program is free software; you can redistribute it and/or modify -## it under the terms of either: -## -## The LGPL as published by the Free Software Foundation, version -## 2.1, available at: http://www.fsf.org/copyleft/lesser.html -## -## Or: -## -## The Mozilla Public License Version 1.0. You may obtain a copy of -## the License at http://www.mozilla.org/MPL/ -## -## -## -##====================================================================== -# -# -#AM_YFLAGS =-d -v -p ss -#AM_LFLAGS = -Pss -#LEX_OUTPUT_ROOT = lex.ss -# -#all: icalss.h -# -## just to get it built -#$(srcdir)/icalgauge.c: icalssyacc.h -#$(srcdir)/icalsslexer.c: icalssyacc.h -# -# -#if WITH_BDB4 -#BDB_INCLUDE=-I@BDB_DIR_INCLUDE@ -DWITH_BDB4 -#BDB_SOURCEFILES=icalbdbset.c icalbdbset.h icalbdbsetimpl.h -#BDB_HEADERFILES=$(srcdir)/icalbdbset.h -#libicalssinclude_BDBHEADERS=icalbdbset.h icalbdbsetimpl.h -#BDB_LIBFILES=@BDB_DIR_LIB@/@BDB_LIB@ -#else -#BDB_INCLUDE= -#BDB_SOURCEFILES= -#BDB_HEADERFILES= -#endif -# -#if WITH_CXX_BINDINGS -#cxx_lib=libicalss_cxx.la -#cxx_headers=icalspanlist_cxx.h -#else -#cxx_lib= -#cxx_headers= -#endif -# -#lib_LTLIBRARIES = libicalss.la $(cxx_lib) -# -#INCLUDES = \ -# -I$(top_srcdir)/src \ -# -I$(top_builddir)/src \ -# -I$(top_srcdir)/src/libical \ -# -I$(top_builddir)/src/libical \ -# $(BDB_INCLUDE) -# -#libicalss_la_LDFLAGS = -version-info 43:0:43 -#libicalss_la_LIBADD = $(BDB_LIBFILES) -# -#if DEV -#libicalss_la_DEVSOURCES = icalsslexer.l icalssyacc.y -#else -#libicalss_la_DEVSOURCES = icalsslexer.c icalssyacc.c -#endif -# -#libicalss_la_SOURCES = \ -# icalcalendar.c \ -# icalcalendar.h \ -# icalclassify.c \ -# icalclassify.h \ -# icalcluster.c \ -# icalcluster.h \ -# icalclusterimpl.h \ -# icalgauge.c \ -# icalgauge.h \ -# icalgaugeimpl.h \ -# icaldirset.c \ -# icaldirset.h \ -# icaldirsetimpl.h \ -# icalfileset.c \ -# icalfileset.h \ -# icalfilesetimpl.h \ -# icalset.c \ -# icalset.h \ -# icalssyacc.h \ -# icalspanlist.c \ -# icalspanlist.h \ -# icalmessage.c \ -# icalmessage.h \ -# $(BDB_SOURCEFILES) \ -# $(libicalss_la_DEVSOURCES) -# -#libicalssincludedir = $(includedir)/libical -# -#COMBINEDHEADERS = \ -# $(srcdir)/icalgauge.h \ -# $(srcdir)/icalset.h \ -# $(srcdir)/icalcluster.h \ -# $(srcdir)/icalfileset.h \ -# $(srcdir)/icaldirset.h \ -# $(BDB_HEADERFILES) \ -# $(srcdir)/icalcalendar.h \ -# $(srcdir)/icalclassify.h \ -# $(srcdir)/icalspanlist.h \ -# $(srcdir)/icalmessage.h -# -#if WITH_CXX_BINDINGS -#libicalss_cxx_la_SOURCES = \ -# $(libicalss_evolution_la_SOURCES) \ -# icalspanlist_cxx.h \ -# icalspanlist_cxx.cpp -# -#endif -# -#icalss.h: $(COMBINEDHEADERS) -# echo '#ifndef LIBICAL_ICALSS_H' > icalss.h -# echo '#define LIBICAL_ICALSS_H' >> icalss.h -# echo '#ifdef __cplusplus' >> icalss.h -# echo 'extern "C" {' >> icalss.h -# echo '#endif' >> icalss.h -# echo '/*' >> icalss.h -# echo ' $$''Id''$$' >> icalss.h -# echo '*/' >> icalss.h -# cat $(COMBINEDHEADERS) \ -# | egrep -v "#include.*\"ical" \ -# | egrep -v "#include.*\"pvl\.h\"" \ -# | egrep -v '\$$(Id|Locker): .+\$$'>> icalss.h -# echo '#ifdef __cplusplus' >> icalss.h -# echo '}' >> icalss.h -# echo '#endif' >> icalss.h -# echo '#endif' >> icalss.h -# -#libicalssinclude_HEADERS = icalss.h icalcalendar.h icalclassify.h icalcluster.h icaldirset.h icaldirsetimpl.h icalfileset.h icalfilesetimpl.h icalgauge.h icalgaugeimpl.h icalmessage.h icalset.h icalspanlist.h icalssyacc.h $(libicalssinclude_BDBHEADERS) -# -#CONFIG_CLEAN_FILES = y.output -# diff --git a/src/libicalss/Makefile.am b/src/libicalss/Makefile.am index f688a0b..bb0bc3d 100644 --- a/src/libicalss/Makefile.am +++ b/src/libicalss/Makefile.am @@ -23,11 +23,11 @@ #====================================================================== -AM_YFLAGS =-d -v -p ss -AM_LFLAGS = -Pss +AM_YFLAGS = -d -v -p ss -l +AM_LFLAGS = -Pss -L -R LEX_OUTPUT_ROOT = lex.ss -all: icalss.h +BUILT_SOURCES = icalss.h # just to get it built $(srcdir)/icalgauge.c: icalssyacc.h @@ -63,8 +63,13 @@ INCLUDES = \ -I$(top_builddir)/src/libical \ $(BDB_INCLUDE) -libicalss_la_LDFLAGS = -version-info 43:0:43 -libicalss_la_LIBADD = $(BDB_LIBFILES) +libicalss_la_LDFLAGS = -version-info 48:0:48 + +if OS_WIN32 +libicalss_la_LDFLAGS += -no-undefined +endif + +libicalss_la_LIBADD = $(BDB_LIBFILES) $(top_builddir)/src/libical/libical.la if DEV libicalss_la_DEVSOURCES = icalsslexer.l icalssyacc.y diff --git a/src/libicalss/Makefile.in b/src/libicalss/Makefile.in index 0ce0e36..04b5eb9 100644 --- a/src/libicalss/Makefile.in +++ b/src/libicalss/Makefile.in @@ -1,8 +1,8 @@ -# Makefile.in generated by automake 1.9.5 from Makefile.am. +# Makefile.in generated by automake 1.12.2 from Makefile.am. # @configure_input@ -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. +# Copyright (C) 1994-2012 Free Software Foundation, Inc. + # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -39,17 +39,29 @@ #====================================================================== -SOURCES = $(libicalss_la_SOURCES) $(libicalss_cxx_la_SOURCES) - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ +am__make_dryrun = \ + { \ + am__dry=no; \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ + esac; \ + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ -top_builddir = ../.. +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c @@ -64,28 +76,52 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ target_triplet = @target@ +@OS_WIN32_TRUE@am__append_1 = -no-undefined subdir = src/libicalss DIST_COMMON = $(am__libicalssinclude_HEADERS_DIST) \ - $(srcdir)/Makefile.am $(srcdir)/Makefile.in icalsslexer.c \ - icalssyacc.c icalssyacc.h + $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ + $(top_srcdir)/depcomp $(top_srcdir)/mkinstalldirs \ + $(top_srcdir)/ylwrap icalsslexer.c icalssyacc.c icalssyacc.h ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_VPATH_FILES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ *) f=$$p;; \ esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } am__installdirs = "$(DESTDIR)$(libdir)" \ "$(DESTDIR)$(libicalssincludedir)" -libLTLIBRARIES_INSTALL = $(INSTALL) LTLIBRARIES = $(lib_LTLIBRARIES) am__DEPENDENCIES_1 = -libicalss_la_DEPENDENCIES = $(am__DEPENDENCIES_1) +libicalss_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \ + $(top_builddir)/src/libical/libical.la am__libicalss_la_SOURCES_DIST = icalcalendar.c icalcalendar.h \ icalclassify.c icalclassify.h icalcluster.c icalcluster.h \ icalclusterimpl.h icalgauge.c icalgauge.h icalgaugeimpl.h \ @@ -102,6 +138,9 @@ am_libicalss_la_OBJECTS = icalcalendar.lo icalclassify.lo \ icalset.lo icalspanlist.lo icalmessage.lo $(am__objects_1) \ $(am__objects_2) libicalss_la_OBJECTS = $(am_libicalss_la_OBJECTS) +libicalss_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(libicalss_la_LDFLAGS) $(LDFLAGS) -o $@ libicalss_cxx_la_LIBADD = am__libicalss_cxx_la_SOURCES_DIST = icalspanlist_cxx.h \ icalspanlist_cxx.cpp @@ -109,46 +148,57 @@ am__libicalss_cxx_la_SOURCES_DIST = icalspanlist_cxx.h \ @WITH_CXX_BINDINGS_TRUE@ icalspanlist_cxx.lo libicalss_cxx_la_OBJECTS = $(am_libicalss_cxx_la_OBJECTS) @WITH_CXX_BINDINGS_TRUE@am_libicalss_cxx_la_rpath = -rpath $(libdir) -DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles +am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -LTCXXCOMPILE = $(LIBTOOL) --tag=CXX --mode=compile $(CXX) $(DEFS) \ - $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ - $(AM_CXXFLAGS) $(CXXFLAGS) +LTCXXCOMPILE = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) CXXLD = $(CXX) -CXXLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXXLD) $(AM_CXXFLAGS) \ - $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -LEXCOMPILE = $(LEX) $(LFLAGS) $(AM_LFLAGS) -LTLEXCOMPILE = $(LIBTOOL) --mode=compile $(LEX) $(LFLAGS) $(AM_LFLAGS) -YACCCOMPILE = $(YACC) $(YFLAGS) $(AM_YFLAGS) -LTYACCCOMPILE = $(LIBTOOL) --mode=compile $(YACC) $(YFLAGS) \ - $(AM_YFLAGS) +CXXLINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=link $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ + $(LDFLAGS) -o $@ +@MAINTAINER_MODE_FALSE@am__skiplex = test -f $@ || +LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS) +LTLEXCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(LEX) $(AM_LFLAGS) $(LFLAGS) +YLWRAP = $(top_srcdir)/ylwrap +@MAINTAINER_MODE_FALSE@am__skipyacc = test -f $@ || +am__yacc_c2h = sed -e s/cc$$/hh/ -e s/cpp$$/hpp/ -e s/cxx$$/hxx/ \ + -e s/c++$$/h++/ -e s/c$$/h/ +YACCCOMPILE = $(YACC) $(AM_YFLAGS) $(YFLAGS) +LTYACCCOMPILE = $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ + --mode=compile $(YACC) $(AM_YFLAGS) $(YFLAGS) SOURCES = $(libicalss_la_SOURCES) $(libicalss_cxx_la_SOURCES) DIST_SOURCES = $(am__libicalss_la_SOURCES_DIST) \ $(am__libicalss_cxx_la_SOURCES_DIST) +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac am__libicalssinclude_HEADERS_DIST = icalss.h icalcalendar.h \ icalclassify.h icalcluster.h icaldirset.h icaldirsetimpl.h \ icalfileset.h icalfilesetimpl.h icalgauge.h icalgaugeimpl.h \ icalmessage.h icalset.h icalspanlist.h icalssyacc.h \ icalbdbset.h icalbdbsetimpl.h -libicalssincludeHEADERS_INSTALL = $(INSTALL_HEADER) HEADERS = $(libicalssinclude_HEADERS) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AR = @AR@ AUTOCONF = @AUTOCONF@ @@ -172,18 +222,17 @@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ -DEV_FALSE = @DEV_FALSE@ -DEV_TRUE = @DEV_TRUE@ -ECHO = @ECHO@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ -F77 = @F77@ -FFLAGS = @FFLAGS@ -HAVE_PTHREAD_FALSE = @HAVE_PTHREAD_FALSE@ -HAVE_PTHREAD_TRUE = @HAVE_PTHREAD_TRUE@ +FGREP = @FGREP@ +GREP = @GREP@ +INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ @@ -193,6 +242,7 @@ JAVA = @JAVA@ JAVAC = @JAVAC@ JAVAH = @JAVAH@ JAVA_PLATFORM = @JAVA_PLATFORM@ +LD = @LD@ LDFLAGS = @LDFLAGS@ LEX = @LEX@ LEXLIB = @LEXLIB@ @@ -200,53 +250,52 @@ LEX_OUTPUT_ROOT = lex.ss LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ LN_S = @LN_S@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ -MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ -MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ OBJEXT = @OBJEXT@ -OS_WIN32_FALSE = @OS_WIN32_FALSE@ -OS_WIN32_TRUE = @OS_WIN32_TRUE@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL = @PERL@ PTHREAD_LIBS = @PTHREAD_LIBS@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ PY_CFLAGS = @PY_CFLAGS@ -PY_EXTRA_LIBS = @PY_EXTRA_LIBS@ -PY_LIBS = @PY_LIBS@ -PY_LIB_LOC = @PY_LIB_LOC@ RANLIB = @RANLIB@ +SED = @SED@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ VERSION = @VERSION@ -WITH_BDB4_FALSE = @WITH_BDB4_FALSE@ -WITH_BDB4_TRUE = @WITH_BDB4_TRUE@ -WITH_CXX_BINDINGS_FALSE = @WITH_CXX_BINDINGS_FALSE@ -WITH_CXX_BINDINGS_TRUE = @WITH_CXX_BINDINGS_TRUE@ -WITH_JAVA_FALSE = @WITH_JAVA_FALSE@ -WITH_JAVA_TRUE = @WITH_JAVA_TRUE@ -WITH_PYTHON_FALSE = @WITH_PYTHON_FALSE@ -WITH_PYTHON_TRUE = @WITH_PYTHON_TRUE@ YACC = @YACC@ +YFLAGS = @YFLAGS@ ZONE_INFO = @ZONE_INFO@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ -ac_ct_F77 = @ac_ct_F77@ -ac_ct_RANLIB = @ac_ct_RANLIB@ -ac_ct_STRIP = @ac_ct_STRIP@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ -am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ @@ -258,35 +307,52 @@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ +builddir = @builddir@ datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ +htmldir = @htmldir@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ prefix = @prefix@ program_transform_name = @program_transform_name@ -python_val = @python_val@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +swig_val = @swig_val@ sysconfdir = @sysconfdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ target_os = @target_os@ target_vendor = @target_vendor@ -AM_YFLAGS = -d -v -p ss -AM_LFLAGS = -Pss +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +AM_YFLAGS = -d -v -p ss -l +AM_LFLAGS = -Pss -L -R +BUILT_SOURCES = icalss.h @WITH_BDB4_FALSE@BDB_INCLUDE = @WITH_BDB4_TRUE@BDB_INCLUDE = -I@BDB_DIR_INCLUDE@ -DWITH_BDB4 @WITH_BDB4_FALSE@BDB_SOURCEFILES = @@ -307,8 +373,8 @@ INCLUDES = \ -I$(top_builddir)/src/libical \ $(BDB_INCLUDE) -libicalss_la_LDFLAGS = -version-info 43:0:43 -libicalss_la_LIBADD = $(BDB_LIBFILES) +libicalss_la_LDFLAGS = -version-info 48:0:48 $(am__append_1) +libicalss_la_LIBADD = $(BDB_LIBFILES) $(top_builddir)/src/libical/libical.la @DEV_FALSE@libicalss_la_DEVSOURCES = icalsslexer.c icalssyacc.c @DEV_TRUE@libicalss_la_DEVSOURCES = icalsslexer.l icalssyacc.y libicalss_la_SOURCES = \ @@ -358,7 +424,8 @@ COMBINEDHEADERS = \ libicalssinclude_HEADERS = icalss.h icalcalendar.h icalclassify.h icalcluster.h icaldirset.h icaldirsetimpl.h icalfileset.h icalfilesetimpl.h icalgauge.h icalgaugeimpl.h icalmessage.h icalset.h icalspanlist.h icalssyacc.h $(libicalssinclude_BDBHEADERS) CONFIG_CLEAN_FILES = y.output -all: all-am +all: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) all-am .SUFFIXES: .SUFFIXES: .c .cpp .l .lo .o .obj .y @@ -366,14 +433,14 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/libicalss/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --gnu src/libicalss/Makefile + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/libicalss/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu src/libicalss/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ @@ -391,42 +458,48 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): install-libLTLIBRARIES: $(lib_LTLIBRARIES) @$(NORMAL_INSTALL) - test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)" - @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + list2=; for p in $$list; do \ if test -f $$p; then \ - f=$(am__strip_dir) \ - echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \ - $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \ + list2="$$list2 $$p"; \ else :; fi; \ - done + done; \ + test -z "$$list2" || { \ + echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ + } uninstall-libLTLIBRARIES: @$(NORMAL_UNINSTALL) - @set -x; list='$(lib_LTLIBRARIES)'; for p in $$list; do \ - p=$(am__strip_dir) \ - echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \ - $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \ + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ done clean-libLTLIBRARIES: -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) - @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ - dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ - test "$$dir" != "$$p" || dir=.; \ - echo "rm -f \"$${dir}/so_locations\""; \ - rm -f "$${dir}/so_locations"; \ - done + @list='$(lib_LTLIBRARIES)'; \ + locs=`for p in $$list; do echo $$p; done | \ + sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ + sort -u`; \ + test -z "$$locs" || { \ + echo rm -f $${locs}; \ + rm -f $${locs}; \ + } icalssyacc.h: icalssyacc.c - @if test ! -f $@; then \ - rm -f icalssyacc.c; \ - $(MAKE) icalssyacc.c; \ - else :; fi -libicalss.la: $(libicalss_la_OBJECTS) $(libicalss_la_DEPENDENCIES) - $(LINK) -rpath $(libdir) $(libicalss_la_LDFLAGS) $(libicalss_la_OBJECTS) $(libicalss_la_LIBADD) $(LIBS) -libicalss_cxx.la: $(libicalss_cxx_la_OBJECTS) $(libicalss_cxx_la_DEPENDENCIES) - $(CXXLINK) $(am_libicalss_cxx_la_rpath) $(libicalss_cxx_la_LDFLAGS) $(libicalss_cxx_la_OBJECTS) $(libicalss_cxx_la_LIBADD) $(LIBS) + @if test ! -f $@; then rm -f icalssyacc.c; else :; fi + @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) icalssyacc.c; else :; fi +libicalss.la: $(libicalss_la_OBJECTS) $(libicalss_la_DEPENDENCIES) $(EXTRA_libicalss_la_DEPENDENCIES) + $(libicalss_la_LINK) -rpath $(libdir) $(libicalss_la_OBJECTS) $(libicalss_la_LIBADD) $(LIBS) +libicalss_cxx.la: $(libicalss_cxx_la_OBJECTS) $(libicalss_cxx_la_DEPENDENCIES) $(EXTRA_libicalss_cxx_la_DEPENDENCIES) + $(CXXLINK) $(am_libicalss_cxx_la_rpath) $(libicalss_cxx_la_OBJECTS) $(libicalss_cxx_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -449,183 +522,186 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/icalssyacc.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ -@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ -@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ -@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< .cpp.o: -@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ -@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< .cpp.obj: -@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ -@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` .cpp.lo: -@am__fastdepCXX_TRUE@ if $(LTCXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ -@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo @AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCXX_FALSE@ $(LTCXXCOMPILE) -c -o $@ $< .l.c: - $(LEXCOMPILE) $< - sed '/^#/ s|$(LEX_OUTPUT_ROOT)\.c|$@|' $(LEX_OUTPUT_ROOT).c >$@ - rm -f $(LEX_OUTPUT_ROOT).c + $(am__skiplex) $(SHELL) $(YLWRAP) $< $(LEX_OUTPUT_ROOT).c $@ -- $(LEXCOMPILE) .y.c: - $(YACCCOMPILE) $< - if test -f y.tab.h; then \ - to=`echo "$*_H" | sed \ - -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \ - -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g'`; \ - sed -e "/^#/!b" -e "s/Y_TAB_H/$$to/g" -e "s|y\.tab\.h|$*.h|" \ - y.tab.h >$*.ht; \ - rm -f y.tab.h; \ - if cmp -s $*.ht $*.h; then \ - rm -f $*.ht ;\ - else \ - mv $*.ht $*.h; \ - fi; \ - fi - if test -f y.output; then \ - mv y.output $*.output; \ - fi - sed '/^#/ s|y\.tab\.c|$@|' y.tab.c >$@t && mv $@t $@ - rm -f y.tab.c + $(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h `echo $@ | $(am__yacc_c2h)` y.output $*.output -- $(YACCCOMPILE) mostlyclean-libtool: -rm -f *.lo clean-libtool: -rm -rf .libs _libs - -distclean-libtool: - -rm -f libtool -uninstall-info-am: install-libicalssincludeHEADERS: $(libicalssinclude_HEADERS) @$(NORMAL_INSTALL) - test -z "$(libicalssincludedir)" || $(mkdir_p) "$(DESTDIR)$(libicalssincludedir)" - @list='$(libicalssinclude_HEADERS)'; for p in $$list; do \ + @list='$(libicalssinclude_HEADERS)'; test -n "$(libicalssincludedir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(libicalssincludedir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(libicalssincludedir)" || exit 1; \ + fi; \ + for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(libicalssincludeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(libicalssincludedir)/$$f'"; \ - $(libicalssincludeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(libicalssincludedir)/$$f"; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(libicalssincludedir)'"; \ + $(INSTALL_HEADER) $$files "$(DESTDIR)$(libicalssincludedir)" || exit $$?; \ done uninstall-libicalssincludeHEADERS: @$(NORMAL_UNINSTALL) - @list='$(libicalssinclude_HEADERS)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(libicalssincludedir)/$$f'"; \ - rm -f "$(DESTDIR)$(libicalssincludedir)/$$f"; \ - done + @list='$(libicalssinclude_HEADERS)'; test -n "$(libicalssincludedir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(libicalssincludedir)'; $(am__uninstall_files_from_dir) ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ + set x; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ + $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in files) print i; }; }'`; \ + test -z "$(CTAGS_ARGS)$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique + $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" + +cscopelist: $(HEADERS) $(SOURCES) $(LISP) + list='$(SOURCES) $(HEADERS) $(LISP)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ || exit 1; \ fi; \ done check-am: all-am -check: check-am +check: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) check-am all-am: Makefile $(LTLIBRARIES) $(HEADERS) installdirs: for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(libicalssincludedir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done -install: install-am +install: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am @@ -635,16 +711,22 @@ install-am: all-am installcheck: installcheck-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @@ -652,6 +734,7 @@ maintainer-clean-generic: -rm -f icalsslexer.c -rm -f icalssyacc.c -rm -f icalssyacc.h + -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) clean: clean-am clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \ @@ -661,7 +744,7 @@ distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ - distclean-libtool distclean-tags + distclean-tags dvi: dvi-am @@ -669,18 +752,38 @@ dvi-am: html: html-am +html-am: + info: info-am info-am: install-data-am: install-libicalssincludeHEADERS +install-dvi: install-dvi-am + +install-dvi-am: + install-exec-am: install-libLTLIBRARIES +install-html: install-html-am + +install-html-am: + install-info: install-info-am +install-info-am: + install-man: +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + installcheck-am: maintainer-clean: maintainer-clean-am @@ -701,26 +804,28 @@ ps: ps-am ps-am: -uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES \ +uninstall-am: uninstall-libLTLIBRARIES \ uninstall-libicalssincludeHEADERS +.MAKE: all check install install-am install-strip + .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ - clean-libLTLIBRARIES clean-libtool ctags distclean \ + clean-libLTLIBRARIES clean-libtool cscopelist ctags distclean \ distclean-compile distclean-generic distclean-libtool \ distclean-tags distdir dvi dvi-am html html-am info info-am \ - install install-am install-data install-data-am install-exec \ - install-exec-am install-info install-info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am \ install-libLTLIBRARIES install-libicalssincludeHEADERS \ - install-man install-strip installcheck installcheck-am \ + install-man install-pdf install-pdf-am install-ps \ + install-ps-am 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-info-am uninstall-libLTLIBRARIES \ + uninstall-am uninstall-libLTLIBRARIES \ uninstall-libicalssincludeHEADERS -all: icalss.h - # just to get it built $(srcdir)/icalgauge.c: icalssyacc.h $(srcdir)/icalsslexer.c: icalssyacc.h @@ -742,6 +847,7 @@ icalss.h: $(COMBINEDHEADERS) echo '}' >> icalss.h echo '#endif' >> icalss.h echo '#endif' >> icalss.h + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: diff --git a/src/libicalss/icalcalendar.c b/src/libicalss/icalcalendar.c index 04380f6..c4a8152 100644 --- a/src/libicalss/icalcalendar.c +++ b/src/libicalss/icalcalendar.c @@ -49,6 +49,7 @@ #include <errno.h> #ifdef WIN32 +#include <direct.h> #define mkdir(path, mode) _mkdir(path) #endif @@ -89,9 +90,10 @@ icalerrorenum icalcalendar_create(struct icalcalendar_impl* impl) icalerror_check_arg_re((impl != 0),"impl",ICAL_BADARG_ERROR); path[0] = '\0'; - strcpy(path,impl->dir); - strcat(path,"/"); - strcat(path,BOOKED_DIR); + strncpy(path,impl->dir,PATH_MAX-1); + strncat(path,"/",PATH_MAX-strlen(path)-1); + strncat(path,BOOKED_DIR,PATH_MAX-strlen(path)-1); + path[PATH_MAX-1] = '\0'; r = stat(path,&sbuf); @@ -139,7 +141,7 @@ void icalcalendar_free(icalcalendar* impl) } if (impl->freebusy !=0){ - icalset_free(impl->booked); + icalset_free(impl->freebusy); } if (impl->properties !=0){ @@ -196,9 +198,10 @@ icalset* icalcalendar_get_booked(icalcalendar* impl) icalerror_check_arg_rz((impl != 0),"impl"); dir[0] = '\0'; - strcpy(dir,impl->dir); - strcat(dir,"/"); - strcat(dir,BOOKED_DIR); + strncpy(dir,impl->dir,PATH_MAX-1); + strncat(dir,"/",PATH_MAX-strlen(dir)-1); + strncat(dir,BOOKED_DIR,PATH_MAX-strlen(dir)-1); + dir[PATH_MAX-1] = '\0'; if (impl->booked == 0){ icalerror_clear_errno(); @@ -216,9 +219,10 @@ icalset* icalcalendar_get_incoming(icalcalendar* impl) icalerror_check_arg_rz((impl != 0),"impl"); path[0] = '\0'; - strcpy(path,impl->dir); - strcat(path,"/"); - strcat(path,INCOMING_FILE); + strncpy(path,impl->dir,PATH_MAX-1); + strncat(path,"/",PATH_MAX-strlen(path)-1); + strncat(path,INCOMING_FILE,PATH_MAX-strlen(path)-1); + path[PATH_MAX-1] = '\0'; if (impl->properties == 0){ impl->properties = icalfileset_new(path); @@ -233,9 +237,10 @@ icalset* icalcalendar_get_properties(icalcalendar* impl) icalerror_check_arg_rz((impl != 0),"impl"); path[0] = '\0'; - strcpy(path,impl->dir); - strcat(path,"/"); - strcat(path,PROP_FILE); + strncpy(path,impl->dir,PATH_MAX-1); + strncat(path,"/",PATH_MAX-strlen(path)-1); + strncat(path,PROP_FILE,PATH_MAX-strlen(path)-1); + path[PATH_MAX-1] = '\0'; if (impl->properties == 0){ impl->properties = icalfileset_new(path); @@ -250,10 +255,10 @@ icalset* icalcalendar_get_freebusy(icalcalendar* impl) icalerror_check_arg_rz((impl != 0),"impl"); path[0] = '\0'; - strcpy(path,impl->dir); - strcat(path,"/"); - strcat(path,FBLIST_FILE); - + strncpy(path,impl->dir,PATH_MAX-1); + strncat(path,"/",PATH_MAX-strlen(path)-1); + strncat(path,FBLIST_FILE,PATH_MAX-strlen(path)-1); + path[PATH_MAX-1] = '\0'; if (impl->freebusy == 0){ impl->freebusy = icalfileset_new(path); diff --git a/src/libicalss/icalcalendar.h b/src/libicalss/icalcalendar.h index fb3d55a..3dcd1fb 100644 --- a/src/libicalss/icalcalendar.h +++ b/src/libicalss/icalcalendar.h @@ -30,7 +30,7 @@ #define ICALCALENDAR_H #include <libical/ical.h> -#include <icalset.h> +#include "icalset.h" /* icalcalendar * Routines for storing calendar data in a file system. The calendar diff --git a/src/libicalss/icalclassify.c b/src/libicalss/icalclassify.c index 1963f91..50dc1b5 100644 --- a/src/libicalss/icalclassify.c +++ b/src/libicalss/icalclassify.c @@ -156,6 +156,7 @@ icalproperty* icalclassify_find_attendee(icalcomponent *c, this_upn = strchr(this_attendee,':'); if(this_upn == 0){ + free(this_attendee); continue; } else { this_upn++; @@ -475,10 +476,11 @@ int icalclassify_request_new_organizer( icalclassify_pre icalerror_set_errno(ICAL_UNIMPLEMENTED_ERROR); icalclassify_post +/* already done before. (void)comp; (void)match; (void)user; - +*/ } int icalclassify_request_status( @@ -489,9 +491,11 @@ int icalclassify_request_status( icalclassify_pre icalerror_set_errno(ICAL_UNIMPLEMENTED_ERROR); icalclassify_post +/* (void)comp; (void)match; (void)user; +*/ } int icalclassify_request_forward( @@ -502,9 +506,11 @@ int icalclassify_request_forward( icalclassify_pre icalerror_set_errno(ICAL_UNIMPLEMENTED_ERROR); icalclassify_post +/* (void)comp; (void)match; (void)user; +*/ } int icalclassify_request_freebusy( @@ -515,9 +521,11 @@ int icalclassify_request_freebusy( icalclassify_pre icalerror_set_errno(ICAL_UNIMPLEMENTED_ERROR); icalclassify_post +/* (void)comp; (void)match; (void)user; +*/ } int icalclassify_reply_accept( diff --git a/src/libicalss/icalclassify.h b/src/libicalss/icalclassify.h index ed6f297..b692e74 100644 --- a/src/libicalss/icalclassify.h +++ b/src/libicalss/icalclassify.h @@ -28,8 +28,8 @@ #define ICALCLASSIFY_H #include <libical/ical.h> -#include <icalset.h> -#include <icalcomponent.h> +#include "icalset.h" +#include "icalcomponent.h" icalproperty_xlicclass icalclassify(icalcomponent* c,icalcomponent* match, const char* user); diff --git a/src/libicalss/icalcluster.c b/src/libicalss/icalcluster.c index 6b0b9f2..d1ab253 100644 --- a/src/libicalss/icalcluster.c +++ b/src/libicalss/icalcluster.c @@ -61,9 +61,9 @@ #include "icalclusterimpl.h" #include "icalgauge.h" -#ifdef WIN32 -#define snprintf _snprintf -#define strcasecmp stricmp +#if defined(_MSC_VER) +#define snprintf _snprintf +#define strcasecmp stricmp #endif diff --git a/src/libicalss/icalcluster.h b/src/libicalss/icalcluster.h index 6f9cea4..6ce13c7 100644 --- a/src/libicalss/icalcluster.h +++ b/src/libicalss/icalcluster.h @@ -30,7 +30,7 @@ #define ICALCLUSTER_H #include <libical/ical.h> -#include <icalset.h> +#include "icalset.h" typedef struct icalcluster_impl icalcluster; diff --git a/src/libicalss/icalcomponent.h b/src/libicalss/icalcomponent.h index 3802581..c097ab3 100644 --- a/src/libicalss/icalcomponent.h +++ b/src/libicalss/icalcomponent.h @@ -7,17 +7,19 @@ (C) COPYRIGHT 1999 Eric Busboom http://www.softwarestudio.org - The contents of this file are subject to the Mozilla Public License - Version 1.0 (the "License"); you may not use this file except in - compliance with the License. You may obtain a copy of the License at - http://www.mozilla.org/MPL/ - - Software distributed under the License is distributed on an "AS IS" - basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See - the License for the specific language governing rights and - limitations under the License. - - The original author is Eric Busboom + This program is free software; you can redistribute it and/or modify + it under the terms of either: + + The LGPL as published by the Free Software Foundation, version + 2.1, available at: http://www.fsf.org/copyleft/lesser.html + + Or: + + The Mozilla Public License Version 1.0. You may obtain a copy of + the License at http://www.mozilla.org/MPL/ + + The Original Code is eric. The Initial Developer of the Original + Code is Eric Busboom The original code is icalcomponent.h ======================================================================*/ diff --git a/src/libicalss/icaldirset.c b/src/libicalss/icaldirset.c index cfdd372..852206f 100644 --- a/src/libicalss/icaldirset.c +++ b/src/libicalss/icaldirset.c @@ -65,7 +65,6 @@ #include "icalcluster.h" #include "icalgauge.h" -#include <limits.h> /* For PATH_MAX */ #ifndef WIN32 #include <dirent.h> /* for opendir() */ #include <unistd.h> /* for stat, getpid */ @@ -74,23 +73,22 @@ #include <io.h> #include <process.h> #endif + #include <errno.h> #include <sys/types.h> /* for opendir() */ #include <sys/stat.h> /* for stat */ +#include <limits.h> /* For PATH_MAX */ #include <time.h> /* for clock() */ #include <stdlib.h> /* for rand(), srand() */ #include <string.h> /* for strdup */ #include "icaldirsetimpl.h" - -#ifdef WIN32 -#define snprintf _snprintf -#define strcasecmp stricmp - +#if defined(_MSC_VER) #define _S_ISTYPE(mode, mask) (((mode) & _S_IFMT) == (mask)) - #define S_ISDIR(mode) _S_ISTYPE((mode), _S_IFDIR) #define S_ISREG(mode) _S_ISTYPE((mode), _S_IFREG) +#define snprintf _snprintf +#define strcasecmp stricmp #endif /** Default options used when NULL is passed to icalset_new() **/ @@ -174,10 +172,10 @@ icalerrorenum icaldirset_read_directory(icaldirset *dset) closedir(dp); #else - struct _finddata_t c_file; - long hFile; + struct _finddata_t c_file; + intptr_t hFile; - /* Find first .c file in current directory */ + /* Find first .c file in current directory */ if( (hFile = _findfirst( "*", &c_file )) == -1L ) { icalerror_set_errno(ICAL_FILE_ERROR); return ICAL_FILE_ERROR; @@ -407,7 +405,8 @@ static void icaldirset_add_uid(icalcomponent* comp) uid = icalproperty_new_uid(uidstring); icalcomponent_add_property(comp,uid); } else { - strcpy(uidstring,icalproperty_get_uid(uid)); + strncpy(uidstring,icalproperty_get_uid(uid),ICAL_PATH_MAX-1); + uidstring[ICAL_PATH_MAX-1]='\0'; } } diff --git a/src/libicalss/icaldirset.h b/src/libicalss/icaldirset.h index 492c4e1..75d7514 100644 --- a/src/libicalss/icaldirset.h +++ b/src/libicalss/icaldirset.h @@ -30,9 +30,9 @@ #define ICALDIRSET_H #include <libical/ical.h> -#include <icalset.h> -#include <icalcluster.h> -#include <icalgauge.h> +#include "icalset.h" +#include "icalcluster.h" +#include "icalgauge.h" /* icaldirset Routines for storing, fetching, and searching for ical * objects in a database */ diff --git a/src/libicalss/icalfileset.c b/src/libicalss/icalfileset.c index 358c4ab..9d73917 100644 --- a/src/libicalss/icalfileset.c +++ b/src/libicalss/icalfileset.c @@ -38,22 +38,27 @@ #include <unistd.h> /* for stat, getpid */ #else #include <io.h> +#ifndef _WIN32_WCE #include <share.h> #endif +#endif + #include <stdlib.h> #include <string.h> #include <fcntl.h> /* for fcntl */ #include "icalfilesetimpl.h" #include "icalclusterimpl.h" -#ifdef WIN32 -#define snprintf _snprintf -#define strcasecmp stricmp - +#if defined(_MSC_VER) #define _S_ISTYPE(mode, mask) (((mode) & _S_IFMT) == (mask)) - #define S_ISDIR(mode) _S_ISTYPE((mode), _S_IFDIR) #define S_ISREG(mode) _S_ISTYPE((mode), _S_IFREG) +#define snprintf _snprintf +#define strcasecmp stricmp +#endif + +#ifdef _WIN32_WCE +#include <winbase.h> #endif /** Default options used when NULL is passed to icalset_new() **/ @@ -160,7 +165,7 @@ icalcluster* icalfileset_produce_icalcluster(const char *path) { fileset = icalfileset_new_reader(path); - if (fileset == 0 && icalerrno == ICAL_FILE_ERROR) { + if (fileset == 0 || icalerrno == ICAL_FILE_ERROR) { /* file does not exist */ ret = icalcluster_new(path, NULL); } else { @@ -366,6 +371,10 @@ icalerrorenum icalfileset_commit(icalset* set) icalcomponent *c; off_t write_size=0; icalfileset *fset = (icalfileset*) set; +#ifdef _WIN32_WCE + wchar_t *wtmp=0; + PROCESS_INFORMATION pi; +#endif icalerror_check_arg_re((fset!=0),"set",ICAL_BADARG_ERROR); @@ -378,18 +387,28 @@ icalerrorenum icalfileset_commit(icalset* set) if (fset->options.safe_saves == 1) { #ifndef WIN32 - char *quoted_file = shell_quote(fset->path); - snprintf(tmp,ICAL_PATH_MAX,"cp '%s' '%s.bak'",fset->path, fset->path); - free(quoted_file); + char *quoted_file = shell_quote(fset->path); + snprintf(tmp,ICAL_PATH_MAX,"cp '%s' '%s.bak'",fset->path, fset->path); + free(quoted_file); #else - snprintf(tmp,ICAL_PATH_MAX,"copy %s %s.bak", fset->path, fset->path); + snprintf(tmp,ICAL_PATH_MAX,"copy %s %s.bak", fset->path, fset->path); #endif - if(system(tmp) < 0){ - icalerror_set_errno(ICAL_FILE_ERROR); - return ICAL_FILE_ERROR; - } +#ifndef _WIN32_WCE + if(system(tmp) < 0){ +#else + + wtmp = wce_mbtowc(tmp); + + if (CreateProcess (wtmp, L"", NULL, NULL, FALSE, 0, NULL, NULL, NULL,&pi)){ +#endif + icalerror_set_errno(ICAL_FILE_ERROR); + return ICAL_FILE_ERROR; + } } +#ifdef _WIN32_WCE + free(wtmp); +#endif if(lseek(fset->fd, 0, SEEK_SET) < 0){ icalerror_set_errno(ICAL_FILE_ERROR); @@ -408,6 +427,7 @@ icalerrorenum icalfileset_commit(icalset* set) if ( sz != strlen(str)){ perror("write"); icalerror_set_errno(ICAL_FILE_ERROR); + free(str); return ICAL_FILE_ERROR; } @@ -422,7 +442,11 @@ icalerrorenum icalfileset_commit(icalset* set) return ICAL_FILE_ERROR; } #else +#ifndef _WIN32_WCE chsize( fset->fd, tell( fset->fd ) ); +#else + SetEndOfFile(fset->fd); +#endif #endif return ICAL_NO_ERROR; @@ -760,6 +784,7 @@ icalsetiter icalfileset_begin_component(icalset* set, icalcomponent_kind kind, i icalerror_check_arg_re((set!=0), "set", icalsetiter_null); + start = icaltime_from_timet( time(0),0); itr.gauge = gauge; citr = icalcomponent_begin_component(fset->cluster, kind); @@ -837,6 +862,7 @@ icalcomponent* icalfileset_form_a_matched_recurrence_component(icalsetiter* itr) icalproperty *dtstart, *rrule, *prop, *due; struct icalrecurrencetype recur; + start = icaltime_from_timet( time(0),0); comp = itr->last_component; if (comp == NULL || itr->gauge == NULL) { @@ -899,6 +925,8 @@ icalcomponent* icalfilesetiter_to_next(icalset* set, icalsetiter* i) struct icalrecurrencetype recur; int g = 0; + start = icaltime_from_timet( time(0),0); + next = icaltime_from_timet( time(0),0); do { c = icalcompiter_next(&(i->iter)); diff --git a/src/libicalss/icalfileset.h b/src/libicalss/icalfileset.h index 64dba1f..c95c70f 100644 --- a/src/libicalss/icalfileset.h +++ b/src/libicalss/icalfileset.h @@ -30,9 +30,9 @@ #define ICALFILESET_H #include <libical/ical.h> -#include <icalset.h> -#include <icalcluster.h> -#include <icalgauge.h> +#include "icalset.h" +#include "icalcluster.h" +#include "icalgauge.h" #include <sys/types.h> /* For open() flags and mode */ #include <sys/stat.h> /* For open() flags and mode */ #include <fcntl.h> /* For open() flags and mode */ @@ -41,8 +41,6 @@ #define mode_t int #endif -extern int icalfileset_safe_saves; - typedef struct icalfileset_impl icalfileset; icalset* icalfileset_new(const char* path); diff --git a/src/libicalss/icalgauge.c b/src/libicalss/icalgauge.c index 3598e71..64ef1ae 100644 --- a/src/libicalss/icalgauge.c +++ b/src/libicalss/icalgauge.c @@ -284,8 +284,6 @@ int icalgauge_compare(icalgauge* gauge,icalcomponent* comp) icalerror_check_arg_rz( (comp!=0), "comp"); icalerror_check_arg_rz( (gauge!=0), "gauge"); - if (gauge == 0 || comp == 0) return 0; - inner = icalcomponent_get_first_real_component(comp); if(inner == 0){ @@ -362,6 +360,7 @@ int icalgauge_compare(icalgauge* gauge,icalcomponent* comp) } else { sub_comp = icalcomponent_get_first_component(inner,w->comp); if(sub_comp == 0){ + icalvalue_free(v); return 0; } } diff --git a/src/libicalss/icalgauge.h b/src/libicalss/icalgauge.h index 8333a4b..a2f5b7b 100644 --- a/src/libicalss/icalgauge.h +++ b/src/libicalss/icalgauge.h @@ -29,7 +29,7 @@ #ifndef ICALGAUGE_H #define ICALGAUGE_H -#include <icalcomponent.h> +#include "icalcomponent.h" /** @file icalgauge.h * @brief Routines implementing a filter for ical components diff --git a/src/libicalss/icalmessage.c b/src/libicalss/icalmessage.c index 559fc44..9c99452 100644 --- a/src/libicalss/icalmessage.c +++ b/src/libicalss/icalmessage.c @@ -31,6 +31,11 @@ #include <ctype.h> /* for tolower()*/ #include <string.h> /* for strstr */ #include <stdlib.h> /* for free(), malloc() */ + +#if defined(_MSC_VER) +#define snprintf _snprintf +#endif + icalcomponent* icalmessage_get_inner(icalcomponent* comp) { if (icalcomponent_isa(comp) == ICAL_VCALENDAR_COMPONENT){ @@ -43,12 +48,14 @@ icalcomponent* icalmessage_get_inner(icalcomponent* comp) static char* lowercase(const char* str) { char* p = 0; - char* n = icalmemory_strdup(str); + char* n = 0; if(str ==0){ return 0; } + n = icalmemory_strdup(str); + for(p = n; *p!=0; p++){ *p = tolower(*p); } @@ -72,6 +79,7 @@ icalproperty* icalmessage_find_attendee(icalcomponent* comp, const char* user) lattendee = lowercase(icalproperty_get_attendee(p)); if (strstr(lattendee,user) != 0){ + free(lattendee); attendee = p; break; } @@ -346,6 +354,7 @@ icalcomponent* icalmessage_new_error_reply(icalcomponent* c, icalerror_check_arg_rz(c,"c"); + memset(&rs, 0, sizeof(struct icalreqstattype)); reply = icalmessage_new_reply_base(c,user,msg); inner = icalmessage_get_inner(reply); cinner = icalmessage_get_inner(c); diff --git a/src/libicalss/icalset.c b/src/libicalss/icalset.c index 83acdb4..cd38033 100644 --- a/src/libicalss/icalset.c +++ b/src/libicalss/icalset.c @@ -313,10 +313,6 @@ icalset* icalset_new(icalset_kind kind, const char* dsn, void* options) { return(NULL); } - if ( data == 0) { - icalerror_set_errno(ICAL_NEWFAILED_ERROR); - return 0; - } data->kind = kind; data->dsn = strdup(dsn); #endif diff --git a/src/libicalss/icalset.h b/src/libicalss/icalset.h index 66be3b7..b6929f0 100644 --- a/src/libicalss/icalset.h +++ b/src/libicalss/icalset.h @@ -41,7 +41,7 @@ #include <limits.h> /* For PATH_MAX */ #include <libical/ical.h> -#include <icalgauge.h> +#include "icalgauge.h" #ifdef PATH_MAX #define ICAL_PATH_MAX PATH_MAX diff --git a/src/libicalss/icalspanlist.c b/src/libicalss/icalspanlist.c index 3ea73ca..456abb1 100644 --- a/src/libicalss/icalspanlist.c +++ b/src/libicalss/icalspanlist.c @@ -175,6 +175,7 @@ icalspanlist* icalspanlist_new(icalset *set, if ((freetime=(struct icaltime_span *) malloc(sizeof(struct icaltime_span))) == 0){ icalerror_set_errno(ICAL_NEWFAILED_ERROR); + icalspanlist_free(sl); return 0; } @@ -207,6 +208,7 @@ icalspanlist* icalspanlist_new(icalset *set, if ((freetime=(struct icaltime_span *) malloc(sizeof(struct icaltime_span))) == 0){ icalerror_set_errno(ICAL_NEWFAILED_ERROR); + icalspanlist_free(sl); return 0; } @@ -541,6 +543,7 @@ icalspanlist *icalspanlist_from_vfreebusy(icalcomponent* comp) if (s == 0) { icalerror_set_errno(ICAL_NEWFAILED_ERROR); + icalspanlist_free(sl); return 0; } @@ -552,6 +555,7 @@ icalspanlist *icalspanlist_from_vfreebusy(icalcomponent* comp) case ICAL_FBTYPE_NONE: case ICAL_FBTYPE_X: s->is_busy = 1; + break; default: s->is_busy = 0; } diff --git a/src/libicalss/icalspanlist.h b/src/libicalss/icalspanlist.h index aa023f1..71056de 100644 --- a/src/libicalss/icalspanlist.h +++ b/src/libicalss/icalspanlist.h @@ -26,7 +26,7 @@ #define ICALSPANLIST_H #include <libical/ical.h> -#include <icalset.h> +#include "icalset.h" /** @file icalspanlist.h * @brief Code that supports collections of free/busy spans of time diff --git a/src/libicalss/icalsslexer.c b/src/libicalss/icalsslexer.c index 8a71140..ae4a656 100644 --- a/src/libicalss/icalsslexer.c +++ b/src/libicalss/icalsslexer.c @@ -1,8 +1,11 @@ + + +#define YY_INT_ALIGNED short int + +/* A lexical scanner generated by flex */ + #define yy_create_buffer ss_create_buffer #define yy_delete_buffer ss_delete_buffer -#define yy_scan_buffer ss_scan_buffer -#define yy_scan_string ss_scan_string -#define yy_scan_bytes ss_scan_bytes #define yy_flex_debug ss_flex_debug #define yy_init_buffer ss_init_buffer #define yy_flush_buffer ss_flush_buffer @@ -11,79 +14,122 @@ #define yyin ssin #define yyleng ssleng #define yylex sslex +#define yylineno sslineno #define yyout ssout #define yyrestart ssrestart #define yytext sstext #define yywrap sswrap - -/* A lexical scanner generated by flex*/ - -/* Scanner skeleton version: - * $Header: /home/daffy/u0/vern/flex/RCS/flex.skl,v 2.91 96/09/10 16:58:48 vern Exp $ - */ +#define yyalloc ssalloc +#define yyrealloc ssrealloc +#define yyfree ssfree #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 5 - -#ifdef HAVE_CONFIG_H -#include "config.h" +#define YY_FLEX_SUBMINOR_VERSION 35 +#if YY_FLEX_SUBMINOR_VERSION > 0 +#define FLEX_BETA #endif + +/* First, we deal with platform-specific or compiler-specific issues. */ + +/* begin standard C headers. */ #include <stdio.h> -#if defined(HAVE_UNISTD_H) -#include <unistd.h> -#endif +#include <string.h> +#include <errno.h> +#include <stdlib.h> -/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */ -#ifdef c_plusplus -#ifndef __cplusplus -#define __cplusplus +#ifdef _WIN32_WCE +#include <io.h> #endif + +/* end standard C headers. */ + +/* flex integer type definitions */ + +#ifndef FLEXINT_H +#define FLEXINT_H + +/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ + +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + +/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, + * if you want the limit (max/min) macros for int types. + */ +#ifndef __STDC_LIMIT_MACROS +#define __STDC_LIMIT_MACROS 1 #endif +#include <inttypes.h> +typedef int8_t flex_int8_t; +typedef uint8_t flex_uint8_t; +typedef int16_t flex_int16_t; +typedef uint16_t flex_uint16_t; +typedef int32_t flex_int32_t; +typedef uint32_t flex_uint32_t; +#else +typedef signed char flex_int8_t; +typedef short int flex_int16_t; +typedef int flex_int32_t; +typedef unsigned char flex_uint8_t; +typedef unsigned short int flex_uint16_t; +typedef unsigned int flex_uint32_t; -#ifdef __cplusplus +/* Limits of integral types. */ +#ifndef INT8_MIN +#define INT8_MIN (-128) +#endif +#ifndef INT16_MIN +#define INT16_MIN (-32767-1) +#endif +#ifndef INT32_MIN +#define INT32_MIN (-2147483647-1) +#endif +#ifndef INT8_MAX +#define INT8_MAX (127) +#endif +#ifndef INT16_MAX +#define INT16_MAX (32767) +#endif +#ifndef INT32_MAX +#define INT32_MAX (2147483647) +#endif +#ifndef UINT8_MAX +#define UINT8_MAX (255U) +#endif +#ifndef UINT16_MAX +#define UINT16_MAX (65535U) +#endif +#ifndef UINT32_MAX +#define UINT32_MAX (4294967295U) +#endif -#include <stdlib.h> +#endif /* ! C99 */ + +#endif /* ! FLEXINT_H */ -/* Use prototypes in function declarations. */ -#define YY_USE_PROTOS +#ifdef __cplusplus /* The "const" storage-class-modifier is valid. */ #define YY_USE_CONST #else /* ! __cplusplus */ -#if __STDC__ +/* C99 requires __STDC__ to be defined as 1. */ +#if defined (__STDC__) -#define YY_USE_PROTOS #define YY_USE_CONST -#endif /* __STDC__ */ +#endif /* defined (__STDC__) */ #endif /* ! __cplusplus */ -#ifdef __TURBOC__ - #pragma warn -rch - #pragma warn -use -#include <io.h> -#include <stdlib.h> -#define YY_USE_CONST -#define YY_USE_PROTOS -#endif - #ifdef YY_USE_CONST #define yyconst const #else #define yyconst #endif - -#ifdef YY_USE_PROTOS -#define YY_PROTO(proto) proto -#else -#define YY_PROTO(proto) () -#endif - /* Returned upon end-of-file. */ #define YY_NULL 0 @@ -98,80 +144,70 @@ * but we do it the disgusting crufty way forced on us by the ()-less * definition of BEGIN. */ -#define BEGIN yy_start = 1 + 2 * +#define BEGIN (yy_start) = 1 + 2 * /* Translate the current start state into a value that can be later handed * to BEGIN to return to the state. The YYSTATE alias is for lex * compatibility. */ -#define YY_START ((yy_start - 1) / 2) +#define YY_START (((yy_start) - 1) / 2) #define YYSTATE YY_START /* Action number for EOF rule of a given start state. */ #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) /* Special action meaning "start processing a new file". */ -#define YY_NEW_FILE yyrestart( yyin ) +#define YY_NEW_FILE ssrestart(ssin ) #define YY_END_OF_BUFFER_CHAR 0 /* Size of default input buffer. */ +#ifndef YY_BUF_SIZE #define YY_BUF_SIZE 16384 +#endif +/* The state buf must be large enough to hold one state per character in the main buffer. + */ +#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) + +#ifndef YY_TYPEDEF_YY_BUFFER_STATE +#define YY_TYPEDEF_YY_BUFFER_STATE typedef struct yy_buffer_state *YY_BUFFER_STATE; +#endif -extern int yyleng; -extern FILE *yyin, *yyout; +extern int ssleng; + +extern FILE *ssin, *ssout; #define EOB_ACT_CONTINUE_SCAN 0 #define EOB_ACT_END_OF_FILE 1 #define EOB_ACT_LAST_MATCH 2 -/* The funky do-while in the following #define is used to turn the definition - * int a single C statement (which needs a semi-colon terminator). This - * avoids problems with code like: - * - * if ( condition_holds ) - * yyless( 5 ); - * else - * do_something_else(); - * - * Prior to using the do-while the compiler would get upset at the - * "else" because it interpreted the "if" statement as being all - * done when it reached the ';' after the yyless() call. - */ - -/* Return all but the first 'n' matched characters back to the input stream. */ - + #define YY_LESS_LINENO(n) + +/* Return all but the first "n" matched characters back to the input stream. */ #define yyless(n) \ do \ { \ - /* Undo effects of setting up yytext. */ \ - *yy_cp = yy_hold_char; \ + /* Undo effects of setting up sstext. */ \ + int yyless_macro_arg = (n); \ + YY_LESS_LINENO(yyless_macro_arg);\ + *yy_cp = (yy_hold_char); \ YY_RESTORE_YY_MORE_OFFSET \ - yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \ - YY_DO_BEFORE_ACTION; /* set up yytext again */ \ + (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ + YY_DO_BEFORE_ACTION; /* set up sstext again */ \ } \ while ( 0 ) -#define unput(c) yyunput( c, yytext_ptr ) +#define unput(c) yyunput( c, (yytext_ptr) ) -/* Some routines like yy_flex_realloc() are emitted as static but are - not called by all lexers. This generates warnings in some compilers, - notably GCC. Arrange to suppress these. */ -#ifdef __GNUC__ -#define YY_MAY_BE_UNUSED __attribute__((unused)) -#else -#define YY_MAY_BE_UNUSED +#ifndef YY_TYPEDEF_YY_SIZE_T +#define YY_TYPEDEF_YY_SIZE_T +typedef size_t yy_size_t; #endif -/* The following is because we cannot portably get our hands on size_t - * (without autoconf's help, which isn't available because we want - * flex-generated scanners to compile on their own). - */ -typedef unsigned int yy_size_t; - - +#ifndef YY_STRUCT_YY_BUFFER_STATE +#define YY_STRUCT_YY_BUFFER_STATE struct yy_buffer_state { FILE *yy_input_file; @@ -208,12 +244,16 @@ struct yy_buffer_state */ int yy_at_bol; + int yy_bs_lineno; /**< The line count. */ + int yy_bs_column; /**< The column count. */ + /* Whether to try to fill the input buffer when we reach the * end of it. */ int yy_fill_buffer; int yy_buffer_status; + #define YY_BUFFER_NEW 0 #define YY_BUFFER_NORMAL 1 /* When an EOF's been seen but there's still some text to process @@ -223,102 +263,137 @@ struct yy_buffer_state * possible backing-up. * * When we actually see the EOF, we change the status to "new" - * (via yyrestart()), so that the user can continue scanning by - * just pointing yyin at a new input file. + * (via ssrestart()), so that the user can continue scanning by + * just pointing ssin at a new input file. */ #define YY_BUFFER_EOF_PENDING 2 + }; +#endif /* !YY_STRUCT_YY_BUFFER_STATE */ -static YY_BUFFER_STATE yy_current_buffer = 0; +/* Stack of input buffers. */ +static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ +static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ +static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ /* We provide macros for accessing buffer states in case in the * future we want to put the buffer states in a more general * "scanner state". + * + * Returns the top of the stack, or NULL. */ -#define YY_CURRENT_BUFFER yy_current_buffer +#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ + ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ + : NULL) +/* Same as previous macro, but useful when we know that the buffer stack is not + * NULL or when we need an lvalue. For internal use only. + */ +#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] -/* yy_hold_char holds the character lost when yytext is formed. */ +/* yy_hold_char holds the character lost when sstext is formed. */ static char yy_hold_char; - static int yy_n_chars; /* number of characters read into yy_ch_buf */ - - -int yyleng; +int ssleng; /* Points to current character in buffer. */ static char *yy_c_buf_p = (char *) 0; -static int yy_init = 1; /* whether we need to initialize */ +static int yy_init = 0; /* whether we need to initialize */ static int yy_start = 0; /* start state number */ -/* Flag which is used to allow yywrap()'s to do buffer switches - * instead of setting up a fresh yyin. A bit of a hack ... +/* Flag which is used to allow sswrap()'s to do buffer switches + * instead of setting up a fresh ssin. A bit of a hack ... */ static int yy_did_buffer_switch_on_eof; -void yyrestart YY_PROTO(( FILE *input_file )); +void ssrestart (FILE *input_file ); +void ss_switch_to_buffer (YY_BUFFER_STATE new_buffer ); +YY_BUFFER_STATE ss_create_buffer (FILE *file,int size ); +void ss_delete_buffer (YY_BUFFER_STATE b ); +void ss_flush_buffer (YY_BUFFER_STATE b ); +void sspush_buffer_state (YY_BUFFER_STATE new_buffer ); +void sspop_buffer_state (void ); + +static void ssensure_buffer_stack (void ); +static void ss_load_buffer_state (void ); +static void ss_init_buffer (YY_BUFFER_STATE b,FILE *file ); -void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer )); -void yy_load_buffer_state YY_PROTO(( void )); -YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size )); -void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b )); -void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file )); -void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b )); -#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer ) +#define YY_FLUSH_BUFFER ss_flush_buffer(YY_CURRENT_BUFFER ) -YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size )); -YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str )); -YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len )); +YY_BUFFER_STATE ss_scan_buffer (char *base,yy_size_t size ); +YY_BUFFER_STATE ss_scan_string (yyconst char *yy_str ); +YY_BUFFER_STATE ss_scan_bytes (yyconst char *bytes,int len ); -static void *yy_flex_alloc YY_PROTO(( yy_size_t )); -static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) YY_MAY_BE_UNUSED; -static void yy_flex_free YY_PROTO(( void * )); +void *ssalloc (yy_size_t ); +void *ssrealloc (void *,yy_size_t ); +void ssfree (void * ); -#define yy_new_buffer yy_create_buffer +#define yy_new_buffer ss_create_buffer #define yy_set_interactive(is_interactive) \ { \ - if ( ! yy_current_buffer ) \ - yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ - yy_current_buffer->yy_is_interactive = is_interactive; \ + if ( ! YY_CURRENT_BUFFER ){ \ + ssensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + ss_create_buffer(ssin,YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ } #define yy_set_bol(at_bol) \ { \ - if ( ! yy_current_buffer ) \ - yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \ - yy_current_buffer->yy_at_bol = at_bol; \ + if ( ! YY_CURRENT_BUFFER ){\ + ssensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + ss_create_buffer(ssin,YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ } -#define YY_AT_BOL() (yy_current_buffer->yy_at_bol) +#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) + +/* Begin user sect3 */ typedef unsigned char YY_CHAR; -FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; + +FILE *ssin = (FILE *) 0, *ssout = (FILE *) 0; + typedef int yy_state_type; -extern char yytext[]; +extern int sslineno; + +int sslineno = 1; + +extern char sstext[]; -static yy_state_type yy_get_previous_state YY_PROTO(( void )); -static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state )); -static int yy_get_next_buffer YY_PROTO(( void )); -static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); +static yy_state_type yy_get_previous_state (void ); +static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); +static int yy_get_next_buffer (void ); +static void yy_fatal_error (yyconst char msg[] ); /* Done after the current pattern has been matched and before the - * corresponding action - sets up yytext. + * corresponding action - sets up sstext. */ #define YY_DO_BEFORE_ACTION \ - yytext_ptr = yy_bp; \ - yyleng = (int) (yy_cp - yy_bp); \ - yy_hold_char = *yy_cp; \ + (yytext_ptr) = yy_bp; \ + ssleng = (size_t) (yy_cp - yy_bp); \ + (yy_hold_char) = *yy_cp; \ *yy_cp = '\0'; \ - if ( yyleng >= YYLMAX ) \ + if ( ssleng >= YYLMAX ) \ YY_FATAL_ERROR( "token too large, exceeds YYLMAX" ); \ - yy_flex_strncpy( yytext, yytext_ptr, yyleng + 1 ); \ - yy_c_buf_p = yy_cp; + yy_flex_strncpy( sstext, (yytext_ptr), ssleng + 1 ); \ + (yy_c_buf_p) = yy_cp; #define YY_NUM_RULES 23 #define YY_END_OF_BUFFER 24 -static yyconst short int yy_accept[56] = +/* This struct is not used in this scanner, + but its presence is necessary. */ +struct yy_trans_info + { + flex_int32_t yy_verify; + flex_int32_t yy_nxt; + }; +static yyconst flex_int16_t yy_accept[56] = { 0, 0, 0, 0, 0, 0, 0, 24, 22, 18, 18, 22, 17, 21, 4, 19, 8, 5, 9, 21, 21, @@ -328,7 +403,7 @@ static yyconst short int yy_accept[56] = 21, 21, 3, 1, 0 } ; -static yyconst int yy_ec[256] = +static yyconst flex_int32_t yy_ec[256] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, @@ -339,10 +414,10 @@ static yyconst int yy_ec[256] = 12, 13, 1, 7, 14, 7, 15, 16, 17, 18, 7, 19, 20, 7, 7, 21, 22, 23, 24, 7, 7, 25, 26, 27, 28, 7, 29, 7, 7, 7, - 1, 1, 1, 1, 1, 1, 14, 7, 15, 16, + 1, 1, 1, 1, 1, 1, 30, 7, 31, 32, - 17, 18, 7, 19, 20, 7, 7, 21, 22, 23, - 24, 7, 7, 25, 26, 27, 28, 7, 29, 7, + 33, 34, 7, 35, 36, 7, 7, 37, 38, 39, + 40, 7, 7, 41, 42, 43, 44, 7, 45, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -360,24 +435,26 @@ static yyconst int yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst int yy_meta[30] = +static yyconst flex_int32_t yy_meta[46] = { 0, 1, 1, 1, 2, 1, 1, 3, 1, 2, 1, 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3 + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3 } ; -static yyconst short int yy_base[58] = +static yyconst flex_int16_t yy_base[58] = { 0, - 0, 0, 0, 0, 0, 0, 68, 69, 28, 31, - 55, 0, 0, 69, 69, 54, 53, 52, 40, 37, - 35, 12, 35, 42, 39, 35, 69, 51, 0, 69, - 69, 69, 40, 31, 0, 27, 32, 0, 31, 34, - 69, 0, 28, 0, 28, 31, 22, 0, 0, 31, - 28, 17, 0, 0, 69, 39, 40 + 0, 0, 0, 0, 0, 0, 98, 107, 44, 47, + 85, 0, 0, 107, 107, 84, 83, 79, 29, 28, + 28, 31, 31, 40, 39, 58, 107, 84, 0, 107, + 107, 107, 47, 40, 0, 38, 45, 0, 46, 59, + 107, 0, 55, 0, 57, 67, 60, 0, 0, 71, + 70, 61, 0, 0, 107, 103, 86 } ; -static yyconst short int yy_def[58] = +static yyconst flex_int16_t yy_def[58] = { 0, 55, 1, 1, 1, 1, 1, 55, 55, 55, 55, 55, 56, 57, 55, 55, 55, 55, 55, 57, 57, @@ -387,39 +464,54 @@ static yyconst short int yy_def[58] = 57, 57, 57, 57, 0, 55, 55 } ; -static yyconst short int yy_nxt[99] = +static yyconst flex_int16_t yy_nxt[153] = { 0, 8, 9, 10, 9, 11, 12, 13, 14, 8, 15, 16, 17, 18, 19, 13, 13, 13, 20, 13, 21, - 13, 13, 22, 23, 13, 24, 13, 13, 25, 26, - 26, 26, 26, 26, 26, 36, 26, 26, 26, 37, - 28, 28, 29, 54, 53, 52, 51, 50, 49, 48, - 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, - 35, 34, 33, 32, 31, 30, 27, 55, 7, 55, + 13, 13, 22, 23, 13, 24, 13, 13, 25, 19, + 13, 13, 13, 20, 13, 21, 13, 13, 22, 23, + 13, 24, 13, 13, 25, 26, 26, 26, 26, 26, + 26, 33, 34, 35, 36, 38, 39, 40, 37, 26, + 26, 26, 42, 43, 44, 45, 46, 33, 34, 35, + 36, 38, 39, 40, 37, 47, 48, 49, 42, 43, + 44, 45, 46, 50, 51, 52, 53, 54, 29, 41, + 32, 47, 48, 49, 31, 30, 27, 55, 55, 50, + + 51, 52, 53, 54, 28, 28, 7, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, - 55, 55, 55, 55, 55, 55, 55, 55 - + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55 } ; -static yyconst short int yy_chk[99] = +static yyconst flex_int16_t yy_chk[153] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 9, - 9, 9, 10, 10, 10, 22, 26, 26, 26, 22, - 56, 56, 57, 52, 51, 50, 47, 46, 45, 43, - 40, 39, 37, 36, 34, 33, 28, 25, 24, 23, - 21, 20, 19, 18, 17, 16, 11, 7, 55, 55, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 9, 9, 9, 10, 10, + 10, 19, 20, 21, 22, 23, 24, 25, 22, 26, + 26, 26, 33, 34, 36, 37, 39, 19, 20, 21, + 22, 23, 24, 25, 22, 40, 43, 45, 33, 34, + 36, 37, 39, 46, 47, 50, 51, 52, 57, 28, + 18, 40, 43, 45, 17, 16, 11, 7, 0, 46, + + 47, 50, 51, 52, 56, 56, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, - 55, 55, 55, 55, 55, 55, 55, 55 - + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, + 55, 55 } ; static yy_state_type yy_last_accepting_state; static char *yy_last_accepting_cpos; +extern int ss_flex_debug; +int ss_flex_debug = 0; + /* The intent behind this definition is that it'll catch * any uses of REJECT which flex missed. */ @@ -431,11 +523,8 @@ static char *yy_last_accepting_cpos; #define YYLMAX 8192 #endif -char yytext[YYLMAX]; +char sstext[YYLMAX]; char *yytext_ptr; -#line 1 "icalsslexer.l" -#define INITIAL 0 -#line 2 "icalsslexer.l" /* -*- Mode: C -*- ====================================================================== FILE: icalsslexer.l @@ -473,11 +562,11 @@ char *yytext_ptr; const char* input_buffer; const char* input_buffer_p; -#define min(a,b) ((a) < (b) ? (a) : (b)) +#define minInt(a,b) ((a) < (b) ? (a) : (b)) int icalss_input(char* buf, int max_size) { - int n = min(max_size,strlen(input_buffer_p)); + int n = minInt(max_size,strlen(input_buffer_p)); if (n > 0){ memcpy(buf, input_buffer_p, n); @@ -494,10 +583,54 @@ int icalss_input(char* buf, int max_size) #undef SS_FATAL_ERROR #define SS_FATAL_ERROR(msg) sserror(msg) + + +#define INITIAL 0 #define sql 1 #define string_value 2 -#line 497 "icalsslexer.c" +#ifndef YY_NO_UNISTD_H +/* Special case for "unistd.h", since it is non-ANSI. We include it way + * down here because we want the user's section 1 to have been scanned first. + * The user has a chance to override it with an option. + */ +#include <unistd.h> +#endif + +#ifndef YY_EXTRA_TYPE +#define YY_EXTRA_TYPE void * +#endif + +static int yy_init_globals (void ); + +/* Accessor methods to globals. + These are made visible to non-reentrant scanners for convenience. */ + +int sslex_destroy (void ); + +int ssget_debug (void ); + +void ssset_debug (int debug_flag ); + +YY_EXTRA_TYPE ssget_extra (void ); + +void ssset_extra (YY_EXTRA_TYPE user_defined ); + +FILE *ssget_in (void ); + +void ssset_in (FILE * in_str ); + +FILE *ssget_out (void ); + +void ssset_out (FILE * out_str ); + +int ssget_leng (void ); + +char *ssget_text (void ); + +int ssget_lineno (void ); + +void ssset_lineno (int line_number ); /* Macros after this point can all be overridden by user definitions in * section 1. @@ -505,65 +638,30 @@ int icalss_input(char* buf, int max_size) #ifndef YY_SKIP_YYWRAP #ifdef __cplusplus -extern "C" int yywrap YY_PROTO(( void )); +extern "C" int sswrap (void ); #else -extern int yywrap YY_PROTO(( void )); +extern int sswrap (void ); #endif #endif -#ifndef YY_NO_UNPUT -static void yyunput YY_PROTO(( int c, char *buf_ptr )); -#endif - + static void yyunput (int c,char *buf_ptr ); + #ifndef yytext_ptr -static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int )); +static void yy_flex_strncpy (char *,yyconst char *,int ); #endif #ifdef YY_NEED_STRLEN -static int yy_flex_strlen YY_PROTO(( yyconst char * )); +static int yy_flex_strlen (yyconst char * ); #endif #ifndef YY_NO_INPUT -#ifdef __cplusplus -static int yyinput YY_PROTO(( void )); -#else -static int input YY_PROTO(( void )); -#endif -#endif - -#if YY_STACK_USED -static int yy_start_stack_ptr = 0; -static int yy_start_stack_depth = 0; -static int *yy_start_stack = 0; -#ifndef YY_NO_PUSH_STATE -static void yy_push_state YY_PROTO(( int new_state )); -#endif -#ifndef YY_NO_POP_STATE -static void yy_pop_state YY_PROTO(( void )); -#endif -#ifndef YY_NO_TOP_STATE -static int yy_top_state YY_PROTO(( void )); -#endif +#ifdef __cplusplus +static int yyinput (void ); #else -#define YY_NO_PUSH_STATE 1 -#define YY_NO_POP_STATE 1 -#define YY_NO_TOP_STATE 1 +static int input (void ); #endif -#ifdef YY_MALLOC_DECL -YY_MALLOC_DECL -#else -#if __STDC__ -#ifndef __cplusplus -#include <stdlib.h> -#endif -#else -/* Just try to get by without declaring the routines. This will fail - * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int) - * or sizeof(void*) != sizeof(int). - */ -#endif #endif /* Amount of stuff to slurp up with each read. */ @@ -572,12 +670,11 @@ YY_MALLOC_DECL #endif /* Copy whatever the last rule matched to the standard output. */ - #ifndef ECHO /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO (void) fwrite( yytext, yyleng, 1, yyout ) +#define ECHO do { if (fwrite( sstext, ssleng, 1, ssout )) {} } while (0) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -585,21 +682,35 @@ YY_MALLOC_DECL */ #ifndef YY_INPUT #define YY_INPUT(buf,result,max_size) \ - if ( yy_current_buffer->yy_is_interactive ) \ + if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ - int c = '*', n; \ + int c = '*'; \ + size_t n; \ for ( n = 0; n < max_size && \ - (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ + (c = getc( ssin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ if ( c == '\n' ) \ buf[n++] = (char) c; \ - if ( c == EOF && ferror( yyin ) ) \ + if ( c == EOF && ferror( ssin ) ) \ YY_FATAL_ERROR( "input in flex scanner failed" ); \ result = n; \ } \ - else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \ - && ferror( yyin ) ) \ - YY_FATAL_ERROR( "input in flex scanner failed" ); + else \ + { \ + errno=0; \ + while ( (result = fread(buf, 1, max_size, ssin))==0 && ferror(ssin)) \ + { \ + if( errno != EINTR) \ + { \ + YY_FATAL_ERROR( "input in flex scanner failed" ); \ + break; \ + } \ + errno=0; \ + clearerr(ssin); \ + } \ + }\ +\ + #endif /* No semi-colon after return; correct usage is to write "yyterminate();" - @@ -620,14 +731,20 @@ YY_MALLOC_DECL #define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) #endif +/* end tables serialization structures and prototypes */ + /* Default declaration of generated scanner - a define so the user can * easily add parameters. */ #ifndef YY_DECL -#define YY_DECL int yylex YY_PROTO(( void )) -#endif +#define YY_DECL_IS_OURS 1 -/* Code executed at the beginning of each rule, after yytext and yyleng +extern int sslex (void); + +#define YY_DECL int sslex (void) +#endif /* !YY_DECL */ + +/* Code executed at the beginning of each rule, after sstext and ssleng * have been set up. */ #ifndef YY_USER_ACTION @@ -642,66 +759,68 @@ YY_MALLOC_DECL #define YY_RULE_SETUP \ YY_USER_ACTION +/** The main scanner function which does all the work. + */ YY_DECL - { +{ register yy_state_type yy_current_state; - register char *yy_cp = NULL, *yy_bp = NULL; + register char *yy_cp, *yy_bp; register int yy_act; - -#line 83 "icalsslexer.l" + -#line 655 "icalsslexer.c" - if ( yy_init ) + if ( !(yy_init) ) { - yy_init = 0; + (yy_init) = 1; #ifdef YY_USER_INIT YY_USER_INIT; #endif - if ( ! yy_start ) - yy_start = 1; /* first start state */ + if ( ! (yy_start) ) + (yy_start) = 1; /* first start state */ - if ( ! yyin ) - yyin = stdin; + if ( ! ssin ) + ssin = stdin; - if ( ! yyout ) - yyout = stdout; + if ( ! ssout ) + ssout = stdout; - if ( ! yy_current_buffer ) - yy_current_buffer = - yy_create_buffer( yyin, YY_BUF_SIZE ); + if ( ! YY_CURRENT_BUFFER ) { + ssensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + ss_create_buffer(ssin,YY_BUF_SIZE ); + } - yy_load_buffer_state(); + ss_load_buffer_state( ); } while ( 1 ) /* loops until end-of-file is reached */ { - yy_cp = yy_c_buf_p; + yy_cp = (yy_c_buf_p); - /* Support of yytext. */ - *yy_cp = yy_hold_char; + /* Support of sstext. */ + *yy_cp = (yy_hold_char); /* yy_bp points to the position in yy_ch_buf of the start of * the current run. */ yy_bp = yy_cp; - yy_current_state = yy_start; + yy_current_state = (yy_start); yy_match: do { register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)]; if ( yy_accept[yy_current_state] ) { - yy_last_accepting_state = yy_current_state; - yy_last_accepting_cpos = yy_cp; + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { @@ -712,135 +831,116 @@ yy_match: yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 69 ); + while ( yy_base[yy_current_state] != 107 ); yy_find_action: yy_act = yy_accept[yy_current_state]; if ( yy_act == 0 ) { /* have to back up */ - yy_cp = yy_last_accepting_cpos; - yy_current_state = yy_last_accepting_state; + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); yy_act = yy_accept[yy_current_state]; } YY_DO_BEFORE_ACTION; - do_action: /* This label is used only to access EOF actions. */ - switch ( yy_act ) { /* beginning of action switch */ case 0: /* must back up */ /* undo the effects of YY_DO_BEFORE_ACTION */ - *yy_cp = yy_hold_char; - yy_cp = yy_last_accepting_cpos; - yy_current_state = yy_last_accepting_state; + *yy_cp = (yy_hold_char); + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); goto yy_find_action; case 1: YY_RULE_SETUP -#line 89 "icalsslexer.l" { return SELECT; } YY_BREAK case 2: YY_RULE_SETUP -#line 90 "icalsslexer.l" { return FROM; } YY_BREAK case 3: YY_RULE_SETUP -#line 91 "icalsslexer.l" { return WHERE; } YY_BREAK case 4: YY_RULE_SETUP -#line 92 "icalsslexer.l" { return COMMA; } YY_BREAK case 5: YY_RULE_SETUP -#line 93 "icalsslexer.l" { return EQUALS; } YY_BREAK case 6: YY_RULE_SETUP -#line 94 "icalsslexer.l" { return EQUALS; } YY_BREAK case 7: YY_RULE_SETUP -#line 95 "icalsslexer.l" { return NOTEQUALS; } YY_BREAK case 8: YY_RULE_SETUP -#line 96 "icalsslexer.l" { return LESS; } YY_BREAK case 9: YY_RULE_SETUP -#line 97 "icalsslexer.l" { return GREATER; } YY_BREAK case 10: YY_RULE_SETUP -#line 98 "icalsslexer.l" { return LESSEQUALS; } YY_BREAK case 11: YY_RULE_SETUP -#line 99 "icalsslexer.l" { return GREATEREQUALS; } YY_BREAK case 12: YY_RULE_SETUP -#line 100 "icalsslexer.l" { return AND; } YY_BREAK case 13: YY_RULE_SETUP -#line 101 "icalsslexer.l" { return OR; } YY_BREAK case 14: YY_RULE_SETUP -#line 102 "icalsslexer.l" { return IS; } YY_BREAK case 15: YY_RULE_SETUP -#line 103 "icalsslexer.l" { return NOT; } YY_BREAK case 16: YY_RULE_SETUP -#line 104 "icalsslexer.l" { return SQLNULL; } YY_BREAK case 17: YY_RULE_SETUP -#line 105 "icalsslexer.l" { return QUOTE; } YY_BREAK case 18: +/* rule 18 can match eol */ YY_RULE_SETUP -#line 106 "icalsslexer.l" ; YY_BREAK case 19: YY_RULE_SETUP -#line 107 "icalsslexer.l" { return EOL; } YY_BREAK case 20: YY_RULE_SETUP -#line 109 "icalsslexer.l" { int c = input(); - unput(c); + if(c != EOF){ + unput(c); + } if(c!='\''){ - sslval.v_string= icalmemory_tmp_copy(yytext); + sslval.v_string= icalmemory_tmp_copy(sstext); return STRING; } else { /*ssmore();*/ @@ -849,23 +949,19 @@ YY_RULE_SETUP YY_BREAK case 21: YY_RULE_SETUP -#line 120 "icalsslexer.l" { - sslval.v_string= icalmemory_tmp_copy(yytext); + sslval.v_string= icalmemory_tmp_copy(sstext); return STRING; } YY_BREAK case 22: YY_RULE_SETUP -#line 126 "icalsslexer.l" -{ return yytext[0]; } +{ return sstext[0]; } YY_BREAK case 23: YY_RULE_SETUP -#line 128 "icalsslexer.l" ECHO; YY_BREAK -#line 865 "icalsslexer.c" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(sql): case YY_STATE_EOF(string_value): @@ -874,26 +970,26 @@ case YY_STATE_EOF(string_value): case YY_END_OF_BUFFER: { /* Amount of text matched not including the EOB char. */ - int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1; + int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; /* Undo the effects of YY_DO_BEFORE_ACTION. */ - *yy_cp = yy_hold_char; + *yy_cp = (yy_hold_char); YY_RESTORE_YY_MORE_OFFSET - if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW ) + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) { /* We're scanning a new file or input source. It's * possible that this happened because the user - * just pointed yyin at a new source and called - * yylex(). If so, then we have to assure - * consistency between yy_current_buffer and our + * just pointed ssin at a new source and called + * sslex(). If so, then we have to assure + * consistency between YY_CURRENT_BUFFER and our * globals. Here is the right place to do so, because * this is the first action (other than possibly a * back-up) that will match for the new input source. */ - yy_n_chars = yy_current_buffer->yy_n_chars; - yy_current_buffer->yy_input_file = yyin; - yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL; + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + YY_CURRENT_BUFFER_LVALUE->yy_input_file = ssin; + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; } /* Note that here we test for yy_c_buf_p "<=" to the position @@ -903,13 +999,13 @@ case YY_STATE_EOF(string_value): * end-of-buffer state). Contrast this with the test * in input(). */ - if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] ) + if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) { /* This was really a NUL. */ yy_state_type yy_next_state; - yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text; + (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; - yy_current_state = yy_get_previous_state(); + yy_current_state = yy_get_previous_state( ); /* Okay, we're now positioned to make the NUL * transition. We couldn't have @@ -922,41 +1018,41 @@ case YY_STATE_EOF(string_value): yy_next_state = yy_try_NUL_trans( yy_current_state ); - yy_bp = yytext_ptr + YY_MORE_ADJ; + yy_bp = (yytext_ptr) + YY_MORE_ADJ; if ( yy_next_state ) { /* Consume the NUL. */ - yy_cp = ++yy_c_buf_p; + yy_cp = ++(yy_c_buf_p); yy_current_state = yy_next_state; goto yy_match; } else { - yy_cp = yy_c_buf_p; + yy_cp = (yy_c_buf_p); goto yy_find_action; } } - else switch ( yy_get_next_buffer() ) + else switch ( yy_get_next_buffer( ) ) { case EOB_ACT_END_OF_FILE: { - yy_did_buffer_switch_on_eof = 0; + (yy_did_buffer_switch_on_eof) = 0; - if ( yywrap() ) + if ( sswrap( ) ) { /* Note: because we've taken care in * yy_get_next_buffer() to have set up - * yytext, we can now set up + * sstext, we can now set up * yy_c_buf_p so that if some total * hoser (like flex itself) wants to * call the scanner after we return the * YY_NULL, it'll still work - another * YY_NULL will get returned. */ - yy_c_buf_p = yytext_ptr + YY_MORE_ADJ; + (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; yy_act = YY_STATE_EOF(YY_START); goto do_action; @@ -964,30 +1060,30 @@ case YY_STATE_EOF(string_value): else { - if ( ! yy_did_buffer_switch_on_eof ) + if ( ! (yy_did_buffer_switch_on_eof) ) YY_NEW_FILE; } break; } case EOB_ACT_CONTINUE_SCAN: - yy_c_buf_p = - yytext_ptr + yy_amount_of_matched_text; + (yy_c_buf_p) = + (yytext_ptr) + yy_amount_of_matched_text; - yy_current_state = yy_get_previous_state(); + yy_current_state = yy_get_previous_state( ); - yy_cp = yy_c_buf_p; - yy_bp = yytext_ptr + YY_MORE_ADJ; + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; goto yy_match; case EOB_ACT_LAST_MATCH: - yy_c_buf_p = - &yy_current_buffer->yy_ch_buf[yy_n_chars]; + (yy_c_buf_p) = + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; - yy_current_state = yy_get_previous_state(); + yy_current_state = yy_get_previous_state( ); - yy_cp = yy_c_buf_p; - yy_bp = yytext_ptr + YY_MORE_ADJ; + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; goto yy_find_action; } break; @@ -998,8 +1094,7 @@ case YY_STATE_EOF(string_value): "fatal flex scanner internal error--no action found" ); } /* end of action switch */ } /* end of scanning one token */ - } /* end of yylex */ - +} /* end of sslex */ /* yy_get_next_buffer - try to read in a new buffer * @@ -1008,21 +1103,20 @@ case YY_STATE_EOF(string_value): * EOB_ACT_CONTINUE_SCAN - continue scanning from current position * EOB_ACT_END_OF_FILE - end of file */ - -static int yy_get_next_buffer() - { - register char *dest = yy_current_buffer->yy_ch_buf; - register char *source = yytext_ptr; +static int yy_get_next_buffer (void) +{ + register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; + register char *source = (yytext_ptr); register int number_to_move, i; int ret_val; - if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] ) + if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) YY_FATAL_ERROR( "fatal flex scanner internal error--end of buffer missed" ); - if ( yy_current_buffer->yy_fill_buffer == 0 ) + if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) { /* Don't try to fill the buffer, so this is an EOF. */ - if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 ) + if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) { /* We matched a single character, the EOB, so * treat this as a final EOF. @@ -1042,34 +1136,30 @@ static int yy_get_next_buffer() /* Try to read more data. */ /* First move last chars to start of buffer. */ - number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1; + number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; for ( i = 0; i < number_to_move; ++i ) *(dest++) = *(source++); - if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING ) + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) /* don't do the read, it's not guaranteed to return an EOF, * just force an EOF */ - yy_current_buffer->yy_n_chars = yy_n_chars = 0; + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; else { - int num_to_read = - yy_current_buffer->yy_buf_size - number_to_move - 1; + int num_to_read = + YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; while ( num_to_read <= 0 ) { /* Not enough room in the buffer - grow it. */ -#ifdef YY_USES_REJECT - YY_FATAL_ERROR( -"input buffer overflow, can't enlarge buffer because scanner uses REJECT" ); -#else /* just a shorter name for the current buffer */ - YY_BUFFER_STATE b = yy_current_buffer; + YY_BUFFER_STATE b = YY_CURRENT_BUFFER; int yy_c_buf_p_offset = - (int) (yy_c_buf_p - b->yy_ch_buf); + (int) ((yy_c_buf_p) - b->yy_ch_buf); if ( b->yy_is_our_buffer ) { @@ -1082,8 +1172,7 @@ static int yy_get_next_buffer() b->yy_ch_buf = (char *) /* Include room in for 2 EOB chars. */ - yy_flex_realloc( (void *) b->yy_ch_buf, - b->yy_buf_size + 2 ); + ssrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ); } else /* Can't grow it, we don't own it. */ @@ -1093,35 +1182,35 @@ static int yy_get_next_buffer() YY_FATAL_ERROR( "fatal error - scanner input buffer overflow" ); - yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset]; + (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; - num_to_read = yy_current_buffer->yy_buf_size - + num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; -#endif + } if ( num_to_read > YY_READ_BUF_SIZE ) num_to_read = YY_READ_BUF_SIZE; /* Read in more data. */ - YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]), - yy_n_chars, num_to_read ); + YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), + (yy_n_chars), (size_t) num_to_read ); - yy_current_buffer->yy_n_chars = yy_n_chars; + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); } - if ( yy_n_chars == 0 ) + if ( (yy_n_chars) == 0 ) { if ( number_to_move == YY_MORE_ADJ ) { ret_val = EOB_ACT_END_OF_FILE; - yyrestart( yyin ); + ssrestart(ssin ); } else { ret_val = EOB_ACT_LAST_MATCH; - yy_current_buffer->yy_buffer_status = + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_EOF_PENDING; } } @@ -1129,32 +1218,39 @@ static int yy_get_next_buffer() else ret_val = EOB_ACT_CONTINUE_SCAN; - yy_n_chars += number_to_move; - yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR; - yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR; + if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { + /* Extend the array by 50%, plus the number we really need. */ + yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) ssrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); + if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + } - yytext_ptr = &yy_current_buffer->yy_ch_buf[0]; + (yy_n_chars) += number_to_move; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; - return ret_val; - } + (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; + return ret_val; +} /* yy_get_previous_state - get the state just before the EOB char was reached */ -static yy_state_type yy_get_previous_state() - { + static yy_state_type yy_get_previous_state (void) +{ register yy_state_type yy_current_state; register char *yy_cp; + + yy_current_state = (yy_start); - yy_current_state = yy_start; - - for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp ) + for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) { register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); if ( yy_accept[yy_current_state] ) { - yy_last_accepting_state = yy_current_state; - yy_last_accepting_cpos = yy_cp; + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { @@ -1166,30 +1262,23 @@ static yy_state_type yy_get_previous_state() } return yy_current_state; - } - +} /* yy_try_NUL_trans - try to make a transition on the NUL character * * synopsis * next_state = yy_try_NUL_trans( current_state ); */ - -#ifdef YY_USE_PROTOS -static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state ) -#else -static yy_state_type yy_try_NUL_trans( yy_current_state ) -yy_state_type yy_current_state; -#endif - { + static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) +{ register int yy_is_jam; - register char *yy_cp = yy_c_buf_p; + register char *yy_cp = (yy_c_buf_p); register YY_CHAR yy_c = 1; if ( yy_accept[yy_current_state] ) { - yy_last_accepting_state = yy_current_state; - yy_last_accepting_cpos = yy_cp; + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { @@ -1201,81 +1290,73 @@ yy_state_type yy_current_state; yy_is_jam = (yy_current_state == 55); return yy_is_jam ? 0 : yy_current_state; - } - +} -#ifndef YY_NO_UNPUT -#ifdef YY_USE_PROTOS -static void yyunput( int c, register char *yy_bp ) -#else -static void yyunput( c, yy_bp ) -int c; -register char *yy_bp; -#endif - { - register char *yy_cp = yy_c_buf_p; + static void yyunput (int c, register char * yy_bp ) +{ + register char *yy_cp; + + yy_cp = (yy_c_buf_p); - /* undo effects of setting up yytext */ - *yy_cp = yy_hold_char; + /* undo effects of setting up sstext */ + *yy_cp = (yy_hold_char); - if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) + if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) { /* need to shift things up to make room */ /* +2 for EOB chars. */ - register int number_to_move = yy_n_chars + 2; - register char *dest = &yy_current_buffer->yy_ch_buf[ - yy_current_buffer->yy_buf_size + 2]; + register int number_to_move = (yy_n_chars) + 2; + register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; register char *source = - &yy_current_buffer->yy_ch_buf[number_to_move]; + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; - while ( source > yy_current_buffer->yy_ch_buf ) + while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) *--dest = *--source; yy_cp += (int) (dest - source); yy_bp += (int) (dest - source); - yy_current_buffer->yy_n_chars = - yy_n_chars = yy_current_buffer->yy_buf_size; + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; - if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) + if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) YY_FATAL_ERROR( "flex scanner push-back overflow" ); } *--yy_cp = (char) c; - - yytext_ptr = yy_bp; - yy_hold_char = *yy_cp; - yy_c_buf_p = yy_cp; - } -#endif /* ifndef YY_NO_UNPUT */ - + (yytext_ptr) = yy_bp; + (yy_hold_char) = *yy_cp; + (yy_c_buf_p) = yy_cp; +} #ifndef YY_NO_INPUT #ifdef __cplusplus -static int yyinput() + static int yyinput (void) #else -static int input() + static int input (void) #endif - { - int c; - *yy_c_buf_p = yy_hold_char; +{ + int c; + + *(yy_c_buf_p) = (yy_hold_char); - if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR ) + if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) { /* yy_c_buf_p now points to the character we want to return. * If this occurs *before* the EOB characters, then it's a * valid NUL; if not, then we've hit the end of the buffer. */ - if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] ) + if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) /* This was really a NUL. */ - *yy_c_buf_p = '\0'; + *(yy_c_buf_p) = '\0'; else { /* need more input */ - int offset = yy_c_buf_p - yytext_ptr; - ++yy_c_buf_p; + int offset = (yy_c_buf_p) - (yytext_ptr); + ++(yy_c_buf_p); - switch ( yy_get_next_buffer() ) + switch ( yy_get_next_buffer( ) ) { case EOB_ACT_LAST_MATCH: /* This happens because yy_g_n_b() @@ -1289,16 +1370,16 @@ static int input() */ /* Reset buffer status. */ - yyrestart( yyin ); + ssrestart(ssin ); - /* fall through */ + /*FALLTHROUGH*/ case EOB_ACT_END_OF_FILE: { - if ( yywrap() ) + if ( sswrap( ) ) return EOF; - if ( ! yy_did_buffer_switch_on_eof ) + if ( ! (yy_did_buffer_switch_on_eof) ) YY_NEW_FILE; #ifdef __cplusplus return yyinput(); @@ -1308,167 +1389,169 @@ static int input() } case EOB_ACT_CONTINUE_SCAN: - yy_c_buf_p = yytext_ptr + offset; + (yy_c_buf_p) = (yytext_ptr) + offset; break; } } } - c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */ - *yy_c_buf_p = '\0'; /* preserve yytext */ - yy_hold_char = *++yy_c_buf_p; - + c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ + *(yy_c_buf_p) = '\0'; /* preserve sstext */ + (yy_hold_char) = *++(yy_c_buf_p); return c; - } -#endif /* YY_NO_INPUT */ - -#ifdef YY_USE_PROTOS -void yyrestart( FILE *input_file ) -#else -void yyrestart( input_file ) -FILE *input_file; -#endif - { - if ( ! yy_current_buffer ) - yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); +} +#endif /* ifndef YY_NO_INPUT */ - yy_init_buffer( yy_current_buffer, input_file ); - yy_load_buffer_state(); +/** Immediately switch to a different input stream. + * @param input_file A readable stream. + * + * @note This function does not reset the start condition to @c INITIAL . + */ + void ssrestart (FILE * input_file ) +{ + + if ( ! YY_CURRENT_BUFFER ){ + ssensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + ss_create_buffer(ssin,YY_BUF_SIZE ); } + ss_init_buffer(YY_CURRENT_BUFFER,input_file ); + ss_load_buffer_state( ); +} -#ifdef YY_USE_PROTOS -void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer ) -#else -void yy_switch_to_buffer( new_buffer ) -YY_BUFFER_STATE new_buffer; -#endif - { - if ( yy_current_buffer == new_buffer ) +/** Switch to a different input buffer. + * @param new_buffer The new input buffer. + * + */ + void ss_switch_to_buffer (YY_BUFFER_STATE new_buffer ) +{ + + /* TODO. We should be able to replace this entire function body + * with + * sspop_buffer_state(); + * sspush_buffer_state(new_buffer); + */ + ssensure_buffer_stack (); + if ( YY_CURRENT_BUFFER == new_buffer ) return; - if ( yy_current_buffer ) + if ( YY_CURRENT_BUFFER ) { /* Flush out information for old buffer. */ - *yy_c_buf_p = yy_hold_char; - yy_current_buffer->yy_buf_pos = yy_c_buf_p; - yy_current_buffer->yy_n_chars = yy_n_chars; + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); } - yy_current_buffer = new_buffer; - yy_load_buffer_state(); + YY_CURRENT_BUFFER_LVALUE = new_buffer; + ss_load_buffer_state( ); /* We don't actually know whether we did this switch during - * EOF (yywrap()) processing, but the only time this flag - * is looked at is after yywrap() is called, so it's safe + * EOF (sswrap()) processing, but the only time this flag + * is looked at is after sswrap() is called, so it's safe * to go ahead and always set it. */ - yy_did_buffer_switch_on_eof = 1; - } - - -#ifdef YY_USE_PROTOS -void yy_load_buffer_state( void ) -#else -void yy_load_buffer_state() -#endif - { - yy_n_chars = yy_current_buffer->yy_n_chars; - yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos; - yyin = yy_current_buffer->yy_input_file; - yy_hold_char = *yy_c_buf_p; - } + (yy_did_buffer_switch_on_eof) = 1; +} +static void ss_load_buffer_state (void) +{ + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; + ssin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; + (yy_hold_char) = *(yy_c_buf_p); +} -#ifdef YY_USE_PROTOS -YY_BUFFER_STATE yy_create_buffer( FILE *file, int size ) -#else -YY_BUFFER_STATE yy_create_buffer( file, size ) -FILE *file; -int size; -#endif - { +/** Allocate and initialize an input buffer state. + * @param file A readable stream. + * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. + * + * @return the allocated buffer state. + */ + YY_BUFFER_STATE ss_create_buffer (FILE * file, int size ) +{ YY_BUFFER_STATE b; - - b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) ); + + b = (YY_BUFFER_STATE) ssalloc(sizeof( struct yy_buffer_state ) ); if ( ! b ) - YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); + YY_FATAL_ERROR( "out of dynamic memory in ss_create_buffer()" ); b->yy_buf_size = size; /* yy_ch_buf has to be 2 characters longer than the size given because * we need to put in 2 end-of-buffer characters. */ - b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 ); + b->yy_ch_buf = (char *) ssalloc(b->yy_buf_size + 2 ); if ( ! b->yy_ch_buf ) - YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); + YY_FATAL_ERROR( "out of dynamic memory in ss_create_buffer()" ); b->yy_is_our_buffer = 1; - yy_init_buffer( b, file ); + ss_init_buffer(b,file ); return b; - } - +} -#ifdef YY_USE_PROTOS -void yy_delete_buffer( YY_BUFFER_STATE b ) -#else -void yy_delete_buffer( b ) -YY_BUFFER_STATE b; -#endif - { +/** Destroy the buffer. + * @param b a buffer created with ss_create_buffer() + * + */ + void ss_delete_buffer (YY_BUFFER_STATE b ) +{ + if ( ! b ) return; - if ( b == yy_current_buffer ) - yy_current_buffer = (YY_BUFFER_STATE) 0; + if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ + YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; if ( b->yy_is_our_buffer ) - yy_flex_free( (void *) b->yy_ch_buf ); - - yy_flex_free( (void *) b ); - } - + ssfree((void *) b->yy_ch_buf ); + ssfree((void *) b ); +} -#ifdef YY_USE_PROTOS -void yy_init_buffer( YY_BUFFER_STATE b, FILE *file ) -#else -void yy_init_buffer( b, file ) -YY_BUFFER_STATE b; -FILE *file; -#endif - +#ifndef __cplusplus +extern int isatty (int ); +#endif /* __cplusplus */ + +/* Initializes or reinitializes a buffer. + * This function is sometimes called more than once on the same buffer, + * such as during a ssrestart() or at EOF. + */ + static void ss_init_buffer (YY_BUFFER_STATE b, FILE * file ) - { - yy_flush_buffer( b ); +{ + int oerrno = errno; + + ss_flush_buffer(b ); b->yy_input_file = file; b->yy_fill_buffer = 1; -#if YY_ALWAYS_INTERACTIVE - b->yy_is_interactive = 1; -#else -#if YY_NEVER_INTERACTIVE - b->yy_is_interactive = 0; -#else - b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; -#endif -#endif - } - + /* If b is the current buffer, then ss_init_buffer was _probably_ + * called from ssrestart() or through yy_get_next_buffer. + * In that case, we don't want to reset the lineno or column. + */ + if (b != YY_CURRENT_BUFFER){ + b->yy_bs_lineno = 1; + b->yy_bs_column = 0; + } -#ifdef YY_USE_PROTOS -void yy_flush_buffer( YY_BUFFER_STATE b ) -#else -void yy_flush_buffer( b ) -YY_BUFFER_STATE b; -#endif + b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; + + errno = oerrno; +} - { - if ( ! b ) +/** Discard all buffered characters. On the next scan, YY_INPUT will be called. + * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. + * + */ + void ss_flush_buffer (YY_BUFFER_STATE b ) +{ + if ( ! b ) return; b->yy_n_chars = 0; @@ -1485,31 +1568,127 @@ YY_BUFFER_STATE b; b->yy_at_bol = 1; b->yy_buffer_status = YY_BUFFER_NEW; - if ( b == yy_current_buffer ) - yy_load_buffer_state(); + if ( b == YY_CURRENT_BUFFER ) + ss_load_buffer_state( ); +} + +/** Pushes the new state onto the stack. The new state becomes + * the current state. This function will allocate the stack + * if necessary. + * @param new_buffer The new state. + * + */ +void sspush_buffer_state (YY_BUFFER_STATE new_buffer ) +{ + if (new_buffer == NULL) + return; + + ssensure_buffer_stack(); + + /* This block is copied from ss_switch_to_buffer. */ + if ( YY_CURRENT_BUFFER ) + { + /* Flush out information for old buffer. */ + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + /* Only push if top exists. Otherwise, replace top. */ + if (YY_CURRENT_BUFFER) + (yy_buffer_stack_top)++; + YY_CURRENT_BUFFER_LVALUE = new_buffer; + + /* copied from ss_switch_to_buffer. */ + ss_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; +} + +/** Removes and deletes the top of the stack, if present. + * The next element becomes the new top. + * + */ +void sspop_buffer_state (void) +{ + if (!YY_CURRENT_BUFFER) + return; + + ss_delete_buffer(YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = NULL; + if ((yy_buffer_stack_top) > 0) + --(yy_buffer_stack_top); + + if (YY_CURRENT_BUFFER) { + ss_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; } +} +/* Allocates the stack if it does not exist. + * Guarantees space for at least one push. + */ +static void ssensure_buffer_stack (void) +{ + int num_to_alloc; + + if (!(yy_buffer_stack)) { + + /* First allocation is just for 2 elements, since we don't know if this + * scanner will even need a stack. We use 2 instead of 1 to avoid an + * immediate realloc on the next call. + */ + num_to_alloc = 1; + (yy_buffer_stack) = (struct yy_buffer_state**)ssalloc + (num_to_alloc * sizeof(struct yy_buffer_state*) + ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in ssensure_buffer_stack()" ); + + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); + + (yy_buffer_stack_max) = num_to_alloc; + (yy_buffer_stack_top) = 0; + return; + } -#ifndef YY_NO_SCAN_BUFFER -#ifdef YY_USE_PROTOS -YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size ) -#else -YY_BUFFER_STATE yy_scan_buffer( base, size ) -char *base; -yy_size_t size; -#endif - { - YY_BUFFER_STATE b; + if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ + + /* Increase the buffer to prepare for a possible push. */ + int grow_size = 8 /* arbitrary grow size */; + num_to_alloc = (yy_buffer_stack_max) + grow_size; + (yy_buffer_stack) = (struct yy_buffer_state**)ssrealloc + ((yy_buffer_stack), + num_to_alloc * sizeof(struct yy_buffer_state*) + ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in ssensure_buffer_stack()" ); + + /* zero only the new slots.*/ + memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); + (yy_buffer_stack_max) = num_to_alloc; + } +} + +/** Setup the input buffer state to scan directly from a user-specified character buffer. + * @param base the character buffer + * @param size the size in bytes of the character buffer + * + * @return the newly allocated buffer state object. + */ +YY_BUFFER_STATE ss_scan_buffer (char * base, yy_size_t size ) +{ + YY_BUFFER_STATE b; + if ( size < 2 || base[size-2] != YY_END_OF_BUFFER_CHAR || base[size-1] != YY_END_OF_BUFFER_CHAR ) /* They forgot to leave room for the EOB's. */ return 0; - b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) ); + b = (YY_BUFFER_STATE) ssalloc(sizeof( struct yy_buffer_state ) ); if ( ! b ) - YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); + YY_FATAL_ERROR( "out of dynamic memory in ss_scan_buffer()" ); b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ b->yy_buf_pos = b->yy_ch_buf = base; @@ -1521,58 +1700,53 @@ yy_size_t size; b->yy_fill_buffer = 0; b->yy_buffer_status = YY_BUFFER_NEW; - yy_switch_to_buffer( b ); + ss_switch_to_buffer(b ); return b; - } -#endif - - -#ifndef YY_NO_SCAN_STRING -#ifdef YY_USE_PROTOS -YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str ) -#else -YY_BUFFER_STATE yy_scan_string( yy_str ) -yyconst char *yy_str; -#endif - { - int len; - for ( len = 0; yy_str[len]; ++len ) - ; - - return yy_scan_bytes( yy_str, len ); - } -#endif +} +/** Setup the input buffer state to scan a string. The next call to sslex() will + * scan from a @e copy of @a str. + * @param yystr a NUL-terminated string to scan + * + * @return the newly allocated buffer state object. + * @note If you want to scan bytes that may contain NUL values, then use + * ss_scan_bytes() instead. + */ +YY_BUFFER_STATE ss_scan_string (yyconst char * yystr ) +{ + + return ss_scan_bytes(yystr,strlen(yystr) ); +} -#ifndef YY_NO_SCAN_BYTES -#ifdef YY_USE_PROTOS -YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len ) -#else -YY_BUFFER_STATE yy_scan_bytes( bytes, len ) -yyconst char *bytes; -int len; -#endif - { +/** Setup the input buffer state to scan the given bytes. The next call to sslex() will + * scan from a @e copy of @a bytes. + * @param bytes the byte buffer to scan + * @param len the number of bytes in the buffer pointed to by @a bytes. + * + * @return the newly allocated buffer state object. + */ +YY_BUFFER_STATE ss_scan_bytes (yyconst char * yybytes, int _yybytes_len ) +{ YY_BUFFER_STATE b; char *buf; yy_size_t n; int i; - + /* Get memory for full buffer, including space for trailing EOB's. */ - n = len + 2; - buf = (char *) yy_flex_alloc( n ); + n = _yybytes_len + 2; + buf = (char *) ssalloc(n ); if ( ! buf ) - YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); + YY_FATAL_ERROR( "out of dynamic memory in ss_scan_bytes()" ); - for ( i = 0; i < len; ++i ) - buf[i] = bytes[i]; + for ( i = 0; i < _yybytes_len; ++i ) + buf[i] = yybytes[i]; - buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR; + buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; - b = yy_scan_buffer( buf, n ); + b = ss_scan_buffer(buf,n ); if ( ! b ) - YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); + YY_FATAL_ERROR( "bad buffer in ss_scan_bytes()" ); /* It's okay to grow etc. this buffer, and we should throw it * away when we're done. @@ -1580,148 +1754,196 @@ int len; b->yy_is_our_buffer = 1; return b; - } +} + +#ifndef YY_EXIT_FAILURE +#define YY_EXIT_FAILURE 2 #endif +static void yy_fatal_error (yyconst char* msg ) +{ + (void) fprintf( stderr, "%s\n", msg ); + exit( YY_EXIT_FAILURE ); +} -#ifndef YY_NO_PUSH_STATE -#ifdef YY_USE_PROTOS -static void yy_push_state( int new_state ) -#else -static void yy_push_state( new_state ) -int new_state; -#endif - { - if ( yy_start_stack_ptr >= yy_start_stack_depth ) - { - yy_size_t new_size; +/* Redefine yyless() so it works in section 3 code. */ - yy_start_stack_depth += YY_START_STACK_INCR; - new_size = yy_start_stack_depth * sizeof( int ); +#undef yyless +#define yyless(n) \ + do \ + { \ + /* Undo effects of setting up sstext. */ \ + int yyless_macro_arg = (n); \ + YY_LESS_LINENO(yyless_macro_arg);\ + sstext[ssleng] = (yy_hold_char); \ + (yy_c_buf_p) = sstext + yyless_macro_arg; \ + (yy_hold_char) = *(yy_c_buf_p); \ + *(yy_c_buf_p) = '\0'; \ + ssleng = yyless_macro_arg; \ + } \ + while ( 0 ) - if ( ! yy_start_stack ) - yy_start_stack = (int *) yy_flex_alloc( new_size ); +/* Accessor methods (get/set functions) to struct members. */ - else - yy_start_stack = (int *) yy_flex_realloc( - (void *) yy_start_stack, new_size ); +/** Get the current line number. + * + */ +int ssget_lineno (void) +{ + + return sslineno; +} - if ( ! yy_start_stack ) - YY_FATAL_ERROR( - "out of memory expanding start-condition stack" ); - } +/** Get the input stream. + * + */ +FILE *ssget_in (void) +{ + return ssin; +} - yy_start_stack[yy_start_stack_ptr++] = YY_START; +/** Get the output stream. + * + */ +FILE *ssget_out (void) +{ + return ssout; +} - BEGIN(new_state); - } -#endif +/** Get the length of the current token. + * + */ +int ssget_leng (void) +{ + return ssleng; +} +/** Get the current token. + * + */ -#ifndef YY_NO_POP_STATE -static void yy_pop_state() - { - if ( --yy_start_stack_ptr < 0 ) - YY_FATAL_ERROR( "start-condition stack underflow" ); +char *ssget_text (void) +{ + return sstext; +} - BEGIN(yy_start_stack[yy_start_stack_ptr]); - } -#endif +/** Set the current line number. + * @param line_number + * + */ +void ssset_lineno (int line_number ) +{ + + sslineno = line_number; +} +/** Set the input stream. This does not discard the current + * input buffer. + * @param in_str A readable stream. + * + * @see ss_switch_to_buffer + */ +void ssset_in (FILE * in_str ) +{ + ssin = in_str ; +} -#ifndef YY_NO_TOP_STATE -static int yy_top_state() - { - return yy_start_stack[yy_start_stack_ptr - 1]; - } -#endif +void ssset_out (FILE * out_str ) +{ + ssout = out_str ; +} -#ifndef YY_EXIT_FAILURE -#define YY_EXIT_FAILURE 2 -#endif +int ssget_debug (void) +{ + return ss_flex_debug; +} -#ifdef YY_USE_PROTOS -static void yy_fatal_error( yyconst char msg[] ) +void ssset_debug (int bdebug ) +{ + ss_flex_debug = bdebug ; +} + +static int yy_init_globals (void) +{ + /* Initialization is the same as for the non-reentrant scanner. + * This function is called from sslex_destroy(), so don't allocate here. + */ + + (yy_buffer_stack) = 0; + (yy_buffer_stack_top) = 0; + (yy_buffer_stack_max) = 0; + (yy_c_buf_p) = (char *) 0; + (yy_init) = 0; + (yy_start) = 0; + +/* Defined in main.c */ +#ifdef YY_STDINIT + ssin = stdin; + ssout = stdout; #else -static void yy_fatal_error( msg ) -char msg[]; + ssin = (FILE *) 0; + ssout = (FILE *) 0; #endif - { - (void) fprintf( stderr, "%s\n", msg ); - exit( YY_EXIT_FAILURE ); - } + /* For future reference: Set errno on error, since we are called by + * sslex_init() + */ + return 0; +} +/* sslex_destroy is for both reentrant and non-reentrant scanners. */ +int sslex_destroy (void) +{ + + /* Pop the buffer stack, destroying each element. */ + while(YY_CURRENT_BUFFER){ + ss_delete_buffer(YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = NULL; + sspop_buffer_state(); + } -/* Redefine yyless() so it works in section 3 code. */ + /* Destroy the stack itself. */ + ssfree((yy_buffer_stack) ); + (yy_buffer_stack) = NULL; -#undef yyless -#define yyless(n) \ - do \ - { \ - /* Undo effects of setting up yytext. */ \ - yytext[yyleng] = yy_hold_char; \ - yy_c_buf_p = yytext + n; \ - yy_hold_char = *yy_c_buf_p; \ - *yy_c_buf_p = '\0'; \ - yyleng = n; \ - } \ - while ( 0 ) + /* Reset the globals. This is important in a non-reentrant scanner so the next time + * sslex() is called, initialization will occur. */ + yy_init_globals( ); + return 0; +} -/* Internal utility routines. */ +/* + * Internal utility routines. + */ #ifndef yytext_ptr -#ifdef YY_USE_PROTOS -static void yy_flex_strncpy( char *s1, yyconst char *s2, int n ) -#else -static void yy_flex_strncpy( s1, s2, n ) -char *s1; -yyconst char *s2; -int n; -#endif - { +static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) +{ register int i; for ( i = 0; i < n; ++i ) s1[i] = s2[i]; - } +} #endif #ifdef YY_NEED_STRLEN -#ifdef YY_USE_PROTOS -static int yy_flex_strlen( yyconst char *s ) -#else -static int yy_flex_strlen( s ) -yyconst char *s; -#endif - { +static int yy_flex_strlen (yyconst char * s ) +{ register int n; for ( n = 0; s[n]; ++n ) ; return n; - } +} #endif - -#ifdef YY_USE_PROTOS -static void *yy_flex_alloc( yy_size_t size ) -#else -static void *yy_flex_alloc( size ) -yy_size_t size; -#endif - { +void *ssalloc (yy_size_t size ) +{ return (void *) malloc( size ); - } +} -#ifdef YY_USE_PROTOS -static void *yy_flex_realloc( void *ptr, yy_size_t size ) -#else -static void *yy_flex_realloc( ptr, size ) -void *ptr; -yy_size_t size; -#endif - { +void *ssrealloc (void * ptr, yy_size_t size ) +{ /* The cast to (char *) in the following accommodates both * implementations that use char* generic pointers, and those * that use void* generic pointers. It works with the latter @@ -1730,30 +1952,21 @@ yy_size_t size; * as though doing an assignment. */ return (void *) realloc( (char *) ptr, size ); - } +} -#ifdef YY_USE_PROTOS -static void yy_flex_free( void *ptr ) -#else -static void yy_flex_free( ptr ) -void *ptr; -#endif - { - free( ptr ); - } +void ssfree (void * ptr ) +{ + free( (char *) ptr ); /* see ssrealloc() for (char *) cast */ +} -#if YY_MAIN -int main() - { - yylex(); - return 0; - } -#endif -#line 128 "icalsslexer.l" +#define YYTABLES_NAME "yytables" -int yywrap() + + +int sswrap() { return 1; } + diff --git a/src/libicalss/icalsslexer.l b/src/libicalss/icalsslexer.l index a044051..7003fc0 100644 --- a/src/libicalss/icalsslexer.l +++ b/src/libicalss/icalsslexer.l @@ -36,11 +36,14 @@ const char* input_buffer; const char* input_buffer_p; -#define min(a,b) ((a) < (b) ? (a) : (b)) - int icalss_input(char* buf, int max_size) { - int n = min(max_size,strlen(input_buffer_p)); + int n; + int l; + + l = strlen(input_buffer_p); + if (max_size<l) n = max_size; + else n = l; if (n > 0){ memcpy(buf, input_buffer_p, n); @@ -108,7 +111,9 @@ NULL { return SQLNULL; } \'[\@\*A-Za-z0-9\-\.\:\ ]+\' { int c = input(); - unput(c); + if(c != EOF){ + unput(c); + } if(c!='\''){ sslval.v_string= icalmemory_tmp_copy(yytext); return STRING; diff --git a/src/libicalss/icalssyacc.c b/src/libicalss/icalssyacc.c index 8d720db..5896120 100644 --- a/src/libicalss/icalssyacc.c +++ b/src/libicalss/icalssyacc.c @@ -120,36 +120,35 @@ /* Copy the first part of user declarations. */ -#line 1 "icalssyacc.y" -/* -*- Mode: C -*- - ====================================================================== - FILE: icalssyacc.y - CREATOR: eric 08 Aug 2000 - - DESCRIPTION: - - $Id: icalssyacc.y,v 1.10 2008-01-14 00:35:26 dothebart Exp $ - $Locker: $ - -(C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org - - This program is free software; you can redistribute it and/or modify - it under the terms of either: - - The LGPL as published by the Free Software Foundation, version - 2.1, available at: http://www.fsf.org/copyleft/lesser.html - - Or: - - The Mozilla Public License Version 1.0. You may obtain a copy of - the License at http://www.mozilla.org/MPL/ - - The Original Code is eric. The Initial Developer of the Original - Code is Eric Busboom - - ======================================================================*/ -/*#define YYDEBUG 1*/ +/* -*- Mode: C -*- */ +/* ====================================================================== */ +/* FILE: icalssyacc.y */ +/* CREATOR: eric 08 Aug 2000 */ +/* */ +/* DESCRIPTION: */ +/* */ +/* $Id: icalssyacc.y,v 1.10 2008-01-14 00:35:26 dothebart Exp $ */ +/* $Locker: $ */ +/* */ +/* (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org */ +/* */ +/* This program is free software; you can redistribute it and/or modify */ +/* it under the terms of either: */ +/* */ +/* The LGPL as published by the Free Software Foundation, version */ +/* 2.1, available at: http://www.fsf.org/copyleft/lesser.html */ +/* */ +/* Or: */ +/* */ +/* The Mozilla Public License Version 1.0. You may obtain a copy of */ +/* the License at http://www.mozilla.org/MPL/ */ +/* */ +/* The Original Code is eric. The Initial Developer of the Original */ +/* Code is Eric Busboom */ +/* */ +/* ====================================================================== */ +#define YYDEBUG 1 #include <stdlib.h> #include <string.h> /* for strdup() */ #include <limits.h> /* for SHRT_MAX*/ @@ -174,13 +173,12 @@ static void set_logic(struct icalgauge_impl* impl,icalgaugelogic l); /* Don't know why I need this.... */ -/* TODO: older flex version produce whats here configured as OpenBSD */ -/* autoconf should figure out, and which flex version we should be newer than? */ -#ifndef __OpenBSD__ -int sslex(void *YYPARSE_PARAM); -#else -int sslex(); -#endif +/* older flex version (such as included in OpenBSD) takes a different calling syntax */ +#ifdef YYPARSE_PARAM +int sslex(void *YYPARSE_PARAM); +#else +int sslex(void); +#endif /* Enabling traces. */ @@ -203,12 +201,10 @@ int sslex(); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 63 "icalssyacc.y" { char* v_string; } /* Line 187 of yacc.c. */ -#line 212 "y.tab.c" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -221,7 +217,6 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 225 "y.tab.c" #ifdef short # undef short @@ -362,14 +357,14 @@ YYID (i) # ifndef YYMALLOC # define YYMALLOC malloc # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) + || defined __cplusplus) void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ # endif # endif # ifndef YYFREE # define YYFREE free # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) + || defined __cplusplus) void free (void *); /* INFRINGES ON USER NAME SPACE */ # endif # endif @@ -513,9 +508,9 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint8 yyrline[] = { - 0, 74, 74, 75, 76, 83, 84, 89, 90, 93, - 95, 96, 97, 98, 99, 100, 101, 102, 106, 107, - 108 + 0, 73, 73, 74, 75, 82, 83, 88, 89, 92, + 94, 95, 96, 97, 98, 99, 100, 101, 105, 106, + 107 }; #endif @@ -1436,7 +1431,6 @@ yyreduce: switch (yyn) { case 4: -#line 76 "icalssyacc.y" { yyclearin; YYABORT; @@ -1444,83 +1438,67 @@ yyreduce: break; case 5: -#line 83 "icalssyacc.y" {ssyacc_add_select(icalss_yy_gauge,(yyvsp[(1) - (1)].v_string));} break; case 6: -#line 84 "icalssyacc.y" {ssyacc_add_select(icalss_yy_gauge,(yyvsp[(3) - (3)].v_string));} break; case 7: -#line 89 "icalssyacc.y" {ssyacc_add_from(icalss_yy_gauge,(yyvsp[(1) - (1)].v_string));} break; case 8: -#line 90 "icalssyacc.y" {ssyacc_add_from(icalss_yy_gauge,(yyvsp[(3) - (3)].v_string));} break; case 10: -#line 95 "icalssyacc.y" {ssyacc_add_where(icalss_yy_gauge,(yyvsp[(1) - (3)].v_string),ICALGAUGECOMPARE_EQUAL,(yyvsp[(3) - (3)].v_string)); } break; case 11: -#line 96 "icalssyacc.y" {ssyacc_add_where(icalss_yy_gauge,(yyvsp[(1) - (3)].v_string),ICALGAUGECOMPARE_ISNULL,""); } break; case 12: -#line 97 "icalssyacc.y" {ssyacc_add_where(icalss_yy_gauge,(yyvsp[(1) - (4)].v_string),ICALGAUGECOMPARE_ISNOTNULL,""); } break; case 13: -#line 98 "icalssyacc.y" {ssyacc_add_where(icalss_yy_gauge,(yyvsp[(1) - (3)].v_string),ICALGAUGECOMPARE_NOTEQUAL,(yyvsp[(3) - (3)].v_string)); } break; case 14: -#line 99 "icalssyacc.y" {ssyacc_add_where(icalss_yy_gauge,(yyvsp[(1) - (3)].v_string),ICALGAUGECOMPARE_LESS,(yyvsp[(3) - (3)].v_string)); } break; case 15: -#line 100 "icalssyacc.y" {ssyacc_add_where(icalss_yy_gauge,(yyvsp[(1) - (3)].v_string),ICALGAUGECOMPARE_GREATER,(yyvsp[(3) - (3)].v_string)); } break; case 16: -#line 101 "icalssyacc.y" {ssyacc_add_where(icalss_yy_gauge,(yyvsp[(1) - (3)].v_string),ICALGAUGECOMPARE_LESSEQUAL,(yyvsp[(3) - (3)].v_string)); } break; case 17: -#line 102 "icalssyacc.y" {ssyacc_add_where(icalss_yy_gauge,(yyvsp[(1) - (3)].v_string),ICALGAUGECOMPARE_GREATEREQUAL,(yyvsp[(3) - (3)].v_string)); } break; case 18: -#line 106 "icalssyacc.y" {set_logic(icalss_yy_gauge,ICALGAUGELOGIC_NONE);} break; case 19: -#line 107 "icalssyacc.y" {set_logic(icalss_yy_gauge,ICALGAUGELOGIC_AND);} break; case 20: -#line 108 "icalssyacc.y" {set_logic(icalss_yy_gauge,ICALGAUGELOGIC_OR);} break; /* Line 1267 of yacc.c. */ -#line 1524 "y.tab.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -1734,7 +1712,6 @@ yyreturn: } -#line 112 "icalssyacc.y" static void ssyacc_add_where(struct icalgauge_impl* impl, char* str1, @@ -1767,8 +1744,8 @@ static void ssyacc_add_where(struct icalgauge_impl* impl, char* str1, where->value = strdup(s); - /* Is there a period in str1 ? If so, the string specified both a - component and a property*/ + /* Is there a period in str1 ? If so, the string specified both a */ + /* component and a property */ if( (c = strrchr(str1,'.')) != 0){ compstr = str1; propstr = c+1; @@ -1827,8 +1804,8 @@ static void ssyacc_add_select(struct icalgauge_impl* impl, char* str1) where->comp = ICAL_NO_COMPONENT; where->prop = ICAL_NO_PROPERTY; - /* Is there a period in str1 ? If so, the string specified both a - component and a property*/ + /* Is there a period in str1 ? If so, the string specified both a */ + /* component and a property */ if( (c = strrchr(str1,'.')) != 0){ compstr = str1; propstr = c+1; diff --git a/src/libicalss/icalssyacc.h b/src/libicalss/icalssyacc.h index cb6973e..f97cc4a 100644 --- a/src/libicalss/icalssyacc.h +++ b/src/libicalss/icalssyacc.h @@ -86,12 +86,10 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 63 "icalssyacc.y" { char* v_string; } /* Line 1489 of yacc.c. */ -#line 95 "y.tab.h" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 diff --git a/src/libicalss/icalssyacc.y b/src/libicalss/icalssyacc.y index af16177..03e1d92 100644 --- a/src/libicalss/icalssyacc.y +++ b/src/libicalss/icalssyacc.y @@ -1,31 +1,31 @@ %{ -/* -*- Mode: C -*- - ====================================================================== - FILE: icalssyacc.y - CREATOR: eric 08 Aug 2000 - - DESCRIPTION: - - $Id: icalssyacc.y,v 1.10 2008-01-14 00:35:26 dothebart Exp $ - $Locker: $ - -(C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org - - This program is free software; you can redistribute it and/or modify - it under the terms of either: - - The LGPL as published by the Free Software Foundation, version - 2.1, available at: http://www.fsf.org/copyleft/lesser.html - - Or: - - The Mozilla Public License Version 1.0. You may obtain a copy of - the License at http://www.mozilla.org/MPL/ - - The Original Code is eric. The Initial Developer of the Original - Code is Eric Busboom - - ======================================================================*/ +/* -*- Mode: C -*- */ +/* ====================================================================== */ +/* FILE: icalssyacc.y */ +/* CREATOR: eric 08 Aug 2000 */ +/* */ +/* DESCRIPTION: */ +/* */ +/* $Id: icalssyacc.y,v 1.10 2008-01-14 00:35:26 dothebart Exp $ */ +/* $Locker: $ */ +/* */ +/* (C) COPYRIGHT 2000, Eric Busboom, http://www.softwarestudio.org */ +/* */ +/* This program is free software; you can redistribute it and/or modify */ +/* it under the terms of either: */ +/* */ +/* The LGPL as published by the Free Software Foundation, version */ +/* 2.1, available at: http://www.fsf.org/copyleft/lesser.html */ +/* */ +/* Or: */ +/* */ +/* The Mozilla Public License Version 1.0. You may obtain a copy of */ +/* the License at http://www.mozilla.org/MPL/ */ +/* */ +/* The Original Code is eric. The Initial Developer of the Original */ +/* Code is Eric Busboom */ +/* */ +/* ====================================================================== */ /*#define YYDEBUG 1*/ #include <stdlib.h> #include <string.h> /* for strdup() */ @@ -51,13 +51,12 @@ static void set_logic(struct icalgauge_impl* impl,icalgaugelogic l); /* Don't know why I need this.... */ -/* TODO: older flex version produce whats here configured as OpenBSD */ -/* autoconf should figure out, and which flex version we should be newer than? */ -#ifndef __OpenBSD__ -int sslex(void *YYPARSE_PARAM); -#else -int sslex(); -#endif +/* older flex version (such as included in OpenBSD) takes a different calling syntax */ +#ifdef YYPARSE_PARAM +int sslex(void *YYPARSE_PARAM); +#else +int sslex(void); +#endif %} %union { @@ -141,8 +140,8 @@ static void ssyacc_add_where(struct icalgauge_impl* impl, char* str1, where->value = strdup(s); - /* Is there a period in str1 ? If so, the string specified both a - component and a property*/ + /* Is there a period in str1 ? If so, the string specified both a */ + /* component and a property */ if( (c = strrchr(str1,'.')) != 0){ compstr = str1; propstr = c+1; @@ -201,8 +200,8 @@ static void ssyacc_add_select(struct icalgauge_impl* impl, char* str1) where->comp = ICAL_NO_COMPONENT; where->prop = ICAL_NO_PROPERTY; - /* Is there a period in str1 ? If so, the string specified both a - component and a property*/ + /* Is there a period in str1 ? If so, the string specified both a */ + /* component and a property */ if( (c = strrchr(str1,'.')) != 0){ compstr = str1; propstr = c+1; |