diff options
author | Frank Schoenheit [fs] <frank.schoenheit@sun.com> | 2009-12-11 09:51:25 +0100 |
---|---|---|
committer | Frank Schoenheit [fs] <frank.schoenheit@sun.com> | 2009-12-11 09:51:25 +0100 |
commit | 8cf90fe814c1ac2673d9800cf2512bc98d672292 (patch) | |
tree | 7b992a7d64a7756f5b468775dc3df69c6657f3ef | |
parent | cc594ee25eb26a01a52b3906fd769fae005cd57e (diff) |
mysqlconnector: initial import from CWS mysqlnative
-rwxr-xr-x | configure | 509 | ||||
-rw-r--r-- | configure.in | 139 | ||||
-rw-r--r-- | set_soenv.in | 7 | ||||
-rw-r--r-- | solenv/bin/transform_description.pl | 138 | ||||
-rw-r--r-- | solenv/config/sdev300.ini | 9 | ||||
-rw-r--r-- | solenv/inc/extension_post.mk | 18 | ||||
-rw-r--r-- | solenv/inc/unxsoli4.mk | 1 | ||||
-rw-r--r-- | solenv/inc/unxsols4.mk | 1 |
8 files changed, 813 insertions, 9 deletions
diff --git a/configure b/configure index a386d0c426a8..05326766f5e3 100755 --- a/configure +++ b/configure @@ -309,7 +309,7 @@ ac_includes_default="\ # include <unistd.h> #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS EGREP AWK SED LOCAL_SOLENV _solenv UPD SOURCEVERSION build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os GNUTAR OSVERSION PTHREAD_CFLAGS PTHREAD_LIBS ENABLE_CRASHDUMP VC_STANDARD ENABLE_WERROR ENABLE_DEBUG PRODUCT PROFULLSWITCH PROEXT ENABLE_SYMBOLS DISABLE_STRIP ENABLE_CUPS ENABLE_FONTCONFIG WITH_BINFILTER ENABLE_DIRECTX DISABLE_ACTIVEX DISABLE_ATL ENABLE_RPATH WITH_MYSPELL_DICTS SYSTEM_DICTS DICT_SYSTEM_DIR HYPH_SYSTEM_DIR THES_SYSTEM_DIR USE_SHELL WITH_MINGWIN SHELLPATH GCC_HOME CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT COMPATH GCCVER HAVE_LD_BSYMBOLIC_FUNCTIONS ENABLE_PCH NO_HIDS GNUMAKE _cc HAVE_LD_HASH_STYLE PERL MSPDB_PATH COMEX USE_MINGW MIDL_PATH CSC_PATH FRAME_HOME CPP CXX CXXFLAGS ac_ct_CXX CXXCPP SIZEOF_LONG WORDS_BIGENDIAN LFS_CFLAGS ENABLE_VBA VBA_EXTENSION PAM NEW_SHADOW_API PAM_LINK CRYPT_LINK GXX_INCLUDE_PATH MINGW_LIB_INCLUDE_PATH MINGW_BACKWARD_INCLUDE_PATH MINGW_CLIB_DIR MINGW_SHARED_GCCLIB MINGW_GCCLIB_EH MINGW_SHARED_GXXLIB MINGW_GCCDLL MINGW_GXXDLL EXCEPTIONS STLPORT4 STLPORT_VER USE_SYSTEM_STL USE_CCACHE CCACHE HAVE_GCC_VISIBILITY_FEATURE ALLOC BUILD_VER_STRING SOLAR_JAVA JAVAINTERPRETER JAVACOMPILER JAVACISGCJ JAVADOC AWTLIB JAVAAOTCOMPILER JAVA_HOME JDK JAVAFLAGS DMAKE BUILD_DMAKE EPM DPKG PKGMK BUILD_EPM PKGFORMAT RPM GPERF MINGWCXX ac_ct_MINGWCXX MINGWSTRIP ac_ct_MINGWSTRIP BUILD_UNOWINREG BUILD_QADEVOOO SYSTEM_STDLIBS SYSTEM_ZLIB SYSTEM_JPEG SYSTEM_EXPAT PKG_CONFIG LIBWPD_CFLAGS LIBWPD_LIBS SYSTEM_LIBWPD FREETYPE_CFLAGS FREETYPE_LIBS USE_FT_EMBOLDEN LIBXSLT_CFLAGS LIBXSLT_LIBS XSLTPROC SYSTEM_LIBXSLT LIBXML_CFLAGS LIBXML_LIBS SYSTEM_LIBXML PYTHON PYTHON_VERSION PYTHON_PREFIX PYTHON_EXEC_PREFIX PYTHON_PLATFORM pythondir pkgpythondir pyexecdir pkgpyexecdir BZIP2 SYSTEM_PYTHON PYTHON_CFLAGS PYTHON_LIBS HOME SYSTEM_DB DB_VERSION DB_INCLUDES DB_JAR SYSTEM_LUCENE LUCENE_CORE_JAR LUCENE_ANALYZERS_JAR SYSTEM_HSQLDB HSQLDB_JAR SYSTEM_BSH BSH_JAR SERIALIZER_JAR SYSTEM_SAXON SAXON_JAR CURLCONFIG SYSTEM_CURL CURL_CFLAGS CURL_LIBS SYSTEM_BOOST SYSTEM_VIGRA SYSTEM_ODBC_HEADERS WITH_MOZILLA WITH_LDAP WITH_OPENLDAP MOZ_NSS_CFLAGS MOZ_NSS_LIBS NSS_LIB MOZ_NSPR_CFLAGS MOZ_NSPR_LIBS NSPR_LIB MOZILLAXPCOM_CFLAGS MOZILLAXPCOM_LIBS MOZILLA_VERSION MOZILLA_TOOLKIT MOZGTK2_CFLAGS MOZGTK2_LIBS MOZLIBREQ_CFLAGS MOZLIBREQ_LIBS BUILD_MOZAB ENABLE_NSS_MODULE MOZILLABUILD SYSTEM_MOZILLA MOZ_FLAVOUR MOZ_INC MOZ_LIB MOZ_LIB_XPCOM MOZ_LDAP_CFLAGS SYSTEM_SANE_HEADER SYSTEM_GENBRK SYSTEM_GENCCODE SYSTEM_GENCMN SYSTEM_ICU GRAPHITE_CFLAGS GRAPHITE_LIBS ENABLE_GRAPHITE SYSTEM_GRAPHITE X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS XINC XLIB XAU_LIBS DISABLE_XAW SYSTEM_XRENDER_HEADERS XRENDER_LINK XRANDR_CFLAGS XRANDR_LIBS XRANDR_DLOPEN ENABLE_RANDR DISABLE_NEON NEON_CFLAGS NEON_LIBS SYSTEM_NEON NEON_VERSION OPENSSL_CFLAGS OPENSSL_LIBS SYSTEM_OPENSSL ENABLE_AGG AGG_CFLAGS AGG_LIBS SYSTEM_AGG AGG_VERSION REDLAND_CFLAGS REDLAND_LIBS SYSTEM_REDLAND HUNSPELL_CFLAGS HUNSPELL_LIBS SYSTEM_HUNSPELL SYSTEM_HYPH HYPHEN_LIB SYSTEM_MYTHES SYSTEM_LPSOLVE PSDK_HOME WINDOWS_VISTA_PSDK DIRECTXSDK_HOME DIRECTXSDK_LIB NSIS_PATH BISON FLEX PATCH GNUCP GNUPATCH CYGWIN_PATH ML_EXE ASM_HOME ZIP UNZIP ZIP_HOME ENABLE_GTK ENABLE_KDE ENABLE_KDE4 GCONF_CFLAGS GCONF_LIBS ENABLE_GCONF GNOMEVFS_CFLAGS GNOMEVFS_LIBS ENABLE_GNOMEVFS GTK_CFLAGS GTK_LIBS DBUS_CFLAGS DBUS_LIBS GIO_CFLAGS GIO_LIBS ENABLE_GIO ENABLE_DBUS ENABLE_SYSTRAY_GTK CAIRO_CFLAGS CAIRO_LIBS ENABLE_CAIRO BUILD_PIXMAN SYSTEM_CAIRO ENABLE_OPENGL ENABLE_MINIMIZER ENABLE_PRESENTER_SCREEN POPPLER_CFLAGS POPPLER_LIBS ENABLE_PDFIMPORT SYSTEM_POPPLER ENABLE_MEDIAWIKI SYSTEM_SERVLETAPI SERVLETAPI_JAR ENABLE_REPORTBUILDER SYSTEM_JFREEREPORT SAC_JAR LIBXML_JAR FLUTE_JAR JFREEREPORT_JAR LIBBASE_JAR LIBLAYOUT_JAR LIBLOADER_JAR LIBFORMULA_JAR LIBREPOSITORY_JAR LIBFONTS_JAR LIBSERIALIZER_JAR SYSTEM_APACHE_COMMONS COMMONS_CODEC_JAR COMMONS_LANG_JAR COMMONS_HTTPCLIENT_JAR COMMONS_LOGGING_JAR MOC KDE_CFLAGS KDE_LIBS MOC4 KDE4_CFLAGS KDE4_LIBS ENABLE_LOCKDOWN GOBJECT_CFLAGS GOBJECT_LIBS ENABLE_EVOAB2 ENABLE_KAB WITH_FONTOOO SYSTEM_MSPACK WITH_FONTS WITHOUT_PPDS WITHOUT_AFMS SCPDEFS USE_XINERAMA XINERAMA_LINK ANT ANT_HOME ANT_LIB WITH_LANG WITH_POOR_HELP_LOCALIZATIONS WITH_DICT INTRO_BITMAPS ABOUT_BITMAPS OOO_VENDOR UNIXWRAPPERNAME ENABLE_STATIC_GTK ENABLE_LAYOUT VERBOSE LOCAL_SOLVER BUILD_TYPE LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS EGREP AWK SED LOCAL_SOLENV _solenv UPD SOURCEVERSION build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os GNUTAR OSVERSION PTHREAD_CFLAGS PTHREAD_LIBS ENABLE_CRASHDUMP VC_STANDARD ENABLE_WERROR ENABLE_DEBUG PRODUCT PROFULLSWITCH PROEXT ENABLE_SYMBOLS DISABLE_STRIP ENABLE_CUPS ENABLE_FONTCONFIG WITH_BINFILTER ENABLE_DIRECTX DISABLE_ACTIVEX DISABLE_ATL ENABLE_RPATH WITH_MYSPELL_DICTS SYSTEM_DICTS DICT_SYSTEM_DIR HYPH_SYSTEM_DIR THES_SYSTEM_DIR USE_SHELL WITH_MINGWIN SHELLPATH GCC_HOME CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT COMPATH GCCVER HAVE_LD_BSYMBOLIC_FUNCTIONS ENABLE_PCH NO_HIDS GNUMAKE _cc HAVE_LD_HASH_STYLE PERL MSPDB_PATH COMEX USE_MINGW MIDL_PATH CSC_PATH FRAME_HOME CPP CXX CXXFLAGS ac_ct_CXX CXXCPP SIZEOF_LONG WORDS_BIGENDIAN LFS_CFLAGS ENABLE_VBA VBA_EXTENSION PAM NEW_SHADOW_API PAM_LINK CRYPT_LINK GXX_INCLUDE_PATH MINGW_LIB_INCLUDE_PATH MINGW_BACKWARD_INCLUDE_PATH MINGW_CLIB_DIR MINGW_SHARED_GCCLIB MINGW_GCCLIB_EH MINGW_SHARED_GXXLIB MINGW_GCCDLL MINGW_GXXDLL EXCEPTIONS STLPORT4 STLPORT_VER USE_SYSTEM_STL USE_CCACHE CCACHE HAVE_GCC_VISIBILITY_FEATURE ALLOC BUILD_VER_STRING SOLAR_JAVA JAVAINTERPRETER JAVACOMPILER JAVACISGCJ JAVADOC AWTLIB JAVAAOTCOMPILER JAVA_HOME JDK JAVAFLAGS DMAKE BUILD_DMAKE EPM DPKG PKGMK BUILD_EPM PKGFORMAT RPM GPERF MINGWCXX ac_ct_MINGWCXX MINGWSTRIP ac_ct_MINGWSTRIP BUILD_UNOWINREG BUILD_QADEVOOO SYSTEM_STDLIBS SYSTEM_ZLIB SYSTEM_JPEG SYSTEM_EXPAT PKG_CONFIG LIBWPD_CFLAGS LIBWPD_LIBS SYSTEM_LIBWPD FREETYPE_CFLAGS FREETYPE_LIBS USE_FT_EMBOLDEN LIBXSLT_CFLAGS LIBXSLT_LIBS XSLTPROC SYSTEM_LIBXSLT LIBXML_CFLAGS LIBXML_LIBS SYSTEM_LIBXML PYTHON PYTHON_VERSION PYTHON_PREFIX PYTHON_EXEC_PREFIX PYTHON_PLATFORM pythondir pkgpythondir pyexecdir pkgpyexecdir BZIP2 SYSTEM_PYTHON PYTHON_CFLAGS PYTHON_LIBS HOME SYSTEM_DB DB_VERSION DB_INCLUDES DB_JAR SYSTEM_LUCENE LUCENE_CORE_JAR LUCENE_ANALYZERS_JAR ENABLE_MYSQLC MYSQLCONFIG SYSTEM_MYSQL MYSQL_INC MYSQL_LIB MYSQL_DEFINES LIBMYSQL_PATH SYSTEM_MYSQL_CPPCONN SYSTEM_HSQLDB HSQLDB_JAR SYSTEM_BSH BSH_JAR SERIALIZER_JAR SYSTEM_SAXON SAXON_JAR CURLCONFIG SYSTEM_CURL CURL_CFLAGS CURL_LIBS SYSTEM_BOOST SYSTEM_VIGRA SYSTEM_ODBC_HEADERS WITH_MOZILLA WITH_LDAP WITH_OPENLDAP MOZ_NSS_CFLAGS MOZ_NSS_LIBS NSS_LIB MOZ_NSPR_CFLAGS MOZ_NSPR_LIBS NSPR_LIB MOZILLAXPCOM_CFLAGS MOZILLAXPCOM_LIBS MOZILLA_VERSION MOZILLA_TOOLKIT MOZGTK2_CFLAGS MOZGTK2_LIBS MOZLIBREQ_CFLAGS MOZLIBREQ_LIBS BUILD_MOZAB ENABLE_NSS_MODULE MOZILLABUILD SYSTEM_MOZILLA MOZ_FLAVOUR MOZ_INC MOZ_LIB MOZ_LIB_XPCOM MOZ_LDAP_CFLAGS SYSTEM_SANE_HEADER SYSTEM_GENBRK SYSTEM_GENCCODE SYSTEM_GENCMN SYSTEM_ICU GRAPHITE_CFLAGS GRAPHITE_LIBS ENABLE_GRAPHITE SYSTEM_GRAPHITE X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS XINC XLIB XAU_LIBS DISABLE_XAW SYSTEM_XRENDER_HEADERS XRENDER_LINK XRANDR_CFLAGS XRANDR_LIBS XRANDR_DLOPEN ENABLE_RANDR DISABLE_NEON NEON_CFLAGS NEON_LIBS SYSTEM_NEON NEON_VERSION OPENSSL_CFLAGS OPENSSL_LIBS SYSTEM_OPENSSL ENABLE_AGG AGG_CFLAGS AGG_LIBS SYSTEM_AGG AGG_VERSION REDLAND_CFLAGS REDLAND_LIBS SYSTEM_REDLAND HUNSPELL_CFLAGS HUNSPELL_LIBS SYSTEM_HUNSPELL SYSTEM_HYPH HYPHEN_LIB SYSTEM_MYTHES SYSTEM_LPSOLVE PSDK_HOME WINDOWS_VISTA_PSDK DIRECTXSDK_HOME DIRECTXSDK_LIB NSIS_PATH BISON FLEX PATCH GNUCP GNUPATCH CYGWIN_PATH ML_EXE ASM_HOME ZIP UNZIP ZIP_HOME ENABLE_GTK ENABLE_KDE ENABLE_KDE4 GCONF_CFLAGS GCONF_LIBS ENABLE_GCONF GNOMEVFS_CFLAGS GNOMEVFS_LIBS ENABLE_GNOMEVFS GTK_CFLAGS GTK_LIBS DBUS_CFLAGS DBUS_LIBS GIO_CFLAGS GIO_LIBS ENABLE_GIO ENABLE_DBUS ENABLE_SYSTRAY_GTK CAIRO_CFLAGS CAIRO_LIBS ENABLE_CAIRO BUILD_PIXMAN SYSTEM_CAIRO ENABLE_OPENGL ENABLE_MINIMIZER ENABLE_PRESENTER_SCREEN POPPLER_CFLAGS POPPLER_LIBS ENABLE_PDFIMPORT SYSTEM_POPPLER ENABLE_MEDIAWIKI SYSTEM_SERVLETAPI SERVLETAPI_JAR ENABLE_REPORTBUILDER SYSTEM_JFREEREPORT SAC_JAR LIBXML_JAR FLUTE_JAR JFREEREPORT_JAR LIBBASE_JAR LIBLAYOUT_JAR LIBLOADER_JAR LIBFORMULA_JAR LIBREPOSITORY_JAR LIBFONTS_JAR LIBSERIALIZER_JAR SYSTEM_APACHE_COMMONS COMMONS_CODEC_JAR COMMONS_LANG_JAR COMMONS_HTTPCLIENT_JAR COMMONS_LOGGING_JAR MOC KDE_CFLAGS KDE_LIBS MOC4 KDE4_CFLAGS KDE4_LIBS ENABLE_LOCKDOWN GOBJECT_CFLAGS GOBJECT_LIBS ENABLE_EVOAB2 ENABLE_KAB WITH_FONTOOO SYSTEM_MSPACK WITH_FONTS WITHOUT_PPDS WITHOUT_AFMS SCPDEFS USE_XINERAMA XINERAMA_LINK ANT ANT_HOME ANT_LIB WITH_LANG WITH_POOR_HELP_LOCALIZATIONS WITH_DICT INTRO_BITMAPS ABOUT_BITMAPS OOO_VENDOR UNIXWRAPPERNAME ENABLE_STATIC_GTK ENABLE_LAYOUT VERBOSE LOCAL_SOLVER BUILD_TYPE LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -1011,6 +1011,10 @@ Optional Features: --disable-randr-link disable linking with libXrandr, instead dynamically open it at runtime + --enable-mysql-connector enables the build of the MySQL Connector/OOo extension. + This requires access to the MySQL Connector/C (aka libmysql) to be given, too, with + either the --with-system-mysql or --with-libmysql-path option. + --enable-minimizer enables the build of the Presentation Minimizer extension --enable-presenter-console enables the build of the Presenter Console extension @@ -1177,6 +1181,15 @@ Optional Packages: --with-lucene-core-jar=JARFILE Specify path to jarfile manually --with-lucene-analyzers-jar=JARFILE Specify path to jarfile manually + --with-system-mysql Use MySQL libraries already on system, for building the MySQL Connector/OOo extension. + Requires MYSQLCONFIG to point to the mysql_config executable. + + --with-libmysql-path Use Connector/C (libmysql) installation for building the MySQL Connector/OOo extension. + + Usage: --with-libmysql-path=<absolute path to your Connector/C installation> + + --with-system-mysql-cppconn Use MySQL C++ Connector libraries already on system + --with-system-hsqldb Use hsqldb already on system --with-hsqldb-jar=JARFILE Specify path to jarfile manually @@ -2407,6 +2420,31 @@ if test "${with_lucene_analyzers_jar+set}" = set; then LUCENE_ANALYZERS_JAR="$withval" fi; +# Check whether --enable-mysql-connector or --disable-mysql-connector was given. +if test "${enable_mysql_connector+set}" = set; then + enableval="$enable_mysql_connector" + +fi; + +# Check whether --with-system-mysql or --without-system-mysql was given. +if test "${with_system_mysql+set}" = set; then + withval="$with_system_mysql" + +else + with_system_mysql="no" +fi; + +# Check whether --with-libmysql-path or --without-libmysql-path was given. +if test "${with_libmysql_path+set}" = set; then + withval="$with_libmysql_path" + +fi; + +# Check whether --with-system-mysql-cppconn or --without-system-mysql-cppconn was given. +if test "${with_system_mysql_cppconn+set}" = set; then + withval="$with_system_mysql_cppconn" + +fi; # Check whether --with-system-hsqldb or --without-system-hsqldb was given. if test "${with_system_hsqldb+set}" = set; then @@ -15106,6 +15144,467 @@ fi +echo "$as_me:$LINENO: checking whether to build the MySQL Connector extension" >&5 +echo $ECHO_N "checking whether to build the MySQL Connector extension... $ECHO_C" >&6 +if test -n "$enable_mysql_connector" -a "$enable_mysql_connector" != "no"; then + echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6 + ENABLE_MYSQLC=YES + echo "$as_me:$LINENO: checking for mysqlc module" >&5 +echo $ECHO_N "checking for mysqlc module... $ECHO_C" >&6 + if test -d mysqlc; then + echo "$as_me:$LINENO: result: OK" >&5 +echo "${ECHO_T}OK" >&6 + else + { { echo "$as_me:$LINENO: error: not existing. get it (did you get the -extensions tarball?)" >&5 +echo "$as_me: error: not existing. get it (did you get the -extensions tarball?)" >&2;} + { (exit 1); exit 1; }; } + fi + BUILD_TYPE="$BUILD_TYPE MYSQLC" +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 + ENABLE_MYSQLC=NO +fi + + +if test "$ENABLE_MYSQLC" = "YES"; then +echo "$as_me:$LINENO: checking for mysql pre-requisites" >&5 +echo $ECHO_N "checking for mysql pre-requisites... $ECHO_C" >&6 +if test -n "$with_system_mysql" -o -n "$with_system_libs" && \ + test "$with_system_mysql" != "no" && test "$with_system_libs" != "no"; then + echo "$as_me:$LINENO: result: external MySQL" >&5 +echo "${ECHO_T}external MySQL" >&6 + SYSTEM_MYSQL=YES + # Extract the first word of "mysql_config", so it can be a program name with args. +set dummy mysql_config; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_path_MYSQLCONFIG+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + case $MYSQLCONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_MYSQLCONFIG="$MYSQLCONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_MYSQLCONFIG="$as_dir/$ac_word$ac_exec_ext" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + + ;; +esac +fi +MYSQLCONFIG=$ac_cv_path_MYSQLCONFIG + +if test -n "$MYSQLCONFIG"; then + echo "$as_me:$LINENO: result: $MYSQLCONFIG" >&5 +echo "${ECHO_T}$MYSQLCONFIG" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + + echo "$as_me:$LINENO: checking MySQL version" >&5 +echo $ECHO_N "checking MySQL version... $ECHO_C" >&6 + MYSQL_VERSION=`$MYSQLCONFIG --version` + MYSQL_MAJOR=`$MYSQLCONFIG --version | cut -d"." -f1` + if test "$MYSQL_MAJOR" -ge "5"; then + echo "$as_me:$LINENO: result: OK" >&5 +echo "${ECHO_T}OK" >&6 + else + { { echo "$as_me:$LINENO: error: too old, use 5.0.x or 5.1.x" >&5 +echo "$as_me: error: too old, use 5.0.x or 5.1.x" >&2;} + { (exit 1); exit 1; }; } + fi + echo "$as_me:$LINENO: checking for MySQL Client library" >&5 +echo $ECHO_N "checking for MySQL Client library... $ECHO_C" >&6 + MYSQL_INC=`$MYSQLCONFIG --include` + MYSQL_LIB=`$MYSQLCONFIG --libs` + MYSQL_DEFINES=`$MYSQLCONFIG --cflags | sed -e s,$MYSQL_INC,,` + echo "$as_me:$LINENO: result: includes $MYSQL_INC, libraries $MYSQL_LIB" >&5 +echo "${ECHO_T}includes $MYSQL_INC, libraries $MYSQL_LIB" >&6 +else + SYSTEM_MYSQL=NO + if test -n "$with_libmysql_path"; then + echo "$as_me:$LINENO: result: external Connector/C (libmysql)" >&5 +echo "${ECHO_T}external Connector/C (libmysql)" >&6 + LIBMYSQL=libmysql.so + if test "$_os" = "Darwin"; then + LIBMYSQL=libmysql.dylib + elif test "$_os" = "WINNT"; then + LIBMYSQL=libmysql.dll + fi + echo "$as_me:$LINENO: checking for $LIBMYSQL" >&5 +echo $ECHO_N "checking for $LIBMYSQL... $ECHO_C" >&6 + if test -e "$with_libmysql_path/lib/$LIBMYSQL"; then + echo "$as_me:$LINENO: result: found." >&5 +echo "${ECHO_T}found." >&6 + LIBMYSQL_PATH=$with_libmysql_path + else + { { echo "$as_me:$LINENO: error: not found. Please specify proper path in --with-libmysql-path." >&5 +echo "$as_me: error: not found. Please specify proper path in --with-libmysql-path." >&2;} + { (exit 1); exit 1; }; } + fi + else + { { echo "$as_me:$LINENO: error: not given. Please specify either --with-system-mysql or --with-libmysql-path" >&5 +echo "$as_me: error: not given. Please specify either --with-system-mysql or --with-libmysql-path" >&2;} + { (exit 1); exit 1; }; } + fi +fi + + + + + + +ac_ext=cc +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + +# FIXME! +# who thought this too-generic cppconn dir was a good idea? +echo "$as_me:$LINENO: checking MySQL Connector/C++" >&5 +echo $ECHO_N "checking MySQL Connector/C++... $ECHO_C" >&6 +if test -n "$with_system_mysql_cppconn" -o -n "$with_system_libs" && \ + test "$with_system_mysql_cppconn" != "no" && test "$with_system_libs" != "no"; then + echo "$as_me:$LINENO: result: external" >&5 +echo "${ECHO_T}external" >&6 + SYSTEM_MYSQL_CPPCONN=YES + ac_ext=cc +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + + if test "${ac_cv_header_mysql_driver_h+set}" = set; then + echo "$as_me:$LINENO: checking for mysql_driver.h" >&5 +echo $ECHO_N "checking for mysql_driver.h... $ECHO_C" >&6 +if test "${ac_cv_header_mysql_driver_h+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +fi +echo "$as_me:$LINENO: result: $ac_cv_header_mysql_driver_h" >&5 +echo "${ECHO_T}$ac_cv_header_mysql_driver_h" >&6 +else + # Is the header compilable? +echo "$as_me:$LINENO: checking mysql_driver.h usability" >&5 +echo $ECHO_N "checking mysql_driver.h usability... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +#include <mysql_driver.h> +_ACEOF +rm -f conftest.$ac_objext +if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_cxx_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest.$ac_objext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_header_compiler=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_header_compiler=no +fi +rm -f conftest.err conftest.$ac_objext conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 +echo "${ECHO_T}$ac_header_compiler" >&6 + +# Is the header present? +echo "$as_me:$LINENO: checking mysql_driver.h presence" >&5 +echo $ECHO_N "checking mysql_driver.h presence... $ECHO_C" >&6 +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <mysql_driver.h> +_ACEOF +if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 + (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_cxx_preproc_warn_flag + ac_cpp_err=$ac_cpp_err$ac_cxx_werror_flag + else + ac_cpp_err= + fi +else + ac_cpp_err=yes +fi +if test -z "$ac_cpp_err"; then + ac_header_preproc=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_header_preproc=no +fi +rm -f conftest.err conftest.$ac_ext +echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 +echo "${ECHO_T}$ac_header_preproc" >&6 + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_cxx_preproc_warn_flag in + yes:no: ) + { echo "$as_me:$LINENO: WARNING: mysql_driver.h: accepted by the compiler, rejected by the preprocessor!" >&5 +echo "$as_me: WARNING: mysql_driver.h: accepted by the compiler, rejected by the preprocessor!" >&2;} + { echo "$as_me:$LINENO: WARNING: mysql_driver.h: proceeding with the compiler's result" >&5 +echo "$as_me: WARNING: mysql_driver.h: proceeding with the compiler's result" >&2;} + ac_header_preproc=yes + ;; + no:yes:* ) + { echo "$as_me:$LINENO: WARNING: mysql_driver.h: present but cannot be compiled" >&5 +echo "$as_me: WARNING: mysql_driver.h: present but cannot be compiled" >&2;} + { echo "$as_me:$LINENO: WARNING: mysql_driver.h: check for missing prerequisite headers?" >&5 +echo "$as_me: WARNING: mysql_driver.h: check for missing prerequisite headers?" >&2;} + { echo "$as_me:$LINENO: WARNING: mysql_driver.h: see the Autoconf documentation" >&5 +echo "$as_me: WARNING: mysql_driver.h: see the Autoconf documentation" >&2;} + { echo "$as_me:$LINENO: WARNING: mysql_driver.h: section \"Present But Cannot Be Compiled\"" >&5 +echo "$as_me: WARNING: mysql_driver.h: section \"Present But Cannot Be Compiled\"" >&2;} + { echo "$as_me:$LINENO: WARNING: mysql_driver.h: proceeding with the preprocessor's result" >&5 +echo "$as_me: WARNING: mysql_driver.h: proceeding with the preprocessor's result" >&2;} + { echo "$as_me:$LINENO: WARNING: mysql_driver.h: in the future, the compiler will take precedence" >&5 +echo "$as_me: WARNING: mysql_driver.h: in the future, the compiler will take precedence" >&2;} + ( + cat <<\_ASBOX +## ------------------------------------------ ## +## Report this to the AC_PACKAGE_NAME lists. ## +## ------------------------------------------ ## +_ASBOX + ) | + sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac +echo "$as_me:$LINENO: checking for mysql_driver.h" >&5 +echo $ECHO_N "checking for mysql_driver.h... $ECHO_C" >&6 +if test "${ac_cv_header_mysql_driver_h+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_cv_header_mysql_driver_h=$ac_header_preproc +fi +echo "$as_me:$LINENO: result: $ac_cv_header_mysql_driver_h" >&5 +echo "${ECHO_T}$ac_cv_header_mysql_driver_h" >&6 + +fi +if test $ac_cv_header_mysql_driver_h = yes; then + : +else + { { echo "$as_me:$LINENO: error: mysql_driver.h not found. install MySQL C++ Connectivity" >&5 +echo "$as_me: error: mysql_driver.h not found. install MySQL C++ Connectivity" >&2;} + { (exit 1); exit 1; }; } +fi + + + +echo "$as_me:$LINENO: checking for main in -lmysqlcppconn" >&5 +echo $ECHO_N "checking for main in -lmysqlcppconn... $ECHO_C" >&6 +if test "${ac_cv_lib_mysqlcppconn_main+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lmysqlcppconn $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + + +int +main () +{ +main (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -z "$ac_cxx_werror_flag" + || test ! -s conftest.err' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_lib_mysqlcppconn_main=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_cv_lib_mysqlcppconn_main=no +fi +rm -f conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +echo "$as_me:$LINENO: result: $ac_cv_lib_mysqlcppconn_main" >&5 +echo "${ECHO_T}$ac_cv_lib_mysqlcppconn_main" >&6 +if test $ac_cv_lib_mysqlcppconn_main = yes; then + cat >>confdefs.h <<_ACEOF +#define HAVE_LIBMYSQLCPPCONN 1 +_ACEOF + + LIBS="-lmysqlcppconn $LIBS" + +else + { { echo "$as_me:$LINENO: error: MySQL C++ Connectivity lib not found or functional" >&5 +echo "$as_me: error: MySQL C++ Connectivity lib not found or functional" >&2;} + { (exit 1); exit 1; }; } +fi + + echo "$as_me:$LINENO: checking version" >&5 +echo $ECHO_N "checking version... $ECHO_C" >&6 + if test "$cross_compiling" = yes; then + { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling +See \`config.log' for more details." >&5 +echo "$as_me: error: cannot run test program while cross compiling +See \`config.log' for more details." >&2;} + { (exit 1); exit 1; }; } +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +#include <mysql_driver.h> + +int main(int argc, char **argv) { + sql::Driver *driver; + driver = get_driver_instance(); + if (driver->getMajorVersion() > 1 || \ + (driver->getMajorVersion() == 1 && driver->getMinorVersion() > 0) || \ + (driver->getMajorVersion() == 1 && driver->getMinorVersion() == 0 && driver->getPatchVersion() >= 6)) + return 0; + else + return 1; +} + +_ACEOF +rm -f conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { ac_try='./conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + echo "$as_me:$LINENO: result: OK" >&5 +echo "${ECHO_T}OK" >&6 +else + echo "$as_me: program exited with status $ac_status" >&5 +echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +( exit $ac_status ) +{ { echo "$as_me:$LINENO: error: not suitable, we need >= 1.0.6" >&5 +echo "$as_me: error: not suitable, we need >= 1.0.6" >&2;} + { (exit 1); exit 1; }; } +fi +rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +fi + ac_ext=cc +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + + + echo "$as_me:$LINENO: checking STL compatibility" >&5 +echo $ECHO_N "checking STL compatibility... $ECHO_C" >&6 + if test "$WITH_STLPORT" != "no"; then + { { echo "$as_me:$LINENO: error: to use system mysqlcppconn you need to use --without-stlport" >&5 +echo "$as_me: error: to use system mysqlcppconn you need to use --without-stlport" >&2;} + { (exit 1); exit 1; }; } + else + echo "$as_me:$LINENO: result: OK" >&5 +echo "${ECHO_T}OK" >&6 + fi + +else + echo "$as_me:$LINENO: result: internal" >&5 +echo "${ECHO_T}internal" >&6 + echo "$as_me:$LINENO: checking for mysqlcppconn module" >&5 +echo $ECHO_N "checking for mysqlcppconn module... $ECHO_C" >&6 + if test -d mysqlcppconn; then + echo "$as_me:$LINENO: result: OK" >&5 +echo "${ECHO_T}OK" >&6 + else + { { echo "$as_me:$LINENO: error: not existing. get it (did you get the -extensions tarball?)" >&5 +echo "$as_me: error: not existing. get it (did you get the -extensions tarball?)" >&2;} + { (exit 1); exit 1; }; } + fi + BUILD_TYPE="$BUILD_TYPE MYSQLCPPCONN" + SYSTEM_MYSQL_CPPCONN=NO +fi +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +fi + echo "$as_me:$LINENO: checking which hsqldb to use" >&5 echo $ECHO_N "checking which hsqldb to use... $ECHO_C" >&6 if test -n "$with_system_hsqldb" -o -n "$with_system_libs" && \ @@ -29311,6 +29810,14 @@ s,@DB_JAR@,$DB_JAR,;t t s,@SYSTEM_LUCENE@,$SYSTEM_LUCENE,;t t s,@LUCENE_CORE_JAR@,$LUCENE_CORE_JAR,;t t s,@LUCENE_ANALYZERS_JAR@,$LUCENE_ANALYZERS_JAR,;t t +s,@ENABLE_MYSQLC@,$ENABLE_MYSQLC,;t t +s,@MYSQLCONFIG@,$MYSQLCONFIG,;t t +s,@SYSTEM_MYSQL@,$SYSTEM_MYSQL,;t t +s,@MYSQL_INC@,$MYSQL_INC,;t t +s,@MYSQL_LIB@,$MYSQL_LIB,;t t +s,@MYSQL_DEFINES@,$MYSQL_DEFINES,;t t +s,@LIBMYSQL_PATH@,$LIBMYSQL_PATH,;t t +s,@SYSTEM_MYSQL_CPPCONN@,$SYSTEM_MYSQL_CPPCONN,;t t s,@SYSTEM_HSQLDB@,$SYSTEM_HSQLDB,;t t s,@HSQLDB_JAR@,$HSQLDB_JAR,;t t s,@SYSTEM_BSH@,$SYSTEM_BSH,;t t diff --git a/configure.in b/configure.in index 3505be436cf6..ec14139f035e 100644 --- a/configure.in +++ b/configure.in @@ -375,6 +375,23 @@ AC_ARG_WITH(lucene-analyzers-jar, [ --with-lucene-analyzers-jar=JARFILE Specify path to jarfile manually ], [ LUCENE_ANALYZERS_JAR="$withval" ]) +AC_ARG_ENABLE(mysql-connector, +[ --enable-mysql-connector enables the build of the MySQL Connector/OOo extension. + This requires access to the MySQL Connector/C (aka libmysql) to be given, too, with + either the --with-system-mysql or --with-libmysql-path option. +],,) +AC_ARG_WITH(system-mysql, +[ --with-system-mysql Use MySQL libraries already on system, for building the MySQL Connector/OOo extension. + Requires MYSQLCONFIG to point to the mysql_config executable. +],,with_system_mysql="no") +AC_ARG_WITH(libmysql-path, +[ --with-libmysql-path Use Connector/C (libmysql) installation for building the MySQL Connector/OOo extension. + + Usage: --with-libmysql-path=<absolute path to your Connector/C installation> +],,) +AC_ARG_WITH(system-mysql-cppconn, +[ --with-system-mysql-cppconn Use MySQL C++ Connector libraries already on system +],,) AC_ARG_WITH(system-hsqldb, [ --with-system-hsqldb Use hsqldb already on system ],,) @@ -3930,6 +3947,128 @@ AC_SUBST(SYSTEM_LUCENE) AC_SUBST(LUCENE_CORE_JAR) AC_SUBST(LUCENE_ANALYZERS_JAR) +AC_MSG_CHECKING([whether to build the MySQL Connector extension]) +if test -n "$enable_mysql_connector" -a "$enable_mysql_connector" != "no"; then + AC_MSG_RESULT([yes]) + ENABLE_MYSQLC=YES + AC_MSG_CHECKING([for mysqlc module]) + if test -d mysqlc; then + AC_MSG_RESULT([OK]) + else + AC_MSG_ERROR([not existing. get it (did you get the -extensions tarball?)]) + fi + BUILD_TYPE="$BUILD_TYPE MYSQLC" +else + AC_MSG_RESULT([no]) + ENABLE_MYSQLC=NO +fi +AC_SUBST(ENABLE_MYSQLC) + +if test "$ENABLE_MYSQLC" = "YES"; then +dnl =================================================================== +dnl Check for system MySQL +dnl =================================================================== +AC_MSG_CHECKING([for mysql pre-requisites]) +if test -n "$with_system_mysql" -o -n "$with_system_libs" && \ + test "$with_system_mysql" != "no" && test "$with_system_libs" != "no"; then + AC_MSG_RESULT([external MySQL]) + SYSTEM_MYSQL=YES + AC_PATH_PROG( MYSQLCONFIG, mysql_config) + AC_MSG_CHECKING([MySQL version]) + MYSQL_VERSION=`$MYSQLCONFIG --version` + MYSQL_MAJOR=`$MYSQLCONFIG --version | cut -d"." -f1` + if test "$MYSQL_MAJOR" -ge "5"; then + AC_MSG_RESULT([OK]) + else + AC_MSG_ERROR([too old, use 5.0.x or 5.1.x]) + fi + AC_MSG_CHECKING([for MySQL Client library]) + MYSQL_INC=`$MYSQLCONFIG --include` + MYSQL_LIB=`$MYSQLCONFIG --libs` + MYSQL_DEFINES=`$MYSQLCONFIG --cflags | sed -e s,$MYSQL_INC,,` + AC_MSG_RESULT([includes $MYSQL_INC, libraries $MYSQL_LIB]) +else + SYSTEM_MYSQL=NO + if test -n "$with_libmysql_path"; then + AC_MSG_RESULT([external Connector/C (libmysql)]) + LIBMYSQL=libmysql.so + if test "$_os" = "Darwin"; then + LIBMYSQL=libmysql.dylib + elif test "$_os" = "WINNT"; then + LIBMYSQL=libmysql.dll + fi + AC_MSG_CHECKING([for $LIBMYSQL]) + if test -e "$with_libmysql_path/lib/$LIBMYSQL"; then + AC_MSG_RESULT([found.]) + LIBMYSQL_PATH=$with_libmysql_path + else + AC_MSG_ERROR([not found. Please specify proper path in --with-libmysql-path.]) + fi + else + AC_MSG_ERROR([not given. Please specify either --with-system-mysql or --with-libmysql-path]) + fi +fi +AC_SUBST(SYSTEM_MYSQL) +AC_SUBST(MYSQL_INC) +AC_SUBST(MYSQL_LIB) +AC_SUBST(MYSQL_DEFINES) +AC_SUBST(LIBMYSQL_PATH) + +AC_LANG_PUSH([C++]) +dnl =================================================================== +dnl Check for system MySQL C++ Connector +dnl =================================================================== +# FIXME! +# who thought this too-generic cppconn dir was a good idea? +AC_MSG_CHECKING([MySQL Connector/C++]) +if test -n "$with_system_mysql_cppconn" -o -n "$with_system_libs" && \ + test "$with_system_mysql_cppconn" != "no" && test "$with_system_libs" != "no"; then + AC_MSG_RESULT([external]) + SYSTEM_MYSQL_CPPCONN=YES + AC_LANG_PUSH([C++]) + AC_CHECK_HEADER(mysql_driver.h, [], + [AC_MSG_ERROR(mysql_driver.h not found. install MySQL C++ Connectivity)], []) + AC_CHECK_LIB(mysqlcppconn, main, [], + [AC_MSG_ERROR(MySQL C++ Connectivity lib not found or functional)], []) + AC_MSG_CHECKING([version]) + AC_TRY_RUN([ +#include <mysql_driver.h> + +int main(int argc, char **argv) { + sql::Driver *driver; + driver = get_driver_instance(); + if (driver->getMajorVersion() > 1 || \ + (driver->getMajorVersion() == 1 && driver->getMinorVersion() > 0) || \ + (driver->getMajorVersion() == 1 && driver->getMinorVersion() == 0 && driver->getPatchVersion() >= 6)) + return 0; + else + return 1; +} + ], [AC_MSG_RESULT(OK)], [AC_MSG_ERROR([not suitable, we need >= 1.0.6])]) + AC_LANG_POP([C++]) + + AC_MSG_CHECKING([STL compatibility]) + if test "$WITH_STLPORT" != "no"; then + AC_MSG_ERROR([to use system mysqlcppconn you need to use --without-stlport]) + else + AC_MSG_RESULT([OK]) + fi + +else + AC_MSG_RESULT([internal]) + AC_MSG_CHECKING([for mysqlcppconn module]) + if test -d mysqlcppconn; then + AC_MSG_RESULT([OK]) + else + AC_MSG_ERROR([not existing. get it (did you get the -extensions tarball?)]) + fi + BUILD_TYPE="$BUILD_TYPE MYSQLCPPCONN" + SYSTEM_MYSQL_CPPCONN=NO +fi +AC_LANG_POP([C++]) +AC_SUBST(SYSTEM_MYSQL_CPPCONN) +fi + dnl =================================================================== dnl Check for system hsqldb dnl =================================================================== diff --git a/set_soenv.in b/set_soenv.in index 16edc29334d0..5873e3a6683a 100644 --- a/set_soenv.in +++ b/set_soenv.in @@ -1880,6 +1880,13 @@ ToFile( "SYSTEM_EXPAT", "@SYSTEM_EXPAT@", "e" ); ToFile( "SYSTEM_DB", "@SYSTEM_DB@", "e" ); ToFile( "DB_VERSION", "@DB_VERSION@", "e" ); ToFile( "DB_INCLUDES", "@DB_INCLUDES@", "e" ); +ToFile( "ENABLE_MYSQLC", "@ENABLE_MYSQLC@", "e" ); +ToFile( "SYSTEM_MYSQL", "@SYSTEM_MYSQL@", "e" ); +ToFile( "SYSTEM_MYSQL_CPPCONN","@SYSTEM_MYSQL_CPPCONN@","e" ); +ToFile( "MYSQL_INC", "@MYSQL_INC@", "e" ); +ToFile( "MYSQL_LIB", "@MYSQL_LIB@", "e" ); +ToFile( "MYSQL_DEFINES", "@MYSQL_DEFINES@", "e" ); +ToFile( "LIBMYSQL_PATH", "@LIBMYSQL_PATH@", "e" ); ToFile( "SYSTEM_HSQLDB", "@SYSTEM_HSQLDB@", "e" ); ToFile( "HSQLDB_JAR", "@HSQLDB_JAR@", "e" ); ToFile( "SYSTEM_LUCENE", "@SYSTEM_LUCENE@", "e" ); diff --git a/solenv/bin/transform_description.pl b/solenv/bin/transform_description.pl new file mode 100644 index 000000000000..0d6ab34583b3 --- /dev/null +++ b/solenv/bin/transform_description.pl @@ -0,0 +1,138 @@ +#!/usr/bin/perl +#************************************************************************* +#* +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. +# +# Copyright 2009 by Sun Microsystems, Inc. +# +# OpenOffice.org - a multi-platform office productivity suite +# +# This file is part of OpenOffice.org. +# +# OpenOffice.org is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License version 3 +# only, as published by the Free Software Foundation. +# +# OpenOffice.org is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License version 3 for more details +# (a copy is included in the LICENSE file that accompanied this code). +# +# You should have received a copy of the GNU Lesser General Public License +# version 3 along with OpenOffice.org. If not, see +# <http://www.openoffice.org/license.html> +# for a copy of the LGPLv3 License. +# +#************************************************************************/ + +parse_args(); +execute_args(); +exit(0); + +my $source = undef; +my $dest = undef; +my @languages = undef; + +sub parse_args +{ + # at most two arguments + explain(), exit(100) if ( $#ARGV > 1 ); + + # destination file is the second argument, if present + $dest = $ARGV[1] if ( $#ARGV > 0 ); + + # source file is the first argument if present + if ( $#ARGV > -1 ) + { + $source = $ARGV[0]; + if ( ! -f $source ) + { + print STDERR "$source is not a valid file, aborting"; + exit(101); + } + } + + # check which languages to use + my $languages = $ENV{WITH_LANG}; + if ( ! defined $languages ) + { + print STDERR "$0: WITH_LANG not set, defaulting to 'en-US'\n"; + $languages = "en-US"; + } + @languages = split ( ' ', $languages ); +} + +sub execute_args +{ + my @description = (); + if ( defined $source ) + { + open SOURCE, "$source" || die "could not open $source: $?\n"; + @description = <SOURCE>; + close SOURCE; + } + else + { + @description = <STDIN>; + } + + if ( defined $dest ) + { + open DEST, ">$dest" || die "could not open $dest for writing: $?\n"; + } + + foreach (@description) + { + chomp; s/\r//; + + if ( /\#LANG\#/ ) + { + foreach $lang ( @languages ) + { + my $transformed = $_; + $transformed =~ s/\#LANG#/$lang/g; + if ( defined $dest ) + { + print DEST "$transformed\n"; + } + else + { + print STDOUT "$transformed\n"; + } + } + } + else + { + if ( defined $dest ) + { + print DEST "$_\n"; + } + else + { + print STDOUT "$_\n"; + } + } + } + + close DEST if ( defined $dest ); +} + +# explains the program's usage +sub explain +{ + print STDOUT "usage:\n"; + print STDOUT " $0 [<description_file> [<output_file>]]\n"; + print STDOUT " transforms the given extension description file\n"; + print STDOUT "\n"; + print STDOUT " If <output_file> is not given, STDOUT is used.\n"; + print STDOUT " If <description_file> is not given, STDIN is used.\n"; + print STDOUT "\n"; + print STDOUT " The following transformations are done at the moment:\n"; + print STDOUT " - duplicate all lines containing #LANG#, for ever token of \$WITH_LANG\n"; + print STDOUT " replacing every occurance of \$LANG with a token\n"; + print STDOUT "\n"; + print STDOUT " And yes, the functionality of this script should be\n"; + print STDOUT " - moved to solenv/inc/tg_ext.mk\n"; + print STDOUT " - implemented as XSLT, to be much less error-prone\n"; +} diff --git a/solenv/config/sdev300.ini b/solenv/config/sdev300.ini index 7550f86aedc5..33dcd62b24a1 100644 --- a/solenv/config/sdev300.ini +++ b/solenv/config/sdev300.ini @@ -13,7 +13,7 @@ common BMP_WRITES_FLAG TRUE BTARGET 1 BUILD_SPECIAL TRUE - BUILD_TYPE SO OOo EXT BINFILTER BITSTREAM_VERA_FONTS BSH CURL DICTIONARIES HSQLDB HUNSPELL JPEG LIBXML2 LIBXMLSEC LPSOLVE MOZ NEON TWAIN PYTHON ZLIB SANE UNIXODBC X11_EXTENSIONS LIBWPD EPM QADEVOOO ODK MSFONTEXTRACT MATHMLDTD BOOST EXPAT CRASHREP BERKELEYDB LIBXSLT SUN AGG GTK ICU SYSTRAY_GTK JAVAINSTALLER2 VIGRA OPENSSL JFREEREPORT APACHE_COMMONS TOMCAT REPORTBUILDER SDEXT SWEXT XPDF LUCENE REDLAND SAXON WRITER2LATEX NSS L10N GRAPHITE + BUILD_TYPE SO OOo EXT BINFILTER BITSTREAM_VERA_FONTS BSH CURL DICTIONARIES HSQLDB HUNSPELL JPEG LIBXML2 LIBXMLSEC LPSOLVE MOZ NEON TWAIN PYTHON ZLIB SANE UNIXODBC X11_EXTENSIONS LIBWPD EPM QADEVOOO ODK MSFONTEXTRACT MATHMLDTD BOOST EXPAT CRASHREP BERKELEYDB LIBXSLT SUN AGG GTK ICU SYSTRAY_GTK JAVAINSTALLER2 VIGRA OPENSSL JFREEREPORT APACHE_COMMONS TOMCAT REPORTBUILDER SDEXT SWEXT XPDF LUCENE REDLAND SAXON WRITER2LATEX NSS L10N GRAPHITE MYSQLCPPCONN MYSQLC common_build TRUE COMMON_OUTDIR common CONFIG_PROJECT config_office @@ -28,6 +28,7 @@ common ENABLE_GTK TRUE ENABLE_MEDIAWIKI YES ENABLE_MINIMIZER YES + ENABLE_MYSQLC YES ENABLE_NSS_MODULE YES ENABLE_RANDR TRUE ENABLE_REPORTBUILDER YES @@ -744,6 +745,7 @@ unxlngi6 JDK14PATH %SOLAR_JDK14PATH% JDK15PATH %SOLAR_JDK15PATH% KDE_ROOT /so/env/kde/linux/kde-3.2.2 + LIBMYSQL_PATH %SOLAR_ENV_ROOT%/mysql-connector-c-6.0.2/unxlngi6 NO_BSYMBOLIC True OJDK16PATH %SOLAR_OJDK16PATH% OS LINUX @@ -1069,6 +1071,7 @@ unxlngx6 JDK14PATH %SOLAR_JDK14PATH% JDK15PATH %SOLAR_JDK15PATH% KDE_ROOT /so/env/kde/linux/kde-3.2.2 + LIBMYSQL_PATH %SOLAR_ENV_ROOT%/mysql-connector-c-6.0.2/unxlngx6 NO_BSYMBOLIC True OJDK16PATH %SOLAR_OJDK16PATH% OS LINUX @@ -1397,6 +1400,7 @@ unxmacxi JDK13PATH %SOLAR_JDK13PATH% JDK14PATH %SOLAR_JDK15PATH% JDK15PATH %SOLAR_JDK15PATH% + LIBMYSQL_PATH %SOLAR_ENV_ROOT%/mysql-connector-c-6.0.2/unxmacxi NO_BSYMBOLIC True OS MACOSX OUTPATH unxmacxi @@ -1694,6 +1698,7 @@ unxsoli4 JDK13PATH %SOLAR_JDK13PATH% JDK14PATH %SOLAR_JDK14PATH% JDK15PATH %SOLAR_JDK15PATH% + LIBMYSQL_PATH %SOLAR_ENV_ROOT%/mysql-connector-c-6.0.2/unxsoli4 OJDK16PATH %SOLAR_OJDK16PATH% OS SOLARIS OUTPATH unxsoli4 @@ -2001,6 +2006,7 @@ unxsols4 JDK13PATH %SOLAR_JDK13PATH% JDK14PATH %SOLAR_JDK14PATH% JDK15PATH %SOLAR_JDK15PATH% + LIBMYSQL_PATH %SOLAR_ENV_ROOT%/mysql-connector-c-6.0.2/unxsols4 LM_LICENSE_FILE %SOLAR_LICENSE_FILE% OJDK16PATH %SOLAR_OJDK16PATH% OS SOLARIS @@ -3550,6 +3556,7 @@ wntmsci12 GUIBASE WIN GVER NT351 INPATH wntmsci12%PROEXT% + LIBMYSQL_PATH %SOLAR_ENV_ROOT%$/mysql-connector-c-6.0.2$/wntmsci12 MOZILLABUILD %SOLARROOT%/mozilla-build-1.3 OS WNT OUTPATH wntmsci12 diff --git a/solenv/inc/extension_post.mk b/solenv/inc/extension_post.mk index 07968efada54..468692af8cc0 100644 --- a/solenv/inc/extension_post.mk +++ b/solenv/inc/extension_post.mk @@ -29,6 +29,8 @@ # #************************************************************************* +EXTENSION_TARGET:=$(ZIP9TARGETN) + .SOURCE.xcu : $(MISC)/$(EXTNAME)/merge $(MISC)/$(EXTNAME)/registry/data $(MISC)/$(COMPONENT_SHARED_CONFIG)_in/merge $(MISC)/$(COMPONENT_SHARED_CONFIG)_in/registry/data $(COMPONENT_CONFIGDIR) . .SOURCE.xcs : $(MISC)/$(EXTNAME)/registry $(MISC)/$(EXTNAME)/registry/schema . @@ -129,12 +131,18 @@ PHONYDESC=.PHONY .IF "$(DESCRIPTION)"!="" $(DESCRIPTION) $(PHONYDESC) : $(DESCRIPTION_SRC) @@-$(MKDIRHIER) $(@:d) - $(COMMAND_ECHO)$(PERL) $(SOLARENV)/bin/licinserter.pl $(DESCRIPTION_SRC) $(COMPONENT_LIC_TEMPL) $@.$(EXTNAME) @echo LAST_WITH_LANG=$(WITH_LANG) > $(MISC)/$(TARGET)_lang_track.mk - $(COMMAND_ECHO)$(TYPE) $@.$(EXTNAME) | sed s/UPDATED_IDENTIFIER/$(IMPLEMENTATION_IDENTIFIER)/ > $(MISC)/desc.tmp.$(EXTNAME) - @@-$(RM) $@.$(EXTNAME) - $(COMMAND_ECHO)$(TYPE) $(MISC)/desc.tmp.$(EXTNAME) | sed s/UPDATED_SUPPORTED_PLATFORM/$(PLATFORMID)/ > $@ - @@-$(RM) $(MISC)/desc.tmp.$(EXTNAME) + + $(COMMAND_ECHO)$(PERL) $(SOLARENV)/bin/licinserter.pl $(DESCRIPTION_SRC) $(COMPONENT_LIC_TEMPL) $@.1.$(EXTNAME) + + $(COMMAND_ECHO)$(PERL) $(SOLARENV)/bin/transform_description.pl $@.1.$(EXTNAME) $@.2.$(EXTNAME) + @@-$(RM) $@.1.$(EXTNAME) + + $(COMMAND_ECHO)$(TYPE) $@.2.$(EXTNAME) | sed s/UPDATED_IDENTIFIER/$(IMPLEMENTATION_IDENTIFIER)/ > $@.3.$(EXTNAME) + @@-$(RM) $@.2.$(EXTNAME) + + $(COMMAND_ECHO)$(TYPE) $@.3.$(EXTNAME) | sed s/UPDATED_SUPPORTED_PLATFORM/$(PLATFORMID)/ > $@ + @@-$(RM) $@.3.$(EXTNAME) .ENDIF # "$(DESCRIPTION)"!="" # default OOo license text!!! diff --git a/solenv/inc/unxsoli4.mk b/solenv/inc/unxsoli4.mk index afcea59a9971..f1f23f45068d 100644 --- a/solenv/inc/unxsoli4.mk +++ b/solenv/inc/unxsoli4.mk @@ -33,7 +33,6 @@ ASM=/usr/ccs/bin/as AFLAGS=-P - CDEFS+=-D_PTHREADS -DSYSV -DSUN -DSUN4 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DSTLPORT_VERSION=$(STLPORT_VER) SOLAR_JAVA*=TRUE diff --git a/solenv/inc/unxsols4.mk b/solenv/inc/unxsols4.mk index a28b097e13b4..9ee60e55c9dd 100644 --- a/solenv/inc/unxsols4.mk +++ b/solenv/inc/unxsols4.mk @@ -34,7 +34,6 @@ ASM=/usr/ccs/bin/as # needs -D__sparcv8plus because it's not defined by the assembler with -xarch=v8plus AFLAGS=-P -xarch=v8plus -D__sparcv8plus - CDEFS+=-D_PTHREADS -DSYSV -DSUN -DSUN4 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DSTLPORT_VERSION=$(STLPORT_VER) SOLAR_JAVA*=TRUE |