ooo-build r12421 - in trunk: . patches/dev300



Author: tml
Date: Fri May  2 08:00:20 2008
New Revision: 12421
URL: http://svn.gnome.org/viewvc/ooo-build?rev=12421&view=rev

Log:
2008-05-02  Tor Lillqvist  <tml novell com>

	* patches/src680/msvs9-temporary-fix.diff
	(config_office/oowintool): Drop MSVS6, MSVC .NET 2002 and MSVS
	.NET 2002. Require the .NET Framework 2.0 ("2.0.50727") in
	--csc-compilerdir (because cli_ure/source/basetypes/makefile.mk de
	facto requires it, as it uses the -keyfile options which was not
	in the 1.1 csc.exe). Correspondingly require .NET Framework SDK
	2.0 in --dotnetsdk-dir. Copy also msvcm*.dll and
	Microsoft.VC90.CRT.manifest in msvc_copy_dlls when using MSVS2008
	or later.
	(config_office/configure.in): Rely on oowintool to handle the
	copying of the CRT DLLs and manifest. That's what oowintool is for
	after all. Drop the attempt to do it here, including the horrible
	repeated running of /bin/find. Still could do lots more cleaning
	up of crap from here.



Modified:
   trunk/ChangeLog
   trunk/patches/dev300/msvs9-temporary-fix.diff

Modified: trunk/patches/dev300/msvs9-temporary-fix.diff
==============================================================================
--- trunk/patches/dev300/msvs9-temporary-fix.diff	(original)
+++ trunk/patches/dev300/msvs9-temporary-fix.diff	Fri May  2 08:00:20 2008
@@ -21,6 +21,31 @@
      defined $value || die "psdk not found";
  
      print cygpath ($value, 'w', $output_format);
