--- loncom/build/Attic/parse.pl 2000/12/10 04:15:23 1.9 +++ loncom/build/Attic/parse.pl 2000/12/21 14:45:36 1.19 @@ -65,6 +65,7 @@ while ($info1=~/\/isg) } elsif (uc($hash{'TYPE'}) eq "LOCATION") { $info{$hash{'TYPE'}}{$hash{'DIST'}}{$hash{'TARGET'}}{'CATEGORY'}= $hash{'CATEGORY'}; + $info{$hash{'TYPE'}}{$hash{'DIST'}}{$hash{'TARGET'}}{'LINKTO'}= $hash{'LINKTO'}; $info{$hash{'TYPE'}}{$hash{'DIST'}}{$hash{'TARGET'}}{'SOURCE'}= $hash{'SOURCE'}; # get surrounding metagroup information my $ckeystring=$keystring; $ckeystring=~s/(SOURCE\=\"[^"]*)\*/$1\\\*/g; @@ -85,8 +86,9 @@ while ($info1=~/\/isg) } } -if ($mode eq "ALL" || $mode eq "HTML") { - my $a; +my $a; +my @directories; +if ($mode eq "HTML") { $a=&begin_description_page; print $a; $a=&make_rpm_description_block; @@ -101,8 +103,777 @@ if ($mode eq "ALL" || $mode eq "HTML") { $a=&end_description_page; print $a; } +elsif ($mode eq "SPEC") { + my $out=$info{'RPM'}{'Name'} . '-' . $info{'RPM'}{'Version'} . '.spec'; + open OUT,">$out"; + $a=&make_rpm_spec_block; + print OUT $a; + $a=&make_rpm_build_block; + print OUT $a; + @directories=&determine_directory_structure; + $a=&make_directory_structure_spec_block(\@directories); + print OUT $a; + $a=&make_directory_and_file_structure_spec_block(\@directories); + print OUT $a; + $a=&end_spec_page; + print OUT $a; + close OUT; +} +elsif ($mode eq "LCMakefile") { + @directories=&determine_directory_structure; + $a=&make_directory_LCMakefile_segment(\@directories); + print $a; + $a=&make_files_LCMakefile_segment(\@directories); + print $a; + $a=&make_links_LCMakefile_segment(\@directories); + print $a; +} +elsif ($mode eq "BinaryRoot") { + mkdir "BinaryRoot",0755; + open OUT,">Makefile.BinaryRoot"; + @directories=&determine_directory_structure; + $a=&make_directory_binaryroot_segment(\@directories); + print OUT $a; + $a=&make_files_binaryroot_segment(\@directories); + print OUT $a; + $a=&make_links_binaryroot_segment(\@directories); + print OUT $a; + close OUT; + print `make -f Makefile.BinaryRoot TARGET='BinaryRoot' SOURCE='../..' directories`; + print `make -f Makefile.BinaryRoot TARGET='BinaryRoot' SOURCE='../..' files`; + print `make -f Makefile.BinaryRoot TARGET='BinaryRoot' SOURCE='../..' links`; + open OUT,">base_file_list.txt"; + $a=&make_file_list(\@directories); + print OUT $a; + close OUT; + +} +elsif ($mode eq "status") { +} +elsif ($mode eq "update") { +} +elsif ($mode eq "configinstall") { + @directories=&determine_directory_structure; + $a=&make_files_configinstall_segment(\@directories); + print $a; + $a=&make_files_configpermissions_segment(\@directories); + print $a; +} +elsif ($mode eq "install") { + @directories=&determine_directory_structure; + $a=&make_directory_install_segment(\@directories); + print $a; + $a=&make_files_install_segment(\@directories); + print $a; + $a=&make_links_install_segment(\@directories); + print $a; +} +elsif ($mode eq "build") { + @directories=&determine_directory_structure; + $a=&make_files_build_segment(\@directories); + print $a; +} + +# ------------------------------------------------------ a list of file targets +sub make_file_list { + my ($dirs)=@_; + my $description; + my @allfiles=keys %{$info{'LOCATION'}{$distribution}}; + foreach my $d (@$dirs) { + # set other values + $description.=< @@ -160,7 +931,6 @@ Group : $info{'RPM'}{'Group'} License : $info{'RPM'}{'Copyright'} Summary : $info{'RPM'}{'Summary'} Description : -
 $info{'RPM'}{'description'}