diff options
89 files changed, 97048 insertions, 0 deletions
diff --git a/.libs/imlib.lai b/.libs/imlib.lai new file mode 100644 index 0000000..3fbe07b --- /dev/null +++ b/.libs/imlib.lai @@ -0,0 +1,35 @@ +# imlib.la - a libtool library file +# Generated by ltmain.sh - GNU libtool 1.5 (1.1220 2003/04/05 19:32:58) +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='imlib.so' + +# Names of this library. +library_names='imlib.so imlib.so imlib.so' + +# The name of the static archive. +old_library='' + +# Libraries that this one depends upon. +dependency_libs=' /usr/lib/libt1.la -L/usr/X11R6/lib /usr/X11R6/lib/libImlib2.la /usr/lib/libltdl.la /usr/lib/libttf.la -lm -ldl -lXext -lX11' + +# Version information for imlib. +current=0 +age=0 +revision=0 + +# Is this an already installed library? +installed=yes + +# Should we warn about portability when linking against -modules? +shouldnotlink=yes + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/home/pp/php-imlib-0.4pre2/modules' diff --git a/.libs/imlib.so b/.libs/imlib.so Binary files differnew file mode 100755 index 0000000..03e30fd --- /dev/null +++ b/.libs/imlib.so @@ -0,0 +1,69 @@ +2001-01-10 + + * Version 0.3 released + +2001-01-09 + + * imlib.c, php_imlib.h, docs/class.ImlibImage.php: Matt McClanahan + Added blur/sharpen support + +2001-01-07 + + * imlib.c: Steve Langasek + Implemented pass-by-ref arguments according to current standard. + +2000-12-26 + + * imlib.c, docs/class.ImlibImage.php: Matt McClanahan + Added image quality/compression setting to imlib_save_image and + imlib_dump_image + +2000-12-22 + + * imlib.c: Steve Langasek + include php_config.h explicitly. Module now works with PHP 4.0.4. + +2000-11-17 + + * imlib.c, php_imlib.h, docs/class.ColorRange.php: Matt McClanahan + Added Imlib_Color_Range support. + +2000-11-01 + + * Version 0.2 released + +2000-10-20 + + * docs/class.*.php: Matt McClanahan + Added a set of PHP classes that provide a nice OOP wrapper around + php_imlib's functions. + +2000-10-16 + + * imlib.c, php_imlib.h: Matt McClanahan + Added ImlibPolygon-related functions + +2000-10-15 + + * imlib.c: Matt McClanahan + Added optional param to all drawing routines: an array of (x,y,w,h) which + is used to define a cliprect to be used for that function call + +2000-10-09 + + * imlib.c, php_imlib.h: Matt McClanahan + Added _flip_ and _tile_ functions, which all use _php_imlib_single_arg() + +2000-10-08 + + * imlib.c, php_imlib.h: Matt McClanahan + Added _draw_rectangle, _draw_ellipse, and _draw_line + +2000-10-07 + + * imlib.c, php_imlib.h: Steve Langasek + Move resource type handles to static int's in imlib.c + +2000-10-05 + + * Version 0.1 released @@ -0,0 +1,25 @@ +The Obligatory Credits File +=========================== + + +Contributors +------------ +Matt McClanahan <cardinal@dodds.net> +* Project maintainer + +Steve Langasek <vorlon@dodds.net> +* Feedback, debugging, patches +* Configurable font path, imlib_dump_image, other good stuff. + +Piotr Pawlow <pp@siedziba.pl> +* Filters, color modifiers, type 1 font support + +Thanks to +--------- +The Rasterman (Carsten Haitzler) <raster@rasterman.com> <raster@valinux.com> +Mandrake (Geoff Harrison) <mandrake@mandrake.net> +and all the folks in imlib2's AUTHORS file +* Imlib2 + +Tom Gilbert (gilbrit, giblet, grubby) <gilbertt@linuxbrit.co.uk> +* feh, a great reference for how the heck you make Imlib2 work @@ -0,0 +1,75 @@ +PHP Imlib2 Extension (php_imlib) +================================ + +Dependency Libraries +-------------------- +Before building this extension, Imlib2 will need to be installed somewhere +on the system. Imlib2 itself depends on freetype for rendering text and the +relevant underlying image libraries for the desired image formats. At the +very least Imlib2 needs libpng and libjpeg. Lastly, Imlib2 needs a DB +loader, edb. + +Sources for these libraries can be found at: + +Imlib2, edb: http://download.sourceforge.net/enlightenment/ +freetype: http://freetype.sourceforge.net +libjpeg: http://www.ijg.org +libpng: http://www.libpng.org/pub/png/libpng.html + +You may want to look first on your distribution CD/FTP or http://rpmfind.net +for binary packages. Please note that you will also need -devel packages! + +Standalone Installation +----------------------- +To avoid recompiling PHP itself, build php_imlib as a self-contained +extension (imlib.so) and reference it via the extensions directive +in php.ini. Use of the dl() function is discouraged! + +tar -zxvf php_imlib-0.4pre1.tar.gz +cd imlib +phpize +./configure [--with-imlib=/path/to/Imlib2] [other args] +make +make install + + +Built-in Extension Installation +------------------------------- +To build php_imlib into PHP, extract the extension into the ext/ +subdirectory of the PHP source tree, run buildconf, and recompile. + +tar -C /path/to/php_src/ext -zxvf php_imlib-0.4pre1.tar.gz +cd /path/to/php_src +./buildconf +./configure --with-imlib[=/path/to/Imlib2] [other args] +make +make install + + +Configuration +------------- +The only relevant configuration parameter that php_imlib recognizes is +imlib.font_path, used to define which directories are automatically checked +for fonts. It can be set at a system or directory level, or if it isn't +defined, the default value is /usr/local/share/fonts. + +php.ini example: + +[Imlib] +imlib.font_path = /usr/local/share/fonts:/web/www.domain.com/fonts + +httpd.conf example: + +php_value imlib.font_path /web/www.domain.com/fonts + + +Troubleshooting +--------------- +* phpinfo() does not show any filters + - upgrade Imlib2 to version 1.0.5 or later +* PHP segfaults while trying to use filters + - try to apply this patch: + http://pp.siedziba.pl/PLD/imlib2-filters-bugfix.patch +* TGA loader does not work + - apply this patch: + http://pp.siedziba.pl/PLD/imlib2-loader_tga-bugfix.patch @@ -0,0 +1,75 @@ +-------------------------------------------------------------------- + The PHP License, version 2.02 +Copyright (c) 1999, 2000 The PHP Group. All rights reserved. +-------------------------------------------------------------------- + +Redistribution and use in source and binary forms, with or without +modification, is permitted provided that the following conditions +are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + + 3. The name "PHP" must not be used to endorse or promote products + derived from this software without prior permission from the + PHP Group. This does not apply to add-on libraries or tools + that work in conjunction with PHP. In such a case the PHP + name may be used to indicate that the product supports PHP. + + 4. The PHP Group may publish revised and/or new versions of the + license from time to time. Each version will be given a + distinguishing version number. + Once covered code has been published under a particular version + of the license, you may always continue to use it under the + terms of that version. You may also choose to use such covered + code under the terms of any subsequent version of the license + published by the PHP Group. No one other than the PHP Group has + the right to modify the terms applicable to covered code created + under this License. + + 5. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes PHP, freely available from + http://www.php.net/". + + 6. The software incorporates the Zend Engine, a product of Zend + Technologies, Ltd. ("Zend"). The Zend Engine is licensed to the + PHP Association (pursuant to a grant from Zend that can be + found at http://www.php.net/license/ZendGrant/) for + distribution to you under this license agreement, only as a + part of PHP. In the event that you separate the Zend Engine + (or any portion thereof) from the rest of the software, or + modify the Zend Engine, or any portion thereof, your use of the + separated or modified Zend Engine software shall not be governed + by this license, and instead shall be governed by the license + set forth at http://www.zend.com/license/ZendLicense/. + + + +THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND +ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A +PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PHP +DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------- + +This software consists of voluntary contributions made by many +individuals on behalf of the PHP Group. + +The PHP Group can be contacted via Email at group@php.net. + +For more information on the PHP Group and the PHP project, +please see <http://www.php.net>. diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..c38e990 --- /dev/null +++ b/Makefile @@ -0,0 +1,126 @@ +srcdir = /home/pp/php-imlib-0.4pre2 +builddir = /home/pp/php-imlib-0.4pre2 +top_srcdir = /home/pp/php-imlib-0.4pre2 +top_builddir = /home/pp/php-imlib-0.4pre2 +SHLIB_SUFFIX_NAME = so +IMLIB_SHARED_LIBADD = -lt1 -Wl,-rpath,/usr/X11R6/lib -L/usr/X11R6/lib -Wl,-rpath,/usr/X11R6/lib -L/usr/X11R6/lib -lImlib2 -lttf -lm -ldl -lXext -lXext -lX11 +shared_objects_imlib = php_imlib.lo +PHP_MODULES = $(phplibdir)/imlib.la +all_targets = $(PHP_MODULES) +install_targets = install-modules +prefix = /usr +exec_prefix = $(prefix) +libdir = ${exec_prefix}/lib +prefix = /usr +phplibdir = /home/pp/php-imlib-0.4pre2/modules +PHP_COMPILE = +CC = gcc +CFLAGS = -g -O2 +CFLAGS_CLEAN = $(CFLAGS) +CPP = gcc -E +CPPFLAGS = -DPHP_IMLIB_FILTER_PATH="\"/usr/lib/php/php_imlib_filters\"" -DHAVE_CONFIG_H +CXX = g++ +DEFS = +EXTENSION_DIR = /usr/lib/php +EXTRA_LDFLAGS = +EXTRA_LIBS = +INCLUDES = -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/Zend -I/usr/include/php/TSRM -I/usr/X11R6/include +LEX = +LEX_OUTPUT_ROOT = +LFLAGS = +LDFLAGS = -lm +SHARED_LIBTOOL = +LIBTOOL = $(SHELL) $(top_builddir)/libtool +SHELL = /bin/sh +AWK = awk +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) + +libphp_common.la: $(PHP_GLOBAL_OBJS) + $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -rpath $(phptempdir) -avoid-version $(LDFLAGS) $(PHP_RPATHS) $(PHP_GLOBAL_OBJS) $(EXTRA_LIBS) $(ZEND_EXTRA_LIBS) -o $@ -release $(PHP_VERSION) + +libphp4.la: libphp_common.la $(PHP_SAPI_OBJS) + $(LIBTOOL) --mode=link $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -rpath $(phptempdir) $(EXTRA_LDFLAGS) $(LDFLAGS) $(PHP_RPATHS) libphp_common.la $(PHP_SAPI_OBJS) $(EXTRA_LIBS) $(ZEND_EXTRA_LIBS) -o $@ + +libs/libphp4.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/libphp4.so + +install: $(all_targets) $(install_targets) + +install-sapi: $(OVERALL_TARGET) + @echo "Installing PHP SAPI module: $(PHP_SAPI)" + -@$(LIBTOOL) --silent --mode=install cp libphp_common.la $(phptempdir)/libphp_common.la >/dev/null 2>&1 + -@$(LIBTOOL) --silent --mode=install cp libphp4.la $(phptempdir)/libphp4.la >/dev/null 2>&1 + -@$(mkinstalldirs) $(INSTALL_ROOT)$(bindir) + -@if test ! -r $(phptempdir)/libphp_common.$(SHLIB_SUFFIX_NAME); then \ + for i in 0.0.0 0.0 0; do \ + if test -r $(phptempdir)/libphp_common.$(SHLIB_SUFFIX_NAME).$$i; then \ + $(LN_S) $(phptempdir)/libphp_common.$(SHLIB_SUFFIX_NAME).$$i $(phptempdir)/libphp_common.$(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 && \ + $(INSTALL) modules/* $(INSTALL_ROOT)$(EXTENSION_DIR) >/dev/null 2>&1 || true + +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: + -@if 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 tes |