+@@ -110,24 +110,6 @@
+     print cygpath ($value, 'w', $output_format);
+ }
+ 
+-my %msvc6 = (
+-    'ver' => '6.0',
+-    'key' => 'Microsoft/VisualStudio/6.0/Setup/Microsoft Visual C++/ProductDir',
+-);
+-my %msvc_net_2002 = (
+-    'ver' => '7.0',
+-    'key' => 'Microsoft/VisualStudio/7.0/Setup/VC/ProductDir',
+-    'instmsi_path' => '../Common7/Tools/Deployment/MsiRedist',
+-    'dll_path' => '../Visual Studio .NET Professional - English', # testme ...
+-    'dll_suffix' => '70'
+-);
+-my %msvs_net_2002 = (
+-    'ver' => '7.0',
+-    'key' => 'Microsoft/VisualStudio/7.0/Setup/VS/ProductDir',
+-    'instmsi_path' => 'Common7/Tools/Deployment/MsiRedist',
+-    'dll_path' => 'Visual Studio .NET Professional - English', # testme ...
+-    'dll_suffix' => '70'
+-);
+ my %msvc_net_2003 = (
+     'ver' => '7.1',
+     'key' => 'Microsoft/VisualStudio/7.1/Setup/VC/ProductDir',
 @@ -128,14 +132,14 @@
      'ver' => '7.1',
      'key' => 'Microsoft/VisualStudio/7.1/Setup/VC/ProductDir',
@@ -60,7 +85,7 @@
  sub find_msvs()
  {
 -    my @ms_versions = ( \%msvs_express_2005, \%msvs_net_2003_ea, \%msvs_net_2003, \%msvs_net_2002, \%msvc6 );
-+    my @ms_versions = ( \%msvs_2008, \%msvs_express_2005, \%msvs_net_2003_ea, \%msvs_net_2003, \%msvs_net_2002, \%msvc6 );
++    my @ms_versions = ( \%msvs_2008, \%msvs_express_2005, \%msvs_net_2003_ea, \%msvs_net_2003 );
  
      for $ver (@ms_versions)
      {
@@ -69,10 +94,26 @@
  sub find_msvc()
  {
 -    my @ms_versions = ( \%msvc_express_2005, \%msvc_net_2003, \%msvc_net_2002, \%msvc6 );
-+    my @ms_versions = ( \%msvc_2008, \%msvc_express_2005, \%msvc_net_2003, \%msvc_net_2002, \%msvc6 );
++    my @ms_versions = ( \%msvc_2008, \%msvc_express_2005, \%msvc_net_2003 );
  
      for $ver (@ms_versions)
      {
+@@ -235,13 +235,13 @@
+ sub print_csc_compiler_dir()
+ {
+     my $dir = reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/.NETFramework/InstallRoot");
+-    $dir .= "v1.1.4322"; # lame-but ...
++    $dir .= "v2.0.50727"; # lame, but...
+     print cygpath ($dir, 'w', $output_format);
+ }
+ 
+ sub print_dotnetsdk_dir()
+ {
+-    my $dir = reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/.NETFramework/sdkInstallRootv1.1");
++    my $dir = reg_get_value ("HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/.NETFramework/sdkInstallRootv2.0");
+     print cygpath ($dir, 'w', $output_format);
+ }
+ 
 @@ -242,6 +260,7 @@
      -f "$src/$fname" || die "can't find $src";
      -d $dest || die "no directory $dest";
@@ -90,6 +131,18 @@
  }
  
  sub msvc_copy_dlls($)
+@@ -291,6 +291,11 @@
+ 	      $dest . $ver->{'dll_suffix'});
+     copy_dll ($srcdir, "msvcr" . $ver->{'dll_suffix'} . ".dll",
+ 	      $dest . $ver->{'dll_suffix'});
++    if ($ver->{'dll_suffix'} >= 90) {
++        copy_dll ($srcdir, "msvcm" . $ver->{'dll_suffix'} . ".dll",
++                  $dest . $ver->{'dll_suffix'});
++        copy_dll ($srcdir, "Microsoft.VC90.CRT.manifest", $dest . $ver->{'dll_suffix'});
++    }
+ }
+ 
+ sub msvc_copy_instmsi($)
 --- config_office/configure.in
 +++ config_office/configure.in
 @@ -1758,6 +1758,12 @@
@@ -114,3 +167,111 @@
               FRAME_HOME="$frametest"
            fi
  	    fi
+@@ -5046,10 +5046,14 @@
+ fi
+ 
+ dnl ===================================================================
+-dnl Windows builds - attempt to auto-copy required dlls into external/
++dnl Windows builds - use oowintool to copy CRT dlls and manifest
+ dnl ===================================================================
+ if test "$_os" = "WINNT"; then
+-       ./oowintool --msvc-copy-dlls ../external/msvcp
++       if ./oowintool --msvc-copy-dlls ../external/msvcp ; then
++          :
++       else
++          AC_MSG_ERROR([oowintool failed to copy CRT])
++       fi
+ fi
+ 
+ dnl ===================================================================
+@@ -5067,90 +5067,6 @@
+    fi
+ fi
+ 
+-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([for msvcp71.dll/msvcr71.dll])
+-   if test -x ../external/msvcp71/msvcp71.dll -a -x ../external/msvcp71/msvcr71.dll; then
+-      AC_MSG_RESULT([found])
+-   else
+-      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 2003\\Visual C++ .NET Professional - English\\"
+-As the automatic detection fails please copy the files to external/msvcp71/.])
+-      else
+-         AC_MSG_RESULT([found and copied])
+-      fi
+-   fi
+-fi
+-
+-dnl ===================================================================
+-dnl Windows builds with Visual C++ 2005 needs msvc{p,r}80.dll in external/msvcp80
+-dnl ===================================================================
+-if test "$_os" = "WINNT" -a "$COMEX" = "11"; then
+-   AC_MSG_CHECKING([for msvcp80.dll/msvcr80.dll])
+-   if test -x ../external/msvcp80/msvcp80.dll -a -x ../external/msvcp80/msvcr80.dll; then
+-      AC_MSG_RESULT([found])
+-   else
+-      MSVCPPATH=`/bin/find "$COMPATH/../.." -iname msvcp80.dll | head -n 1`
+-      MSVCRPATH=`/bin/find "$COMPATH/../.." -iname msvcr80.dll | head -n 1`
+-      if test -n "$MSVCPPATH" -a -n "$MSVCRPATH"; then
+-         cp "$MSVCPPATH" ../external/msvcp80/ && chmod +x ../external/msvcp80/msvcp80.dll && MSVCPCOPY="OK"
+-         cp "$MSVCRPATH" ../external/msvcp80/ && chmod +x ../external/msvcp80/msvcr80.dll && MSVCRCOPY="OK"
+-      fi
+-      if test -z "$MSVCPCOPY" -o -z "$MSVCRCOPY"; then
+-         AC_MSG_ERROR([msvcp80.dll and/or msvcr80.dll are/is missing in the default location.
+-These dlls are part of the VS installation and should be found in a directory
+-similar to:
+-"c:\\Program Files\\<no-idea>"
+-As the automatic detection fails please copy the files to external/msvcp80/.])
+-      else
+-         AC_MSG_RESULT([found and copied])
+-      fi
+-   fi
+-fi
+-
+-dnl ===================================================================
+-dnl Windows builds with Visual Studio 2008 needs msvc{m,p,r}90.dll in external/msvcp90
+-dnl ===================================================================
+-if test "$_os" = "WINNT"; then
+-   if test "$COMEX" = "12"; then
+-   AC_MSG_CHECKING([for msvcm90.dll/msvcp90.dll/msvcr90.dll/Microsoft.VC90.CRT.manifest])
+-   if test -x ../external/msvcp90/msvcm90.dll -a -x ../external/msvcp90/msvcp90.dll -a -x ../external/msvcp90/msvcr90.dll -a -x ../external/msvcp90/Microsoft.VC90.CRT.manifest; then
+-      AC_MSG_RESULT([found])
+-   else
+-      MSVCMPATH=`/bin/find "$COMPATH/../.." -iname msvcm90.dll | head -n 1`
+-      MSVCPPATH=`/bin/find "$COMPATH/../.." -iname msvcp90.dll | head -n 1`
+-      MSVCRPATH=`/bin/find "$COMPATH/../.." -iname msvcr90.dll | head -n 1`
+-      MSVCMANPATH=`/bin/find "$COMPATH/../.." -iname Microsoft.VC90.CRT.manifest | head -n 1`
+-      if test -n "$MSVCMPATH" -a -n "$MSVCPPATH" -a -n "$MSVCRPATH" -a -n "$MSVCMANPATH"; then
+-         cp "$MSVCMPATH" ../external/msvcp90/ && chmod +x ../external/msvcp90/msvcm90.dll && MSVCMCOPY="OK"
+-         cp "$MSVCPPATH" ../external/msvcp90/ && chmod +x ../external/msvcp90/msvcp90.dll && MSVCPCOPY="OK"
+-         cp "$MSVCRPATH" ../external/msvcp90/ && chmod +x ../external/msvcp90/msvcr90.dll && MSVCRCOPY="OK"
+-         cp "$MSVCMANPATH" ../external/msvcp90/ && chmod +x ../external/msvcp90/Microsoft.VC90.CRT.manifest && MSVCMANCOPY="OK"
+-      fi
+-      if test -z "$MSVCMCOPY" -o -z "$MSVCPCOPY" -o -z "$MSVCRCOPY" -o -z "$MSVCMANCOPY"; then
+-         AC_MSG_ERROR([Any or all of msvcm90.dll, msvcp90.dll, msvcr90.dll and Microsoft.VC90.CRT.manifest are missing in the default location.
+-These dlls are part of the VS installation and should be found in a directory
+-similar to:
+-"C:\\Program Files\\Microsoft Visual Studio 9.0\\VC\\redist\\x86\\Microsoft.VC90.CRT\\"
+-As the automatic detection fails please copy the files to external/msvcp90/.])
+-      else
+-         AC_MSG_RESULT([found and copied])
+-      fi
+-   fi
+-fi
+-fi
+-
+ dnl ===================================================================
+ dnl Windows builds - attempt to auto-copy required instmsiX.exe into external/
+ dnl ===================================================================



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]