256 lines
7.5 KiB
Diff
256 lines
7.5 KiB
Diff
diff -aurwN a/configure.ac b/configure.ac
|
|
--- a/configure.ac 2014-06-20 14:43:52.744753334 -0400
|
|
+++ b/configure.ac 2014-06-20 14:59:51.263609319 -0400
|
|
@@ -16,9 +16,9 @@
|
|
|
|
# Process this file with autoconf to produce a configure script.
|
|
|
|
-AC_INIT()
|
|
+AC_INIT([super-smack], [1.1])
|
|
AM_CONFIG_HEADER(config.h)
|
|
-AM_INIT_AUTOMAKE(super-smack, 1.1)
|
|
+AM_INIT_AUTOMAKE
|
|
AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
|
|
|
|
# Checks for programs.
|
|
@@ -31,6 +31,14 @@
|
|
AM_PROG_LEX
|
|
AC_PROG_YACC
|
|
|
|
+AH_TEMPLATE([HAVE_CRYPT], [Define if we have a crypt()])
|
|
+AH_TEMPLATE([HAVE_MYSQL], [MySQL Support])
|
|
+AH_TEMPLATE([HAVE_ORACLE], [PostgreSQL Support])
|
|
+AH_TEMPLATE([HAVE_PGSQL], [Oracle Support])
|
|
+AH_TEMPLATE([SMACK_DATADIR], [Sample .smack data files])
|
|
+
|
|
+AC_CONFIG_MACRO_DIRS([m4])
|
|
+
|
|
# get super-smack datadir
|
|
AC_ARG_WITH(datadir,
|
|
[ --with-datadir=DIR Specify default smack datadir],
|
|
diff -aurwN a/m4/crypt.m4 b/m4/crypt.m4
|
|
--- a/m4/crypt.m4 1969-12-31 19:00:00.000000000 -0500
|
|
+++ b/m4/crypt.m4 2014-06-20 15:06:42.289976907 -0400
|
|
@@ -0,0 +1,5 @@
|
|
+AC_DEFUN([AC_FUNC_CRYPT], [
|
|
+ AC_CHECK_LIB(crypt, crypt)
|
|
+ AC_CHECK_FUNC(crypt, AC_DEFINE(HAVE_CRYPT))
|
|
+])
|
|
+
|
|
diff -aruwN a/m4/lex.m4 b/m4/lex.m4
|
|
--- a/m4/lex.m4 1969-12-31 19:00:00.000000000 -0500
|
|
+++ b/m4/lex.m4 2014-06-20 16:51:23.548854098 -0400
|
|
@@ -0,0 +1,6 @@
|
|
+AC_DEFUN([AM_PROG_LEX],
|
|
+[missing_dir=ifelse([$1],,`cd $ac_aux_dir && pwd`,$1)
|
|
+AC_CHECK_PROGS(LEX, flex lex, "$missing_dir/missing flex")
|
|
+AC_PROG_LEX
|
|
+AC_DECL_YYTEXT])
|
|
+
|
|
diff -aurwN a/m4/libz.m4 b/m4/libz.m4
|
|
--- a/m4/libz.m4 1969-12-31 19:00:00.000000000 -0500
|
|
+++ b/m4/libz.m4 2014-06-20 15:06:24.260569878 -0400
|
|
@@ -0,0 +1,4 @@
|
|
+AC_DEFUN([AC_LIB_Z], [
|
|
+ AC_CHECK_LIB(z, compress)
|
|
+])
|
|
+
|
|
diff -aurwN a/m4/mysql.m4 b/m4/mysql.m4
|
|
--- a/m4/mysql.m4 1969-12-31 19:00:00.000000000 -0500
|
|
+++ b/m4/mysql.m4 2014-06-20 15:10:48.291892456 -0400
|
|
@@ -0,0 +1,76 @@
|
|
+#serial 1
|
|
+AC_DEFUN([AC_LIB_MYSQL], [
|
|
+ AC_ARG_WITH(mysql-lib,
|
|
+ [ --with-mysql-lib=DIR Look for MySQL client library in DIR],
|
|
+ mysql_lib=$withval, mysql_lib="")
|
|
+
|
|
+ if test "x$want_mysql" = "xyes"
|
|
+ then
|
|
+ AC_MSG_CHECKING([for libmysqlclient])
|
|
+ AC_MSG_RESULT()
|
|
+
|
|
+ mysql_ok=no
|
|
+
|
|
+ SAVE_LIBS=$LIBS
|
|
+
|
|
+ mysql_lib="$mysql_lib /usr/lib /usr/lib/mysql \
|
|
+ /usr/local/lib /usr/local/lib/mysql \
|
|
+ /usr/local/mysql/lib"
|
|
+
|
|
+ for dir in $mysql_lib; do
|
|
+ if test "x$mysql_found" != "xyes"
|
|
+ then
|
|
+ if test -f "$dir/libmysqlclient.so" ;
|
|
+ then
|
|
+ LIBS="-L$dir $SAVE_LIBS $LIBZ_LIB"
|
|
+ MYSQL_LIB="-L$dir -lmysqlclient $LIBZ_LIB"
|
|
+ AC_SUBST(MYSQL_LIB)
|
|
+ AC_CHECK_LIB(mysqlclient, mysql_real_connect,
|
|
+ mysql_ok=yes, mysql_ok=no)
|
|
+ fi
|
|
+ fi
|
|
+ done
|
|
+
|
|
+ if test "x$mysql_ok" != "xyes"
|
|
+ then
|
|
+ AC_MSG_ERROR([Could not find libmysqlclient in '$mysql_lib'])
|
|
+ fi
|
|
+ fi
|
|
+])
|
|
+
|
|
+AC_DEFUN([AC_HEADER_MYSQL], [
|
|
+ AC_ARG_WITH(mysql-include,
|
|
+ [ --with-mysql-include=DIR
|
|
+ Look for MySQL include files in DIR],
|
|
+ mysql_include=$withval, mysql_include="")
|
|
+
|
|
+ if test "x$want_mysql" = "xyes"
|
|
+ then
|
|
+ AC_MSG_CHECKING([for mysql.h])
|
|
+ AC_MSG_RESULT()
|
|
+
|
|
+ mysql_found=no
|
|
+
|
|
+ mysql_include="$mysql_include /usr/include /usr/include/mysql \
|
|
+ /usr/local/include /usr/local/include/mysql \
|
|
+ /usr/local/mysql/include"
|
|
+
|
|
+ for dir in $mysql_include; do
|
|
+ if test "x$mysql_found" != "xyes"
|
|
+ then
|
|
+ if test -f "$dir/mysql.h"
|
|
+ then
|
|
+ MYSQL_INCLUDE="-I$dir"
|
|
+ AC_SUBST(MYSQL_INCLUDE)
|
|
+ mysql_found=yes
|
|
+ fi
|
|
+ fi
|
|
+ done
|
|
+
|
|
+ if test "x$mysql_found" != "xyes"
|
|
+ then
|
|
+ AC_MSG_ERROR([Could not find mysql.h in '$mysql_include'])
|
|
+ fi
|
|
+ fi
|
|
+])
|
|
+
|
|
diff -aurwN a/m4/oracle.m4 b/m4/oracle.m4
|
|
--- a/m4/oracle.m4 1969-12-31 19:00:00.000000000 -0500
|
|
+++ b/m4/oracle.m4 2014-06-20 15:05:05.543169365 -0400
|
|
@@ -0,0 +1,10 @@
|
|
+AC_DEFUN([AC_LIB_ORACLE], [
|
|
+ ORACLE_LIB=""
|
|
+ AC_SUBST(ORACLE_LIB)
|
|
+])
|
|
+
|
|
+AC_DEFUN([AC_HEADER_ORACLE], [
|
|
+ ORACLE_INCLUDE=""
|
|
+ AC_SUBST(ORACLE_INCLUDE)
|
|
+])
|
|
+
|
|
diff -aurwN a/m4/postgresql.m4 b/m4/postgresql.m4
|
|
--- a/m4/postgresql.m4 1969-12-31 19:00:00.000000000 -0500
|
|
+++ b/m4/postgresql.m4 2014-06-20 15:06:09.311064874 -0400
|
|
@@ -0,0 +1,75 @@
|
|
+AC_DEFUN([AC_LIB_PGSQL], [
|
|
+ AC_ARG_WITH(pgsql-lib,
|
|
+ [ --with-pgsql-lib=DIR Look for PostgreSQL client library in DIR],
|
|
+ pgsql_lib=$withval, pgsql_lib="")
|
|
+
|
|
+ if test "x$want_pgsql" = "xyes"
|
|
+ then
|
|
+ AC_MSG_CHECKING([for libpq])
|
|
+ AC_MSG_RESULT()
|
|
+
|
|
+ pgsql_ok=no
|
|
+
|
|
+ SAVE_LIBS=$LIBS
|
|
+
|
|
+ pgsql_lib="$pgsql_lib /usr/lib /usr/lib/pgsql \
|
|
+ /usr/local/lib /usr/local/lib/pgsql \
|
|
+ /usr/local/pgsql/lib"
|
|
+
|
|
+ for dir in $pgsql_lib; do
|
|
+ if test "x$pgsql_found" != "xyes"
|
|
+ then
|
|
+ if test -f "$dir/libpq.so"
|
|
+ then
|
|
+ LIBS="-L$dir $SAVE_LIBS"
|
|
+ PGSQL_LIB="-L$dir -lpq"
|
|
+ AC_SUBST(PGSQL_LIB)
|
|
+ AC_CHECK_LIB(pq, PQconnectdb,
|
|
+ pgsql_ok=yes, pgsql_ok=no)
|
|
+ fi
|
|
+ fi
|
|
+ done
|
|
+
|
|
+ if test "x$pgsql_ok" != "xyes"
|
|
+ then
|
|
+ AC_MSG_ERROR([Could not find libpq in '$pgsql_lib'])
|
|
+ fi
|
|
+ fi
|
|
+])
|
|
+
|
|
+AC_DEFUN([AC_HEADER_PGSQL], [
|
|
+ AC_ARG_WITH(pgsql-include,
|
|
+ [ --with-pgsql-include=DIR
|
|
+ Look for PostgreSQL include files in DIR],
|
|
+ pgsql_include=$withval, pgsql_include="")
|
|
+
|
|
+ if test "x$want_pgsql" = "xyes"
|
|
+ then
|
|
+ AC_MSG_CHECKING([for libpq-fe.h])
|
|
+ AC_MSG_RESULT()
|
|
+
|
|
+ pgsql_found=no
|
|
+
|
|
+ pgsql_include="$pgsql_include /usr/include /usr/include/pgsql \
|
|
+ /usr/local/include /usr/local/include/pgsql \
|
|
+ /usr/local/pgsql/include"
|
|
+
|
|
+ for dir in $pgsql_include; do
|
|
+ if test "x$pgsql_found" != "xyes"
|
|
+ then
|
|
+ if test -f "$dir/libpq-fe.h"
|
|
+ then
|
|
+ PGSQL_INCLUDE="-I$dir"
|
|
+ AC_SUBST(PGSQL_INCLUDE)
|
|
+ pgsql_found=yes
|
|
+ fi
|
|
+ fi
|
|
+ done
|
|
+
|
|
+ if test "x$pgsql_found" != "xyes"
|
|
+ then
|
|
+ AC_MSG_ERROR([Could not find libpq-fe.h in '$pgsql_include'])
|
|
+ fi
|
|
+ fi
|
|
+])
|
|
+
|
|
diff -aurwN a/src/Makefile.am b/src/Makefile.am
|
|
--- a/src/Makefile.am 2014-06-20 14:37:35.266956252 -0400
|
|
+++ b/src/Makefile.am 2014-06-20 15:12:40.278227315 -0400
|
|
@@ -16,7 +16,8 @@
|
|
|
|
# Process this file with automake to create Makefile.in
|
|
|
|
-INCLUDES = @MYSQL_INCLUDE@ @PGSQL_INCLUDE@ @ORACLE_INCLUDE@
|
|
+AM_CPPFLAGS = @MYSQL_INCLUDE@ @PGSQL_INCLUDE@ @ORACLE_INCLUDE@
|
|
+BUILT_SOURCES = super-smack-yacc.hh
|
|
|
|
noinst_PROGRAMS=test-dictionary test-client test_tcp_client
|
|
bin_PROGRAMS=super-smack super-smack-gen-data
|
|
diff -aurN a/src/super-smack-lex.ll b/src/super-smack-lex.ll
|
|
--- a/src/super-smack-lex.ll 2003-05-14 21:08:34.000000000 -0400
|
|
+++ b/src/super-smack-lex.ll 2014-06-24 08:56:05.970614176 -0400
|
|
@@ -6,7 +6,7 @@
|
|
#include <ctype.h>
|
|
#include "query.h"
|
|
#include "parse.h"
|
|
- #include "super-smack-yacc.h"
|
|
+ #include "super-smack-yacc.hh"
|
|
|
|
static string q_str = "";
|
|
%}
|
|
|