|
|
3de368 |
%{?scl:%scl_package git}
|
|
|
3de368 |
%{!?scl:%global pkg_name %{name}}
|
|
|
3de368 |
# Pass --without docs to rpmbuild if you don't want the documentation
|
|
|
3de368 |
|
|
|
3de368 |
%if 0%{?scl:1}
|
|
|
3de368 |
%global httpdconfdir /opt/rh/httpd24/root/etc/httpd/conf.d
|
|
|
3de368 |
%global appdesktopdir %{_root_datadir}/applications
|
|
|
3de368 |
%global cpath_dir /opt/rh/%{scl_httpd}/root%{_root_includedir}
|
|
|
3de368 |
%else
|
|
|
3de368 |
%global appdesktopdir %{_datadir}/applications
|
|
|
3de368 |
%global httpdconfdir %{_sysconfdir}/httpd/conf.d
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
# Settings for EL-5
|
|
|
3de368 |
# - Leave git-* binaries in %{_bindir}
|
|
|
3de368 |
# - Don't use noarch subpackages
|
|
|
3de368 |
# - Use proper libcurl devel package
|
|
|
3de368 |
# - Patch emacs and tweak docbook spaces
|
|
|
3de368 |
# - Explicitly enable ipv6 for git-daemon
|
|
|
3de368 |
# - Use prebuilt documentation, asciidoc is too old
|
|
|
3de368 |
# - Define missing python macro
|
|
|
3de368 |
%if 0%{?rhel} && 0%{?rhel} <= 5
|
|
|
3de368 |
%global gitcoredir %{_bindir}
|
|
|
3de368 |
%global noarch_sub 0
|
|
|
3de368 |
%global libcurl_devel curl-devel
|
|
|
3de368 |
%global emacs_old 1
|
|
|
3de368 |
%global docbook_suppress_sp 1
|
|
|
3de368 |
%global enable_ipv6 1
|
|
|
3de368 |
%global use_prebuilt_docs 1
|
|
|
3de368 |
%global filter_yaml_any 1
|
|
|
3de368 |
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
|
|
|
3de368 |
%else
|
|
|
3de368 |
%global gitcoredir %{_libexecdir}/git-core
|
|
|
3de368 |
%global noarch_sub 1
|
|
|
3de368 |
%global libcurl_devel %{?scl_prefix_httpd}libcurl-devel
|
|
|
3de368 |
%global emacs_old 0
|
|
|
3de368 |
%global docbook_suppress_sp 0
|
|
|
3de368 |
%global enable_ipv6 0
|
|
|
3de368 |
%global use_prebuilt_docs 0
|
|
|
3de368 |
%global filter_yaml_any 0
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
# Settings for F-19+ and EL-7+
|
|
|
3de368 |
%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7
|
|
|
3de368 |
%global bashcomp_pkgconfig 1
|
|
|
3de368 |
%global bashcompdir %{_scl_root}%(pkg-config --variable=completionsdir bash-completion 2>/dev/null)
|
|
|
3de368 |
%global bashcomproot %(dirname %{bashcompdir} 2>/dev/null)
|
|
|
3de368 |
%global gnome_keyring 1
|
|
|
3de368 |
%global use_new_rpm_filters 1
|
|
|
3de368 |
%global use_systemd 1
|
|
|
3de368 |
%else
|
|
|
3de368 |
%global bashcomp_pkgconfig 0
|
|
|
3de368 |
%global bashcompdir %{_sysconfdir}/bash_completion.d
|
|
|
3de368 |
%global bashcomproot %{bashcompdir}
|
|
|
3de368 |
%global gnome_keyring 0
|
|
|
3de368 |
%global use_new_rpm_filters 0
|
|
|
3de368 |
%global use_systemd 0
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
# This one macro is for F19+ and EL-6+
|
|
|
3de368 |
%if 0%{?fedora} >= 19 || 0%{?rhel} >= 6
|
|
|
3de368 |
%global desktop_vendor_tag 0
|
|
|
3de368 |
%else
|
|
|
3de368 |
%global desktop_vendor_tag 1
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
# Settings for EL <= 7
|
|
|
3de368 |
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
|
3de368 |
%{!?__global_ldflags: %global __global_ldflags -Wl,-z,relro}
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
Name: %{?scl_prefix}git
|
|
|
3de368 |
Version: 2.9.3
|
|
|
3de368 |
Release: 2%{?dist}
|
|
|
3de368 |
Summary: Fast Version Control System
|
|
|
3de368 |
License: GPLv2
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
URL: https://git-scm.com/
|
|
|
3de368 |
Source0: https://www.kernel.org/pub/software/scm/git/%{pkg_name}-%{version}.tar.xz
|
|
|
3de368 |
Source1: https://www.kernel.org/pub/software/scm/git/%{pkg_name}-htmldocs-%{version}.tar.xz
|
|
|
3de368 |
Source2: https://www.kernel.org/pub/software/scm/git/%{pkg_name}-manpages-%{version}.tar.xz
|
|
|
3de368 |
Source3: https://www.kernel.org/pub/software/scm/git/%{pkg_name}-%{version}.tar.sign
|
|
|
3de368 |
Source4: https://www.kernel.org/pub/software/scm/git/%{pkg_name}-htmldocs-%{version}.tar.sign
|
|
|
3de368 |
Source5: https://www.kernel.org/pub/software/scm/git/%{pkg_name}-manpages-%{version}.tar.sign
|
|
|
3de368 |
|
|
|
3de368 |
# Junio C Hamano's key is used to sign git releases, it can be found in the
|
|
|
3de368 |
# junio-gpg-pub tag within git.
|
|
|
3de368 |
#
|
|
|
3de368 |
# (Note that the tagged blob in git contains a version of the key with an
|
|
|
3de368 |
# expired signing subkey. The subkey expiration has been extended on the
|
|
|
3de368 |
# public keyservers, but the blob in git has not been updated.)
|
|
|
3de368 |
#
|
|
|
3de368 |
# https://git.kernel.org/cgit/git/git.git/tag/?h=junio-gpg-pub
|
|
|
3de368 |
# https://git.kernel.org/cgit/git/git.git/blob/?h=junio-gpg-pub&id=7214aea37915ee2c4f6369eb9dea520aec7d855b
|
|
|
3de368 |
Source9: gpgkey-junio.asc
|
|
|
3de368 |
|
|
|
3de368 |
# Local sources begin at 10 to allow for additional future upstream sources
|
|
|
3de368 |
Source10: git-init.el
|
|
|
3de368 |
Source11: git.xinetd.in
|
|
|
3de368 |
Source12: git.conf.httpd
|
|
|
3de368 |
Source13: git-gui.desktop
|
|
|
3de368 |
Source14: gitweb.conf.in
|
|
|
3de368 |
Source15: git@.service
|
|
|
3de368 |
Source16: git.socket
|
|
|
3de368 |
Patch0: git-1.5-gitweb-home-link.patch
|
|
|
3de368 |
# https://bugzilla.redhat.com/490602
|
|
|
3de368 |
Patch1: git-cvsimport-Ignore-cvsps-2.2b1-Branches-output.patch
|
|
|
3de368 |
# https://bugzilla.redhat.com/600411
|
|
|
3de368 |
Patch3: git-1.7-el5-emacs-support.patch
|
|
|
3de368 |
|
|
|
3de368 |
# fix HTTP(S)-SSO (#1359176)
|
|
|
3de368 |
Patch4: 0001-http-control-GSSAPI-credential-delegation.patch
|
|
|
3de368 |
|
|
|
3de368 |
# fix infinite loop + test
|
|
|
3de368 |
Patch5: 0001-Add-test-for-ls-tree-with-broken-symlink-under-refs-.patch
|
|
|
3de368 |
Patch6: 0002-resolve_ref_unsafe-limit-the-number-of-stat_ref-retr.patch
|
|
|
3de368 |
|
|
|
3de368 |
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
3de368 |
|
|
|
3de368 |
%if ! %{use_prebuilt_docs} && ! 0%{?_without_docs}
|
|
|
3de368 |
BuildRequires: asciidoc >= 8.4.1
|
|
|
3de368 |
BuildRequires: xmlto
|
|
|
3de368 |
%endif
|
|
|
3de368 |
BuildRequires: desktop-file-utils
|
|
|
3de368 |
BuildRequires: emacs
|
|
|
3de368 |
BuildRequires: expat-devel
|
|
|
3de368 |
BuildRequires: gettext
|
|
|
3de368 |
BuildRequires: gnupg2
|
|
|
3de368 |
BuildRequires: %{libcurl_devel}
|
|
|
3de368 |
%if %{gnome_keyring}
|
|
|
3de368 |
BuildRequires: libgnome-keyring-devel
|
|
|
3de368 |
%endif
|
|
|
3de368 |
BuildRequires: pcre-devel
|
|
|
3de368 |
%if 0%{?fedora} && 0%{?fedora} >= 21
|
|
|
3de368 |
BuildRequires: perl-generators
|
|
|
3de368 |
%endif
|
|
|
3de368 |
BuildRequires: perl(Test)
|
|
|
3de368 |
BuildRequires: openssl-devel
|
|
|
3de368 |
BuildRequires: zlib-devel >= 1.2
|
|
|
3de368 |
%if %{bashcomp_pkgconfig}
|
|
|
3de368 |
BuildRequires: pkgconfig(bash-completion)
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%if %{use_systemd}
|
|
|
3de368 |
# For macros
|
|
|
3de368 |
BuildRequires: systemd
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
|
|
|
3de368 |
Requires: %{?scl_prefix}git-core = %{version}-%{release}
|
|
|
3de368 |
Requires: %{?scl_prefix}git-core-doc = %{version}-%{release}
|
|
|
3de368 |
Requires: %{?scl_prefix}perl(Git)
|
|
|
3de368 |
Requires: perl(Error)
|
|
|
3de368 |
%if ! %{defined perl_bootstrap}
|
|
|
3de368 |
Requires: perl(Term::ReadKey)
|
|
|
3de368 |
%endif
|
|
|
3de368 |
Requires: %{?scl_prefix}perl-Git = %{version}-%{release}
|
|
|
3de368 |
|
|
|
3de368 |
%if 0%{?fedora} >= 16 || 0%{?rhel} >= 7
|
|
|
3de368 |
Requires: emacs-filesystem >= %{_emacs_version}
|
|
|
3de368 |
# These can be removed in Fedora 26
|
|
|
3de368 |
Obsoletes: %{?scl_prefix}emacs-git <= 2.4.5
|
|
|
3de368 |
Obsoletes: %{?scl_prefix}emacs-git-el <= 2.4.5
|
|
|
3de368 |
Provides: %{?scl_prefix}emacs-git <= 2.4.5
|
|
|
3de368 |
Provides: %{?scl_prefix}emacs-git-el <= 2.4.5
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
#Provides: git-core = %{version}-%{release}
|
|
|
3de368 |
#%if 0%{?rhel} && 0%{?rhel} <= 5
|
|
|
3de368 |
#Obsoletes: git-core <= 1.5.4.3
|
|
|
3de368 |
#%endif
|
|
|
3de368 |
|
|
|
3de368 |
# Obsolete git-arch
|
|
|
3de368 |
Obsoletes: %{?scl_prefix}git-arch < %{version}-%{release}
|
|
|
3de368 |
|
|
|
3de368 |
%description
|
|
|
3de368 |
Git is a fast, scalable, distributed revision control system with an
|
|
|
3de368 |
unusually rich command set that provides both high-level operations
|
|
|
3de368 |
and full access to internals.
|
|
|
3de368 |
|
|
|
3de368 |
The git rpm installs common set of tools which are usually using with
|
|
|
3de368 |
small amount of dependencies. To install all git packages, including
|
|
|
3de368 |
tools for integrating with other SCMs, install the git-all meta-package.
|
|
|
3de368 |
|
|
|
3de368 |
%package all
|
|
|
3de368 |
Summary: Meta-package to pull in all git tools
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}
|
|
|
3de368 |
Requires: %{?scl_prefix}git-cvs = %{version}-%{release}
|
|
|
3de368 |
Requires: %{?scl_prefix}git-email = %{version}-%{release}
|
|
|
3de368 |
Requires: %{?scl_prefix}git-gui = %{version}-%{release}
|
|
|
3de368 |
Requires: %{?scl_prefix}git-svn = %{version}-%{release}
|
|
|
3de368 |
Requires: %{?scl_prefix}git-p4 = %{version}-%{release}
|
|
|
3de368 |
Requires: %{?scl_prefix}gitk = %{version}-%{release}
|
|
|
3de368 |
Requires: %{?scl_prefix}perl-Git = %{version}-%{release}
|
|
|
3de368 |
%if ! %{defined perl_bootstrap}
|
|
|
3de368 |
Requires: perl(Term::ReadKey)
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%if 0%{?rhel} && 0%{?rhel} <= 6
|
|
|
3de368 |
Requires: %{?scl_prefix}emacs-git = %{version}-%{release}
|
|
|
3de368 |
%endif
|
|
|
3de368 |
Obsoletes: %{?scl_prefix}git <= 1.5.4.3
|
|
|
3de368 |
|
|
|
3de368 |
%description all
|
|
|
3de368 |
Git is a fast, scalable, distributed revision control system with an
|
|
|
3de368 |
unusually rich command set that provides both high-level operations
|
|
|
3de368 |
and full access to internals.
|
|
|
3de368 |
|
|
|
3de368 |
This is a dummy package which brings in all subpackages.
|
|
|
3de368 |
|
|
|
3de368 |
%package core
|
|
|
3de368 |
Summary: Core package of git with minimal funcionality
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
Requires: less
|
|
|
3de368 |
Requires: openssh-clients
|
|
|
3de368 |
Requires: rsync
|
|
|
3de368 |
Requires: zlib >= 1.2
|
|
|
3de368 |
Requires: %{?scl_prefix_httpd}libcurl
|
|
|
3de368 |
|
|
|
3de368 |
%description core
|
|
|
3de368 |
Git is a fast, scalable, distributed revision control system with an
|
|
|
3de368 |
unusually rich command set that provides both high-level operations
|
|
|
3de368 |
and full access to internals.
|
|
|
3de368 |
|
|
|
3de368 |
The git-core rpm installs really the core tools with minimal
|
|
|
3de368 |
dependencies. Install git package for common set of tools.
|
|
|
3de368 |
To install all git packages, including tools for integrating with
|
|
|
3de368 |
other SCMs, install the git-all meta-package.
|
|
|
3de368 |
|
|
|
3de368 |
%package core-doc
|
|
|
3de368 |
Summary: Documentation files for git-core
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
Requires: %{?scl_prefix}git-core = %{version}-%{release}
|
|
|
3de368 |
|
|
|
3de368 |
%description core-doc
|
|
|
3de368 |
Documentation files for git-core package including man pages.
|
|
|
3de368 |
|
|
|
3de368 |
%package daemon
|
|
|
3de368 |
Summary: Git protocol daemon
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}
|
|
|
3de368 |
%if %{use_systemd}
|
|
|
3de368 |
Requires: systemd
|
|
|
3de368 |
Requires(post): systemd
|
|
|
3de368 |
Requires(preun): systemd
|
|
|
3de368 |
Requires(postun): systemd
|
|
|
3de368 |
%else
|
|
|
3de368 |
Requires: xinetd
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
%description daemon
|
|
|
3de368 |
The git daemon for supporting git:// access to git repositories
|
|
|
3de368 |
|
|
|
3de368 |
%package -n %{?scl_prefix}gitweb
|
|
|
3de368 |
Summary: Simple web interface to git repositories
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
%endif
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}
|
|
|
3de368 |
|
|
|
3de368 |
%description -n %{?scl_prefix}gitweb
|
|
|
3de368 |
Simple web interface to track changes in git repositories
|
|
|
3de368 |
|
|
|
3de368 |
%package p4
|
|
|
3de368 |
Summary: Git tools for working with Perforce depots
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
%endif
|
|
|
3de368 |
BuildRequires: python
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}
|
|
|
3de368 |
|
|
|
3de368 |
%description p4
|
|
|
3de368 |
%{summary}.
|
|
|
3de368 |
|
|
|
3de368 |
%package svn
|
|
|
3de368 |
Summary: Git tools for importing Subversion repositories
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}, subversion
|
|
|
3de368 |
Requires: perl(Digest::MD5)
|
|
|
3de368 |
%if ! %{defined perl_bootstrap}
|
|
|
3de368 |
Requires: perl(Term::ReadKey)
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
%description svn
|
|
|
3de368 |
Git tools for importing Subversion repositories.
|
|
|
3de368 |
|
|
|
3de368 |
%package cvs
|
|
|
3de368 |
Summary: Git tools for importing CVS repositories
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
%endif
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}, cvs
|
|
|
3de368 |
Requires: cvsps
|
|
|
3de368 |
Requires: perl(DBD::SQLite)
|
|
|
3de368 |
Requires: %{scl_prefix}perl(Git)
|
|
|
3de368 |
|
|
|
3de368 |
%description cvs
|
|
|
3de368 |
Git tools for importing CVS repositories.
|
|
|
3de368 |
|
|
|
3de368 |
%package email
|
|
|
3de368 |
Summary: Git tools for sending email
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
%endif
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}, %{?scl_prefix}perl-Git = %{version}-%{release}
|
|
|
3de368 |
Requires: perl(Authen::SASL)
|
|
|
3de368 |
Requires: perl(Net::SMTP::SSL)
|
|
|
3de368 |
Requires: %{scl_prefix}perl(Git)
|
|
|
3de368 |
|
|
|
3de368 |
%description email
|
|
|
3de368 |
Git tools for sending email.
|
|
|
3de368 |
|
|
|
3de368 |
%package gui
|
|
|
3de368 |
Summary: Git GUI tool
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
%endif
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}, tk >= 8.4
|
|
|
3de368 |
Requires: %{?scl_prefix}gitk = %{version}-%{release}
|
|
|
3de368 |
|
|
|
3de368 |
%description gui
|
|
|
3de368 |
Git GUI tool.
|
|
|
3de368 |
|
|
|
3de368 |
%package -n %{?scl_prefix}gitk
|
|
|
3de368 |
Summary: Git revision tree visualiser
|
|
|
3de368 |
Group: Development/Tools
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
%endif
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}, tk >= 8.4
|
|
|
3de368 |
|
|
|
3de368 |
%description -n %{?scl_prefix}gitk
|
|
|
3de368 |
Git revision tree visualiser.
|
|
|
3de368 |
|
|
|
3de368 |
%package -n %{?scl_prefix}perl-Git
|
|
|
3de368 |
Summary: Perl interface to Git
|
|
|
3de368 |
Group: Development/Libraries
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
%endif
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}
|
|
|
3de368 |
BuildRequires: perl(Error), perl(ExtUtils::MakeMaker)
|
|
|
3de368 |
Requires: perl(Error)
|
|
|
3de368 |
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
|
|
3de368 |
%{?scl:
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git) = 0.01
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::Error::Command)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::I18N)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::IndexInfo)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::activestate_pipe)
|
|
|
3de368 |
Requires: %{?scl_prefix}perl(Git)
|
|
|
3de368 |
}
|
|
|
3de368 |
|
|
|
3de368 |
%description -n %{?scl_prefix}perl-Git
|
|
|
3de368 |
Perl interface to Git.
|
|
|
3de368 |
|
|
|
3de368 |
%package -n %{?scl_prefix}perl-Git-SVN
|
|
|
3de368 |
Summary: Perl interface to Git::SVN
|
|
|
3de368 |
Group: Development/Libraries
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
%endif
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}
|
|
|
3de368 |
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
|
|
3de368 |
%{?scl:
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::SVN)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::SVN::Editor)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::SVN::Fetcher)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::SVN::GlobSpec)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::SVN::Log)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::SVN::Memoize::YAML)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::SVN::Migration)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::SVN::Prompt)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::SVN::Ra)
|
|
|
3de368 |
Provides: %{?scl_prefix}perl(Git::SVN::Utils)
|
|
|
3de368 |
Requires: %{?scl_prefix}perl(Git)
|
|
|
3de368 |
Requires: %{?scl_prefix}perl(Git::SVN::Utils)
|
|
|
3de368 |
} # scl
|
|
|
3de368 |
|
|
|
3de368 |
%description -n %{?scl_prefix}perl-Git-SVN
|
|
|
3de368 |
Perl interface to Git.
|
|
|
3de368 |
|
|
|
3de368 |
%if 0%{?rhel} && 0%{?rhel} <= 6
|
|
|
3de368 |
%package -n %{?scl_prefix}emacs-git
|
|
|
3de368 |
Summary: Git version control system support for Emacs
|
|
|
3de368 |
Group: Applications/Editors
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
Requires: %{?scl_prefix}git = %{version}-%{release}
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
Requires: emacs(bin) >= %{_emacs_version}
|
|
|
3de368 |
%else
|
|
|
3de368 |
Requires: emacs-common
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
%description -n %{?scl_prefix}emacs-git
|
|
|
3de368 |
%{summary}.
|
|
|
3de368 |
|
|
|
3de368 |
%package -n %{?scl_prefix}emacs-git-el
|
|
|
3de368 |
Summary: Elisp source files for git version control system support for Emacs
|
|
|
3de368 |
Group: Applications/Editors
|
|
|
3de368 |
%{?scl:Requires:%scl_runtime}
|
|
|
3de368 |
%if %{noarch_sub}
|
|
|
3de368 |
BuildArch: noarch
|
|
|
3de368 |
%endif
|
|
|
3de368 |
Requires: %{?scl_prefix}emacs-git = %{version}-%{release}
|
|
|
3de368 |
|
|
|
3de368 |
%description -n %{?scl_prefix}emacs-git-el
|
|
|
3de368 |
%{summary}.
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
%prep
|
|
|
3de368 |
# Verify GPG signatures
|
|
|
3de368 |
gpghome="$(mktemp -qd)" # Ensure we don't use any existing gpg keyrings
|
|
|
3de368 |
key="%{SOURCE9}"
|
|
|
3de368 |
# Ignore noisy output from GnuPG 2.0, used on EL <= 7
|
|
|
3de368 |
# https://bugs.gnupg.org/gnupg/issue1555
|
|
|
3de368 |
gpg2 --dearmor --quiet --batch --yes $key >/dev/null
|
|
|
3de368 |
for src in %{SOURCE0} %{SOURCE1} %{SOURCE2}; do
|
|
|
3de368 |
# Upstream signs the uncompressed tarballs
|
|
|
3de368 |
tar=${src/%.xz/}
|
|
|
3de368 |
xz -dc $src > $tar
|
|
|
3de368 |
gpgv2 --homedir "$gpghome" --quiet --keyring $key.gpg $tar.sign $tar
|
|
|
3de368 |
rm -f $tar
|
|
|
3de368 |
done
|
|
|
3de368 |
rm -rf "$gpghome" # Cleanup tmp gpg home dir
|
|
|
3de368 |
|
|
|
3de368 |
%setup -q -n %{pkg_name}-%{version}
|
|
|
3de368 |
%patch0 -p1
|
|
|
3de368 |
%patch1 -p1
|
|
|
3de368 |
%if %{emacs_old}
|
|
|
3de368 |
%patch3 -p1
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%patch4 -p1
|
|
|
3de368 |
%patch5 -p1
|
|
|
3de368 |
%patch6 -p1
|
|
|
3de368 |
|
|
|
3de368 |
%if %{use_prebuilt_docs}
|
|
|
3de368 |
mkdir -p prebuilt_docs/{html,man}
|
|
|
3de368 |
xz -dc %{SOURCE1} | tar xf - -C prebuilt_docs/html
|
|
|
3de368 |
xz -dc %{SOURCE2} | tar xf - -C prebuilt_docs/man
|
|
|
3de368 |
# Remove non-html files
|
|
|
3de368 |
find prebuilt_docs/html -type f ! -name '*.html' | xargs rm
|
|
|
3de368 |
find prebuilt_docs/html -type d | xargs rmdir --ignore-fail-on-non-empty
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
# Use these same options for every invocation of 'make'.
|
|
|
3de368 |
# Otherwise it will rebuild in %%install due to flags changes.
|
|
|
3de368 |
cat << \EOF > config.mak
|
|
|
3de368 |
V = 1
|
|
|
3de368 |
CFLAGS = %{optflags}
|
|
|
3de368 |
LDFLAGS = %{__global_ldflags}
|
|
|
3de368 |
BLK_SHA1 = 1
|
|
|
3de368 |
NEEDS_CRYPTO_WITH_SSL = 1
|
|
|
3de368 |
USE_LIBPCRE = 1
|
|
|
3de368 |
ETC_GITCONFIG = %{_sysconfdir}/gitconfig
|
|
|
3de368 |
DESTDIR = %{buildroot}
|
|
|
3de368 |
INSTALL = install -p
|
|
|
3de368 |
GITWEB_PROJECTROOT = %{_localstatedir}/lib/git
|
|
|
3de368 |
GNU_ROFF = 1
|
|
|
3de368 |
htmldir = %{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}}
|
|
|
3de368 |
prefix = %{_prefix}
|
|
|
3de368 |
gitwebdir = %{_localstatedir}/www/git
|
|
|
3de368 |
EOF
|
|
|
3de368 |
|
|
|
3de368 |
%if "%{gitcoredir}" == "%{_bindir}"
|
|
|
3de368 |
echo gitexecdir = %{_bindir} >> config.mak
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
%if %{docbook_suppress_sp}
|
|
|
3de368 |
# This is needed for 1.69.1-1.71.0
|
|
|
3de368 |
echo DOCBOOK_SUPPRESS_SP = 1 >> config.mak
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
# Filter bogus perl requires
|
|
|
3de368 |
# packed-refs comes from a comment in contrib/hooks/update-paranoid
|
|
|
3de368 |
# YAML::Any is optional and not available on el5
|
|
|
3de368 |
%if %{use_new_rpm_filters}
|
|
|
3de368 |
%{?perl_default_filter}
|
|
|
3de368 |
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(packed-refs\\)
|
|
|
3de368 |
# Filter bogus perl provides and requires when build SCLs because %%scl_prefix
|
|
|
3de368 |
# is requied in that case, e.g.: rh-git29-perl(Git)
|
|
|
3de368 |
%{?scl:
|
|
|
3de368 |
%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\(
|
|
|
3de368 |
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\(Git
|
|
|
3de368 |
}
|
|
|
3de368 |
%if ! %{defined perl_bootstrap}
|
|
|
3de368 |
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(Term::ReadKey\\)
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%else # ! use_new_rpm_filters
|
|
|
3de368 |
|
|
|
3de368 |
%{?filter_setup:
|
|
|
3de368 |
%{?filter_yaml_any:%filter_from_provides /perl(YAML::Any)/d}
|
|
|
3de368 |
%{?scl:%filter_from_provides /^perl(Git.*)/d}
|
|
|
3de368 |
%{?scl:%filter_from_requires /^perl(Git.*)/d}
|
|
|
3de368 |
%filter_from_requires /perl(packed-refs)/d
|
|
|
3de368 |
%filter_setup
|
|
|
3de368 |
}
|
|
|
3de368 |
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
%build
|
|
|
3de368 |
%{?scl:scl enable %{scl_httpd} - << "EOF"}
|
|
|
3de368 |
set -ex
|
|
|
3de368 |
export CPATH="%{cpath_dir}:${CPATH}"
|
|
|
3de368 |
make %{?_smp_mflags} all
|
|
|
3de368 |
%if ! %{use_prebuilt_docs} && ! 0%{?_without_docs}
|
|
|
3de368 |
make %{?_smp_mflags} doc
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
make -C contrib/emacs
|
|
|
3de368 |
|
|
|
3de368 |
%if %{gnome_keyring}
|
|
|
3de368 |
make -C contrib/credential/gnome-keyring/
|
|
|
3de368 |
%endif
|
|
|
3de368 |
make -C contrib/credential/netrc/
|
|
|
3de368 |
|
|
|
3de368 |
make -C contrib/subtree/
|
|
|
3de368 |
|
|
|
3de368 |
# Remove shebang from bash-completion script
|
|
|
3de368 |
sed -i '/^#!bash/,+1 d' contrib/completion/git-completion.bash
|
|
|
3de368 |
%{?scl:EOF}
|
|
|
3de368 |
|
|
|
3de368 |
|
|
|
3de368 |
%install
|
|
|
3de368 |
rm -rf %{buildroot}
|
|
|
3de368 |
|
|
|
3de368 |
%{?scl:scl enable %{scl_httpd} - << "EOF"}
|
|
|
3de368 |
set -ex
|
|
|
3de368 |
export CPATH="%{cpath_dir}:${CPATH}"
|
|
|
3de368 |
make %{?_smp_mflags} INSTALLDIRS=vendor install
|
|
|
3de368 |
%if ! %{use_prebuilt_docs} && ! 0%{?_without_docs}
|
|
|
3de368 |
make %{?_smp_mflags} INSTALLDIRS=vendor install-doc
|
|
|
3de368 |
%else
|
|
|
3de368 |
cp -a prebuilt_docs/man/* %{buildroot}%{_mandir}
|
|
|
3de368 |
cp -a prebuilt_docs/html/* Documentation/
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%{?scl:EOF}
|
|
|
3de368 |
|
|
|
3de368 |
|
|
|
3de368 |
%if %{emacs_old}
|
|
|
3de368 |
%global _emacs_sitelispdir %{_datadir}/emacs/site-lisp
|
|
|
3de368 |
%global _emacs_sitestartdir %{_emacs_sitelispdir}/site-start.d
|
|
|
3de368 |
%else
|
|
|
3de368 |
# scl is not relevant for rhel <= 5
|
|
|
3de368 |
%{expand:%global _emacs_sitelispdir %{_scl_root}%{?_emacs_sitelispdir}}
|
|
|
3de368 |
%{expand:%global _emacs_sitestartdir %{_scl_root}%{?_emacs_sitestartdir}}
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%global elispdir %{_emacs_sitelispdir}/git
|
|
|
3de368 |
|
|
|
3de368 |
make -C contrib/emacs install \
|
|
|
3de368 |
emacsdir=%{buildroot}%{elispdir}
|
|
|
3de368 |
for elc in %{buildroot}%{elispdir}/*.elc ; do
|
|
|
3de368 |
install -pm 644 contrib/emacs/$(basename $elc .elc).el \
|
|
|
3de368 |
%{buildroot}%{elispdir}
|
|
|
3de368 |
done
|
|
|
3de368 |
install -Dpm 644 %{SOURCE10} \
|
|
|
3de368 |
%{buildroot}%{_emacs_sitestartdir}/git-init.el
|
|
|
3de368 |
|
|
|
3de368 |
%if %{gnome_keyring}
|
|
|
3de368 |
install -pm 755 contrib/credential/gnome-keyring/git-credential-gnome-keyring \
|
|
|
3de368 |
%{buildroot}%{gitcoredir}
|
|
|
3de368 |
# Remove built binary files, otherwise they will be installed in doc
|
|
|
3de368 |
make -C contrib/credential/gnome-keyring/ clean
|
|
|
3de368 |
%endif
|
|
|
3de368 |
install -pm 755 contrib/credential/netrc/git-credential-netrc \
|
|
|
3de368 |
%{buildroot}%{gitcoredir}
|
|
|
3de368 |
|
|
|
3de368 |
make -C contrib/subtree install
|
|
|
3de368 |
%if ! %{use_prebuilt_docs}
|
|
|
3de368 |
make -C contrib/subtree install-doc
|
|
|
3de368 |
%endif
|
|
|
3de368 |
# it's ugly hack, but this file don't need to be copied to this directory
|
|
|
3de368 |
# it's already part of git-core-doc and it's alone here
|
|
|
3de368 |
rm -f %{buildroot}%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}}/git-subtree.html
|
|
|
3de368 |
|
|
|
3de368 |
mkdir -p %{buildroot}%{httpdconfdir}
|
|
|
3de368 |
mkdir -p %{buildroot}%{_sysconfdir}
|
|
|
3de368 |
install -pm 0644 %{SOURCE12} %{buildroot}%{httpdconfdir}/%{?scl_prefix}git.conf
|
|
|
3de368 |
sed "s|@PROJECTROOT@|%{_localstatedir}/lib/git|g" \
|
|
|
3de368 |
%{SOURCE14} > %{buildroot}%{_sysconfdir}/gitweb.conf
|
|
|
3de368 |
|
|
|
3de368 |
find %{buildroot} -type f -name .packlist -exec rm -f {} ';'
|
|
|
3de368 |
find %{buildroot} -type f -name '*.bs' -empty -exec rm -f {} ';'
|
|
|
3de368 |
find %{buildroot} -type f -name perllocal.pod -exec rm -f {} ';'
|
|
|
3de368 |
|
|
|
3de368 |
#FIXME:
|
|
|
3de368 |
# Remove remote-helper python libraries and scripts, these are not ready for
|
|
|
3de368 |
# use yet
|
|
|
3de368 |
rm -rf %{buildroot}%{_scl_root}%{python_sitelib} %{buildroot}%{gitcoredir}/git-remote-testgit
|
|
|
3de368 |
|
|
|
3de368 |
# git-archimport is not supported
|
|
|
3de368 |
find %{buildroot} Documentation -type f -name 'git-archimport*' -exec rm -f {} ';'
|
|
|
3de368 |
|
|
|
3de368 |
#TODO: check this!!!
|
|
|
3de368 |
exclude_re="archimport|email|git-citool|git-cvs|git-daemon|git-gui|git-remote-bzr|git-remote-hg|gitk|p4|svn"
|
|
|
3de368 |
(find %{buildroot}{%{_bindir},%{_libexecdir}} -type f | grep -vE "$exclude_re" | sed -e s@^%{buildroot}@@) > bin-man-doc-files
|
|
|
3de368 |
(find %{buildroot}{%{_bindir},%{_libexecdir}} -mindepth 1 -type d | grep -vE "$exclude_re" | sed -e 's@^%{buildroot}@%dir @') >> bin-man-doc-files
|
|
|
3de368 |
(find %{buildroot}%{_scl_root}%{perl_vendorlib} -type f | sed -e s@^%{buildroot}@@) > perl-git-files
|
|
|
3de368 |
(find %{buildroot}%{_scl_root}%{perl_vendorlib} -mindepth 1 -type d | sed -e 's@^%{buildroot}@%dir @') >> perl-git-files
|
|
|
3de368 |
# Split out Git::SVN files
|
|
|
3de368 |
grep Git/SVN perl-git-files > perl-git-svn-files
|
|
|
3de368 |
sed -i "/Git\/SVN/ d" perl-git-files
|
|
|
3de368 |
%if %{!?_without_docs:1}0
|
|
|
3de368 |
(find %{buildroot}%{_mandir} -type f | grep -vE "$exclude_re|Git" | sed -e s@^%{buildroot}@@ -e 's/$/*/' ) >> bin-man-doc-files
|
|
|
3de368 |
%else
|
|
|
3de368 |
rm -rf %{buildroot}%{_mandir}
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
mkdir -p %{buildroot}%{_localstatedir}/lib/git
|
|
|
3de368 |
%if %{use_systemd}
|
|
|
3de368 |
mkdir -p %{buildroot}%{_unitdir}
|
|
|
3de368 |
cp -a %{SOURCE15} %{buildroot}%{_unitdir}/%{scl_prefix}git@.service
|
|
|
3de368 |
cp -a %{SOURCE16} %{buildroot}%{_unitdir}/%{scl_prefix}git.socket
|
|
|
3de368 |
%else
|
|
|
3de368 |
mkdir -p %{buildroot}%{_root_sysconfdir}/xinetd.d
|
|
|
3de368 |
# On EL <= 5, xinetd does not enable IPv6 by default
|
|
|
3de368 |
enable_ipv6=" # xinetd does not enable IPv6 by default
|
|
|
3de368 |
flags = IPv6"
|
|
|
3de368 |
perl -p \
|
|
|
3de368 |
-e "s|\@GITCOREDIR\@|%{gitcoredir}|g;" \
|
|
|
3de368 |
-e "s|\@BASE_PATH\@|%{_localstatedir}/lib/git|g;" \
|
|
|
3de368 |
%if %{enable_ipv6}
|
|
|
3de368 |
-e "s|^}|$enable_ipv6\n$&|;" \
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%{SOURCE11} > %{buildroot}%{_root_sysconfdir}/xinetd.d/%{scl_prefix}git
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
# Setup bash completion
|
|
|
3de368 |
install -Dpm 644 contrib/completion/git-completion.bash %{buildroot}%{bashcompdir}/git
|
|
|
3de368 |
ln -s git %{buildroot}%{bashcompdir}/gitk
|
|
|
3de368 |
|
|
|
3de368 |
# Install tcsh completion
|
|
|
3de368 |
mkdir -p %{buildroot}%{_datadir}/git-core/contrib/completion
|
|
|
3de368 |
install -pm 644 contrib/completion/git-completion.tcsh \
|
|
|
3de368 |
%{buildroot}%{_datadir}/git-core/contrib/completion/
|
|
|
3de368 |
|
|
|
3de368 |
# Move contrib/hooks out of %%docdir and make them executable
|
|
|
3de368 |
mkdir -p %{buildroot}%{_datadir}/git-core/contrib
|
|
|
3de368 |
mv contrib/hooks %{buildroot}%{_datadir}/git-core/contrib
|
|
|
3de368 |
chmod +x %{buildroot}%{_datadir}/git-core/contrib/hooks/*
|
|
|
3de368 |
pushd contrib > /dev/null
|
|
|
3de368 |
ln -s ../../../git-core/contrib/hooks
|
|
|
3de368 |
popd > /dev/null
|
|
|
3de368 |
|
|
|
3de368 |
# Install git-prompt.sh
|
|
|
3de368 |
mkdir -p %{buildroot}%{_datadir}/git-core/contrib/completion
|
|
|
3de368 |
install -pm 644 contrib/completion/git-prompt.sh \
|
|
|
3de368 |
%{buildroot}%{_datadir}/git-core/contrib/completion/
|
|
|
3de368 |
|
|
|
3de368 |
# install git-gui .desktop file
|
|
|
3de368 |
cp %{SOURCE13} %{?scl_prefix}git-gui.desktop
|
|
|
3de368 |
desktop-file-install \
|
|
|
3de368 |
%if %{desktop_vendor_tag}
|
|
|
3de368 |
--vendor fedora \
|
|
|
3de368 |
%endif
|
|
|
3de368 |
--delete-original \
|
|
|
3de368 |
--dir=%{buildroot}%{appdesktopdir} %{?scl_prefix}git-gui.desktop
|
|
|
3de368 |
|
|
|
3de368 |
# find translations
|
|
|
3de368 |
%find_lang %{pkg_name} %{pkg_name}.lang
|
|
|
3de368 |
cat %{pkg_name}.lang >> bin-man-doc-files
|
|
|
3de368 |
|
|
|
3de368 |
# quiet some rpmlint complaints
|
|
|
3de368 |
chmod -R g-w %{buildroot}
|
|
|
3de368 |
find %{buildroot} -name git-mergetool--lib | xargs chmod a-x
|
|
|
3de368 |
# rm -f {Documentation/technical,contrib/emacs,contrib/credential/gnome-keyring}/.gitignore
|
|
|
3de368 |
# These files probably are not needed
|
|
|
3de368 |
find . -name .gitignore -delete
|
|
|
3de368 |
chmod a-x Documentation/technical/api-index.sh
|
|
|
3de368 |
find contrib -type f | xargs chmod -x
|
|
|
3de368 |
|
|
|
3de368 |
# Split core files
|
|
|
3de368 |
not_core_re="git-(add--interactive|am|credential-netrc|difftool|instaweb|relink|request-pull|send-mail|submodule)|gitweb|prepare-commit-msg|pre-rebase"
|
|
|
3de368 |
grep -vE "$not_core_re|\/man\/" bin-man-doc-files > bin-files-core
|
|
|
3de368 |
grep -vE "$not_core_re" bin-man-doc-files | grep "\/man\/" > man-doc-files-core
|
|
|
3de368 |
grep -E "$not_core_re" bin-man-doc-files > bin-man-doc-git-files
|
|
|
3de368 |
|
|
|
3de368 |
%check
|
|
|
3de368 |
# check source files with hardcoded content - it's more for reminder
|
|
|
3de368 |
# when new collection will be added in future
|
|
|
3de368 |
%if 0%{?scl:1}
|
|
|
3de368 |
# scl enable is required to use
|
|
|
3de368 |
grep -q "^Exec=/usr/bin/scl enable %{scl}" %{buildroot}%{appdesktopdir}/*git-gui.desktop
|
|
|
3de368 |
%if 0%{?use_systemd}
|
|
|
3de368 |
grep -q "^ExecStart=-/usr/bin/scl enable %{scl}" %{buildroot}%{_unitdir}/%{scl_prefix}git@.service
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
# and should be used correct paths - check at least that rh-gitXX is in path
|
|
|
3de368 |
grep -q "^Icon.*%{scl}" %{buildroot}%{appdesktopdir}/*git-gui.desktop
|
|
|
3de368 |
grep "%{_localstatedir}/www/git" %{buildroot}%{httpdconfdir}/%{?scl_prefix}git.conf
|
|
|
3de368 |
%if 0%{?use_systemd}
|
|
|
3de368 |
grep -qe "-- .*%{scl}" %{buildroot}%{_unitdir}/%{scl_prefix}git@.service
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
# check Name/GenericName that contains rh-GitXX (with current XX, e.g. 29)
|
|
|
3de368 |
grep -qi "^Name=%{scl}" %{buildroot}%{appdesktopdir}/*git-gui.desktop
|
|
|
3de368 |
grep -qi "^GenericName=%{scl}" %{buildroot}%{appdesktopdir}/*git-gui.desktop
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
%clean
|
|
|
3de368 |
rm -rf %{buildroot}
|
|
|
3de368 |
|
|
|
3de368 |
%if %{use_systemd}
|
|
|
3de368 |
%post daemon
|
|
|
3de368 |
%systemd_post %{scl_prefix}git@.service
|
|
|
3de368 |
|
|
|
3de368 |
%preun daemon
|
|
|
3de368 |
%systemd_preun %{scl_prefix}git@.service
|
|
|
3de368 |
|
|
|
3de368 |
%postun daemon
|
|
|
3de368 |
%systemd_postun_with_restart %{scl_prefix}git@.service
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
%files -f bin-man-doc-git-files
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%if 0%{?fedora} >= 16 || 0%{?rhel} >= 7
|
|
|
3de368 |
%{elispdir}
|
|
|
3de368 |
%{_emacs_sitestartdir}/git-init.el
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%{_datadir}/git-core/contrib/hooks/update-paranoid
|
|
|
3de368 |
%{_datadir}/git-core/contrib/hooks/setgitperms.perl
|
|
|
3de368 |
#%{_datadir}/git-core/*
|
|
|
3de368 |
#%doc Documentation/*.txt
|
|
|
3de368 |
#%{!?_without_docs: %doc Documentation/*.html}
|
|
|
3de368 |
#%{!?_without_docs: %doc Documentation/howto/* Documentation/technical/*}
|
|
|
3de368 |
|
|
|
3de368 |
%files core -f bin-files-core
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%{!?_licensedir:%global license %doc}
|
|
|
3de368 |
%license COPYING
|
|
|
3de368 |
# exlude is best way here because of troubles with symlinks inside git-core/
|
|
|
3de368 |
%exclude %{_datadir}/git-core/contrib/hooks/update-paranoid
|
|
|
3de368 |
%exclude %{_datadir}/git-core/contrib/hooks/setgitperms.perl
|
|
|
3de368 |
%{bashcomproot}
|
|
|
3de368 |
%{_datadir}/git-core/
|
|
|
3de368 |
|
|
|
3de368 |
%files core-doc -f man-doc-files-core
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%doc README.md Documentation/*.txt Documentation/RelNotes contrib/
|
|
|
3de368 |
%{!?_without_docs: %doc Documentation/*.html Documentation/docbook-xsl.css}
|
|
|
3de368 |
%{!?_without_docs: %doc Documentation/howto Documentation/technical}
|
|
|
3de368 |
%if ! %{use_prebuilt_docs}
|
|
|
3de368 |
%{!?_without_docs: %doc contrib/subtree/git-subtree.html}
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
|
|
|
3de368 |
%files p4
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%{gitcoredir}/*p4*
|
|
|
3de368 |
%{gitcoredir}/mergetools/p4merge
|
|
|
3de368 |
%doc Documentation/*p4*.txt
|
|
|
3de368 |
%{!?_without_docs: %{_mandir}/man1/*p4*.1*}
|
|
|
3de368 |
%{!?_without_docs: %doc Documentation/*p4*.html }
|
|
|
3de368 |
|
|
|
3de368 |
%files svn
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%{gitcoredir}/*svn*
|
|
|
3de368 |
%doc Documentation/*svn*.txt
|
|
|
3de368 |
%{!?_without_docs: %{_mandir}/man1/*svn*.1*}
|
|
|
3de368 |
%{!?_without_docs: %doc Documentation/*svn*.html }
|
|
|
3de368 |
|
|
|
3de368 |
%files cvs
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%doc Documentation/*git-cvs*.txt
|
|
|
3de368 |
%if "%{gitcoredir}" != "%{_bindir}"
|
|
|
3de368 |
%{_bindir}/git-cvsserver
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%{gitcoredir}/*cvs*
|
|
|
3de368 |
%{!?_without_docs: %{_mandir}/man1/*cvs*.1*}
|
|
|
3de368 |
%{!?_without_docs: %doc Documentation/*git-cvs*.html }
|
|
|
3de368 |
|
|
|
3de368 |
%files email
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%doc Documentation/*email*.txt
|
|
|
3de368 |
%{gitcoredir}/*email*
|
|
|
3de368 |
%{!?_without_docs: %{_mandir}/man1/*email*.1*}
|
|
|
3de368 |
%{!?_without_docs: %doc Documentation/*email*.html }
|
|
|
3de368 |
|
|
|
3de368 |
%files gui
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%{gitcoredir}/git-gui*
|
|
|
3de368 |
%{gitcoredir}/git-citool
|
|
|
3de368 |
%{appdesktopdir}/*git-gui.desktop
|
|
|
3de368 |
%{_datadir}/git-gui/
|
|
|
3de368 |
%{!?_without_docs: %{_mandir}/man1/git-gui.1*}
|
|
|
3de368 |
%{!?_without_docs: %doc Documentation/git-gui.html}
|
|
|
3de368 |
%{!?_without_docs: %{_mandir}/man1/git-citool.1*}
|
|
|
3de368 |
%{!?_without_docs: %doc Documentation/git-citool.html}
|
|
|
3de368 |
|
|
|
3de368 |
%files -n %{?scl_prefix}gitk
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%doc Documentation/*gitk*.txt
|
|
|
3de368 |
%{_bindir}/*gitk*
|
|
|
3de368 |
%{_datadir}/gitk
|
|
|
3de368 |
%{!?_without_docs: %{_mandir}/man1/*gitk*.1*}
|
|
|
3de368 |
%{!?_without_docs: %doc Documentation/*gitk*.html }
|
|
|
3de368 |
|
|
|
3de368 |
%files -n %{?scl_prefix}perl-Git -f perl-git-files
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%exclude %{_mandir}/man3/*Git*SVN*.3pm*
|
|
|
3de368 |
%{!?_without_docs: %{_mandir}/man3/*Git*.3pm*}
|
|
|
3de368 |
|
|
|
3de368 |
%files -n %{?scl_prefix}perl-Git-SVN -f perl-git-svn-files
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%{!?_without_docs: %{_mandir}/man3/*Git*SVN*.3pm*}
|
|
|
3de368 |
|
|
|
3de368 |
%if 0%{?rhel} && 0%{?rhel} <= 6
|
|
|
3de368 |
%files -n %{?scl_prefix}emacs-git
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%doc contrib/emacs/README
|
|
|
3de368 |
%dir %{elispdir}
|
|
|
3de368 |
%{elispdir}/*.elc
|
|
|
3de368 |
%{_emacs_sitestartdir}/git-init.el
|
|
|
3de368 |
|
|
|
3de368 |
%files -n %{?scl_prefix}emacs-git-el
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%{elispdir}/*.el
|
|
|
3de368 |
%endif
|
|
|
3de368 |
|
|
|
3de368 |
%files daemon
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%doc Documentation/*daemon*.txt
|
|
|
3de368 |
%if %{use_systemd}
|
|
|
3de368 |
%{_unitdir}/%{scl_prefix}git.socket
|
|
|
3de368 |
%{_unitdir}/%{scl_prefix}git@.service
|
|
|
3de368 |
%else
|
|
|
3de368 |
%config(noreplace)%{_root_sysconfdir}/xinetd.d/%{scl_prefix}git
|
|
|
3de368 |
%endif
|
|
|
3de368 |
%{gitcoredir}/git-daemon
|
|
|
3de368 |
%{_localstatedir}/lib/git
|
|
|
3de368 |
%{!?_without_docs: %{_mandir}/man1/*daemon*.1*}
|
|
|
3de368 |
%{!?_without_docs: %doc Documentation/*daemon*.html}
|
|
|
3de368 |
|
|
|
3de368 |
%files -n %{?scl_prefix}gitweb
|
|
|
3de368 |
%defattr(-,root,root)
|
|
|
3de368 |
%doc gitweb/INSTALL gitweb/README
|
|
|
3de368 |
%config(noreplace)%{_sysconfdir}/gitweb.conf
|
|
|
3de368 |
%config(noreplace)%{httpdconfdir}/%{?scl_prefix}git.conf
|
|
|
3de368 |
%{_localstatedir}/www/git/
|
|
|
3de368 |
|
|
|
3de368 |
|
|
|
3de368 |
%files all
|
|
|
3de368 |
# No files for you!
|
|
|
3de368 |
|
|
|
3de368 |
%changelog
|
|
|
3de368 |
* Fri Oct 14 2016 Petr Stodulka <pstodulk@redhat.com> - 2.9.3-2
|
|
|
3de368 |
- fix infinite loop of "git ls-tree" on broken symlink
|
|
|
3de368 |
Resolves: #1204191
|
|
|
3de368 |
|
|
|
3de368 |
* Mon Oct 10 2016 Petr Stodulka <pstodulk@redhat.com> - 2.9.3-1
|
|
|
3de368 |
- Rebase to 2.9.3
|
|
|
3de368 |
- add control of GSSAPI credential delegation to enable HTTP(S)-SSO
|
|
|
3de368 |
authentication
|
|
|
3de368 |
Resolves: #1359176 #1382708
|
|
|
3de368 |
|
|
|
3de368 |
* Mon Aug 08 2016 Petr Stodulka <pstodulk@redhat.com> - 2.9.2-5
|
|
|
3de368 |
- fix service file to use rh-git29 instead of native git
|
|
|
3de368 |
- fix desktop file - changed names & paths inside the file,
|
|
|
3de368 |
use scl rh-git29 instead of native git, change filename
|
|
|
3de368 |
and path of the file to system directory instead of scl
|
|
|
3de368 |
- *git-daemon: xinetd.d: use system directory and added prefix to the filename
|
|
|
3de368 |
- *git-gitweb: store git.conf to directory of httpd24 sclm add scl prefix
|
|
|
3de368 |
to the filename and correct paths inside the file to correct rh-git29
|
|
|
3de368 |
www directory
|
|
|
3de368 |
- fix doubled path for emacs-sitelisp files
|
|
|
3de368 |
- build and link files with httpd24-libcurl
|
|
|
3de368 |
Resolves: #1345897
|
|
|
3de368 |
|
|
|
3de368 |
* Fri Aug 05 2016 Petr Stodulka <pstodulk@redhat.com> - 2.9.2-4
|
|
|
3de368 |
- fix deprecated "vendor" tag for RHEL-6 (it was used for older
|
|
|
3de368 |
RHEL systems)
|
|
|
3de368 |
|
|
|
3de368 |
* Fri Jul 22 2016 Petr Stodulka <pstodulk@redhat.com> - 2.9.2-3
|
|
|
3de368 |
- remove requires on perl(packed-refs) for RHEL-6 builds instead
|
|
|
3de368 |
of provides
|
|
|
3de368 |
|
|
|
3de368 |
* Wed Jul 20 2016 Petr Stodulka <pstodulk@redhat.com> - 2.9.2-2
|
|
|
3de368 |
- Fix Requires of %{scl_prefix}git-gui for %{scl_prefix}gitk
|
|
|
3de368 |
|
|
|
3de368 |
* Wed Jul 20 2016 Petr Stodulka <pstodulk@redhat.com> - 2.9.2-1
|
|
|
3de368 |
- Initial commit with git v2.9.2
|
|
|
3de368 |
- Fixes troubles with infinite loop in "git ls-tree" for broken symlink
|
|
|
3de368 |
under refs/heads
|
|
|
3de368 |
- Rename git.service to git@.service to make it usable
|
|
|
3de368 |
- Resolves: #1204191 #1251460
|
|
|
3de368 |
|