[ooo-build-commit] Branch 'ooo/OOO320' - 2 commits - instsetoo_native/inc_ooolangpack instsetoo_native/inc_openoffice instsetoo_native/inc_sdkoo instsetoo_native/inc_ure scp2/source solenv/bin solenv/config solenv/inc

Jan Holesovsky kendy at kemper.freedesktop.org
Fri Nov 20 17:12:41 PST 2009


 instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt |    6 
 instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt  |    6 
 instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt       |    6 
 instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt         |    6 
 scp2/source/activex/file_activex.scp                                |   10 +
 scp2/source/activex/makefile.mk                                     |    4 
 scp2/source/activex/module_activex.scp                              |    2 
 scp2/source/ooo/makefile.mk                                         |    5 
 scp2/source/ooo/module_hidden_ooo.scp                               |    2 
 scp2/source/ooo/registryitem_ooo.scp                                |   15 ++
 scp2/source/ooo/vc_redist.scp                                       |   16 ++
 scp2/source/ooo/windowscustomaction_ooo.scp                         |   18 ++
 scp2/source/winexplorerext/file_winexplorerext.scp                  |   38 +++++
 scp2/source/winexplorerext/makefile.mk                              |    4 
 scp2/source/winexplorerext/module_winexplorerext.scp                |    6 
 scp2/source/winexplorerext/registryitem_winexplorerext.scp          |   72 ++++++++++
 solenv/bin/modules/installer/windows/idtglobal.pm                   |   10 +
 solenv/bin/modules/installer/windows/registry.pm                    |   35 ++++
 solenv/config/sooo320.ini                                           |    1 
 solenv/inc/set_wntx64.mk                                            |   24 ++-
 solenv/inc/tg_wntx64.mk                                             |   12 +
 21 files changed, 288 insertions(+), 10 deletions(-)

New commits:
commit 5a09518e578624f70a122f848a128c0c20dd1bd2
Author: Ivo Hinkelmann <ihi at openoffice.org>
Date:   Fri Nov 20 14:45:32 2009 +0000

    CWS-TOOLING: integrate CWS jl142
    2009-11-11 11:22:36 +0100 jl  r277445 : #i105661# remove version from OpenOffice.org Service Manager (1.0)
    2009-11-11 09:59:32 +0100 jl  r277443 : #i105661# Now only writing the registry keys .../CLSID/AppID/.. and the corresponding AppID key in the ServiceManager class
    2009-11-06 09:51:27 +0100 jl  r277378 : #i105661# writing AppID entry

diff --git a/scp2/source/ooo/registryitem_ooo.scp b/scp2/source/ooo/registryitem_ooo.scp
index 8acb15d..d06c4bd 100644
--- a/scp2/source/ooo/registryitem_ooo.scp
+++ b/scp2/source/ooo/registryitem_ooo.scp
@@ -37,6 +37,13 @@ RegistryItem gid_Regitem_Bau
     Value = "soffice.StarConfigFile.6";
 End
 
+RegistryItem gid_Regitem_AppID__df595024_3257_41b3_bcf1_a51515ad205e
+    ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
+    Subkey = "AppID\{82154420-0FBF-11d4-8313-005004526AB4}";
+    ModuleID = gid_Module_Root;
+    Value = "%PRODUCTNAME Service Manager";
+End
+
 RegistryItem gid_Regitem_Clsid__3ecf78f0_B1_11d2_8ebe_005ad848af_
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     Subkey = "CLSID\{82154420-0FBF-11d4-8313-005004526AB4}";
@@ -44,6 +51,14 @@ RegistryItem gid_Regitem_Clsid__3ecf78f0_B1_11d2_8ebe_005ad848af_
     Value = "%PRODUCTNAME Service Manager (Ver 1.0)";
 End
 
