]> granicus.if.org Git - php/commitdiff
Update build files
authorWez Furlong <wez@php.net>
Thu, 17 Apr 2003 11:57:29 +0000 (11:57 +0000)
committerWez Furlong <wez@php.net>
Thu, 17 Apr 2003 11:57:29 +0000 (11:57 +0000)
ext/sqlite/Makefile.frag [new file with mode: 0644]
ext/sqlite/config.m4
ext/sqlite/package.xml

diff --git a/ext/sqlite/Makefile.frag b/ext/sqlite/Makefile.frag
new file mode 100644 (file)
index 0000000..50859e0
--- /dev/null
@@ -0,0 +1,31 @@
+
+LEMON="@LEMON@"
+
+# sqlite has some generated source files; this specifies how to
+# build them
+
+$(srcdir)/libsqlite/src/sqlite.h:      $(srcdir)/libsqlite/src/sqlite.h.in $(srcdir)/libsqlite/VERSION
+       $(SED) -e s/--VERS--/`cat $(srcdir)/libsqlite/VERSION`/ \
+            -e s/--ENCODING--/$(SQLITE_ENCODING)/ \
+                 $(srcdir)/libsqlite/src/sqlite.h.in >$(srcdir)/libsqlite/src/sqlite.h
+
+# We avoid building these last three by bundling the generated versions
+# in our release packages
+
+$(srcdir)/libsqlite/src/opcodes.c: $(srcdir)/libsqlite/src/vdbe.c
+       echo '/* Automatically generated file.  Do not edit */' >$@
+       echo 'char *sqliteOpcodeNames[] = { "???", ' >>$@
+       grep '^case OP_' $< | \
+         sed -e 's/^.*OP_/  "/' -e 's/:.*$$/", /' >>$@
+       echo '};' >>$@
+       
+$(srcdir)/libsqlite/src/opcodes.h: $(srcdir)/libsqlite/src/vdbe.c
+       echo '/* Automatically generated file.  Do not edit */' >$@
+       grep '^case OP_' $< | \
+         sed -e 's/://' | \
+         awk '{printf "#define %-30s %3d\n", $$2, ++cnt}' >>$@
+
+$(srcdir)/libsqlite/src/parse.c:       $(srcdir)/libsqlite/src/parse.y
+       $(LEMON) $(srcdir)/libsqlite/src/parse.y
+
+
index 05bb43d7da8df26f35f41c15bf759a35b1955c85..74c742ad85ea30d14218dc75454cbfda604a08cb 100644 (file)
@@ -5,41 +5,76 @@ PHP_ARG_WITH(sqlite, for sqlite support,
 [  --with-sqlite             Include sqlite support])
 
 if test "$PHP_SQLITE" != "no"; then
-  SEARCH_PATH="/usr/local /usr"
-  SEARCH_FOR="/include/sqlite.h"
-  if test -r $PHP_SQLITE/; then # path given as parameter
-     SQLITE_DIR=$PHP_SQLITE
-  else # search default path list
-    AC_MSG_CHECKING([for sqlite files in default path])
-    for i in $SEARCH_PATH ; do
-      if test -r $i/$SEARCH_FOR; then
-        SQLITE_DIR=$i
-        AC_MSG_RESULT(found in $i)
-      fi
-    done
-  fi
+
+  if test "$PHP_SQLITE" != "yes"; then
+       SEARCH_PATH="/usr/local /usr"
+       SEARCH_FOR="/include/sqlite.h"
+       if test -r $PHP_SQLITE/; then # path given as parameter
+               SQLITE_DIR=$PHP_SQLITE
+       else # search default path list
+               AC_MSG_CHECKING([for sqlite files in default path])
+               for i in $SEARCH_PATH ; do
+               if test -r $i/$SEARCH_FOR; then
+                       SQLITE_DIR=$i
+                       AC_MSG_RESULT(found in $i)
+               fi
+               done
+       fi
   
