mirror of
https://github.com/YellowJacketLinux/lfs-rpmbootstrap.git
synced 2025-01-23 14:32:16 +08:00
270 lines
8.4 KiB
RPMSpec
270 lines
8.4 KiB
RPMSpec
# FIXME - man pages needs put into subpackages
|
|
|
|
%global specrel 0.dev3
|
|
|
|
# no stripping
|
|
%global debug_package %{nil}
|
|
%global __strip /bin/true
|
|
|
|
%global gitdocs %{_datadir}/git-documentation
|
|
|
|
%if 0%{?!__sed:1} == 1
|
|
%global __sed %{_bindir}/sed}
|
|
%endif
|
|
|
|
%if 0%{?repo:1} == 1
|
|
%if "%{repo}" == "1.core."
|
|
%global novalgrind novalgrind
|
|
%global notk notk
|
|
%endif
|
|
%if "%{repo}" == "2.cli."
|
|
%global notk notk
|
|
%endif
|
|
%endif
|
|
|
|
Name: git
|
|
Version: 2.47.0
|
|
Release: %{?repo}%{specrel}%{?dist}
|
|
Summary: distributed version control system
|
|
|
|
Group: Development/Utilities
|
|
License: GPL-2.0-only and LGPL-2.1-or-later
|
|
URL: https://git-scm.com/
|
|
Source0: https://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
|
|
Source1: https://www.kernel.org/pub/software/scm/git/git-manpages-%{version}.tar.xz
|
|
Source2: https://www.kernel.org/pub/software/scm/git/git-htmldocs-%{version}.tar.xz
|
|
|
|
BuildRequires: %{__sed}
|
|
BuildRequires: perl-devel
|
|
BuildRequires: python3-devel
|
|
BuildRequires: libpcre2-devel
|
|
BuildRequires: pkgconfig(libcurl)
|
|
BuildRequires: pkgconfig(expat)
|
|
BuildRequires: pkgconfig(zlib)
|
|
%if 0%{?libresslAPI:1} == 1
|
|
BuildRequires: libressl-devel
|
|
%else
|
|
BuildRequires: pkgconfig(openssl)
|
|
%endif
|
|
%if 0%{?!notk:1} == 1
|
|
BuildRequires: tk-devel
|
|
%endif
|
|
%if 0%{?runtests:1} == 1
|
|
%if 0%{?!novalgrind:1} == 1
|
|
BuildRequires: valgrind
|
|
%endif
|
|
%endif
|
|
Requires: curl
|
|
Requires: openssh-clients
|
|
Requires: perl-Git = %{version}-%{release}
|
|
|
|
|
|
%description
|
|
Git is a free and open source distributed version control system designed
|
|
to handle everything from small to very large projects with speed and
|
|
efficiency.
|
|
|
|
Git is easy to learn and has a tiny footprint with lightning fast
|
|
performance. It outclasses SCM tools like Subversion, CVS, Perforce,
|
|
and ClearCase with features like cheap local branching, convenient
|
|
staging areas, and multiple workflows.
|
|
|
|
%package -n perl-Git
|
|
Group: Development/Libraries
|
|
Summary: Git Perl modules
|
|
BuildArch: noarch
|
|
Requires: %{name} = %{version}-%{release}
|
|
%if 0%{?perl5_API:1} == 1
|
|
Requires: %{perl5_API}
|
|
%endif
|
|
|
|
%description -n perl-Git
|
|
This package contains the Git perl modules.
|
|
|
|
%if 0%{?!notk:1} == 1
|
|
%package gui
|
|
Group: Applications/Development
|
|
Summary: The Tcl/Tk GUI front-end to git
|
|
Requires: %{name} = %{version}-%{release}
|
|
BuildRequires: tk-devel
|
|
Requires: tk
|
|
BuildArch: noarch
|
|
|
|
%description gui
|
|
This package provides the Tcl/Tk graphical front-end to git.
|
|
%endif
|
|
|
|
%package documentation
|
|
Group: Developer/Documentation
|
|
Summary: HTML and Text documentation for git
|
|
Requires: %{name} = %{version}-%{release}
|
|
BuildArch: noarch
|
|
|
|
%description documentation
|
|
This package contains the in-depth HTML and Text documentation for git.
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
|
|
%build
|
|
%configure \
|
|
--with-gitconfig=%{_sysconfdir}/gitconfig \
|
|
%if 0%{?notk:1} == 1
|
|
--with-tcltk=no \
|
|
%endif
|
|
--with-perl=%{__perl} \
|
|
--with-python=%{python3}
|
|
make %{?_smp_mflags}
|
|
|
|
|
|
%check
|
|
%if 0%{?runtests:1} == 1
|
|
make test > %{name}-make.test.log 2>&1
|
|
%else
|
|
echo "make test not run at package build" > %{name}-make.test.log
|
|
%endif
|
|
|
|
%install
|
|
make perllibdir=%{perl5_vendorlib} install DESTDIR=%{buildroot}
|
|
install -m644 -D contrib/completion/git-completion.bash \
|
|
%{buildroot}%{_datadir}/bash-completion/completions/git
|
|
%find_lang git
|
|
|
|
[ ! -d %{buildroot}%{_mandir} ] && mkdir -p %{buildroot}%{_mandir}
|
|
tar -xf %{SOURCE1} \
|
|
-C %{buildroot}%{_mandir} --no-same-owner --no-overwrite-dir
|
|
mkdir -p %{buildroot}%{gitdocs}
|
|
tar -xf %{SOURCE2} \
|
|
-C %{buildroot}%{gitdocs} --no-same-owner --no-overwrite-dir
|
|
find %{buildroot}%{gitdocs} -type d -exec chmod 755 {} \;
|
|
find %{buildroot}%{gitdocs} -type f -exec chmod 644 {} \;
|
|
|
|
# reorganize html docs
|
|
mkdir -p %{buildroot}%{gitdocs}/man-pages/{html,text}
|
|
mv %{buildroot}%{gitdocs}/{git*.txt,man-pages/text}
|
|
mv %{buildroot}%{gitdocs}/{git*.,index.,man-pages/}html
|
|
mkdir -p %{buildroot}%{gitdocs}/technical/{html,text}
|
|
mv %{buildroot}%{gitdocs}/technical/{*.txt,text}
|
|
mv %{buildroot}%{gitdocs}/technical/{*.,}html
|
|
mkdir -p %{buildroot}%{gitdocs}/howto/{html,text}
|
|
mv %{buildroot}%{gitdocs}/howto/{*.txt,text}
|
|
mv %{buildroot}%{gitdocs}/howto/{*.,}html
|
|
%__sed -i '/^<a href=/s|howto/|&html/|' %{buildroot}%{gitdocs}/howto-index.html
|
|
%__sed -i '/^\* link:/s|howto/|&html/|' %{buildroot}%{gitdocs}/howto-index.txt
|
|
|
|
|
|
%files -f git.lang
|
|
%defattr(-,root,root,-)
|
|
%attr(0755,root,root) %{_bindir}/git
|
|
%attr(0755,root,root) %{_bindir}/git-cvsserver
|
|
%attr(0755,root,root) %{_bindir}/git-receive-pack
|
|
%attr(0755,root,root) %{_bindir}/git-shell
|
|
%attr(0755,root,root) %{_bindir}/git-upload-archive
|
|
%attr(0755,root,root) %{_bindir}/git-upload-pack
|
|
%attr(0755,root,root) %{_bindir}/scalar
|
|
%{_libexecdir}/git-core
|
|
%{_datadir}/git-core
|
|
%attr(0644,root,root) %{_datadir}/bash-completion/completions/git
|
|
#
|
|
%{_datadir}/gitweb
|
|
%attr(0644,root,root) %{_mandir}/man1/*.1*
|
|
%attr(0644,root,root) %{_mandir}/man5/*.5*
|
|
%attr(0644,root,root) %{_mandir}/man7/*.7*
|
|
%license COPYING LGPL-2.1
|
|
%doc COPYING README.md SECURITY.md
|
|
%doc %{name}-make.test.log
|
|
|
|
# fixme - these belong is vendor-perl
|
|
%files -n perl-Git
|
|
%defattr(-,root,root,-)
|
|
%dir %{perl5_vendorlib}/FromCPAN
|
|
%attr(0444,root,root) %{perl5_vendorlib}/FromCPAN/Error.pm
|
|
%dir %{perl5_vendorlib}/FromCPAN/Mail
|
|
%attr(0444,root,root) %{perl5_vendorlib}/FromCPAN/Mail/Address.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git.pm
|
|
%dir %{perl5_vendorlib}/Git
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/I18N.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/IndexInfo.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/LoadCPAN.pm
|
|
%dir %{perl5_vendorlib}/Git/LoadCPAN
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/LoadCPAN/Error.pm
|
|
%dir %{perl5_vendorlib}/Git/LoadCPAN/Mail
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/LoadCPAN/Mail/Address.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/Packet.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/SVN.pm
|
|
%dir %{perl5_vendorlib}/Git/SVN
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/SVN/Editor.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/SVN/Fetcher.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/SVN/GlobSpec.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/SVN/Log.pm
|
|
%dir %{perl5_vendorlib}/Git/SVN/Memoize
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/SVN/Memoize/YAML.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/SVN/Migration.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/SVN/Prompt.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/SVN/Ra.pm
|
|
%attr(0444,root,root) %{perl5_vendorlib}/Git/SVN/Utils.pm
|
|
%license COPYING LGPL-2.1
|
|
|
|
%if 0%{?!notk:1} == 1
|
|
%files gui
|
|
%defattr(-,root,root,-)
|
|
%attr(0755,root,root) %{_bindir}/gitk
|
|
%dir %{_datadir}/git-gui
|
|
%dir %{_datadir}/git-gui/lib
|
|
%{_datadir}/git-gui/lib/*.tcl
|
|
%{_datadir}/git-gui/lib/*.js
|
|
%{_datadir}/git-gui/lib/git-gui.ico
|
|
%{_datadir}/git-gui/lib/tclIndex
|
|
%dir %{_datadir}/git-gui/lib/msgs
|
|
%lang(bg) %{_datadir}/git-gui/lib/msgs/bg.msg
|
|
%lang(de) %{_datadir}/git-gui/lib/msgs/de.msg
|
|
%lang(el) %{_datadir}/git-gui/lib/msgs/el.msg
|
|
%lang(fr) %{_datadir}/git-gui/lib/msgs/fr.msg
|
|
%lang(hu) %{_datadir}/git-gui/lib/msgs/hu.msg
|
|
%lang(it) %{_datadir}/git-gui/lib/msgs/it.msg
|
|
%lang(ja) %{_datadir}/git-gui/lib/msgs/ja.msg
|
|
%lang(nb) %{_datadir}/git-gui/lib/msgs/nb.msg
|
|
%lang(pt_br) %{_datadir}/git-gui/lib/msgs/pt_br.msg
|
|
%lang(pt_pt) %{_datadir}/git-gui/lib/msgs/pt_pt.msg
|
|
%lang(ru) %{_datadir}/git-gui/lib/msgs/ru.msg
|
|
%lang(sv) %{_datadir}/git-gui/lib/msgs/sv.msg
|
|
%lang(vi) %{_datadir}/git-gui/lib/msgs/vi.msg
|
|
%lang(zh_cn) %{_datadir}/git-gui/lib/msgs/zh_cn.msg
|
|
%dir %{_datadir}/gitk
|
|
%dir %{_datadir}/gitk/lib
|
|
%dir %{_datadir}/gitk/lib/msgs
|
|
%lang(bg) %{_datadir}/gitk/lib/msgs/bg.msg
|
|
%lang(ca) %{_datadir}/gitk/lib/msgs/ca.msg
|
|
%lang(de) %{_datadir}/gitk/lib/msgs/de.msg
|
|
%lang(es) %{_datadir}/gitk/lib/msgs/es.msg
|
|
%lang(fr) %{_datadir}/gitk/lib/msgs/fr.msg
|
|
%lang(hu) %{_datadir}/gitk/lib/msgs/hu.msg
|
|
%lang(it) %{_datadir}/gitk/lib/msgs/it.msg
|
|
%lang(ja) %{_datadir}/gitk/lib/msgs/ja.msg
|
|
%lang(pt_br) %{_datadir}/gitk/lib/msgs/pt_br.msg
|
|
%lang(pt_pt) %{_datadir}/gitk/lib/msgs/pt_pt.msg
|
|
%lang(ru) %{_datadir}/gitk/lib/msgs/ru.msg
|
|
%lang(sv) %{_datadir}/gitk/lib/msgs/sv.msg
|
|
%lang(vi) %{_datadir}/gitk/lib/msgs/vi.msg
|
|
%lang(zh_cn) %{_datadir}/gitk/lib/msgs/zh_cn.msg
|
|
%license COPYING LGPL-2.1
|
|
%doc COPYING README.md SECURITY.md
|
|
%endif
|
|
|
|
%files documentation
|
|
%defattr(-,root,root,-)
|
|
%license COPYING
|
|
%{gitdocs}
|
|
|
|
|
|
%changelog
|
|
* Mon Oct 21 2024 Michael A. Peters <anymouseprophet@gmail.com> - 2.47.0-0.dev3
|
|
- Build for YJL 6.6 (LFS 12.2)
|
|
|
|
* Thu May 18 2023 Michael A. Peters <anymouseprophet@gmail.com> - 2.40.1-0.dev2
|
|
- Add bash completion file
|
|
|
|
* Sat May 13 2023 Michael A. Peters <anymouseprophet@gmail.com> - 2.40.1-0.dev1
|
|
- Initial spec file for YJL (RPM bootstrapping LFS/BLFS 11.3)
|