+RegistryItem gid_Regitem_Clsid__3ecf78f0_B1_11d2_8ebe_005ad848af_AppID
+    ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
+    Subkey = "CLSID\{82154420-0FBF-11d4-8313-005004526AB4}";
+    ModuleID = gid_Module_Root;
+    Name = "AppID";
+    Value = "{82154420-0FBF-11d4-8313-005004526AB4}";
+End
+
 RegistryItem gid_Regitem_Clsid__3ecf78f0_B1_11d2_8ebe_005ad848af__Localserver32
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     Subkey = "CLSID\{82154420-0FBF-11d4-8313-005004526AB4}\LocalServer32";
commit e44670b2bec6d066d519caff4c20a915ba5d0529
Author: Ivo Hinkelmann <ihi at openoffice.org>
Date:   Fri Nov 20 13:56:43 2009 +0000

    CWS-TOOLING: integrate CWS tkr28
    2009-11-12 15:21:09 +0100 tkr  r277479 : #i105892# install ifilter for x64 and x86
    2009-11-11 07:39:36 +0100 tkr  r277439 : #105892# declare RegDeleteKeyExA  for mingw
    2009-11-11 07:38:38 +0100 tkr  r277438 : #105892# define KEY_WOW64_64KEY for mingw
    2009-11-10 10:43:56 +0100 tkr  r277422 : #105892# define KEY_WOW64_64KEY for mingw
    2009-11-10 08:41:11 +0100 tkr  r277419 : #105892# define KEY_WOW64_64KEY for mingw
    2009-11-10 08:38:52 +0100 tkr  r277418 : #105892# define KEY_WOW64_64KEY for mingw
    2009-11-10 08:31:09 +0100 tkr  r277417 : #105892# define KEY_WOW64_64KEY for mingw
    2009-11-09 10:08:42 +0100 tkr  r277403 : #105892# define KEY_WOW64_64KEY for mingw
    2009-11-06 14:10:13 +0100 tkr  r277386 : #105892# define KEY_WOW64_64KEY for mingw
    2009-11-06 14:08:29 +0100 tkr  r277384 : #105892# define KEY_WOW64_64KEY for mingw
    2009-11-06 12:09:12 +0100 tkr  r277381 : #105892# new BUILD_X64 variable for wntmsci12
    2009-11-03 14:44:33 +0100 mav  r277321 : #i106476# support 64-bit IE
    2009-11-03 11:53:01 +0100 mav  r277317 : #i106476# support 64-bit IE
    2009-11-03 11:50:31 +0100 mav  r277316 : #i106476# support 64-bit IE
    2009-11-03 10:09:46 +0100 mav  r277313 : #i106476# support 64-bit IE
    2009-11-02 22:21:20 +0100 mav  r277306 : #i106476# support 64-bit IE
    2009-11-02 21:33:49 +0100 mav  r277305 : #i106476# support 64-bit IE
    2009-11-02 13:39:18 +0100 tkr  r277296 : #105892# adjust customaction conditions
    2009-11-02 13:38:02 +0100 tkr  r277295 : #105892# fix reg64 customaction deinstallation
    2009-11-02 12:23:50 +0100 dv  r277292 : #i106129# cygwin uses case sensitive file names
    2009-11-02 08:49:04 +0100 tkr  r277287 : #105892# fix reg64 customaction
    2009-11-01 09:08:16 +0100 tkr  r277283 : #105892# build selected modules in x64 too
    2009-11-01 09:05:59 +0100 tkr  r277282 : #105892# add new registry entries for x64
    2009-11-01 09:04:50 +0100 tkr  r277281 : #105892# add new registry entries for x64
    2009-11-01 09:02:07 +0100 tkr  r277280 : #105892# add new *_x64 libs to instset
    2009-11-01 09:00:51 +0100 tkr  r277279 : #105892# add new BUILD_X64 variable
    2009-11-01 08:59:16 +0100 tkr  r277278 : #105892# add new reg64 customaction
    2009-11-01 08:56:23 +0100 tkr  r277277 : #105892# deliver new x64 libs to solver and made the  client name of the ooofiltproxy depends to x86/x64 builds
    2009-10-30 15:56:01 +0100 mav  r277276 : #i106476# support 64-bit IE
    2009-10-30 15:44:28 +0100 mav  r277275 : #i106476# support 64-bit IE
    2009-10-30 15:43:50 +0100 mav  r277274 : #i106476# support 64-bit IE
    2009-10-30 15:35:58 +0100 dv  r277273 : #i106129# we might need the VCRedist_x64.exe for 64 bit windows
    2009-10-30 13:37:59 +0100 mav  r277267 : #i106476# support 64-bit IE
    2009-10-30 12:51:50 +0100 mav  r277264 : #i106476# support 64-bit IE
    2009-10-30 12:48:15 +0100 mav  r277263 : #i106476# support 64-bit IE
    2009-10-29 15:54:41 +0100 dv  r277255 : #i106129# Don't use debug system libraries until we fully support x64 on windows
    2009-10-29 15:49:54 +0100 dv  r277254 : #i106129# Some changes to support 64Bit Windows
    2009-10-23 13:34:10 +0200 obo  r277159 : #i105892# Windows 64 Bit support
    2009-10-23 13:23:30 +0200 obo  r277153 : #i105892# Windows 64 Bit support SLO->SLO_X64
    2009-10-23 13:15:57 +0200 obo  r277147 : #i105892# Windows 64 Bit support
    2009-10-23 13:12:07 +0200 obo  r277145 : #i105892# Windows 64 Bit support
    2009-10-23 13:04:07 +0200 is  r277143 : #i105892# preparing 64 bit Windows registry table
    2009-10-23 10:27:58 +0200 is  r277133 : #i105892# support for 64 bit registry in scp2

diff --git a/instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt
index c8daa76..4098f92 100644
--- a/instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt
+++ b/instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt
@@ -347,6 +347,12 @@ RadioButton	Value	N					Formatted		The value string associated with this button.
 RadioButton	Width	N	0	32767					The width of the button.
 RadioButton	X	N	0	32767					The horizontal coordinate of the upper left corner of the bounding rectangle of the radio button.
 RadioButton	Y	N	0	32767					The vertical coordinate of the upper left corner of the bounding rectangle of the radio button.
+Reg64	Component_	N			Component	1	Identifier		Foreign key into the Component table referencing component that controls the installing of the registry value.
+Reg64	Key	N					RegPath		The key for the registry value.
+Reg64	Name	Y					Formatted		The registry value name.
+Reg64	Registry	N					Identifier		Primary key, non-localized token.
+Reg64	Root	N	-1	3					The predefined root key for the registry value, one of rrkEnum.
+Reg64	Value	Y					Formatted		The registry value.
 Registry	Component_	N			Component	1	Identifier		Foreign key into the Component table referencing component that controls the installing of the registry value.
 Registry	Key	N					RegPath		The key for the registry value.
 Registry	Name	Y					Formatted		The registry value name.
diff --git a/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
index c8daa76..4098f92 100644
--- a/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
+++ b/instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt
@@ -347,6 +347,12 @@ RadioButton	Value	N					Formatted		The value string associated with this button.
 RadioButton	Width	N	0	32767					The width of the button.
 RadioButton	X	N	0	32767					The horizontal coordinate of the upper left corner of the bounding rectangle of the radio button.
 RadioButton	Y	N	0	32767					The vertical coordinate of the upper left corner of the bounding rectangle of the radio button.
