* [PATCH 1/3] Fix probing for already installed Error.pm
@ 2006-06-30 5:09 Pavel Roskin
2006-06-30 5:09 ` [PATCH 2/3] Delete manuals if compiling without docs Pavel Roskin
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Pavel Roskin @ 2006-06-30 5:09 UTC (permalink / raw)
To: git
From: Pavel Roskin <proski@gnu.org>
Signed-off-by: Pavel Roskin <proski@gnu.org>
---
perl/Makefile.PL | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/perl/Makefile.PL b/perl/Makefile.PL
index d401a66..b3fbb73 100644
--- a/perl/Makefile.PL
+++ b/perl/Makefile.PL
@@ -12,7 +12,7 @@ my %pm = ('Git.pm' => '$(INST_LIBDIR)/Gi
# We come with our own bundled Error.pm. It's not in the set of default
# Perl modules so install it if it's not available on the system yet.
-eval { require 'Error' };
+eval { require Error };
if ($@) {
$pm{'Error.pm'} = '$(INST_LIBDIR)/Error.pm';
}
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/3] Delete manuals if compiling without docs
2006-06-30 5:09 [PATCH 1/3] Fix probing for already installed Error.pm Pavel Roskin
@ 2006-06-30 5:09 ` Pavel Roskin
2006-06-30 5:09 ` [PATCH 3/3] Make perl interface a separate package Pavel Roskin
2006-06-30 7:28 ` [PATCH 1/3] Fix probing for already installed Error.pm Junio C Hamano
2 siblings, 0 replies; 6+ messages in thread
From: Pavel Roskin @ 2006-06-30 5:09 UTC (permalink / raw)
To: git
From: Pavel Roskin <proski@gnu.org>
Otherwise, rpm would complain about unpacked files.
Signed-off-by: Pavel Roskin <proski@gnu.org>
---
git.spec.in | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/git.spec.in b/git.spec.in
index 8ccd256..b8feda3 100644
--- a/git.spec.in
+++ b/git.spec.in
@@ -86,6 +86,8 @@ make %{_smp_mflags} DESTDIR=$RPM_BUILD_R
(find $RPM_BUILD_ROOT%{_bindir} -type f | grep -vE "arch|svn|cvs|email|gitk" | sed -e s@^$RPM_BUILD_ROOT@@) > bin-man-doc-files
%if %{!?_without_docs:1}0
(find $RPM_BUILD_ROOT%{_mandir} $RPM_BUILD_ROOT/Documentation -type f | grep -vE "arch|svn|git-cvs|email|gitk" | sed -e s@^$RPM_BUILD_ROOT@@ -e 's/$/*/' ) >> bin-man-doc-files
+%else
+rm -rf $RPM_BUILD_ROOT%{_mandir}
%endif
%clean
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 3/3] Make perl interface a separate package
2006-06-30 5:09 [PATCH 1/3] Fix probing for already installed Error.pm Pavel Roskin
2006-06-30 5:09 ` [PATCH 2/3] Delete manuals if compiling without docs Pavel Roskin
@ 2006-06-30 5:09 ` Pavel Roskin
2006-06-30 7:28 ` [PATCH 1/3] Fix probing for already installed Error.pm Junio C Hamano
2 siblings, 0 replies; 6+ messages in thread
From: Pavel Roskin @ 2006-06-30 5:09 UTC (permalink / raw)
To: git
From: Pavel Roskin <proski@gnu.org>
Install it as a vendor package. Remove .packlist, perllocal.pod,
Git.bs. Require perl(Error) for building so that our Error.pm is not
installed.
Signed-off-by: Pavel Roskin <proski@gnu.org>
---
git.spec.in | 21 +++++++++++++++++++--
1 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/git.spec.in b/git.spec.in
index b8feda3..6d90034 100644
--- a/git.spec.in
+++ b/git.spec.in
@@ -9,7 +9,7 @@ URL: http://kernel.org/pub/software/sc
Source: http://kernel.org/pub/software/scm/git/%{name}-%{version}.tar.gz
BuildRequires: zlib-devel >= 1.2, openssl-devel, curl-devel, expat-devel %{!?_without_docs:, xmlto, asciidoc > 6.0.3}
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-Requires: git-core, git-svn, git-cvs, git-arch, git-email, gitk
+Requires: git-core, git-svn, git-cvs, git-arch, git-email, gitk, perl-Git
%description
This is a stupid (but extremely fast) directory content manager. It
@@ -70,6 +70,16 @@ Requires: git-core = %{version}-%{
%description -n gitk
Git revision tree visualiser ('gitk')
+%package -n perl-Git
+Summary: Perl interface to Git
+Group: Development/Libraries
+Requires: git-core = %{version}-%{release}
+Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
+BuildRequires: perl(Error)
+
+%description -n perl-Git
+Perl interface to Git
+
%prep
%setup -q
@@ -80,10 +90,14 @@ make %{_smp_mflags} CFLAGS="$RPM_OPT_FLA
%install
rm -rf $RPM_BUILD_ROOT
make %{_smp_mflags} DESTDIR=$RPM_BUILD_ROOT WITH_OWN_SUBPROCESS_PY=YesPlease \
- prefix=%{_prefix} mandir=%{_mandir} \
+ prefix=%{_prefix} mandir=%{_mandir} INSTALLDIRS=vendor \
install %{!?_without_docs: install-doc}
+find $RPM_BUILD_ROOT -type f -name .packlist -exec rm -f {} ';'
+find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -exec rm -f {} ';'
+find $RPM_BUILD_ROOT -type f -name perllocal.pod -exec rm -f {} ';'
(find $RPM_BUILD_ROOT%{_bindir} -type f | grep -vE "arch|svn|cvs|email|gitk" | sed -e s@^$RPM_BUILD_ROOT@@) > bin-man-doc-files
+(find $RPM_BUILD_ROOT%{perl_vendorarch} -type f | sed -e s@^$RPM_BUILD_ROOT@@) >> perl-files
%if %{!?_without_docs:1}0
(find $RPM_BUILD_ROOT%{_mandir} $RPM_BUILD_ROOT/Documentation -type f | grep -vE "arch|svn|git-cvs|email|gitk" | sed -e s@^$RPM_BUILD_ROOT@@ -e 's/$/*/' ) >> bin-man-doc-files
%else
@@ -131,6 +145,9 @@ # These are no files in the root package
%{!?_without_docs: %{_mandir}/man1/*gitk*.1*}
%{!?_without_docs: %doc Documentation/*gitk*.html }
+%files -n perl-Git -f perl-files
+%defattr(-,root,root)
+
%files core -f bin-man-doc-files
%defattr(-,root,root)
%{_datadir}/git-core/
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 1/3] Fix probing for already installed Error.pm
2006-06-30 5:09 [PATCH 1/3] Fix probing for already installed Error.pm Pavel Roskin
2006-06-30 5:09 ` [PATCH 2/3] Delete manuals if compiling without docs Pavel Roskin
2006-06-30 5:09 ` [PATCH 3/3] Make perl interface a separate package Pavel Roskin
@ 2006-06-30 7:28 ` Junio C Hamano
2006-06-30 7:40 ` Junio C Hamano
2 siblings, 1 reply; 6+ messages in thread
From: Junio C Hamano @ 2006-06-30 7:28 UTC (permalink / raw)
To: Pavel Roskin, Petr Baudis; +Cc: git
Pavel Roskin <proski@gnu.org> writes:
> diff --git a/perl/Makefile.PL b/perl/Makefile.PL
> index d401a66..b3fbb73 100644
> --- a/perl/Makefile.PL
> +++ b/perl/Makefile.PL
> @@ -12,7 +12,7 @@ my %pm = ('Git.pm' => '$(INST_LIBDIR)/Gi
>
> # We come with our own bundled Error.pm. It's not in the set of default
> # Perl modules so install it if it's not available on the system yet.
> -eval { require 'Error' };
> +eval { require Error };
> if ($@) {
> $pm{'Error.pm'} = '$(INST_LIBDIR)/Error.pm';
> }
The syntax updates is correct, but this is still wrong, I am
afraid.
It is trying to see if we need to install the Error.pm we ship
just in case the system does not have Error.pm available. But
this script is run in perl/ directory where we have that private
copy of Error.pm, so "require Error" always succeeds, eh, at
least after you fixed the above syntax error X-<.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 1/3] Fix probing for already installed Error.pm
2006-06-30 7:28 ` [PATCH 1/3] Fix probing for already installed Error.pm Junio C Hamano
@ 2006-06-30 7:40 ` Junio C Hamano
2006-06-30 18:08 ` Pavel Roskin
0 siblings, 1 reply; 6+ messages in thread
From: Junio C Hamano @ 2006-06-30 7:40 UTC (permalink / raw)
To: Pavel Roskin, Petr Baudis; +Cc: git
Junio C Hamano <junkio@cox.net> writes:
> Pavel Roskin <proski@gnu.org> writes:
>
>> diff --git a/perl/Makefile.PL b/perl/Makefile.PL
>> index d401a66..b3fbb73 100644
>> --- a/perl/Makefile.PL
>> +++ b/perl/Makefile.PL
>> @@ -12,7 +12,7 @@ my %pm = ('Git.pm' => '$(INST_LIBDIR)/Gi
>>
>> # We come with our own bundled Error.pm. It's not in the set of default
>> # Perl modules so install it if it's not available on the system yet.
>> -eval { require 'Error' };
>> +eval { require Error };
>> if ($@) {
>> $pm{'Error.pm'} = '$(INST_LIBDIR)/Error.pm';
>> }
>
> The syntax updates is correct, but this is still wrong, I am
> afraid.
>
> It is trying to see if we need to install the Error.pm we ship
> just in case the system does not have Error.pm available. But
> this script is run in perl/ directory where we have that private
> copy of Error.pm, so "require Error" always succeeds, eh, at
> least after you fixed the above syntax error X-<.
That is, we would want something like this.
diff --git a/perl/Error.pm b/perl/private-Error.pm
similarity index 100%
rename from perl/Error.pm
rename to perl/private-Error.pm
diff --git a/perl/Makefile.PL b/perl/Makefile.PL
index b3fbb73..25ae54a 100644
--- a/perl/Makefile.PL
+++ b/perl/Makefile.PL
@@ -14,7 +14,7 @@ # We come with our own bundled Error.pm.
# Perl modules so install it if it's not available on the system yet.
eval { require Error };
if ($@) {
- $pm{'Error.pm'} = '$(INST_LIBDIR)/Error.pm';
+ $pm{'private-Error.pm'} = '$(INST_LIBDIR)/Error.pm';
}
WriteMakefile(
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 1/3] Fix probing for already installed Error.pm
2006-06-30 7:40 ` Junio C Hamano
@ 2006-06-30 18:08 ` Pavel Roskin
0 siblings, 0 replies; 6+ messages in thread
From: Pavel Roskin @ 2006-06-30 18:08 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Petr Baudis, git
On Fri, 2006-06-30 at 00:40 -0700, Junio C Hamano wrote:
> > It is trying to see if we need to install the Error.pm we ship
> > just in case the system does not have Error.pm available. But
> > this script is run in perl/ directory where we have that private
> > copy of Error.pm, so "require Error" always succeeds, eh, at
> > least after you fixed the above syntax error X-<.
Nice catch! Thank you for fixing it.
--
Regards,
Pavel Roskin
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2006-06-30 18:08 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-06-30 5:09 [PATCH 1/3] Fix probing for already installed Error.pm Pavel Roskin
2006-06-30 5:09 ` [PATCH 2/3] Delete manuals if compiling without docs Pavel Roskin
2006-06-30 5:09 ` [PATCH 3/3] Make perl interface a separate package Pavel Roskin
2006-06-30 7:28 ` [PATCH 1/3] Fix probing for already installed Error.pm Junio C Hamano
2006-06-30 7:40 ` Junio C Hamano
2006-06-30 18:08 ` Pavel Roskin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).