]>
Commit | Line | Data |
---|---|---|
e2c1801f | 1 | ############################################################################### |
802ea3af MT |
2 | # IPFire.org - An Open Source Firewall Solution # |
3 | # Copyright (C) - IPFire Development Team <info@ipfire.org> # | |
e2c1801f MT |
4 | ############################################################################### |
5 | ||
802ea3af | 6 | name = git |
2c696983 | 7 | version = 2.6.3 |
2b968a3f | 8 | release = 3 |
e2c1801f | 9 | |
802ea3af MT |
10 | groups = Development/Tools |
11 | url = http://git-scm.com/ | |
12 | license = GPLv2 | |
13 | summary = Fast Version Control System. | |
e2c1801f | 14 | |
802ea3af | 15 | description |
f50cc92e SS |
16 | Git is a fast, scalable, distributed revision control system with an |
17 | unusually rich command set that provides both high-level operations | |
e2c1801f | 18 | and full access to internals. |
802ea3af MT |
19 | end |
20 | ||
2c696983 | 21 | source_dl = https://www.kernel.org/pub/software/scm/git/ |
802ea3af MT |
22 | |
23 | build | |
24 | requires | |
f50cc92e | 25 | asciidoc |
802ea3af MT |
26 | expat-devel |
27 | gettext | |
28 | libcurl-devel | |
29 | openssl-devel | |
1f9bc2f0 | 30 | perl-ExtUtils-MakeMaker |
802ea3af MT |
31 | perl-devel |
32 | zlib-devel | |
f50cc92e | 33 | xmlto |
802ea3af | 34 | end |
e2c1801f | 35 | |
802ea3af MT |
36 | prepare_cmds |
37 | echo "CFLAGS = %{CFLAGS}" > %{DIR_APP}/config.mak | |
892dc940 | 38 | echo "LDFLAGS = %{LDFLAGS}" > %{DIR_APP}/config.mak |
802ea3af MT |
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 | |
a5248e72 MT |
51 | |
52 | # Remove shebang from bash-completion script. | |
53 | sed -i '/^#!bash/,+1 d' contrib/completion/git-completion.bash | |
802ea3af | 54 | end |
e2c1801f | 55 | |
802ea3af MT |
56 | build |
57 | make %{PARALLELISMFLAGS} | |
58 | end | |
e2c1801f | 59 | |
802ea3af | 60 | make_install_targets += INSTALLDIRS=vendor |
a5248e72 MT |
61 | |
62 | install_cmds | |
f50cc92e SS |
63 | # Install man pages. |
64 | make install-doc DESTDIR=%{BUILDROOT} | |
65 | ||
a5248e72 MT |
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 | |
9099585c SS |
70 | |
71 | # Create folder for git-daemon. | |
72 | mkdir -pv %{BUILDROOT}%{sharedstatedir}/git | |
73 | ||
74 | # Create folder for gitweb. | |
75 | mkdir -pv %{BUILDROOT}%{sysconfdir}/httpd/conf.d | |
76 | ||
77 | # Install config files for gitweb. | |
78 | install -pm 0664 %{DIR_SOURCE}/gitweb.conf \ | |
79 | %{BUILDROOT}%{sysconfdir}/gitweb.conf | |
80 | ||
81 | install -pm 0644 %{DIR_SOURCE}/git.conf.httpd \ | |
82 | %{BUILDROOT}%{sysconfdir}/httpd/conf.d/git.conf | |
a5248e72 | 83 | end |
802ea3af | 84 | end |
e2c1801f | 85 | |
802ea3af | 86 | packages |
9099585c SS |
87 | # Define %{gitcoredir} to have a more handy name. |
88 | gitcoredir = %{prefix}/lib/git-core | |
89 | ||
802ea3af MT |
90 | package %{name} |
91 | requires | |
92 | less | |
93 | openssh-clients | |
94 | rsync | |
95 | /usr/bin/vi | |
96 | end | |
1f9bc2f0 | 97 | |
5019890f MT |
98 | recommends |
99 | %{name}-email | |
100 | end | |
1f9bc2f0 MT |
101 | end |
102 | ||
9099585c SS |
103 | package %{name}-daemon |
104 | summary = Git protocol daemon. | |
105 | description | |
106 | The git daemon for supporting git:// access to git repositories. | |
107 | end | |
108 | ||
109 | requires | |
110 | git=%{thisver} | |
111 | end | |
112 | ||
113 | files | |
114 | %{gitcoredir}/git-daemon | |
115 | %{mandir}/man1/git-daemon* | |
116 | %{sharedstatedir}/git | |
2b968a3f SS |
117 | %{unitdir}/git@.service |
118 | %{unitdir}/git.socket | |
119 | end | |
120 | ||
121 | script postin | |
122 | systemctl daemon-reload >/dev/null 2>&1 || : | |
123 | end | |
124 | ||
125 | script preun | |
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 || : | |
129 | end | |
130 | ||
131 | script postun | |
132 | systemctl daemon-reload >/dev/null 2>&1 || : | |
133 | end | |
134 | ||
135 | script postup | |
136 | systemctl daemon-reload >/dev/null 2>&1 || : | |
137 | systemctl try-restart git.socket >/dev/null 2>&1 || : | |
9099585c SS |
138 | end |
139 | end | |
140 | ||
141 | package %{name}-gitweb | |
142 | arch = noarch | |
143 | ||
144 | summary = Simple web interface to git repositories. | |
145 | description | |
146 | Simple web interface to track changes in git repositories | |
147 | end | |
148 | ||
149 | requires | |
150 | git=%{thisver} | |
151 | end | |
152 | ||
153 | configfiles | |
154 | %{sysconfdir}/gitweb.conf | |
155 | %{sysconfdir}/httpd/conf.d/git.conf | |
156 | end | |
157 | ||
158 | files | |
159 | %{sysconfdir}/gitweb.conf | |
160 | %{sysconfdir}/httpd/conf.d/git.conf | |
161 | %{mandir}/man1/gitweb* | |
162 | %{mandir}/man5/gitweb* | |
163 | %{localstatedir}/www/git | |
164 | end | |
165 | end | |
166 | ||
167 | package %{name}-svn | |
168 | summary = Git tools for importing Subversion repositories. | |
169 | description = %{summary} | |
170 | ||
171 | requires | |
172 | git=%{thisver} | |
173 | subversion | |
174 | end | |
175 | ||
176 | files | |
177 | %{gitcoredir}/*svn* | |
178 | %{mandir}/man1/*svn* | |
179 | end | |
180 | end | |
181 | ||
182 | package %{name}-cvs | |
183 | summary = Git tools for importing CVS repositories. | |
184 | description = %{summary} | |
185 | ||
186 | requires | |
187 | git=%{thisver} | |
188 | end | |
189 | ||
190 | files | |
191 | %{bindir}/git-cvsserver | |
192 | %{gitcoredir}/*cvs* | |
193 | %{mandir}/man1/*cvs* | |
194 | %{mandir}/man7/*cvs* | |
195 | end | |
196 | end | |
197 | ||
198 | package %{name}-p4 | |
199 | arch = noarch | |
200 | ||
201 | summary = Git tools for working with Perforce depots. | |
202 | description = %{summary} | |
203 | ||
204 | requires | |
205 | git=%{thisver} | |
206 | end | |
207 | ||
208 | files | |
209 | %{gitcoredir}/*p4* | |
210 | %{gitcoredir}mergetools/p4merge | |
211 | %{mandir}/man1/*p4* | |
212 | end | |
213 | end | |
214 | ||
215 | package %{name}-email | |
216 | summary = Git tools for sending emails. | |
217 | description = %{summary} | |
218 | ||
219 | requires | |
220 | git=%{thisver} | |
221 | perl-Git=%{thisver} | |
5019890f MT |
222 | perl(Authen::SASL) |
223 | perl(Net::SMTP::SSL) | |
9099585c SS |
224 | end |
225 | ||
226 | files | |
227 | %{gitcoredir}/git-send-email | |
228 | %{mandir}/man1/git-send-email* | |
229 | end | |
230 | end | |
231 | ||
232 | package perl-Git | |
233 | arch = noarch | |
234 | ||
235 | summary = Perl interface to Git. | |
236 | description = %{summary} | |
237 | ||
238 | requires | |
239 | git=%{thisver} | |
240 | end | |
241 | ||
242 | files | |
243 | %{mandir}/man3/Git* | |
244 | %{perl_archlib} | |
245 | %{perl_vendorlib}/*.pm | |
246 | %{perl_vendorlib}/Git/*.pm | |
247 | end | |
248 | end | |
249 | ||
250 | package perl-Git-SVN | |
251 | arch = noarch | |
252 | ||
253 | summary = Perl interface to Git::SVN. | |
254 | description = %{summary} | |
255 | ||
256 | requires | |
257 | git=%{thisver} | |
258 | end | |
259 | ||
260 | files | |
261 | %{mandir}/man3/Git::SVN* | |
6ba1bd00 | 262 | %{perl_vendorlib}/Git/SVN*.pm |
9099585c SS |
263 | %{perl_vendorlib}/Git/SVN/ |
264 | end | |
265 | end | |
266 | ||
1f9bc2f0 MT |
267 | package %{name}-debuginfo |
268 | template DEBUGINFO | |
802ea3af MT |
269 | end |
270 | end |