+Reg64	Component_	N			Component	1	Identifier		Foreign key into the Component table referencing component that controls the installing of the registry value.
+Reg64	Key	N					RegPath		The key for the registry value.
+Reg64	Name	Y					Formatted		The registry value name.
+Reg64	Registry	N					Identifier		Primary key, non-localized token.
+Reg64	Root	N	-1	3					The predefined root key for the registry value, one of rrkEnum.
+Reg64	Value	Y					Formatted		The registry value.
 Registry	Component_	N			Component	1	Identifier		Foreign key into the Component table referencing component that controls the installing of the registry value.
 Registry	Key	N					RegPath		The key for the registry value.
 Registry	Name	Y					Formatted		The registry value name.
diff --git a/instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt
index c8daa76..4098f92 100644
--- a/instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt
+++ b/instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt
@@ -347,6 +347,12 @@ RadioButton	Value	N					Formatted		The value string associated with this button.
 RadioButton	Width	N	0	32767					The width of the button.
 RadioButton	X	N	0	32767					The horizontal coordinate of the upper left corner of the bounding rectangle of the radio button.
 RadioButton	Y	N	0	32767					The vertical coordinate of the upper left corner of the bounding rectangle of the radio button.
+Reg64	Component_	N			Component	1	Identifier		Foreign key into the Component table referencing component that controls the installing of the registry value.
+Reg64	Key	N					RegPath		The key for the registry value.
+Reg64	Name	Y					Formatted		The registry value name.
+Reg64	Registry	N					Identifier		Primary key, non-localized token.
+Reg64	Root	N	-1	3					The predefined root key for the registry value, one of rrkEnum.
+Reg64	Value	Y					Formatted		The registry value.
 Registry	Component_	N			Component	1	Identifier		Foreign key into the Component table referencing component that controls the installing of the registry value.
 Registry	Key	N					RegPath		The key for the registry value.
 Registry	Name	Y					Formatted		The registry value name.
diff --git a/instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt
index c8daa76..4098f92 100644
--- a/instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt
+++ b/instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt
@@ -347,6 +347,12 @@ RadioButton	Value	N					Formatted		The value string associated with this button.
 RadioButton	Width	N	0	32767					The width of the button.
 RadioButton	X	N	0	32767					The horizontal coordinate of the upper left corner of the bounding rectangle of the radio button.
 RadioButton	Y	N	0	32767					The vertical coordinate of the upper left corner of the bounding rectangle of the radio button.
+Reg64	Component_	N			Component	1	Identifier		Foreign key into the Component table referencing component that controls the installing of the registry value.
+Reg64	Key	N					RegPath		The key for the registry value.
+Reg64	Name	Y					Formatted		The registry value name.
+Reg64	Registry	N					Identifier		Primary key, non-localized token.
+Reg64	Root	N	-1	3					The predefined root key for the registry value, one of rrkEnum.
+Reg64	Value	Y					Formatted		The registry value.
 Registry	Component_	N			Component	1	Identifier		Foreign key into the Component table referencing component that controls the installing of the registry value.
 Registry	Key	N					RegPath		The key for the registry value.
 Registry	Name	Y					Formatted		The registry value name.
diff --git a/scp2/source/activex/file_activex.scp b/scp2/source/activex/file_activex.scp
index 8cc1c45..5f257af 100644
--- a/scp2/source/activex/file_activex.scp
+++ b/scp2/source/activex/file_activex.scp
@@ -37,6 +37,16 @@ File gid_File_Lib_Soactivex
     Name = "so_activex.dll";
 End
 
+#ifdef BUILD_X64
+	File gid_File_Lib_Soactivex64
+		TXT_FILE_BODY;
+		Styles = (PACKED);
+		Dir = SCP2_OOO_BIN_DIR;
+		Name = "so_activex_x64.dll";
+		ComponentCondition = "VersionNT64";
+	End
+#endif
+
 File gid_File_Lib_Regactivex_Msi
     TXT_FILE_BODY;
     Styles = (PACKED, BINARYTABLE, BINARYTABLE_ONLY);
diff --git a/scp2/source/activex/makefile.mk b/scp2/source/activex/makefile.mk
index 25a64f0..8609703 100644
--- a/scp2/source/activex/makefile.mk
+++ b/scp2/source/activex/makefile.mk
@@ -41,6 +41,10 @@ TARGETTYPE=CUI
 
 .INCLUDE :	settings.mk
 
+.IF "$(BUILD_X64)"!=""
+SCPDEFS+=-DBUILD_X64
+.ENDIF
+
 SCP_PRODUCT_TYPE=osl
 
 .IF "$(GUI)"=="WNT"
diff --git a/scp2/source/activex/module_activex.scp b/scp2/source/activex/module_activex.scp
index 074e5f3..4d39208 100644
--- a/scp2/source/activex/module_activex.scp
+++ b/scp2/source/activex/module_activex.scp
@@ -37,5 +37,5 @@ Module gid_Module_Optional_Activexcontrol
     Default = NO;
     Minimal = NO;
     ParentID = gid_Module_Optional;
-    Files = (gid_File_Lib_Soactivex, gid_File_Lib_Regactivex_Msi, gid_File_Lib_Regpatchactivex_Msi);
+    Files = (gid_File_Lib_Soactivex, gid_File_Lib_Soactivex64, gid_File_Lib_Regactivex_Msi, gid_File_Lib_Regpatchactivex_Msi);
 End
diff --git a/scp2/source/ooo/makefile.mk b/scp2/source/ooo/makefile.mk
index 2402774..345f28a 100644
--- a/scp2/source/ooo/makefile.mk
+++ b/scp2/source/ooo/makefile.mk
@@ -53,6 +53,11 @@ SCPDEFS+=-DENABLE_CRASHDUMP
 SCPDEFS+=-DBUILD_SPECIAL
 .ENDIF
 
+.IF "$(BUILD_X64)"!=""
+SCPDEFS+=-DBUILD_X64
+.ENDIF
+
+
 SCPDEFS+=-DINCLUDE_JAVA_ACCESSBRIDGE
 
 .IF "$(PROF_EDITION)"!=""