-  if test -z "$SQLITE_DIR"; then
-    AC_MSG_RESULT([not found])
-    AC_MSG_ERROR([Please reinstall the sqlite distribution])
-  fi
+       if test -z "$SQLITE_DIR"; then
+               AC_MSG_RESULT([not found])
+               AC_MSG_ERROR([Please reinstall the sqlite distribution from http://www.sqlite.org])
+       fi
 
-  PHP_ADD_INCLUDE($SQLITE_DIR/include)
+       PHP_ADD_INCLUDE($SQLITE_DIR/include)
 
-  LIBNAME=sqlite
-  LIBSYMBOL=sqlite_open
+       LIBNAME=sqlite
+       LIBSYMBOL=sqlite_open
 
-  PHP_CHECK_LIBRARY($LIBNAME,$LIBSYMBOL,
-  [
-    PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $SQLITE_DIR/lib, SQLITE_SHARED_LIBADD)
-    AC_DEFINE(HAVE_SQLITELIB,1,[ ])
-  ],[
-    AC_MSG_ERROR([wrong sqlite lib version or lib not found])
-  ],[
-    -L$SQLITE_DIR/lib -lm -ldl
-  ])
+       PHP_CHECK_LIBRARY($LIBNAME,$LIBSYMBOL,
+       [
+               PHP_ADD_LIBRARY_WITH_PATH($LIBNAME, $SQLITE_DIR/lib, SQLITE_SHARED_LIBADD)
+               AC_DEFINE(HAVE_SQLITELIB,1,[ ])
+       ],[
+               AC_MSG_ERROR([wrong sqlite lib version or lib not found])
+       ],[
+               -L$SQLITE_DIR/lib -lm -ldl
+       ])
  
-  PHP_SUBST(SQLITE_SHARED_LIBADD)
+       PHP_SUBST(SQLITE_SHARED_LIBADD)
+       PHP_NEW_EXTENSION(sqlite, sqlite.c, $ext_shared)
+  else
+       # use bundled library
+       sources="libsqlite/src/opcodes.c
+               libsqlite/src/parse.c libsqlite/src/encode.c \
+               libsqlite/src/auth.c libsqlite/src/btree.c libsqlite/src/build.c \
+               libsqlite/src/delete.c libsqlite/src/expr.c libsqlite/src/func.c \
+               libsqlite/src/hash.c libsqlite/src/insert.c libsqlite/src/main.c \
+               libsqlite/src/os.c libsqlite/src/pager.c \
+               libsqlite/src/printf.c libsqlite/src/random.c \
+               libsqlite/src/select.c libsqlite/src/table.c libsqlite/src/tokenize.c \
+               libsqlite/src/update.c libsqlite/src/util.c libsqlite/src/vdbe.c \
+               libsqlite/src/where.c libsqlite/src/trigger.c"
+       
+       PHP_NEW_EXTENSION(sqlite, sqlite.c $sources, $ext_shared,,-I@ext_srcdir@/libsqlite/src)
+       PHP_ADD_BUILD_DIR($ext_builddir/libsqlite)
+       PHP_ADD_BUILD_DIR($ext_builddir/libsqlite/src)
+       AC_CHECK_SIZEOF(char *,4)
+       AC_DEFINE(SQLITE_PTR_SZ, SIZEOF_CHAR_P, [Size of a pointer])
+       AC_DEFINE(OS_UNIX, 1, [if this is unix])
+       AC_DEFINE(OS_WIN, 0, [if this is windows])
+       AC_CHECK_FUNCS(usleep)
+       dnl use latin 1 for now; the utf-8 handling in funcs.c uses assert(),
+       dnl which is a bit silly and something we want to avoid
+       SQLITE_ENCODING="iso8859"
+       dnl SQLITE_ENCODING="UTF-8"
+       dnl AC_DEFINE(SQLITE_UTF8,1,[if SQLite should use utf-8 encoding])
+       AC_SUBST(SQLITE_ENCODING)
+
+       AC_PATH_PROG(LEMON,lemon,no)
+       AC_SUBST(LEMON)
+       
+       PHP_ADD_MAKEFILE_FRAGMENT
+  fi
 
-  PHP_NEW_EXTENSION(sqlite, sqlite.c, $ext_shared)
 fi
index d9516dd780fcb12798a7a5a7dd5f9a4f2f1948a2..db9b456fc0f81b42886f247b4b070fe413ca5b82 100644 (file)
@@ -20,8 +20,8 @@
   <license>PHP</license>
   <release>
     <state>beta</state>
-    <version>0.5</version>
-    <date>2003-04-17</date>
+    <version>0.6</version>
+    <date>2003-04-18</date>
        <notes>
                Initial release.
                Should be quite stable.
       <file role="src" name="config.m4"/>
       <file role="src" name="sqlite.c"/>
       <file role="src" name="php_sqlite.h"/>
+         <file role="src" name="Makefile.frag"/>
       <file role="doc" name="CREDITS"/>
       <file role="doc" name="README"/>
       <file role="doc" name="TODO"/>
       <file role="doc" name="sqlite.php"/>
       <file role="test" name="tests/001.phpt"/>
+
+         <dir name="libsqlite">
+               <file role="doc" name="README"/>
+               <file role="src" name="VERSION"/>
+
+               <dir name="src">
+                       <file role="src" name="parse.c"/>
+                       <file role="src" name="parse.y"/>
+                       <file role="src" name="auth.c"/>
+                       <file role="src" name="btree.c"/>
+                       <file role="src" name="encode.c"/>
+                       <file role="src" name="build.c"/>
+                       <file role="src" name="delete.c"/>
+                       <file role="src" name="expr.c"/>
+                       <file role="src" name="func.c"/>
+                       <file role="src" name="hash.c"/>
+                       <file role="src" name="insert.c"/>
+                       <file role="src" name="main.c"/>
+                       <file role="src" name="os.c"/>
+                       <file role="src" name="pager.c"/>
+                       <file role="src" name="printf.c"/>
+                       <file role="src" name="random.c"/>
+                       <file role="src" name="select.c"/>
+                       <file role="src" name="table.c"/>
+                       <file role="src" name="tokenize.c"/>
+                       <file role="src" name="update.c"/>
+                       <file role="src" name="util.c"/>
+                       <file role="src" name="vdbe.c"/>
+                       <file role="src" name="where.c"/>
+                       <file role="src" name="trigger.c"/>
+
+                       <file role="src" name="opcodes.h"/>
+                       <file role="src" name="btree.h"/>
+                       <file role="src" name="hash.h"/>
+                       <file role="src" name="os.h"/>
+                       <file role="src" name="pager.h"/>
+                       <file role="src" name="parse.h"/>
+                       <file role="src" name="sqliteInt.h"/>
+                       <file role="src" name="vdbe.h"/>
+               </dir>
+               
+         </dir>
     </filelist>
   </release>
 </package>