Commits

Ingo Schmidt  committed f85999a

native356: #i116488# including jre in msi format

  • Participants
  • Parent commits fafcf7d

Comments (0)

Files changed (9)

File instsetoo_native/util/openoffice.lst

 			LIBRARYVERSION 9.4.0
 			PATCHCODEFILE ooo_patchcodes.txt
 			JAVAPRODUCT 1
+			JAVASELECTABLE 1
 			DOWNLOADBANNER	ooobanner.bmp
 			DOWNLOADBITMAP	ooobitmap.bmp
 			DOWNLOADSETUPICO	ooosetup.ico
 			CHANGETARGETDIR 1
 			USE_FILEVERSION 1
 			JAVAPRODUCT 1
+			JAVASELECTABLE 1
 			LIBRARYVERSION 9.4.0
 			PATCHCODEFILE ooodev_patchcodes.txt
 			CODEFILENAME codes_ooodev.txt
 			CODEFILENAME codes_broo.txt
 			PATCHCODEFILE bro_patchcodes.txt
 			JAVAPRODUCT 1
+			JAVASELECTABLE 1
 			DOWNLOADBANNER	brobanner.bmp
 			DOWNLOADBITMAP	brobitmap.bmp
 			DOWNLOADSETUPICO	ooosetup.ico
 			CHANGETARGETDIR 1
 			USE_FILEVERSION 1
 			JAVAPRODUCT 1
+			JAVASELECTABLE 1
 			LIBRARYVERSION 9.4.0
 			PATCHCODEFILE brodev_patchcodes.txt
 			CODEFILENAME codes_broodev.txt

File scp2/source/ooo/file_jre_ooo.scp

 File gid_File_Exe_Java
     BIN_FILE_BODY;
   #ifdef WNT
-	InstallName = "jre-windows-i586.exe";
+	InstallName = "jre-windows-i586.msi";
 	Styles = (DONT_PACK,JAVAFILE,SUBST_FILENAME);
   #else
 	Styles = (DONT_PACK,JAVAFILE);
 	Javaversion = "${WINDOWSJAVAREGISTRYENTRY}";
 	Subdir = "java";
 End
+
+File gid_File_Exe_Au
+    BIN_FILE_BODY;
+	InstallName = "au.msi";
+	Styles = (DONT_PACK,JAVAAUFILE,SUBST_FILENAME);
+	Dir = gid_Dir_Jre;
+	Name = "${WINDOWSJAVAAUFILENAME}";
+	Subdir = "java";
+End
+
+File gid_File_Cab_Au
+    BIN_FILE_BODY;
+	InstallName = "au.cab";
+	Styles = (DONT_PACK,JAVAAUCABFILE,SUBST_FILENAME);
+	Dir = gid_Dir_Jre;
+	Name = "${WINDOWSJAVAAUCABFILENAME}";
+	Subdir = "java";
+End

File scp2/source/ooo/module_hidden_ooo.scp

 	gid_File_Shellnew_Odp_Soffice,
 	gid_File_Shellnew_Odt_Soffice,
 	gid_File_Exe_Java,
+	gid_File_Exe_Au,
+	gid_File_Cab_Au,
 	gid_File_Exe_Adabas,
 	gid_File_Exe_Userinst,
 	gid_File_Exe_Userdeinst,

File setup_native/source/java/javaversion.dat

 WINDOWSJAVAVERSION=Java 6 Update 23
 
 # Windows (scp2 and downloadtemplate.nsi)
-WINDOWSJAVAFILENAME=jre-6u23-windows-i586.exe
+WINDOWSJAVAFILENAME=jre1.6.0_23.msi
+WINDOWSJAVAAUFILENAME=au1.6.0_23.msi
+WINDOWSJAVAAUCABFILENAME=au1.6.0_23.cab
 WINDOWSJAVAREGISTRYENTRY=1.6.0_23
 
 # Linux (scp2)

File setup_native/source/java/javaversion2.dat

 WINDOWSJAVAVERSION=Java 6 Update 23
 
 # Windows (scp2 and downloadtemplate.nsi)
