More work on making the x64 installer work. TODOs added. X86 install clean compiles
authorRod Widdowson <rdw@steadingsoftware.com>
Mon, 7 May 2012 16:04:44 +0000 (16:04 +0000)
committerRod Widdowson <rdw@steadingsoftware.com>
Mon, 7 May 2012 16:04:44 +0000 (16:04 +0000)
msi/WiX/Compile.bat
msi/WiX/MergeModules/Curl-x86.wxs
msi/WiX/MergeModules/OpenSAML-schemas.wxs
msi/WiX/MergeModules/XmlTooling-schemas.wxs
msi/WiX/MergeModules/Zlib-x64.wxs
msi/WiX/ShibbolethSP-defs-x86.wxi [new file with mode: 0644]
msi/WiX/ShibbolethSP-main-x64.wxs
msi/WiX/ShibbolethSP-main-x86.wxs [new file with mode: 0644]
msi/WiX/ShibbolethSP-noarch.wxs
msi/WiX/ShibbolethSP-properties.wxi

index 8ba5b9c..41e5f69 100644 (file)
@@ -17,4 +17,8 @@ wixcop -indent:2 ShibbolethSP-main-x64.wxs
 candle ShibbolethSP-main-x64.wxs
 light -sw1055 -sice:ICE82 -o ShibbolethSP-main-x64.msi ShibbolethSP-main-x64.wixobj ShibbolethSP-exe-x64.wixobj ShibbolethSP-registry-x64.wixobj  ShibbolethSP-noarch.wixobj ShibbolethSP-exe-x86.wixobj ShibbolethSP-registry-x86.wixobj
 
+wixcop -indent:2 ShibbolethSP-main-x86.wxs
+candle ShibbolethSP-main-x86.wxs
+light -sw1055 -sice:ICE82 -o ShibbolethSP-main-x86.msi ShibbolethSP-main-x86.wixobj ShibbolethSP-noarch.wixobj ShibbolethSP-exe-x86.wixobj ShibbolethSP-registry-x86.wixobj
+
 
index 784092a..4762aae 100644 (file)
@@ -22,7 +22,7 @@
   <Module Id='CurlMergeModule_x86' Language='1033' Version='$(var.CurlVersion)'>\r
     <Package Id='10467105-6375-49E1-AC35-045084BD8FA4' Description='Merge Module for CURL (x86)'\r
              Comments='This module is built by the Shibboleth Consortium.'\r
-             Manufacturer='Shibboleth Consortium' InstallerVersion='405' Platform='x64'/>\r
+             Manufacturer='Shibboleth Consortium' InstallerVersion='400'/>\r
 \r
     <Directory Id='TARGETDIR' Name='SourceDir'>\r
       <Directory Id='ProgramFilesFolder' Name='ProgramFiles'>\r
index d3411b4..3315e45 100644 (file)
 \r
     <Directory Id='TARGETDIR' Name='SourceDir'>\r
       <Directory Id='CommonAppDataFolder' Name='CommonFiles' >\r
