Changeset 921 for spec/trunk/SPECS/git.spec
- Timestamp:
- Dec 13, 2016, 1:17:22 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
spec/trunk/SPECS/git.spec
r458 r921 1 # Note: this .spec is borrowed from git-2.1.0-1.fc22.src.rpm1 # Note: this .spec is borrowed from http://pkgs.fedoraproject.org/cgit/rpms/git.git 2 2 3 3 # Pass --without docs to rpmbuild if you don't want the documentation (force it for now) … … 5 5 6 6 %global gitcoredir %{_libexecdir}/git-core 7 %global noarch_sub 1 7 8 %global libcurl_devel libcurl-devel 8 9 %global docbook_suppress_sp 0 9 10 %global enable_ipv6 0 10 11 %global use_prebuilt_docs 0 12 13 %global bashcompdir %{_sysconfdir}/bash_completion.d 14 %global bashcomproot %{bashcompdir} 11 15 %global use_systemd 0 12 16 13 17 Name: git 14 Version: 2. 0.015 Release: 2%{?dist}18 Version: 2.11.0 19 Release: 1%{?dist} 16 20 Summary: Fast Version Control System 17 21 License: GPLv2 18 22 Group: Development/Tools 19 URL: http://git-scm.com/ 20 #Source0: http://www.kernel.org/pub/software/scm/git/%{name}-%{version}.tar.gz 21 22 %define svn_url http://svn.netlabs.org/repos/ports/git/branches/2.0 23 %define svn_rev 864 23 URL: https://git-scm.com/ 24 25 %define svn_url http://svn.netlabs.org/repos/ports/git/trunk 26 %define svn_rev 1885 24 27 25 28 Source: %{name}-%{version}-r%{svn_rev}.zip … … 29 32 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) 30 33 31 %if ! 0%{?_without_docs}34 %if ! %{use_prebuilt_docs} && ! 0%{?_without_docs} 32 35 BuildRequires: asciidoc >= 8.4.1 33 36 BuildRequires: xmlto … … 36 39 BuildRequires: expat-devel 37 40 BuildRequires: gettext 38 BuildRequires: libcurl-devel41 BuildRequires: %{libcurl_devel} 39 42 #BuildRequires: pcre-devel 43 #BuildRequires: perl-generators 44 #BuildRequires: perl(Test) 40 45 BuildRequires: openssl-devel 41 46 BuildRequires: zlib-devel >= 1.2 42 43 #Requires: less 44 #Requires: openssh-clients 47 %if %{use_systemd} 48 # For macros 49 BuildRequires: systemd 50 %endif 51 52 Requires: git-core = %{version}-%{release} 53 Requires: git-core-doc = %{version}-%{release} 45 54 #Requires: perl(Error) 55 %if ! %{defined perl_bootstrap} 46 56 #Requires: perl(Term::ReadKey) 57 %endif 47 58 Requires: perl-Git = %{version}-%{release} 48 #Requires: rsync49 Requires: zlib >= 1.250 51 Provides: git-core = %{version}-%{release}52 59 53 60 # Obsolete git-arch … … 59 66 and full access to internals. 60 67 61 The git rpm installs the core tools with minimal dependencies. To62 install all git packages, including tools for integrating with other 63 SCMs, install the git-all meta-package.68 The git rpm installs common set of tools which are usually using with 69 small amount of dependencies. To install all git packages, including 70 tools for integrating with other SCMs, install the git-all meta-package. 64 71 65 72 %package all 66 73 Summary: Meta-package to pull in all git tools 67 74 Group: Development/Tools 68 BuildArch: noarch 75 %if %{noarch_sub} 76 BuildArch: noarch 77 %endif 69 78 Requires: git = %{version}-%{release} 70 79 Requires: git-cvs = %{version}-%{release} 71 80 Requires: git-email = %{version}-%{release} 72 #Requires: git-gui = %{version}-%{release}81 Requires: git-gui = %{version}-%{release} 73 82 Requires: git-svn = %{version}-%{release} 74 83 Requires: git-p4 = %{version}-%{release} 75 #Requires: gitk = %{version}-%{release}84 Requires: gitk = %{version}-%{release} 76 85 Requires: perl-Git = %{version}-%{release} 86 %if ! %{defined perl_bootstrap} 87 #Requires: perl(Term::ReadKey) 88 %endif 77 89 #Requires: emacs-git = %{version}-%{release} 78 90 Obsoletes: git <= 1.5.4.3 … … 85 97 This is a dummy package which brings in all subpackages. 86 98 87 %package bzr 88 Summary: Git tools for working with bzr repositories 89 Group: Development/Tools 90 BuildArch: noarch 91 Requires: git = %{version}-%{release} 92 Requires: bzr 93 94 %description bzr 95 %{summary}. 99 %package core 100 Summary: Core package of git with minimal funcionality 101 Group: Development/Tools 102 Requires: less 103 #Requires: openssh-clients 104 #Requires: rsync 105 Requires: zlib >= 1.2 106 %description core 107 Git is a fast, scalable, distributed revision control system with an 108 unusually rich command set that provides both high-level operations 109 and full access to internals. 110 111 The git-core rpm installs really the core tools with minimal 112 dependencies. Install git package for common set of tools. 113 To install all git packages, including tools for integrating with 114 other SCMs, install the git-all meta-package. 115 116 %package core-doc 117 Summary: Documentation files for git-core 118 Group: Development/Tools 119 Requires: git-core = %{version}-%{release} 120 121 %description core-doc 122 Documentation files for git-core package including man pages. 96 123 97 124 %package daemon … … 99 126 Group: Development/Tools 100 127 Requires: git = %{version}-%{release} 101 #%if %{use_systemd}102 #Requires:systemd103 #Requires(post): systemd104 #Requires(preun):systemd105 #Requires(postun): systemd106 #%else128 %if %{use_systemd} 129 Requires: systemd 130 Requires(post): systemd 131 Requires(preun): systemd 132 Requires(postun): systemd 133 %else 107 134 #Requires: xinetd 108 #%endif135 %endif 109 136 %description daemon 110 137 The git dÊmon for supporting git:// access to git repositories … … 114 141 Summary: Simple web interface to git repositories 115 142 Group: Development/Tools 116 BuildArch: noarch 143 %if %{noarch_sub} 144 BuildArch: noarch 145 %endif 117 146 Requires: git = %{version}-%{release} 118 147 … … 121 150 %endif 122 151 123 %package hg124 Summary: Git tools for working with mercurial repositories125 Group: Development/Tools126 BuildArch: noarch127 Requires: git = %{version}-%{release}128 Requires: mercurial >= 1.8129 130 %description hg131 %{summary}.132 133 152 %package p4 134 153 Summary: Git tools for working with Perforce depots 135 154 Group: Development/Tools 136 BuildArch: noarch 155 %if %{noarch_sub} 156 BuildArch: noarch 157 %endif 137 158 BuildRequires: python 138 159 Requires: git = %{version}-%{release} … … 143 164 Summary: Git tools for importing Subversion repositories 144 165 Group: Development/Tools 145 Requires: git = %{version}-%{release}, subversion, subversion-perl 166 Requires: git = %{version}-%{release}, subversion 167 Requires: perl(Digest::MD5) 168 %if ! %{defined perl_bootstrap} 146 169 #Requires: perl(Term::ReadKey) 170 %endif 147 171 %description svn 148 172 Git tools for importing Subversion repositories. … … 151 175 Summary: Git tools for importing CVS repositories 152 176 Group: Development/Tools 153 BuildArch: noarch 177 %if %{noarch_sub} 178 BuildArch: noarch 179 %endif 154 180 Requires: git = %{version}-%{release}, cvs 155 181 Requires: cvsps 156 Requires: perl-DBD-SQLite182 Requires: perl(DBD::SQLite) 157 183 %description cvs 158 184 Git tools for importing CVS repositories. … … 161 187 Summary: Git tools for sending email 162 188 Group: Development/Tools 163 BuildArch: noarch 189 %if %{noarch_sub} 190 BuildArch: noarch 191 %endif 164 192 Requires: git = %{version}-%{release}, perl-Git = %{version}-%{release} 165 193 Requires: perl(Authen::SASL) … … 173 201 Summary: Git GUI tool 174 202 Group: Development/Tools 175 BuildArch: noarch 203 %if %{noarch_sub} 204 BuildArch: noarch 205 %endif 176 206 Requires: git = %{version}-%{release}, tk >= 8.4 177 207 Requires: gitk = %{version}-%{release} … … 182 212 Summary: Git revision tree visualiser 183 213 Group: Development/Tools 184 BuildArch: noarch 214 %if %{noarch_sub} 215 BuildArch: noarch 216 %endif 185 217 Requires: git = %{version}-%{release}, tk >= 8.4 186 218 %description -n gitk … … 192 224 Summary: Perl interface to Git 193 225 Group: Development/Libraries 194 BuildArch: noarch 226 %if %{noarch_sub} 227 BuildArch: noarch 228 %endif 195 229 Requires: git = %{version}-%{release} 196 230 #BuildRequires: perl(Error) … … 205 239 Summary: Perl interface to Git::SVN 206 240 Group: Development/Libraries 207 BuildArch: noarch 241 %if %{noarch_sub} 242 BuildArch: noarch 243 %endif 208 244 Requires: git = %{version}-%{release} 209 245 Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) … … 218 254 Group: Applications/Editors 219 255 Requires: git = %{version}-%{release} 256 %if %{noarch_sub} 220 257 BuildArch: noarch 221 258 Requires: emacs(bin) >= %{_emacs_version} 259 %else 260 Requires: emacs-common 261 %endif 222 262 223 263 %description -n emacs-git … … 227 267 Summary: Elisp source files for git version control system support for Emacs 228 268 Group: Applications/Editors 229 BuildArch: noarch 269 %if %{noarch_sub} 270 BuildArch: noarch 271 %endif 230 272 Requires: emacs-git = %{version}-%{release} 231 273 … … 235 277 %endif 236 278 237 %package debug 238 Summary: HLL debug data for exception handling support. 239 240 %description debug 241 HLL debug data for exception handling support. 242 279 %debug_package 243 280 244 281 %prep … … 257 294 V = 1 258 295 CFLAGS = %{optflags} 296 #LDFLAGS = %{__global_ldflags} 259 297 #BLK_SHA1 = 1 260 298 #NEEDS_CRYPTO_WITH_SSL = 1 … … 262 300 ETC_GITCONFIG = %{_sysconfdir}/gitconfig 263 301 DESTDIR = %{buildroot} 264 INSTALL = install -p302 INSTALL = %{_bindir}/install -p 265 303 GITWEB_PROJECTROOT = %{_var}/lib/git 266 304 GNU_ROFF = 1 … … 281 319 %build 282 320 make %{?_smp_mflags} all 283 %if ! 0%{?_without_docs}284 make doc321 %if ! %{use_prebuilt_docs} && ! 0%{?_without_docs} 322 make %{?_smp_mflags} doc 285 323 %endif 286 324 … … 296 334 %install 297 335 rm -rf %{buildroot} 298 make INSTALLDIRS=vendor install 299 %if ! 0%{?_without_docs} 300 make INSTALLDIRS=vendor install-doc 336 make %{?_smp_mflags} INSTALLDIRS=vendor install 337 %if ! %{use_prebuilt_docs} && ! 0%{?_without_docs} 338 make %{?_smp_mflags} INSTALLDIRS=vendor install-doc 339 %else 340 %if %{use_prebuilt_docs} 341 cp -a prebuilt_docs/man/* %{buildroot}%{_mandir} 342 cp -a prebuilt_docs/html/* Documentation/ 343 %endif 301 344 %endif 302 345 … … 310 353 %{buildroot}%{elispdir} 311 354 done 312 install -Dpm 644 %{SOURCE 2} \355 install -Dpm 644 %{SOURCE10} \ 313 356 %{buildroot}%{_emacs_sitestartdir}/git-init.el 314 357 … … 316 359 317 360 make -C contrib/subtree install 318 %if ! 0%{?_without_docs}361 %if ! %{use_prebuilt_docs} && ! 0%{?_without_docs} 319 362 make -C contrib/subtree install-doc 320 363 %endif 364 # it's ugly hack, but this file don't need to be copied to this directory 365 # it's already part of git-core-doc and it's alone here 366 rm -f %{buildroot}%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}}/git-subtree.html 321 367 322 368 %if 0 323 369 mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d 324 install -pm 0644 %{SOURCE 4} %{buildroot}%{_sysconfdir}/httpd/conf.d/git.conf370 install -pm 0644 %{SOURCE12} %{buildroot}%{_sysconfdir}/httpd/conf.d/git.conf 325 371 sed "s|@PROJECTROOT@|%{_var}/lib/git|g" \ 326 %{SOURCE 6} > %{buildroot}%{_sysconfdir}/gitweb.conf372 %{SOURCE14} > %{buildroot}%{_sysconfdir}/gitweb.conf 327 373 %else 328 374 rm -rf %{buildroot}%{_var}/www/git/ … … 351 397 352 398 mkdir -p %{buildroot}%{_var}/lib/git 353 %if 0354 399 %if %{use_systemd} 355 400 mkdir -p %{buildroot}%{_unitdir} 356 cp -a %{SOURCE12} %{SOURCE13} %{buildroot}%{_unitdir} 357 %else 401 cp -a %{SOURCE15} %{SOURCE16} %{buildroot}%{_unitdir} 402 %else 403 %if 0 358 404 mkdir -p %{buildroot}%{_sysconfdir}/xinetd.d 359 405 # On EL <= 5, xinetd does not enable IPv6 by default … … 366 412 -e "s|^}|$enable_ipv6\n$&|;" \ 367 413 %endif 368 %{SOURCE3} > %{buildroot}%{_sysconfdir}/xinetd.d/git 369 %endif 370 %endif 371 372 # Install bzr and hg remote helpers from contrib 373 install -pm 755 contrib/remote-helpers/git-remote-* %{buildroot}%{gitcoredir} 414 %{SOURCE11} > %{buildroot}%{_sysconfdir}/xinetd.d/git 415 %endif 416 %endif 374 417 375 418 # Setup bash completion 376 mkdir -p %{buildroot}%{_sysconfdir}/bash_completion.d 377 install -pm 644 contrib/completion/git-completion.bash %{buildroot}%{_sysconfdir}/bash_completion.d/git 419 install -Dpm 644 contrib/completion/git-completion.bash %{buildroot}%{bashcompdir}/git 420 ln -s git %{buildroot}%{bashcompdir}/gitk 378 421 379 422 # Install tcsh completion … … 386 429 mv contrib/hooks %{buildroot}%{_datadir}/git-core/contrib 387 430 chmod +x %{buildroot}%{_datadir}/git-core/contrib/hooks/* 388 ln -s ../../../git-core/contrib/hooks contrib/431 ln -s %{buildroot}%{_datadir}/git-core/contrib/hooks contrib/ 389 432 390 433 # Install git-prompt.sh … … 393 436 %{buildroot}%{_datadir}/git-core/contrib/completion/ 394 437 438 %if 0 439 # install git-gui .desktop file 440 desktop-file-install \ 441 %if %{desktop_vendor_tag} 442 --vendor fedora \ 443 %endif 444 --dir=%{buildroot}%{_datadir}/applications %{SOURCE13} 445 %endif 446 395 447 # find translations 396 %if 0397 448 %find_lang %{name} %{name}.lang 398 449 cat %{name}.lang >> bin-man-doc-files 399 %else400 find %{buildroot}%{_datadir}/locale/* -type f | sed -e s@^%{buildroot}@@ >> bin-man-doc-files401 %endif402 450 403 451 # quiet some rpmlint complaints 404 452 chmod -R g-w %{buildroot} 405 453 find %{buildroot} -name git-mergetool--lib | xargs chmod a-x 406 rm -f {Documentation/technical,contrib/emacs,contrib/credential/gnome-keyring}/.gitignore 454 # rm -f {Documentation/technical,contrib/emacs,contrib/credential/gnome-keyring}/.gitignore 455 # These files probably are not needed 456 find . -name .gitignore -delete 407 457 chmod a-x Documentation/technical/api-index.sh 408 458 find contrib -type f | xargs chmod -x 409 459 460 # Split core files 461 not_core_re="git-(add--interactive|am|credential-netrc|difftool|instaweb|relink|request-pull|send-mail|submodule)|gitweb|prepare-commit-msg|pre-rebase" 462 grep -vE "$not_core_re|\/man\/" bin-man-doc-files > bin-files-core 463 %if %{use_prebuilt_docs} || ! 0%{?_without_docs} 464 grep -vE "$not_core_re" bin-man-doc-files | grep "\/man\/" > man-doc-files-core 465 %endif 466 grep -E "$not_core_re" bin-man-doc-files > bin-man-doc-git-files 467 410 468 411 469 %clean … … 414 472 %if %{use_systemd} 415 473 %post daemon 416 %systemd_post git .service474 %systemd_post git@.service 417 475 418 476 %preun daemon 419 %systemd_preun git .service477 %systemd_preun git@.service 420 478 421 479 %postun daemon 422 %systemd_postun_with_restart git.service 423 %endif 424 425 %files -f bin-man-doc-files 426 %defattr(-,root,root) 480 %systemd_postun_with_restart git@.service 481 %endif 482 483 %files -f bin-man-doc-git-files 484 %defattr(-,root,root) 485 %if 0 486 %{elispdir} 487 %{_emacs_sitestartdir}/git-init.el 488 %endif 489 %{_datadir}/git-core/contrib/hooks/update-paranoid 490 %{_datadir}/git-core/contrib/hooks/setgitperms.perl 491 #%{_datadir}/git-core/* 492 #%doc Documentation/*.txt 493 #%{!?_without_docs: %doc Documentation/*.html} 494 #%{!?_without_docs: %doc Documentation/howto/* Documentation/technical/*} 495 496 %files core -f bin-files-core 497 %defattr(-,root,root) 498 %{!?_licensedir:%global license %doc} 499 %license COPYING 500 # exlude is best way here because of troubels with symlinks inside git-core/ 501 %exclude %{_datadir}/git-core/contrib/hooks/update-paranoid 502 %exclude %{_datadir}/git-core/contrib/hooks/setgitperms.perl 503 %{bashcomproot} 427 504 %{_datadir}/git-core/ 428 %doc README COPYING Documentation/*.txt Documentation/RelNotes contrib/ 505 506 %if %{use_prebuilt_docs} || ! 0%{?_without_docs} 507 %files core-doc -f man-doc-files-core 508 %else 509 %files core-doc 510 %endif 511 %defattr(-,root,root) 512 %doc README.md Documentation/*.txt Documentation/RelNotes contrib/ 429 513 %{!?_without_docs: %doc Documentation/*.html Documentation/docbook-xsl.css} 430 514 %{!?_without_docs: %doc Documentation/howto Documentation/technical} 431 %{_sysconfdir}/bash_completion.d 432 433 %files bzr 434 %defattr(-,root,root) 435 %{gitcoredir}/git-remote-bzr 436 437 %files hg 438 %defattr(-,root,root) 439 %{gitcoredir}/git-remote-hg 515 %if ! %{use_prebuilt_docs} 516 %{!?_without_docs: %doc contrib/subtree/git-subtree.html} 517 %endif 440 518 441 519 %files p4 … … 457 535 %defattr(-,root,root) 458 536 %doc Documentation/*git-cvs*.txt 537 %if "%{gitcoredir}" != "%{_bindir}" 459 538 %{_bindir}/git-cvsserver 539 %endif 460 540 %{gitcoredir}/*cvs* 461 541 %{!?_without_docs: %{_mandir}/man1/*cvs*.1*} … … 521 601 %if %{use_systemd} 522 602 %{_unitdir}/git.socket 523 %{_unitdir}/git .service603 %{_unitdir}/git@.service 524 604 %else 525 605 %if 0 … … 544 624 # No files for you! 545 625 546 %files debug547 %defattr(-,root,root)548 %{_bindir}/*.dbg549 %{gitcoredir}/*.dbg550 551 626 %changelog 627 * Tue Dec 13 2016 Dmitriy Kuminov <coding@dmik.org> 2.11.0-1 628 - Update git to version 2.11.0. 629 - Increase stack size to 8 MB to fix crashes when cloning huge repos. 630 - Link against LIBCx 0.4 (this brings EXCEPTQ TRP report generator). 631 - Rebuild against LIBC 0.6.6 and GCC 4.9.2. 632 - Enable %lang definitions. 633 552 634 * Wed Sep 10 2014 yd 553 635 - added debug package with symbolic info for exceptq.
Note:
See TracChangeset
for help on using the changeset viewer.