-WINDOWSJAVAFILENAME=jre-6u23-windows-i586.exe
+WINDOWSJAVAFILENAME=jre1.6.0_23.msi
+WINDOWSJAVAAUFILENAME=au1.6.0_23.msi
+WINDOWSJAVAAUCABFILENAME=au1.6.0_23.cab
 WINDOWSJAVAREGISTRYENTRY=1.6.0_23
 
 # Linux (scp2)

File setup_native/source/win32/nsis/downloadtemplate.nsi

     nopostremovesilent:
       StrCmp $R9 "true" installjava1 dontinstalljava1 
       installjava1:
-        ExecWait '$INSTDIR\java\WINDOWSJAVAFILENAMEPLACEHOLDER /s /v"/qn REBOOT=Suppress"'
+        ExecWait 'msiexec.exe /i $INSTDIR\java\WINDOWSJAVAFILENAMEPLACEHOLDER /qn REBOOT=Suppress'
+        ExecWait 'msiexec.exe /i $INSTDIR\java\au.msi /qn REBOOT=Suppress'
       dontinstalljava1:
       ExecWait "$INSTDIR\setup.exe -lang $LANGUAGE $3 $4 $5 $6 $7 -ignore_running" $0
       SetErrorLevel $0
     postremovesilent:
       StrCmp $R9 "true" installjava2 dontinstalljava2 
       installjava2:
-        ExecWait '$INSTDIR\java\WINDOWSJAVAFILENAMEPLACEHOLDER /s /v"/qn REBOOT=Suppress"'
+        ExecWait 'msiexec.exe /i $INSTDIR\java\WINDOWSJAVAFILENAMEPLACEHOLDER /qn REBOOT=Suppress'
+        ExecWait 'msiexec.exe /i $INSTDIR\java\au.msi /qn REBOOT=Suppress'
       dontinstalljava2:
       ExecWait "$INSTDIR\setup.exe -lang $LANGUAGE $3 $4 $5 $6 $7 -ignore_running" $0
       RMDir /r $INSTDIR
     postremove:
       StrCmp $R9 "true" installjava3 dontinstalljava3 
       installjava3:
-        ExecWait '$INSTDIR\java\WINDOWSJAVAFILENAMEPLACEHOLDER /s /v"/qr REBOOT=Suppress"'
+        ExecWait 'msiexec.exe /i $INSTDIR\java\WINDOWSJAVAFILENAMEPLACEHOLDER /qr REBOOT=Suppress'
+        ExecWait 'msiexec.exe /i $INSTDIR\java\au.msi /qr REBOOT=Suppress'
       dontinstalljava3:
       ExecWait "$INSTDIR\setup.exe -lang $LANGUAGE $3 $4 $5 $6" $0
       RMDir /r $INSTDIR

File solenv/bin/modules/installer/globals.pm

 	$javafilename2 = "";
 	$javafilename3 = "";
 	$javafile = "";
+	$javaaufile = "";
+	$javaaucabfile = "";
 	$urefile = "";
 
 	$postprocess_specialepm = 0;

File solenv/bin/modules/installer/windows/idtglobal.pm

 	my $line = "";
 	
 	$installer::globals::javafile = installer::worker::return_first_item_with_special_flag($filesref ,"JAVAFILE");
+	$installer::globals::javaaufile = installer::worker::return_first_item_with_special_flag($filesref ,"JAVAAUFILE");
+	$installer::globals::javaaucabfile = installer::worker::return_first_item_with_special_flag($filesref ,"JAVAAUCABFILE");
 	$installer::globals::urefile = installer::worker::return_first_item_with_special_flag($filesref ,"UREFILE");
 
 	if (( $installer::globals::javafile eq "" ) && ( $allvariables->{'JAVAPRODUCT'} )) { installer::exiter::exit_program("ERROR: No JAVAFILE found in files collector!", "add_childprojects"); }
 	# Content for the Component table
 	# The Java and Ada components have new directories
 	