-        <Directory Id='common_shibboleth' Name='Shibboleth' >\r
-          <Directory Id='common_sp' Name='SP' >\r
-            <Directory Id='common_doc' Name='doc'\r
-                       FileSource='$(var.BuildDirectory)\cvs\2.0\cpp-opensaml\schemas\' >\r
-              <Component Id='schema_assertion_01' Guid='{3BB83A55-9212-40F4-86E1-D95CEDAE5501}'>\r
-                <File Name='cs-sstc-schema-assertion-01.xsd' KeyPath='yes' />\r
-              </Component>\r
-              <Component Id='schema_assertion_1_1' Guid='{71ED2BC0-50EE-48D5-9649-5F7C5A8388F3}'>\r
-                <File Name='cs-sstc-schema-assertion-1.1.xsd' KeyPath='yes' />\r
-              </Component>\r
-              <Component Id='schema_protocol_1_1' Guid='{DD3829CB-F91A-4291-85F8-771E0930E9F1}'>\r
-                <File Name="cs-sstc-schema-protocol-01.xsd" KeyPath="yes" />\r
-              </Component>\r
-              <Component Id='schema_protocol_01' Guid='{E0CD8123-B42F-4F15-B4B4-A4F99DE68F8E}'>\r
-                <File Name='cs-sstc-schema-protocol-1.1.xsd'/>\r
-              </Component>\r
-              <Component Id='samlschema' Guid='{355CA6A9-57F9-491D-8D1A-33161CDE6DF1}' >\r
-                <File Name='saml10-catalog.xml' \r
-                      Source='$(var.BuildDirectory)\cvs\2.0\cpp-opensaml\schemas\saml10-catalog.xml.in' />\r
-                <File Name='saml11-catalog.xml' \r
-                      Source='$(var.BuildDirectory)\cvs\2.0\cpp-opensaml\schemas\saml11-catalog.xml.in' />\r
-                <File Name='saml20-catalog.xml' \r
-                      Source='$(var.BuildDirectory)\cvs\2.0\cpp-opensaml\schemas\saml20-catalog.xml.in' />\r
-                <File Name='saml-schema-assertion-2.0.xsd'/>\r
-                <File Name='saml-schema-authn-context-2.0.xsd'/>\r
-                <File Id='a_c_auth_telephony2.0.xsd' \r
-                      Name='saml-schema-authn-context-auth-telephony-2.0.xsd'/>\r
-                <File Id='a_c_ip2.0.xsd' Name='saml-schema-authn-context-ip-2.0.xsd'/>\r
-                <File Id='a_c_ippword2.0.xsd' Name='saml-schema-authn-context-ippword-2.0.xsd'/>\r
-                <File Id='a_c_kerberos2.0.xsd' Name='saml-schema-authn-context-kerberos-2.0.xsd'/>\r
-                <File Id='a_c_mobileonefactorreg2.0.xsd' \r
-                      Name='saml-schema-authn-context-mobileonefactor-reg-2.0.xsd'/>\r
-                <File Id='a_c_mobileonefactorunreg2.0.xsd' \r
-                      Name='saml-schema-authn-context-mobileonefactor-unreg-2.0.xsd'/>\r
-                <File Id='a_c_mobiletwofactorreg2.0.xsd' \r
-                      Name='saml-schema-authn-context-mobiletwofactor-reg-2.0.xsd'/>\r
-                <File Id='a_c_mobiletwofactorunreg2.0.xsd' \r
-                      Name='saml-schema-authn-context-mobiletwofactor-unreg-2.0.xsd'/>\r
-                <File Id='a_c_nomadtelephony2.0.xsd' \r
-                      Name='saml-schema-authn-context-nomad-telephony-2.0.xsd' KeyPath='yes' />\r
-                <File Id='a_c_personaltelephony2.0.xsd' \r
-                      Name='saml-schema-authn-context-personal-telephony-2.0.xsd'/>\r
-                <File Id='a_c_pgp2.0.xsd' Name='saml-schema-authn-context-pgp-2.0.xsd'/>\r
-                <File Id='a_c_ppt2.0.xsd' Name='saml-schema-authn-context-ppt-2.0.xsd'/>\r
-                <File Id='a_c_pword2.0.xsd' Name='saml-schema-authn-context-pword-2.0.xsd'/>\r
-                <File Id='a_c_session2.0.xsd' Name='saml-schema-authn-context-session-2.0.xsd'/>\r
-                <File Id='a_c_smartcard2.0.xsd' Name='saml-schema-authn-context-smartcard-2.0.xsd'/>\r
-                <File Id='a_c_smartcardpki2.0.xsd' Name='saml-schema-authn-context-smartcardpki-2.0.xsd'/>\r
-                <File Id='a_c_softwarepki2.0.xsd' Name='saml-schema-authn-context-softwarepki-2.0.xsd'/>\r
-                <File Id='a_c_spki2.0.xsd' Name='saml-schema-authn-context-spki-2.0.xsd'/>\r
-                <File Id='a_c_srp2.0.xsd' Name='saml-schema-authn-context-srp-2.0.xsd'/>\r
-                <File Id='a_c_sslcert2.0.xsd' Name='saml-schema-authn-context-sslcert-2.0.xsd'/>\r
-                <File Id='a_c_telephony2.0.xsd' Name='saml-schema-authn-context-telephony-2.0.xsd'/>\r
-                <File Id='a_c_timesync2.0.xsd' Name='saml-schema-authn-context-timesync-2.0.xsd'/>\r
-                <File Id='a_c_types2.0.xsd' Name='saml-schema-authn-context-types-2.0.xsd'/>\r
-                <File Id='a_c_x5092.0.xsd' Name='saml-schema-authn-context-x509-2.0.xsd'/>\r
-                <File Id='a_c_xmldsig2.0.xsd' Name='saml-schema-authn-context-xmldsig-2.0.xsd'/>\r
+        <Directory Id='Shibboleth' Name='Shibboleth' >\r
+          <Directory Id='SP' Name='SP' >\r
+            <Directory Id='xml' Name='xml' >\r
+              <Directory Id='opensaml' Name='opensaml'\r
+                         FileSource='$(var.BuildDirectory)\cvs\2.0\cpp-opensaml\schemas\' >\r
+                <Component Id='schema_assertion_01' Guid='{3BB83A55-9212-40F4-86E1-D95CEDAE5501}'>\r
+                  <File Name='cs-sstc-schema-assertion-01.xsd' KeyPath='yes' />\r
+                </Component>\r
+                <Component Id='schema_assertion_1_1' Guid='{71ED2BC0-50EE-48D5-9649-5F7C5A8388F3}'>\r
+                  <File Name='cs-sstc-schema-assertion-1.1.xsd' KeyPath='yes' />\r
+                </Component>\r
+                <Component Id='schema_protocol_1_1' Guid='{DD3829CB-F91A-4291-85F8-771E0930E9F1}'>\r
+                  <File Name="cs-sstc-schema-protocol-01.xsd" KeyPath="yes" />\r
+                </Component>\r
+                <Component Id='schema_protocol_01' Guid='{E0CD8123-B42F-4F15-B4B4-A4F99DE68F8E}'>\r
+                  <File Name='cs-sstc-schema-protocol-1.1.xsd'/>\r
+                </Component>\r
+                <Component Id='samlschema' Guid='{355CA6A9-57F9-491D-8D1A-33161CDE6DF1}' >\r
+                  <File Name='saml10-catalog.xml' \r
+                        Source='$(var.BuildDirectory)\cvs\2.0\cpp-opensaml\schemas\saml10-catalog.xml.in' />\r
+                  <File Name='saml11-catalog.xml' \r
+                        Source='$(var.BuildDirectory)\cvs\2.0\cpp-opensaml\schemas\saml11-catalog.xml.in' />\r
+                  <File Name='saml20-catalog.xml' \r
+                        Source='$(var.BuildDirectory)\cvs\2.0\cpp-opensaml\schemas\saml20-catalog.xml.in' />\r
+                  <File Name='saml-schema-assertion-2.0.xsd'/>\r
+                  <File Name='saml-schema-authn-context-2.0.xsd'/>\r
+                  <File Id='a_c_auth_telephony2.0.xsd' \r
+                        Name='saml-schema-authn-context-auth-telephony-2.0.xsd'/>\r
+                  <File Id='a_c_ip2.0.xsd' Name='saml-schema-authn-context-ip-2.0.xsd'/>\r
+                  <File Id='a_c_ippword2.0.xsd' Name='saml-schema-authn-context-ippword-2.0.xsd'/>\r
+                  <File Id='a_c_kerberos2.0.xsd' Name='saml-schema-authn-context-kerberos-2.0.xsd'/>\r
+                  <File Id='a_c_mobileonefactorreg2.0.xsd' \r
+                        Name='saml-schema-authn-context-mobileonefactor-reg-2.0.xsd'/>\r
+                  <File Id='a_c_mobileonefactorunreg2.0.xsd' \r
+                        Name='saml-schema-authn-context-mobileonefactor-unreg-2.0.xsd'/>\r
+                  <File Id='a_c_mobiletwofactorreg2.0.xsd' \r
+                        Name='saml-schema-authn-context-mobiletwofactor-reg-2.0.xsd'/>\r
+                  <File Id='a_c_mobiletwofactorunreg2.0.xsd' \r
+                        Name='saml-schema-authn-context-mobiletwofactor-unreg-2.0.xsd'/>\r
+                  <File Id='a_c_nomadtelephony2.0.xsd' \r
+                        Name='saml-schema-authn-context-nomad-telephony-2.0.xsd' KeyPath='yes' />\r
+                  <File Id='a_c_personaltelephony2.0.xsd' \r
+                        Name='saml-schema-authn-context-personal-telephony-2.0.xsd'/>\r
+                  <File Id='a_c_pgp2.0.xsd' Name='saml-schema-authn-context-pgp-2.0.xsd'/>\r
+                  <File Id='a_c_ppt2.0.xsd' Name='saml-schema-authn-context-ppt-2.0.xsd'/>\r
+                  <File Id='a_c_pword2.0.xsd' Name='saml-schema-authn-context-pword-2.0.xsd'/>\r
+                  <File Id='a_c_session2.0.xsd' Name='saml-schema-authn-context-session-2.0.xsd'/>\r
+                  <File Id='a_c_smartcard2.0.xsd' Name='saml-schema-authn-context-smartcard-2.0.xsd'/>\r
+                  <File Id='a_c_smartcardpki2.0.xsd' Name='saml-schema-authn-context-smartcardpki-2.0.xsd'/>\r
+                  <File Id='a_c_softwarepki2.0.xsd' Name='saml-schema-authn-context-softwarepki-2.0.xsd'/>\r
+                  <File Id='a_c_spki2.0.xsd' Name='saml-schema-authn-context-spki-2.0.xsd'/>\r
+                  <File Id='a_c_srp2.0.xsd' Name='saml-schema-authn-context-srp-2.0.xsd'/>\r
+                  <File Id='a_c_sslcert2.0.xsd' Name='saml-schema-authn-context-sslcert-2.0.xsd'/>\r
+                  <File Id='a_c_telephony2.0.xsd' Name='saml-schema-authn-context-telephony-2.0.xsd'/>\r
+                  <File Id='a_c_timesync2.0.xsd' Name='saml-schema-authn-context-timesync-2.0.xsd'/>\r
+                  <File Id='a_c_types2.0.xsd' Name='saml-schema-authn-context-types-2.0.xsd'/>\r
+                  <File Id='a_c_x5092.0.xsd' Name='saml-schema-authn-context-x509-2.0.xsd'/>\r
+                  <File Id='a_c_xmldsig2.0.xsd' Name='saml-schema-authn-context-xmldsig-2.0.xsd'/>\r
 \r
