mirror of
https://github.com/xcat2/xcat-dep.git
synced 2024-11-21 09:01:46 +00:00
Add cpan2rpm, this is a rpm which can be used to create spec file from cpan tar.gz; Add perl-Net-DNS package, it is necessary for sles12 to support makedns for an issue in the version which shipped with sles12
Former-commit-id: 0475dcaa3d44ace25590909c5fde52292129cc89
This commit is contained in:
parent
3b2a81e7d1
commit
7713b2f19c
6
cpan2rpm/Buildnote
Normal file
6
cpan2rpm/Buildnote
Normal file
@ -0,0 +1,6 @@
|
||||
1. The spec file is included in the cpan2rpm-2.028.tar.gz, you can just untar
|
||||
it and extract out the cpan2rpm.spec.
|
||||
2. Since the cpan2rpm uses a subroutine interpolate from POD::Text but it is
|
||||
not supported in the latest build of POD::Text. The fix is to replace the
|
||||
'POD::Text' with 'POK::PlainText' in the two places of file 'cpan2rpm'.
|
||||
3. Generate the cpan2rpm-2.028-1.noarch.rpm as general rpm package.
|
BIN
cpan2rpm/cpan2rpm-2.028-1.noarch.rpm
Normal file
BIN
cpan2rpm/cpan2rpm-2.028-1.noarch.rpm
Normal file
Binary file not shown.
BIN
cpan2rpm/cpan2rpm-2.028.tar.gz
Normal file
BIN
cpan2rpm/cpan2rpm-2.028.tar.gz
Normal file
Binary file not shown.
6
perl-Net-DNS/Buildnote
Normal file
6
perl-Net-DNS/Buildnote
Normal file
@ -0,0 +1,6 @@
|
||||
How to build the perl-Net-DNS
|
||||
|
||||
1. cp the Net-DNS-0.80.tar.gz to the rpmbuild/SOURCES/
|
||||
2. cp the Net-DNS.spec to the rpmbuild/SPECS/
|
||||
3. cd rpmbuild/SPECS/
|
||||
4. rpmbuild -bb Net-DNS.spec
|
BIN
perl-Net-DNS/Net-DNS-0.80.tar.gz
Normal file
BIN
perl-Net-DNS/Net-DNS-0.80.tar.gz
Normal file
Binary file not shown.
130
perl-Net-DNS/Net-DNS.spec
Normal file
130
perl-Net-DNS/Net-DNS.spec
Normal file
@ -0,0 +1,130 @@
|
||||
#
|
||||
# - Net::DNS -
|
||||
# This spec file was automatically generated by cpan2rpm [ver: 2.028]
|
||||
# The following arguments were used:
|
||||
# ./Net-DNS-0.80.tar.gz
|
||||
# For more information on cpan2rpm please visit: http://perl.arix.com/
|
||||
#
|
||||
|
||||
%define pkgname Net-DNS
|
||||
%define filelist %{pkgname}-%{version}-filelist
|
||||
%define NVR %{pkgname}-%{version}-%{release}
|
||||
%define maketest 1
|
||||
|
||||
name: perl-Net-DNS
|
||||
summary: Net-DNS - Perl DNS resolver module
|
||||
version: 0.80
|
||||
release: 1
|
||||
vendor: Olaf Kolkman <olaf@net-dns.org>
|
||||
packager: Arix International <cpan2rpm@arix.com>
|
||||
license: Artistic
|
||||
group: Applications/CPAN
|
||||
url: http://www.cpan.org
|
||||
buildroot: %{_tmppath}/%{name}-%{version}-%(id -u -n)
|
||||
buildarch: x86_64
|
||||
prefix: %(echo %{_prefix})
|
||||
source: Net-DNS-0.80.tar.gz
|
||||
|
||||
%description
|
||||
Net::DNS is a collection of Perl modules that act as a Domain Name System
|
||||
(DNS) resolver. It allows the programmer to perform DNS queries that are
|
||||
beyond the capabilities of "gethostbyname" and "gethostbyaddr".
|
||||
|
||||
The programmer should be somewhat familiar with the format of a DNS packet
|
||||
and its various sections. See RFC 1035 or DNS and BIND (Albitz & Liu) for
|
||||
details.
|
||||
|
||||
#
|
||||
# This package was generated automatically with the cpan2rpm
|
||||
# utility. To get this software or for more information
|
||||
# please visit: http://perl.arix.com/
|
||||
#
|
||||
|
||||
%prep
|
||||
%setup -q -n %{pkgname}-%{version}
|
||||
chmod -R u+w %{_builddir}/%{pkgname}-%{version}
|
||||
|
||||
%build
|
||||
grep -rsl '^#!.*perl' . |
|
||||
grep -v '.bak$' |xargs --no-run-if-empty \
|
||||
%__perl -MExtUtils::MakeMaker -e 'MY->fixin(@ARGV)'
|
||||
CFLAGS="$RPM_OPT_FLAGS"
|
||||
%{__perl} Makefile.PL `%{__perl} -MExtUtils::MakeMaker -e ' print qq|PREFIX=%{buildroot}%{_prefix}| if \$ExtUtils::MakeMaker::VERSION =~ /5\.9[1-6]|6\.0[0-5]/ '`
|
||||
%{__make}
|
||||
%if %maketest
|
||||
%{__make} test
|
||||
%endif
|
||||
|
||||
%install
|
||||
[ "%{buildroot}" != "/" ] && rm -rf %{buildroot}
|
||||
|
||||
%{makeinstall} `%{__perl} -MExtUtils::MakeMaker -e ' print \$ExtUtils::MakeMaker::VERSION <= 6.05 ? qq|PREFIX=%{buildroot}%{_prefix}| : qq|DESTDIR=%{buildroot}| '`
|
||||
|
||||
cmd=/usr/share/spec-helper/compress_files
|
||||
[ -x $cmd ] || cmd=/usr/lib/rpm/brp-compress
|
||||
[ -x $cmd ] && $cmd
|
||||
|
||||
# SuSE Linux
|
||||
if [ -e /etc/SuSE-release -o -e /etc/UnitedLinux-release ]
|
||||
then
|
||||
%{__mkdir_p} %{buildroot}/var/adm/perl-modules
|
||||
%{__cat} `find %{buildroot} -name "perllocal.pod"` \
|
||||
| %{__sed} -e s+%{buildroot}++g \
|
||||
> %{buildroot}/var/adm/perl-modules/%{name}
|
||||
fi
|
||||
|
||||
# remove special files
|
||||
find %{buildroot} -name "perllocal.pod" \
|
||||
-o -name ".packlist" \
|
||||
-o -name "*.bs" \
|
||||
|xargs -i rm -f {}
|
||||
|
||||
# no empty directories
|
||||
find %{buildroot}%{_prefix} \
|
||||
-type d -depth \
|
||||
-exec rmdir {} \; 2>/dev/null
|
||||
|
||||
%{__perl} -MFile::Find -le '
|
||||
find({ wanted => \&wanted, no_chdir => 1}, "%{buildroot}");
|
||||
print "%doc Changes README TODO contrib demo";
|
||||
for my $x (sort @dirs, @files) {
|
||||
push @ret, $x unless indirs($x);
|
||||
}
|
||||
print join "\n", sort @ret;
|
||||
|
||||
sub wanted {
|
||||
return if /auto$/;
|
||||
|
||||
local $_ = $File::Find::name;
|
||||
my $f = $_; s|^\Q%{buildroot}\E||;
|
||||
return unless length;
|
||||
return $files[@files] = $_ if -f $f;
|
||||
|
||||
$d = $_;
|
||||
/\Q$d\E/ && return for reverse sort @INC;
|
||||
$d =~ /\Q$_\E/ && return
|
||||
for qw|/etc %_prefix/man %_prefix/bin %_prefix/share|;
|
||||
|
||||
$dirs[@dirs] = $_;
|
||||
}
|
||||
|
||||
sub indirs {
|
||||
my $x = shift;
|
||||
$x =~ /^\Q$_\E\// && $x ne $_ && return 1 for @dirs;
|
||||
}
|
||||
' > %filelist
|
||||
|
||||
[ -z %filelist ] && {
|
||||
echo "ERROR: empty %files listing"
|
||||
exit -1
|
||||
}
|
||||
|
||||
%clean
|
||||
[ "%{buildroot}" != "/" ] && rm -rf %{buildroot}
|
||||
|
||||
%files -f %filelist
|
||||
%defattr(-,root,root)
|
||||
|
||||
%changelog
|
||||
* Tue Oct 28 2014 root@slesmn
|
||||
- Initial build.
|
Loading…
Reference in New Issue
Block a user