diff --git a/scp2/source/ooo/module_hidden_ooo.scp b/scp2/source/ooo/module_hidden_ooo.scp
index a6e276b..e203085 100644
--- a/scp2/source/ooo/module_hidden_ooo.scp
+++ b/scp2/source/ooo/module_hidden_ooo.scp
@@ -411,8 +411,6 @@ Module gid_Module_Root_Files_5
 	gid_File_Lib_Reg4allmsdoc,
 	gid_File_Lib_Qslnkmsi,
 	gid_File_Lib_Sdqsmsi,
-	gid_File_Lib_OOoFilt,
-	gid_File_Lib_OOoFiltProxy,
 	gid_File_Lib_Instooofiltmsi,
 	gid_File_Lib_Smplmail,
 	gid_File_Lib_Gconfebe,
diff --git a/scp2/source/ooo/vc_redist.scp b/scp2/source/ooo/vc_redist.scp
index 427f698..cefdd69 100644
--- a/scp2/source/ooo/vc_redist.scp
+++ b/scp2/source/ooo/vc_redist.scp
@@ -40,6 +40,16 @@ WindowsCustomAction gid_Customaction_InstallRuntime
 	Assignment1 = ("InstallUISequence", "VersionNT >= 600 and VersionNT < 700 And OLDPRODUCTSSAMEMAJOR And Not REMOVE=\"ALL\" And Not PATCH", "ExecuteAction");
 End
 
+WindowsCustomAction gid_Customaction_InstallRuntime_X64
+	Name = "InstallRuntimeX64";
+	Typ = "98";
+	Source = "SystemFolder";
+	Target = "[SourceDir]redist\vcredist_x64.exe /qb";
+	Inbinarytable = 0;
+    Styles = (NO_FILE);
+	Assignment1 = ("InstallUISequence", "Not REMOVE=\"ALL\" And Not PATCH And VersionNT64", "ExecuteAction");
+End
+
 ScpAction scp_Copy_vcredist_x86
   #if defined(BUILD_SPECIAL)
     Copy = "vcredist_x86_9.0.21022.218.exe";
@@ -49,4 +59,10 @@ ScpAction scp_Copy_vcredist_x86
     Name = "vcredist_x86.exe";
     Subdir = "redist";
 End
+
+ScpAction scp_Copy_vcredist_x64
+    Copy = "vcredist_x64.exe";
+    Name = "vcredist_x64.exe";
+    Subdir = "redist";
+End
 #endif
diff --git a/scp2/source/ooo/windowscustomaction_ooo.scp b/scp2/source/ooo/windowscustomaction_ooo.scp
index d5ececc..b4ddac3 100755
--- a/scp2/source/ooo/windowscustomaction_ooo.scp
+++ b/scp2/source/ooo/windowscustomaction_ooo.scp
@@ -75,6 +75,24 @@ WindowsCustomAction gid_Customaction_Regactivexdll2
 	Assignment1 = ("InstallExecuteSequence", "\&FEATURETEMPLATE=2 And \!FEATURETEMPLATE=3 And Not PATCH", "RemoveExistingProducts");
 End
 
+WindowsCustomAction gid_Customaction_Reg64dll1
+	Name = "Reg64dll1";
+	Typ = "65";
+	Source = "reg64msi.dll";
+	Target = "InstallReg64";
+	Inbinarytable = 1;
+	Assignment1 = ("InstallExecuteSequence", "Not REMOVE=\"ALL\" and VersionNT64", "end");
+End
+
+WindowsCustomAction gid_Customaction_Reg64dll2
+	Name = "Reg64dll2";
+	Typ = "65";
+	Source = "reg64msi.dll";
+	Target = "DeinstallReg64";
+	Inbinarytable = 1;
+	Assignment1 = ("InstallExecuteSequence", "REMOVE=\"ALL\" and VersionNT64", "end");
+End
+
 WindowsCustomAction gid_Customaction_Jfregcadll1
 	Name = "Jfregcadll1";
 	Typ = "65";
diff --git a/scp2/source/winexplorerext/file_winexplorerext.scp b/scp2/source/winexplorerext/file_winexplorerext.scp
index 2f6b126..dd8b891 100644
--- a/scp2/source/winexplorerext/file_winexplorerext.scp
+++ b/scp2/source/winexplorerext/file_winexplorerext.scp
@@ -49,6 +49,26 @@ File gid_File_Lib_OOoFiltProxy
     Name = "ooofiltproxy.dll";
 End
 
+#ifdef BUILD_X64
+
+File gid_File_Lib_OOoFilt64
+    TXT_FILE_BODY;
+    Styles = (PACKED);
+    Dir = gid_Dir_Shlxthdl;
+    Name = "ooofilt_x64.dll";
+    ComponentCondition = "VersionNT64";
+End
+
+File gid_File_Lib_OOoFiltProxy64
+    TXT_FILE_BODY;
+    Styles = (PACKED);
+    Dir = gid_Dir_Shlxthdl;
+    Name = "ooofiltproxy_x64.dll";
+    ComponentCondition = "VersionNT64";
+End
+
+#endif
+
 File gid_File_Lib_Shlxthdl
     TXT_FILE_BODY;
     Styles = (PACKED);
@@ -56,6 +76,17 @@ File gid_File_Lib_Shlxthdl
     Name = "shlxthdl.dll";
 End
 
+#ifdef BUILD_X64
+	File gid_File_Lib_Shlxthdl64
+    TXT_FILE_BODY;
+    Styles = (PACKED);
+    Dir = gid_Dir_Shlxthdl;
+    Name = "shlxthdl_x64.dll";
+    ComponentCondition = "VersionNT64";
+End
+
+#endif
+
 #if defined M1310
 File gid_File_Lib_Shlxthdl_Msvcr71
     TXT_FILE_BODY;