-                <File Name='saml-schema-dce-2.0.xsd'/>\r
-                <File Name='saml-schema-ecp-2.0.xsd'/>\r
-                <File Name='saml-schema-metadata-2.0.xsd'/>\r
-                <File Name='saml-schema-protocol-2.0.xsd'/>\r
-                <File Name='saml-schema-x500-2.0.xsd'/>\r
-                <File Name='saml-schema-xacml-2.0.xsd'/>\r
+                  <File Name='saml-schema-dce-2.0.xsd'/>\r
+                  <File Name='saml-schema-ecp-2.0.xsd'/>\r
+                  <File Name='saml-schema-metadata-2.0.xsd'/>\r
+                  <File Name='saml-schema-protocol-2.0.xsd'/>\r
+                  <File Name='saml-schema-x500-2.0.xsd'/>\r
+                  <File Name='saml-schema-xacml-2.0.xsd'/>\r
 \r
-                <File Name='sstc-metadata-attr.xsd'/>\r
-                <File Name='sstc-request-initiation.xsd'/>\r
-                <File Name='sstc-saml1x-metadata.xsd'/>\r
-                <File Name='sstc-saml-attribute-ext.xsd'/>\r
-                <File Name='sstc-saml-delegation.xsd'/>\r
-                <File Name='sstc-saml-idp-discovery.xsd' />\r
-                <File Id='metadata_algsupportv1.0' Name='sstc-saml-metadata-algsupport-v1.0.xsd'/>\r
-                <File Name='sstc-saml-metadata-ext-query.xsd'/>\r
-                <File Name='sstc-saml-metadata-ui-v1.0.xsd'/>\r
-                <File Id='protoco_ext_thirdpaty.xsd' Name='sstc-saml-protocol-ext-thirdparty.xsd'/>\r
-              </Component>\r
-            </Directory><!--common_doc-->\r
-          </Directory><!--common_sp-->\r
-        </Directory><!--common_shibboleth-->\r
+                  <File Name='sstc-metadata-attr.xsd'/>\r
+                  <File Name='sstc-request-initiation.xsd'/>\r
+                  <File Name='sstc-saml1x-metadata.xsd'/>\r
+                  <File Name='sstc-saml-attribute-ext.xsd'/>\r
+                  <File Name='sstc-saml-delegation.xsd'/>\r
+                  <File Name='sstc-saml-idp-discovery.xsd' />\r
+                  <File Id='metadata_algsupportv1.0' Name='sstc-saml-metadata-algsupport-v1.0.xsd'/>\r
+                  <File Name='sstc-saml-metadata-ext-query.xsd'/>\r
+                  <File Name='sstc-saml-metadata-ui-v1.0.xsd'/>\r
+                  <File Id='protoco_ext_thirdpaty.xsd' Name='sstc-saml-protocol-ext-thirdparty.xsd'/>\r
+                </Component>\r
+              </Directory><!--opensaml-->\r
+            </Directory><!--xml-->\r
+          </Directory><!--SP-->\r
+        </Directory><!--Shibboleth-->\r
       </Directory><!--CommonAppDataFolder-->\r
     </Directory><!--TargetDir-->\r
   </Module>\r
index e10870b..f1f595b 100644 (file)
@@ -1,19 +1,19 @@
 <?xml version='1.0' encoding='UTF-8'?>\r
 <!-- Licensed to the University Corporation for Advanced Internet\r
-   Development, Inc. (UCAID) under one or more contributor license\r
-   agreements.  See the NOTICE file distributed with this work for\r
-   additional information regarding copyright ownership. The UCAID\r
-   licenses this file to You under the Apache License, Version 2.0\r
-   (the "License"); you may not use this file except in compliance\r
-   with the License.  You may obtain a copy of the License at\r
\r
+     Development, Inc. (UCAID) under one or more contributor license\r
+     agreements.  See the NOTICE file distributed with this work for\r
+     additional information regarding copyright ownership. The UCAID\r
+     licenses this file to You under the Apache License, Version 2.0\r
+     (the "License"); you may not use this file except in compliance\r
+     with the License.  You may obtain a copy of the License at\r
+     \r
      http://www.apache.org/licenses/LICENSE-2.0\r
