mirror of
https://github.com/php/php-src.git
synced 2024-09-22 10:27:25 +00:00
This is better way to configure. PDFlib 3/4 can be compiled with external libs too..
This commit is contained in:
parent
8d030236d6
commit
2b88417b8c
@ -1,2 +1,2 @@
|
|||||||
PDF
|
PDF
|
||||||
Uwe Steinmann
|
Uwe Steinmann, Rainer Schaaf
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
LTLIBRARY_NAME = libpdf.la
|
LTLIBRARY_NAME = libpdf.la
|
||||||
LTLIBRARY_SOURCES = pdf.c
|
LTLIBRARY_SOURCES = pdf.c
|
||||||
LTLIBRARY_SHARED_NAME = libpdf_php.la
|
LTLIBRARY_SHARED_NAME = pdf.la
|
||||||
LTLIBRARY_SHARED_LIBADD = $(PDFLIB_SHARED_LIBBADD)
|
LTLIBRARY_SHARED_LIBADD = $(PDFLIB_SHARED_LIBBADD)
|
||||||
|
|
||||||
include $(top_srcdir)/build/dynlib.mk
|
include $(top_srcdir)/build/dynlib.mk
|
||||||
|
@ -2,162 +2,122 @@ dnl
|
|||||||
dnl $Id$
|
dnl $Id$
|
||||||
dnl
|
dnl
|
||||||
|
|
||||||
PHP_ARG_WITH(pdflib3,whether to include PDFlib3 support,
|
PHP_ARG_WITH(pdflib,for PDFlib support,
|
||||||
[ --with-pdflib3[=DIR] Include PDFlib3 support. DIR is the pdflib
|
[ --with-pdflib[=DIR] Include PDFlib support.])
|
||||||
base install directory, defaults to /usr/local
|
|
||||||
Set DIR to "shared" to build as dl, or "shared,DIR"
|
|
||||||
to build as dl and still specify DIR.])
|
|
||||||
|
|
||||||
if test "$PHP_PDFLIB3" != "no"; then
|
|
||||||
|
|
||||||
PHP_SUBST(PDFLIB3_SHARED_LIBADD)
|
|
||||||
PHP_EXTENSION(pdf, $ext_shared)
|
|
||||||
|
|
||||||
case $PHP_PDFLIB3 in
|
|
||||||
yes)
|
|
||||||
PHP_CHECK_LIBRARY(pdf, PDF_show_boxed, [
|
|
||||||
AC_DEFINE(HAVE_PDFLIB3,1,[ ])
|
|
||||||
],[
|
|
||||||
AC_MSG_ERROR([pdflib3 extension requires at least pdflib 3.x. You may also need libtiff and libjpeg. If so, use the options --with-tiff-dir=<DIR> and --with-jpeg-dir=<DIR>])
|
|
||||||
],[
|
|
||||||
-ltiff -ljpeg -lpng -lz
|
|
||||||
])
|
|
||||||
|
|
||||||
PHP_ADD_LIBRARY(pdf,, PDFLIB3_SHARED_LIBADD)
|
|
||||||
PHP_ADD_LIBRARY(tiff,, PDFLIB3_SHARED_LIBADD)
|
|
||||||
PHP_ADD_LIBRARY(png,, PDFLIB3_SHARED_LIBADD)
|
|
||||||
PHP_ADD_LIBRARY(jpeg,, PDFLIB3_SHARED_LIBADD)
|
|
||||||
PHP_ADD_LIBRARY(z,, PDFLIB3_SHARED_LIBADD)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
test -f $PHP_PDFLIB3/include/pdflib.h && PDFLIB3_INCLUDE=$PHP_PDFLIB3/include
|
|
||||||
if test -n "$PDFLIB3_INCLUDE" ; then
|
|
||||||
|
|
||||||
if test "$PHP_ZLIB_DIR" = "no"; then
|
|
||||||
AC_MSG_ERROR([PDF extension requires ZLIB. Use --with-zlib-dir=<DIR>])
|
|
||||||
fi
|
|
||||||
|
|
||||||
PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR/lib, PDFLIB3_SHARED_LIBADD)
|
|
||||||
|
|
||||||
PHP_ARG_WITH(jpeg-dir, for the location of libjpeg,
|
|
||||||
[ --with-jpeg-dir[=DIR] PDFLIB3: define libjpeg install directory])
|
|
||||||
|
|
||||||
if test "$PHP_JPEG_DIR" != "no"; then
|
|
||||||
PHP_CHECK_LIBRARY(jpeg,jpeg_read_header,
|
|
||||||
[
|
|
||||||
PHP_ADD_LIBRARY_WITH_PATH(jpeg, $PHP_JPEG_DIR/lib, PDFLIB3_SHARED_LIBADD)
|
|
||||||
],[
|
|
||||||
AC_MSG_ERROR([libjpeg not found!])
|
|
||||||
],[
|
|
||||||
-L$PHP_JPEG_DIR/lib
|
|
||||||
])
|
|
||||||
else
|
|
||||||
AC_CHECK_LIB(jpeg,jpeg_read_header,
|
|
||||||
[
|
|
||||||
PHP_ADD_LIBRARY(jpeg,, PDFLIB3_SHARED_LIBADD)
|
|
||||||
],[
|
|
||||||
AC_MSG_RESULT(no, try --with-jpeg-dir=<DIR>)
|
|
||||||
])
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
PHP_ARG_WITH(png-dir, for the location of libpng,
|
|
||||||
[ --with-png-dir[=DIR] PDFLIB3: define libpng install directory])
|
|
||||||
|
|
||||||
if test "$PHP_PNG_DIR" != "no"; then
|
|
||||||
PHP_CHECK_LIBRARY(png,png_create_info_struct,
|
|
||||||
[
|
|
||||||
PHP_ADD_LIBRARY_WITH_PATH(png, $PHP_PNG_DIR/lib, PDFLIB3_SHARED_LIBADD)
|
|
||||||
],[
|
|
||||||
AC_MSG_ERROR([libpng not found!])
|
|
||||||
],[
|
|
||||||
-L$PHP_PNG_DIR/lib
|
|
||||||
])
|
|
||||||
else
|
|
||||||
AC_CHECK_LIB(png,png_create_info_struct,
|
|
||||||
[
|
|
||||||
PHP_ADD_LIBRARY(png,, PDFLIB3_SHARED_LIBADD)
|
|
||||||
],[
|
|
||||||
AC_MSG_RESULT(no, try --with-png-dir=<DIR>)
|
|
||||||
])
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
PHP_ARG_WITH(tiff-dir, for the location of libtiff,
|
|
||||||
[ --with-tiff-dir[=DIR] PDFLIB3: define libtiff install directory])
|
|
||||||
|
|
||||||
if test "$PHP_TIFF_DIR" != "no"; then
|
|
||||||
PHP_CHECK_LIBRARY(tiff,TIFFOpen,
|
|
||||||
[
|
|
||||||
PHP_ADD_LIBRARY_WITH_PATH(tiff, $PHP_TIFF_DIR/lib, PDFLIB3_SHARED_LIBADD)
|
|
||||||
],[
|
|
||||||
AC_MSG_ERROR([libtiff not found!])
|
|
||||||
],[
|
|
||||||
-L$PHP_TIFF_DIR/lib
|
|
||||||
])
|
|
||||||
else
|
|
||||||
AC_CHECK_LIB(tiff,TIFFOpen,
|
|
||||||
[
|
|
||||||
PHP_ADD_LIBRARY(tiff,, PDFLIB3_SHARED_LIBADD)
|
|
||||||
],[
|
|
||||||
AC_MSG_RESULT(no, Try --with-tiff-dir=<DIR>)
|
|
||||||
])
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
PHP_CHECK_LIBRARY(pdf, PDF_show_boxed,
|
|
||||||
[
|
|
||||||
AC_DEFINE(HAVE_PDFLIB3,1,[ ])
|
|
||||||
PHP_ADD_LIBRARY_WITH_PATH(pdf, $PHP_PDFLIB3/lib, PDFLIB3_SHARED_LIBADD)
|
|
||||||
PHP_ADD_INCLUDE($PDFLIB3_INCLUDE)
|
|
||||||
],[
|
|
||||||
AC_MSG_ERROR([pdflib3 extension requires at least pdflib 3.x.])
|
|
||||||
],[
|
|
||||||
-L$PHP_PDFLIB3/lib
|
|
||||||
])
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
|
|
||||||
PHP_ARG_WITH(pdflib,whether to include PDFlib support,
|
|
||||||
[ --with-pdflib[=DIR] Include PDFlib 4.x support. DIR is the PDFlib
|
|
||||||
base install directory, defaults to /usr/local
|
|
||||||
Set DIR to "shared" to build as dl, or "shared,DIR"
|
|
||||||
to build as dl and still specify DIR.])
|
|
||||||
|
|
||||||
if test "$PHP_PDFLIB" != "no"; then
|
if test "$PHP_PDFLIB" != "no"; then
|
||||||
|
|
||||||
PHP_EXTENSION(pdf, $ext_shared)
|
PHP_EXTENSION(pdf, $ext_shared)
|
||||||
PHP_SUBST(PDFLIB_SHARED_LIBADD)
|
PHP_SUBST(PDFLIB_SHARED_LIBADD)
|
||||||
|
|
||||||
case "$PHP_PDFLIB" in
|
dnl #
|
||||||
|
dnl # Optional libraries for PDFlib
|
||||||
|
dnl #
|
||||||
|
|
||||||
|
dnl # libjpeg
|
||||||
|
|
||||||
|
PHP_ARG_WITH(jpeg-dir, for the location of libjpeg,
|
||||||
|
[ --with-jpeg-dir[=DIR] PDFLIB: define libjpeg install directory. (OPTIONAL for PDFlib v4)])
|
||||||
|
|
||||||
|
if test "$PHP_JPEG_DIR" != "no"; then
|
||||||
|
PHP_CHECK_LIBRARY(jpeg,jpeg_read_header,
|
||||||
|
[
|
||||||
|
PHP_ADD_LIBRARY_WITH_PATH(jpeg, $PHP_JPEG_DIR/lib, PDFLIB_SHARED_LIBADD)
|
||||||
|
],[
|
||||||
|
AC_MSG_ERROR([libjpeg not found!])
|
||||||
|
],[
|
||||||
|
-L$PHP_JPEG_DIR/lib
|
||||||
|
])
|
||||||
|
else
|
||||||
|
AC_MSG_WARN([If configure fails, try --with-jpeg-dir=<DIR>])
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl # libpng
|
||||||
|
|
||||||
|
PHP_ARG_WITH(png-dir, for the location of libpng,
|
||||||
|
[ --with-png-dir[=DIR] PDFLIB: define libpng install directory. (OPTIONAL for PDFlib v4)])
|
||||||
|
|
||||||
|
if test "$PHP_PNG_DIR" != "no"; then
|
||||||
|
PHP_CHECK_LIBRARY(png,png_create_info_struct,
|
||||||
|
[
|
||||||
|
PHP_ADD_LIBRARY_WITH_PATH(png, $PHP_PNG_DIR/lib, PDFLIB_SHARED_LIBADD)
|
||||||
|
],[
|
||||||
|
AC_MSG_ERROR([libpng not found!])
|
||||||
|
],[
|
||||||
|
-L$PHP_PNG_DIR/lib
|
||||||
|
])
|
||||||
|
else
|
||||||
|
AC_MSG_WARN([If configure fails, try --with-png-dir=<DIR>])
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl # libtiff
|
||||||
|
|
||||||
|
PHP_ARG_WITH(tiff-dir, for the location of libtiff,
|
||||||
|
[ --with-tiff-dir[=DIR] PDFLIB: define libtiff install directory. (OPTIONAL for PDFlib v4)])
|
||||||
|
|
||||||
|
if test "$PHP_TIFF_DIR" != "no"; then
|
||||||
|
PHP_CHECK_LIBRARY(tiff,TIFFOpen,
|
||||||
|
[
|
||||||
|
PHP_ADD_LIBRARY_WITH_PATH(tiff, $PHP_TIFF_DIR/lib, PDFLIB_SHARED_LIBADD)
|
||||||
|
],[
|
||||||
|
AC_MSG_ERROR([libtiff not found!])
|
||||||
|
],[
|
||||||
|
-L$PHP_TIFF_DIR/lib
|
||||||
|
])
|
||||||
|
else
|
||||||
|
AC_MSG_WARN([If configure fails, try --with-tiff-dir=<DIR>])
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl # zlib
|
||||||
|
|
||||||
|
AC_MSG_CHECKING([for the location of zlib])
|
||||||
|
if test "$PHP_ZLIB_DIR" = "no"; then
|
||||||
|
AC_MSG_RESULT([no. If configure fails, try --with-zlib-dir=<DIR>])
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT([$PHP_ZLIB_DIR])
|
||||||
|
PHP_ADD_LIBRARY_WITH_PATH(z, $PHP_ZLIB_DIR/lib, PDFLIB_SHARED_LIBADD)
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
dnl #
|
||||||
|
dnl # The main PDFlib configure
|
||||||
|
dnl #
|
||||||
|
|
||||||
|
case $PHP_PDFLIB in
|
||||||
yes)
|
yes)
|
||||||
AC_CHECK_LIB(pdf, PDF_open_pdi, [
|
PHP_CHECK_LIBRARY(pdf, PDF_show_boxed, [
|
||||||
AC_DEFINE(HAVE_PDFLIB,1,[ ])
|
AC_DEFINE(HAVE_PDFLIB,1,[ ])
|
||||||
PHP_ADD_LIBRARY(pdf,, PDFLIB_SHARED_LIBADD)
|
PHP_ADD_LIBRARY(pdf,, PDFLIB_SHARED_LIBADD)
|
||||||
],[
|
],[
|
||||||
AC_MSG_ERROR([PDFlib extension requires at least PDFlib 4.x. To build with PDFlib 3.x you should use --with-pdflib3.])
|
AC_MSG_ERROR([
|
||||||
|
PDFlib extension requires at least pdflib 3.x. You may also need libtiff, libjpeg, libpng and libz.
|
||||||
|
Use the options --with-tiff-dir=<DIR>, --with-jpeg-dir=<DIR>, --with-png-dir=<DIR> and --with-zlib-dir=<DIR>
|
||||||
|
See config.log for more information.
|
||||||
|
])
|
||||||
|
],[
|
||||||
|
-ltiff -ljpeg -lpng -lz
|
||||||
])
|
])
|
||||||
;;
|
;;
|
||||||
no)
|
|
||||||
;;
|
|
||||||
*)
|
*)
|
||||||
test -f $PHP_PDFLIB/include/pdflib.h && PDFLIB_INCLUDE="$PHP_PDFLIB/include"
|
if test -f "$PHP_PDFLIB/include/pdflib.h" ; then
|
||||||
if test -n "$PDFLIB_INCLUDE" ; then
|
|
||||||
PHP_CHECK_LIBRARY(pdf, PDF_open_pdi, [
|
PHP_CHECK_LIBRARY(pdf, PDF_show_boxed,
|
||||||
|
[
|
||||||
AC_DEFINE(HAVE_PDFLIB,1,[ ])
|
AC_DEFINE(HAVE_PDFLIB,1,[ ])
|
||||||
PHP_ADD_LIBRARY_WITH_PATH(pdf, $PHP_PDFLIB/lib, PDFLIB_SHARED_LIBADD)
|
PHP_ADD_LIBRARY_WITH_PATH(pdf, $PHP_PDFLIB/lib, PDFLIB_SHARED_LIBADD)
|
||||||
PHP_ADD_INCLUDE($PDFLIB_INCLUDE)
|
PHP_ADD_INCLUDE($PHP_PDFLIB/include)
|
||||||
],[
|
],[
|
||||||
AC_MSG_ERROR([PDFlib extension requires PDFlib 4.x.])
|
AC_MSG_ERROR([
|
||||||
|
PDFlib extension requires at least pdflib 3.x. You may also need libtiff, libjpeg, libpng and libz.
|
||||||
|
Use the options --with-tiff-dir=<DIR>, --with-jpeg-dir=<DIR>, --with-png-dir=<DIR> and --with-zlib-dir=<DIR>
|
||||||
|
See config.log for more information.
|
||||||
|
])
|
||||||
],[
|
],[
|
||||||
-L$PHP_PDFLIB/lib
|
-L$PHP_PDFLIB/lib
|
||||||
])
|
])
|
||||||
else
|
else
|
||||||
AC_MSG_ERROR([pdflib.h not found under $PHP_PDFLIB/include/])
|
AC_MSG_ERROR([pdflib.h not found! Check the path passed to --with-pdflib=<PATH>. PATH should be the install prefix directory.])
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
@ -52,7 +52,7 @@ static int le_gd;
|
|||||||
#endif
|
#endif
|
||||||
/* }}} */
|
/* }}} */
|
||||||
|
|
||||||
#if HAVE_PDFLIB || HAVE_PDFLIB3
|
#if HAVE_PDFLIB
|
||||||
|
|
||||||
#include "php_pdf.h"
|
#include "php_pdf.h"
|
||||||
|
|
||||||
|
@ -21,12 +21,8 @@
|
|||||||
#ifndef PHP_PDF_H
|
#ifndef PHP_PDF_H
|
||||||
#define PHP_PDF_H
|
#define PHP_PDF_H
|
||||||
|
|
||||||
#if HAVE_PDFLIB || HAVE_PDFLIB3
|
#if HAVE_PDFLIB
|
||||||
|
|
||||||
/* with version 2.20 of pdflib PDF_open_mem isn't available unless
|
|
||||||
the following define isn't there.
|
|
||||||
*/
|
|
||||||
#define PDF_OPEN_MEM_SUPPORTED
|
|
||||||
#include <pdflib.h>
|
#include <pdflib.h>
|
||||||
|
|
||||||
extern zend_module_entry pdf_module_entry;
|
extern zend_module_entry pdf_module_entry;
|
||||||
|
Loading…
Reference in New Issue
Block a user