diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2004-10-11 12:48:26 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2004-10-11 12:48:26 +0000 |
commit | 2abb622057c0dc43548ad6b8499c5cf134c5bcd8 (patch) | |
tree | e890bf2cc119855300cfae8c69a903f5e959074a /config_office | |
parent | c98940b9432bac36dc4382337f69adc1262afea2 (diff) |
INTEGRATION: CWS vq02 (1.66.8); FILE MERGED
2004/10/04 02:23:12 vq 1.66.8.6: #i27627# Oops, $COMSPEC includes the /Bin, therefore a 'find "$COMPATH/../.." ...'
is needed to find msvc?7?.dll.
2004/09/26 14:06:06 vq 1.66.8.5: #i27627# Teach configure to detect and copy the needed msvc?7?.dll.
2004/09/21 17:00:01 vq 1.66.8.4: RESYNC: (1.66-1.69); FILE MERGED
2004/09/18 12:29:12 vq 1.66.8.3: #i34327# Make config_office DirectX SDK aware.
2004/09/17 13:36:36 vq 1.66.8.2: #i34228# Documentation fix for --with-frame-home.
2004/09/16 18:18:43 vq 1.66.8.1: #i34228# configure and solenv changes for VCTK use.
Diffstat (limited to 'config_office')
-rw-r--r-- | config_office/configure.in | 238 |
1 files changed, 201 insertions, 37 deletions
diff --git a/config_office/configure.in b/config_office/configure.in index be39013c8153..9d98448142a5 100644 --- a/config_office/configure.in +++ b/config_office/configure.in @@ -3,7 +3,7 @@ dnl * vi:set sw=3 ts=3 et: dnl * dnl * Name: configure.in dnl * Auth: Willem van Dorp, Ross Nicholson, Oisin Boydell - Sun Microsystems Ireland -dnl * Date: $Date: 2004-09-09 11:22:06 $ +dnl * Date: $Date: 2004-10-11 13:48:26 $ dnl * dnl * Desc: This file serves as input for the GNU autoconf package dnl * in order to create a configure script. @@ -12,7 +12,7 @@ dnl * necessary to build OpenOffice.org dnl * dnl * dnl ******************************************************************/ -AC_REVISION( $Revision: 1.69 $ ) +AC_REVISION( $Revision: 1.70 $ ) AC_PREREQ(2.50) AC_INIT() echo "$@" >config.parms @@ -63,6 +63,10 @@ AC_ARG_ENABLE(directx, compile. (DirectX SDK, GDI+ libs) ],,) +AC_ARG_ENABLE(atlmfc, +[ --disable-atlmfc Disable the use of ATL/MFC for windows build. +],,) + AC_ARG_ENABLE(symbols, [ --enable-symbols Include debugging symbols in output. Warning - a complete build needs 8 Gb of space and takes @@ -91,6 +95,10 @@ AC_ARG_ENABLE(cl-standard, ( This just disables optimization options and therefore removes a lot of warnings when using the cheaper standard compiler. ) ],,) +AC_ARG_ENABLE(vctk, +[ --enable-vctk Tell configure to check for the MS VC Toolkit 2003. + ( This is experimental! ) +],,) AC_ARG_ENABLE(static-gtk, [ --enable-static-gtk: Modules that are linked against gtk libraries use the static libraries instead of the dynamic ones. @@ -208,13 +216,25 @@ AC_ARG_WITH(csc-path, Usage: --with-csc-path=<absolute path to csc.exe> ],,) -AC_ARG_WITH(frame-home, -[ --with-frame-home For Microsoft C/C++ .NET compiler users, please supply the path - pointing to the .NET Framework SDK. - Usually something like: - "/cygdrive/c/Programme/Microsoft Visual Studio .NET/FrameworkSDK" +AC_ARG_WITH(nmake-path, +[ --with-nmake-path For MS Visual Toolkit compiler users, please supply the path + pointing to the nmake.exe. The Platform SDK provides one in the + Win64 directory, usually something like: + "/cygdrive/c/Programme/Microsoft SDK/Bin/Win64" - Usage: --with-frame-home=<absolute path to Framework SDK> + Usage: --with-nmake-path=<absolute path to nmake.exe> +],,) +AC_ARG_WITH(frame-home, +[ --with-frame-home For Microsoft C/C++ .NET compiler users, please supply + the path pointing to lib/mscoree.lib, usually something + like: + "/cygdrive/c/Program Files/Microsoft Visual Studio .NET/FrameworkSDK" + + MS Visual Toolkit compiler users, please supply the path + pointing to lib/msvcrt.lib, usually something like: + "/cygdrive/c/Program Files/Microsoft Visual Studio .NET 2003/Vc7" + + Usage: --with-frame-home=<absolute path to Framework SDK [[home]]> ],,) AC_ARG_WITH(wdevenv-path, [ --with-wdevenv-path For Microsoft C/C++ .NET compiler users, please supply the path @@ -223,11 +243,25 @@ AC_ARG_WITH(wdevenv-path, Usage: --with-wdevenv-path=<absolute path to wdevenv.exe> ],,) AC_ARG_WITH(psdk-home, -[ --with-psdk-home For Windows NT users, please supply the path - for the Microsoft Platform SDK. +[ --with-psdk-home For Windows users, please supply the path to the + Microsoft Platform SDK. Usage: --with-psdk-home=<absolute path to Microsoft Platform SDK> ],,) +AC_ARG_WITH(directx-home, +[ --with-directx-home For Windows users, please supply the path to the + Microsoft DirectX SDK. + + Usage: --with-directx-home=<absolute path to Microsoft DirectX SDK> +],,) +AC_ARG_WITH(extra-dotnet-files, +[ --with-extra-dotnet-files For MS Visual Toolkit compiler, please supply the path + to additional library/include files that are otherwise missing. + (This is a cludge until MS Visual Toolkit is usable without + extra files.) + + Usage: --with-extra-dotnet-files=<absolute path to extra files> +],,) AC_ARG_WITH(2003-psdk, [ --with-2003-psdk Deprecated: Now has no effect. ],,) @@ -485,6 +519,16 @@ fi AC_SUBST(ENABLE_CRASHDUMP) dnl =================================================================== +dnl Set the ENABLE_VCTK variable. +dnl =================================================================== +if test "$enable_vctk" = "" -o "$enable_vctk" = "no"; then + ENABLE_VCTK="" +else + ENABLE_VCTK="TRUE" +fi +AC_SUBST(ENABLE_VCTK) + +dnl =================================================================== dnl Set the VC_STANDARD variable. dnl =================================================================== if test "$enable_cl_standard" = "" -o "$enable_cl_standard" = "no"; then @@ -574,6 +618,14 @@ else fi AC_SUBST(ENABLE_DIRECTX) +if test "$enable_atlmfc" = "yes" -o "$enable_atlmfc" = "TRUE" -o "$enable_atlmfc" = ""; then +dnl This should be called DISABLE_ATLMFC, see iz32552 + NETTOOLKIT="" +else + NETTOOLKIT="TRUE" +fi +AC_SUBST(NETTOOLKIT) + dnl =================================================================== dnl Disable rpath in shared libraries? dnl =================================================================== @@ -815,7 +867,7 @@ if test "$_os" = "WINNT"; then if test "$WITH_MINGWIN" != "yes"; then AC_MSG_CHECKING([the Microsoft C/C++ Compiler]) dnl =========================================================== - dnl Check for mspdb?0.dll + dnl Check for mspdb??.dll dnl =========================================================== dnl .NET Compiler? AC_PATH_PROG(MSPDB_PATH, mspdb70.dll) @@ -837,18 +889,24 @@ if test "$_os" = "WINNT"; then if test -e "$with_mspdb_path/mspdb60.dll"; then MSPDB_PATH="$with_mspdb_path" fi - if test -z "$MSPDB_PATH"; then - dnl Check for .Net 2003 Compiler - AC_PATH_PROG(MSPDB_PATH, mspdb71.dll) + if test -z "$MSPDB_PATH" -o -n "$ENABLE_VCTK"; then + dnl Check for .Net 2003 Compiler. Override MSPDB_PATH when MS VC toolkit is requested + MSPDB_PATH="" + AC_PATH_PROG(MSPDB_PATH, mspdb71.dll) if test -n "$MSPDB_PATH";then MSPDB_PATH=`dirname "$MSPDB_PATH"` fi if test -e "$with_mspdb_path/mspdb71.dll"; then MSPDB_PATH="$with_mspdb_path" fi + dnl .NET case if test -z "$MSPDB_PATH" -a -e "$with_cl_home/../Common7/IDE/mspdb71.dll"; then MSPDB_PATH="$with_cl_home/../Common7/IDE" fi + dnl VCTK case + if test -z "$MSPDB_PATH" -a -e "$with_cl_home/bin/mspdb71.dll"; then + MSPDB_PATH="$with_cl_home/bin" + fi fi if test -z "$MSPDB_PATH" -a -e "$with_cl_home/../Common/msdev98/mspdb60.dll"; then @@ -886,7 +944,7 @@ dnl The following find microsoft, matches nn.nn.nnnn then pulls numbers out } }"` AC_MSG_RESULT([found Compiler version $CCNUMVER.]) - if test "$CCNUMVER" -ge "001300103000"; then + if test "$CCNUMVER" -ge "001300100000"; then COMEX=10 else if test "$CCNUMVER" -ge "001300000000"; then @@ -947,21 +1005,56 @@ if test "$COMEX" = "8" -o "$COMEX" = "10"; then CSC_PATH=`cygpath -d "$CSC_PATH"` CSC_PATH=`cygpath -u "$CSC_PATH"` - dnl Check mscoree.lib / .NET Frameworks dir - if test -f "$with_frame_home/lib/mscoree.lib"; then - FRAME_HOME="$with_frame_home" - fi - if test -z "$FRAME_HOME" -a -e "$with_cl_home/../FrameworkSDK/lib/mscoree.lib"; then - FRAME_HOME="$with_cl_home/../FrameworkSDK" - fi - if test ! -f "$FRAME_HOME/lib/mscoree.lib"; then + dnl Check nmake.exe for MS VC Toolkit + if test -n "$ENABLE_VCTK"; then + AC_PATH_PROG(NMAKE_PATH, nmake.exe) + if test -n "$NMAKE_PATH"; then + NMAKE_PATH=`dirname "$NMAKE_PATH"` + fi + if test -x "$with_nmake_path/nmake.exe"; then + NMAKE_PATH="$with_nmake_path" + fi + if test ! -x "$NMAKE_PATH/nmake.exe"; then + AC_MSG_ERROR([nmake.exe not found. Make sure it's in the path or use --with-nmake-path]) + fi + # Convert to posix path with 8.3 filename restrictions ( No spaces ) + NMAKE_PATH=`cygpath -d "$NMAKE_PATH"` + NMAKE_PATH=`cygpath -u "$NMAKE_PATH"` + fi + + dnl Check mscoree.lib / .NET Frameworks dir + dnl This now has two meanings, for .NET200x it has to point to the + dnl directory with lib/mscoree.lib and for VCTK to lib/msvcrt.lib. + if test -z "$ENABLE_VCTK"; then + if test -f "$with_frame_home/lib/mscoree.lib"; then + FRAME_HOME="$with_frame_home" + fi + if test -z "$FRAME_HOME" -a -e "$with_cl_home/../FrameworkSDK/lib/mscoree.lib"; then + FRAME_HOME="$with_cl_home/../FrameworkSDK" + fi + if test ! -f "$FRAME_HOME/lib/mscoree.lib"; then AC_MSG_ERROR([mscoree.lib (.NET Framework) not found. Make sure you use --with-frame-home]) - fi + fi + else + if test ! -f "$COMPATH/../lib/mscoree.lib"; then + AC_MSG_ERROR([mscoree.lib not found. Unexpected, ask dev@tools.openoffice.org for help.]) + fi + if test -f "$with_frame_home/lib/msvcrt.lib"; then + FRAME_HOME="$with_frame_home" + fi + if test -z "$FRAME_HOME" -a -e "$with_cl_home/../Microsoft Visual Studio .NET 2003/Vc7/lib/msvcrt.lib"; then + FRAME_HOME="$with_cl_home/../Microsoft Visual Studio .NET 2003/Vc7" + fi + if test ! -f "$FRAME_HOME/lib/msvcrt.lib"; then + AC_MSG_ERROR([msvcrt.lib (.NET Framework) not found. Make sure you use --with-frame-home]) + fi + fi # Convert to posix path with 8.3 filename restrictions ( No spaces ) FRAME_HOME=`cygpath -d "$FRAME_HOME"` FRAME_HOME=`cygpath -u "$FRAME_HOME"` - dnl Check wdevenv.exe + dnl Check wdevenv.exe (Not needed for VC toolkit) + if test -z "$ENABLE_VCTK"; then AC_PATH_PROG(WDEVENV_PATH, wdevenv.exe) if test -n "$WDEVENV_PATH"; then WDEVENV_PATH=`dirname "$WDEVENV_PATH"` @@ -975,9 +1068,11 @@ if test "$COMEX" = "8" -o "$COMEX" = "10"; then # Convert to posix path with 8.3 filename restrictions ( No spaces ) WDEVENV_PATH=`cygpath -d "$WDEVENV_PATH"` WDEVENV_PATH=`cygpath -u "$WDEVENV_PATH"` + fi fi AC_SUBST(MIDL_PATH) AC_SUBST(CSC_PATH) +AC_SUBST(NMAKE_PATH) AC_SUBST(FRAME_HOME) AC_SUBST(WDEVENV_PATH) @@ -2012,6 +2107,55 @@ if test \( "$_os" = "WINNT" \) ; then fi AC_SUBST(PSDK_HOME) +dnl ========================================= +dnl Check for the Microsoft DirectX SDK. +dnl ========================================= +if test \( "$_os" = "WINNT" \) ; then + AC_MSG_CHECKING([DirectX SDK files]) + if test -z "$with_directx_home"; then + dnl Lets hope MS keeps the habit of supplying this key even when doc is not installed + DIRECTXSDK_HOME=`cat /proc/registry/HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/DirectX\ SDK/*\ Doc\ Path` + DIRECTXSDK_HOME=`echo "$DIRECTXSDK_HOME" | sed "s@\\\\\\\\[[^\\]]*\\\\\\\\[[^\\]]*\\\$@@"` + DIRECTXSDK_HOME=`cygpath -d "$DIRECTXSDK_HOME"` + DIRECTXSDK_HOME=`cygpath -u "$DIRECTXSDK_HOME"` + else + DIRECTXSDK_HOME="$with_directx_home" + fi + if test -f "$DIRECTXSDK_HOME/Include/strmif.h" ; then + HAVE_DIRECTXSDK_H="yes" + else + HAVE_DIRECTXSDK_H="no" + fi + if test -n "$ENABLE_DIRECTX"; then + if test "$HAVE_DIRECTXSDK_H" = "yes" ; then + AC_MSG_RESULT([found]) + else + AC_MSG_ERROR([DirectX SDK files not found, please use --with-directx-home or -disable-directx.]) + fi + else + DIRECTXSDK_HOME="" + AC_MSG_RESULT([disabled]) + fi +fi +AC_SUBST(DIRECTXSDK_HOME) + +dnl ============================================ +dnl Check for extra include/library files +dnl needed for MS Visual Toolkit compiler build. +dnl ============================================ +if test "$_os" = "WINNT" -a -n "$with_extra_dotnet_files" ; then + AC_MSG_CHECKING([extra include/library files]) + if test -d "$with_extra_dotnet_files"; then + AC_MSG_RESULT([directory found]) + EXTRA_DOTNET_FILES="$with_extra_dotnet_files" + else + AC_MSG_ERROR([invalid directory, please check.]) + fi +else + EXTRA_DOTNET_FILES="" +fi +AC_SUBST(EXTRA_DOTNET_FILES) + dnl *************************************** dnl testing bison and flex exist dnl *************************************** @@ -2153,7 +2297,7 @@ dnl Windows builds need unicows.dll in external/unicows/ dnl =================================================================== if test "$_os" = "WINNT"; then AC_MSG_CHECKING([unicows.dll]) - if test -f ../external/unicows/unicows.dll; then + if test -x ../external/unicows/unicows.dll; then AC_MSG_RESULT([found]) else AC_MSG_ERROR([The Microsoft Layer for Unicode (unicows.dll) is missing in external/unicows/. @@ -2169,7 +2313,7 @@ dnl Windows builds need dbghelp.dll in external/dbghelp/ dnl =================================================================== if test "$_os" = "WINNT"; then AC_MSG_CHECKING([dbghelp.dll]) - if test -f ../external/dbghelp/dbghelp.dll; then + if test -x ../external/dbghelp/dbghelp.dll; then AC_MSG_RESULT([found]) else AC_MSG_ERROR([The dbghelp.dll is missing in external/dbghelp/. @@ -2184,15 +2328,25 @@ dnl =================================================================== dnl Windows builds with .NET need msvcp70.dll/msvcr70.dll in external/msvcp70/ dnl =================================================================== if test "$_os" = "WINNT" -a "$COMEX" = "8"; then - AC_MSG_CHECKING([msvcp70.dll]) - if test -f ../external/msvcp70/msvcp70.dll -a -f ../external/msvcp70/msvcr70.dll; then + AC_MSG_CHECKING([msvcp70.dll/msvcr70.dll]) + if test -x ../external/msvcp70/msvcp70.dll -a -x ../external/msvcp70/msvcr70.dll; then AC_MSG_RESULT([found]) else - AC_MSG_ERROR([msvcp70.dll and/or msvcr70.dll are/is missing in external/msvcp70/. -These dlls are part of the .NET installation and can be found in a directory + MSVCPPATH=`/bin/find "$COMPATH/../.." -iname msvcp70.dll | head -n 1` + MSVCRPATH=`/bin/find "$COMPATH/../.." -iname msvcr70.dll | head -n 1` + if test -n "$MSVCPPATH" -a -n "$MSVCRPATH"; then + cp "$MSVCPPATH" ../external/msvcp70/ && chmod +x ../external/msvcp70/msvcp70.dll && MSVCPCOPY="OK" + cp "$MSVCRPATH" ../external/msvcp70/ && chmod +x ../external/msvcp70/msvcr70.dll && MSVCRCOPY="OK" + fi + if test -z "$MSVCPCOPY" -o -z "$MSVCRCOPY"; then + AC_MSG_ERROR([msvcp70.dll and/or msvcr70.dll are/is missing in the default location. +These dlls are part of the .NET installation and should be found in a directory similar to: "c:\\Program Files\\Microsoft Visual Studio .NET\\Visual C++ .NET Professional - English\\" -Please copy the files to external/msvcp70.]) +As the automatic detection fails please copy the files to external/msvcp70/.]) + else + AC_MSG_RESULT([found and copied]) + fi fi fi @@ -2200,15 +2354,25 @@ dnl =================================================================== dnl Windows builds with .NET 2003 needs msvcp71.dll/msvcr71.dll in external/msvcp71 dnl =================================================================== if test "$_os" = "WINNT" -a "$COMEX" = "10"; then - AC_MSG_CHECKING([msvcp71.dll]) - if test -f ../external/msvcp71/msvcp71.dll -a -f ../external/msvcp71/msvcr71.dll; then + AC_MSG_CHECKING([msvcp71.dll/msvcr71.dll]) + if test -x ../external/msvcp71/msvcp71.dll -a -x ../external/msvcp71/msvcr71.dll; then AC_MSG_RESULT([found]) else - AC_MSG_ERROR([msvcp71.dll and/or msvcr71.dll are/is missing in external/msvcp71/. -These dlls are part of the .NET installation and can be found in a directory + MSVCPPATH=`/bin/find "$COMPATH/../.." -iname msvcp71.dll | head -n 1` + MSVCRPATH=`/bin/find "$COMPATH/../.." -iname msvcr71.dll | head -n 1` + if test -n "$MSVCPPATH" -a -n "$MSVCRPATH"; then + cp "$MSVCPPATH" ../external/msvcp71/ && chmod +x ../external/msvcp71/msvcp71.dll && MSVCPCOPY="OK" + cp "$MSVCRPATH" ../external/msvcp71/ && chmod +x ../external/msvcp71/msvcr71.dll && MSVCRCOPY="OK" + fi + if test -z "$MSVCPCOPY" -o -z "$MSVCRCOPY"; then + AC_MSG_ERROR([msvcp71.dll and/or msvcr71.dll are/is missing in the default location. +These dlls are part of the .NET installation and should be found in a directory similar to: "c:\\Program Files\\Microsoft Visual Studio .NET\\Visual C++ .NET Professional - English\\" -Please copy the files to external/msvcp71.]) +As the automatic detection fails please copy the files to external/msvcp71/.]) + else + AC_MSG_RESULT([found and copied]) + fi fi fi |