\r
-   Unless required by applicable law or agreed to in writing, software\r
-   distributed under the License is distributed on an "AS IS" BASIS,\r
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\r
-   implied.  See the License for the specific language governing\r
-   permissions and limitations under the License.  -->\r
+     \r
+     Unless required by applicable law or agreed to in writing, software\r
+     distributed under the License is distributed on an "AS IS" BASIS,\r
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\r
+     implied.  See the License for the specific language governing\r
+     permissions and limitations under the License.  -->\r
 \r
 <?include ..\Versions.wxi ?>\r
 \r
 \r
     <Directory Id='TARGETDIR' Name='SourceDir'>\r
       <Directory Id='CommonAppDataFolder' Name='CommonFiles' >\r
-        <Directory Id='common_shibboleth' Name='Shibboleth' >\r
-          <Directory Id='common_sp' Name='SP' >\r
-            <Directory Id='common_doc' Name='doc' \r
-                       FileSource='$(var.BuildDirectory)\cvs\2.0\cpp-xmltooling\schemas\' >\r
-              <Component Id='xmltoolingschema' Guid='{2197D645-3AA3-46F1-B250-0F964B901A94}'>\r
-                <File Name='xenc-schema.xsd'/>\r
-                <File Name='xmldsig-core-schema.xsd'  />\r
-                <File Name='soap-envelope.xsd'  />\r
-                <File Name='xml.xsd'  />\r
-                <File Name='xmltooling.xsd'  />\r
-                <File Name='catalog.xml' Source='$(var.BuildDirectory)\cvs\2.0\cpp-xmltooling\schemas\catalog.xml.in'  />\r
-                <File Name='xmldsig11-schema.xsd' />\r
-              </Component>\r
-            </Directory><!--common_doc-->\r
-          </Directory><!--common_sp-->\r
-        </Directory><!--common_shibboleth-->\r
+        <Directory Id='Shibboleth' Name='Shibboleth' >\r
+          <Directory Id='SP' Name='SP' >\r
+            <Directory Id='xml' Name='xml' >\r
+              <Directory Id='xmltooling' Name='xmltooling'\r
+                         FileSource='$(var.BuildDirectory)\cvs\2.0\cpp-xmltooling\schemas\' >\r
+                <Component Id='xmltoolingschema' Guid='{2197D645-3AA3-46F1-B250-0F964B901A94}'>\r
+                  <File Name='xenc-schema.xsd'/>\r
+                  <File Name='xmldsig-core-schema.xsd'  />\r
+                  <File Name='soap-envelope.xsd'  />\r
+                  <File Name='xml.xsd'  />\r
+                  <File Name='xmltooling.xsd'  />\r
+                  <File Name='catalog.xml' Source='$(var.BuildDirectory)\cvs\2.0\cpp-xmltooling\schemas\catalog.xml.in'  />\r
+                  <File Name='xmldsig11-schema.xsd' />\r
+                </Component>\r
+              </Directory><!--xmltooling-->\r
+            </Directory><!--xml-->\r
+          </Directory><!--SP-->\r
+        </Directory><!--Shibboleth-->\r
       </Directory><!--CommonAppDataFolder-->\r
     </Directory><!--TargetDir-->\r
   </Module>\r
index c97db27..210a599 100644 (file)
             <Directory Id='lib' Name='lib'>\r
               <Component Id='zlib1.dll' Guid='{792D44C3-3DCE-465D-AAFF-520AB2F20DA2}' Win64='yes'>\r
                 <File KeyPath='yes'\r
-                      Source='$(var.BuildDirectory)\zlib-$(var.ZlibVersion)\projects\visualc6\Win32_DLL_Release\zlib$(var.ZlibFileVersion).dll'/>\r
+                      Source='$(var.BuildDirectory)\zlib-$(var.ZlibVersion)\projects\visualc6\Win64_DLL_Release\zlib$(var.ZlibFileVersion).dll'/>\r
               </Component>\r
               <Directory Id='lib_debug' Name='debug'>\r
                 <Component Id='zlib1d.dll' Guid='{74D67C6F-655E-4E4D-A147-39F32DB6E796}' Win64='yes'>\r
                   <File Id='zlib1d.dll' KeyPath='yes' \r
-                        Source='$(var.BuildDirectory)\zlib-$(var.ZlibVersion)\projects\visualc6\Win32_DLL_Debug\zlib$(var.ZlibFileVersion)d.dll'/>\r
+                        Source='$(var.BuildDirectory)\zlib-$(var.ZlibVersion)\projects\visualc6\Win64_DLL_Debug\zlib$(var.ZlibFileVersion)d.dll'/>\r
                 </Component>\r
               </Directory><!-- lib_debug-->\r
             </Directory><!-- lib -->\r
