Changeset 29611 for main/trunk/package-kits/linux/perllib
- Timestamp:
- 2014-12-12T17:11:12+13:00 (9 years ago)
- Location:
- main/trunk/package-kits/linux/perllib/Greenstone/Package
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/package-kits/linux/perllib/Greenstone/Package/_apt.pm
r29607 r29611 58 58 } 59 59 60 # Adds a definition for files included in a subpackage 61 sub add_package_files { 62 my $self = shift; 63 my $file = "$self->{output}/debian/$self->{config}->{NAME}.install"; 64 print " - $file\n"; 65 open my $INSTALL, '>', $file; 66 for my $line (@{$self->{config}->{FILES}}) { 67 print $INSTALL $line, "\n"; 68 } 69 close $INSTALL; 70 } 71 60 72 # Handles the apt-specific package generation 61 73 sub add_package_impl { … … 78 90 } 79 91 if (defined $packages) { 92 my @names; 93 # add main package 94 push @names, $self->{config}->{NAME}; 95 $self->add_install ($self->{config}->{NAME}); 96 $self->add_package_section ($CONTROL); 97 $self->add_package_files; 98 80 99 my $config = $self->{config}; 81 my @names;100 # add subpackages 82 101 for my $package (@{$packages}) { 83 102 push @names, $package->{NAME}; … … 86 105 $self->add_install ($package->{NAME}); 87 106 $self->add_package_section ($CONTROL); 88 my $install = "$self->{output}/debian/$self->{config}->{NAME}.install"; 89 open my $INSTALL, '>', $install; 90 for my $line (@{$self->{config}->{FILES}}) { 91 print $INSTALL $line, "\n"; 92 } 93 close $INSTALL; 107 $self->add_package_files; 94 108 } 95 109 $self->{config} = $config; -
main/trunk/package-kits/linux/perllib/Greenstone/Package/_pacman.pm
r29607 r29611 78 78 sub add_package_impl { 79 79 my ($self, $packages) = @_; 80 $self->{config}->{NAMES} = $self->{config}->{NAME}; 80 81 if (defined $packages) { 81 $self->{config}->{NAME} = '';82 82 for my $package (@{$packages}) { 83 $self->{config}->{NAME } .= " $package->{NAME}";83 $self->{config}->{NAMES} .= " $package->{NAME}"; 84 84 } 85 85 } … … 89 89 for my $line ( 90 90 '# Maintainer: %MAINTAINER_NAME% <%MAINTAINER_EMAIL%>', 91 'pkgname=(%NAME %)',91 'pkgname=(%NAMES%)', 92 92 'pkgver=%VERSION%', 93 93 'pkgrel=%RELEASE%', 94 94 'url=%HOMEPAGE%', 95 95 'license=%LICENSE_SHORT%', 96 'arch=( ' . (defined $self->{config}->{ARCH} ? '%ARCH%' : 'any') . ')',96 'arch=(%ARCHITECTURE%)', 97 97 'makedepends=(', 98 98 '%MAKEDEPENDS%', … … 114 114 } 115 115 if (defined $packages) { 116 # main package 117 $self->write_function ("package_$self->{config}->{NAME}", $PKGBUILD, 118 $self->add_install, 119 'DESTDIR=${pkgdir} make install' 120 ); 116 121 my $config = $self->{config}; 122 # subpackages 117 123 for my $package (@{$packages}) { 118 124 $self->{config} = $package; 119 125 $self->write_function ("package_$package->{NAME}", $PKGBUILD, 120 126 'pkgdesc=%DESCRIPTION%', 121 'arch=( \'%ARCHITECTURE%\')',127 'arch=(%ARCHITECTURE%)', 122 128 'depends=(', 123 129 '%DEPENDS%', -
main/trunk/package-kits/linux/perllib/Greenstone/Package/_rpm.pm
r29607 r29611 22 22 sub write_function { 23 23 my ($name, @lines) = @_; 24 my $ret = " ";24 my $ret = "\n"; 25 25 $ret .= "%" . $name . "\n"; 26 26 for my $line (@lines) { 27 27 $ret .= $line . "\n"; 28 28 } 29 $ret .= "\n";30 29 return $ret; 31 30 } 32 31 33 32 sub add_install { 34 my $self = shift; 33 my ($self, $package) = shift; 34 my $suffix = (defined $package ? " $package" : ""); 35 35 my $ret = ''; 36 36 exists $self->{config}->{PRE_INSTALL} and 37 $ret .= write_function "pre ", @{$self->{config}->{PRE_INSTALL}};37 $ret .= write_function "pre$suffix", @{$self->{config}->{PRE_INSTALL}}; 38 38 exists $self->{config}->{POST_INSTALL} and 39 $ret .= write_function "post ", @{$self->{config}->{POST_INSTALL}};39 $ret .= write_function "post$suffix", @{$self->{config}->{POST_INSTALL}}; 40 40 exists $self->{config}->{PRE_REMOVE} and 41 $ret .= write_function "preun ", @{$self->{config}->{PRE_INSTALL}};41 $ret .= write_function "preun$suffix", @{$self->{config}->{PRE_INSTALL}}; 42 42 exists $self->{config}->{POST_REMOVE} and 43 $ret .= write_function "postun ", @{$self->{config}->{POST_INSTALL}};43 $ret .= write_function "postun$suffix", @{$self->{config}->{POST_INSTALL}}; 44 44 return $ret; 45 45 } … … 50 50 print " - $file\n"; 51 51 open my $SPEC, '>', $file; 52 for my $line ( 53 'Name: %NAME%', 54 'Version: %VERSION%', 55 'Release: %RELEASE%', 56 'License: %LICENSE_SHORT%', 57 'URL: %HOMEPAGE%', 58 'Source0: %NAME%', 59 'AutoReqProv: no', 60 'BuildRequires: %MAKEDEPENDS%', 61 '', 62 '%prep', 63 'cp -pr %SOURCE0 .', 64 '', 65 '%build', 66 'cd %NAME%', 67 'make %{?_smp_mflags}', 68 '', 69 '%install', 70 'cd %NAME%', 71 '%make_install', 72 '', 73 '%changelog', 74 '' 75 ) { 76 my $copy = $line; 77 $self->subst ($copy); 78 print $SPEC $copy, "\n"; 52 { 53 my @optional; 54 scalar(@{$self->{config}->{DEPENDS}}) gt 0 and 55 push @optional, 'Requires: %DEPENDS%'; 56 for my $line ( 57 'Name: %NAME%', 58 'Version: %VERSION%', 59 'Release: %RELEASE%', 60 'License: %LICENSE_SHORT%', 61 'URL: %HOMEPAGE%', 62 'Source0: %NAME%', 63 'AutoReqProv: no', 64 'BuildRequires: %MAKEDEPENDS%', 65 @optional, 66 'Summary: %DESCRIPTION_SHORT%', 67 '', 68 '%description', 69 '%DESCRIPTION%', 70 '', 71 '%prep', 72 'cp -pr %SOURCE0 .', 73 '', 74 '%build', 75 'cd %NAME%', 76 'make %{?_smp_mflags}', 77 '', 78 '%install', 79 'cd %NAME%', 80 '%make_install', 81 $self->add_install, 82 '%files', 83 '%FILES%', 84 '', 85 '' 86 ) { 87 my $copy = $line; 88 $self->subst ($copy); 89 print $SPEC $copy, "\n"; 90 } 79 91 } 80 92 if (defined $packages) { … … 82 94 for my $package (@{$packages}) { 83 95 $self->{config} = $package; 96 my @optional; 97 scalar(@{$package->{DEPENDS}}) gt 0 and 98 push @optional, 'Requires: %DEPENDS%'; 84 99 for my $line ( 85 100 '%package %NAME%', 86 '%requires', 87 '%DEPENDS%', 88 '%description', 101 'Summary: %DESCRIPTION_SHORT%', 102 'AutoReqProv: no', 103 @optional, 104 '', 105 '%description %NAME%', 89 106 '%DESCRIPTION%', 90 $self->add_install ,91 '%files ',107 $self->add_install ($package->{NAME}), 108 '%files %NAME%', 92 109 '%FILES%', 93 110 '', … … 100 117 } 101 118 $self->{config} = $config; 102 } else {103 for my $line (104 '%requires',105 '%DEPENDS%',106 '%description',107 '%DESCRIPTION%',108 $self->add_install,109 '%files',110 '%FILES%'111 ) {112 my $copy = $line;113 $self->subst ($copy);114 print $SPEC $copy, "\n";115 }116 119 } 120 print $SPEC '%changelog', "\n"; 117 121 close $SPEC; 118 122 }
Note:
See TracChangeset
for help on using the changeset viewer.