@@ -94,3 +125,10 @@ File gid_File_Lib_Shlxtmsi
     Dir = SCP2_OOO_BIN_DIR;
     Name = "shlxtmsi.dll";
 End
+
+File gid_File_Lib_Reg64
+    TXT_FILE_BODY;
+    Styles = (PACKED, BINARYTABLE, BINARYTABLE_ONLY);
+    Dir = SCP2_OOO_BIN_DIR;
+    Name = "reg64msi.dll";
+End
diff --git a/scp2/source/winexplorerext/makefile.mk b/scp2/source/winexplorerext/makefile.mk
index ce5ae09..6fc8ef0 100644
--- a/scp2/source/winexplorerext/makefile.mk
+++ b/scp2/source/winexplorerext/makefile.mk
@@ -41,6 +41,10 @@ TARGETTYPE=CUI
 
 .INCLUDE :	settings.mk
 
+.IF "$(BUILD_X64)"!=""
+SCPDEFS+=-DBUILD_X64
+.ENDIF
+
 SCP_PRODUCT_TYPE=osl
 
 .IF "$(GUI)"=="WNT"
diff --git a/scp2/source/winexplorerext/module_winexplorerext.scp b/scp2/source/winexplorerext/module_winexplorerext.scp
index 203648b..c1f0ac7 100644
--- a/scp2/source/winexplorerext/module_winexplorerext.scp
+++ b/scp2/source/winexplorerext/module_winexplorerext.scp
@@ -38,8 +38,14 @@ Module gid_Module_Optional_Winexplorerext
     ParentID = gid_Module_Optional;
     Dirs = (gid_Dir_Shlxthdl);
     Files = (gid_File_Lib_Shlxthdl,
+			 gid_File_Lib_Shlxthdl64,
+			 gid_File_Lib_OOoFilt,
+			 gid_File_Lib_OOoFiltProxy,
+			 gid_File_Lib_OOoFilt64,
+			 gid_File_Lib_OOoFiltProxy64,
              gid_File_Lib_Shlxthdl_Msvcr71,
              gid_File_Lib_Shlxthdl_Stlport,
              gid_File_Lib_Shlxtmsi,
+             gid_File_Lib_Reg64,
              gid_File_Tmp_Userinstall_Winexplorerext_Inf);    
 End
diff --git a/scp2/source/winexplorerext/registryitem_winexplorerext.scp b/scp2/source/winexplorerext/registryitem_winexplorerext.scp
index 0ce3c57..472b099 100644
--- a/scp2/source/winexplorerext/registryitem_winexplorerext.scp
+++ b/scp2/source/winexplorerext/registryitem_winexplorerext.scp
@@ -36,16 +36,20 @@
 RegistryItem gid_Regitem_Clsid_087B3AE3_E237_4467_B8DB_5A38AB959AC9_InProcServer32
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     ModuleID = gid_Module_Optional_Winexplorerext;
+    Styles = (X64);
     Subkey = "CLSID\{087B3AE3-E237-4467-B8DB-5A38AB959AC9}\InprocServer32";
     Value = "\"[BASISINSTALLLOCATION]program\shlxthdl\shlxthdl.dll\"";
+    Val64 = "\"[BASISINSTALLLOCATION]program\shlxthdl\shlxthdl_x64.dll\"";
 End
 
 RegistryItem gid_Regitem_Clsid_087B3AE3_E237_4467_B8DB_5A38AB959AC9_InProcServer32_ThreadingModel
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     ModuleID = gid_Module_Optional_Winexplorerext;
+    Styles = (X64);
     Subkey = "CLSID\{087B3AE3-E237-4467-B8DB-5A38AB959AC9}\InprocServer32";
     Name = "ThreadingModel";
     Value = "Apartment";
+    Val64 = "Apartment";
 End
 
 // End registry items for the Infotip handler
@@ -55,16 +59,20 @@ End
 RegistryItem gid_Regitem_Clsid_3B092F0C_7696_40E3_A80F_68D74DA84210_InProcServer32
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     ModuleID = gid_Module_Optional_Winexplorerext;
+    Styles = (X64);
     Subkey = "CLSID\{3B092F0C-7696-40E3-A80F-68D74DA84210}\InprocServer32";
     Value = "\"[BASISINSTALLLOCATION]program\shlxthdl\shlxthdl.dll\"";
+    Val64 = "\"[BASISINSTALLLOCATION]program\shlxthdl\shlxthdl_x64.dll\"";
 End
 
 RegistryItem gid_Regitem_Clsid_3B092F0C_7696_40E3_A80F_68D74DA84210_InProcServer32_ThreadingModel
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     ModuleID = gid_Module_Optional_Winexplorerext;
+    Styles = (X64);
     Subkey = "CLSID\{3B092F0C-7696-40E3-A80F-68D74DA84210}\InprocServer32";
     Name = "ThreadingModel";
     Value = "Apartment";
+    Val64 = "Apartment";
 End
 
 // End registry items for the Thumbnail viewer
@@ -74,42 +82,106 @@ End
 RegistryItem gid_Regitem_Folder_shellex_ColumnHandlers_C52AF81D_F7A0_4AAB_8E87_F80A60CCD396
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     ModuleID = gid_Module_Optional_Winexplorerext;
+    Styles = (X64);
     Subkey = "Folder\shellex\ColumnHandlers\{C52AF81D-F7A0-4AAB-8E87-F80A60CCD396}";
     Value = "OpenOffice.org Column Handler";