diff --git a/msi/WiX/ShibbolethSP-defs-x86.wxi b/msi/WiX/ShibbolethSP-defs-x86.wxi
new file mode 100644 (file)
index 0000000..07c14dd
--- /dev/null
@@ -0,0 +1,55 @@
+<?xml version='1.0' encoding='UTF-8'?>\r
+<Include xmlns='http://schemas.microsoft.com/wix/2006/wi'>\r
+  <!-- ShibbolethSP-noarch -->\r
+\r
+  <ComponentRef Id='doc_shibboleth'/>\r
+  <ComponentRef Id='etc_shibboleth_perm'/>\r
+  <ComponentRef Id='etc_shibboleth_nonperm'/>\r
+  <ComponentRef Id='dist_noperm'/>\r
+  <ComponentRef Id='accessError.html'/>\r
+  <ComponentRef Id='apache.config'/>\r
+  <ComponentRef Id='apache2.config'/>\r
+  <ComponentRef Id='metadataError.html'/>\r
+  <ComponentRef Id='native.logger'/>\r
+  <ComponentRef Id='sessionError.html'/>\r
+  <ComponentRef Id='shibd.logger'/>\r
+  <ComponentRef Id='var_log_shibboleth_folder'/>\r
+  <ComponentRef Id='share_xml_shibboleth'/>\r
+  <ComponentRef Id='share_xml_shibboleth_xsd'/>\r
+\r
+  <!-- ShibbolethSP-exe-x64-->\r
+\r
+  <ComponentRef Id='resolvertest.exe'/>\r
+  <ComponentRef Id='mdquery.exe'/>\r
+  <ComponentRef Id='resolvertest.exe_debug'/>\r
+  <ComponentRef Id='mdquery.exe_debug'/>\r
+\r
+  <ComponentRef Id='adfs.so'/>\r
+  <ComponentRef Id='adfslite.so'/>\r
+  <ComponentRef Id='isapi_shib.dll'/>\r
+  <ComponentRef Id='mod_shib_13.so'/>\r
+  <ComponentRef Id='mod_shib_20.so'/>\r
+  <ComponentRef Id='mod_shib_22.so'/>\r
+  <ComponentRef Id='nsapi_shib.dll'/>\r
+  <ComponentRef Id='odbcstore.so'/>\r
+  <ComponentRef Id='shibauthorizer.exe'/>\r
+  <ComponentRef Id='shibresponder.exe'/>\r
+\r
+  <ComponentRef Id='adfsD.so'/>\r
+  <ComponentRef Id='adfsliteD.so'/>\r
+  <ComponentRef Id='isapi_shibD.dll'/>\r
+  <ComponentRef Id='mod_shib_13D.so'/>\r
+  <ComponentRef Id='mod_shib_20D.so'/>\r
+  <ComponentRef Id='mod_shib_22D.so'/>\r
+  <ComponentRef Id='nsapi_shibD.dll'/>\r
+  <ComponentRef Id='odbcstoreD.so'/>\r
+  <ComponentRef Id='shibauthorizerD.exe'/>\r
+  <ComponentRef Id='shibresponderD.exe'/>\r
+\r
+  <ComponentRef Id='shibd.exe'/>\r
+  <ComponentRef Id='shibdD.exe'/>\r
+\r
+  <!-- ShibbolethSP-registry-x32 -->\r
+  <ComponentRef Id='file_extension'/>\r
+  <ComponentRef Id='shib.ico' />\r
+</Include>\r
index e47afb5..fa43875 100644 (file)
@@ -39,7 +39,7 @@
     <!-- Files -->\r
     <Directory Id='TARGETDIR' Name='SourceDir'>\r
       <!-- The test bit -->\r
-      <Directory Id='OPT' Name='opt'>\r
+      <Directory Id='opt' Name='opt'>\r
         <Directory Id='INSTALLDIR' Name='shibboleth-sp'/>\r
       </Directory>\r
 \r
         <Merge Id='FastCGIMergeModule_x86' Language='1033' SourceFile='MergeModules\FastCGI-x86.msm' DiskId='1' />\r
         <Merge Id='Log4ShibMergeModule_x86' Language='1033' SourceFile='MergeModules\Log4Shib-x86.msm' DiskId='1' />\r
         <Merge Id='OpenSAMLMergeModule_x86' Language='1033' SourceFile='MergeModules\OpenSAML-x86.msm' DiskId='1' />\r
+        <Merge Id='OpenSAMLMergeModule_schemas' Language='1033' \r
+               SourceFile='MergeModules\OpenSAML-schemas.msm' DiskId='1' />\r
         <Merge Id='OpenSSLMergeModule_x86' Language='1033' SourceFile='MergeModules\OpenSSL-x86.msm' DiskId='1' />\r
         <Merge Id='ShibbolethMergeModule_x86' Language='1033' SourceFile='MergeModules\Shibboleth-x86.msm' DiskId='1' />\r
         <Merge Id='XercesMergeModule_x86' Language='1033' SourceFile='MergeModules\Xerces-x86.msm' DiskId='1' />\r
         <Merge Id='XmlSecMergeModule_x86' Language='1033' SourceFile='MergeModules\XmlSec-x86.msm' DiskId='1' />\r
         <Merge Id='XmlToolingMergeModule_x86' Language='1033' SourceFile='MergeModules\XmlTooling-x86.msm' DiskId='1' />\r
+        <Merge Id='XmlToolingMergeModule_schemas' Language='1033' \r
+               SourceFile='MergeModules\XmlTooling-schemas.msm' DiskId='1' />\r
         <Merge Id='ZlibMergeModule_x86' Language='1033' SourceFile='MergeModules\Zlib-x86.msm' DiskId='1' />\r
 \r
         <Merge Id='Microsoft_VC100_DebugCRT_x86' Language='1033' \r
         <Merge Id='Microsoft_VC100_CRT_x64' Language='1033' \r
                SourceFile='C:\Program Files (x86)\Common Files\Merge Modules\Microsoft_VC100_CRT_x64.msm' DiskId='1' />\r
       </Directory><!--ProgramFiles64Folder-->\r
+\r
+      <!-- PATH -->\r
+      <Component Id='SetPath64' Guid='{D3BF9EF4-843A-4D48-BC6C-DC24B063FC35}' Win64='yes'>\r
+        <Environment Id='SetPath64' Name='PATH' Action='set' Part='last' System='yes'\r
+                     Value='[ProgramFiles64Folder]Shibboleth\SP\lib' />\r
+      </Component>\r
+      <Component Id='SetPath' Guid='{0E8BD571-3A26-4F61-979E-B5807A28634A}'>\r
+        <Environment Id='SetPath' Name='PATH' Action='set' Part='last'  System='yes'\r
+                     Value='[ProgramFilesFolder]Shibboleth\SP\lib' />\r
+      </Component>\r
+\r
     </Directory><!--TARGETDIR-->\r
 \r
-    <Feature Id='Shibboleth' Title='Shibboleth' Level='1'>\r
+    <!-- TODO use QtExecCmdLine to execute SetX64Shibd -->\r
+\r
+    <Feature Id='Shibboleth' Title='Shibboleth' Level='1' Display='hidden' \r
+             ConfigurableDirectory='INSTALLDIR'>\r
       <MergeRef Id='CurlMergeModule_x86'/>\r
       <MergeRef Id='FastCGIMergeModule_x86'/>\r
       <MergeRef Id='Log4ShibMergeModule_x86'/>\r
       <MergeRef Id='OpenSAMLMergeModule_x86'/>\r
