version 1.2, 2000/12/11 17:25:19
|
version 1.7, 2001/01/08 17:57:06
|
Line 35 END
|
Line 35 END
|
|
|
my ($tag,$version,$configuration_files,$documentation_files,$pathprefix)=@ARGV; |
my ($tag,$version,$configuration_files,$documentation_files,$pathprefix)=@ARGV; |
@ARGV=(); |
@ARGV=(); |
|
|
if (!$version) { |
if (!$version) { |
print "Usage: <TAG> <VERSION> [CONFIGURATION_FILES] [DOCUMENTATION] [PATHPREFIX]\n"; |
print "Usage: <TAG> <VERSION> [CONFIGURATION_FILES] [DOCUMENTATION] [PATHPREFIX]\n"; |
print "Standard input provides the list of files to work with.\n"; |
print "Standard input provides the list of files to work with.\n"; |
Line 86 print RPMMACROS <<END;
|
Line 87 print RPMMACROS <<END;
|
END |
END |
close RPMMACROS; |
close RPMMACROS; |
|
|
|
# This needs to be dynamically based upon doc/otherfiles/rpm_list.txt |
|
# at some point. |
|
my $requires=""; |
|
if ($tag eq "setup") { |
|
$requires=<<END; |
|
Requires: setup |
|
END |
|
} |
|
elsif ($tag eq "base") { |
|
$requires=<<END; |
|
Requires: LON-CAPA-base |
|
Requires: LON-CAPA-krb4 |
|
Requires: LON-CAPA-mysql |
|
Requires: LON-CAPA-systemperl |
|
Requires: raidtools |
|
Requires: ncurses |
|
Requires: popt |
|
Requires: tcsh |
|
Requires: redhat-release |
|
Requires: diffutils |
|
Requires: ed |
|
Requires: dialog |
|
Requires: rmt |
|
Requires: sed |
|
Requires: which |
|
Requires: gawk |
|
Requires: mingetty |
|
Requires: info |
|
Requires: portmap |
|
Requires: openssh-clients |
|
Requires: openssh |
|
Requires: openssh-server |
|
Requires: openssl |
|
Requires: basesystem |
|
Requires: ldconfig |
|
Requires: filesystem |
|
Requires: mktemp |
|
Requires: termcap |
|
Requires: shadow-utils |
|
Requires: libtermcap |
|
Requires: MAKEDEV |
|
Requires: utempter |
|
Requires: bash |
|
Requires: logrotate |
|
Requires: SysVinit |
|
Requires: chkconfig |
|
Requires: textutils |
|
Requires: pwdb |
|
Requires: vixie-cron |
|
Requires: procps |
|
Requires: modutils |
|
Requires: psmisc |
|
Requires: sysklogd |
|
Requires: authconfig |
|
Requires: zlib |
|
Requires: sh-utils |
|
Requires: mailcap |
|
Requires: anacron |
|
Requires: bc |
|
Requires: bdflush |
|
Requires: bind-utils |
|
Requires: cpio |
|
Requires: crontabs |
|
Requires: etcskel |
|
Requires: e2fsprogs |
|
Requires: samba-client |
|
Requires: apache-devel |
|
Requires: autofs |
|
Requires: findutils |
|
Requires: gdbm |
|
Requires: getty_ps |
|
Requires: readline |
|
Requires: glib10 |
|
Requires: inetd |
|
Requires: losetup |
|
Requires: gnupg |
|
Requires: gpgp |
|
Requires: urw-fonts |
|
Requires: mailx |
|
Requires: gzip |
|
Requires: ld.so |
|
Requires: less |
|
Requires: passwd |
|
Requires: sysreport |
|
Requires: ncompress |
|
Requires: mount |
|
Requires: lilo |
|
Requires: bzip2 |
|
Requires: grep |
|
Requires: memprof |
|
Requires: mars-nwe |
|
Requires: pidentd |
|
Requires: procinfo |
|
Requires: units |
|
Requires: routed |
|
Requires: quota |
|
Requires: pam |
|
Requires: stat |
|
Requires: setserial |
|
Requires: mod_perl |
|
Requires: rootfiles |
|
Requires: nfs-utils |
|
Requires: sendmail |
|
Requires: sharutils |
|
Requires: tmpwatch |
|
Requires: shapecfg |
|
Requires: tcp_wrappers |
|
Requires: unzip |
|
Requires: tetex-dvips |
|
Requires: tetex-afm |
|
Requires: tetex-latex |
|
Requires: xntp3 |
|
Requires: rpm |
|
Requires: wu-ftpd |
|
Requires: setup |
|
Requires: glibc |
|
Requires: fileutils |
|
Requires: initscripts |
|
Requires: netatalk |
|
Requires: apache |
|
Requires: bash2 |
|
Requires: dev |
|
Requires: samba |
|
Requires: ghostscript |
|
Requires: kernel-headers |
|
Requires: kernel |
|
Requires: linuxconf |
|
Requires: tetex |
|
Requires: tetex-fonts |
|
Requires: util-linux |
|
Requires: vim-common |
|
Requires: perl |
|
Requires: cracklib |
|
Requires: cracklib-dicts |
|
Requires: cdrecord |
|
Requires: ghostscript-fonts |
|
Requires: libgr |
|
Requires: libjpeg |
|
Requires: libpng |
|
Requires: libungif-progs |
|
Requires: libtiff |
|
Requires: libungif |
|
Requires: samba-common |
|
Requires: ImageMagick |
|
Requires: libgr-progs |
|
Requires: man-pages |
|
Requires: tar |
|
Requires: vim-minimal |
|
END |
|
} |
|
else { |
|
$requires=<<END; |
|
Requires: LON-CAPA-base |
|
END |
|
} |
open (SPEC,">$tag/SPECS/LON-CAPA-$tag-$version.spec"); |
open (SPEC,">$tag/SPECS/LON-CAPA-$tag-$version.spec"); |
|
|
print SPEC <<END; |
print SPEC <<END; |
Line 99 Copyright: GNU General Public License. V
|
Line 255 Copyright: GNU General Public License. V
|
Group: Utilities/System |
Group: Utilities/System |
Source: LON-CAPA-$tag-$version.tar.gz |
Source: LON-CAPA-$tag-$version.tar.gz |
AutoReqProv: no |
AutoReqProv: no |
|
$requires |
# requires: filesystem |
# requires: filesystem |
\%description |
\%description |
This package is automatically generated by the make_rpm.pl perl |
This package is automatically generated by the make_rpm.pl perl |
Line 143 END
|
Line 300 END
|
|
|
foreach $file (<>) { |
foreach $file (<>) { |
chop $file; |
chop $file; |
|
my $comment=""; |
|
if ($file=~/\s+\#(.*)$/) { |
|
$file=~s/\s+\#(.*)$//; |
|
$comment=$1; |
|
} |
|
my $config=""; |
|
if ($comment=~/config/i) { |
|
$config="\%config "; |
|
} |
if (($type,$size,$octalmode,$user,$group)=find_info($file)) { |
if (($type,$size,$octalmode,$user,$group)=find_info($file)) { |
$octalmode="0" . $octalmode if length($octalmode)<4; |
$octalmode="0" . $octalmode if length($octalmode)<4; |
if ($pathprefix) { |
if ($pathprefix) { |
Line 151 foreach $file (<>) {
|
Line 317 foreach $file (<>) {
|
if ($type eq "files") { |
if ($type eq "files") { |
push @{$BinaryRootMakefile{$type}},"\tinstall -D -m $octalmode $pathprefix$file $binaryroot$file\n"; |
push @{$BinaryRootMakefile{$type}},"\tinstall -D -m $octalmode $pathprefix$file $binaryroot$file\n"; |
push @{$Makefile{$type}},"\tinstall -D -m $octalmode \$(SOURCE)$file \$(ROOT)$file\n"; |
push @{$Makefile{$type}},"\tinstall -D -m $octalmode \$(SOURCE)$file \$(ROOT)$file\n"; |
push @{$dotspecfile{$type}},"\%attr($octalmode,$user,$group) $file\n"; |
push @{$dotspecfile{$type}},"$config\%attr($octalmode,$user,$group) $file\n"; |
} |
} |
elsif ($type eq "directories") { |
elsif ($type eq "directories") { |
push @{$BinaryRootMakefile{$type}},"\tinstall -m $octalmode -d $binaryroot$file\n"; |
push @{$BinaryRootMakefile{$type}},"\tinstall -m $octalmode -d $binaryroot$file\n"; |
Line 206 sub find_info {
|
Line 372 sub find_info {
|
return ("directories",split(/\t/,$line)); |
return ("directories",split(/\t/,$line)); |
} |
} |
elsif (($line=`find $file -type l -prune`)=~/^$file\n/) { |
elsif (($line=`find $file -type l -prune`)=~/^$file\n/) { |
$line=`find $file -type l -prune -printf "\%h/\%l\t\%m\t\%u\t\%g"`; |
$line=`find $file -type l -prune -printf "\%l\t\%m\t\%u\t\%g"`; |
return ("links",split(/\t/,$line)); |
return ("links",split(/\t/,$line)); |
} |
} |
|
|