[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r1239 - in Extractor-php: . examples
From: |
grothoff |
Subject: |
[GNUnet-SVN] r1239 - in Extractor-php: . examples |
Date: |
Mon, 4 Jul 2005 07:37:42 -0700 (PDT) |
Author: grothoff
Date: 2005-07-04 07:37:35 -0700 (Mon, 04 Jul 2005)
New Revision: 1239
Added:
Extractor-php/CREDITS
Extractor-php/EXPERIMENTAL
Extractor-php/Makefile
Extractor-php/README
Extractor-php/config.m4
Extractor-php/examples/
Extractor-php/examples/extractor_getkeywords.php
Extractor-php/extractor.c
Extractor-php/package.xml
Extractor-php/php_extractor.h
Log:
php
Added: Extractor-php/CREDITS
===================================================================
--- Extractor-php/CREDITS 2005-07-04 14:31:57 UTC (rev 1238)
+++ Extractor-php/CREDITS 2005-07-04 14:37:35 UTC (rev 1239)
@@ -0,0 +1,3 @@
+extractor
+Manfred Weber
+Johann Peter Hartmann
\ No newline at end of file
Added: Extractor-php/EXPERIMENTAL
===================================================================
--- Extractor-php/EXPERIMENTAL 2005-07-04 14:31:57 UTC (rev 1238)
+++ Extractor-php/EXPERIMENTAL 2005-07-04 14:37:35 UTC (rev 1239)
@@ -0,0 +1,5 @@
+this extension is experimental,
+its functions may change their names
+or move to extension all together
+so do not rely to much on them
+you have been warned!
Added: Extractor-php/Makefile
===================================================================
--- Extractor-php/Makefile 2005-07-04 14:31:57 UTC (rev 1238)
+++ Extractor-php/Makefile 2005-07-04 14:37:35 UTC (rev 1239)
@@ -0,0 +1,120 @@
+srcdir = /tmp/extractor
+builddir = /tmp/extractor
+top_srcdir = /tmp/extractor
+top_builddir = /tmp/extractor
+SHLIB_SUFFIX_NAME = so
+EXTRACTOR_SHARED_LIBADD = -Wl,-rpath,/lib -L/lib -lextractor
+shared_objects_extractor = extractor.lo
+PHP_MODULES = $(phplibdir)/extractor.la
+all_targets = $(PHP_MODULES)
+install_targets = install-modules
+prefix = /usr/local/php5
+exec_prefix = $(prefix)
+libdir = ${exec_prefix}/lib
+prefix = /usr/local/php5
+phplibdir = /tmp/extractor/modules
+PHP_COMPILE =
+CC = gcc
+CFLAGS = -g -O2
+CFLAGS_CLEAN = $(CFLAGS)
+CPP = gcc -E
+CPPFLAGS = -DHAVE_CONFIG_H
+CXX = g++
+DEFS =
+EXTENSION_DIR = /usr/local/php5/lib/php/extensions/no-debug-non-zts-20040412
+EXTRA_LDFLAGS =
+EXTRA_LIBS =
+INCLUDES = -I/usr/local/php5/include/php -I/usr/local/php5/include/php/main
-I/usr/local/php5/include/php/Zend -I/usr/local/php5/include/php/TSRM
-I/usr/local/include
+LEX =
+LEX_OUTPUT_ROOT =
+LFLAGS =
+LDFLAGS =
+SHARED_LIBTOOL =
+LIBTOOL = $(SHELL) $(top_builddir)/libtool
+SHELL = /bin/sh
+AWK = gawk
+RE2C = exit 0;
+mkinstalldirs = $(top_srcdir)/build/shtool mkdir -p
+INSTALL = $(top_srcdir)/build/shtool install -c
+INSTALL_DATA = $(INSTALL) -m 644
+
+DEFS = -DPHP_ATOM_INC -I$(top_builddir)/include -I$(top_builddir)/main
-I$(top_srcdir)
+COMMON_FLAGS = $(DEFS) $(INCLUDES) $(EXTRA_INCLUDES) $(CPPFLAGS)
$(PHP_FRAMEWORKPATH)
+
+
+all: $(all_targets)
+ @echo
+ @echo "Build complete."
+ @echo "(It is safe to ignore warnings about tempnam and tmpnam)."
+ @echo
+
+build-modules: $(PHP_MODULES)
+
+libphp5.la: $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS)
+ $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -rpath
$(phptempdir) $(EXTRA_LDFLAGS) $(LDFLAGS) $(PHP_RPATHS) $(PHP_GLOBAL_OBJS)
$(PHP_SAPI_OBJS) $(EXTRA_LIBS) $(ZEND_EXTRA_LIBS) -o $@
+ address@hidden(LIBTOOL) --silent --mode=install cp libphp5.la
$(phptempdir)/libphp5.la >/dev/null 2>&1
+
+libs/libphp5.bundle: $(PHP_GLOBAL_OBJS) $(PHP_SAPI_OBJS)
+ $(CC) $(MH_BUNDLE_FLAGS) $(CFLAGS_CLEAN) $(EXTRA_CFLAGS) $(LDFLAGS)
$(EXTRA_LDFLAGS) $(PHP_GLOBAL_OBJS:.lo=.o) $(PHP_SAPI_OBJS:.lo=.o)
$(PHP_FRAMEWORKS) $(EXTRA_LIBS) $(ZEND_EXTRA_LIBS) -o $@ && cp $@
libs/libphp5.so
+
+install: $(all_targets) $(install_targets)
+
+install-sapi: $(OVERALL_TARGET)
+ @echo "Installing PHP SAPI module: $(PHP_SAPI)"
+ address@hidden(mkinstalldirs) $(INSTALL_ROOT)$(bindir)
+ address@hidden test ! -r $(phptempdir)/libphp5.$(SHLIB_SUFFIX_NAME);
then \
+ for i in 0.0.0 0.0 0; do \
+ if test -r
$(phptempdir)/libphp5.$(SHLIB_SUFFIX_NAME).$$i; then \
+ $(LN_S)
$(phptempdir)/libphp5.$(SHLIB_SUFFIX_NAME).$$i
$(phptempdir)/libphp5.$(SHLIB_SUFFIX_NAME); \
+ break; \
+ fi; \
+ done; \
+ fi
+ @$(INSTALL_IT)
+
+install-modules: build-modules
+ @test -d modules && \
+ $(mkinstalldirs) $(INSTALL_ROOT)$(EXTENSION_DIR)
+ @echo "Installing shared extensions:
$(INSTALL_ROOT)$(EXTENSION_DIR)/"
+ @rm -f modules/*.la >/dev/null 2>&1
+ @$(INSTALL) modules/* $(INSTALL_ROOT)$(EXTENSION_DIR)
+
+install-tester:
+ @echo "Installing regression tester:
$(INSTALL_ROOT)$(PEAR_INSTALLDIR)/"
+ @$(mkinstalldirs) $(INSTALL_ROOT)$(PEAR_INSTALLDIR)
+ @$(INSTALL) -m 755 $(top_srcdir)/run-tests.php
$(INSTALL_ROOT)$(PEAR_INSTALLDIR)
+
+install-su: install-pear install-tester
+
+test:
+ address@hidden test -x $(SAPI_CLI_PATH) && test ! -z $(SAPI_CLI_PATH);
then \
+ TEST_PHP_EXECUTABLE=$(top_builddir)/$(SAPI_CLI_PATH) \
+ TEST_PHP_SRCDIR=$(top_srcdir) \
+ CC="$(CC)" \
+ $(top_builddir)/$(SAPI_CLI_PATH) -d 'open_basedir=' -d
'safe_mode=0' -d 'output_buffering=0' $(top_srcdir)/run-tests.php $(TESTS); \
+ else \
+ echo "ERROR: Cannot run tests without CLI sapi."; \
+ fi
+
+clean:
+ find . -name \*.lo -o -name \*.o | xargs rm -f
+ find . -name \*.la -o -name \*.a | xargs rm -f
+ find . -name \*.so | xargs rm -f
+ find . -name .libs -a -type d|xargs rm -rf
+ rm -f libphp5.la $(SAPI_CLI_PATH) $(OVERALL_TARGET) modules/* libs/*
+
+distclean: clean
+ rm -f config.cache config.log config.status Makefile.objects
Makefile.fragments libtool main/php_config.h stamp-h php5.spec
sapi/apache/libphp5.module buildmk.stamp
+ egrep define'.*include/php' configure|sed 's/.*>//'|xargs rm -f
+ find . -name Makefile | xargs rm -f
+
+.PHONY: all clean install distclean test
+.NOEXPORT:
+extractor.lo: /tmp/extractor/extractor.c
+ $(LIBTOOL) --mode=compile $(CC) -I. -I/tmp/extractor $(COMMON_FLAGS)
$(CFLAGS_CLEAN) $(EXTRA_CFLAGS) -prefer-pic -c /tmp/extractor/extractor.c -o
extractor.lo
+$(phplibdir)/extractor.la: ./extractor.la
+ $(LIBTOOL) --mode=install cp ./extractor.la $(phplibdir)
+
+./extractor.la: $(shared_objects_extractor) $(EXTRACTOR_SHARED_DEPENDENCIES)
+ $(LIBTOOL) --mode=link $(CC) $(COMMON_FLAGS) $(CFLAGS_CLEAN)
$(EXTRA_CFLAGS) $(LDFLAGS) -o $@ -export-dynamic -avoid-version -prefer-pic
-module -rpath $(phplibdir) $(EXTRA_LDFLAGS) $(shared_objects_extractor)
$(EXTRACTOR_SHARED_LIBADD)
+
Added: Extractor-php/README
===================================================================
--- Extractor-php/README 2005-07-04 14:31:57 UTC (rev 1238)
+++ Extractor-php/README 2005-07-04 14:37:35 UTC (rev 1239)
@@ -0,0 +1,8 @@
+I found this at:
+
+http://blog.thinkphp.de/archives/12-My-first-PHP-Extension..html
+
+Note that there maybe a licensing issue here.
+
+libextractor is released under the GNU GPL, which according to the FSF (IANAL,
but they have some) is incompatible with the PHP License. Now, before you even
ask if I could make an exception for you guys, I must tell you that I cannot,
simply because libextractor uses plenty of GPL'ed code that I did not write --
and the authors of some of that code have already declined to LGPL it.
+So while I personally will certainly not go after any _free_ software using my
code, you're on rather shaky ground and other people (namely the author of
xpdf) could theoretically (see also: FUD) give you trouble here. You might
want to put your code under the GPL to avoid this -- and of course you might
want to consider to lobby within the PHP community to make their licenses
GPL-compatible (again), for example by putting the code under two licenses...
:-).
Added: Extractor-php/config.m4
===================================================================
--- Extractor-php/config.m4 2005-07-04 14:31:57 UTC (rev 1238)
+++ Extractor-php/config.m4 2005-07-04 14:37:35 UTC (rev 1239)
@@ -0,0 +1,42 @@
+dnl $Id: config.m4,v 1.1 2004/12/23 06:20:22 manfred Exp $
+dnl config.m4 for extension extractor
+
+PHP_ARG_WITH(extractor, for extractor support,
+[ --with-extractor Include extractor support])
+
+if test "$PHP_EXTRACTOR" != "no"; then
+
+ SEARCH_PATH="/usr/local /usr" # you might want to change this
+ SEARCH_FOR="/include/extractor.h" # you most likely want to change this
+ if test -r $PHP_EXTRACTOR/$SEARCH_FOR; then # path given as parameter
+ EXTRACTOR_DIR=$PHP_EXTRACTOR
+ else # search default path list
+ AC_MSG_CHECKING([for extractor files in default path])
+ for i in $SEARCH_PATH ; do
+ if test -r $i/$SEARCH_FOR; then
+ EXTRACTOR_DIR=$i
+ AC_MSG_RESULT(found in $i)
+ fi
+ done
+ fi
+
+ if test -z "$EXTRACTOR_DIR"; then
+ AC_MSG_RESULT([not found])
+ AC_MSG_ERROR([Please reinstall the extractor distribution])
+ fi
+
+ PHP_ADD_INCLUDE($EXTRACTOR_DIR/include)
+
+ PHP_ADD_LIBRARY_WITH_PATH(extractor, $PHP_EXTRACTOR_DIR/lib,
EXTRACTOR_SHARED_LIBADD)
+
+ AC_CHECK_LIB(extractor, EXTRACTOR_loadDefaultLibraries,
+ [
+ AC_DEFINE(HAVE_EXTRACTORLIB,1,[ ])
+ ], [
+ AC_MSG_ERROR(extractor library not found or wrong version)
+ ],)
+
+ PHP_SUBST(EXTRACTOR_SHARED_LIBADD)
+
+ PHP_NEW_EXTENSION(extractor, extractor.c, $ext_shared)
+fi
Added: Extractor-php/examples/extractor_getkeywords.php
===================================================================
--- Extractor-php/examples/extractor_getkeywords.php 2005-07-04 14:31:57 UTC
(rev 1238)
+++ Extractor-php/examples/extractor_getkeywords.php 2005-07-04 14:37:35 UTC
(rev 1239)
@@ -0,0 +1,12 @@
+#!/usr/local/php5/bin/php
+
+<?php
+
+ini_set('display_errors', 1);
+error_reporting(E_ALL);
+
+print_r(extractor_getkeywords("/usr/local/apache2/htdocs/index.html.de"));
+print_r(extractor_getkeywords("/usr/local/apache2/htdocs/apache_pb.gif"));
+
+?>
+
Property changes on: Extractor-php/examples/extractor_getkeywords.php
___________________________________________________________________
Name: svn:executable
+ *
Added: Extractor-php/extractor.c
===================================================================
--- Extractor-php/extractor.c 2005-07-04 14:31:57 UTC (rev 1238)
+++ Extractor-php/extractor.c 2005-07-04 14:37:35 UTC (rev 1239)
@@ -0,0 +1,189 @@
+/*
+ +----------------------------------------------------------------------+
+ | PHP Version 5 |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1997-2004 The PHP Group |
+ +----------------------------------------------------------------------+
+ | This source file is subject to version 3.0 of the PHP license, |
+ | that is bundled with this package in the file LICENSE, and is |
+ | available through the world-wide-web at the following url: |
+ | http://www.php.net/license/3_0.txt. |
+ | If you did not receive a copy of the PHP license and are unable to |
+ | obtain it through the world-wide-web, please send a note to |
+ | address@hidden so we can mail you a copy immediately. |
+ +----------------------------------------------------------------------+
+ | Author: Manfred Weber |
+ +----------------------------------------------------------------------+
+*/
+
+/* $Id: extractor.c,v 1.1 2004/12/23 06:20:22 manfred Exp $ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "php.h"
+#include "php_ini.h"
+#include "ext/standard/info.h"
+#include "php_extractor.h"
+#include <extractor.h>
+
+/* If you declare any globals in php_extractor.h uncomment this:
+ZEND_DECLARE_MODULE_GLOBALS(extractor)
+*/
+
+/* True global resources - no need for thread safety here */
+static int le_extractor;
+
+/* {{{ extractor_functions[]
+ *
+ * Every user visible function must have an entry in extractor_functions[].
+ */
+function_entry extractor_functions[] = {
+ PHP_FE(extractor_getkeywords, NULL)
+ {NULL, NULL, NULL} /* Must be the last line in
extractor_functions[] */
+};
+/* }}} */
+
+/* {{{ extractor_module_entry
+ */
+zend_module_entry extractor_module_entry = {
+#if ZEND_MODULE_API_NO >= 20010901
+ STANDARD_MODULE_HEADER,
+#endif
+ "extractor",
+ extractor_functions,
+ PHP_MINIT(extractor),
+ PHP_MSHUTDOWN(extractor),
+ PHP_RINIT(extractor), /* Replace with NULL if there's nothing
to do at request start */
+ PHP_RSHUTDOWN(extractor), /* Replace with NULL if there's nothing
to do at request end */
+ PHP_MINFO(extractor),
+#if ZEND_MODULE_API_NO >= 20010901
+ "0.1", /* Replace with version number for your extension */
+#endif
+ STANDARD_MODULE_PROPERTIES
+};
+/* }}} */
+
+#ifdef COMPILE_DL_EXTRACTOR
+ZEND_GET_MODULE(extractor)
+#endif
+
+/* {{{ PHP_INI
+ */
+/* Remove comments and fill if you need to have entries in php.ini
+PHP_INI_BEGIN()
+ STD_PHP_INI_ENTRY("extractor.global_value", "42", PHP_INI_ALL,
OnUpdateLong, global_value, zend_extractor_globals, extractor_globals)
+ STD_PHP_INI_ENTRY("extractor.global_string", "foobar", PHP_INI_ALL,
OnUpdateString, global_string, zend_extractor_globals, extractor_globals)
+PHP_INI_END()
+*/
+/* }}} */
+
+/* {{{ php_extractor_init_globals
+ */
+/* Uncomment this function if you have INI entries
+static void php_extractor_init_globals(zend_extractor_globals
*extractor_globals)
+{
+ extractor_globals->global_value = 0;
+ extractor_globals->global_string = NULL;
+}
+*/
+/* }}} */
+
+/* {{{ PHP_MINIT_FUNCTION
+ */
+PHP_MINIT_FUNCTION(extractor)
+{
+ /* If you have INI entries, uncomment these lines
+ ZEND_INIT_MODULE_GLOBALS(extractor, php_extractor_init_globals, NULL);
+ REGISTER_INI_ENTRIES();
+ */
+ return SUCCESS;
+}
+/* }}} */
+
+/* {{{ PHP_MSHUTDOWN_FUNCTION
+ */
+PHP_MSHUTDOWN_FUNCTION(extractor)
+{
+ /* uncomment this line if you have INI entries
+ UNREGISTER_INI_ENTRIES();
+ */
+ return SUCCESS;
+}
+/* }}} */
+
+/* Remove if there's nothing to do at request start */
+/* {{{ PHP_RINIT_FUNCTION
+ */
+PHP_RINIT_FUNCTION(extractor)
+{
+ return SUCCESS;
+}
+/* }}} */
+
+/* Remove if there's nothing to do at request end */
+/* {{{ PHP_RSHUTDOWN_FUNCTION
+ */
+PHP_RSHUTDOWN_FUNCTION(extractor)
+{
+ return SUCCESS;
+}
+/* }}} */
+
+/* {{{ PHP_MINFO_FUNCTION
+ */
+PHP_MINFO_FUNCTION(extractor)
+{
+ php_info_print_table_start();
+ php_info_print_table_header(2, "extractor support", "enabled");
+ php_info_print_table_end();
+
+ /* Remove comments if you have entries in php.ini
+ DISPLAY_INI_ENTRIES();
+ */
+}
+/* }}} */
+
+/* The previous line is meant for vim and emacs, so it can correctly fold and
+ unfold functions in source code. See the corresponding marks just before
+ function definition, where the functions purpose is also documented. Please
+ follow this convention for the convenience of others editing your code.
+*/
+
+/* {{{ proto array extractor_getkeywords(string filename)
+ returns keywords */
+PHP_FUNCTION(extractor_getkeywords)
+{
+ char *filename = NULL;
+ int argc = ZEND_NUM_ARGS();
+ int filename_len;
+ EXTRACTOR_KeywordList *keywords;
+ EXTRACTOR_ExtractorList *extractors;
+
+ if (zend_parse_parameters(argc TSRMLS_CC, "s", &filename,
&filename_len) == FAILURE)
+ return;
+
+ extractors = EXTRACTOR_loadDefaultLibraries ();
+ keywords = EXTRACTOR_getKeywords (extractors, filename);
+ array_init(return_value);
+ while (keywords != NULL)
+ {
+ add_next_index_string(return_value,keywords->keyword,1);
+ keywords = keywords->next;
+ }
+ EXTRACTOR_freeKeywords (keywords);
+ EXTRACTOR_removeAll (extractors);
+ return;
+}
+/* }}} */
+
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * End:
+ * vim600: noet sw=4 ts=4 fdm=marker
+ * vim<600: noet sw=4 ts=4
+ */
Added: Extractor-php/package.xml
===================================================================
--- Extractor-php/package.xml 2005-07-04 14:31:57 UTC (rev 1238)
+++ Extractor-php/package.xml 2005-07-04 14:37:35 UTC (rev 1239)
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!DOCTYPE package SYSTEM "http://pear.php.net/dtd/package-1.0">
+<package version="1.0">
+ <name>extractor</name>
+ <summary>extract meta-date from files</summary>
+ <description>A PHP extension that interfaces the libextractor library.
libextractor is a library used to extract meta-data from files of arbitrary
type.</description>
+ <maintainers>
+ <maintainer>
+ <user>manfred</user>
+ <name>Manfred Weber</name>
+ <email>address@hidden</email>
+ <role>lead</role>
+ </maintainer>
+ </maintainers>
+ <release>
+ <version>0.1</version>
+ <date>2004-12-22</date>
+ <license>PHP License</license>
+ <state>beta</state>
+ <notes>- Added Function: extractor_getkeywords( string filename )</notes>
+ <filelist>
+ <file role="src" md5sum="7291f1b05a4608bc9223993fd2bea6c2"
name="EXPERIMENTAL"/>
+ <file role="src" md5sum="4bd173b649dfe0931845e873361ceeb6"
name="CREDITS"/>
+ <file role="src" md5sum="bedeb14e023df654cfacdc393b9c5024"
name="Makefile"/>
+ <file role="src" md5sum="35dab6504c38bcec058e889362976ed1"
name="config.m4"/>
+ <file role="src" md5sum="bf4db7a65c5f4c0801fcb73c80577c76"
name="extractor.c"/>
+ <file role="src" md5sum="ae3ef44acaeae71d3b48b07164a5e124"
name="php_extractor.h"/>
+ <file role="doc" baseinstalldir="/"
md5sum="d50e0fe59205a0c834e02ec2d1748638"
name="examples/extractor_getkeywords.php"/>
+ </filelist>
+ </release>
+</package>
Added: Extractor-php/php_extractor.h
===================================================================
--- Extractor-php/php_extractor.h 2005-07-04 14:31:57 UTC (rev 1238)
+++ Extractor-php/php_extractor.h 2005-07-04 14:37:35 UTC (rev 1239)
@@ -0,0 +1,81 @@
+/*
+ +----------------------------------------------------------------------+
+ | PHP Version 5 |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1997-2004 The PHP Group |
+ +----------------------------------------------------------------------+
+ | This source file is subject to version 3.0 of the PHP license, |
+ | that is bundled with this package in the file LICENSE, and is |
+ | available through the world-wide-web at the following url: |
+ | http://www.php.net/license/3_0.txt. |
+ | If you did not receive a copy of the PHP license and are unable to |
+ | obtain it through the world-wide-web, please send a note to |
+ | address@hidden so we can mail you a copy immediately. |
+ +----------------------------------------------------------------------+
+ | Author: |
+ +----------------------------------------------------------------------+
+*/
+
+/* $Id: php_extractor.h,v 1.1 2004/12/23 06:20:22 manfred Exp $ */
+
+#ifndef PHP_EXTRACTOR_H
+#define PHP_EXTRACTOR_H
+
+extern zend_module_entry extractor_module_entry;
+#define phpext_extractor_ptr &extractor_module_entry
+
+#ifdef PHP_WIN32
+#define PHP_EXTRACTOR_API __declspec(dllexport)
+#else
+#define PHP_EXTRACTOR_API
+#endif
+
+#ifdef ZTS
+#include "TSRM.h"
+#endif
+
+PHP_MINIT_FUNCTION(extractor);
+PHP_MSHUTDOWN_FUNCTION(extractor);
+PHP_RINIT_FUNCTION(extractor);
+PHP_RSHUTDOWN_FUNCTION(extractor);
+PHP_MINFO_FUNCTION(extractor);
+
+PHP_FUNCTION(extractor_getkeywords);
+
+/*
+ Declare any global variables you may need between the BEGIN
+ and END macros here:
+
+ZEND_BEGIN_MODULE_GLOBALS(extractor)
+ long global_value;
+ char *global_string;
+ZEND_END_MODULE_GLOBALS(extractor)
+*/
+
+/* In every utility function you add that needs to use variables
+ in php_extractor_globals, call TSRMLS_FETCH(); after declaring other
+ variables used by that function, or better yet, pass in TSRMLS_CC
+ after the last function argument and declare your utility function
+ with TSRMLS_DC after the last declared argument. Always refer to
+ the globals in your function as EXTRACTOR_G(variable). You are
+ encouraged to rename these macros something shorter, see
+ examples in any other php module directory.
+*/
+
+#ifdef ZTS
+#define EXTRACTOR_G(v) TSRMG(extractor_globals_id, zend_extractor_globals *, v)
+#else
+#define EXTRACTOR_G(v) (extractor_globals.v)
+#endif
+
+#endif /* PHP_EXTRACTOR_H */
+
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * End:
+ * vim600: noet sw=4 ts=4 fdm=marker
+ * vim<600: noet sw=4 ts=4
+ */
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r1239 - in Extractor-php: . examples,
grothoff <=