+      <MergeRef Id='OpenSAMLMergeModule_schemas'/>\r
       <MergeRef Id='OpenSSLMergeModule_x86'/>\r
       <MergeRef Id='ShibbolethMergeModule_x86'/>\r
       <MergeRef Id='XercesMergeModule_x86'/>\r
       <MergeRef Id='XmlSecMergeModule_x86'/>\r
       <MergeRef Id='XmlToolingMergeModule_x86'/>\r
+      <MergeRef Id='XmlToolingMergeModule_schemas'/>\r
       <MergeRef Id='ZlibMergeModule_x86'/>\r
 \r
       <MergeRef Id='Microsoft_VC100_DebugCRT_x86'/>\r
       <ComponentRef Id='file_extension64'/>\r
       <ComponentRef Id='shib64.ico' />\r
 \r
-      <!-- ShibbolethSP-noarch-x64 -->\r
-\r
-      <ComponentRef Id='doc_shibboleth'/>\r
-      <ComponentRef Id='etc_shibboleth_perm'/>\r
-      <ComponentRef Id='etc_shibboleth_nonperm'/>\r
-      <ComponentRef Id='dist_noperm'/>\r
-      <ComponentRef Id='accessError.html'/>\r
-      <ComponentRef Id='apache.config'/>\r
-      <ComponentRef Id='apache2.config'/>\r
-      <ComponentRef Id='metadataError.html'/>\r
-      <ComponentRef Id='native.logger'/>\r
-      <ComponentRef Id='sessionError.html'/>\r
-      <ComponentRef Id='shibd.logger'/>\r
-      <ComponentRef Id='var_log_shibboleth_folder'/>\r
-      <ComponentRef Id='share_xml_shibboleth'/>\r
-      <ComponentRef Id='share_xml_shibboleth_xsd'/>\r
+      <!-- ShibbolethSP-main-x64 -->\r
+      <ComponentRef Id='SetPath'/>\r
+      <ComponentRef Id='SetPath64'/>\r
 \r
-      <!-- ShibbolethSP-exe-x64-->\r
-\r
-      <ComponentRef Id='resolvertest.exe'/>\r
-      <ComponentRef Id='mdquery.exe'/>\r
-      <ComponentRef Id='resolvertest.exe_debug'/>\r
-      <ComponentRef Id='mdquery.exe_debug'/>\r
-\r
-      <ComponentRef Id='adfs.so'/>\r
-      <ComponentRef Id='adfslite.so'/>\r
-      <ComponentRef Id='isapi_shib.dll'/>\r
-      <ComponentRef Id='mod_shib_13.so'/>\r
-      <ComponentRef Id='mod_shib_20.so'/>\r
-      <ComponentRef Id='mod_shib_22.so'/>\r
-      <ComponentRef Id='nsapi_shib.dll'/>\r
-      <ComponentRef Id='odbcstore.so'/>\r
-      <ComponentRef Id='shibauthorizer.exe'/>\r
-      <ComponentRef Id='shibresponder.exe'/>\r
-\r
-      <ComponentRef Id='adfsD.so'/>\r
-      <ComponentRef Id='adfsliteD.so'/>\r
-      <ComponentRef Id='isapi_shibD.dll'/>\r
-      <ComponentRef Id='mod_shib_13D.so'/>\r
-      <ComponentRef Id='mod_shib_20D.so'/>\r
-      <ComponentRef Id='mod_shib_22D.so'/>\r
-      <ComponentRef Id='nsapi_shibD.dll'/>\r
-      <ComponentRef Id='odbcstoreD.so'/>\r
-      <ComponentRef Id='shibauthorizerD.exe'/>\r
-      <ComponentRef Id='shibresponderD.exe'/>\r
-\r
-      <ComponentRef Id='shibd.exe'/>\r
-      <ComponentRef Id='shibdD.exe'/>\r
-\r
-      <!-- ShibbolethSP-registry-x64 -->\r
-      <ComponentRef Id='file_extension'/>\r
-      <ComponentRef Id='shib.ico' />\r
+      <?include ShibbolethSP-defs-x86.wxi ?>\r
 \r
     </Feature>\r
   </Product>\r
