summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Schultz <mattsch@gmail.com>2014-07-14 14:57:50 -0500
committerMatthew Schultz <mattsch@gmail.com>2014-07-14 14:57:50 -0500
commitb4f49cfd5d642918f17eadf7fe69b518375b9e3d (patch)
tree7d5dd776b50d7a89d54acf4b507bd0699590ea26 /dev-libs
parentmedia-libs/fontconfig-ultimate: Remove live ebuild. Breaks often without warn... (diff)
downloadsunrise-reviewed-b4f49cfd5d642918f17eadf7fe69b518375b9e3d.tar.gz
sunrise-reviewed-b4f49cfd5d642918f17eadf7fe69b518375b9e3d.tar.bz2
sunrise-reviewed-b4f49cfd5d642918f17eadf7fe69b518375b9e3d.zip
dev-libs/librets: Bumped version. Patched the build system for ruby 2.0 support and removed ruby 1.8 as well as python 2.6 support since they're no longer in the tree. Added support for python 3.2 and 3.3.
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/librets/Manifest12
-rw-r--r--dev-libs/librets/files/librets-1.5.3-boost.patch68
-rw-r--r--dev-libs/librets/files/librets-1.5.3-build.patch106
-rw-r--r--dev-libs/librets/files/librets-1.5.3-curl.patch17
-rw-r--r--dev-libs/librets/files/librets-1.5.3-extconf.rb.patch18
-rw-r--r--dev-libs/librets/files/librets-1.6.1-extconf.rb.patch19
-rw-r--r--dev-libs/librets/files/librets-1.6.1-fix-php-build-errors.patch77
-rw-r--r--dev-libs/librets/files/librets-1.6.1-java.mk.patch (renamed from dev-libs/librets/files/librets-1.5.3-java.mk.patch)0
-rw-r--r--dev-libs/librets/librets-1.6.1.ebuild (renamed from dev-libs/librets/librets-1.5.3-r3.ebuild)61
9 files changed, 146 insertions, 232 deletions
diff --git a/dev-libs/librets/Manifest b/dev-libs/librets/Manifest
index 3f8a128eb..744c95942 100644
--- a/dev-libs/librets/Manifest
+++ b/dev-libs/librets/Manifest
@@ -1,10 +1,8 @@
-AUX librets-1.5.3-boost.patch 2060 SHA256 fb4697cc76e035d68f315be1fbd8ae1b6aff63b73744485b5da15ed47345c2b3 SHA512 d5a8052cacf6d1b43e213f8effcd8bedd33be98dbfc0512057d23708c4c6577681159a61f8ec3c76d187182fa5260334fbe75475aea883cab614d0416eb22c2c WHIRLPOOL 941a27db2defa3020d353dbe34405caf129582636492179cebd3535df4a22ac2b5b33eae891ad4b1da8e5a5bfa7d25e48329001d5be8cf1b23bbe4ece7be81bb
-AUX librets-1.5.3-build.patch 4296 SHA256 9b82f3f3e00ac015f20aab181f023cc73bdfbcea66d9e3189d6e8012a6edf3e0 SHA512 1c425c61f780989747f0f9cee14fccd83c32b2805858f3640eb42191d13595ca04552445c362e1f7b6e31653bd6a69e97f7d42327d00c6f32def819d13fc4559 WHIRLPOOL f6743795af35df333d20945f6232e01f3e0990a2134d249d3114c393b39c4abe9582752f9d626fb38253505f280744e551f4ad75b53929ad2c78a7375479fa31
-AUX librets-1.5.3-curl.patch 740 SHA256 f40a24265fc94af4d883ba0d80a91df1f22c16ee8c6c0e2fa0d2ba1f208b87b9 SHA512 8cd17e39473b3dc74e3d187e7de6d520596b6970e31916fea8a050550b026e10e0df730e01b24b483f943af8b43384be2f66d46bd40767cdea91a9a4543eb09f WHIRLPOOL d57ed24d939268c02ddf39995c2dd60064fb386e2951757bc2ea01367ebf427c8d0ecfc20ecce82df5545a6ae2b570f87a80e05decb9d43d4de9ac6ffe846de6
-AUX librets-1.5.3-extconf.rb.patch 874 SHA256 f06f46d826e87cd6f905d76c021b49e0983b31a696df0e4fc6805524f5dfffa9 SHA512 724852d96ea9d2b6af69201767dd8e7d5d859d8d7afdefd7945d3ac99303360bd14b3ee2339d967366bc6838294da7c228844137e02b49872cbdb41d9ac3895d WHIRLPOOL 06b654af7a9d5571d9fd6be39ae30dfc7b7d3f89a8709c02555f56da308b8f937cd24b76228ad8c35ce6e850b4066979420a2081ecfdb1c263cbaebdfc5cacd2
-AUX librets-1.5.3-java.mk.patch 620 SHA256 1e18e6bf3c4b1cf3fc41ede276ee7f344fae0ee39a9e5683ab95df8926573adf SHA512 8ee91e24567034b44fa88e04026c50f3f91ec7849f604b03d6e2bf3d013200eb62f08ab2ebd4a6bb4a6c8ee52841ee8f40b3995cc47efa2462a91103d29e0127 WHIRLPOOL 62f3b4e779045c05bd1d81e3f0584cae76d8fa506a7f1f920b1df285a7671d507861dbaa4a649ecd9b742ee057db8fd7f326df9c6e5991adc0cd91b86c96e81e
+AUX librets-1.6.1-extconf.rb.patch 1064 SHA256 097a42eeb9f89865536c51a35cf1deed4df64f2144ffe21c15b03e6132708bf3 SHA512 cefc5bd953c3c4e36bb9899e0b828e069c624d14c9d8c93b75b04539f4e05e88cbbaa8e4b8557f7caa15dbca710241d473ed2ae64c622c645831e4b5137e5561 WHIRLPOOL 2171be43d5b08412e5f7603fa78f96632fccf0c1bc98dce26d6d7cd42ee1bdd68a2df9570093550a159042f7ae7df16e90bcd7b8c7a774c5a1b31f2b85b13b80
+AUX librets-1.6.1-fix-php-build-errors.patch 3062 SHA256 81a354bbc7c5556332e6511eed061c04d99376acf89029069c8aa6cddfe2b887 SHA512 2c08f8ea9c2f1fc4577e60278eb9e331688eaeee2d315ea5ce7488ce99f54f9c023bce1a0fd799cf961499e93aa19d43892fa80dc919cbf422672b29c1f879a7 WHIRLPOOL 308270a2999a5b74ec0c28b48b42c21c7b9d246bbdbaa9e2b27cf59a6f675d0abc1e1b3e715f19f169a9dec93c80348f720a00f0be6f1cc8cec3df842f06c85b
+AUX librets-1.6.1-java.mk.patch 620 SHA256 1e18e6bf3c4b1cf3fc41ede276ee7f344fae0ee39a9e5683ab95df8926573adf SHA512 8ee91e24567034b44fa88e04026c50f3f91ec7849f604b03d6e2bf3d013200eb62f08ab2ebd4a6bb4a6c8ee52841ee8f40b3995cc47efa2462a91103d29e0127 WHIRLPOOL 62f3b4e779045c05bd1d81e3f0584cae76d8fa506a7f1f920b1df285a7671d507861dbaa4a649ecd9b742ee057db8fd7f326df9c6e5991adc0cd91b86c96e81e
AUX librets.snk 596 SHA256 6bf3c8c92df3bda29091d32608e402132516553b1591c9665f234305ed4f6d6f SHA512 6f3e9eecf17c30c0649e262d99d663c6604ded3bc51f2488b5518f710addc767cb0a045d944e386ad01054f2da101c014982950bca3d951d9eff3d50591b5b07 WHIRLPOOL fb319f74336e0058c5dfc7d8e819fc042a4673b5409b9bebcdb5c431be4e06498f876f874cd884d3108b030e33a53f6840ea4335158188d6f12fdd9cbee25a49
-DIST librets-1.5.3.tar.gz 1442794 SHA256 d878b9dad7e31edfb560a786f2d23f37b67af42a96bc4848049e5b9083b9648a SHA512 035477f7ca8dbada97ab6729dc93637006714c407368f750ff5529f5ac01e6d1c7d99a385344f065eab939d338aa6a8cffefc1b72d56dc40228c45877afdbe14 WHIRLPOOL 39ac2910a33330b84695571fcbda9c2bc9bc5fdf75425f4bee72981419eb83623dea8e38d980ecd73b549dd1593be1c56033a0c18c491add55bf2fa57fc970a4
-EBUILD librets-1.5.3-r3.ebuild 8167 SHA256 6eacf2b1b39595549a2ba55b07d302e362c5f917d32b2620c9d57947f8791c2a SHA512 500a5b5280c90156c2e60110b53a84e84b92f9909972928d6991bd97c27b29a14acf391dc5a5fe7b8dbf61150d6e51b18def23f577ca17b452e4b3b55974e3e0 WHIRLPOOL 3864ba226ed1950420cbe384beb72a2b0f97438b006d3dbab4234d336dd59d9a66f18c49bd9134dc8740195a284cb52cf03e25cbe1769605e1c77fae3c11c3f1
+DIST librets-1.6.1.tar.gz 1394134 SHA256 1d0cf82d8553266f6ff7246209c4d177bddacb2496800c3414eb4a5e56cb47a0 SHA512 6e24becdd9f14e0a4da7b2cf7aceac34185af26b8af5e828dfacfe3a6ebf94111978b5dcf515263822e6865e18bb1759807895aa5034d49a9ac25cb5f55b952b WHIRLPOOL 73601d40f863f78ede43d890e7ef759cb8df179c464765bf8b502fa85772173e75b0b64bbe6de53b4a1900e10c4fa9437e031da4aa313e735c0ded4cca553e81
+EBUILD librets-1.6.1.ebuild 9386 SHA256 5e0c31e0c99ecf02a21543f82f522fe0bdc4c2026a42b1b6217abf613efc5011 SHA512 1050593fc39a9b439abe6bb3f2b5206d93158f20949c7e11e0fba6257c4b482e922a83136b33157d58fa63514cd0499b661a18cb0bf86da3316a7caafffb2b12 WHIRLPOOL 9acc8608845cae702964f864666a392c4d90de90a386bdcdef229dcd474312fcaffafb47772afe3f4a0e12c170b4f2c00f1cf57db6e08575e936baa070e29206
MISC ChangeLog 4106 SHA256 b01165124a1c0f6272c8841f8d81cf44042c6ec0a55c44b6681c71a7435fade2 SHA512 a9029ff84ea7aa40dbc1754e340408a2decf5d47a39a4a00cfea07b7d5f65a4ffac49fa312382f7f7921ecb047d6e08ee81c0720d93cee9cf01473a6b705b4a2 WHIRLPOOL 7a13763be4148eefb169bf2171ff1ec0f13c2fe77e5259f61b434ae5524dee77e3b1ff1ddc1ff3100ee308e3f93db4d032598c2392639a7547801f0457541338
MISC metadata.xml 774 SHA256 5b2aeaf3434f0c6ca946cb530fc822c8d54abde507e47eee513c473680126ffa SHA512 e0330367997c697881dd10980ad7b2b41700e65ad1cf8ddfc3fd879d933da3e3cfde676e35b645fb86550a32ec02702bc9a007c816446e7b1fbc3cd47fe0734c WHIRLPOOL f61f90404603e1162ce2917e641c1e66a566e10fef02c0e46e63f5210a50c0d8ce6ef438551ef5160b5037537456dc019260e3f3a16b5aae5bfccd1d5699436a
diff --git a/dev-libs/librets/files/librets-1.5.3-boost.patch b/dev-libs/librets/files/librets-1.5.3-boost.patch
deleted file mode 100644
index 8e357dc14..000000000
--- a/dev-libs/librets/files/librets-1.5.3-boost.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-Fixes boost filesystem version detection error when compiling
-
-Index: project/librets/include/librets/RetsExceptionContext.h
-===================================================================
---- project/librets/include/librets/RetsExceptionContext.h (revision 1552)
-+++ project/librets/include/librets/RetsExceptionContext.h (revision 1553)
-@@ -22,6 +22,7 @@
- */
- /// @cond MAINTAINER
- #include <string>
-+#include <boost/filesystem/path.hpp>
-
- namespace librets {
- /**
-@@ -36,12 +37,12 @@
-
- bool IsValid() const throw();
-
-- std::string GetFileName() const throw();
-+ boost::filesystem::path GetFileName() const throw();
-
- int GetLineNumber() const throw();
-
- private:
-- std::string mFileName;
-+ boost::filesystem::path mFileName;
- int mLineNumber;
- };
-
-Index: project/librets/src/RetsExceptionContext.cpp
-===================================================================
---- project/librets/src/RetsExceptionContext.cpp (revision 1552)
-+++ project/librets/src/RetsExceptionContext.cpp (revision 1553)
-@@ -14,14 +14,12 @@
- * both the above copyright notice(s) and this permission notice
- * appear in supporting documentation.
- */
--#define BOOST_FILESYSTEM_VERSION 2
- #include <boost/filesystem/path.hpp>
- #include "librets/RetsExceptionContext.h"
-
- using namespace librets;
- using namespace std;
-
--#undef BOOST_FILESYSTEM_VERSION
- #define BOOST_FILESYSTEM_VERSION 3
- namespace fs = boost::filesystem;
-
-@@ -43,7 +41,7 @@
- return (!mFileName.empty());
- }
-
--string RetsExceptionContext::GetFileName() const throw()
-+fs::path RetsExceptionContext::GetFileName() const throw()
- {
- return mFileName;
- }
-Index: project/librets/src/RetsReplyException.cpp
-===================================================================
---- project/librets/src/RetsReplyException.cpp (revision 1552)
-+++ project/librets/src/RetsReplyException.cpp (revision 1553)
-@@ -52,4 +52,4 @@
- string RetsReplyException::GetExtendedMeaning() const throw()
- {
- return mExtendedMeaning;
--}
-\ No newline at end of file
-+}
diff --git a/dev-libs/librets/files/librets-1.5.3-build.patch b/dev-libs/librets/files/librets-1.5.3-build.patch
deleted file mode 100644
index 0069ee4b4..000000000
--- a/dev-libs/librets/files/librets-1.5.3-build.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-Add missing LDFLAGS and change CFLAGS to CXXFLAGS
-
---- librets-1.5.3/project/build/java.mk
-+++ librets-1.5.3/project/build/java.mk
-@@ -46,7 +46,7 @@
- ${JAVA_DYNAMICLINK} -o ${JAVA_DLL} ${JAVA_OBJ_DIR}/librets_wrap.o ${SWIG_LIBRETS_LIBS} ${SWIG_BRIDGE_OBJ}
-
- ${JAVA_OBJ_DIR}/librets_wrap.o: ${JAVA_OBJ_DIR}/librets_wrap.cpp
-- ${CXX} ${JAVA_CXX_FLAGS} -I${LIBRETS_INC_DIR} -I${SWIG_DIR} ${BOOST_CFLAGS} ${JAVA_INCLUDES} -c $< -o $@
-+ ${CXX} ${CXXFLAGS} ${JAVA_CXX_FLAGS} -I${LIBRETS_INC_DIR} -I${SWIG_DIR} ${BOOST_CFLAGS} ${JAVA_INCLUDES} -c $< -o $@
-
-
- ifneq (${SWIG_OSNAME}, MSWin32)
---- librets-1.5.3/project/build/rules.mk
-+++ librets-1.5.3/project/build/rules.mk
-@@ -3,7 +3,7 @@
- SRC_TGZ = librets-$(VERSION).tar.gz
- SRC_ZIP = librets-$(VERSION).zip
-
--CFLAGS += $(TARGET_CFLAGS) -DLIBRETS_VERSION='"$(VERSION)"'
-+CPPFLAGS += $(TARGET_CFLAGS) -DLIBRETS_VERSION='"$(VERSION)"'
-
- LIBRETS_LDFLAGS = $(BOOST_LIBS) $(BOOST_FILESYSTEM) $(BOOST_SYSTEM) \
- $(BOOST_THREAD) $(CURL_LDFLAGS) $(EXPAT_LDFLAGS) $(ANTLR_LDFLAGS)
---- librets-1.5.3/project/build/swig.mk
-+++ librets-1.5.3/project/build/swig.mk
-@@ -13,13 +13,13 @@
- SWIG_OBJ_DIR = ${BUILD}/swig
- SWIG_OSNAME = $(shell perl -e 'use Config; print $$Config{osname};')
-
--SWIG_BRIDGE_CFLAGS = `${SWIG_LIBRETS_CONFIG} --cflags` ${CFLAGS}
-+SWIG_BRIDGE_CFLAGS = `${SWIG_LIBRETS_CONFIG} --cflags` ${CXXFLAGS}
- SWIG_BRIDGE_H = ${SWIG_DIR}/librets_bridge.h
- SWIG_BRIDGE_SRC = ${SWIG_DIR}/librets_bridge.cpp
- SWIG_BRIDGE_OBJ = ${SWIG_OBJ_DIR}/librets_bridge.o
-
- DLL = so
--SWIG_LINK = ${CXX} -shared
-+SWIG_LINK = ${CXX} ${LDFLAGS} -shared
-
- ifeq (${SWIG_OSNAME}, darwin)
- SWIG_LINK = ${CXX} -bundle -undefined suppress -flat_namespace
---- librets-1.5.3/project/build/sources.mk
-+++ librets-1.5.3/project/build/sources.mk
-@@ -37,7 +37,7 @@
- LookupTreeParser.cpp LookupColumnsTreeParser.cpp)
- LIBRETS_ANTLR_OBJECTS := $(LIBRETS_ANTLR_SRC_FILES:.cpp=.o)
- LIBRETS_ANTLR_DEPENDS := $(LIBRETS_ANTLR_SRC_FILES:.cpp=.d)
--LIBRETS_ANTLR_CFLAGS = $(CFLAGS) $(CPPFLAGS) $(BOOST_CFLAGS) $(ARCH_CFLAGS)
-+LIBRETS_ANTLR_CFLAGS = $(CXXFLAGS) $(CPPFLAGS) $(BOOST_CFLAGS) $(ARCH_CFLAGS)
-
- ANTLR_FLAGS = -o $(LIBRETS_ANTLR_SRC_DIR)
- ANTLR_TREE_FLAGS = $(ANTLR_FLAGS) -glib $(LIBRETS_ANTLR_PARSER)
-@@ -68,7 +68,7 @@
-
- #####
-
--LIBRETS_CFLAGS = $(CFLAGS) $(CPPFLAGS) $(CURL_CFLAGS) $(EXPAT_CFLAGS) \
-+LIBRETS_CFLAGS = $(CXXFLAGS) $(CPPFLAGS) $(CURL_CFLAGS) $(EXPAT_CFLAGS) \
- ${LIBRETS_THREAD_FLAGS} $(BOOST_CFLAGS) -I$(LIBRETS_INC_DIR)
-
- ifeq ($(USE_SQL_COMPILER),1)
---- librets-1.5.3/configure.ac
-+++ librets-1.5.3/configure.ac
-@@ -158,6 +158,7 @@
-
- if test "$my_use_pic" = "yes"; then
- CFLAGS="$CFLAGS -fPIC"
-+ CXXFLAGS="$CXXFLAGS -fPIC"
- LIBRETS_CFLAGS="$LIBRETS_CFLAGS -fPIC"
- fi
-
---- librets-1.5.3/Makefile.in
-+++ librets-1.5.3/Makefile.in
-@@ -23,6 +23,7 @@
- CC=@CC@
- CXX=@CXX@
- CFLAGS=@CFLAGS@ @DEFS@
-+CXXFLAGS=@CXXFLAGS@ @DEFS@
- CPPFLAGS=@CPPFLAGS@
- LIBS=@LIBS@
- LDFLAGS=@LDFLAGS@
---- librets-1.5.3/project/build/php.mk
-+++ librets-1.5.3/project/build/php.mk
-@@ -21,5 +21,5 @@
- ${SWIG_LINK} -o ${PHP_DLL} ${PHP_OBJ_DIR}/librets_wrap.o ${SWIG_LIBRETS_LIBS} ${SWIG_BRIDGE_OBJ}
-
- ${PHP_OBJ_DIR}/librets_wrap.o: ${PHP_OBJ_DIR}/librets_wrap.cpp
-- ${CXX} ${PHP_CXX_FLAGS} -g -DLIBRETS_VERSION='"$(VERSION)"' -I${LIBRETS_INC_DIR} -I${PHP_SRC_DIR} \
-+ ${CXX} ${CXXFLAGS} ${PHP_CXX_FLAGS} -DLIBRETS_VERSION='"$(VERSION)"' -I${LIBRETS_INC_DIR} -I${PHP_SRC_DIR} \
- -I${SWIG_DIR} ${BOOST_CFLAGS} ${PHP_INCLUDES} -c $< -o $@
---- librets-1.5.3/project/build/dotnet.mk
-+++ librets-1.5.3/project/build/dotnet.mk
-@@ -83,10 +83,10 @@
- ${SWIG_LINK} -o ${DOTNET_UNMANAGED_DLL} ${DOTNET_UNMANAGED_OBJ} ${SWIG_LIBRETS_LIBS}
-
- ${DOTNET_OBJ_DIR}/%.o: ${DOTNET_OBJ_DIR}/%.cpp
-- ${CXX} ${DOTNET_CXX_FLAGS} -I${LIBRETS_INC_DIR} -I${DOTNET_OBJ_DIR} -I${DOTNET_DIR} -I${SWIG_DIR} -c $< -o $@
-+ ${CXX} ${CXXFLAGS} ${DOTNET_CXX_FLAGS} -I${LIBRETS_INC_DIR} -I${DOTNET_OBJ_DIR} -I${DOTNET_DIR} -I${SWIG_DIR} -c $< -o $@
-
- ${DOTNET_OBJ_DIR}/%.o: ${DOTNET_DIR}/%.cpp
-- ${CXX} ${DOTNET_CXX_FLAGS} -I${LIBRETS_INC_DIR} -I${DOTNET_OBJ_DIR} -I${DOTNET_DIR} -I${SWIG_DIR} -c $< -o $@
-+ ${CXX} ${CXXFLAGS} ${DOTNET_CXX_FLAGS} -I${LIBRETS_INC_DIR} -I${DOTNET_OBJ_DIR} -I${DOTNET_DIR} -I${SWIG_DIR} -c $< -o $@
-
- ifneq (${SWIG_OSNAME}, MSWin32)
- ########
diff --git a/dev-libs/librets/files/librets-1.5.3-curl.patch b/dev-libs/librets/files/librets-1.5.3-curl.patch
deleted file mode 100644
index 05e52b16e..000000000
--- a/dev-libs/librets/files/librets-1.5.3-curl.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Fixes bug: Could not Verify SSL Host: curl error #43
-
-Index: project/librets/src/CurlEasy.cpp
-===================================================================
---- project/librets/src/CurlEasy.cpp (revision 1308)
-+++ project/librets/src/CurlEasy.cpp (revision 1556)
-@@ -209,8 +209,8 @@
- if (verify)
- verifies = 2;
-
-- CurlAssert(curl_easy_setopt(mCurl, CURLOPT_SSL_VERIFYPEER, verify), "Verify SSL Peer");
-- CurlAssert(curl_easy_setopt(mCurl, CURLOPT_SSL_VERIFYHOST, verify), "Verify SSL Host");
-+ CurlAssert(curl_easy_setopt(mCurl, CURLOPT_SSL_VERIFYPEER, verifies), "Verify SSL Peer");
-+ CurlAssert(curl_easy_setopt(mCurl, CURLOPT_SSL_VERIFYHOST, verifies), "Verify SSL Host");
- }
-
- void CurlEasy::Perform()
diff --git a/dev-libs/librets/files/librets-1.5.3-extconf.rb.patch b/dev-libs/librets/files/librets-1.5.3-extconf.rb.patch
deleted file mode 100644
index 2901e2e9e..000000000
--- a/dev-libs/librets/files/librets-1.5.3-extconf.rb.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Upstream patch to allow the ruby extension to compile when multiple versions of boost are installed
-
-Index: project/swig/ruby/extconf.rb
-===================================================================
---- project/swig/ruby/extconf.rb (revision 1547)
-+++ project/swig/ruby/extconf.rb (revision 1549)
-@@ -60,6 +60,11 @@
- create_makefile('librets_native')
-
- orig_makefile = IO::read("Makefile")
-+if RUBY_PLATFORM =~ /linux/
-+ # Make sure the proper version boost libraries are detected first by changing ruby's create_makefile library declaration order
-+ orig_makefile.gsub!(/LIBS = \$\(LIBRUBYARG_SHARED\)(.+)/, "LIBS = \\1 \$\(LIBRUBYARG_SHARED\)");
-+ orig_makefile.gsub!(/(-o \$@ \$\(OBJS\))( \$\(LIBPATH\) \$\(DLDFLAGS\) \$\(LOCAL_LIBS\))( \$\(LIBS\))/, "\\1\\3\\2")
-+end
- File.open("Makefile", "w") do |mfile|
- mfile << makefile_prefix
- mfile << orig_makefile
diff --git a/dev-libs/librets/files/librets-1.6.1-extconf.rb.patch b/dev-libs/librets/files/librets-1.6.1-extconf.rb.patch
new file mode 100644
index 000000000..dbafc6220
--- /dev/null
+++ b/dev-libs/librets/files/librets-1.6.1-extconf.rb.patch
@@ -0,0 +1,19 @@
+commit 98dfabee1c528dd22d82d47f7c3397fb7096b91d
+Author: Matthew Schultz <mattsch@gmail.com>
+Date: Tue May 27 10:03:34 2014 -0500
+
+ Fixed compilation with ruby 2.0 by properly including the CFLAGS in CXXFLAGS.
+
+diff --git a/project/swig/ruby/extconf.rb b/project/swig/ruby/extconf.rb
+index 494caa9..68e2920 100644
+--- a/project/swig/ruby/extconf.rb
++++ b/project/swig/ruby/extconf.rb
+@@ -64,6 +64,8 @@ if RUBY_PLATFORM =~ /linux/
+ # Make sure the proper version boost libraries are detected first by changing ruby's create_makefile library declaration order
+ orig_makefile.gsub!(/LIBS = \$\(LIBRUBYARG_SHARED\)(.+)/, "LIBS = \\1 \$\(LIBRUBYARG_SHARED\)");
+ orig_makefile.gsub!(/(-o \$@ \$\(OBJS\))( \$\(LIBPATH\) \$\(DLDFLAGS\) \$\(LOCAL_LIBS\))( \$\(LIBS\))/, "\\1\\3\\2")
++ # Ruby 2.0 improperly generates CXXFLAGS without including CFLAGS which causes compilation to fail due to missing librets.h
++ orig_makefile.gsub!(/CXXFLAGS = \$\(CCDLFLAGS\)/, "CXXFLAGS = \$\(CFLAGS\)");
+ end
+ File.open("Makefile", "w") do |mfile|
+ mfile << makefile_prefix
diff --git a/dev-libs/librets/files/librets-1.6.1-fix-php-build-errors.patch b/dev-libs/librets/files/librets-1.6.1-fix-php-build-errors.patch
new file mode 100644
index 000000000..0d63bc962
--- /dev/null
+++ b/dev-libs/librets/files/librets-1.6.1-fix-php-build-errors.patch
@@ -0,0 +1,77 @@
+commit 59e5e7af0e2c19ae2461e3eb071c2344629b8543
+Author: Keith T. Garner <kgarner@realtors.org>
+Date: Wed Apr 9 11:20:17 2014 -0500
+
+ Rewrote the php configure test to use php-config.
+
+diff --git a/project/build/ac-macros/swig.m4 b/project/build/ac-macros/swig.m4
+index 4280d55..c267dc2 100644
+--- a/project/build/ac-macros/swig.m4
++++ b/project/build/ac-macros/swig.m4
+@@ -168,25 +168,21 @@ EOF
+ dnl Check to see if we can build for php
+ dnl
+ if test "$my_use_php" = "yes"; then
+- AC_CHECK_PROG(PHP, php, php, no)
+- if test "$PHP" != "no"; then
+- for php_prefix in $default_search_path
+- do
+- php_h="$php_prefix/php/main/php.h"
+- zend_h="$php_prefix/php/Zend/zend.h"
+- AC_CHECK_FILE([$php_h], [my_php_h=$php_h])
+- AC_CHECK_FILE([$zend_h], [my_zend_h=$zend_h])
+- test -n "$my_php_h" && break
+- test -n "$my_zend_h" && break
+- done
++ AC_CHECK_PROG(PHPCONFIG, php-config, php-config, no)
++ if test "$PHPCONFIG" != "no"; then
++ php_inc=`php-config --include-dir`
++ php_h="$php_inc/main/php.h"
++ zend_h="$php_inc/Zend/zend.h"
++ AC_CHECK_FILE([$php_h], [my_php_h=$php_h])
++ AC_CHECK_FILE([$zend_h], [my_zend_h=$zend_h])
+ if test -n "$my_php_h"; then
+ if test -n "$my_zend_h"; then
+ HAVE_PHP=1
+ my_have_php=yes
+ fi
+- fi
++ fi
+ fi
+- fi
++ fi
+
+ dnl
+ dnl Check to see if we can build for python3
+
+commit fc3df0736cbea41b661979f91a400f12b397d02a
+Author: Keith T. Garner <kgarner@realtors.org>
+Date: Wed Apr 9 18:04:38 2014 -0500
+
+ Allow php to link with undefines as its a plugin and that's expected
+
+diff --git a/project/build/php.mk b/project/build/php.mk
+index e031492..5b318cd 100644
+--- a/project/build/php.mk
++++ b/project/build/php.mk
+@@ -18,7 +18,7 @@ ${PHP_WRAP}: ${SWIG_FILES}
+ -outdir ${PHP_OBJ_DIR} ${SWIG_DIR}/librets.i
+
+ ${PHP_DLL}: ${PHP_WRAP} ${PHP_OBJ_DIR}/librets_wrap.o ${SWIG_BRIDGE_OBJ} ${LIBRETS_LIB}
+- ${SWIG_LINK} -o ${PHP_DLL} ${PHP_OBJ_DIR}/librets_wrap.o ${SWIG_LIBRETS_LIBS} ${SWIG_BRIDGE_OBJ}
++ ${SWIG_LINK_UNDEFINED} -o ${PHP_DLL} ${PHP_OBJ_DIR}/librets_wrap.o ${SWIG_LIBRETS_LIBS} ${SWIG_BRIDGE_OBJ}
+
+ ${PHP_OBJ_DIR}/librets_wrap.o: ${PHP_OBJ_DIR}/librets_wrap.cpp
+ ${CXX} ${CXXFLAGS} ${PHP_CXX_FLAGS} -g -DLIBRETS_VERSION='"$(VERSION)"' -I${LIBRETS_INC_DIR} -I${PHP_SRC_DIR} \
+diff --git a/project/build/swig.mk b/project/build/swig.mk
+index 4dfa1fa..c853f3e 100644
+--- a/project/build/swig.mk
++++ b/project/build/swig.mk
+@@ -20,6 +20,7 @@ SWIG_BRIDGE_OBJ = ${SWIG_OBJ_DIR}/librets_bridge.o
+
+ DLL = so
+ SWIG_LINK = ${CXX} ${LDFLAGS} -shared -Wl,--no-undefined
++SWIG_LINK_UNDEFINED = ${CXX} ${LDFLAGS} -shared
+
+ ifeq (${SWIG_OSNAME}, darwin)
+ SWIG_LINK = ${CXX} -bundle -undefined suppress -flat_namespace
diff --git a/dev-libs/librets/files/librets-1.5.3-java.mk.patch b/dev-libs/librets/files/librets-1.6.1-java.mk.patch
index a724e29b1..a724e29b1 100644
--- a/dev-libs/librets/files/librets-1.5.3-java.mk.patch
+++ b/dev-libs/librets/files/librets-1.6.1-java.mk.patch
diff --git a/dev-libs/librets/librets-1.5.3-r3.ebuild b/dev-libs/librets/librets-1.6.1.ebuild
index 4e2c15f1f..02b27ae8a 100644
--- a/dev-libs/librets/librets-1.5.3-r3.ebuild
+++ b/dev-libs/librets/librets-1.6.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
@@ -9,9 +9,9 @@ PHP_EXT_NAME="librets"
PHP_EXT_SKIP_PHPIZE="yes"
USE_PHP="php5-3 php5-4 php5-5"
-PYTHON_COMPAT=( python2_{6,7} )
+PYTHON_COMPAT=( python2_7 python3_{2,3} )
-USE_RUBY="ruby18 ruby19"
+USE_RUBY="ruby19 ruby20"
RUBY_OPTIONAL="yes"
inherit autotools eutils java-pkg-opt-2 mono-env perl-module php-ext-source-r2 python-r1 ruby-ng toolchain-funcs
@@ -25,7 +25,8 @@ SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="doc java mono perl php python ruby sql-compiler threads"
# Enabling thread safety for perl, php, python or ruby causes segmentation faults in cli scripts but not through apache
-REQUIRED_USE="perl? ( !threads )
+REQUIRED_USE="mono? ( sql-compiler )
+ perl? ( !threads )
php? ( !threads )
python? ( !threads )
ruby? ( !threads )"
@@ -52,8 +53,8 @@ DEPEND="java? ( >=dev-lang/swig-1.3.40-r1 )
mono? ( >=dev-lang/swig-1.3.40-r1 )
php? ( dev-lang/php[-threads] >=dev-lang/swig-1.3.40-r1 )
python? ( >=dev-lang/swig-1.3.40-r1 )
- ruby_targets_ruby18? ( >=dev-lang/swig-1.3.40-r1 )
ruby_targets_ruby19? ( >=dev-lang/swig-2.0.4-r1 )
+ ruby_targets_ruby20? ( >=dev-lang/swig-2.0.4-r1 )
${RDEPEND}"
# Reset to the default $S since ruby-ng overrides it
@@ -91,6 +92,15 @@ my_ruby-move_swig_build_to_impl_dir() {
mv build/swig/ruby/* "${1}"/${P} || die "Could not move ruby implementation build"
}
+my_python3-move_swig_build_to_impl_dir() {
+ # Only move if something there are files in the python3 directory
+ if [ "$(ls -A build/swig/python3)" ]; then
+ mkdir -p build/swig/"${1}" || die "Could not create directory for python3 implementation"
+ cp -R build/swig/python3/* build/swig/"${1}" || die "Could not move python3 implementation build"
+ rm -r build/swig/python3/build || die "Could not remove python3 build"
+ fi
+}
+
pkg_setup() {
use java && java-pkg-opt-2_pkg_setup
use mono && mono-env_pkg_setup
@@ -104,17 +114,17 @@ src_unpack() {
}
src_prepare() {
- epatch "${FILESDIR}"/${P}-extconf.rb.patch \
- "${FILESDIR}"/${P}-java.mk.patch \
- "${FILESDIR}"/${P}-build.patch \
- "${FILESDIR}"/${P}-curl.patch \
- "${FILESDIR}"/${P}-boost.patch
+ epatch "${FILESDIR}"/${P}-fix-php-build-errors.patch \
+ "${FILESDIR}"/${P}-extconf.rb.patch \
+ "${FILESDIR}"/${P}-java.mk.patch
epatch_user
eautoreconf
- # Change the path to librets-config-inplace for python slotted build support
if use python; then
- sed -i -e "s|../../..|${S}|" project/swig/python/setup.py || die
+ # Change the path to librets-config-inplace for python slotted build support
+ sed -i -e "s|../../..|${S}|" project/swig/python/setup.py project/swig/python3/setup.py || die
+ # Remove the build-lib path for python slotted build support
+ sed -i -e "s| --build-lib=.||" project/build/python3.mk || die
fi
use php && php-ext-source-r2_src_prepare
@@ -127,7 +137,7 @@ src_configure() {
myphpprefix="${PHPPREFIX}/include"
fi
- # The build system just finds "python", which could be python3.2 if EPYTHON is unset.
+ # The build system just finds "python", which could be any version of python if EPYTHON is unset.
use python && python_export_best EPYTHON
if use ruby; then
@@ -180,8 +190,22 @@ src_compile() {
done
fi
- # Build the remaining python implementations
- use python && python_foreach_impl emake
+ if use python; then
+ local selectedPython3=$(eselect python show --python3)
+ my_python3-move_swig_build_to_impl_dir ${selectedPython3}
+ building() {
+ # Skip python 2.7 and the selected python3 interpreter since it was already built when make ran the first time
+ if [ "${EPYTHON:6:1}" = "2" ] || [ "${EPYTHON}" = "${selectedPython3}" ]; then
+ return 0
+ fi
+
+ pushd "${S}"/build/swig/python3 || die
+ "${PYTHON}" setup.py build || die
+ popd
+ my_python3-move_swig_build_to_impl_dir ${EPYTHON}
+ }
+ python_foreach_impl building
+ fi
if use ruby; then
# Move the current implementation build of ruby to another dir so other implementations can be built
@@ -254,7 +278,12 @@ src_install() {
if use python; then
python_install() {
- pushd "${S}"/build/swig/python || die
+ local pythonversion
+ # build files for python 3 reside in folders with slot versions
+ if [ "${EPYTHON:6:1}" = "3" ]; then
+ pythonversion=${EPYTHON:6}
+ fi
+ pushd "${S}"/build/swig/python${pythonversion} || die
"${PYTHON}" setup.py install --root="${D}" || die
popd
}