-	if ( $allvariables->{'JAVAPRODUCT'} ) { include_subdir_into_componenttable($subjavadir, $installer::globals::javafile, $componenttable); }
+	if ( $allvariables->{'JAVAPRODUCT'} )
+	{
+		include_subdir_into_componenttable($subjavadir, $installer::globals::javafile, $componenttable);
+		include_subdir_into_componenttable($subjavadir, $installer::globals::javaaufile, $componenttable);
+		include_subdir_into_componenttable($subjavadir, $installer::globals::javaaucabfile, $componenttable);
+	}
+
 	if ( $allvariables->{'UREPRODUCT'} ) { include_subdir_into_componenttable($suburedir, $installer::globals::urefile, $componenttable); }
 
 	# Content for CustomAction table
 
 	if ( $allvariables->{'JAVAPRODUCT'} )
 	{
-		$line = "InstallJava\t98\tSystemFolder\t[SourceDir]$installer::globals::javafile->{'Subdir'}\\$installer::globals::javafile->{'Name'} \/qb REBOOT=Suppress SPONSORS=0 DISABLEAD=1\n";
+		$line = "InstallJava\t98\tSystemFolder\tmsiexec.exe /i \"[SourceDir]$installer::globals::javafile->{'Subdir'}\\$installer::globals::javafile->{'Name'}\" \/qb REBOOT=Suppress\n";
 		push(@{$customactiontable} ,$line);
 		installer::remover::remove_leading_and_ending_whitespaces(\$line);
 		$infoline = "Added $line into table $customactiontablename\n";
 		push(@installer::globals::logfileinfo, $infoline);
+		
+		if ( $installer::globals::javaaufile ne "" ) 
+		{
+			$line = "InstallJavaAu\t98\tSystemFolder\tmsiexec.exe /i \"[SourceDir]$installer::globals::javaaufile->{'Subdir'}\\$installer::globals::javaaufile->{'Name'}\" \/qb REBOOT=Suppress\n";
+			push(@{$customactiontable} ,$line);
+			installer::remover::remove_leading_and_ending_whitespaces(\$line);
+			$infoline = "Added $line into table $customactiontablename\n";
+			push(@installer::globals::logfileinfo, $infoline);	
+		}
 	}
 
 	if ( $allvariables->{'UREPRODUCT'} )
 
 	if ( $allvariables->{'JAVAPRODUCT'} )
 	{
-		$line = "MaintenanceJava\t82\t$installer::globals::javafile->{'uniquename'}\t\/qb REBOOT=Suppress SPONSORS=0 DISABLEAD=1\n";
+		my $localjavadir = $installer::globals::javafile->{'destination'};
+		installer::pathanalyzer::get_path_from_fullqualifiedname(\$localjavadir);
+		$localjavadir =~ s/\/\s*$//;	# removing ending slashes
+		$localjavadir =~ s/\\\s*$//;	# removing ending slashes
+		
+		$line = "MaintenanceJava\t98\tSystemFolder\tmsiexec.exe /i \"[INSTALLLOCATION]$localjavadir\\$installer::globals::javafile->{'Name'}\" /qb REBOOT=Suppress\n";
 		push(@{$customactiontable} ,$line);
 		installer::remover::remove_leading_and_ending_whitespaces(\$line);
 		$infoline = "Added $line into table $customactiontablename\n";
 		push(@installer::globals::logfileinfo, $infoline);
+
+		if ( $installer::globals::javaaufile ne "" ) 
+		{
+			$line = "MaintenanceJavaAu\t98\tSystemFolder\tmsiexec.exe /i \"[INSTALLLOCATION]$localjavadir\\$installer::globals::javaaufile->{'Name'}\" /qb REBOOT=Suppress\n";
+			push(@{$customactiontable} ,$line);
+			installer::remover::remove_leading_and_ending_whitespaces(\$line);
+			$infoline = "Added $line into table $customactiontablename\n";
+			push(@installer::globals::logfileinfo, $infoline);
+		}
 	}
 
 	if ( $allvariables->{'UREPRODUCT'} )
 		installer::remover::remove_leading_and_ending_whitespaces(\$line);
 		$infoline = "Added $line into table $installuitablename\n";
 		push(@installer::globals::logfileinfo, $infoline);