diff --git a/msi/WiX/ShibbolethSP-main-x86.wxs b/msi/WiX/ShibbolethSP-main-x86.wxs
new file mode 100644 (file)
index 0000000..9c19fc4
--- /dev/null
@@ -0,0 +1,101 @@
+<?xml version='1.0' encoding='UTF-8'?>\r
+\r
+<!-- Licensed to the University Corporation for Advanced Internet\r
+   Development, Inc. (UCAID) under one or more contributor license\r
+   agreements.  See the NOTICE file distributed with this work for\r
+   additional information regarding copyright ownership. The UCAID\r
+   licenses this file to You under the Apache License, Version 2.0\r
+   (the 'License'); you may not use this file except in compliance\r
+   with the License.  You may obtain a copy of the License at\r
\r
+     http://www.apache.org/licenses/LICENSE-2.0\r
\r
+   Unless required by applicable law or agreed to in writing, software\r
+   distributed under the License is distributed on an 'AS IS' BASIS,\r
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\r
+   implied.  See the License for the specific language governing\r
+   permissions and limitations under the License.  -->\r
+\r
+<?include Versions.wxi ?>\r
+\r
+<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>\r
+  <Product Id='{EA2259A7-D844-475A-B473-CCE3EEA209D9}' Language='1033' \r
+           Manufacturer='Shibboleth Consortium' Name='Shibboleth $(var.ShibbolethVersion)' \r
+           UpgradeCode='$(var.ShibbolethUpgradeCode)' Version='$(var.ShibbolethVersion)'>\r
+    <Package Description='Installer for Shibboleth SP (x86 and x64)' Compressed='yes'\r
+             Manufacturer='Shibboleth Consortium' InstallerVersion='405'/>\r
+\r
+    <PropertyRef Id='SHIB_OLDVERSION'/>\r
+\r
+    <Condition Message='Shibboleth requires Windows XP SP2 or later.'>NOT VersionNT OR (VersionNT &gt;= 501)</Condition>\r
+    <Condition Message='Shibboleth requires a Windows NT-based operating system.'>NOT Version9X</Condition>\r
+    <Condition Message='You must uninstall recent versions of Shibboleth before using this installer. To uninstall, use the &quot;Change&quot; option from the Add/Remove dialog and then Remove. Attempting to uninstall directly causes the installer to hang on most systems.'>(SHIB_OLDVERSION = "none") AND (SHIB_OLDVERSION_64 = "none")</Condition>\r
+\r
+    <Condition Message='For a 32 installation on a 64 target, install the 64 msi and specify a 32 bit shibd'>NOT VersionNT64</Condition>\r
+\r
+    <Media Id='1' Cabinet='product.cab' EmbedCab='yes' />\r
+\r
+    <?include ShibbolethSP-properties.wxi?>\r
+\r
+    <!-- Files -->\r
+    <Directory Id='TARGETDIR' Name='SourceDir'>\r
+      <!-- The test bit -->\r
+      <Directory Id='opt' Name='opt'>\r
+        <Directory Id='INSTALLDIR' Name='shibboleth-sp'/>\r
+      </Directory>\r
+\r
+      <Directory Id='ProgramFilesFolder' Name='PFiles'>\r
+        <!-- 32 bit merge modules -notionally go to "Program Files (x86)" -->\r
+        <Merge Id='CurlMergeModule_x86' Language='1033' SourceFile='MergeModules\Curl-x86.msm' DiskId='1' />\r
+        <Merge Id='FastCGIMergeModule_x86' Language='1033' SourceFile='MergeModules\FastCGI-x86.msm' DiskId='1' />\r
+        <Merge Id='Log4ShibMergeModule_x86' Language='1033' SourceFile='MergeModules\Log4Shib-x86.msm' DiskId='1' />\r
+        <Merge Id='OpenSAMLMergeModule_x86' Language='1033' SourceFile='MergeModules\OpenSAML-x86.msm' DiskId='1' />\r
+        <Merge Id='OpenSAMLMergeModule_schemas' Language='1033' \r
+               SourceFile='MergeModules\OpenSAML-schemas.msm' DiskId='1' />\r
+        <Merge Id='OpenSSLMergeModule_x86' Language='1033' SourceFile='MergeModules\OpenSSL-x86.msm' DiskId='1' />\r
+        <Merge Id='ShibbolethMergeModule_x86' Language='1033' SourceFile='MergeModules\Shibboleth-x86.msm' DiskId='1' />\r
+        <Merge Id='XercesMergeModule_x86' Language='1033' SourceFile='MergeModules\Xerces-x86.msm' DiskId='1' />\r
+        <Merge Id='XmlSecMergeModule_x86' Language='1033' SourceFile='MergeModules\XmlSec-x86.msm' DiskId='1' />\r
+        <Merge Id='XmlToolingMergeModule_x86' Language='1033' SourceFile='MergeModules\XmlTooling-x86.msm' DiskId='1' />\r
+        <Merge Id='XmlToolingMergeModule_schemas' Language='1033' \r
+               SourceFile='MergeModules\XmlTooling-schemas.msm' DiskId='1' />\r
+        <Merge Id='ZlibMergeModule_x86' Language='1033' SourceFile='MergeModules\Zlib-x86.msm' DiskId='1' />\r
+\r
+        <Merge Id='Microsoft_VC100_DebugCRT_x86' Language='1033' \r
+               SourceFile='C:\Program Files (x86)\Common Files\Merge Modules\Microsoft_VC100_DebugCRT_x86.msm' DiskId='1' />\r
+        <Merge Id='Microsoft_VC100_CRT_x86' Language='1033' \r
+               SourceFile='C:\Program Files (x86)\Common Files\Merge Modules\Microsoft_VC100_CRT_x86.msm' DiskId='1' />\r
+      </Directory><!--ProgramFilesFolder-->\r
+\r
+      <Component Id='SetPath' Guid='{3300B9CD-67AF-4AAC-801D-8C56E5FB4AF5}'>\r
+        <Environment Id='SetPath' Name='PATH' Action='set' Part='last' System='yes'\r
+                     Value='[ProgramFilesFolder]Shibboleth\SP\lib' />\r
+      </Component>\r
+    </Directory><!--TARGETDIR-->\r
+\r
+    <Feature Id='Shibboleth' Title='Shibboleth' Level='1' Display='hidden' \r
+             ConfigurableDirectory='INSTALLDIR'>\r
+      <MergeRef Id='CurlMergeModule_x86'/>\r
+      <MergeRef Id='FastCGIMergeModule_x86'/>\r
+      <MergeRef Id='Log4ShibMergeModule_x86'/>\r
+      <MergeRef Id='OpenSAMLMergeModule_x86'/>\r
+      <MergeRef Id='OpenSAMLMergeModule_schemas'/>\r
+      <MergeRef Id='OpenSSLMergeModule_x86'/>\r
+      <MergeRef Id='ShibbolethMergeModule_x86'/>\r
+      <MergeRef Id='XercesMergeModule_x86'/>\r
+      <MergeRef Id='XmlSecMergeModule_x86'/>\r
+      <MergeRef Id='XmlToolingMergeModule_x86'/>\r
+      <MergeRef Id='XmlToolingMergeModule_schemas'/>\r
+      <MergeRef Id='ZlibMergeModule_x86'/>\r
+\r
+      <MergeRef Id='Microsoft_VC100_DebugCRT_x86'/>\r
+      <MergeRef Id='Microsoft_VC100_CRT_x86' />\r
+\r
+      <!-- ShibbolethSP-main-x86 -->\r
+      <ComponentRef Id='SetPath'/>\r
+\r
+      <?include ShibbolethSP-defs-x86.wxi ?>\r
+\r
+    </Feature>\r
+  </Product>\r
+</Wix>\r
index 3ff4d54..835173e 100644 (file)
         </Directory><!-- var_run -->\r
       </Directory><!-- var -->\r
       <!-- Schemas -->\r
+      <!-- TODO Move to a merge module -->\r
       <Directory Id='CommonAppDataFolder' Name='CommonFiles' >\r