+    Val64 = "OpenOffice.org Column Handler";
 End
 
 RegistryItem gid_Regitem_Clsid_C52AF81D_F7A0_4AAB_8E87_F80A60CCD396_InProcServer32
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     ModuleID = gid_Module_Optional_Winexplorerext;
+    Styles = (X64);
     Subkey = "CLSID\{C52AF81D-F7A0-4AAB-8E87-F80A60CCD396}\InprocServer32";
     Value = "\"[BASISINSTALLLOCATION]program\shlxthdl\shlxthdl.dll\"";
+    Val64 = "\"[BASISINSTALLLOCATION]program\shlxthdl\shlxthdl_x64.dll\"";
 End
     
 RegistryItem gid_Regitem_Clsid_C52AF81D_F7A0_4AAB_8E87_F80A60CCD396_InProcServer32_ThreadingModel
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     ModuleID = gid_Module_Optional_Winexplorerext;
+    Styles = (X64);
     Subkey = "CLSID\{C52AF81D-F7A0-4AAB-8E87-F80A60CCD396}\InprocServer32";
     Name = "ThreadingModel";
     Value = "Apartment";
+    Val64 = "Apartment";
 End
     
 // End registry items for the Column handler
 
+// Begin registry items for the MS Indexing server filter component
+
+RegistryItem gid_Regitem_Clsid_7BC0E710_5703_45BE_A29D_5D46D8B39262
+    ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
+    ModuleID = gid_Module_Root;
+    Subkey = "CLSID\{7BC0E710-5703-45BE-A29D-5D46D8B39262}";
+// Better?: "OpenOffice.org Format Filter"
+// old:    Value = "opendocument.org Filter";
+	Styles = (X64_ONLY); // Values: X64
+    Value = "OpenDocument Format Filter";
+    Val64 = "OpenDocument Format Filter";
+End
+
+RegistryItem gid_Regitem_Clsid_7BC0E710_5703_45BE_A29D_5D46D8B39262_InProcServer32
+    ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
+    ModuleID = gid_Module_Root;
+    Subkey = "CLSID\{7BC0E710-5703-45BE-A29D-5D46D8B39262}\InprocServer32";
+    Styles = (X64); // Values: X64 / X64_ONLY
+    Value = "[BASISINSTALLLOCATION]program\shlxthdl\ooofiltproxy.dll";
+    Val64 = "[BASISINSTALLLOCATION]program\shlxthdl\ooofiltproxy_x64.dll";
+End
+
+RegistryItem gid_Regitem_Clsid_7BC0E710_5703_45BE_A29D_5D46D8B39262_InProcServer32_ThreadingModel
+    ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
+    ModuleID = gid_Module_Root;
+    Subkey = "CLSID\{7BC0E710-5703-45BE-A29D-5D46D8B39262}\InprocServer32";
+    Styles = (X64); // Values: X64
+    Name = "ThreadingModel";
+    Value = "Apartment";
+    Val64 = "Apartment";
+End
+
+RegistryItem gid_Regitem_Clsid_7BC0E713_5703_45BE_A29D_5D46D8B39262
+    ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
+    ModuleID = gid_Module_Root;
+    Subkey = "CLSID\{7BC0E713-5703-45BE-A29D-5D46D8B39262}";
+//? Better: "OpenOffice.org Persistent Handler"
+// old:    Value = "opendocument.org Persistent Handler";
+	Styles = (X64); // Values: X64
+    Value = "OpenDocument Format Persistent Handler";
+    Val64 = "OpenDocument Format Persistent Handler";
+End
+
+RegistryItem gid_Regitem_Clsid_7BC0E713_5703_45BE_A29D_5D46D8B39262_PersistentAddinsRegistered
+    ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
+    ModuleID = gid_Module_Root;
+    Styles = (X64); // Values: X64
+    Subkey = "CLSID\{7BC0E713-5703-45BE-A29D-5D46D8B39262}\PersistentAddinsRegistered\{89BCB740-6119-101A-BCB7-00DD010655AF}";
+    Value = "{7BC0E710-5703-45BE-A29D-5D46D8B39262}";
+    Val64 = "{7BC0E710-5703-45BE-A29D-5D46D8B39262}";
+End
+
+// End registry items for the MS Indexing server filter component
+
 // Begin registry entries for the PropertySheet handler
 
 RegistryItem gid_Regitem_Clsid_63542C48_9552_494A_84F7_73AA6A7C99C1_InProcServer32
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     ModuleID = gid_Module_Optional_Winexplorerext;
+    Styles = (X64);
     Subkey = "CLSID\{63542C48-9552-494A-84F7-73AA6A7C99C1}\InprocServer32";
     Value = "\"[BASISINSTALLLOCATION]program\shlxthdl\shlxthdl.dll\"";
+    Val64 = "\"[BASISINSTALLLOCATION]program\shlxthdl\shlxthdl_x64.dll\"";
 End
 
 RegistryItem gid_Regitem_Clsid_63542C48_9552_494A_84F7_73AA6A7C99C1_InProcServer32_ThreadingModel
     ParentID = PREDEFINED_HKEY_CLASSES_ROOT;
     ModuleID = gid_Module_Optional_Winexplorerext;
+    Styles = (X64);
     Subkey = "CLSID\{63542C48-9552-494A-84F7-73AA6A7C99C1}\InprocServer32";
     Name = "ThreadingModel";
     Value = "Apartment";
+    Val64 = "Apartment";
 End
 
 // End registry entries for the PropertySheet handler
diff --git a/solenv/bin/modules/installer/windows/idtglobal.pm b/solenv/bin/modules/installer/windows/idtglobal.pm
index 81f6130..2c55139 100644
--- a/solenv/bin/modules/installer/windows/idtglobal.pm
+++ b/solenv/bin/modules/installer/windows/idtglobal.pm
@@ -484,6 +484,16 @@ sub write_idt_header
         push(@{$idtref}, $oneline);
     }
 
