1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
10 groups = Development/Tools
11 url = http://git-scm.com/
13 summary = Fast Version Control System.
16 Git is a fast, scalable, distributed revision control system with an
17 unusually rich command set that provides both high-level operations
18 and full access to internals.
21 source_dl = https://www.kernel.org/pub/software/scm/git/
30 perl-ExtUtils-MakeMaker
37 echo "CFLAGS = %{CFLAGS}" > %{DIR_APP}/config.mak
38 echo "LDFLAGS = %{LDFLAGS}" > %{DIR_APP}/config.mak
39 echo "BLK_SHA1 = 1" >> %{DIR_APP}/config.mak
40 echo "NEEDS_CRYPTO_WITH_SSL = 1" >> %{DIR_APP}/config.mak
41 echo "NO_PYTHON = 1" >> %{DIR_APP}/config.mak
42 echo "NO_TCLTK = 1" >> %{DIR_APP}/config.mak
43 echo "ETC_GITCONFIG = /etc/gitconfig" >> %{DIR_APP}/config.mak
44 echo "DESTDIR = %{BUILDROOT}" >> %{DIR_APP}/config.mak
45 echo "INSTALL = install -p" >> %{DIR_APP}/config.mak
46 echo "GITWEB_PROJECTROOT = /var/lib/git" >> %{DIR_APP}/config.mak
47 echo "htmldir = /usr/share/doc/%{thisapp}" >> %{DIR_APP}/config.mak
48 echo "prefix = /usr" >> %{DIR_APP}/config.mak
49 echo "gitwebdir = /var/www/git" >> %{DIR_APP}/config.mak
50 echo "gitexecdir = lib/git-core" >> %{DIR_APP}/config.mak
52 # Remove shebang from bash-completion script.
53 sed -i '/^#!bash/,+1 d' contrib/completion/git-completion.bash
57 make %{PARALLELISMFLAGS}
60 make_install_targets += INSTALLDIRS=vendor
64 make install-doc DESTDIR=%{BUILDROOT}
66 # Install bash completion file.
67 mkdir -pv %{BUILDROOT}%{sysconfdir}/bash_completion.d
68 install -v -m 644 contrib/completion/git-completion.bash \
69 %{BUILDROOT}%{sysconfdir}/bash_completion.d/git
71 # Create folder for git-daemon.
72 mkdir -pv %{BUILDROOT}%{sharedstatedir}/git
74 # Create folder for gitweb.
75 mkdir -pv %{BUILDROOT}%{sysconfdir}/httpd/conf.d
77 # Install config files for gitweb.
78 install -pm 0664 %{DIR_SOURCE}/gitweb.conf \
79 %{BUILDROOT}%{sysconfdir}/gitweb.conf
81 install -pm 0644 %{DIR_SOURCE}/git.conf.httpd \
82 %{BUILDROOT}%{sysconfdir}/httpd/conf.d/git.conf
87 # Define %{gitcoredir} to have a more handy name.
88 gitcoredir = %{prefix}/lib/git-core
103 package %{name}-daemon
104 summary = Git protocol daemon.
106 The git daemon for supporting git:// access to git repositories.
114 %{gitcoredir}/git-daemon
115 %{mandir}/man1/git-daemon*
116 %{sharedstatedir}/git
117 %{unitdir}/git@.service
118 %{unitdir}/git.socket
122 systemctl daemon-reload >/dev/null 2>&1 || :
126 systemctl --no-reload disable git.socket >/dev/null 2>&1 || :
127 systemctl stop git.socket >/dev/null 2>&1 || :
128 systemctl stop git@.service >/dev/null 2>&1 || :
132 systemctl daemon-reload >/dev/null 2>&1 || :
136 systemctl daemon-reload >/dev/null 2>&1 || :
137 systemctl try-restart git.socket >/dev/null 2>&1 || :
141 package %{name}-gitweb
144 summary = Simple web interface to git repositories.
146 Simple web interface to track changes in git repositories
154 %{sysconfdir}/gitweb.conf
155 %{sysconfdir}/httpd/conf.d/git.conf
159 %{sysconfdir}/gitweb.conf
160 %{sysconfdir}/httpd/conf.d/git.conf
161 %{mandir}/man1/gitweb*
162 %{mandir}/man5/gitweb*
163 %{localstatedir}/www/git
168 summary = Git tools for importing Subversion repositories.
169 description = %{summary}
183 summary = Git tools for importing CVS repositories.
184 description = %{summary}
191 %{bindir}/git-cvsserver
201 summary = Git tools for working with Perforce depots.
202 description = %{summary}
210 %{gitcoredir}mergetools/p4merge
215 package %{name}-email
216 summary = Git tools for sending emails.
217 description = %{summary}
227 %{gitcoredir}/git-send-email
228 %{mandir}/man1/git-send-email*
235 summary = Perl interface to Git.
236 description = %{summary}
245 %{perl_vendorlib}/*.pm
246 %{perl_vendorlib}/Git/*.pm
253 summary = Perl interface to Git::SVN.
254 description = %{summary}
261 %{mandir}/man3/Git::SVN*
262 %{perl_vendorlib}/Git/SVN*.pm
263 %{perl_vendorlib}/Git/SVN/
267 package %{name}-debuginfo