-        <Directory Id='common_shibboleth' Name='Shibboleth' >\r
-          <Directory Id='common_sp' Name='SP' >\r
-            <Directory Id='common_doc' Name='doc' \r
-                       FileSource='$(var.BuildDirectory)\cvs\2.0\cpp-sp\schemas' >\r
-              <Component Id='share_xml_shibboleth' Guid='{69FCD385-B31D-43FB-B8A7-6F8D30391661}'>\r
-                <File Name='shibboleth-metadata-1.0.xsd' KeyPath='yes' />\r
-                <File Name='catalog.xml' Source='$(var.BuildDirectory)\cvs\2.0\cpp-sp\schemas\catalog.xml.in' />\r
-                <File Name='shibboleth-2.0-attribute-map.xsd' />\r
-                <File Name='shibboleth-2.0-afp.xsd' />\r
-                <File Name='shibboleth-2.0-afp-mf-saml.xsd' />\r
-                <File Name='WS-Trust.xsd' />\r
-                <File Name='shibboleth-2.0-sp-notify.xsd' />\r
-                <File Name='shibboleth-2.0-native-sp-config.xsd' />\r
-                <File Name='shibboleth-2.0-afp-mf-basic.xsd' />\r
-                <File Name='shibboleth-2.0-native-sp-protocols.xsd' />\r
-              </Component>\r
-              <Component Id='share_xml_shibboleth_xsd' Guid='{8C5B6416-5BE3-4D4D-BF8B-B677365DA58C}'>\r
-                <File Name='shibboleth.xsd' KeyPath='yes' />\r
-              </Component>\r
-            </Directory><!--common_doc-->\r
-          </Directory><!--common_sp-->\r
-        </Directory><!--common_shibboleth-->\r
+        <Directory Id='Shibboleth' Name='Shibboleth' >\r
+          <Directory Id='SP' Name='SP' >\r
+            <Directory Id='xml' Name='xml' >\r
+              <Directory Id='xml_shibboleth' Name='shibboleth'\r
+                         FileSource='$(var.BuildDirectory)\cvs\2.0\cpp-sp\schemas' >\r
+                <Component Id='share_xml_shibboleth' Guid='{69FCD385-B31D-43FB-B8A7-6F8D30391661}'>\r
+                  <File Name='shibboleth-metadata-1.0.xsd' KeyPath='yes' />\r
+                  <File Name='catalog.xml' Source='$(var.BuildDirectory)\cvs\2.0\cpp-sp\schemas\catalog.xml.in' />\r
+                  <File Name='shibboleth-2.0-attribute-map.xsd' />\r
+                  <File Name='shibboleth-2.0-afp.xsd' />\r
+                  <File Name='shibboleth-2.0-afp-mf-saml.xsd' />\r
+                  <File Name='WS-Trust.xsd' />\r
+                  <File Name='shibboleth-2.0-sp-notify.xsd' />\r
+                  <File Name='shibboleth-2.0-native-sp-config.xsd' />\r
+                  <File Name='shibboleth-2.0-afp-mf-basic.xsd' />\r
+                  <File Name='shibboleth-2.0-native-sp-protocols.xsd' />\r
+                </Component>\r
+                <Component Id='share_xml_shibboleth_xsd' Guid='{8C5B6416-5BE3-4D4D-BF8B-B677365DA58C}'>\r
+                  <File Name='shibboleth.xsd' KeyPath='yes' />\r
+                </Component>\r
+              </Directory><!--xml_shibboleth-->\r
+            </Directory><!--xml-->\r
+          </Directory><!--SP-->\r
+        </Directory><!--Shibboleth-->\r
       </Directory><!--CommonAppDataFolder-->\r
     </DirectoryRef>\r
 \r
-    <!-- The actions to perform after the files have been copied -->\r
+    <!-- The actions to perform after the files have been copied\r
+      TODO optionally add in the set64shibd set32shibd -->\r
     <Binary Id='EditConfigFileSrc' SourceFile='$(var.BuildDirectory)\cvs\2.0\cpp-sp\msi\scripts\shib_edit_config_files.vbs-wix' />\r
     <Binary Id='KeyGenSrc' SourceFile='$(var.BuildDirectory)\cvs\2.0\cpp-sp\msi\scripts\shib_keygen.vbs' />\r
     <CustomAction Id='EditConfigFiles' \r
                   BinaryKey='EditConfigFileSrc' VBScriptCall='' Execute='deferred' Impersonate='no' />\r
-    <CustomAction Id='SetEditConfigFiles' Property='EditConfigFiles' Value='[INSTALLDIR];@;[SHIBD_PORT];@;[ProgramFilesFolder]' />\r
+    <CustomAction Id='SetEditConfigFiles' Property='EditConfigFiles' Value='[INSTALLDIR];@;[SHIBD_PORT];@;[CommonAppDataFolder]' />\r
+    <!-- TODO use QtExecCmdLine -->\r
     <CustomAction Id='KeyGen' BinaryKey='KeyGenSrc' VBScriptCall='' Execute='deferred' Impersonate='no' />\r
     <CustomAction Id='SetKeyGen' Property='KeyGen' Value='[INSTALLDIR]' />\r
+\r
+    <!-- TODO IIS Install (if not ALREADYINSTALLED)\r
+         IIS Uninstalll (if UGRADINGPRODUCTCODE) -->\r
     <InstallExecuteSequence>\r
       <Custom Action='SetEditConfigFiles' Before='CostInitialize'>NOT Installed</Custom>\r
+      <!--TODO move editing of the catalog files to the merge module-->\r
       <Custom Action='EditConfigFiles' After='InstallFiles'>NOT Installed</Custom>\r
       <Custom Action='SetKeyGen' Before='CostInitialize'>NOT Installed</Custom>\r
-      <Custom Action='KeyGen' After='EditConfigFiles'>NOT Installed</Custom>\r
+      <Custom Action='KeyGen' After='WriteEnvironmentStrings'>NOT Installed</Custom><!--After WriteEnvironmentStrings so the path is set -->\r
+\r
     </InstallExecuteSequence>\r
 \r
     <!-- Components\r
index 15e3931..0e210f5 100644 (file)
@@ -22,9 +22,6 @@
        but the GUI is not required.  -->\r
 <Include>\r
 \r
-  <Property Id="OPT"  Secure="yes" Value="opt" />\r
-  <Property Id="INSTALLDIR" Secure="yes" Value="Shibboleth-SP" />\r
-\r
   <!-- Are we installing IIS, if so what extension to used -->\r
   <Property Id="SHIB_FILE_EXTENSION" Value=".sso" Secure="yes">\r
     <RegistrySearch Id="AppReg" Root="HKLM" Key="SOFTWARE\Shibboleth" Name="FileExtension" Type="raw" />\r