From 83562ac72a082a80e193044d9fdca48fd323bc2c Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Wed, 14 Oct 2009 02:40:46 +0000 Subject: [PATCH 01/21] Update to git-1.6.5 --- .cvsignore | 2 +- git-1.6-update-contrib-hooks-path.patch | 2 +- git.spec | 12 +++++++----- sources | 2 +- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/.cvsignore b/.cvsignore index 21852c0..dd5767e 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.6.5.rc2.tar.bz2 +git-1.6.5.tar.bz2 diff --git a/git-1.6-update-contrib-hooks-path.patch b/git-1.6-update-contrib-hooks-path.patch index cfa3817..a4220ad 100644 --- a/git-1.6-update-contrib-hooks-path.patch +++ b/git-1.6-update-contrib-hooks-path.patch @@ -33,7 +33,7 @@ index 18d2e0f..cf57878 100755 --- a/templates/hooks--post-receive.sample +++ b/templates/hooks--post-receive.sample @@ -12,4 +12,4 @@ - # see contrib/hooks/ for an sample, or uncomment the next line and + # see contrib/hooks/ for a sample, or uncomment the next line and # rename the file to "post-receive". -#. /usr/share/doc/git-core/contrib/hooks/post-receive-email diff --git a/git.spec b/git.spec index ccb0f29..d5348d7 100644 --- a/git.spec +++ b/git.spec @@ -1,13 +1,12 @@ # Pass --without docs to rpmbuild if you don't want the documentation -%global snap .rc2 Name: git Version: 1.6.5 -Release: 0.2%{?snap}%{?dist} +Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 Group: Development/Tools URL: http://git-scm.com/ -Source0: http://kernel.org/pub/software/scm/git/%{name}-%{version}%{?snap}.tar.bz2 +Source0: http://kernel.org/pub/software/scm/git/%{name}-%{version}.tar.bz2 Source1: git-init.el Source2: git.xinetd Source3: git.conf.httpd @@ -187,7 +186,7 @@ Requires: git = %{version}-%{release}, emacs-common >= 22.2 %endif %prep -%setup -q -n %{name}-%{version}%{?snap} +%setup -q %patch0 -p1 %patch1 -p1 %patch2 -p1 @@ -213,7 +212,7 @@ cat << \EOF > %{name}-req sed -e '/perl(packed-refs)/d' EOF -%global __perl_requires %{_builddir}/%{name}-%{version}%{?snap}/%{name}-req +%global __perl_requires %{_builddir}/%{name}-%{version}/%{name}-req chmod +x %{__perl_requires} %build @@ -388,6 +387,9 @@ rm -rf $RPM_BUILD_ROOT # No files for you! %changelog +* Sun Oct 11 2009 Todd Zullinger - 1.6.5-1 +- git-1.6.5 + * Mon Sep 28 2009 Todd Zullinger - 1.6.5-0.2.rc2 - git-1.6.5.rc2 - Enable Linus' block-sha1 implementation diff --git a/sources b/sources index 5030125..36246ed 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -e9cfec47e38232948dc90188927f7782 git-1.6.5.rc2.tar.bz2 +da86c1736c55edb9f446828581137b51 git-1.6.5.tar.bz2 From 8c6a74fbc761ec81f73ae9c040290a9f498d5299 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Sun, 18 Oct 2009 13:30:26 +0000 Subject: [PATCH 02/21] Update to git-1.6.5.1 --- .cvsignore | 2 +- git.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.cvsignore b/.cvsignore index dd5767e..ae71b27 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.6.5.tar.bz2 +git-1.6.5.1.tar.bz2 diff --git a/git.spec b/git.spec index d5348d7..cf422cd 100644 --- a/git.spec +++ b/git.spec @@ -1,6 +1,6 @@ # Pass --without docs to rpmbuild if you don't want the documentation Name: git -Version: 1.6.5 +Version: 1.6.5.1 Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 @@ -387,6 +387,9 @@ rm -rf $RPM_BUILD_ROOT # No files for you! %changelog +* Sat Oct 17 2009 Todd Zullinger - 1.6.5.1-1 +- git-1.6.5.1 + * Sun Oct 11 2009 Todd Zullinger - 1.6.5-1 - git-1.6.5 diff --git a/sources b/sources index 36246ed..58e8374 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -da86c1736c55edb9f446828581137b51 git-1.6.5.tar.bz2 +fd784f407d538705ed36c0498542d4f5 git-1.6.5.1.tar.bz2 From baa02def71078bd1bded4b271d868fdb029e4634 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Sat, 31 Oct 2009 01:44:28 +0000 Subject: [PATCH 03/21] Update to git-1.6.5.2 - Drop asciidoc --unsafe option, it should not be needed anymore - Don't use install -t/-T, they're not compatible with older coreutils - Don't use -perm /a+x with find, it's incompatible with older findutils --- .cvsignore | 2 +- git.spec | 18 ++++++++++++------ sources | 2 +- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/.cvsignore b/.cvsignore index ae71b27..49a8acf 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.6.5.1.tar.bz2 +git-1.6.5.2.tar.bz2 diff --git a/git.spec b/git.spec index cf422cd..dd9aff7 100644 --- a/git.spec +++ b/git.spec @@ -1,6 +1,6 @@ # Pass --without docs to rpmbuild if you don't want the documentation Name: git -Version: 1.6.5.1 +Version: 1.6.5.2 Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 @@ -195,7 +195,7 @@ Requires: git = %{version}-%{release}, emacs-common >= 22.2 # Otherwise it will rebuild in %%install due to flags changes. %define make_git \ make %{_smp_mflags} V=1 CFLAGS="$RPM_OPT_FLAGS" \\\ - ASCIIDOC="asciidoc --unsafe" ASCIIDOC8=1 ASCIIDOC_NO_ROFF=1 \\\ + ASCIIDOC8=1 ASCIIDOC_NO_ROFF=1 \\\ BLK_SHA1=1 \\\ ETC_GITCONFIG=%{_sysconfdir}/gitconfig \\\ DESTDIR=$RPM_BUILD_ROOT \\\ @@ -241,8 +241,8 @@ install -Dpm 644 %{SOURCE1} \ %endif mkdir -p $RPM_BUILD_ROOT%{_var}/www/git -install -pm 644 -t $RPM_BUILD_ROOT%{_var}/www/git gitweb/*.png gitweb/*.css -install -pm 755 -t $RPM_BUILD_ROOT%{_var}/www/git gitweb/gitweb.cgi +install -pm 644 gitweb/*.png gitweb/*.css $RPM_BUILD_ROOT%{_var}/www/git +install -pm 755 gitweb/gitweb.cgi $RPM_BUILD_ROOT%{_var}/www/git mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/httpd/conf.d install -pm 0644 %{SOURCE3} $RPM_BUILD_ROOT/%{_sysconfdir}/httpd/conf.d/git.conf @@ -267,7 +267,7 @@ mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d install -pm 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d/git mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d -install -pm 644 -T contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d/git +install -pm 644 contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d/git # Move contrib/hooks out of %%docdir and make them executable mkdir -p $RPM_BUILD_ROOT%{_datadir}/git-core/contrib @@ -289,7 +289,7 @@ chmod g-w $RPM_BUILD_ROOT%{_libexecdir}/git-core/* chmod a-x $RPM_BUILD_ROOT%{_libexecdir}/git-core/git-mergetool--lib rm -f {Documentation/technical,contrib/emacs}/.gitignore chmod a-x Documentation/technical/api-index.sh -find contrib -type f -perm /a+x | xargs chmod -x +find contrib -type f | xargs chmod -x %clean @@ -387,6 +387,12 @@ rm -rf $RPM_BUILD_ROOT # No files for you! %changelog +* Mon Oct 26 2009 Todd Zullinger - 1.6.5.2-1 +- git-1.6.5.2 +- Drop asciidoc --unsafe option, it should not be needed anymore +- Don't use install -t/-T, they're not compatible with older coreutils +- Don't use -perm /a+x with find, it's incompatible with older findutils + * Sat Oct 17 2009 Todd Zullinger - 1.6.5.1-1 - git-1.6.5.1 diff --git a/sources b/sources index 58e8374..acbb4bd 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -fd784f407d538705ed36c0498542d4f5 git-1.6.5.1.tar.bz2 +99708c449b23433136dbdfa38bd16d80 git-1.6.5.2.tar.bz2 From 075e35089926ded6357e68fdc07dcfa79fbed10b Mon Sep 17 00:00:00 2001 From: Bill Nottingham Date: Wed, 25 Nov 2009 23:19:26 +0000 Subject: [PATCH 04/21] Fix typo that causes a failure to update the common directory. (releng #2781) --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 6c8a637..fbfe8aa 100644 --- a/Makefile +++ b/Makefile @@ -4,7 +4,7 @@ NAME := git SPECFILE = $(firstword $(wildcard *.spec)) define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done endef MAKEFILE_COMMON := $(shell $(find-makefile-common)) From dc9ff0d4c3e0183dd11c23531f7439e1891f29af Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Fri, 27 Nov 2009 03:10:18 +0000 Subject: [PATCH 05/21] Update to git-1.6.5.3 - Only BR perl(Error) on Fedora and RHEL >= 5 - Use config.mak to set build options - Improve compatibility with EPEL - Replace $RPM_BUILD_ROOT with %{buildroot} - Fix Obsoletes for those rebuilding on EL-4 --- .cvsignore | 2 +- git.spec | 158 ++++++++++++++++++++++++++++++++++------------------- sources | 2 +- 3 files changed, 105 insertions(+), 57 deletions(-) diff --git a/.cvsignore b/.cvsignore index 49a8acf..57401d1 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.6.5.2.tar.bz2 +git-1.6.5.3.tar.bz2 diff --git a/git.spec b/git.spec index dd9aff7..715c730 100644 --- a/git.spec +++ b/git.spec @@ -1,6 +1,12 @@ # Pass --without docs to rpmbuild if you don't want the documentation +%if 0%{?rhel} && 0%{?rhel} <= 5 +%global gitcoredir %{_bindir} +%else +%global gitcoredir %{_libexecdir}/git-core +%endif + Name: git -Version: 1.6.5.2 +Version: 1.6.5.3 Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 @@ -33,13 +39,21 @@ BuildRequires: zlib-devel >= 1.2 Requires: less Requires: openssh-clients +%if 0%{?fedora} || 0%{?rhel} >= 5 Requires: perl(Error) +%endif Requires: perl-Git = %{version}-%{release} Requires: rsync Requires: zlib >= 1.2 Provides: git-core = %{version}-%{release} +%if 0%{?fedora} || 0%{?rhel} >= 5 Obsoletes: git-core <= 1.5.4.3 +%else +# EL-4 has 1.5.4.7-3.el4. We don't support this, but no point making it more +# difficult than it needs to be (folks stuck on EL-4 have it bad enough ;). +Obsoletes: git-core <= 1.5.4.7-4 +%endif %description Git is a fast, scalable, distributed revision control system with an @@ -67,7 +81,13 @@ Requires: perl-Git = %{version}-%{release} Requires: emacs-git = %{version}-%{release} Requires: git-arch = %{version}-%{release} %endif +%if 0%{?fedora} || 0%{?rhel} >= 5 Obsoletes: git <= 1.5.4.3 +%else +# EL-4 has 1.5.4.7-3.el4. We don't support this, but no point making it more +# difficult than it needs to be (folks stuck on EL-4 have it bad enough ;). +Obsoletes: git <= 1.5.4.7-4 +%endif %description all Git is a fast, scalable, distributed revision control system with an @@ -111,7 +131,10 @@ Group: Development/Tools %if 0%{?fedora} >= 10 BuildArch: noarch %endif -Requires: git = %{version}-%{release}, cvs, cvsps +Requires: git = %{version}-%{release}, cvs +%if 0%{?fedora} || 0%{?rhel} >= 5 +Requires: cvsps +%endif %description cvs Git tools for importing CVS repositories. @@ -134,7 +157,10 @@ Group: Development/Tools BuildArch: noarch %endif Requires: git = %{version}-%{release}, perl-Git = %{version}-%{release} -Requires: perl(Net::SMTP::SSL), perl(Authen::SASL) +Requires: perl(Authen::SASL) +%if 0%{?fedora} || 0%{?rhel} >= 5 +Requires: perl(Net::SMTP::SSL) +%endif %description email Git tools for sending email. @@ -165,9 +191,12 @@ Group: Development/Libraries %if 0%{?fedora} >= 10 BuildArch: noarch %endif -Requires: git = %{version}-%{release}, perl(Error) -Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) +Requires: git = %{version}-%{release} +%if 0%{?fedora} || 0%{?rhel} >= 5 BuildRequires: perl(Error), perl(ExtUtils::MakeMaker) +Requires: perl(Error) +%endif +Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) %description -n perl-Git Perl interface to Git. @@ -193,16 +222,27 @@ Requires: git = %{version}-%{release}, emacs-common >= 22.2 # Use these same options for every invocation of 'make'. # Otherwise it will rebuild in %%install due to flags changes. -%define make_git \ -make %{_smp_mflags} V=1 CFLAGS="$RPM_OPT_FLAGS" \\\ - ASCIIDOC8=1 ASCIIDOC_NO_ROFF=1 \\\ - BLK_SHA1=1 \\\ - ETC_GITCONFIG=%{_sysconfdir}/gitconfig \\\ - DESTDIR=$RPM_BUILD_ROOT \\\ - INSTALL="install -p" \\\ - INSTALLDIRS=vendor \\\ - htmldir=%{_docdir}/%{name}-%{version} \\\ - prefix=%{_prefix} +cat << \EOF > config.mak +V = 1 +CFLAGS = %{optflags} +BLK_SHA1 = 1 +ETC_GITCONFIG = %{_sysconfdir}/gitconfig +DESTDIR = %{buildroot} +INSTALL = install -p +htmldir = %{_docdir}/%{name}-%{version} +prefix = %{_prefix} +EOF + +%if 0%{?fedora} +cat << \EOF >> config.mak +ASCIIDOC8 = 1 +ASCIIDOC_NO_ROFF = 1 +EOF +%endif + +%if 0%{?rhel} && 0%{?rhel} <= 5 +echo gitexecdir = %{_bindir} >> config.mak +%endif # Filter bogus perl requires # packed-refs comes from a comment in contrib/hooks/update-paranoid @@ -216,7 +256,7 @@ EOF chmod +x %{__perl_requires} %build -%{make_git} all %{!?_without_docs: doc} +make %{?_smp_mflags} all %{!?_without_docs: doc} %if 0%{?fedora} make -C contrib/emacs @@ -226,53 +266,53 @@ make -C contrib/emacs sed -i '/^#!bash/,+1 d' contrib/completion/git-completion.bash %install -rm -rf $RPM_BUILD_ROOT -%{make_git} install %{!?_without_docs: install-doc} +rm -rf %{buildroot} +make %{?_smp_mflags} INSTALLDIRS=vendor install %{!?_without_docs: install-doc} %if 0%{?fedora} make -C contrib/emacs install \ - emacsdir=$RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp -for elc in $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/*.elc ; do + emacsdir=%{buildroot}%{_datadir}/emacs/site-lisp +for elc in %{buildroot}%{_datadir}/emacs/site-lisp/*.elc ; do install -pm 644 contrib/emacs/$(basename $elc .elc).el \ - $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp + %{buildroot}%{_datadir}/emacs/site-lisp done install -Dpm 644 %{SOURCE1} \ - $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d/git-init.el + %{buildroot}%{_datadir}/emacs/site-lisp/site-start.d/git-init.el %endif -mkdir -p $RPM_BUILD_ROOT%{_var}/www/git -install -pm 644 gitweb/*.png gitweb/*.css $RPM_BUILD_ROOT%{_var}/www/git -install -pm 755 gitweb/gitweb.cgi $RPM_BUILD_ROOT%{_var}/www/git -mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/httpd/conf.d -install -pm 0644 %{SOURCE3} $RPM_BUILD_ROOT/%{_sysconfdir}/httpd/conf.d/git.conf +mkdir -p %{buildroot}%{_var}/www/git +install -pm 644 gitweb/*.png gitweb/*.css %{buildroot}%{_var}/www/git +install -pm 755 gitweb/gitweb.cgi %{buildroot}%{_var}/www/git +mkdir -p %{buildroot}/%{_sysconfdir}/httpd/conf.d +install -pm 0644 %{SOURCE3} %{buildroot}/%{_sysconfdir}/httpd/conf.d/git.conf -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 %{buildroot} -type f -name .packlist -exec rm -f {} ';' +find %{buildroot} -type f -name '*.bs' -empty -exec rm -f {} ';' +find %{buildroot} -type f -name perllocal.pod -exec rm -f {} ';' %if ! 0%{?fedora} -find $RPM_BUILD_ROOT Documentation -type f -name 'git-archimport*' -exec rm -f {} ';' +find %{buildroot} Documentation -type f -name 'git-archimport*' -exec rm -f {} ';' %endif -(find $RPM_BUILD_ROOT{%{_bindir},%{_libexecdir}} -type f | grep -vE "archimport|svn|cvs|email|gitk|git-gui|git-citooli|git-daemon" | sed -e s@^$RPM_BUILD_ROOT@@) > bin-man-doc-files -(find $RPM_BUILD_ROOT%{perl_vendorlib} -type f | sed -e s@^$RPM_BUILD_ROOT@@) >> perl-files +(find %{buildroot}{%{_bindir},%{_libexecdir}} -type f | grep -vE "archimport|svn|cvs|email|gitk|git-gui|git-citool|git-daemon" | sed -e s@^%{buildroot}@@) > bin-man-doc-files +(find %{buildroot}%{perl_vendorlib} -type f | sed -e s@^%{buildroot}@@) >> perl-files %if %{!?_without_docs:1}0 -(find $RPM_BUILD_ROOT%{_mandir} -type f | grep -vE "archimport|svn|git-cvs|email|gitk|git-gui|git-citool|git-daemon" | sed -e s@^$RPM_BUILD_ROOT@@ -e 's/$/*/' ) >> bin-man-doc-files +(find %{buildroot}%{_mandir} -type f | grep -vE "archimport|svn|git-cvs|email|gitk|git-gui|git-citool|git-daemon" | sed -e s@^%{buildroot}@@ -e 's/$/*/' ) >> bin-man-doc-files %else -rm -rf $RPM_BUILD_ROOT%{_mandir} +rm -rf %{buildroot}%{_mandir} %endif -mkdir -p $RPM_BUILD_ROOT%{_var}/lib/git -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d -install -pm 0644 %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/xinetd.d/git +mkdir -p %{buildroot}%{_var}/lib/git +mkdir -p %{buildroot}%{_sysconfdir}/xinetd.d +install -pm 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/xinetd.d/git -mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d -install -pm 644 contrib/completion/git-completion.bash $RPM_BUILD_ROOT%{_sysconfdir}/bash_completion.d/git +mkdir -p %{buildroot}%{_sysconfdir}/bash_completion.d +install -pm 644 contrib/completion/git-completion.bash %{buildroot}%{_sysconfdir}/bash_completion.d/git # Move contrib/hooks out of %%docdir and make them executable -mkdir -p $RPM_BUILD_ROOT%{_datadir}/git-core/contrib -mv contrib/hooks $RPM_BUILD_ROOT%{_datadir}/git-core/contrib -chmod +x $RPM_BUILD_ROOT%{_datadir}/git-core/contrib/hooks/* +mkdir -p %{buildroot}%{_datadir}/git-core/contrib +mv contrib/hooks %{buildroot}%{_datadir}/git-core/contrib +chmod +x %{buildroot}%{_datadir}/git-core/contrib/hooks/* pushd contrib > /dev/null ln -s ../../../git-core/contrib/hooks popd > /dev/null @@ -282,24 +322,24 @@ desktop-file-install \ %if 0%{?rhel} && 0%{?rhel} <= 5 --vendor fedora \ %endif - --dir=${RPM_BUILD_ROOT}%{_datadir}/applications %{SOURCE4} + --dir=%{buildroot}%{_datadir}/applications %{SOURCE4} # quiet some rpmlint complaints -chmod g-w $RPM_BUILD_ROOT%{_libexecdir}/git-core/* -chmod a-x $RPM_BUILD_ROOT%{_libexecdir}/git-core/git-mergetool--lib +chmod -R g-w %{buildroot} +find %{buildroot} -name git-mergetool--lib | xargs chmod a-x rm -f {Documentation/technical,contrib/emacs}/.gitignore chmod a-x Documentation/technical/api-index.sh find contrib -type f | xargs chmod -x %clean -rm -rf $RPM_BUILD_ROOT +rm -rf %{buildroot} %files -f bin-man-doc-files %defattr(-,root,root) %{_datadir}/git-core/ -%dir %{_libexecdir}/git-core/ +%dir %{gitcoredir} %doc README COPYING Documentation/*.txt contrib/ %{!?_without_docs: %doc Documentation/*.html Documentation/docbook-xsl.css} %{!?_without_docs: %doc Documentation/howto Documentation/technical} @@ -308,7 +348,7 @@ rm -rf $RPM_BUILD_ROOT %files svn %defattr(-,root,root) -%{_libexecdir}/git-core/*svn* +%{gitcoredir}/*svn* %doc Documentation/*svn*.txt %{!?_without_docs: %{_mandir}/man1/*svn*.1*} %{!?_without_docs: %doc Documentation/*svn*.html } @@ -317,7 +357,7 @@ rm -rf $RPM_BUILD_ROOT %defattr(-,root,root) %doc Documentation/*git-cvs*.txt %{_bindir}/git-cvsserver -%{_libexecdir}/git-core/*cvs* +%{gitcoredir}/*cvs* %{!?_without_docs: %{_mandir}/man1/*cvs*.1*} %{!?_without_docs: %doc Documentation/*git-cvs*.html } @@ -325,7 +365,7 @@ rm -rf $RPM_BUILD_ROOT %files arch %defattr(-,root,root) %doc Documentation/git-archimport.txt -%{_libexecdir}/git-core/git-archimport +%{gitcoredir}/git-archimport %{!?_without_docs: %{_mandir}/man1/git-archimport.1*} %{!?_without_docs: %doc Documentation/git-archimport.html } %endif @@ -333,14 +373,14 @@ rm -rf $RPM_BUILD_ROOT %files email %defattr(-,root,root) %doc Documentation/*email*.txt -%{_libexecdir}/git-core/*email* +%{gitcoredir}/*email* %{!?_without_docs: %{_mandir}/man1/*email*.1*} %{!?_without_docs: %doc Documentation/*email*.html } %files gui %defattr(-,root,root) -%{_libexecdir}/git-core/git-gui* -%{_libexecdir}/git-core/git-citool +%{gitcoredir}/git-gui* +%{gitcoredir}/git-citool %{_datadir}/applications/*git-gui.desktop %{_datadir}/git-gui/ %{!?_without_docs: %{_mandir}/man1/git-gui.1*} @@ -371,7 +411,7 @@ rm -rf $RPM_BUILD_ROOT %defattr(-,root,root) %doc Documentation/*daemon*.txt %config(noreplace)%{_sysconfdir}/xinetd.d/git -%{_libexecdir}/git-core/git-daemon +%{gitcoredir}/git-daemon %{_var}/lib/git %{!?_without_docs: %{_mandir}/man1/*daemon*.1*} %{!?_without_docs: %doc Documentation/*daemon*.html} @@ -387,6 +427,14 @@ rm -rf $RPM_BUILD_ROOT # No files for you! %changelog +* Sat Nov 21 2009 Todd Zullinger - 1.6.5.3-1 +- git-1.6.5.3 +- Only BR perl(Error) on Fedora and RHEL >= 5 +- Use config.mak to set build options +- Improve compatibility with EPEL +- Replace $RPM_BUILD_ROOT with %%{buildroot} +- Fix Obsoletes for those rebuilding on EL-4 + * Mon Oct 26 2009 Todd Zullinger - 1.6.5.2-1 - git-1.6.5.2 - Drop asciidoc --unsafe option, it should not be needed anymore diff --git a/sources b/sources index acbb4bd..f3afea8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -99708c449b23433136dbdfa38bd16d80 git-1.6.5.2.tar.bz2 +a1dbc3da46cbf33c4367db689853c142 git-1.6.5.3.tar.bz2 From 5d53d5203f5327e58155f012eaeaea5f142cca55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=A0t=C4=9Bp=C3=A1n=20Kasal?= Date: Sun, 6 Dec 2009 23:09:37 +0000 Subject: [PATCH 06/21] - rebuild against perl 5.10.1 --- git.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/git.spec b/git.spec index 715c730..131c238 100644 --- a/git.spec +++ b/git.spec @@ -7,7 +7,7 @@ Name: git Version: 1.6.5.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast Version Control System License: GPLv2 Group: Development/Tools @@ -427,6 +427,9 @@ rm -rf %{buildroot} # No files for you! %changelog +* Fri Dec 4 2009 Stepan Kasal - 1.6.5.3-2 +- rebuild against perl 5.10.1 + * Sat Nov 21 2009 Todd Zullinger - 1.6.5.3-1 - git-1.6.5.3 - Only BR perl(Error) on Fedora and RHEL >= 5 From bc3e0f7744b2115f79a5acbcab5e1a52de0d7b89 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Mon, 7 Dec 2009 15:11:59 +0000 Subject: [PATCH 07/21] Update to git-1.6.5.5 Fixes bug 543481 (Unsubstituted Docbook parameters in git manpages) --- .cvsignore | 2 +- git.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.cvsignore b/.cvsignore index 57401d1..2aae902 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.6.5.3.tar.bz2 +git-1.6.5.5.tar.bz2 diff --git a/git.spec b/git.spec index 131c238..9e87ad3 100644 --- a/git.spec +++ b/git.spec @@ -6,8 +6,8 @@ %endif Name: git -Version: 1.6.5.3 -Release: 2%{?dist} +Version: 1.6.5.5 +Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 Group: Development/Tools @@ -427,6 +427,9 @@ rm -rf %{buildroot} # No files for you! %changelog +* Sun Dec 06 2009 Todd Zullinger - 1.6.5.5-1 +- git-1.6.5.5 + * Fri Dec 4 2009 Stepan Kasal - 1.6.5.3-2 - rebuild against perl 5.10.1 diff --git a/sources b/sources index f3afea8..a25dd1c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -a1dbc3da46cbf33c4367db689853c142 git-1.6.5.3.tar.bz2 +fd575f22e67adbea1d17e5bc66a80f8d git-1.6.5.5.tar.bz2 From 64dae55e57e4bb99220dd179267e8d92f7bb5bd1 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Thu, 24 Dec 2009 13:38:47 +0000 Subject: [PATCH 08/21] Update to git-1.6.6 --- .cvsignore | 2 +- git.spec | 8 +++++++- sources | 2 +- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/.cvsignore b/.cvsignore index 2aae902..1255b84 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.6.5.5.tar.bz2 +git-1.6.6.tar.bz2 diff --git a/git.spec b/git.spec index 9e87ad3..fb9918a 100644 --- a/git.spec +++ b/git.spec @@ -6,7 +6,7 @@ %endif Name: git -Version: 1.6.5.5 +Version: 1.6.6 Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 @@ -427,6 +427,12 @@ rm -rf %{buildroot} # No files for you! %changelog +* Wed Dec 23 2009 Todd Zullinger - 1.6.6-1 +- git-1.6.6 + +* Fri Dec 11 2009 Todd Zullinger - 1.6.5.6-1 +- git-1.6.5.6 + * Sun Dec 06 2009 Todd Zullinger - 1.6.5.5-1 - git-1.6.5.5 diff --git a/sources b/sources index a25dd1c..e075050 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -fd575f22e67adbea1d17e5bc66a80f8d git-1.6.5.5.tar.bz2 +25e4bcdc528b3ffadc6e59908a513881 git-1.6.6.tar.bz2 From 68affad56786d410729dbee27c54b3a3fc409522 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Sun, 31 Jan 2010 21:05:27 +0000 Subject: [PATCH 09/21] Update to git-1.6.6.1 - Use %{gitcoredir}/git-daemon as xinetd server option, for SELinux (#529682) - Make %{_var}/lib/git the default gitweb projectroot (#556299) - Include gitweb/INSTALL file as documentation, the gitweb README refers to it - Ship a short example gitweb config file (%{_sysconfdir}/gitweb.conf) - Remove long fixed xinetd IPv6 workaround on Fedora (#557528) - Install missing gitweb.js (#558740) --- git.spec | 39 +++++++++++++++++++++++++++++-------- git.xinetd | 16 --------------- git.xinetd.in | 14 +++++++++++++ gitweb.conf.in | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 98 insertions(+), 24 deletions(-) delete mode 100644 git.xinetd create mode 100644 git.xinetd.in create mode 100644 gitweb.conf.in diff --git a/git.spec b/git.spec index fb9918a..3daf682 100644 --- a/git.spec +++ b/git.spec @@ -6,7 +6,7 @@ %endif Name: git -Version: 1.6.6 +Version: 1.6.6.1 Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 @@ -14,9 +14,10 @@ Group: Development/Tools URL: http://git-scm.com/ Source0: http://kernel.org/pub/software/scm/git/%{name}-%{version}.tar.bz2 Source1: git-init.el -Source2: git.xinetd +Source2: git.xinetd.in Source3: git.conf.httpd Source4: git-gui.desktop +Source5: gitweb.conf.in Patch0: git-1.5-gitweb-home-link.patch # https://bugzilla.redhat.com/490602 Patch1: git-cvsimport-Ignore-cvsps-2.2b1-Branches-output.patch @@ -229,6 +230,7 @@ BLK_SHA1 = 1 ETC_GITCONFIG = %{_sysconfdir}/gitconfig DESTDIR = %{buildroot} INSTALL = install -p +GITWEB_PROJECTROOT = %{_var}/lib/git htmldir = %{_docdir}/%{name}-%{version} prefix = %{_prefix} EOF @@ -281,10 +283,12 @@ install -Dpm 644 %{SOURCE1} \ %endif mkdir -p %{buildroot}%{_var}/www/git -install -pm 644 gitweb/*.png gitweb/*.css %{buildroot}%{_var}/www/git +install -pm 644 gitweb/*.{css,js,png} %{buildroot}%{_var}/www/git install -pm 755 gitweb/gitweb.cgi %{buildroot}%{_var}/www/git -mkdir -p %{buildroot}/%{_sysconfdir}/httpd/conf.d -install -pm 0644 %{SOURCE3} %{buildroot}/%{_sysconfdir}/httpd/conf.d/git.conf +mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d +install -pm 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/httpd/conf.d/git.conf +sed "s|@PROJECTROOT@|%{_var}/lib/git|g" \ + %{SOURCE5} > %{buildroot}%{_sysconfdir}/gitweb.conf find %{buildroot} -type f -name .packlist -exec rm -f {} ';' find %{buildroot} -type f -name '*.bs' -empty -exec rm -f {} ';' @@ -304,7 +308,16 @@ rm -rf %{buildroot}%{_mandir} mkdir -p %{buildroot}%{_var}/lib/git mkdir -p %{buildroot}%{_sysconfdir}/xinetd.d -install -pm 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/xinetd.d/git +# On EL <= 5, xinetd does not enable IPv6 by default +enable_ipv6=" # xinetd does not enable IPv6 by default + flags = IPv6" +perl -p \ + -e "s|\@GITCOREDIR\@|%{gitcoredir}|g;" \ + -e "s|\@BASE_PATH\@|%{_var}/lib/git|g;" \ +%if 0%{?rhel} && 0%{?rhel} <= 5 + -e "s|^}|$enable_ipv6\n$&|;" \ +%endif + %{SOURCE2} > %{buildroot}%{_sysconfdir}/xinetd.d/git mkdir -p %{buildroot}%{_sysconfdir}/bash_completion.d install -pm 644 contrib/completion/git-completion.bash %{buildroot}%{_sysconfdir}/bash_completion.d/git @@ -418,15 +431,25 @@ rm -rf %{buildroot} %files -n gitweb %defattr(-,root,root) -%doc gitweb/README -%{_var}/www/git/ +%doc gitweb/INSTALL gitweb/README +%config(noreplace)%{_sysconfdir}/gitweb.conf %config(noreplace)%{_sysconfdir}/httpd/conf.d/git.conf +%{_var}/www/git/ %files all # No files for you! %changelog +* Tue Jan 26 2010 Todd Zullinger - 1.6.6.1-1 +- git-1.6.6.1 +- Use %%{gitcoredir}/git-daemon as xinetd server option, for SELinux (#529682) +- Make %%{_var}/lib/git the default gitweb projectroot (#556299) +- Include gitweb/INSTALL file as documentation, the gitweb README refers to it +- Ship a short example gitweb config file (%%{_sysconfdir}/gitweb.conf) +- Remove long fixed xinetd IPv6 workaround on Fedora (#557528) +- Install missing gitweb.js (#558740) + * Wed Dec 23 2009 Todd Zullinger - 1.6.6-1 - git-1.6.6 diff --git a/git.xinetd b/git.xinetd deleted file mode 100644 index 6c9933d..0000000 --- a/git.xinetd +++ /dev/null @@ -1,16 +0,0 @@ -# default: off -# description: The git dæmon allows git repositories to be exported using \ -# the git:// protocol. - -service git -{ - disable = yes - socket_type = stream - wait = no - user = nobody - server = /usr/bin/git - server_args = daemon --base-path=/var/lib/git --export-all --user-path=public_git --syslog --inetd --verbose - log_on_failure += USERID -# xinetd doesn't do this by default. bug #195265 - flags = IPv6 -} diff --git a/git.xinetd.in b/git.xinetd.in new file mode 100644 index 0000000..540e070 --- /dev/null +++ b/git.xinetd.in @@ -0,0 +1,14 @@ +# default: off +# description: The git dæmon allows git repositories to be exported using \ +# the git:// protocol. + +service git +{ + disable = yes + socket_type = stream + wait = no + user = nobody + server = @GITCOREDIR@/git-daemon + server_args = --base-path=@BASE_PATH@ --export-all --user-path=public_git --syslog --inetd --verbose + log_on_failure += USERID +} diff --git a/gitweb.conf.in b/gitweb.conf.in new file mode 100644 index 0000000..c04a96b --- /dev/null +++ b/gitweb.conf.in @@ -0,0 +1,53 @@ +# The gitweb config file is a fragment of perl code. You can set variables +# using "our $variable = value"; text from "#" character until the end of a +# line is ignored. See perlsyn(1) man page for details. +# +# See /usr/share/doc/gitweb-*/README and /usr/share/doc/gitweb-*/INSTALL for +# more details and available configuration variables. + +# Set the path to git projects. This is an absolute filesystem path which will +# be prepended to the project path. +#our $projectroot = "@PROJECTROOT@"; + +# Set the list of git base URLs used for URL to where fetch project from, i.e. +# the full URL is "$git_base_url/$project". By default this is empty +#our @git_base_url_list = qw(git://git.example.com +# ssh://git.example.com@PROJECTROOT@); + +# Enable the 'blame' blob view, showing the last commit that modified +# each line in the file. This can be very CPU-intensive. Disabled by default +#$feature{'blame'}{'default'} = [1]; +# +# Allow projects to override the default setting via git config file. +# Example: gitweb.blame = 0|1; +#$feature{'blame'}{'override'} = 1; + +# Disable the 'snapshot' link, providing a compressed archive of any tree. This +# can potentially generate high traffic if you have large project. Enabled for +# .tar.gz snapshots by default. +# +# Value is a list of formats defined in %known_snapshot_formats that you wish +# to offer. +#$feature{'snapshot'}{'default'} = []; +# +# Allow projects to override the default setting via git config file. +# Example: gitweb.snapshot = tbz2,zip; (use "none" to disable) +#$feature{'snapshot'}{'override'} = 1; + +# Disable grep search, which will list the files in currently selected tree +# containing the given string. This can be potentially CPU-intensive, of +# course. Enabled by default. +#$feature{'grep'}{'default'} = [0]; +# +# Allow projects to override the default setting via git config file. +# Example: gitweb.grep = 0|1; +#$feature{'grep'}{'override'} = 1; + +# Disable the pickaxe search, which will list the commits that modified a given +# string in a file. This can be practical and quite faster alternative to +# 'blame', but still potentially CPU-intensive. Enabled by default. +#$feature{'pickaxe'}{'default'} = [0]; +# +# Allow projects to override the default setting via git config file. +# Example: gitweb.pickaxe = 0|1; +#$feature{'pickaxe'}{'override'} = 1; From f31fb739f4238e9ba0c827313788ce0d0b41a8ec Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Sun, 31 Jan 2010 21:24:39 +0000 Subject: [PATCH 10/21] Add git-1.6.6.1 tarball --- .cvsignore | 2 +- sources | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.cvsignore b/.cvsignore index 1255b84..707db7c 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.6.6.tar.bz2 +git-1.6.6.1.tar.bz2 diff --git a/sources b/sources index e075050..5ca3aac 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -25e4bcdc528b3ffadc6e59908a513881 git-1.6.6.tar.bz2 +9d254bfdae56c6fa124d8a1312a1b034 git-1.6.6.1.tar.bz2 From 78783483c5c7d85804642e43d8b5a8ebf43742e8 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Mon, 15 Feb 2010 00:47:41 +0000 Subject: [PATCH 11/21] Update to git-1.7.0 - Link imap-send with libcrypto (#565147) - Disable building of unused python remote helper libs --- .cvsignore | 2 +- git.spec | 9 ++++++++- sources | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/.cvsignore b/.cvsignore index 707db7c..b2eda6f 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.6.6.1.tar.bz2 +git-1.7.0.tar.bz2 diff --git a/git.spec b/git.spec index 3daf682..a432c06 100644 --- a/git.spec +++ b/git.spec @@ -6,7 +6,7 @@ %endif Name: git -Version: 1.6.6.1 +Version: 1.7.0 Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 @@ -227,6 +227,8 @@ cat << \EOF > config.mak V = 1 CFLAGS = %{optflags} BLK_SHA1 = 1 +NEEDS_CRYPTO_WITH_SSL = 1 +NO_PYTHON = 1 ETC_GITCONFIG = %{_sysconfdir}/gitconfig DESTDIR = %{buildroot} INSTALL = install -p @@ -441,6 +443,11 @@ rm -rf %{buildroot} # No files for you! %changelog +* Sat Feb 13 2010 Todd Zullinger - 1.7.0-1 +- git-1.7.0 +- Link imap-send with libcrypto (#565147) +- Disable building of unused python remote helper libs + * Tue Jan 26 2010 Todd Zullinger - 1.6.6.1-1 - git-1.6.6.1 - Use %%{gitcoredir}/git-daemon as xinetd server option, for SELinux (#529682) diff --git a/sources b/sources index 5ca3aac..9992ad3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9d254bfdae56c6fa124d8a1312a1b034 git-1.6.6.1.tar.bz2 +c7553b73e2156d187ece6ba936ae30ab git-1.7.0.tar.bz2 From d5e5b3bd578fc7e395378a2b9f68d0ef5dfeb8a5 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Mon, 1 Mar 2010 14:16:42 +0000 Subject: [PATCH 12/21] Update to git-1.7.0.1 --- .cvsignore | 2 +- git.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.cvsignore b/.cvsignore index b2eda6f..3c2b4ea 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.7.0.tar.bz2 +git-1.7.0.1.tar.bz2 diff --git a/git.spec b/git.spec index a432c06..79793cd 100644 --- a/git.spec +++ b/git.spec @@ -6,7 +6,7 @@ %endif Name: git -Version: 1.7.0 +Version: 1.7.0.1 Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 @@ -443,6 +443,9 @@ rm -rf %{buildroot} # No files for you! %changelog +* Mon Mar 01 2010 Todd Zullinger - 1.7.0.1-1 +- git-1.7.0.1 + * Sat Feb 13 2010 Todd Zullinger - 1.7.0-1 - git-1.7.0 - Link imap-send with libcrypto (#565147) diff --git a/sources b/sources index 9992ad3..a0c39d8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -c7553b73e2156d187ece6ba936ae30ab git-1.7.0.tar.bz2 +c4315200efc90ea0f243cf0e86cda1f1 git-1.7.0.1.tar.bz2 From 011aa9301e7263a32d8b125a29f1c77795ef6238 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcela=20Ma=C5=A1l=C3=A1=C5=88ov=C3=A1?= Date: Thu, 29 Apr 2010 11:28:02 +0000 Subject: [PATCH 13/21] - Mass rebuild with perl-5.12.0 --- git.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/git.spec b/git.spec index 79793cd..9c7440e 100644 --- a/git.spec +++ b/git.spec @@ -7,7 +7,7 @@ Name: git Version: 1.7.0.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast Version Control System License: GPLv2 Group: Development/Tools @@ -443,6 +443,9 @@ rm -rf %{buildroot} # No files for you! %changelog +* Thu Apr 29 2010 Marcela Maslanova - 1.7.0.1-2 +- Mass rebuild with perl-5.12.0 + * Mon Mar 01 2010 Todd Zullinger - 1.7.0.1-1 - git-1.7.0.1 From 77b1a5d6f6370300949ae6cd0332e0a82d48589e Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Thu, 20 May 2010 15:56:11 +0000 Subject: [PATCH 14/21] Update to git-1.7.1 - Fix conditionals for EL-6 - Comply with Emacs add-on packaging guidelines (#573423), Jonathan Underwood - Place elisp source files in separate emacs-git-el package - Place git support files in own directory under site-lisp - Use Emacs packaging macros --- .cvsignore | 2 +- git.spec | 83 ++++++++++++++++++++++++++++++++++-------------------- sources | 2 +- 3 files changed, 54 insertions(+), 33 deletions(-) diff --git a/.cvsignore b/.cvsignore index 3c2b4ea..74d9875 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.7.0.1.tar.bz2 +git-1.7.1.tar.bz2 diff --git a/git.spec b/git.spec index 9c7440e..90a0137 100644 --- a/git.spec +++ b/git.spec @@ -6,8 +6,8 @@ %endif Name: git -Version: 1.7.0.1 -Release: 2%{?dist} +Version: 1.7.1 +Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 Group: Development/Tools @@ -26,7 +26,7 @@ Patch2: git-1.6-update-contrib-hooks-path.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: desktop-file-utils -%if 0%{?fedora} +%if 0%{?fedora} || 0%{?rhel} >= 6 BuildRequires: emacs >= 22.2 BuildRequires: libcurl-devel %else @@ -68,19 +68,21 @@ SCMs, install the git-all meta-package. %package all Summary: Meta-package to pull in all git tools Group: Development/Tools -%if 0%{?fedora} >= 10 +%if 0%{?fedora} >= 10 || 0%{?rhel} >= 6 BuildArch: noarch %endif Requires: git = %{version}-%{release} -Requires: git-svn = %{version}-%{release} +%if 0%{?fedora} +Requires: git-arch = %{version}-%{release} +%endif Requires: git-cvs = %{version}-%{release} Requires: git-email = %{version}-%{release} -Requires: gitk = %{version}-%{release} Requires: git-gui = %{version}-%{release} +Requires: git-svn = %{version}-%{release} +Requires: gitk = %{version}-%{release} Requires: perl-Git = %{version}-%{release} -%if 0%{?fedora} +%if 0%{?fedora} || 0%{?rhel} >= 6 Requires: emacs-git = %{version}-%{release} -Requires: git-arch = %{version}-%{release} %endif %if 0%{?fedora} || 0%{?rhel} >= 5 Obsoletes: git <= 1.5.4.3 @@ -107,7 +109,7 @@ The git dæmon for supporting git:// access to git repositories %package -n gitweb Summary: Simple web interface to git repositories Group: Development/Tools -%if 0%{?fedora} >= 10 +%if 0%{?fedora} >= 10 || 0%{?rhel} >= 6 BuildArch: noarch %endif Requires: git = %{version}-%{release} @@ -119,7 +121,7 @@ Simple web interface to track changes in git repositories %package svn Summary: Git tools for importing Subversion repositories Group: Development/Tools -%if 0%{?fedora} >= 10 +%if 0%{?fedora} >= 10 || 0%{?rhel} >= 6 BuildArch: noarch %endif Requires: git = %{version}-%{release}, subversion, perl(Term::ReadKey) @@ -129,7 +131,7 @@ Git tools for importing Subversion repositories. %package cvs Summary: Git tools for importing CVS repositories Group: Development/Tools -%if 0%{?fedora} >= 10 +%if 0%{?fedora} >= 10 || 0%{?rhel} >= 6 BuildArch: noarch %endif Requires: git = %{version}-%{release}, cvs @@ -143,9 +145,7 @@ Git tools for importing CVS repositories. %package arch Summary: Git tools for importing Arch repositories Group: Development/Tools -%if 0%{?fedora} >= 10 BuildArch: noarch -%endif Requires: git = %{version}-%{release}, tla %description arch Git tools for importing Arch repositories. @@ -154,7 +154,7 @@ Git tools for importing Arch repositories. %package email Summary: Git tools for sending email Group: Development/Tools -%if 0%{?fedora} >= 10 +%if 0%{?fedora} >= 10 || 0%{?rhel} >= 6 BuildArch: noarch %endif Requires: git = %{version}-%{release}, perl-Git = %{version}-%{release} @@ -168,7 +168,7 @@ Git tools for sending email. %package gui Summary: Git GUI tool Group: Development/Tools -%if 0%{?fedora} >= 10 +%if 0%{?fedora} >= 10 || 0%{?rhel} >= 6 BuildArch: noarch %endif Requires: git = %{version}-%{release}, tk >= 8.4 @@ -179,7 +179,7 @@ Git GUI tool. %package -n gitk Summary: Git revision tree visualiser Group: Development/Tools -%if 0%{?fedora} >= 10 +%if 0%{?fedora} >= 10 || 0%{?rhel} >= 6 BuildArch: noarch %endif Requires: git = %{version}-%{release}, tk >= 8.4 @@ -189,7 +189,7 @@ Git revision tree visualiser. %package -n perl-Git Summary: Perl interface to Git Group: Development/Libraries -%if 0%{?fedora} >= 10 +%if 0%{?fedora} >= 10 || 0%{?rhel} >= 6 BuildArch: noarch %endif Requires: git = %{version}-%{release} @@ -202,17 +202,24 @@ Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $versi %description -n perl-Git Perl interface to Git. -%if 0%{?fedora} +%if 0%{?fedora} || 0%{?rhel} >= 6 %package -n emacs-git Summary: Git version control system support for Emacs Group: Applications/Editors -%if 0%{?fedora} >= 10 BuildArch: noarch -%endif -Requires: git = %{version}-%{release}, emacs-common >= 22.2 +Requires: git = %{version}-%{release}, emacs(bin) >= %{_emacs_version} %description -n emacs-git %{summary}. + +%package -n emacs-git-el +Summary: Elisp source files for git version control system support for Emacs +Group: Applications/Editors +BuildArch: noarch +Requires: emacs-git = %{version}-%{release} + +%description -n emacs-git-el +%{summary}. %endif %prep @@ -237,7 +244,7 @@ htmldir = %{_docdir}/%{name}-%{version} prefix = %{_prefix} EOF -%if 0%{?fedora} +%if 0%{?fedora} || 0%{?rhel} >= 6 cat << \EOF >> config.mak ASCIIDOC8 = 1 ASCIIDOC_NO_ROFF = 1 @@ -262,7 +269,7 @@ chmod +x %{__perl_requires} %build make %{?_smp_mflags} all %{!?_without_docs: doc} -%if 0%{?fedora} +%if 0%{?fedora} || 0%{?rhel} >= 6 make -C contrib/emacs %endif @@ -273,15 +280,16 @@ sed -i '/^#!bash/,+1 d' contrib/completion/git-completion.bash rm -rf %{buildroot} make %{?_smp_mflags} INSTALLDIRS=vendor install %{!?_without_docs: install-doc} -%if 0%{?fedora} +%if 0%{?fedora} || 0%{?rhel} >= 6 +%global elispdir %{_emacs_sitelispdir}/git make -C contrib/emacs install \ - emacsdir=%{buildroot}%{_datadir}/emacs/site-lisp -for elc in %{buildroot}%{_datadir}/emacs/site-lisp/*.elc ; do + emacsdir=%{buildroot}%{elispdir} +for elc in %{buildroot}%{elispdir}/*.elc ; do install -pm 644 contrib/emacs/$(basename $elc .elc).el \ - %{buildroot}%{_datadir}/emacs/site-lisp + %{buildroot}%{elispdir} done install -Dpm 644 %{SOURCE1} \ - %{buildroot}%{_datadir}/emacs/site-lisp/site-start.d/git-init.el + %{buildroot}%{_emacs_sitestartdir}/git-init.el %endif mkdir -p %{buildroot}%{_var}/www/git @@ -414,12 +422,17 @@ rm -rf %{buildroot} %files -n perl-Git -f perl-files %defattr(-,root,root) -%if 0%{?fedora} +%if 0%{?fedora} || 0%{?rhel} >= 6 %files -n emacs-git %defattr(-,root,root) %doc contrib/emacs/README -%{_datadir}/emacs/site-lisp/*git*.el* -%{_datadir}/emacs/site-lisp/site-start.d/git-init.el +%dir %{elispdir} +%{elispdir}/*.elc +%{_emacs_sitestartdir}/git-init.el + +%files -n emacs-git-el +%defattr(-,root,root) +%{elispdir}/*.el %endif %files daemon @@ -443,6 +456,14 @@ rm -rf %{buildroot} # No files for you! %changelog +* Tue May 04 2010 Todd Zullinger - 1.7.1-1 +- git-1.7.1 +- Fix conditionals for EL-6 +- Comply with Emacs add-on packaging guidelines (#573423), Jonathan Underwood + - Place elisp source files in separate emacs-git-el package + - Place git support files in own directory under site-lisp + - Use Emacs packaging macros + * Thu Apr 29 2010 Marcela Maslanova - 1.7.0.1-2 - Mass rebuild with perl-5.12.0 diff --git a/sources b/sources index a0c39d8..2c3f8d4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -c4315200efc90ea0f243cf0e86cda1f1 git-1.7.0.1.tar.bz2 +3da231dbe82ad103373cb530ae7475d5 git-1.7.1.tar.bz2 From 7fef5735cfe284c05ded4ec79975c0491f6b24ad Mon Sep 17 00:00:00 2001 From: Adam Tkac Date: Fri, 25 Jun 2010 18:20:55 +0000 Subject: [PATCH 15/21] - rebuild against new perl --- git.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/git.spec b/git.spec index 90a0137..232ae75 100644 --- a/git.spec +++ b/git.spec @@ -7,7 +7,7 @@ Name: git Version: 1.7.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast Version Control System License: GPLv2 Group: Development/Tools @@ -456,6 +456,9 @@ rm -rf %{buildroot} # No files for you! %changelog +* Fri Jun 25 2010 Adam Tkac - 1.7.1-2 +- rebuild against new perl + * Tue May 04 2010 Todd Zullinger - 1.7.1-1 - git-1.7.1 - Fix conditionals for EL-6 From bb50e46edd9939c6b316845ecd066964f0e2864d Mon Sep 17 00:00:00 2001 From: Adam Tkac Date: Fri, 2 Jul 2010 13:29:19 +0000 Subject: [PATCH 16/21] - update to 1.7.1.1 --- .cvsignore | 2 +- git.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.cvsignore b/.cvsignore index 74d9875..393c4f7 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.7.1.tar.bz2 +git-1.7.1.1.tar.bz2 diff --git a/git.spec b/git.spec index 232ae75..9f658cc 100644 --- a/git.spec +++ b/git.spec @@ -6,8 +6,8 @@ %endif Name: git -Version: 1.7.1 -Release: 2%{?dist} +Version: 1.7.1.1 +Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 Group: Development/Tools @@ -456,6 +456,9 @@ rm -rf %{buildroot} # No files for you! %changelog +* Fri Jul 02 2010 Adam Tkac - 1.7.1.1-1 +- update to 1.7.1.1 + * Fri Jun 25 2010 Adam Tkac - 1.7.1-2 - rebuild against new perl diff --git a/sources b/sources index 2c3f8d4..4184383 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -3da231dbe82ad103373cb530ae7475d5 git-1.7.1.tar.bz2 +1b116a3e2ecce46a89e4272abf0de955 git-1.7.1.1.tar.bz2 From 8c3bcd12a1a3f7397765733963007ae98ed53bfa Mon Sep 17 00:00:00 2001 From: Adam Tkac Date: Thu, 22 Jul 2010 11:09:55 +0000 Subject: [PATCH 17/21] - update to 1.7.2 --- .cvsignore | 2 +- git-1.5-gitweb-home-link.patch | 9 +++++---- git.spec | 9 +++++---- sources | 2 +- 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/.cvsignore b/.cvsignore index 393c4f7..e23ad7a 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -git-1.7.1.1.tar.bz2 +git-1.7.2.tar.bz2 diff --git a/git-1.5-gitweb-home-link.patch b/git-1.5-gitweb-home-link.patch index cd36563..74c8390 100644 --- a/git-1.5-gitweb-home-link.patch +++ b/git-1.5-gitweb-home-link.patch @@ -1,7 +1,8 @@ ---- git-1.5.0.6/gitweb/gitweb.perl~ 2007-03-30 01:37:05.000000000 +0100 -+++ git-1.5.0.6/gitweb/gitweb.perl 2007-05-07 08:31:37.000000000 +0100 -@@ -39,7 +39,7 @@ our $projectroot = "++GITWEB_PROJECTROOT - our $home_link = $my_uri || "/"; +diff -up git-1.7.2/gitweb/gitweb.perl.orig git-1.7.2/gitweb/gitweb.perl +--- git-1.7.2/gitweb/gitweb.perl.orig 2010-07-21 23:35:25.000000000 +0200 ++++ git-1.7.2/gitweb/gitweb.perl 2010-07-22 10:49:50.385707086 +0200 +@@ -79,7 +79,7 @@ our $projectroot = "++GITWEB_PROJECTROOT + our $project_maxdepth = "++GITWEB_PROJECT_MAXDEPTH++"; # string of the home link on top of all pages -our $home_link_str = "++GITWEB_HOME_LINK_STR++"; diff --git a/git.spec b/git.spec index 9f658cc..2fe57fa 100644 --- a/git.spec +++ b/git.spec @@ -6,7 +6,7 @@ %endif Name: git -Version: 1.7.1.1 +Version: 1.7.2 Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 @@ -242,6 +242,7 @@ INSTALL = install -p GITWEB_PROJECTROOT = %{_var}/lib/git htmldir = %{_docdir}/%{name}-%{version} prefix = %{_prefix} +gitwebdir = %{_var}/www/git EOF %if 0%{?fedora} || 0%{?rhel} >= 6 @@ -292,9 +293,6 @@ install -Dpm 644 %{SOURCE1} \ %{buildroot}%{_emacs_sitestartdir}/git-init.el %endif -mkdir -p %{buildroot}%{_var}/www/git -install -pm 644 gitweb/*.{css,js,png} %{buildroot}%{_var}/www/git -install -pm 755 gitweb/gitweb.cgi %{buildroot}%{_var}/www/git mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d install -pm 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/httpd/conf.d/git.conf sed "s|@PROJECTROOT@|%{_var}/lib/git|g" \ @@ -456,6 +454,9 @@ rm -rf %{buildroot} # No files for you! %changelog +* Thu Jul 22 2010 Adam Tkac - 1.7.2-1 +- update to 1.7.2 + * Fri Jul 02 2010 Adam Tkac - 1.7.1.1-1 - update to 1.7.1.1 diff --git a/sources b/sources index 4184383..188db10 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -1b116a3e2ecce46a89e4272abf0de955 git-1.7.1.1.tar.bz2 +652f861ae161e48979ef834707e2dc4c git-1.7.2.tar.bz2 From 012e1b5c7c5a32b104d9878e9e257d71cc25f54a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 28 Jul 2010 15:41:35 +0000 Subject: [PATCH 18/21] dist-git conversion --- .cvsignore => .gitignore | 0 Makefile | 21 --------------------- 2 files changed, 21 deletions(-) rename .cvsignore => .gitignore (100%) delete mode 100644 Makefile diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore diff --git a/Makefile b/Makefile deleted file mode 100644 index fbfe8aa..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: git -# $Id$ -NAME := git -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) From 4764d30f286c50e99c7b13afa7488fee5d9a0287 Mon Sep 17 00:00:00 2001 From: Todd Zullinger Date: Fri, 30 Jul 2010 10:15:19 -0400 Subject: [PATCH 19/21] Update to git-1.7.2.1 --- .gitignore | 2 +- git.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index e23ad7a..1dd8967 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -git-1.7.2.tar.bz2 +git-1.7.2.1.tar.bz2 diff --git a/git.spec b/git.spec index 2fe57fa..3b15654 100644 --- a/git.spec +++ b/git.spec @@ -6,7 +6,7 @@ %endif Name: git -Version: 1.7.2 +Version: 1.7.2.1 Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 @@ -454,6 +454,9 @@ rm -rf %{buildroot} # No files for you! %changelog +* Thu Jul 29 2010 Todd Zullinger - 1.7.2.1-1 +- Update to git-1.7.2.1 + * Thu Jul 22 2010 Adam Tkac - 1.7.2-1 - update to 1.7.2 diff --git a/sources b/sources index 188db10..c6e2468 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -652f861ae161e48979ef834707e2dc4c git-1.7.2.tar.bz2 +24a443a120a0ab372185cb6bc0dbd934 git-1.7.2.1.tar.bz2 From 383e396ac5599f312be817126ef2e195939338ca Mon Sep 17 00:00:00 2001 From: Thomas Spura Date: Fri, 30 Jul 2010 22:52:13 +0200 Subject: [PATCH 20/21] cherry-pick: "Do not unquote + into ' ' in URLs" There are problems with this bug in dist-git. --- git-1.7.2.1-730220de.patch | 86 ++++++++++++++++++++++++++++++++++++++ git.spec | 9 +++- 2 files changed, 94 insertions(+), 1 deletion(-) create mode 100644 git-1.7.2.1-730220de.patch diff --git a/git-1.7.2.1-730220de.patch b/git-1.7.2.1-730220de.patch new file mode 100644 index 0000000..fdf4d2e --- /dev/null +++ b/git-1.7.2.1-730220de.patch @@ -0,0 +1,86 @@ +commit 730220de8be669257287e9a1f5dde349ace5426a +Author: Thomas Rast +Date: Sat Jul 24 16:49:04 2010 +0200 + + Do not unquote + into ' ' in URLs + + Since 9d2e942 (decode file:// and ssh:// URLs, 2010-05-23) the URL + logic unquotes escaped URLs. For the %2B type of escape, this is + conformant with RFC 2396. However, it also unquotes + into a space + character, which is only appropriate for the query strings in HTTP. + This notably broke fetching from the gtk+ repository. + + We cannot just remove the corresponding code since the same + url_decode_internal() is also used by the HTTP backend to decode query + parameters. Introduce a new argument that controls whether the + + decoding happens, and use it only in the (client-side) url_decode(). + + Reported-by: Jasper St. Pierre + Signed-off-by: Thomas Rast + Signed-off-by: Junio C Hamano + +diff --git a/t/t5601-clone.sh b/t/t5601-clone.sh +index 8abb71a..4431dfd 100755 +--- a/t/t5601-clone.sh ++++ b/t/t5601-clone.sh +@@ -178,8 +178,14 @@ test_expect_success 'clone respects global branch.autosetuprebase' ' + + test_expect_success 'respect url-encoding of file://' ' + git init x+y && +- test_must_fail git clone "file://$PWD/x+y" xy-url && +- git clone "file://$PWD/x%2By" xy-url ++ git clone "file://$PWD/x+y" xy-url-1 && ++ git clone "file://$PWD/x%2By" xy-url-2 ++' ++ ++test_expect_success 'do not query-string-decode + in URLs' ' ++ rm -rf x+y && ++ git init "x y" && ++ test_must_fail git clone "file://$PWD/x+y" xy-no-plus + ' + + test_expect_success 'do not respect url-encoding of non-url path' ' +diff --git a/url.c b/url.c +index 2306236..cd8f74f 100644 +--- a/url.c ++++ b/url.c +@@ -67,7 +67,8 @@ static int url_decode_char(const char *q) + return val; + } + +-static char *url_decode_internal(const char **query, const char *stop_at, struct strbuf *out) ++static char *url_decode_internal(const char **query, const char *stop_at, ++ struct strbuf *out, int decode_plus) + { + const char *q = *query; + +@@ -90,7 +91,7 @@ static char *url_decode_internal(const char **query, const char *stop_at, struct + } + } + +- if (c == '+') ++ if (decode_plus && c == '+') + strbuf_addch(out, ' '); + else + strbuf_addch(out, c); +@@ -110,17 +111,17 @@ char *url_decode(const char *url) + strbuf_add(&out, url, colon - url); + url = colon; + } +- return url_decode_internal(&url, NULL, &out); ++ return url_decode_internal(&url, NULL, &out, 0); + } + + char *url_decode_parameter_name(const char **query) + { + struct strbuf out = STRBUF_INIT; +- return url_decode_internal(query, "&=", &out); ++ return url_decode_internal(query, "&=", &out, 1); + } + + char *url_decode_parameter_value(const char **query) + { + struct strbuf out = STRBUF_INIT; +- return url_decode_internal(query, "&", &out); ++ return url_decode_internal(query, "&", &out, 1); + } diff --git a/git.spec b/git.spec index 3b15654..3be1405 100644 --- a/git.spec +++ b/git.spec @@ -7,7 +7,7 @@ Name: git Version: 1.7.2.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Fast Version Control System License: GPLv2 Group: Development/Tools @@ -23,6 +23,9 @@ Patch0: git-1.5-gitweb-home-link.patch Patch1: git-cvsimport-Ignore-cvsps-2.2b1-Branches-output.patch # https://bugzilla.redhat.com/500137 Patch2: git-1.6-update-contrib-hooks-path.patch +# Do not unquote + into ' ' in URLs +# cherry-picked from upstream +Patch3: git-1.7.2.1-730220de.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: desktop-file-utils @@ -227,6 +230,7 @@ Requires: emacs-git = %{version}-%{release} %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 # Use these same options for every invocation of 'make'. # Otherwise it will rebuild in %%install due to flags changes. @@ -454,6 +458,9 @@ rm -rf %{buildroot} # No files for you! %changelog +* Fri Jul 30 2010 Thomas Spura - 1.7.2.1-2 +- cherry-pick: "Do not unquote + into ' ' in URLs" + * Thu Jul 29 2010 Todd Zullinger - 1.7.2.1-1 - Update to git-1.7.2.1 From 71a8c911be9b871bb73673abd2c2f715962038e0 Mon Sep 17 00:00:00 2001 From: Adam Tkac Date: Fri, 20 Aug 2010 10:55:54 +0200 Subject: [PATCH 21/21] Update to 1.7.2.2. Signed-off-by: Adam Tkac --- .gitignore | 1 + git.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 1dd8967..51ec344 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ git-1.7.2.1.tar.bz2 +/git-1.7.2.2.tar.bz2 diff --git a/git.spec b/git.spec index 3be1405..48f52a7 100644 --- a/git.spec +++ b/git.spec @@ -6,8 +6,8 @@ %endif Name: git -Version: 1.7.2.1 -Release: 2%{?dist} +Version: 1.7.2.2 +Release: 1%{?dist} Summary: Fast Version Control System License: GPLv2 Group: Development/Tools @@ -458,6 +458,9 @@ rm -rf %{buildroot} # No files for you! %changelog +* Fri Aug 20 2010 Adam Tkac - 1.7.2.2-1 +- update to 1.7.2.2 + * Fri Jul 30 2010 Thomas Spura - 1.7.2.1-2 - cherry-pick: "Do not unquote + into ' ' in URLs" diff --git a/sources b/sources index c6e2468..37117e1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -24a443a120a0ab372185cb6bc0dbd934 git-1.7.2.1.tar.bz2 +4a5840b6d650692cb320eddb5ccefbaf git-1.7.2.2.tar.bz2