+		
+		if ( $installer::globals::javaaufile ne "" ) 
+		{
+			$number = $number + 2;
+			if ( $featurename ) { $line = "InstallJavaAu\t\&$featurename\=3 And Not Installed And JAVAPATH\=\"\" And Not PATCH\t$number\n"; }
+			else { $line = "InstallJavaAu\tNot Installed And JAVAPATH\=\"\" And Not PATCH\t$number\n"; } # feature belongs to root
+			push(@{$installuitable} ,$line);
+			installer::remover::remove_leading_and_ending_whitespaces(\$line);
+			$infoline = "Added $line into table $installuitablename\n";
+			push(@installer::globals::logfileinfo, $infoline);
+		}		
 	}
 	
 	if ( $allvariables->{'ADAPRODUCT'} )
 	{
 		$number = get_free_number_in_uisequence_table($installuitable) + 6;
 		$featurename = get_feature_name("_Java", $featuretable);
-		if ( $featurename ) { $line = "MaintenanceJava\t\&$featurename\=3 And Installed And JAVAPATH\=\"\" And Not PATCH\t$number\n"; }
+		my $featurecondition = "";
+		if ( $allvariables->{'JAVASELECTABLE'} ) { $featurecondition = "\&$featurename\=3 And"; }
+		# if ( $featurename ) { $line = "MaintenanceJava\t(\&$featurename\=3 Or \!$featurename\=3) And Installed And JAVAPATH\=\"\" And Not PATCH\t$number\n"; }
+		if ( $featurename ) { $line = "MaintenanceJava\t$featurecondition Installed And JAVAPATH\=\"\" And Not PATCH\t$number\n"; }
 		else { $line = "MaintenanceJava\tInstalled And JAVAPATH\=\"\" And Not PATCH\t$number\n"; } # feature belongs to root
 		push(@{$installuitable} ,$line);
 		installer::remover::remove_leading_and_ending_whitespaces(\$line);
 		$infoline = "Added $line into table $installuitablename\n";
 		push(@installer::globals::logfileinfo, $infoline);
+		
+		if ( $installer::globals::javaaufile ne "" ) 
+		{
+			$number = $number + 2;
+			# if ( $featurename ) { $line = "MaintenanceJavaAu\t(\&$featurename\=3 Or \!$featurename\=3) And Installed And JAVAPATH\=\"\" And Not PATCH\t$number\n"; }
+			if ( $featurename ) { $line = "MaintenanceJavaAu\t$featurecondition Installed And JAVAPATH\=\"\" And Not PATCH\t$number\n"; }
+			else { $line = "MaintenanceJavaAu\tInstalled And JAVAPATH\=\"\" And Not PATCH\t$number\n"; } # feature belongs to root
+			push(@{$installuitable} ,$line);
+			installer::remover::remove_leading_and_ending_whitespaces(\$line);
+			$infoline = "Added $line into table $installuitablename\n";
+			push(@installer::globals::logfileinfo, $infoline);
+		}		
 	}
 
 	if ( $allvariables->{'UREPRODUCT'} )

File solenv/bin/modules/installer/windows/msiglobal.pm

 		$destdir = $installdir . $installer::globals::separator . $installer::globals::javafile->{'Subdir'};
 		if ( ! -d $destdir) { installer::systemactions::create_directory($destdir); }
 		installer::systemactions::copy_one_file($sourcefile, $destdir);
+		
+		if ( $installer::globals::javaaufile ne "" )
+		{
+			$sourcefile = $installer::globals::javaaufile->{'sourcepath'};
+			$destdir = $installdir . $installer::globals::separator . $installer::globals::javaaufile->{'Subdir'};
+			if ( ! -d $destdir) { installer::systemactions::create_directory($destdir); }
+			installer::systemactions::copy_one_file($sourcefile, $destdir);	
+		}
+
+		if ( $installer::globals::javaaucabfile ne "" )
+		{
+			$sourcefile = $installer::globals::javaaucabfile->{'sourcepath'};
+			$destdir = $installdir . $installer::globals::separator . $installer::globals::javaaucabfile->{'Subdir'};
+			if ( ! -d $destdir) { installer::systemactions::create_directory($destdir); }
+			installer::systemactions::copy_one_file($sourcefile, $destdir);	
+		}
 	}
 
 	if ( $allvariables->{'UREPRODUCT'} )