summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/git/git_2.46.0.bb
diff options
context:
space:
mode:
authorWang Mingyu <wangmy@fujitsu.com>2024-09-25 14:48:40 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2024-09-30 17:00:50 +0100
commit4faaa5d15a41c9c7c0e58f2f02ff79d7431f2013 (patch)
tree1058ed7fda4d7dbbb3999513ebecd08060a07dd7 /meta/recipes-devtools/git/git_2.46.0.bb
parentf3d4a5c06008c6dd39074198edf6fb6c232fc145 (diff)
downloadpoky-4faaa5d15a41c9c7c0e58f2f02ff79d7431f2013.tar.gz
git: upgrade 2.46.0 -> 2.46.1
Changelog: ============== * "git checkout --ours" (no other arguments) complained that the option is incompatible with branch switching, which is technically correct, but found confusing by some users. It now says that the user needs to give pathspec to specify what paths to checkout. * It has been documented that we avoid "VAR=VAL shell_func" and why. * "git add -p" by users with diff.suppressBlankEmpty set to true failed to parse the patch that represents an unmodified empty line with an empty line (not a line with a single space on it), which has been corrected. * "git rebase --help" referred to "offset" (the difference between the location a change was taken from and the change gets replaced) incorrectly and called it "fuzz", which has been corrected. * "git notes add -m '' --allow-empty" and friends that take prepared data to create notes should not invoke an editor, but it started doing so since Git 2.42, which has been corrected. * An expensive operation to prepare tracing was done in re-encoding code path even when the tracing was not requested, which has been corrected. * Perforce tests have been updated. * The credential helper to talk to OSX keychain sometimes sent garbage bytes after the username, which has been corrected. * A recent update broke "git ls-remote" used outside a repository, which has been corrected. * "git config --value=foo --fixed-value section.key newvalue" barfed when the existing value in the configuration file used the valueless true syntax, which has been corrected. * "git reflog expire" failed to honor annotated tags when computing reachable commits. * A flakey test and incorrect calls to strtoX() functions have been fixed. * Follow-up on 2.45.1 regression fix. * "git rev-list ... | git diff-tree -p --remerge-diff --stdin" should behave more or less like "git log -p --remerge-diff" but instead it crashed, forgetting to prepare a temporary object store needed. * The patch parser in "git patch-id" has been tightened to avoid getting confused by lines that look like a patch header in the log message. * "git bundle unbundle" outside a repository triggered a BUG() unnecessarily, which has been corrected. * The code forgot to discard unnecessary in-core commit buffer data for commits that "git log --skip=<number>" traversed but omitted from the output, which has been corrected. * "git verify-pack" and "git index-pack" started dying outside a repository, which has been corrected. * A corner case bug in "git stash" was fixed. (From OE-Core rev: ee7e9866ad942a9682e54878f1e7fb06c68c8cf4) Signed-off-by: Wang Mingyu <wangmy@fujitsu.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/git/git_2.46.0.bb')
-rw-r--r--meta/recipes-devtools/git/git_2.46.0.bb167
1 files changed, 0 insertions, 167 deletions
diff --git a/meta/recipes-devtools/git/git_2.46.0.bb b/meta/recipes-devtools/git/git_2.46.0.bb
deleted file mode 100644
index 7c6beb5b5c..0000000000
--- a/meta/recipes-devtools/git/git_2.46.0.bb
+++ /dev/null
@@ -1,167 +0,0 @@
1SUMMARY = "Distributed version control system"
2HOMEPAGE = "http://git-scm.com"
3DESCRIPTION = "Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency."
4SECTION = "console/utils"
5LICENSE = "GPL-2.0-only & GPL-2.0-or-later & BSD-3-Clause & MIT & BSL-1.0 & LGPL-2.1-or-later"
6DEPENDS = "openssl zlib"
7DEPENDS:class-native += "ca-certificates"
8
9PROVIDES:append:class-native = " git-replacement-native"
10
11SRC_URI = "${KERNELORG_MIRROR}/software/scm/git/git-${PV}.tar.gz;name=tarball \
12 file://fixsort.patch \
13 file://0001-config.mak.uname-do-not-force-RHEL-7-specific-build-.patch \
14 "
15
16S = "${WORKDIR}/git-${PV}"
17
18LIC_FILES_CHKSUM = "\
19 file://COPYING;md5=7c0d7ef03a7eb04ce795b0f60e68e7e1 \
20 file://reftable/LICENSE;md5=1a6424cafc4c9c88c689848e165af33b \
21 file://sha1dc/LICENSE.txt;md5=9bbe4c990a9e98ea4b98ef5d3bcb8a7a \
22 file://compat/nedmalloc/License.txt;md5=e4224ccaecb14d942c71d31bef20d78c \
23 file://compat/inet_ntop.c;md5=76593c6f74e8ced5b24520175688d59b;endline=16 \
24 file://compat/obstack.h;md5=08ad25fee5428cd879ceef451ce3a22e;endline=18 \
25 file://compat/poll/poll.h;md5=9fc00170a53b8e3e52157c91ac688dd1;endline=19 \
26 file://compat/regex/regex.h;md5=30cc8af0e6f0f8a25acec6d8783bb763;beginline=4;endline=22 \
27"
28
29CVE_PRODUCT = "git-scm:git"
30
31PACKAGECONFIG ??= "expat curl"
32PACKAGECONFIG[cvsserver] = ""
33PACKAGECONFIG[svn] = ""
34PACKAGECONFIG[manpages] = ",,asciidoc-native xmlto-native"
35PACKAGECONFIG[curl] = "--with-curl,--without-curl,curl"
36PACKAGECONFIG[expat] = "--with-expat,--without-expat,expat"
37
38EXTRA_OECONF = "--with-perl=${STAGING_BINDIR_NATIVE}/perl-native/perl \
39 --without-tcltk \
40 --without-iconv \
41"
42EXTRA_OECONF:append:class-nativesdk = " --with-gitconfig=/etc/gitconfig "
43EXTRA_OECONF:append:class-native = " --with-gitconfig=/etc/gitconfig "
44
45# Needs brokensep as this doesn't use automake
46inherit autotools-brokensep perlnative bash-completion manpages
47
48EXTRA_OEMAKE = "NO_PYTHON=1 CFLAGS='${CFLAGS}' LDFLAGS='${LDFLAGS}'"
49EXTRA_OEMAKE += "'PERL_PATH=/usr/bin/env perl'"
50EXTRA_OEMAKE += "COMPUTE_HEADER_DEPENDENCIES=no"
51EXTRA_OEMAKE:append:class-native = " NO_CROSS_DIRECTORY_HARDLINKS=1"
52
53do_compile:prepend () {
54 # Remove perl/perl.mak to fix the out-of-date perl.mak error
55 # during rebuild
56 rm -f perl/perl.mak
57
58 if [ "${@bb.utils.filter('PACKAGECONFIG', 'manpages', d)}" ]; then
59 oe_runmake man
60 fi
61}
62
63do_install () {
64 oe_runmake install DESTDIR="${D}" bindir=${bindir} \
65 template_dir=${datadir}/git-core/templates
66
67 install -d ${D}/${datadir}/bash-completion/completions/
68 install -m 644 ${S}/contrib/completion/git-completion.bash ${D}/${datadir}/bash-completion/completions/git
69
70 if [ "${@bb.utils.filter('PACKAGECONFIG', 'manpages', d)}" ]; then
71 # Needs to be serial with make 4.4 due to https://savannah.gnu.org/bugs/index.php?63362
72 make install-man DESTDIR="${D}"
73 fi
74}
75
76perl_native_fixup () {
77 sed -i -e 's#${STAGING_BINDIR_NATIVE}/perl-native/#${bindir}/#' \
78 -e 's#${libdir}/perl-native/#${libdir}/#' \
79 ${@d.getVar("PERLTOOLS").replace(' /',d.getVar('D') + '/')}
80
81 if [ ! "${@bb.utils.filter('PACKAGECONFIG', 'cvsserver', d)}" ]; then
82 # Only install the git cvsserver command if explicitly requested
83 # as it requires the DBI Perl module, which does not exist in
84 # OE-Core.
85 rm ${D}${libexecdir}/git-core/git-cvsserver \
86 ${D}${bindir}/git-cvsserver
87 fi
88
89 if [ ! "${@bb.utils.filter('PACKAGECONFIG', 'svn', d)}" ]; then
90 # Only install the git svn command and all Git::SVN Perl modules
91 # if explicitly requested as they require the SVN::Core Perl
92 # module, which does not exist in OE-Core.
93 rm -r ${D}${libexecdir}/git-core/git-svn \
94 ${D}${datadir}/perl5/Git/SVN*
95 fi
96}
97
98REL_GIT_EXEC_PATH = "${@os.path.relpath(libexecdir, bindir)}/git-core"
99REL_GIT_TEMPLATE_DIR = "${@os.path.relpath(datadir, bindir)}/git-core/templates"
100REL_GIT_SSL_CAINFO = "${@os.path.relpath(sysconfdir, bindir)}/ssl/certs/ca-certificates.crt"
101
102do_install:append:class-target () {
103 perl_native_fixup
104}
105
106do_install:append:class-native() {
107 create_wrapper ${D}${bindir}/git \
108 GIT_EXEC_PATH='`dirname $''realpath`'/${REL_GIT_EXEC_PATH} \
109 GIT_SSL_CAINFO='`dirname $''realpath`'/${REL_GIT_SSL_CAINFO} \
110 GIT_TEMPLATE_DIR='`dirname $''realpath`'/${REL_GIT_TEMPLATE_DIR}
111}
112
113do_install:append:class-nativesdk() {
114 create_wrapper ${D}${bindir}/git \
115 GIT_EXEC_PATH='`dirname $''realpath`'/${REL_GIT_EXEC_PATH} \
116 GIT_TEMPLATE_DIR='`dirname $''realpath`'/${REL_GIT_TEMPLATE_DIR}
117 perl_native_fixup
118}
119
120FILES:${PN} += "${datadir}/git-core ${libexecdir}/git-core/"
121
122PERLTOOLS = " \
123 ${bindir}/git-cvsserver \
124 ${libexecdir}/git-core/git-archimport \
125 ${libexecdir}/git-core/git-cvsexportcommit \
126 ${libexecdir}/git-core/git-cvsimport \
127 ${libexecdir}/git-core/git-cvsserver \
128 ${libexecdir}/git-core/git-send-email \
129 ${libexecdir}/git-core/git-svn \
130 ${libexecdir}/git-core/git-instaweb \
131 ${datadir}/gitweb/gitweb.cgi \
132 ${datadir}/git-core/templates/hooks/prepare-commit-msg.sample \
133 ${datadir}/git-core/templates/hooks/pre-rebase.sample \
134 ${datadir}/git-core/templates/hooks/fsmonitor-watchman.sample \
135"
136
137# Git tools requiring perl
138PACKAGES =+ "${PN}-perltools"
139FILES:${PN}-perltools += " \
140 ${PERLTOOLS} \
141 ${libdir}/perl \
142 ${datadir}/perl5 \
143"
144
145RDEPENDS:${PN}-perltools = "${PN} perl perl-module-file-path findutils"
146
147# git-tk package with gitk and git-gui
148PACKAGES =+ "${PN}-tk"
149#RDEPENDS:${PN}-tk = "${PN} tk tcl"
150#EXTRA_OEMAKE = "TCL_PATH=${STAGING_BINDIR_CROSS}/tclsh"
151FILES:${PN}-tk = " \
152 ${bindir}/gitk \
153 ${datadir}/gitk \
154"
155
156PACKAGES =+ "gitweb"
157FILES:gitweb = "${datadir}/gitweb/"
158RDEPENDS:gitweb = "perl"
159
160BBCLASSEXTEND = "native nativesdk"
161
162EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
163 ac_cv_fread_reads_directories=${ac_cv_fread_reads_directories=yes} \
164 "
165EXTRA_OEMAKE += "NO_GETTEXT=1"
166
167SRC_URI[tarball.sha256sum] = "b138811e16838f669a2516e40f09d50500e1c7fc541b5ab50ce84b98585e5230"