summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Phillip Brink <binki@gentoo.org>2011-09-12 05:08:05 +0000
committerNathan Phillip Brink <binki@gentoo.org>2011-09-12 05:08:05 +0000
commitef88164528e6377c2ec627ef390dca996ba13e86 (patch)
treec8182bd8dc5bab2d3f9d587033f22ab9683684cf /dev-vcs/veracity
parentfix fcitx-sunpinyin dependency (diff)
downloadgentoo-2-ef88164528e6377c2ec627ef390dca996ba13e86.tar.gz
gentoo-2-ef88164528e6377c2ec627ef390dca996ba13e86.tar.bz2
gentoo-2-ef88164528e6377c2ec627ef390dca996ba13e86.zip
Add dev-vcs/veracity-1.0.0.10517, a young DVCS (requested by jdhore).
(Portage version: 2.2.0_alpha50-r1/cvs/Linux x86_64)
Diffstat (limited to 'dev-vcs/veracity')
-rw-r--r--dev-vcs/veracity/ChangeLog13
-rw-r--r--dev-vcs/veracity/files/veracity-1.0.0.10517-spidermonkey-as-needed.patch32
-rw-r--r--dev-vcs/veracity/files/veracity-1.0.0.10517-system-sqlite.patch45
-rw-r--r--dev-vcs/veracity/files/veracity-1.0.0.10517-werror.patch19
-rw-r--r--dev-vcs/veracity/metadata.xml9
-rw-r--r--dev-vcs/veracity/veracity-1.0.0.10517.ebuild87
6 files changed, 205 insertions, 0 deletions
diff --git a/dev-vcs/veracity/ChangeLog b/dev-vcs/veracity/ChangeLog
new file mode 100644
index 000000000000..780122f46403
--- /dev/null
+++ b/dev-vcs/veracity/ChangeLog
@@ -0,0 +1,13 @@
+# ChangeLog for dev-vcs/veracity
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-vcs/veracity/ChangeLog,v 1.1 2011/09/12 05:08:05 binki Exp $
+
+*veracity-1.0.0.10517 (12 Sep 2011)
+
+ 12 Sep 2011; Nathan Phillip Brink <binki@gentoo.org>
+ +veracity-1.0.0.10517.ebuild,
+ +files/veracity-1.0.0.10517-spidermonkey-as-needed.patch,
+ +files/veracity-1.0.0.10517-system-sqlite.patch,
+ +files/veracity-1.0.0.10517-werror.patch, +metadata.xml:
+ Add dev-vcs/veracity-1.0.0.10517, a young DVCS (requested by jdhore).
+
diff --git a/dev-vcs/veracity/files/veracity-1.0.0.10517-spidermonkey-as-needed.patch b/dev-vcs/veracity/files/veracity-1.0.0.10517-spidermonkey-as-needed.patch
new file mode 100644
index 000000000000..31964feb310d
--- /dev/null
+++ b/dev-vcs/veracity/files/veracity-1.0.0.10517-spidermonkey-as-needed.patch
@@ -0,0 +1,32 @@
+# HG changeset patch
+# User Nathan Phillip Brink <ohnobinki@ohnopublishing.net>
+# Date 1315717091 0
+# Node ID 30297b7085c3a1ea1ecd390330ff291761128bae
+# Parent b44ad1bfbdbefb74cf53502ee6d0e5e7a5f97da5
+The embedded spidermonkey libjs.a needs nspr, fix -Wl,--as-needed.
+
+diff -r b44ad1bfbdbe -r 30297b7085c3 common-CMakeLists.txt
+--- a/common-CMakeLists.txt Thu Sep 01 12:09:41 2011 +0000
++++ b/common-CMakeLists.txt Sun Sep 11 04:58:11 2011 +0000
+@@ -297,10 +297,6 @@
+ INCLUDE_DIRECTORIES(${CURL_INCLUDE_DIR})
+ set(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${CURL_LIBRARIES})
+
+-FIND_LIBRARY(NSPR_LIB NAMES nspr4 libnspr4)
+-set(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${NSPR_LIB})
+-MARK_AS_ADVANCED(NSPR_LIB)
+-
+ FIND_PACKAGE(PkgConfig REQUIRED)
+ PKG_CHECK_MODULES(SQLITE REQUIRED sqlite3)
+ SET(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${SQLITE_LDFLAGS})
+@@ -321,6 +317,10 @@
+ MARK_AS_ADVANCED(SPIDERMONKEY_LIB)
+ set(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${SPIDERMONKEY_LIB})
+
++FIND_LIBRARY(NSPR_LIB NAMES nspr4 libnspr4)
++set(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${NSPR_LIB})
++MARK_AS_ADVANCED(NSPR_LIB)
++
+ SET(CMAKE_DATA_DIR "share/veracity" CACHE STRING "Install location for data (relative to prefix).")
+ SET(CMAKE_DOC_DIR "share/veracity" CACHE STRING "Install location for documentation (relative to prefix).")
+ SET(CMAKE_MAN_DIR "man" CACHE STRING "Install location for man pages (relative to prefix).")
diff --git a/dev-vcs/veracity/files/veracity-1.0.0.10517-system-sqlite.patch b/dev-vcs/veracity/files/veracity-1.0.0.10517-system-sqlite.patch
new file mode 100644
index 000000000000..5252dc0e3693
--- /dev/null
+++ b/dev-vcs/veracity/files/veracity-1.0.0.10517-system-sqlite.patch
@@ -0,0 +1,45 @@
+# HG changeset patch
+# User Nathan Phillip Brink <ohnobinki@ohnopublishing.net>
+# Date 1314878981 0
+# Node ID 91ac9ba6484c95748fef02086619f9edeff7d434
+# Parent 6769293155a7f4f8f7744f38ba1a24e38a77128c
+Use system sqlite3 instead of bundled.
+
+diff -r 6769293155a7 -r 91ac9ba6484c common-CMakeLists.txt
+--- a/common-CMakeLists.txt Thu Sep 01 04:07:58 2011 +0000
++++ b/common-CMakeLists.txt Thu Sep 01 12:09:41 2011 +0000
+@@ -291,6 +291,11 @@
+ set(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${NSPR_LIB})
+ MARK_AS_ADVANCED(NSPR_LIB)
+
++FIND_PACKAGE(PkgConfig REQUIRED)
++PKG_CHECK_MODULES(SQLITE REQUIRED sqlite3)
++SET(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${SQLITE_LDFLAGS})
++SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SQLITE_CFLAGS}")
++
+ # Only look for libuuid on Linux. OSX and Windows have this built in
+ IF("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
+ FIND_PACKAGE(UUID REQUIRED)
+diff -r 6769293155a7 -r 91ac9ba6484c src/CMakeLists.txt
+--- a/src/CMakeLists.txt Thu Sep 01 04:07:58 2011 +0000
++++ b/src/CMakeLists.txt Thu Sep 01 12:09:41 2011 +0000
+@@ -33,8 +33,6 @@
+ add_subdirectory(winsync)
+ endif () # WIN32 AND NOT CMAKE_COMPILER_IS_GNUCC
+
+-add_subdirectory(thirdparty)
+-
+ INSTALL(
+ DIRECTORY server_files
+ DESTINATION "${Veracity_DATA_DEST}"
+diff -r 6769293155a7 -r 91ac9ba6484c src/libraries/ut/CMakeLists.txt
+--- a/src/libraries/ut/CMakeLists.txt Thu Sep 01 04:07:58 2011 +0000
++++ b/src/libraries/ut/CMakeLists.txt Thu Sep 01 12:09:41 2011 +0000
+@@ -161,6 +161,6 @@
+ source_group("Header Files" FILES ${HEADERS})
+
+ add_library(sglib STATIC ${ALL_SOURCE})
+-target_link_libraries(sglib sghash sgtemplates sqlite3 ${SG_THIRDPARTY_LIBRARIES} ${SG_OS_LIBS})
++target_link_libraries(sglib sghash sgtemplates ${SG_THIRDPARTY_LIBRARIES} ${SG_OS_LIBS})
+
+ set_target_properties(sglib PROPERTIES FOLDER "Libraries")
diff --git a/dev-vcs/veracity/files/veracity-1.0.0.10517-werror.patch b/dev-vcs/veracity/files/veracity-1.0.0.10517-werror.patch
new file mode 100644
index 000000000000..7e622a7d1014
--- /dev/null
+++ b/dev-vcs/veracity/files/veracity-1.0.0.10517-werror.patch
@@ -0,0 +1,19 @@
+# HG changeset patch
+# User Nathan Phillip Brink <ohnobinki@ohnopublishing.net>
+# Date 1314847280 0
+# Node ID 0646c94f7b47befbd5acc814ef1219b09f03fa71
+# Parent 368b57a9e1f890c4521d92c8d8c0e7abba7cfccc
+Fix -Werror (by removing it and letting the user specify CFLAGS).
+
+diff -r 368b57a9e1f8 -r 0646c94f7b47 common-CMakeLists.txt
+--- a/common-CMakeLists.txt Thu Sep 01 03:20:54 2011 +0000
++++ b/common-CMakeLists.txt Thu Sep 01 03:21:20 2011 +0000
+@@ -128,8 +128,6 @@
+ # TODO but gcc on the Mac is at version 4.0 and this
+ # TODO option was added in some later version.
+
+-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wdeclaration-after-statement -Werror -Wstrict-prototypes")
+-
+ # the apple_unicode code violates the strict-aliasing rules
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-strict-aliasing")
+
diff --git a/dev-vcs/veracity/metadata.xml b/dev-vcs/veracity/metadata.xml
new file mode 100644
index 000000000000..175ca10ceb7b
--- /dev/null
+++ b/dev-vcs/veracity/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>no-herd</herd>
+ <maintainer>
+ <email>binki@gentoo.org</email>
+ <name>Nathan Phillip Brink</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-vcs/veracity/veracity-1.0.0.10517.ebuild b/dev-vcs/veracity/veracity-1.0.0.10517.ebuild
new file mode 100644
index 000000000000..17b4c616f8a6
--- /dev/null
+++ b/dev-vcs/veracity/veracity-1.0.0.10517.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-vcs/veracity/veracity-1.0.0.10517.ebuild,v 1.1 2011/09/12 05:08:05 binki Exp $
+
+EAPI=4
+
+inherit eutils cmake-utils
+
+JS_P=js-1.8.0-rc1
+
+DESCRIPTION="A modern and featureful DVCS (distributed version control system)"
+HOMEPAGE="http://veracity-scm.com/"
+SRC_URI="http://download.sourcegear.com/Veracity/release/${PV}/${PN}-source-${PV}.tar.gz
+
+ ftp://ftp.mozilla.org/pub/mozilla.org/js/${JS_P}.tar.gz
+ http://ftp.mozilla.org/pub/mozilla.org/js/${JS_P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="test"
+
+S=${WORKDIR}/${PN}
+
+# Tests fail in 1.0.0.10517.
+RESTRICT=test
+
+# Veracity can only use the API from spidermonkey-1.8.0 which isn't
+# available in gentoo-x86. It seems that spidermonkey needs to be
+# SLOTed... because Veracity needs differing amounts of nontrivial work
+# to support spidermonkey-1.8.2 or any newer spidermonkey.
+#
+# || ( >=dev-lang/spidermonkey-1.8[threadsafe] >=dev-lang/spidermonkey-1.8.5 )
+RDEPEND="
+ dev-libs/icu
+ net-misc/curl
+ dev-libs/nspr
+ sys-apps/util-linux
+ dev-db/sqlite:3
+ sys-libs/zlib"
+DEPEND="${RDEPEND}
+ >=dev-util/pkgconfig-0.25
+ test? ( app-arch/unzip )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-werror.patch
+ epatch "${FILESDIR}"/${P}-system-sqlite.patch
+ epatch "${FILESDIR}"/${P}-spidermonkey-as-needed.patch
+
+ rm -rf src/thirdparty || die
+
+ pushd "${WORKDIR}"/js || die
+ (
+ EPATCH_OPTS+=" -p8"
+ epatch "${S}"/thirdparty/patches/js-1.8.0-rc1__{jsapi.c,jscntxt.{c,h}}.patch
+ )
+}
+
+src_configure() {
+ # Convince cmake scripts that spidermonkey has been prepared.
+ mkdir -p thirdparty/{include/spidermonkey,lib} || die
+
+ local mycmakeargs=(
+ -DVVTHIRDPARTY="${S}"/thirdparty
+ -DSPIDERMONKEY_INCDIR="${S}"/thirdparty/include
+ -DSPIDERMONKEY_LIB="${S}"/thirdparty/lib/libjs.a
+ )
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ einfo "Compiling embedded spidermonkey (${JS_P})."
+ # Based on thirdparty/build_linux.sh.
+ emake -j1 \
+ -C "${WORKDIR}"/js/src \
+ JS_DIST=/usr \
+ JS_THREADSAFE=1 \
+ BUILD_OPT=1 \
+ -f Makefile.ref
+ cp "${WORKDIR}"/js/src/{*.{h,msg,tbl},Linux_All_OPT.OBJ/*.h} thirdparty/include/spidermonkey/ \
+ || die "Preparing embedded spidermonkey."
+ cp "${WORKDIR}"/js/src/Linux_All_OPT.OBJ/libjs.a thirdparty/lib/ \
+ || die "Preparing embedded spidermonkey."
+
+ einfo "Compiling ${P}."
+ cmake-utils_src_compile
+}