+    if ( $definestring eq "reg64" )
+    {
+        $oneline = "Registry\tRoot\tKey\tName\tValue\tComponent_\n";
+        push(@{$idtref}, $oneline);
+        $oneline = "s72\ti2\tl255\tL255\tL0\ts72\n";
+        push(@{$idtref}, $oneline);
+        $oneline = "Reg64\tRegistry\n";
+        push(@{$idtref}, $oneline);
+    }
+
     if ( $definestring eq "createfolder" )
     {
         $oneline = "Directory_\tComponent_\n";
diff --git a/solenv/bin/modules/installer/windows/registry.pm b/solenv/bin/modules/installer/windows/registry.pm
index a2db8c1..edcae0d 100644
--- a/solenv/bin/modules/installer/windows/registry.pm
+++ b/solenv/bin/modules/installer/windows/registry.pm
@@ -216,6 +216,27 @@ sub get_registry_value
 }
 
 ##############################################################
+# Returning 64 bit value for registry table.
+##############################################################
+
+sub get_registry_val64
+{
+    my ($registry, $allvariableshashref) = @_;
+
+    my $value = "";
+
+    if ( $registry->{'Val64'} ) { $value = $registry->{'Val64'}; }
+    
+    $value =~ s/\\\"/\"/g;	# no more masquerading of '"'
+    $value =~ s/\<progpath\>/\[OFFICEINSTALLLOCATION\]/;
+    $value =~ s/\[OFFICEINSTALLLOCATION\]\\/\[OFFICEINSTALLLOCATION\]/;	# removing "\" after "[OFFICEINSTALLLOCATION]"
+
+    if ( $value =~ /\%/ ) { $value = installer::worker::replace_variables_in_string($value, $allvariableshashref); }
+
+    return $value;
+}
+
+##############################################################
 # Returning component for registry table.
 ##############################################################
 
@@ -286,8 +307,10 @@ sub create_registry_table
         my $onelanguage = ${$languagesarrayref}[$m];
 
         my @registrytable = ();
+        my @reg64table = ();
     
         installer::windows::idtglobal::write_idt_header(\@registrytable, "registry");
+        installer::windows::idtglobal::write_idt_header(\@reg64table, "reg64");
 
         for ( my $i = 0; $i <= $#{$registryref}; $i++ )
         {
@@ -306,6 +329,7 @@ sub create_registry_table
             $registry{'Key'} = get_registry_key($oneregistry, $allvariableshashref); 		
             $registry{'Name'} = get_registry_name($oneregistry, $allvariableshashref);
             $registry{'Value'} = get_registry_value($oneregistry, $allvariableshashref);
+            $registry{'Val64'} = get_registry_val64($oneregistry, $allvariableshashref);
             $registry{'Component_'} = get_registry_component($oneregistry, $allvariableshashref);	
     
             # Collecting all components
@@ -343,7 +367,11 @@ sub create_registry_table
             my $oneline = $registry{'Registry'} . "\t" . $registry{'Root'} . "\t" . $registry{'Key'} . "\t"
                         . $registry{'Name'} . "\t" . $registry{'Value'} . "\t" . $registry{'Component_'} . "\n";
 
-            push(@registrytable, $oneline);	
+            my $oneline64 = $registry{'Registry'} . "\t" . $registry{'Root'} . "\t" . $registry{'Key'} . "\t"
+                        . $registry{'Name'} . "\t" . $registry{'Val64'} . "\t" . $registry{'Component_'} . "\n";
+
+            if ( ! ( $style =~ /\bX64_ONLY\b/ )) { push(@registrytable, $oneline); }	# standard registry table for 32 Bit 
+            if (( $style =~ /\bX64\b/ ) || ( $style =~ /\bX64_ONLY\b/ )) { push(@reg64table , $oneline64); }
         }
 
         # If there are added user registry keys for files collected in
@@ -360,6 +388,11 @@ sub create_registry_table
         installer::files::save_file($registrytablename ,\@registrytable);
         my $infoline = "Created idt file: $registrytablename\n";
         push(@installer::globals::logfileinfo, $infoline);
+
+        $registrytablename = $basedir . $installer::globals::separator . "Reg64.idt" . "." . $onelanguage;
+        installer::files::save_file($registrytablename ,\@reg64table );
+        my $infoline = "Created idt file: $registrytablename\n";
+        push(@installer::globals::logfileinfo, $infoline);
     }
 }
 
diff --git a/solenv/config/sooo320.ini b/solenv/config/sooo320.ini
index dfd69e2..9cd0b5a 100644
--- a/solenv/config/sooo320.ini
+++ b/solenv/config/sooo320.ini
@@ -3458,6 +3458,7 @@ wntmsci12
             WITH_VC_REDIST TRUE
 			XCLASSPATH .
 			ZIPDEP %PERL% %SOLARENV%$/bin$/zipdep.pl
