diff options
Diffstat (limited to 'dev-vcs/git/git-9999.ebuild')
| -rw-r--r-- | dev-vcs/git/git-9999.ebuild | 98 |
1 files changed, 41 insertions, 57 deletions
diff --git a/dev-vcs/git/git-9999.ebuild b/dev-vcs/git/git-9999.ebuild index f90f10f55f15..c01f7afe963b 100644 --- a/dev-vcs/git/git-9999.ebuild +++ b/dev-vcs/git/git-9999.ebuild @@ -148,7 +148,8 @@ REQUIRED_USE=" RESTRICT="!test? ( test )" PATCHES=( - "${FILESDIR}"/${PN}-2.48.0-doc-deps.patch + "${FILESDIR}"/${PN}-2.48.1-macos-no-fsmonitor.patch + "${FILESDIR}"/${PN}-2.49.0-meson-use-test_environment-conditionally.patch ) pkg_setup() { @@ -194,7 +195,36 @@ src_prepare() { } src_configure() { + local contrib=( + completion + subtree + + $(usev perl 'contacts') + ) + local credential_helpers=( + $(usev keyring 'libsecret') + $(usev perl 'netrc') + ) + + # Needs macOS Frameworks that can't currently be built with GCC. + if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then + credential_helpers+=( osxkeychain ) + fi + + + local native_file="${T}"/meson.ini.local + cat >> ${native_file} <<-EOF || die + [binaries] + # We don't want to bake /usr/bin/sh from usrmerged systems into + # binaries. /bin/sh is required by POSIX. + sh='/bin/sh' + # Avoid automagic installation of gitk-gui. + $(usev !tk "wish='wish-falseified'") + EOF + local emesonargs=( + --native-file "${native_file}" + $(meson_feature curl) $(meson_feature cgi gitweb) $(meson_feature webdav expat) @@ -204,9 +234,18 @@ src_configure() { $(meson_feature perl) $(meson_feature perforce python) $(meson_use test tests) + + -Dcontrib=$(IFS=, ; echo "${contrib[*]}" ) + -Dcredential_helpers=$(IFS=, ; echo "${credential_helpers[*]}" ) + + -Dmacos_use_homebrew_gettext=false -Dperl_cpan_fallback=false + # TODO: allow zlib-ng + -Dzlib_backend=zlib ) + [[ ${CHOST} == *-darwin* ]] && emesonargs+=( -Dfsmonitor=false ) + # For non-live, we use a downloaded docs tarball instead. if [[ ${PV} == *9999 ]] || use doc ; then emesonargs+=( @@ -247,24 +286,11 @@ git_emake() { src_compile() { meson_src_compile - if use perl ; then - git_emake -C contrib/credential/netrc - fi - - if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then - git_emake -C contrib/credential/osxkeychain - fi - - if use keyring ; then - git_emake -C contrib/credential/libsecret - fi - if use mediawiki ; then git_emake -C contrib/mw-to-git fi if use tk ; then - git_emake -C gitk-git git_emake -C git-gui fi @@ -275,9 +301,6 @@ src_compile() { fi git_emake -C contrib/diff-highlight - git_emake -C contrib/subtree git-subtree - # git-subtree.1 requires the full USE=doc dependency stack - use doc && git_emake -C contrib/subtree git-subtree.html git-subtree.1 } src_test() { @@ -295,10 +318,6 @@ src_test() { src_install() { meson_src_install - if [[ ${CHOST} == *-darwin* ]] && tc-is-clang ; then - dobin contrib/credential/osxkeychain/git-credential-osxkeychain - fi - if use doc ; then cp -r "${ED}"/usr/share/doc/git-doc/. "${ED}"/usr/share/doc/${PF}/html || die rm -rf "${ED}"/usr/share/doc/git-doc/ || die @@ -310,18 +329,6 @@ src_install() { find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157] dodoc README* Documentation/{SubmittingPatches,CodingGuidelines} - use doc && dodir /usr/share/doc/${PF}/html - local d - for d in / /howto/ /technical/ ; do - docinto ${d} - dodoc Documentation${d}*.txt - if use doc ; then - docinto ${d}/html - dodoc Documentation${d}*.html - fi - done - docinto / - newbashcomp contrib/completion/git-completion.bash ${PN} bashcomp_alias git gitk # Not really a bash-completion file (bug #477920) @@ -335,17 +342,6 @@ src_install() { exeinto /usr/libexec/git-core/ newexe contrib/git-resurrect.sh git-resurrect - # git-subtree - pushd contrib/subtree &>/dev/null || die - git_emake DESTDIR="${D}" install - if use doc ; then - # Do not move git subtree install-man outside USE=doc! - git_emake DESTDIR="${D}" install-man install-html - fi - newdoc README README.git-subtree - dodoc git-subtree.txt - popd &>/dev/null || die - # diff-highlight dobin contrib/diff-highlight/diff-highlight newdoc contrib/diff-highlight/README README.diff-highlight @@ -355,15 +351,6 @@ src_install() { doexe contrib/git-jump/git-jump newdoc contrib/git-jump/README git-jump.txt - # git-contacts - exeinto /usr/libexec/git-core/ - doexe contrib/contacts/git-contacts - dodoc contrib/contacts/git-contacts.txt - - if use keyring ; then - dobin contrib/credential/libsecret/git-credential-libsecret - fi - dodir /usr/share/${PN}/contrib # The following are excluded: # completion - installed above @@ -376,7 +363,7 @@ src_install() { # patches - stuff the Git guys made to go upstream to other places # persistent-https - TODO # mw-to-git - TODO - # subtree - build seperately + # subtree - built seperately # svnimport - use git-svn # thunderbird-patch-inline - fixes thunderbird local contrib_objects=( @@ -418,8 +405,6 @@ src_install() { dodir "$(perl_get_vendorlib)" mv "${ED}"/usr/share/perl5/Git.pm "${ED}/$(perl_get_vendorlib)" || die mv "${ED}"/usr/share/perl5/Git "${ED}/$(perl_get_vendorlib)" || die - - dobin contrib/credential/netrc/git-credential-netrc fi if use mediawiki ; then @@ -444,7 +429,6 @@ src_install() { fi if use tk ; then - git_emake -C gitk-git DESTDIR="${D}" install git_emake -C git-gui DESTDIR="${D}" install fi |
