summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKurt Zenker <kz@openoffice.org>2009-12-03 16:14:12 +0100
committerKurt Zenker <kz@openoffice.org>2009-12-03 16:14:12 +0100
commit2ad4d24cb67d91dc037c31fd23b57f889e3e3fc5 (patch)
treee7c2243996299e88f94350c65745fe2302e1842c
parent018d3ca085f5495a2832e38d5442cf68d46eea7b (diff)
parentc8e66142b9fd5bd81b4e6649986355a95c41b68b (diff)
update to current version
-rw-r--r--instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt6
-rw-r--r--instsetoo_native/inc_openoffice/windows/msi_templates/_Validat.idt6
-rw-r--r--instsetoo_native/inc_sdkoo/windows/msi_templates/_Validat.idt6
-rw-r--r--instsetoo_native/inc_ure/windows/msi_templates/_Validat.idt6
-rw-r--r--scp2/source/activex/file_activex.scp10
-rw-r--r--scp2/source/activex/makefile.mk4
-rw-r--r--scp2/source/activex/module_activex.scp2
-rw-r--r--scp2/source/ooo/makefile.mk5
-rw-r--r--scp2/source/ooo/module_hidden_ooo.scp2
-rw-r--r--scp2/source/ooo/registryitem_ooo.scp15
-rw-r--r--scp2/source/ooo/vc_redist.scp16
-rwxr-xr-xscp2/source/ooo/windowscustomaction_ooo.scp18
-rw-r--r--scp2/source/winexplorerext/file_winexplorerext.scp38
-rw-r--r--scp2/source/winexplorerext/makefile.mk4
-rw-r--r--scp2/source/winexplorerext/module_winexplorerext.scp6
-rw-r--r--scp2/source/winexplorerext/registryitem_winexplorerext.scp72
-rw-r--r--solenv/bin/modules/installer/windows/idtglobal.pm10
-rw-r--r--solenv/bin/modules/installer/windows/registry.pm35
-rw-r--r--solenv/config/sdev300.ini1
-rw-r--r--solenv/inc/set_wntx64.mk24
-rw-r--r--solenv/inc/tg_wntx64.mk12
21 files changed, 288 insertions, 10 deletions
diff --git a/instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt b/instsetoo_native/inc_ooolangpack/windows/msi_templates/_Validat.idt
index c8daa765f115..4098f92c3578 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 c8daa765f115..4098f92c3578 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 c8daa765f115..4098f92c3578 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 c8daa765f115..4098f92c3578 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 8cc1c45e17e7..5f257af2e1b8 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 25a64f07cb64..86097032f455 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 074e5f36f064..4d39208f5d14 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 24027743d58a..345f28a8762c 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 a6e276b1cb07..e20308572219 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/registryitem_ooo.scp b/scp2/source/ooo/registryitem_ooo.scp
index 8acb15d4eeed..d06c4bd3864c 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";
diff --git a/scp2/source/ooo/vc_redist.scp b/scp2/source/ooo/vc_redist.scp
index 427f698bd467..cefdd69ce034 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 d5ececcbac73..b4ddac39799b 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 2f6b12619530..dd8b8912ae8c 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 ce5ae0935ba6..6fc8ef03b382 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 203648b7371e..c1f0ac7f9010 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 0ce3c5781510..472b0998ee33 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 991f0025e714..e9ad0c73d249 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 832fd213a9f0..9f9da9485677 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/sdev300.ini b/solenv/config/sdev300.ini
index efee6a3e61b8..7e0466fd8921 100644
--- a/solenv/config/sdev300.ini
+++ b/solenv/config/sdev300.ini
@@ -3486,6 +3486,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 fb8178f7e510..23dbee21d2cd 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 def76718733e..987b81276748 100644
--- a/solenv/inc/tg_wntx64.mk
+++ b/solenv/inc/tg_wntx64.mk
@@ -484,16 +484,25 @@ $(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 Making: $@
@@-$(RM) $@ >& $(NULLDEV)
$(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)@-$(MKDIR) $(MISC_X64)
$(COMMAND_ECHO)$(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 Making: $@
$(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)@-$(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)
@@ -502,9 +511,8 @@ $(SLO_X64)/%.obj : $(MISC)/%.c
$(SLO_X64)/%.obj : %.c
@echo Making: $@
$(COMMAND_ECHO)-$(MKDIR) $(@:d)
+ $(COMMAND_ECHO)@-$(MKDIR) $(MISC_X64)
@@-$(RM) $@
$(COMMAND_ECHO)$(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