]> git.ipfire.org Git - ipfire-3.x.git/blob - git/git.nm
Get rid of HTTP URLs as best as possible, take one
[ipfire-3.x.git] / git / git.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = git
7 version = 2.38.1
8 release = 4
9
10 groups = Development/Tools
11 url = https://git-scm.com/
12 license = GPLv2
13 summary = Fast Version Control System.
14
15 description
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.
19 end
20
21 source_dl = https://www.kernel.org/pub/software/scm/git/
22
23 build
24 requires
25 asciidoc
26 expat-devel
27 gettext
28 gnupg2
29 groff
30 libcurl-devel
31 openssl-devel
32 pcre2-devel
33 perl-ExtUtils-MakeMaker
34 perl-devel
35 python3-devel
36 xmlto
37 zlib-devel
38 end
39
40 prepare_cmds
41 cat <<EOF > config.mak
42 CFLAGS = %{CFLAGS}
43 LDFLAGS = %{LDFLAGS}
44 NEEDS_CRYPTO_WITH_SSL = 1
45 USE_LIBPCRE2 = 1
46 ETC_GITCONFIG = %{sysconfdir}/gitconfig
47 DESTDIR = %{BUILDROOT}
48 INSTALL = install -p
49 GNU_ROFF = 1
50 NO_CROSS_DIRECTORY_HARDLINKS = 1
51 PYTHON_PATH = %{python3}
52 prefix = %{prefix}
53 gitexecdir = lib/git-core
54 htmldir = %{datadir}/doc
55 NO_GITWEB=1
56 EOF
57
58 # Remove shebang from bash-completion script.
59 sed -i '/^#!bash/,+1 d' contrib/completion/git-completion.bash
60 end
61
62 build
63 make %{PARALLELISMFLAGS}
64 end
65
66 make_install_targets += INSTALLDIRS=vendor
67
68 install_cmds
69 # Install man pages.
70 make install-doc DESTDIR=%{BUILDROOT}
71
72 # Install bash completion file.
73 mkdir -pv %{BUILDROOT}%{sysconfdir}/bash_completion.d
74 install -v -m 644 contrib/completion/git-completion.bash \
75 %{BUILDROOT}%{sysconfdir}/bash_completion.d/git
76
77 # Remove git-daemon related files
78 rm -rvf %{BUILDROOT}/usr/lib/git-core/git-daemon
79 rm -rvf %{BUILDROOT}%{mandir}/man1/git-daemon*
80
81 # Remove SVN related files
82 rm -rvf %{BUILDROOT}/usr/lib/git-core/git-svn
83 rm -rvf %{BUILDROOT}%{mandir}/man1/git-svn*
84 rm -rvf %{BUILDROOT}%{perl_vendorlib}/Git/SVN*.pm
85 rm -rvf %{BUILDROOT}%{perl_vendorlib}/Git/SVN/
86 rm -rvf %{BUILDROOT}%{datadir}/perl5/Git/SVN/
87 rm -rvf %{BUILDROOT}%{datadir}/perl5/Git/SVN*.pm
88
89 # Remove CVS related files
90 rm -rvf %{BUILDROOT}%{bindir}/git-cvsserver
91 rm -rvf %{BUILDROOT}/usr/lib/git-core/*cvs*
92 rm -rvf %{BUILDROOT}%{mandir}/man1/*cvs*
93 rm -rvf %{BUILDROOT}%{mandir}/man7/*cvs*
94
95 # Remove Perforce depots related files.
96 rm -rvf %{BUILDROOT}/usr/lib/git-core/*p4*
97 rm -rvf %{BUILDROOT}/usr/lib/git-core/mergetools/p4*
98 rm -rvf %{BUILDROOT}%{mandir}/man1/*p4*
99
100 # Fix file permissions of the hook examples.
101 find %{BUILDROOT}%{datadir}/git-core/ -type f -iname "*.sample" \
102 -exec chmod 644 {} \;
103 end
104 end
105
106 packages
107 package %{name}
108 requires
109 less
110 openssh-clients
111 /usr/bin/vi
112 end
113
114 recommends
115 %{name}-email
116 rsync
117 end
118 end
119
120 package %{name}-email
121 summary = Git tools for sending emails.
122 description = %{summary}
123
124 requires
125 git=%{thisver}
126 perl-Git=%{thisver}
127 perl(Authen::SASL)
128 perl(Net::SMTP::SSL)
129 end
130
131 files
132 /usr/lib/git-core/git-send-email
133 %{mandir}/man1/git-send-email*
134 end
135 end
136
137 package perl-Git
138 arch = noarch
139
140 summary = Perl interface to Git.
141 description = %{summary}
142
143 requires
144 git=%{thisver}
145 end
146
147 files
148 %{mandir}/man3/Git*
149 %{perl_archlib}
150 %{perl_vendorlib}/*.pm
151 %{perl_vendorlib}/Git/*.pm
152 %{datadir}/perl5/
153 end
154 end
155
156 package %{name}-debuginfo
157 template DEBUGINFO
158 end
159 end