[921] | 1 | # Note: this .spec is borrowed from http://pkgs.fedoraproject.org/cgit/rpms/git.git
|
---|
[457] | 2 |
|
---|
| 3 | # Pass --without docs to rpmbuild if you don't want the documentation (force it for now)
|
---|
[208] | 4 | %define _without_docs 1
|
---|
| 5 |
|
---|
[457] | 6 | %global gitcoredir %{_libexecdir}/git-core
|
---|
[921] | 7 | %global noarch_sub 1
|
---|
[457] | 8 | %global libcurl_devel libcurl-devel
|
---|
| 9 | %global docbook_suppress_sp 0
|
---|
| 10 | %global enable_ipv6 0
|
---|
[921] | 11 | %global use_prebuilt_docs 0
|
---|
[208] | 12 |
|
---|
[921] | 13 | %global bashcompdir %{_sysconfdir}/bash_completion.d
|
---|
| 14 | %global bashcomproot %{bashcompdir}
|
---|
[457] | 15 | %global use_systemd 0
|
---|
| 16 |
|
---|
[1556] | 17 | # only used for thew os/2 build, as we lack some components
|
---|
| 18 | %global remove_nonworking 1
|
---|
| 19 |
|
---|
[208] | 20 | Name: git
|
---|
[921] | 21 | Version: 2.11.0
|
---|
[1556] | 22 | Release: 4%{?dist}
|
---|
[208] | 23 | Summary: Fast Version Control System
|
---|
| 24 | License: GPLv2
|
---|
| 25 | Group: Development/Tools
|
---|
[921] | 26 | URL: https://git-scm.com/
|
---|
[208] | 27 |
|
---|
[1477] | 28 | %scm_source svn http://svn.netlabs.org/repos/ports/git/trunk 2284
|
---|
[208] | 29 |
|
---|
| 30 | BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
---|
| 31 |
|
---|
[1477] | 32 | # Need newer kLIBC due to CLOEXEC fix
|
---|
| 33 | Requires: libc >= 0.6.6-38
|
---|
| 34 |
|
---|
[921] | 35 | %if ! %{use_prebuilt_docs} && ! 0%{?_without_docs}
|
---|
[457] | 36 | BuildRequires: asciidoc >= 8.4.1
|
---|
| 37 | BuildRequires: xmlto
|
---|
[208] | 38 | %endif
|
---|
[457] | 39 | #BuildRequires: emacs
|
---|
| 40 | BuildRequires: expat-devel
|
---|
[1556] | 41 | BuildRequires: findutils
|
---|
[1477] | 42 | BuildRequires: gettext-devel
|
---|
[921] | 43 | BuildRequires: %{libcurl_devel}
|
---|
[457] | 44 | #BuildRequires: pcre-devel
|
---|
[921] | 45 | #BuildRequires: perl-generators
|
---|
| 46 | #BuildRequires: perl(Test)
|
---|
[208] | 47 | BuildRequires: openssl-devel
|
---|
| 48 | BuildRequires: zlib-devel >= 1.2
|
---|
[921] | 49 | %if %{use_systemd}
|
---|
| 50 | # For macros
|
---|
| 51 | BuildRequires: systemd
|
---|
| 52 | %endif
|
---|
[208] | 53 |
|
---|
[921] | 54 | Requires: git-core = %{version}-%{release}
|
---|
| 55 | Requires: git-core-doc = %{version}-%{release}
|
---|
[1556] | 56 | Requires: perl(Error)
|
---|
[921] | 57 | %if ! %{defined perl_bootstrap}
|
---|
[1088] | 58 | # TODO Doesn't exist on OS/2 yet.
|
---|
[457] | 59 | #Requires: perl(Term::ReadKey)
|
---|
[921] | 60 | %endif
|
---|
[457] | 61 | Requires: perl-Git = %{version}-%{release}
|
---|
[208] | 62 |
|
---|
[457] | 63 | # Obsolete git-arch
|
---|
| 64 | Obsoletes: git-arch < %{version}-%{release}
|
---|
| 65 |
|
---|
[208] | 66 | %description
|
---|
| 67 | Git is a fast, scalable, distributed revision control system with an
|
---|
| 68 | unusually rich command set that provides both high-level operations
|
---|
| 69 | and full access to internals.
|
---|
| 70 |
|
---|
[921] | 71 | The git rpm installs common set of tools which are usually using with
|
---|
| 72 | small amount of dependencies. To install all git packages, including
|
---|
| 73 | tools for integrating with other SCMs, install the git-all meta-package.
|
---|
[208] | 74 |
|
---|
| 75 | %package all
|
---|
| 76 | Summary: Meta-package to pull in all git tools
|
---|
| 77 | Group: Development/Tools
|
---|
[921] | 78 | %if %{noarch_sub}
|
---|
[208] | 79 | BuildArch: noarch
|
---|
[921] | 80 | %endif
|
---|
[208] | 81 | Requires: git = %{version}-%{release}
|
---|
[1556] | 82 | %if ! %{remove_nonworking}
|
---|
[208] | 83 | Requires: git-cvs = %{version}-%{release}
|
---|
| 84 | Requires: git-email = %{version}-%{release}
|
---|
[921] | 85 | Requires: git-gui = %{version}-%{release}
|
---|
[457] | 86 | Requires: git-svn = %{version}-%{release}
|
---|
[1556] | 87 | %endif
|
---|
[457] | 88 | Requires: git-p4 = %{version}-%{release}
|
---|
[1556] | 89 | %if ! %{remove_nonworking}
|
---|
[921] | 90 | Requires: gitk = %{version}-%{release}
|
---|
[1556] | 91 | %endif
|
---|
[208] | 92 | Requires: perl-Git = %{version}-%{release}
|
---|
[921] | 93 | %if ! %{defined perl_bootstrap}
|
---|
[1088] | 94 | # TODO Doesn't exist on OS/2 yet.
|
---|
[921] | 95 | #Requires: perl(Term::ReadKey)
|
---|
| 96 | %endif
|
---|
[457] | 97 | #Requires: emacs-git = %{version}-%{release}
|
---|
[208] | 98 | Obsoletes: git <= 1.5.4.3
|
---|
| 99 |
|
---|
| 100 | %description all
|
---|
| 101 | Git is a fast, scalable, distributed revision control system with an
|
---|
| 102 | unusually rich command set that provides both high-level operations
|
---|
| 103 | and full access to internals.
|
---|
| 104 |
|
---|
| 105 | This is a dummy package which brings in all subpackages.
|
---|
| 106 |
|
---|
[921] | 107 | %package core
|
---|
| 108 | Summary: Core package of git with minimal funcionality
|
---|
[457] | 109 | Group: Development/Tools
|
---|
[921] | 110 | Requires: less
|
---|
| 111 | #Requires: openssh-clients
|
---|
| 112 | #Requires: rsync
|
---|
| 113 | Requires: zlib >= 1.2
|
---|
| 114 | %description core
|
---|
| 115 | Git is a fast, scalable, distributed revision control system with an
|
---|
| 116 | unusually rich command set that provides both high-level operations
|
---|
| 117 | and full access to internals.
|
---|
[457] | 118 |
|
---|
[921] | 119 | The git-core rpm installs really the core tools with minimal
|
---|
| 120 | dependencies. Install git package for common set of tools.
|
---|
| 121 | To install all git packages, including tools for integrating with
|
---|
| 122 | other SCMs, install the git-all meta-package.
|
---|
[457] | 123 |
|
---|
[921] | 124 | %package core-doc
|
---|
| 125 | Summary: Documentation files for git-core
|
---|
| 126 | Group: Development/Tools
|
---|
| 127 | Requires: git-core = %{version}-%{release}
|
---|
| 128 |
|
---|
| 129 | %description core-doc
|
---|
| 130 | Documentation files for git-core package including man pages.
|
---|
| 131 |
|
---|
[208] | 132 | %package daemon
|
---|
| 133 | Summary: Git protocol dÊmon
|
---|
| 134 | Group: Development/Tools
|
---|
[209] | 135 | Requires: git = %{version}-%{release}
|
---|
[921] | 136 | %if %{use_systemd}
|
---|
| 137 | Requires: systemd
|
---|
| 138 | Requires(post): systemd
|
---|
| 139 | Requires(preun): systemd
|
---|
| 140 | Requires(postun): systemd
|
---|
| 141 | %else
|
---|
[209] | 142 | #Requires: xinetd
|
---|
[921] | 143 | %endif
|
---|
[208] | 144 | %description daemon
|
---|
| 145 | The git dÊmon for supporting git:// access to git repositories
|
---|
| 146 |
|
---|
[1556] | 147 | %if ! %{remove_nonworking}
|
---|
[208] | 148 | %package -n gitweb
|
---|
| 149 | Summary: Simple web interface to git repositories
|
---|
| 150 | Group: Development/Tools
|
---|
[921] | 151 | %if %{noarch_sub}
|
---|
[208] | 152 | BuildArch: noarch
|
---|
[921] | 153 | %endif
|
---|
[208] | 154 | Requires: git = %{version}-%{release}
|
---|
| 155 |
|
---|
| 156 | %description -n gitweb
|
---|
| 157 | Simple web interface to track changes in git repositories
|
---|
[457] | 158 | %endif
|
---|
[208] | 159 |
|
---|
[457] | 160 | %package p4
|
---|
| 161 | Summary: Git tools for working with Perforce depots
|
---|
| 162 | Group: Development/Tools
|
---|
[921] | 163 | %if %{noarch_sub}
|
---|
[457] | 164 | BuildArch: noarch
|
---|
[921] | 165 | %endif
|
---|
[457] | 166 | BuildRequires: python
|
---|
| 167 | Requires: git = %{version}-%{release}
|
---|
| 168 | %description p4
|
---|
| 169 | %{summary}.
|
---|
| 170 |
|
---|
[1556] | 171 | %if ! %{remove_nonworking}
|
---|
[208] | 172 | %package svn
|
---|
| 173 | Summary: Git tools for importing Subversion repositories
|
---|
| 174 | Group: Development/Tools
|
---|
[921] | 175 | Requires: git = %{version}-%{release}, subversion
|
---|
| 176 | Requires: perl(Digest::MD5)
|
---|
| 177 | %if ! %{defined perl_bootstrap}
|
---|
[1088] | 178 | # TODO Doesn't exist on OS/2 yet.
|
---|
[457] | 179 | #Requires: perl(Term::ReadKey)
|
---|
[921] | 180 | %endif
|
---|
[208] | 181 | %description svn
|
---|
| 182 | Git tools for importing Subversion repositories.
|
---|
| 183 |
|
---|
| 184 | %package cvs
|
---|
| 185 | Summary: Git tools for importing CVS repositories
|
---|
| 186 | Group: Development/Tools
|
---|
[921] | 187 | %if %{noarch_sub}
|
---|
[208] | 188 | BuildArch: noarch
|
---|
[921] | 189 | %endif
|
---|
[208] | 190 | Requires: git = %{version}-%{release}, cvs
|
---|
| 191 | Requires: cvsps
|
---|
[921] | 192 | Requires: perl(DBD::SQLite)
|
---|
[208] | 193 | %description cvs
|
---|
| 194 | Git tools for importing CVS repositories.
|
---|
| 195 |
|
---|
| 196 | %package email
|
---|
| 197 | Summary: Git tools for sending email
|
---|
| 198 | Group: Development/Tools
|
---|
[921] | 199 | %if %{noarch_sub}
|
---|
[208] | 200 | BuildArch: noarch
|
---|
[921] | 201 | %endif
|
---|
[208] | 202 | Requires: git = %{version}-%{release}, perl-Git = %{version}-%{release}
|
---|
| 203 | Requires: perl(Authen::SASL)
|
---|
| 204 | Requires: perl(Net::SMTP::SSL)
|
---|
| 205 | %description email
|
---|
| 206 | Git tools for sending email.
|
---|
[1556] | 207 | %endif
|
---|
[208] | 208 |
|
---|
[1556] | 209 | %if ! %{remove_nonworking}
|
---|
[457] | 210 |
|
---|
[208] | 211 | %package gui
|
---|
| 212 | Summary: Git GUI tool
|
---|
| 213 | Group: Development/Tools
|
---|
[921] | 214 | %if %{noarch_sub}
|
---|
[208] | 215 | BuildArch: noarch
|
---|
[921] | 216 | %endif
|
---|
[208] | 217 | Requires: git = %{version}-%{release}, tk >= 8.4
|
---|
| 218 | Requires: gitk = %{version}-%{release}
|
---|
| 219 | %description gui
|
---|
| 220 | Git GUI tool.
|
---|
| 221 |
|
---|
| 222 | %package -n gitk
|
---|
| 223 | Summary: Git revision tree visualiser
|
---|
| 224 | Group: Development/Tools
|
---|
[921] | 225 | %if %{noarch_sub}
|
---|
[208] | 226 | BuildArch: noarch
|
---|
[921] | 227 | %endif
|
---|
[208] | 228 | Requires: git = %{version}-%{release}, tk >= 8.4
|
---|
| 229 | %description -n gitk
|
---|
| 230 | Git revision tree visualiser.
|
---|
| 231 |
|
---|
[457] | 232 | %endif
|
---|
| 233 |
|
---|
[208] | 234 | %package -n perl-Git
|
---|
| 235 | Summary: Perl interface to Git
|
---|
| 236 | Group: Development/Libraries
|
---|
[921] | 237 | %if %{noarch_sub}
|
---|
[208] | 238 | BuildArch: noarch
|
---|
[921] | 239 | %endif
|
---|
[208] | 240 | Requires: git = %{version}-%{release}
|
---|
[457] | 241 | #BuildRequires: perl(Error)
|
---|
| 242 | BuildRequires: perl(ExtUtils::MakeMaker)
|
---|
| 243 | #Requires: perl(Error)
|
---|
| 244 | #Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
---|
[208] | 245 |
|
---|
| 246 | %description -n perl-Git
|
---|
| 247 | Perl interface to Git.
|
---|
| 248 |
|
---|
[457] | 249 | %package -n perl-Git-SVN
|
---|
| 250 | Summary: Perl interface to Git::SVN
|
---|
| 251 | Group: Development/Libraries
|
---|
[921] | 252 | %if %{noarch_sub}
|
---|
[457] | 253 | BuildArch: noarch
|
---|
[921] | 254 | %endif
|
---|
[457] | 255 | Requires: git = %{version}-%{release}
|
---|
| 256 | Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
---|
| 257 |
|
---|
| 258 | %description -n perl-Git-SVN
|
---|
| 259 | Perl interface to Git.
|
---|
| 260 |
|
---|
[1556] | 261 | %if ! %{remove_nonworking}
|
---|
[457] | 262 |
|
---|
[208] | 263 | %package -n emacs-git
|
---|
| 264 | Summary: Git version control system support for Emacs
|
---|
| 265 | Group: Applications/Editors
|
---|
[457] | 266 | Requires: git = %{version}-%{release}
|
---|
[921] | 267 | %if %{noarch_sub}
|
---|
[208] | 268 | BuildArch: noarch
|
---|
[457] | 269 | Requires: emacs(bin) >= %{_emacs_version}
|
---|
[921] | 270 | %else
|
---|
| 271 | Requires: emacs-common
|
---|
| 272 | %endif
|
---|
[208] | 273 |
|
---|
| 274 | %description -n emacs-git
|
---|
| 275 | %{summary}.
|
---|
[457] | 276 |
|
---|
| 277 | %package -n emacs-git-el
|
---|
| 278 | Summary: Elisp source files for git version control system support for Emacs
|
---|
| 279 | Group: Applications/Editors
|
---|
[921] | 280 | %if %{noarch_sub}
|
---|
[457] | 281 | BuildArch: noarch
|
---|
[921] | 282 | %endif
|
---|
[457] | 283 | Requires: emacs-git = %{version}-%{release}
|
---|
| 284 |
|
---|
| 285 | %description -n emacs-git-el
|
---|
| 286 | %{summary}.
|
---|
| 287 |
|
---|
[208] | 288 | %endif
|
---|
| 289 |
|
---|
[921] | 290 | %debug_package
|
---|
[457] | 291 |
|
---|
[208] | 292 | %prep
|
---|
[1088] | 293 | %scm_setup
|
---|
[208] | 294 |
|
---|
| 295 | # Use these same options for every invocation of 'make'.
|
---|
| 296 | # Otherwise it will rebuild in %%install due to flags changes.
|
---|
| 297 | cat << \EOF > config.mak
|
---|
| 298 | V = 1
|
---|
| 299 | CFLAGS = %{optflags}
|
---|
[921] | 300 | #LDFLAGS = %{__global_ldflags}
|
---|
[457] | 301 | #BLK_SHA1 = 1
|
---|
| 302 | #NEEDS_CRYPTO_WITH_SSL = 1
|
---|
| 303 | #USE_LIBPCRE = 1
|
---|
[208] | 304 | ETC_GITCONFIG = %{_sysconfdir}/gitconfig
|
---|
| 305 | DESTDIR = %{buildroot}
|
---|
[921] | 306 | INSTALL = %{_bindir}/install -p
|
---|
[208] | 307 | GITWEB_PROJECTROOT = %{_var}/lib/git
|
---|
[457] | 308 | GNU_ROFF = 1
|
---|
| 309 | htmldir = %{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}}
|
---|
[208] | 310 | prefix = %{_prefix}
|
---|
[457] | 311 | gitwebdir = %{_var}/www/git
|
---|
[208] | 312 | EOF
|
---|
| 313 |
|
---|
[457] | 314 | %if "%{gitcoredir}" == "%{_bindir}"
|
---|
| 315 | echo gitexecdir = %{_bindir} >> config.mak
|
---|
[208] | 316 | %endif
|
---|
| 317 |
|
---|
[457] | 318 | %if %{docbook_suppress_sp}
|
---|
| 319 | # This is needed for 1.69.1-1.71.0
|
---|
| 320 | echo DOCBOOK_SUPPRESS_SP = 1 >> config.mak
|
---|
[208] | 321 | %endif
|
---|
| 322 |
|
---|
[1088] | 323 | # Filter bogus perl requires
|
---|
| 324 | # packed-refs comes from a comment in contrib/hooks/update-paranoid
|
---|
| 325 | %{?perl_default_filter}
|
---|
| 326 | %global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(packed-refs\\)
|
---|
| 327 | %if ! %{defined perl_bootstrap}
|
---|
| 328 | %global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(Term::ReadKey\\)
|
---|
| 329 | %endif
|
---|
| 330 |
|
---|
[208] | 331 | %build
|
---|
[457] | 332 | make %{?_smp_mflags} all
|
---|
[921] | 333 | %if ! %{use_prebuilt_docs} && ! 0%{?_without_docs}
|
---|
| 334 | make %{?_smp_mflags} doc
|
---|
[457] | 335 | %endif
|
---|
[208] | 336 |
|
---|
[1556] | 337 | %if ! %{remove_nonworking}
|
---|
[208] | 338 | make -C contrib/emacs
|
---|
| 339 | %endif
|
---|
| 340 |
|
---|
[457] | 341 | make -C contrib/subtree/
|
---|
| 342 |
|
---|
[208] | 343 | # Remove shebang from bash-completion script
|
---|
| 344 | sed -i '/^#!bash/,+1 d' contrib/completion/git-completion.bash
|
---|
| 345 |
|
---|
| 346 | %install
|
---|
| 347 | rm -rf %{buildroot}
|
---|
[921] | 348 | make %{?_smp_mflags} INSTALLDIRS=vendor install
|
---|
| 349 | %if ! %{use_prebuilt_docs} && ! 0%{?_without_docs}
|
---|
| 350 | make %{?_smp_mflags} INSTALLDIRS=vendor install-doc
|
---|
| 351 | %else
|
---|
| 352 | %if %{use_prebuilt_docs}
|
---|
| 353 | cp -a prebuilt_docs/man/* %{buildroot}%{_mandir}
|
---|
| 354 | cp -a prebuilt_docs/html/* Documentation/
|
---|
[457] | 355 | %endif
|
---|
[921] | 356 | %endif
|
---|
[208] | 357 |
|
---|
[1556] | 358 | %if ! %{remove_nonworking}
|
---|
[457] | 359 |
|
---|
| 360 | %global elispdir %{_emacs_sitelispdir}/git
|
---|
[208] | 361 | make -C contrib/emacs install \
|
---|
[457] | 362 | emacsdir=%{buildroot}%{elispdir}
|
---|
| 363 | for elc in %{buildroot}%{elispdir}/*.elc ; do
|
---|
[208] | 364 | install -pm 644 contrib/emacs/$(basename $elc .elc).el \
|
---|
[457] | 365 | %{buildroot}%{elispdir}
|
---|
[208] | 366 | done
|
---|
[921] | 367 | install -Dpm 644 %{SOURCE10} \
|
---|
[457] | 368 | %{buildroot}%{_emacs_sitestartdir}/git-init.el
|
---|
| 369 |
|
---|
[208] | 370 | %endif
|
---|
| 371 |
|
---|
[457] | 372 | make -C contrib/subtree install
|
---|
[921] | 373 | %if ! %{use_prebuilt_docs} && ! 0%{?_without_docs}
|
---|
[457] | 374 | make -C contrib/subtree install-doc
|
---|
| 375 | %endif
|
---|
[921] | 376 | # it's ugly hack, but this file don't need to be copied to this directory
|
---|
| 377 | # it's already part of git-core-doc and it's alone here
|
---|
| 378 | rm -f %{buildroot}%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}}/git-subtree.html
|
---|
[208] | 379 |
|
---|
[1556] | 380 | %if ! %{remove_nonworking}
|
---|
[457] | 381 | mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d
|
---|
[921] | 382 | install -pm 0644 %{SOURCE12} %{buildroot}%{_sysconfdir}/httpd/conf.d/git.conf
|
---|
[457] | 383 | sed "s|@PROJECTROOT@|%{_var}/lib/git|g" \
|
---|
[921] | 384 | %{SOURCE14} > %{buildroot}%{_sysconfdir}/gitweb.conf
|
---|
[457] | 385 | %else
|
---|
| 386 | rm -rf %{buildroot}%{_var}/www/git/
|
---|
| 387 | %endif
|
---|
| 388 |
|
---|
[1556] | 389 | #remove svn, cvs and some more non working stuff
|
---|
| 390 | %if %{remove_nonworking}
|
---|
| 391 | rm -rf %{buildroot}%{_bindir}/git-cvsserver
|
---|
| 392 | rm -rf %{buildroot}%{gitcoredir}/git-cvsexportcommit
|
---|
| 393 | rm -rf %{buildroot}%{gitcoredir}/git-cvsimport
|
---|
| 394 | rm -rf %{buildroot}%{gitcoredir}/git-cvsserver
|
---|
| 395 | rm -rf %{buildroot}%{gitcoredir}/git-remote-testsvn.exe
|
---|
| 396 | rm -rf %{buildroot}%{gitcoredir}/git-send-email
|
---|
| 397 | rm -rf %{buildroot}%{gitcoredir}/git-svn
|
---|
| 398 | %endif
|
---|
| 399 |
|
---|
[208] | 400 | find %{buildroot} -type f -name .packlist -exec rm -f {} ';'
|
---|
| 401 | find %{buildroot} -type f -name '*.bs' -empty -exec rm -f {} ';'
|
---|
| 402 | find %{buildroot} -type f -name perllocal.pod -exec rm -f {} ';'
|
---|
| 403 |
|
---|
[457] | 404 | # git-archimport is not supported
|
---|
[208] | 405 | find %{buildroot} Documentation -type f -name 'git-archimport*' -exec rm -f {} ';'
|
---|
| 406 |
|
---|
[457] | 407 | exclude_re="archimport|email|git-citool|git-cvs|git-daemon|git-gui|git-remote-bzr|git-remote-hg|gitk|p4|svn"
|
---|
[1556] | 408 | (find %{buildroot}%{_bindir} %{buildroot}%{_libexecdir} -type f -o -type l | grep -vE "$exclude_re" | sed -e s@^%{buildroot}@@) > bin-man-doc-files
|
---|
[457] | 409 | (find %{buildroot}%{_bindir} %{buildroot}%{_libexecdir} -mindepth 1 -type d | grep -vE "$exclude_re" | sed -e 's@^%{buildroot}@%dir @') >> bin-man-doc-files
|
---|
| 410 | (find %{buildroot}%{perl_vendorlib} -type f | sed -e s@^%{buildroot}@@) > perl-git-files
|
---|
| 411 | (find %{buildroot}%{perl_vendorlib} -mindepth 1 -type d | sed -e 's@^%{buildroot}@%dir @') >> perl-git-files
|
---|
| 412 | # Split out Git::SVN files
|
---|
| 413 | grep Git/SVN perl-git-files > perl-git-svn-files
|
---|
| 414 | sed -i "/Git\/SVN/ d" perl-git-files
|
---|
[208] | 415 | %if %{!?_without_docs:1}0
|
---|
[457] | 416 | (find %{buildroot}%{_mandir} -type f | grep -vE "$exclude_re|Git" | sed -e s@^%{buildroot}@@ -e 's/$/*/' ) >> bin-man-doc-files
|
---|
[208] | 417 | %else
|
---|
| 418 | rm -rf %{buildroot}%{_mandir}
|
---|
| 419 | %endif
|
---|
| 420 |
|
---|
| 421 | mkdir -p %{buildroot}%{_var}/lib/git
|
---|
[457] | 422 | %if %{use_systemd}
|
---|
| 423 | mkdir -p %{buildroot}%{_unitdir}
|
---|
[921] | 424 | cp -a %{SOURCE15} %{SOURCE16} %{buildroot}%{_unitdir}
|
---|
[457] | 425 | %else
|
---|
[921] | 426 | %if 0
|
---|
[208] | 427 | mkdir -p %{buildroot}%{_sysconfdir}/xinetd.d
|
---|
| 428 | # On EL <= 5, xinetd does not enable IPv6 by default
|
---|
| 429 | enable_ipv6=" # xinetd does not enable IPv6 by default
|
---|
| 430 | flags = IPv6"
|
---|
| 431 | perl -p \
|
---|
| 432 | -e "s|\@GITCOREDIR\@|%{gitcoredir}|g;" \
|
---|
| 433 | -e "s|\@BASE_PATH\@|%{_var}/lib/git|g;" \
|
---|
[457] | 434 | %if %{enable_ipv6}
|
---|
[208] | 435 | -e "s|^}|$enable_ipv6\n$&|;" \
|
---|
| 436 | %endif
|
---|
[921] | 437 | %{SOURCE11} > %{buildroot}%{_sysconfdir}/xinetd.d/git
|
---|
[457] | 438 | %endif
|
---|
| 439 | %endif
|
---|
[208] | 440 |
|
---|
[457] | 441 | # Setup bash completion
|
---|
[921] | 442 | install -Dpm 644 contrib/completion/git-completion.bash %{buildroot}%{bashcompdir}/git
|
---|
| 443 | ln -s git %{buildroot}%{bashcompdir}/gitk
|
---|
[208] | 444 |
|
---|
[457] | 445 | # Install tcsh completion
|
---|
| 446 | mkdir -p %{buildroot}%{_datadir}/git-core/contrib/completion
|
---|
| 447 | install -pm 644 contrib/completion/git-completion.tcsh \
|
---|
| 448 | %{buildroot}%{_datadir}/git-core/contrib/completion/
|
---|
| 449 |
|
---|
[208] | 450 | # Move contrib/hooks out of %%docdir and make them executable
|
---|
[457] | 451 | mkdir -p %{buildroot}%{_datadir}/git-core/contrib
|
---|
| 452 | mv contrib/hooks %{buildroot}%{_datadir}/git-core/contrib
|
---|
| 453 | chmod +x %{buildroot}%{_datadir}/git-core/contrib/hooks/*
|
---|
[921] | 454 | ln -s %{buildroot}%{_datadir}/git-core/contrib/hooks contrib/
|
---|
[208] | 455 |
|
---|
[457] | 456 | # Install git-prompt.sh
|
---|
| 457 | mkdir -p %{buildroot}%{_datadir}/git-core/contrib/completion
|
---|
| 458 | install -pm 644 contrib/completion/git-prompt.sh \
|
---|
| 459 | %{buildroot}%{_datadir}/git-core/contrib/completion/
|
---|
[208] | 460 |
|
---|
[921] | 461 | %if 0
|
---|
| 462 | # install git-gui .desktop file
|
---|
| 463 | desktop-file-install \
|
---|
| 464 | %if %{desktop_vendor_tag}
|
---|
| 465 | --vendor fedora \
|
---|
| 466 | %endif
|
---|
| 467 | --dir=%{buildroot}%{_datadir}/applications %{SOURCE13}
|
---|
| 468 | %endif
|
---|
| 469 |
|
---|
[457] | 470 | # find translations
|
---|
| 471 | %find_lang %{name} %{name}.lang
|
---|
| 472 | cat %{name}.lang >> bin-man-doc-files
|
---|
| 473 |
|
---|
[208] | 474 | # quiet some rpmlint complaints
|
---|
| 475 | chmod -R g-w %{buildroot}
|
---|
| 476 | find %{buildroot} -name git-mergetool--lib | xargs chmod a-x
|
---|
[921] | 477 | # rm -f {Documentation/technical,contrib/emacs,contrib/credential/gnome-keyring}/.gitignore
|
---|
| 478 | # These files probably are not needed
|
---|
| 479 | find . -name .gitignore -delete
|
---|
[208] | 480 | chmod a-x Documentation/technical/api-index.sh
|
---|
| 481 | find contrib -type f | xargs chmod -x
|
---|
| 482 |
|
---|
[921] | 483 | # Split core files
|
---|
| 484 | not_core_re="git-(add--interactive|am|credential-netrc|difftool|instaweb|relink|request-pull|send-mail|submodule)|gitweb|prepare-commit-msg|pre-rebase"
|
---|
| 485 | grep -vE "$not_core_re|\/man\/" bin-man-doc-files > bin-files-core
|
---|
| 486 | %if %{use_prebuilt_docs} || ! 0%{?_without_docs}
|
---|
| 487 | grep -vE "$not_core_re" bin-man-doc-files | grep "\/man\/" > man-doc-files-core
|
---|
| 488 | %endif
|
---|
| 489 | grep -E "$not_core_re" bin-man-doc-files > bin-man-doc-git-files
|
---|
[208] | 490 |
|
---|
[921] | 491 |
|
---|
[208] | 492 | %clean
|
---|
| 493 | rm -rf %{buildroot}
|
---|
| 494 |
|
---|
[457] | 495 | %if %{use_systemd}
|
---|
| 496 | %post daemon
|
---|
[921] | 497 | %systemd_post git@.service
|
---|
[208] | 498 |
|
---|
[457] | 499 | %preun daemon
|
---|
[921] | 500 | %systemd_preun git@.service
|
---|
[457] | 501 |
|
---|
| 502 | %postun daemon
|
---|
[921] | 503 | %systemd_postun_with_restart git@.service
|
---|
[457] | 504 | %endif
|
---|
| 505 |
|
---|
[921] | 506 | %files -f bin-man-doc-git-files
|
---|
[208] | 507 | %defattr(-,root,root)
|
---|
[921] | 508 | %if 0
|
---|
| 509 | %{elispdir}
|
---|
| 510 | %{_emacs_sitestartdir}/git-init.el
|
---|
| 511 | %endif
|
---|
| 512 | %{_datadir}/git-core/contrib/hooks/update-paranoid
|
---|
| 513 | %{_datadir}/git-core/contrib/hooks/setgitperms.perl
|
---|
| 514 | #%{_datadir}/git-core/*
|
---|
| 515 | #%doc Documentation/*.txt
|
---|
| 516 | #%{!?_without_docs: %doc Documentation/*.html}
|
---|
| 517 | #%{!?_without_docs: %doc Documentation/howto/* Documentation/technical/*}
|
---|
[208] | 518 |
|
---|
[921] | 519 | %files core -f bin-files-core
|
---|
[457] | 520 | %defattr(-,root,root)
|
---|
[921] | 521 | %{!?_licensedir:%global license %doc}
|
---|
| 522 | %license COPYING
|
---|
| 523 | # exlude is best way here because of troubels with symlinks inside git-core/
|
---|
| 524 | %exclude %{_datadir}/git-core/contrib/hooks/update-paranoid
|
---|
| 525 | %exclude %{_datadir}/git-core/contrib/hooks/setgitperms.perl
|
---|
| 526 | %{bashcomproot}
|
---|
| 527 | %{_datadir}/git-core/
|
---|
[208] | 528 |
|
---|
[921] | 529 | %if %{use_prebuilt_docs} || ! 0%{?_without_docs}
|
---|
| 530 | %files core-doc -f man-doc-files-core
|
---|
| 531 | %else
|
---|
| 532 | %files core-doc
|
---|
| 533 | %endif
|
---|
[457] | 534 | %defattr(-,root,root)
|
---|
[921] | 535 | %doc README.md Documentation/*.txt Documentation/RelNotes contrib/
|
---|
| 536 | %{!?_without_docs: %doc Documentation/*.html Documentation/docbook-xsl.css}
|
---|
| 537 | %{!?_without_docs: %doc Documentation/howto Documentation/technical}
|
---|
| 538 | %if ! %{use_prebuilt_docs}
|
---|
| 539 | %{!?_without_docs: %doc contrib/subtree/git-subtree.html}
|
---|
| 540 | %endif
|
---|
[457] | 541 |
|
---|
| 542 | %files p4
|
---|
| 543 | %defattr(-,root,root)
|
---|
| 544 | %{gitcoredir}/*p4*
|
---|
| 545 | %{gitcoredir}/mergetools/p4merge
|
---|
| 546 | %doc Documentation/*p4*.txt
|
---|
| 547 | %{!?_without_docs: %{_mandir}/man1/*p4*.1*}
|
---|
| 548 | %{!?_without_docs: %doc Documentation/*p4*.html }
|
---|
| 549 |
|
---|
[1556] | 550 | %if ! %{remove_nonworking}
|
---|
[208] | 551 | %files svn
|
---|
| 552 | %defattr(-,root,root)
|
---|
| 553 | %{gitcoredir}/*svn*
|
---|
[457] | 554 | %doc Documentation/*svn*.txt
|
---|
[208] | 555 | %{!?_without_docs: %{_mandir}/man1/*svn*.1*}
|
---|
| 556 | %{!?_without_docs: %doc Documentation/*svn*.html }
|
---|
| 557 |
|
---|
| 558 | %files cvs
|
---|
| 559 | %defattr(-,root,root)
|
---|
[457] | 560 | %doc Documentation/*git-cvs*.txt
|
---|
[921] | 561 | %if "%{gitcoredir}" != "%{_bindir}"
|
---|
[208] | 562 | %{_bindir}/git-cvsserver
|
---|
[921] | 563 | %endif
|
---|
[208] | 564 | %{gitcoredir}/*cvs*
|
---|
| 565 | %{!?_without_docs: %{_mandir}/man1/*cvs*.1*}
|
---|
| 566 | %{!?_without_docs: %doc Documentation/*git-cvs*.html }
|
---|
| 567 |
|
---|
| 568 | %files email
|
---|
| 569 | %defattr(-,root,root)
|
---|
[457] | 570 | %doc Documentation/*email*.txt
|
---|
[208] | 571 | %{gitcoredir}/*email*
|
---|
| 572 | %{!?_without_docs: %{_mandir}/man1/*email*.1*}
|
---|
| 573 | %{!?_without_docs: %doc Documentation/*email*.html }
|
---|
| 574 |
|
---|
| 575 | %files gui
|
---|
| 576 | %defattr(-,root,root)
|
---|
[457] | 577 | %{gitcoredir}/git-gui*
|
---|
| 578 | %{gitcoredir}/git-citool
|
---|
| 579 | %{_datadir}/applications/*git-gui.desktop
|
---|
| 580 | %{_datadir}/git-gui/
|
---|
| 581 | %{!?_without_docs: %{_mandir}/man1/git-gui.1*}
|
---|
| 582 | %{!?_without_docs: %doc Documentation/git-gui.html}
|
---|
| 583 | %{!?_without_docs: %{_mandir}/man1/git-citool.1*}
|
---|
| 584 | %{!?_without_docs: %doc Documentation/git-citool.html}
|
---|
[208] | 585 |
|
---|
| 586 | %files -n gitk
|
---|
| 587 | %defattr(-,root,root)
|
---|
[457] | 588 | %doc Documentation/*gitk*.txt
|
---|
| 589 | %{_bindir}/*gitk*
|
---|
| 590 | %{_datadir}/gitk
|
---|
| 591 | %{!?_without_docs: %{_mandir}/man1/*gitk*.1*}
|
---|
| 592 | %{!?_without_docs: %doc Documentation/*gitk*.html }
|
---|
[208] | 593 |
|
---|
[457] | 594 | %endif
|
---|
| 595 |
|
---|
| 596 | %files -n perl-Git -f perl-git-files
|
---|
[208] | 597 | %defattr(-,root,root)
|
---|
[457] | 598 | %{!?_without_docs: %exclude %{_mandir}/man3/*Git*SVN*.3pm*}
|
---|
| 599 | %{!?_without_docs: %{_mandir}/man3/*Git*.3pm*}
|
---|
| 600 |
|
---|
| 601 | %files -n perl-Git-SVN -f perl-git-svn-files
|
---|
| 602 | %defattr(-,root,root)
|
---|
| 603 | %{!?_without_docs: %{_mandir}/man3/*Git*SVN*.3pm*}
|
---|
| 604 |
|
---|
[1556] | 605 | %if ! %{remove_nonworking}
|
---|
[457] | 606 |
|
---|
[208] | 607 | %files -n emacs-git
|
---|
| 608 | %defattr(-,root,root)
|
---|
| 609 | %doc contrib/emacs/README
|
---|
[457] | 610 | %dir %{elispdir}
|
---|
| 611 | %{elispdir}/*.elc
|
---|
| 612 | %{_emacs_sitestartdir}/git-init.el
|
---|
| 613 |
|
---|
| 614 | %files -n emacs-git-el
|
---|
| 615 | %defattr(-,root,root)
|
---|
| 616 | %{elispdir}/*.el
|
---|
| 617 |
|
---|
[208] | 618 | %endif
|
---|
| 619 |
|
---|
| 620 | %files daemon
|
---|
| 621 | %defattr(-,root,root)
|
---|
| 622 | %doc Documentation/*daemon*.txt
|
---|
[457] | 623 | %if %{use_systemd}
|
---|
| 624 | %{_unitdir}/git.socket
|
---|
[921] | 625 | %{_unitdir}/git@.service
|
---|
[457] | 626 | %else
|
---|
| 627 | %if 0
|
---|
[208] | 628 | %config(noreplace)%{_sysconfdir}/xinetd.d/git
|
---|
[457] | 629 | %endif
|
---|
| 630 | %endif
|
---|
| 631 | %{gitcoredir}/git-daemon*
|
---|
[1556] | 632 | %exclude %{gitcoredir}/*.dbg
|
---|
[208] | 633 | %{_var}/lib/git
|
---|
| 634 | %{!?_without_docs: %{_mandir}/man1/*daemon*.1*}
|
---|
| 635 | %{!?_without_docs: %doc Documentation/*daemon*.html}
|
---|
| 636 |
|
---|
[1556] | 637 | %if ! %{remove_nonworking}
|
---|
[208] | 638 | %files -n gitweb
|
---|
| 639 | %defattr(-,root,root)
|
---|
[457] | 640 | %doc gitweb/INSTALL gitweb/README
|
---|
| 641 | %config(noreplace)%{_sysconfdir}/gitweb.conf
|
---|
| 642 | %config(noreplace)%{_sysconfdir}/httpd/conf.d/git.conf
|
---|
[208] | 643 | %{_var}/www/git/
|
---|
[457] | 644 | %endif
|
---|
[208] | 645 |
|
---|
| 646 | %files all
|
---|
| 647 | # No files for you!
|
---|
| 648 |
|
---|
[921] | 649 | %changelog
|
---|
[1556] | 650 | * Mon Jan 14 2019 Silvan Scherrer <silvan.scherrer@aroa.ch> 2.11.0-4
|
---|
| 651 | - build with latest tools to overcome a dbg file creation issue (ticket #193)
|
---|
| 652 | - fix git-all rpm (rpm ticket #327)
|
---|
| 653 |
|
---|
[1477] | 654 | * Mon Jun 4 2018 Dmitriy Kuminov <coding@dmik.org> 2.11.0-3
|
---|
| 655 | - Make updated file locking fully work on OS/2 (no more chmod errors).
|
---|
| 656 | - Forbid inheriting O_CLOEXEC (e.g. temporary) files on OS/2.
|
---|
| 657 |
|
---|
[1088] | 658 | * Thu Apr 6 2017 Dmitriy Kuminov <coding@dmik.org> 2.11.0-2
|
---|
| 659 | - Make git add --interactive output use CRLFs on DOS-like platforms.
|
---|
| 660 | - Remove a lot of outdated OS/2-specific code.
|
---|
| 661 | - Make the .git directory truly hidden on OS/2.
|
---|
| 662 | - Enable mmap support on OS/2.
|
---|
| 663 | - Change vendor to bww bitwise works GmbH.
|
---|
| 664 |
|
---|
[921] | 665 | * Tue Dec 13 2016 Dmitriy Kuminov <coding@dmik.org> 2.11.0-1
|
---|
| 666 | - Update git to version 2.11.0.
|
---|
| 667 | - Increase stack size to 8 MB to fix crashes when cloning huge repos.
|
---|
| 668 | - Link against LIBCx 0.4 (this brings EXCEPTQ TRP report generator).
|
---|
| 669 | - Rebuild against LIBC 0.6.6 and GCC 4.9.2.
|
---|
| 670 | - Enable %lang definitions.
|
---|
[458] | 671 |
|
---|
| 672 | * Wed Sep 10 2014 yd
|
---|
| 673 | - added debug package with symbolic info for exceptq.
|
---|
| 674 |
|
---|
[457] | 675 | * Wed Sep 10 2014 Dmitriy Kuminov <coding@dmik.org> 2.0.0-1
|
---|
| 676 | - Update git to version 2.0.0.
|
---|
| 677 | - Fix cloning and pushing over HTTP(S).
|
---|
| 678 | - Remove many old unneeded patches to have less OS/2-dependent code.
|
---|
| 679 |
|
---|
[253] | 680 | * Sat Dec 17 2011 yd
|
---|
| 681 | - rebuild due to gcc 4.4.6 bug.
|
---|
| 682 |
|
---|
[247] | 683 | * Sun Nov 27 2011 yd
|
---|
| 684 | - use /@unixroot/usr/bin shell.
|
---|
| 685 |
|
---|
[213] | 686 | * Wed Sep 28 2011 yd
|
---|
| 687 | - fixed build patches.
|
---|
[218] | 688 | - fixed expat support.
|
---|
[213] | 689 |
|
---|
[212] | 690 | * Sat Sep 24 2011 yd
|
---|
| 691 | - symlink script files to exe, so execvp can find them.
|
---|
| 692 | - ignore CR while reading CRLF terminated text files.
|
---|
| 693 |
|
---|
| 694 | * Tue Sep 20 2011 yd
|
---|
| 695 | - disable broken_path_fix macro.
|
---|
| 696 |
|
---|
| 697 | * Mon Sep 19 2011 yd
|
---|
| 698 | - use bigger stack for threads; use socketpair instead of pipes.
|
---|