+			BUILD_X64 TRUE
 		}
 		common0
 		{
diff --git a/solenv/inc/set_wntx64.mk b/solenv/inc/set_wntx64.mk
index 35d9e48..a6962c2 100644
--- a/solenv/inc/set_wntx64.mk
+++ b/solenv/inc/set_wntx64.mk
@@ -46,8 +46,12 @@ LIBMGR_X64=$(WRAPCMD) $(LIBMGR_X64_BINARY) $(NOLOGO)
 IMPLIB_X64=$(WRAPCMD) $(LIBMGR_X64_BINARY)
 
 USE_CFLAGS_X64=-c -nologo -Gs $(NOLOGO) -Zm500 -Zc:forScope,wchar_t- -GR
-USE_CFLAGS_X64+=$(CFLAGS_X64)
 USE_CDEFS_X64+= -DWIN32 -D_AMD64_=1 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NON_CONFORMING_SWPRINTFS
+.IF "$(debug)"!=""
+USE_CFLAGS_X64+=-Zi -Fd$(MISC_X64)/$(@:b).pdb
+USE_CDEFS_X64+=-DDEBUG
+.ENDIF # "$(debug)"!=""
+USE_CFLAGS_X64+=$(CFLAGS_X64)
 USE_CDEFS_X64+=$(CDEFS_X64)
 INCLUDE_X64=$(subst,/stl$(SPACECHAR),dont_use_stl$(SPACECHAR) $(INCLUDE))
 
@@ -85,6 +89,10 @@ LINKFLAGS_X64+= -NODEFAULTLIB -RELEASE -DEBUG -INCREMENTAL:NO
 .ENDIF # "$(PRODUCT)"!="full"
 MAPFILE=-out:$$@
 
+.IF "$(debug)" != ""
+LINKFLAGS_X64+= $(LINKFLAGSDEBUG)
+.ENDIF
+
 LINKFLAGSSHLCUI_X64=/SUBSYSTEM:CONSOLE /DLL
 LINKFLAGSSHL_X64=$(LINKFLAGSSHLCUI_X64)
 CDEFSSLO_X64+=$(CDEFSMT_X64) $(CDEFSOBJMT_X64)
@@ -98,7 +106,7 @@ STDSLOCUI_X64=
 IMPLIBFLAGS_X64=-machine:X64
 
 LIBPATH_X64=$(PSDK)/lib/x64
-LIBPATH_VC_X64=$(PSDK)/vc/lib/x64
+LIBPATH_VC_X64=$(COMPATH)/lib/amd64
 
 ADVAPI32LIB_X64=$(LIBPATH_X64)/advapi32.lib
 SHELL32LIB_X64=$(LIBPATH_X64)/shell32.lib
@@ -182,8 +190,16 @@ DEF1TARGETN_X64=$(MISC_X64)/$(DEF1NAME_X64).def
 .IF "$(DEF2NAME_X64)"!=""
 DEF2TARGETN_X64=$(MISC_X64)/$(DEF2NAME_X64).def
 .ENDIF
-.ENDIF # "$(BUILD_X64)"!=""
-
 
+$(SLO_X64)/%.obj : $(MISC_X64)/%.c
+    @echo ------------------------------
+    @echo Making: $@
+    -$(MKDIR) $(@:d)
+    @-$(MKDIR) $(MISC_X64)
+    @@-$(RM) $@
+    @$(TYPE) $(mktmp $(CC_X64) $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(MISC_X64)/$*.c )
+    @$(ECHONL)
+    $(CC_X64) @$(mktmp $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(MISC_X64)/$*.c )
 
+.ENDIF # "$(BUILD_X64)"!=""
 
diff --git a/solenv/inc/tg_wntx64.mk b/solenv/inc/tg_wntx64.mk
index 607e107..87fbd26 100644
--- a/solenv/inc/tg_wntx64.mk
+++ b/solenv/inc/tg_wntx64.mk
@@ -489,18 +489,27 @@ $(SHL2IMPLIBN_X64):	\
 .ENDIF 			# "$(SHL2TARGETN_X64)"!=""
 
 
+$(SLO_X64)/%.obj : %.cpp
+    @echo ------------------------------
+    @echo Making: $@
+    @@-$(RM) $@ >& $(NULLDEV)
+    -$(MKDIR) $(@:d)
+    @-$(MKDIR) $(MISC_X64)
+    $(CAPTURE_COMMAND) $(CXX_X64) $(USE_CFLAGS_X64) $(INCLUDE_X64) $(CFLAGSCXX_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CDEFSMT_X64) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cpp $(CAPTURE_OUTPUT)
 
 $(SLO_X64)/%.obj : %.cxx
     @echo ------------------------------
     @echo Making: $@
     @@-$(RM) $@ >& $(NULLDEV)
     -$(MKDIR) $(@:d)
+    @-$(MKDIR) $(MISC_X64)
     $(CAPTURE_COMMAND) $(CXX_X64) $(USE_CFLAGS_X64) $(INCLUDE_X64) $(CFLAGSCXX_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CDEFSMT_X64) $(!eq,$(EXCEPTIONSFILES),$(subst,$@, $(EXCEPTIONSFILES)) $(LOCAL_EXCEPTIONS_FLAGS) $(GLOBAL_EXCEPTIONS_FLAGS)) $(CFLAGSAPPEND) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(CFLAGSINCXX)$(PWD)/$*.cxx $(CAPTURE_OUTPUT)
 
 $(SLO_X64)/%.obj : $(MISC)/%.c
     @echo ------------------------------
     @echo Making: $@
     -$(MKDIR) $(@:d)
+    @-$(MKDIR) $(MISC_X64)
     @@-$(RM) $@
     @$(TYPE) $(mktmp $(CC_X64) $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $(MISC)/$*.c )
     @$(ECHONL)
@@ -510,9 +519,8 @@ $(SLO_X64)/%.obj : %.c
     @echo ------------------------------
     @echo Making: $@
     -$(MKDIR) $(@:d)
+    @-$(MKDIR) $(MISC_X64)
     @@-$(RM) $@
     $(CC_X64) @$(mktmp $(USE_CFLAGS_X64) $(INCLUDE_C) $(CFLAGSCC_X64) $(CFLAGSSLO_X64) $(USE_CDEFS_X64) $(CDEFSSLO_X64) $(CDEFSMT_X64) $(CFLAGSAPPEND_X64) $(CFLAGSOUTOBJ)$(SLO_X64)/$*.obj $*.c )
 
 .ENDIF			# "$(BUILD_X64)"!=""
-
-BUILD64=1


More information about the ooo-build-commit mailing list