Add dev-vcs/veracity-1.0.0.10517, a young DVCS (requested by jdhore).
authorNathan Phillip Brink <binki@gentoo.org>
Mon, 12 Sep 2011 05:08:05 +0000 (05:08 +0000)
committerNathan Phillip Brink <binki@gentoo.org>
Mon, 12 Sep 2011 05:08:05 +0000 (05:08 +0000)
Package-Manager: portage-2.2.0_alpha50-r1/cvs/Linux x86_64

dev-vcs/veracity/ChangeLog [new file with mode: 0644]
dev-vcs/veracity/Manifest [new file with mode: 0644]
dev-vcs/veracity/files/veracity-1.0.0.10517-spidermonkey-as-needed.patch [new file with mode: 0644]
dev-vcs/veracity/files/veracity-1.0.0.10517-system-sqlite.patch [new file with mode: 0644]
dev-vcs/veracity/files/veracity-1.0.0.10517-werror.patch [new file with mode: 0644]
dev-vcs/veracity/metadata.xml [new file with mode: 0644]
dev-vcs/veracity/veracity-1.0.0.10517.ebuild [new file with mode: 0644]

diff --git a/dev-vcs/veracity/ChangeLog b/dev-vcs/veracity/ChangeLog
new file mode 100644 (file)
index 0000000..780122f
--- /dev/null
@@ -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/Manifest b/dev-vcs/veracity/Manifest
new file mode 100644 (file)
index 0000000..b701a8a
--- /dev/null
@@ -0,0 +1,28 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
+AUX veracity-1.0.0.10517-spidermonkey-as-needed.patch 1488 RMD160 7414d08c319517194caadc6eabac3ae6127d642e SHA1 c3590d1b26b84b5628d518ffdf62f7459f7380dc SHA256 ee15960c8fe675f04732a21b0ae8298f9232d2e86780bffb7c8d809a5ac486ab
+AUX veracity-1.0.0.10517-system-sqlite.patch 1860 RMD160 f17ca0976ddc188629fa220f7e6e6e838b67d25d SHA1 a5698eefbfa76abf1d27a60eb7428dee35f52a17 SHA256 8300c4edb8b9aef4882b5c65ef41846ea50e8e592a77f8a1ca9f83935bfb6adf
+AUX veracity-1.0.0.10517-werror.patch 814 RMD160 b3f32631c4d409479105150986325b7698587ad5 SHA1 070c6304e2faeec9f8de04a1524e96ce23cac7d8 SHA256 4714a7c02dcb1dcab5d83c5f5a8e0482993304961277b2bde27dab1e3a6d6d4c
+DIST js-1.8.0-rc1.tar.gz 1310344 RMD160 27c6cba1185d34cb9095d2da67393025bfe673ca SHA1 1577bd39a2ebd9f5e2ec90e72d9a6aa85f840564 SHA256 374398699ac3fd802d98d642486cf6b0edc082a119c9c9c499945a0bc73e3413
+DIST veracity-source-1.0.0.10517.tar.gz 5211043 RMD160 ba68d915bada6dceed08f567939b3375a7cdf185 SHA1 5f7f49defeeee83f64fb155eb24ac24f18b55d3a SHA256 2f9d1e3108229a85adff01d713abaea9eeaf873de5f651db60271efb7f517321
+EBUILD veracity-1.0.0.10517.ebuild 2439 RMD160 f76a8580aa0005bbe8c4d013242fcc0df64afc3b SHA1 693740ed10c69c58f8557f063c5d9ad6cf290ff1 SHA256 84ce6e2dd3bcf94d9faddbba1854a7cb5c70a52e7b60f60f2d5a295efa333d32
+MISC ChangeLog 571 RMD160 c699f26791ee564a41328e8296a2ee684a12fe1b SHA1 ac90c40d8693c032d29519c970c81b5bfb03f9e2 SHA256 ecf8c282fa563585b14fd19eb428bbc7469f3500ab8fa03c6380ef4c1b731f0f
+MISC metadata.xml 267 RMD160 8bc4278a9bf3c16942836b6004731ced2d58c99b SHA1 be8567c6a9f9e001f4c44eb16dcd99453880fe94 SHA256 84090db90f6a939686803ecef9d08cafdd06e38e6a98a9df909a8b2ab3905805
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.14 (GNU/Linux)
+
+iQIcBAEBCAAGBQJObZSGAAoJEHQ6UuhrqBBQi9EP/183ooAGOV8j9bwWV3+kWIKn
+LYJ1ZBDANKMUWQ+TTtUKnKjga+HEgo3qfTrR5PkaEiY0E78QmQ9gvwrQooYSCbxN
+3CBPpxzR3RHtpuIDLP4G45qYWfuIgnifJPkkc0mAHDEyyJG8htt0Aa0cMs9zl3cV
+CdXgGD4Di/60k/MKY3DSryKX1cenKBF7qYn2aKFE9TEjIitIr8uoPo4RimD4GWv/
+PoCFOIuo0LDQohTogH4mb2VcASXTLCf9hapEEbC/ueUjL+zW5v6rDRAEXr5ZQzGJ
+5vvvlH/7KY5Zbi17X5BtHUXB2N3jyQ5+9zS73glpeB2jPHE5wTrVtGuTOL8BLl5O
+n529Pg06cg4TRs+mSJ6Kkvagjpvs8L0mdvMdhibL84CfraXtWr7pg2N2R4ggxxT5
+4NpRyVryZyraGVbnaUHy8LuAzI4jaKrbxscW+MnD9+cReJFPhyzSEuJslO9dz3mD
+PNeNpQ4kp6kG8a3UbUlMSak8pBcMXwmncIFXr54K20p5nBX05uEREVOjtMOsVihK
+T8FzLKEt0H60qI96k18VLXCy7lMOVqon7bWa805VW73ZqbeVbircZWK0wRhQDPb1
+GDSTHBv40KGi9OmpVZQMswdr61w9B/uK2eT5opGOy/ozwyIRkI5idxFPaNOJKtfC
+ztDVL8Kh9AAr522u5162
+=wJID
+-----END PGP SIGNATURE-----
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 (file)
index 0000000..31964fe
--- /dev/null
@@ -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})\r
+ set(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${CURL_LIBRARIES})\r
\r
+-FIND_LIBRARY(NSPR_LIB NAMES nspr4 libnspr4)\r
+-set(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${NSPR_LIB})\r
+-MARK_AS_ADVANCED(NSPR_LIB)\r
+-\r
+ FIND_PACKAGE(PkgConfig REQUIRED)\r
+ PKG_CHECK_MODULES(SQLITE REQUIRED sqlite3)\r
+ SET(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${SQLITE_LDFLAGS})\r
+@@ -321,6 +317,10 @@
+ MARK_AS_ADVANCED(SPIDERMONKEY_LIB)\r
+ set(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${SPIDERMONKEY_LIB})\r
\r
++FIND_LIBRARY(NSPR_LIB NAMES nspr4 libnspr4)\r
++set(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${NSPR_LIB})\r
++MARK_AS_ADVANCED(NSPR_LIB)\r
++\r
+ SET(CMAKE_DATA_DIR "share/veracity" CACHE STRING "Install location for data (relative to prefix).")\r
+ SET(CMAKE_DOC_DIR "share/veracity" CACHE STRING "Install location for documentation (relative to prefix).")\r
+ SET(CMAKE_MAN_DIR "man" CACHE STRING "Install location for man pages (relative to prefix).")\r
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 (file)
index 0000000..5252dc0
--- /dev/null
@@ -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})\r
+ MARK_AS_ADVANCED(NSPR_LIB)\r
\r
++FIND_PACKAGE(PkgConfig REQUIRED)\r
++PKG_CHECK_MODULES(SQLITE REQUIRED sqlite3)\r
++SET(SG_THIRDPARTY_LIBRARIES ${SG_THIRDPARTY_LIBRARIES} ${SQLITE_LDFLAGS})\r
++SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SQLITE_CFLAGS}")\r
++\r
+ # Only look for libuuid on Linux.  OSX and Windows have this built in\r
+ IF("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")\r
+   FIND_PACKAGE(UUID REQUIRED)\r
+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)\r
+ endif () # WIN32 AND NOT CMAKE_COMPILER_IS_GNUCC\r
\r
+-add_subdirectory(thirdparty)\r
+-\r
+ INSTALL(\r
+       DIRECTORY server_files\r
+       DESTINATION "${Veracity_DATA_DEST}"\r
+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})\r
\r
+ add_library(sglib STATIC ${ALL_SOURCE})\r
+-target_link_libraries(sglib sghash sgtemplates sqlite3 ${SG_THIRDPARTY_LIBRARIES} ${SG_OS_LIBS})\r
++target_link_libraries(sglib sghash sgtemplates ${SG_THIRDPARTY_LIBRARIES} ${SG_OS_LIBS})\r
\r
+ set_target_properties(sglib PROPERTIES FOLDER "Libraries")\r
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 (file)
index 0000000..7e622a7
--- /dev/null
@@ -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\r
+ # TODO option was added in some later version.\r
\r
+-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -Wdeclaration-after-statement -Werror -Wstrict-prototypes")\r
+-\r
+ # the apple_unicode code violates the strict-aliasing rules\r
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fno-strict-aliasing")\r
\r
diff --git a/dev-vcs/veracity/metadata.xml b/dev-vcs/veracity/metadata.xml
new file mode 100644 (file)
index 0000000..175ca10
--- /dev/null
@@ -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 (file)
index 0000000..17b4c61
--- /dev/null
@@ -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
+}