commit:     422480add31731ac3df1851b4ef6654e13a8bda9
Author:     Aaron W. Swenson <titanofold <AT> gentoo <DOT> org>
AuthorDate: Sat May  2 02:58:45 2020 +0000
Commit:     Aaron W. Swenson <titanofold <AT> gentoo <DOT> org>
CommitDate: Sat May  2 02:58:48 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=422480ad

dev-vcs/fossil: Fix Tcl dependency and search

Bug: https://bugs.gentoo.org/690828
Bug: https://bugs.gentoo.org/675778
Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Aaron W. Swenson <titanofold <AT> gentoo.org>

 .../files/fossil-2.10-check-lib64-for-tcl.patch    | 11 ++++
 dev-vcs/fossil/fossil-2.10-r1.ebuild               | 72 ++++++++++++++++++++++
 2 files changed, 83 insertions(+)

diff --git a/dev-vcs/fossil/files/fossil-2.10-check-lib64-for-tcl.patch 
b/dev-vcs/fossil/files/fossil-2.10-check-lib64-for-tcl.patch
new file mode 100644
index 00000000000..404c5d7d667
--- /dev/null
+++ b/dev-vcs/fossil/files/fossil-2.10-check-lib64-for-tcl.patch
@@ -0,0 +1,11 @@
+--- a/autosetup/local.tcl
++++ b/autosetup/local.tcl
+@@ -12,7 +12,7 @@
+                       return [parse-tclconfig-sh-file $p/tclConfig.sh]
+               }
+               # Some systems allow for multiple versions
+-              foreach libpath {lib/tcl8.6 lib/tcl8.5 lib/tcl8.4 lib/tcl tcl 
lib}  {
++              foreach libpath {lib/tcl8.6 lib/tcl8.5 lib/tcl8.4 lib/tcl tcl 
lib lib64}  {
+                       if {[file exists $p/$libpath/tclConfig.sh]} {
+                               return [parse-tclconfig-sh-file 
$p/$libpath/tclConfig.sh]
+                       }

diff --git a/dev-vcs/fossil/fossil-2.10-r1.ebuild 
b/dev-vcs/fossil/fossil-2.10-r1.ebuild
new file mode 100644
index 00000000000..ca988001b44
--- /dev/null
+++ b/dev-vcs/fossil/fossil-2.10-r1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="Simple, high-reliability, source control management, and more"
+HOMEPAGE="https://www.fossil-scm.org/";
+SRC_URI="https://fossil-scm.org/home/uv/fossil-src-${PV}.tar.gz";
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="debug fusefs json -legacy-mv-rm -miniz system-sqlite +ssl static
+         tcl tcl-stubs tcl-private-stubs th1-docs th1-hooks"
+
+REQUIRED_USE="ssl? ( !miniz )"
+
+RDEPEND="
+       sys-libs/zlib
+       || (
+               sys-libs/readline:0
+               dev-libs/libedit
+       )
+       system-sqlite? ( >=dev-db/sqlite-3.28.0:3 )
+       ssl? ( dev-libs/openssl:0 )
+       tcl? ( dev-lang/tcl:0= )
+"
+
+# Either tcl or jimtcl need to be present to build Fossil (Bug #675778)
+DEPEND="${RDEPEND}
+       !tcl? (
+               || (
+                       dev-lang/tcl:*
+                       dev-lang/jimtcl:*
+               )
+       )
+"
+
+# Tests can't be run from the build directory
+RESTRICT="test"
+
+# fossil-2.10-check-lib64-for-tcl.patch: Bug 690828
+PATCHES=( "${FILESDIR}"/fossil-2.10-check-lib64-for-tcl.patch )
+
+src_configure() {
+       # this is not an autotools situation so don't make it seem like one
+       # --with-tcl: works
+       # --without-tcl: dies
+       local myconf="--with-openssl=$(usex ssl auto none)"
+       use debug         && myconf+=' --fossil-debug'
+       use json          && myconf+=' --json'
+       use system-sqlite && myconf+=' --disable-internal-sqlite'
+       use static        && myconf+=' --static'
+       use tcl           && myconf+=' --with-tcl=1'
+       use fusefs        || myconf+=' --disable-fusefs'
+
+       local u useflags
+       useflags=( legacy-mv-rm miniz tcl-stubs tcl-private-stubs
+                          th1-docs th1-hooks )
+       for u in ${useflags[@]} ; do
+               use ${u} &&  myconf+=" --with-${u}"
+       done
+
+       tc-export CC
+       ./configure ${myconf} || die
+}
+
+src_install() {
+       dobin fossil
+}

Reply via email to