summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* submodule: prefix die messages with 'fatal'Atharva Raykar2021-07-123-26/+26
| | | | | | | | | | | | | | | | | | | | The standard `die()` function that is used in C code prefixes all the messages passed to it with 'fatal: '. This does not happen with the `die` used in 'git-submodule.sh'. Let's prefix each of the shell die messages with 'fatal: ' so that when they are converted to C code, the error messages stay the same as before the conversion. Note that the shell version of `die` exits with error code 1, while the C version exits with error code 128. In practice, this does not change any behaviour, as no functionality in 'submodule add' and 'submodule update' relies on the value of the exit code. Signed-off-by: Atharva Raykar <raykar.ath@gmail.com> Mentored-by: Christian Couder <christian.couder@gmail.com> Mentored-by: Shourya Shukla <periperidip@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* t7400: test failure to add submodule in tracked pathAtharva Raykar2021-07-071-0/+11
| | | | | | | | | | | | | | Add a test to ensure failure on adding a submodule to a directory with tracked contents in the index. As we are going to refactor and port to C some parts of `git submodule add`, let's add a test to help ensure no regression is introduced. Signed-off-by: Atharva Raykar <raykar.ath@gmail.com> Mentored-by: Christian Couder <christian.couder@gmail.com> Based-on-patch-by: Shourya Shukla <periperidip@gmail.com> Mentored-by: Shourya Shukla <periperidip@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Git 2.32v2.32.0Junio C Hamano2021-06-061-1/+1
| | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* Merge tag 'l10n-2.32.0-rnd1.1' of git://github.com/git-l10n/git-poJunio C Hamano2021-06-0616-44421/+49753
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | l10n-2.32.0-rnd1.1 * tag 'l10n-2.32.0-rnd1.1' of git://github.com/git-l10n/git-po: (25 commits) l10n: es: 2.32.0 round 1 l10n: zh_CN: for git v2.32.0 l10n round 1 l10n: Update Catalan translation l10n: de.po: Update German translation for Git v2.32.0 l10n: README: note on fuzzy translations l10n: README: document l10n conventions l10n: README: document "core translation" l10n: README: document git-po-helper l10n: README: add file extention ".md" l10n: pt_PT: add Portuguese translations part 3 l10n: bg.po: Updated Bulgarian translation (5204t) l10n: id: po-id for 2.32.0 (round 1) l10n: vi.po(5204t): Updated Vietnamese translation for v2.32.0 l10n: zh_TW.po: localized l10n: zh_TW.po: v2.32.0 round 1 (11 untranslated) l10n: sv.po: Update Swedish translation (5204t0f0u) l10n: fix typos in po/TEAMS l10n: fr: v2.32.0 round 1 l10n: tr: v2.32.0-r1 l10n: fr: fixed inconsistencies ...
| * l10n: es: 2.32.0 round 1Christopher Diaz Riveros2021-06-051-3300/+3806
| | | | | | | | Signed-off-by: Christopher Diaz Riveros <christopher.diaz.riv@gmail.com>
| * l10n: zh_CN: for git v2.32.0 l10n round 1Jiang Xin2021-06-051-3207/+3655
| | | | | | | | | | | | Translate 126 new messages (5204t0f0u) for git 2.32.0. Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
| * Merge branch 'fix_typo' of github.com:e-yes/gitJiang Xin2021-06-051-1/+1
| |\ | | | | | | | | | | | | * 'fix_typo' of github.com:e-yes/git: l10n: ru.po: fix typo in Russian translation
| | * l10n: ru.po: fix typo in Russian translationAlexey Roslyakov2021-05-131-1/+1
| | | | | | | | | | | | Signed-off-by: Alexey Roslyakov <alexey.roslyakov@gmail.com>
| * | Merge branch 'pt-PT' of github.com:git-l10n-pt-PT/git-poJiang Xin2021-06-041-635/+602
| |\ \ | | | | | | | | | | | | | | | | | | | | * 'pt-PT' of github.com:git-l10n-pt-PT/git-po: l10n: pt_PT: add Portuguese translations part 3 l10n: pt_PT: add Portuguese translations part 2
| | * | l10n: pt_PT: add Portuguese translations part 3Daniel Santos2021-06-011-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * Correct malformed strings * Transforming 'não' (no) into affirmative Signed-off-by: Daniel Santos <hello@brighterdan.com>
| | * | l10n: pt_PT: add Portuguese translations part 2Daniel Santos2021-05-171-625/+592
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Eliminated 'Negation of emptiness' of 'nenhum' (not one/none) * Eliminated 'Negation of emptiness' of 'nada' (nothing) * Transformed 'Não' (No) into affirmative * Some other translations * Transforming 'não' (no) into affirmative * From junção-de-3 to tri-junção Signed-off-by: Daniel Santos <hello@brighterdan.com>
| * | | l10n: Update Catalan translationJordi Mas2021-06-041-4743/+5714
| | | | | | | | | | | | | | | | Signed-off-by: Jordi Mas <jmas@softcatala.org>
| * | | l10n: de.po: Update German translation for Git v2.32.0Matthias Rüster2021-06-021-3239/+3717
| | | | | | | | | | | | | | | | | | | | Reviewed-by: Ralf Thielow <ralf.thielow@gmail.com> Signed-off-by: Matthias Rüster <matthias.ruester@gmail.com>
| * | | l10n: README: note on fuzzy translationsBagas Sanjaya2021-06-021-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fuzzy translation problem can occur when updating translations. Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com> Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
| * | | l10n: README: document l10n conventionsBagas Sanjaya2021-06-021-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Document the conventions that l10n contributors must follow. Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com> Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
| * | | l10n: README: document "core translation"Bagas Sanjaya2021-06-021-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Contributor for a new language must complete translations of a small set of l10n messages. Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com> Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
| * | | l10n: README: document git-po-helperBagas Sanjaya2021-06-021-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Document the PO helper program (git-po-helper) with installation and basic usage. Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com> Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
| * | | l10n: README: add file extention ".md"Jiang Xin2021-06-021-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add file extension ".md" to "po/README" to help to display this markdown file properly. Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
| * | | Merge branch 'l10n/zh_TW/21-05-20' of github.com:l10n-tw/git-poJiang Xin2021-05-301-3310/+3794
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | * 'l10n/zh_TW/21-05-20' of github.com:l10n-tw/git-po: l10n: zh_TW.po: localized l10n: zh_TW.po: v2.32.0 round 1 (11 untranslated)
| | * | | l10n: zh_TW.po: localizedYi-Jyun Pan2021-05-231-82/+82
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Yi-Jyun Pan <pan93412@gmail.com>
| | * | | l10n: zh_TW.po: v2.32.0 round 1 (11 untranslated)Yi-Jyun Pan2021-05-211-3230/+3714
| | |/ / | | | | | | | | | | | | Signed-off-by: Yi-Jyun Pan <pan93412@gmail.com>
| * | | Merge branch 'master' of github.com:Softcatala/git-poJiang Xin2021-05-301-5/+4
| |\ \ \ | | | | | | | | | | | | | | | | | | | | * 'master' of github.com:Softcatala/git-po: l10n: Update Catalan translation
| | * | | l10n: Update Catalan translationAlex Henrie2021-05-141-5/+4
| | | | | | | | | | | | | | | Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
| * | | | l10n: bg.po: Updated Bulgarian translation (5204t)Alexander Shopov2021-05-281-3309/+3791
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Alexander Shopov <ash@kambanaria.org>
| * | | | Merge branch 'fr_next' of github.com:jnavila/gitJiang Xin2021-05-271-5528/+4576
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'fr_next' of github.com:jnavila/git: l10n: fr: v2.32.0 round 1 l10n: fr: fixed inconsistencies l10n: fr.po fixed inconsistencies
| | * | | | l10n: fr: v2.32.0 round 1Jean-Noël Avila2021-05-191-5526/+4574
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
| | * | | | l10n: fr: fixed inconsistenciesrlespinasse2021-05-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: rlespinasse <romain.lespinasse@gmail.com>
| | * | | | l10n: fr.po fixed inconsistenciesVincent Tam2021-05-171-1/+1
| | | |/ / | | |/| | | | | | | | | | | | Signed-off-by: Vincent Tam <sere@live.hk>
| * | | | l10n: id: po-id for 2.32.0 (round 1)Bagas Sanjaya2021-05-251-4437/+5372
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Translate following components: * builtin/add.c * worktree.c * builtin/branch.c * builtin/commit.c * builtin/merge.c * builtin/rebase.c * builtin/pull.c * diff.c * add-interactive.c * builtin/log.c * builtin/stash.c * builtin/tag.c * config.c * builtin/config.c * reset.c * builtin/remote.c * builtin/rm.c * builtin/mv.c * builtin/clean.c * builtin/help.c * archive.c * submodule.c * builtin/submodule--helper.c * submodule-config.c Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
| * | | | l10n: vi.po(5204t): Updated Vietnamese translation for v2.32.0Tran Ngoc Quan2021-05-241-3196/+3691
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
| * | | | l10n: sv.po: Update Swedish translation (5204t0f0u)Peter Krefting2021-05-201-3192/+3684
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
| * | | | l10n: fix typos in po/TEAMSJiang Xin2021-05-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Find typos in "po/TEAMS" file using the "git-po-helper" program. These typos were introduced from commit v2.24.0-1-g9917eca794 (l10n: zh_TW: add translation for v2.24.0, 2019-11-20 19:14:22 +0800). Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
| * | | | l10n: tr: v2.32.0-r1Emir Sarı2021-05-171-3177/+3642
| |/ / / | | | | | | | | | | | | Signed-off-by: Emir Sarı <bitigchi@me.com>
| * | | l10n: git.pot: v2.32.0 round 1 (126 new, 26 removed)Jiang Xin2021-05-171-3141/+3590
| | | | | | | | | | | | | | | | | | | | | | | | Generate po/git.pot from v2.32.0-rc0 for git v2.32.0 l10n round 1. Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
* | | | Merge branch 'rs/parallel-checkout-test-fix'Junio C Hamano2021-06-061-1/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Test fix. * rs/parallel-checkout-test-fix: parallel-checkout: avoid dash local bug in tests
| * | | | parallel-checkout: avoid dash local bug in testsRené Scharfe2021-06-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Dash bug https://bugs.launchpad.net/ubuntu/+source/dash/+bug/139097 lets the shell erroneously perform field splitting on the expansion of a command substitution during declaration of a local variable. It causes the parallel-checkout tests to fail e.g. when running them with /bin/dash on MacOS 11.4, where they error out like this: ./t2080-parallel-checkout-basics.sh: 33: local: 0: bad variable name That's because the output of wc -l contains leading spaces and the returned number of lines is treated as another variable to declare, i.e. as in "local workers= 0". Work around it by enclosing the command substitution in quotes. Helped-by: Matheus Tavares Bernardino <matheus.bernardino@usp.br> Helped-by: SZEDER Gábor <szeder.dev@gmail.com> Helped-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | Merge branch 'jc/fsync-can-fail-with-eintr'Junio C Hamano2021-06-061-2/+3
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Last minute portability fix. * jc/fsync-can-fail-with-eintr: fsync(): be prepared to see EINTR
| * | | | | fsync(): be prepared to see EINTRJunio C Hamano2021-06-051-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some platforms, like NonStop do not automatically restart fsync() when interrupted by a signal, even when that signal is setup with SA_RESTART. This can lead to test breakage, e.g., where "--progress" is used, thus SIGALRM is sent often, and can interrupt an fsync() syscall. Make sure we deal with such a case by retrying the syscall ourselves. Luckily, we call fsync() fron a single wrapper, fsync_or_die(), so the fix is fairly isolated. Reported-by: Randall S. Becker <randall.becker@nexbridge.ca> Helped-by: Jeff King <peff@peff.net> Helped-by: Taylor Blau <me@ttaylorr.com> [jc: the above two did most of the work---I just tied the loose end] Helped-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | Git 2.32-rc3v2.32.0-rc3Junio C Hamano2021-06-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | contrib/completion: fix zsh completion regression from 59d85a2a05David Aguilar2021-06-022-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A recent change to make git-completion.bash use $__git_cmd_idx in more places broke a number of completions on zsh because it modified __git_main but did not update __git_zsh_main. Notably, completions for "add", "branch", "mv" and "push" were broken as a result of this change. In addition to the undefined variable usage, "git mv <tab>" also prints the following error: __git_count_arguments:7: bad math expression: operand expected at `"1"' _git_mv:[:7: unknown condition: -gt Remove the quotes around $__git_cmd_idx in __git_count_arguments and set __git_cmd_idx=1 early in __git_zsh_main to fix the regressions from 59d85a2a05. This was tested on zsh 5.7.1 (x86_64-apple-darwin19.0). Suggested-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: David Aguilar <davvid@gmail.com> Acked-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | Merge branch 'ab/fsck-api-cleanup'Junio C Hamano2021-06-021-1/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Last minute compilation fix. * ab/fsck-api-cleanup: builtin/fsck.c: don't conflate "int" and "enum" in callback
| * | | | | | builtin/fsck.c: don't conflate "int" and "enum" in callbackÆvar Arnfjörð Bjarmason2021-06-021-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a warning on AIX's xlc compiler that's been emitted since my a1aad71601a (fsck.h: use "enum object_type" instead of "int", 2021-03-28): "builtin/fsck.c", line 805.32: 1506-068 (W) Operation between types "int(*)(struct object*,enum object_type,void*,struct fsck_options*)" and "int(*)(struct object*,int,void*,struct fsck_options*)" is not allowed. I.e. it complains about us assigning a function with a prototype "int" where we're expecting "enum object_type". Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | | Git 2.32-rc2v2.32.0-rc2Junio C Hamano2021-05-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Junio C Hamano <gitster@pobox.com>
* | | | | | | Merge branch 'en/dir-traversal'Junio C Hamano2021-05-281-2/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix-up to a topic that is already in 'master'. * en/dir-traversal: dir: introduce readdir_skip_dot_and_dotdot() helper dir: update stale description of treat_directory() Revert "dir: update stale description of treat_directory()" Revert "dir: introduce readdir_skip_dot_and_dotdot() helper"
| * | | | | | | dir: introduce readdir_skip_dot_and_dotdot() helperElijah Newren2021-05-2711-45/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Many places in the code were doing while ((d = readdir(dir)) != NULL) { if (is_dot_or_dotdot(d->d_name)) continue; ...process d... } Introduce a readdir_skip_dot_and_dotdot() helper to make that a one-liner: while ((d = readdir_skip_dot_and_dotdot(dir)) != NULL) { ...process d... } This helper particularly simplifies checks for empty directories. Also use this helper in read_cached_dir() so that our statistics are consistent across platforms. (In other words, read_cached_dir() should have been using is_dot_or_dotdot() and skipping such entries, but did not and left it to treat_path() to detect and mark such entries as path_none.) Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | | | | dir: update stale description of treat_directory()Derrick Stolee2021-05-271-7/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The documentation comment for treat_directory() was originally written in 095952 (Teach directory traversal about subprojects, 2007-04-11) which was before the 'struct dir_struct' split its bitfield of named options into a 'flags' enum in 7c4c97c0 (Turn the flags in struct dir_struct into a single variable, 2009-02-16). When those flags changed, the comment became stale, since members like 'show_other_directories' transitioned into flags like DIR_SHOW_OTHER_DIRECTORIES. Update the comments for treat_directory() to use these flag names rather than the old member names. Signed-off-by: Derrick Stolee <dstolee@microsoft.com> Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
| * | | | | | | Revert "dir: update stale description of treat_directory()"Junio C Hamano2021-05-271-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 4e689d81718eb6e939cace317ea3e33cb994dcbb, to be replaced with a reworked version.
| * | | | | | | Revert "dir: introduce readdir_skip_dot_and_dotdot() helper"Junio C Hamano2021-05-2711-31/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b548f0f1568f6b01e55ca69c24d3cb19489f92aa, to be replaced with a reworked version.
* | | | | | | | Merge branch 'ab/pack-linkage-fix'Junio C Hamano2021-05-272-166/+167
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "ld" on Solaris fails to link some test helpers, which has been worked around by reshuffling the inline function definitions from a header file to a source file that is the only user of them. * ab/pack-linkage-fix: pack-objects: move static inline from a header to the sole consumer
| * | | | | | | | pack-objects: move static inline from a header to the sole consumerÆvar Arnfjörð Bjarmason2021-05-272-166/+167
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the code that is only used in builtin/pack-objects.c out of pack-objects.h. This fixes an issue where Solaris's SunCC hasn't been able to compile git since 483fa7f42d9 (t/helper/test-bitmap.c: initial commit, 2021-03-31). The real origin of that issue is that in 898eba5e630 (pack-objects: refer to delta objects by index instead of pointer, 2018-04-14) utility functions only needed by builtin/pack-objects.c were added to pack-objects.h. Since then the header has been used in a few other places, but 483fa7f42d9 was the first time it was used by test helper. Since Solaris is stricter about linking and the oe_get_size_slow() function lives in builtin/pack-objects.c the build started failing with: Undefined first referenced symbol in file oe_get_size_slow t/helper/test-bitmap.o ld: fatal: symbol referencing errors. No output written to t/helper/test-tool On other platforms this is presumably OK because the compiler and/or linker detects that the "static inline" functions that reference oe_get_size_slow() aren't used. Let's solve this by moving the relevant code from pack-objects.h to builtin/pack-objects.c. This is almost entirely a code-only move, but because of the early macro definitions in that file referencing some of these inline functions we need to move the definition of "static struct packing_data to_pack" earlier, and declare these inline functions above the macros. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>