diff options
author | Matt Turner <mattst88@gentoo.org> | 2022-08-17 23:15:38 -0400 |
---|---|---|
committer | Matt Turner <mattst88@gentoo.org> | 2022-08-17 23:16:28 -0400 |
commit | 475dab847fb2e961d0ef35173cd1295d17bf966b (patch) | |
tree | 01059f6997b89a2176b9069f7f442640fb60d4b0 /dev-cpp/glog | |
parent | sys-libs/libunwind: fix docs override (diff) | |
download | gentoo-475dab847fb2e961d0ef35173cd1295d17bf966b.tar.gz gentoo-475dab847fb2e961d0ef35173cd1295d17bf966b.tar.bz2 gentoo-475dab847fb2e961d0ef35173cd1295d17bf966b.zip |
Revert "dev-cpp/glog: Drop old versions"
Still needed by sci-libs/caffe2.
This reverts commit 3817d0904d1cd868a656cf05c50f431bd6a6ccb7.
Signed-off-by: Matt Turner <mattst88@gentoo.org>
Diffstat (limited to 'dev-cpp/glog')
-rw-r--r-- | dev-cpp/glog/Manifest | 1 | ||||
-rw-r--r-- | dev-cpp/glog/files/glog-0.4.0-errnos.patch | 99 | ||||
-rw-r--r-- | dev-cpp/glog/files/glog-0.4.0-fix-test-on-ports.patch | 19 | ||||
-rw-r--r-- | dev-cpp/glog/files/glog-0.4.0-fix-x32-build.patch | 35 | ||||
-rw-r--r-- | dev-cpp/glog/glog-0.4.0.ebuild | 46 |
5 files changed, 200 insertions, 0 deletions
diff --git a/dev-cpp/glog/Manifest b/dev-cpp/glog/Manifest index 27d44dcf6c41..30b5047877a8 100644 --- a/dev-cpp/glog/Manifest +++ b/dev-cpp/glog/Manifest @@ -1,2 +1,3 @@ +DIST glog-0.4.0.tar.gz 200955 BLAKE2B 083da6117af3e85697724942bfcb5a7831d447666945b06b149d8d324231b10923887bd8c507e8027136d12bffd30a657cb225df8c449f234381e3876f132953 SHA512 b585f1819ade2075f6b61dc5aaca5c3f9d25601dba2bd08b6c49b96ac5f79db23c6b7f2042df003f7130497dd7241fcaa8b107d1f97385cb66ce52d3c554b176 DIST glog-0.5.0.tar.gz 183346 BLAKE2B 9109a9a4bd3c74ba5d4c1d9ed44ffe0e16d5d3b9b12bf9dd5d31c6e728292ea50f39b4e1b96d55fbb35653a448af4dc8a978e266a2b0f34261c5108099e90845 SHA512 445e4338f3d81cd0b065f2da9c6ce343c243263ca144cea424ef97531a4e9e09c06ffd6942ac01c5213a8003c75cfbbede3c4028d12f0134f23ff29314769c1a DIST glog-0.6.0.tar.gz 193267 BLAKE2B b42112cdfd54280ce7a9592c3af6b6e10dcb854fe9dbe0db7445c60801d1c12a240c4b3709b45e41aedeb8876d2e08fc3368296e088be6a66126858888cc274e SHA512 fd2c42583d0dd72c790a8cf888f328a64447c5fb9d99b2e2a3833d70c102cb0eb9ae874632c2732424cc86216c8a076a3e24b23a793eaddb5da8a1dc52ba9226 diff --git a/dev-cpp/glog/files/glog-0.4.0-errnos.patch b/dev-cpp/glog/files/glog-0.4.0-errnos.patch new file mode 100644 index 000000000000..c55716db1ba2 --- /dev/null +++ b/dev-cpp/glog/files/glog-0.4.0-errnos.patch @@ -0,0 +1,99 @@ +Index: b/src/googletest.h +=================================================================== +--- a/src/googletest.h ++++ b/src/googletest.h +@@ -437,6 +437,18 @@ static inline void StringReplace(string* + } + } + ++static inline void IntReplace(string* str, ++ const string& oldsub, ++ int newsub) { ++ size_t pos = str->find(oldsub); ++ if (pos != string::npos) { ++ std::ostringstream ss; ++ ss << newsub; ++ const std::string x = ss.str(); ++ str->replace(pos, oldsub.size(), x.c_str()); ++ } ++} ++ + static inline string Munge(const string& filename) { + FILE* fp = fopen(filename.c_str(), "rb"); + CHECK(fp != NULL) << filename << ": couldn't open"; +@@ -452,9 +464,13 @@ static inline string Munge(const string& + + StringReplace(&line, "__SUCCESS__", StrError(0)); + StringReplace(&line, "__ENOENT__", StrError(ENOENT)); ++ IntReplace(&line, "__ENOENT_NUM__", ENOENT); + StringReplace(&line, "__EINTR__", StrError(EINTR)); ++ IntReplace(&line, "__EINTR_NUM__", EINTR); + StringReplace(&line, "__ENXIO__", StrError(ENXIO)); ++ IntReplace(&line, "__ENXIO_NUM__", ENXIO); + StringReplace(&line, "__ENOEXEC__", StrError(ENOEXEC)); ++ IntReplace(&line, "__ENOEXEC_NUM__", ENOEXEC); + result += line + "\n"; + } + fclose(fp); +Index: b/src/logging_unittest.cc +=================================================================== +--- a/src/logging_unittest.cc ++++ b/src/logging_unittest.cc +@@ -238,6 +238,17 @@ int main(int argc, char **argv) { + return 0; + } + ++static int errnoForIteration(int i) { ++ switch (i) { ++ case 0: return 0; ++ case 2: return ENOENT; ++ case 4: return EINTR; ++ case 6: return ENXIO; ++ case 8: return ENOEXEC; ++ } ++ return -1; ++} ++ + void TestLogging(bool check_counts) { + int64 base_num_infos = LogMessage::num_messages(GLOG_INFO); + int64 base_num_warning = LogMessage::num_messages(GLOG_WARNING); +@@ -246,7 +257,7 @@ void TestLogging(bool check_counts) { + LOG(INFO) << string("foo ") << "bar " << 10 << ' ' << 3.4; + for ( int i = 0; i < 10; ++i ) { + int old_errno = errno; +- errno = i; ++ errno = errnoForIteration(i); + PLOG_EVERY_N(ERROR, 2) << "Plog every 2, iteration " << COUNTER; + errno = old_errno; + +Index: b/src/logging_unittest.err +=================================================================== +--- a/src/logging_unittest.err ++++ b/src/logging_unittest.err +@@ -51,21 +51,21 @@ WDATE TIME__ THREADID logging_unittest.c + IDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 1 + EDATE TIME__ THREADID logging_unittest.cc:LINE] Log if less than 3 every 2, iteration 1 + IDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 2 +-EDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 3: __ENOENT__ [2] ++EDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 3: __ENOENT__ [__ENOENT_NUM__] + IDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 3 + EDATE TIME__ THREADID logging_unittest.cc:LINE] Log if less than 3 every 2, iteration 3 + EDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 3, iteration 4 + IDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 4 +-EDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 5: __EINTR__ [4] ++EDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 5: __EINTR__ [__EINTR_NUM__] + EDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 4, iteration 5 + IDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 5 + WDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 5, iteration 6 + IDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 6 +-EDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 7: __ENXIO__ [6] ++EDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 7: __ENXIO__ [__ENXIO_NUM__] + EDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 3, iteration 7 + IDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 7 + IDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 8 +-EDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 9: __ENOEXEC__ [8] ++EDATE TIME__ THREADID logging_unittest.cc:LINE] Plog every 2, iteration 9: __ENOEXEC__ [__ENOEXEC_NUM__] + EDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 4, iteration 9 + IDATE TIME__ THREADID logging_unittest.cc:LINE] Log if every 1, iteration 9 + EDATE TIME__ THREADID logging_unittest.cc:LINE] Log every 3, iteration 10 + diff --git a/dev-cpp/glog/files/glog-0.4.0-fix-test-on-ports.patch b/dev-cpp/glog/files/glog-0.4.0-fix-test-on-ports.patch new file mode 100644 index 000000000000..392ae8ca7819 --- /dev/null +++ b/dev-cpp/glog/files/glog-0.4.0-fix-test-on-ports.patch @@ -0,0 +1,19 @@ +Index: google-glog-0.3.2/src/signalhandler_unittest.sh +=================================================================== +--- google-glog-0.3.2.orig/src/signalhandler_unittest.sh 2013-03-13 13:49:37.820188111 -0400 ++++ google-glog-0.3.2/src/signalhandler_unittest.sh 2013-03-13 14:07:11.980204520 -0400 +@@ -65,10 +65,10 @@ + exit 0 + fi + +-# The PC cannot be obtained in signal handlers on PowerPC correctly. +-# We just skip the test for PowerPC. +-if [ x`uname -p` = x"powerpc" ]; then +- echo "PASS (We don't test the signal handler on PowerPC.)" ++# This test only works correctly on i386 and amd64. ++# We just skip the test when not on those platforms. ++if [ x`uname -m` != x"x86_64" -a x`uname -m` != x"i686" ]; then ++ echo "PASS (We only test the signal handler on i386 or amd64.)" + exit 0 + fi + diff --git a/dev-cpp/glog/files/glog-0.4.0-fix-x32-build.patch b/dev-cpp/glog/files/glog-0.4.0-fix-x32-build.patch new file mode 100644 index 000000000000..e53318ac66ff --- /dev/null +++ b/dev-cpp/glog/files/glog-0.4.0-fix-x32-build.patch @@ -0,0 +1,35 @@ +Description: fix FTBFS on x32 +Author: Guillaume Morin <guillaume@morinfr.org> +Forwarded: no +Last-Update: 2019-08-05 + +--- + +--- google-glog-0.3.4.orig/src/symbolize_unittest.cc ++++ google-glog-0.3.4/src/symbolize_unittest.cc +@@ -313,8 +313,12 @@ extern "C" { + inline void* always_inline inline_func() { + void *pc = NULL; + #ifdef TEST_X86_32_AND_64 ++#if __x86_64__ || (__x86_64__ && __ILP32__) ++ __asm__ __volatile__("call 1f; 1: popq %q0" : "=r"(pc)); ++#else + __asm__ __volatile__("call 1f; 1: pop %0" : "=r"(pc)); + #endif ++#endif + return pc; + } + +@@ -322,8 +326,12 @@ void* ATTRIBUTE_NOINLINE non_inline_func + void* ATTRIBUTE_NOINLINE non_inline_func() { + void *pc = NULL; + #ifdef TEST_X86_32_AND_64 ++#if __x86_64__ || (__x86_64__ && __ILP32__) ++ __asm__ __volatile__("call 1f; 1: popq %q0" : "=r"(pc)); ++#else + __asm__ __volatile__("call 1f; 1: pop %0" : "=r"(pc)); + #endif ++#endif + return pc; + } + diff --git a/dev-cpp/glog/glog-0.4.0.ebuild b/dev-cpp/glog/glog-0.4.0.ebuild new file mode 100644 index 000000000000..9b10f2e2fc95 --- /dev/null +++ b/dev-cpp/glog/glog-0.4.0.ebuild @@ -0,0 +1,46 @@ +# Copyright 2011-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +inherit autotools multilib-minimal + +DESCRIPTION="Google's C++ logging library" +HOMEPAGE="https://github.com/google/glog" +SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +# -sparc as libunwind is not ported on sparc +KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 -sparc x86 ~amd64-linux ~x86-linux" +IUSE="gflags static-libs test" +RESTRICT="test" + +RDEPEND="sys-libs/libunwind[${MULTILIB_USEDEP}] + gflags? ( dev-cpp/gflags[${MULTILIB_USEDEP}] )" +DEPEND="${RDEPEND} + test? ( >=dev-cpp/gtest-1.8.0[${MULTILIB_USEDEP}] )" + +PATCHES=( + "${FILESDIR}"/${PN}-0.4.0-fix-x32-build.patch + "${FILESDIR}"/${PN}-0.4.0-errnos.patch + "${FILESDIR}"/${PN}-0.4.0-fix-test-on-ports.patch +) + +src_prepare() { + default + eautoreconf +} + +multilib_src_configure() { + ECONF_SOURCE="${S}" econf \ + $(use_enable static-libs static) \ + ac_cv_lib_gflags_main="$(usex gflags)" +} + +multilib_src_install_all() { + einstalldocs + + # package provides .pc files + find "${D}" -name '*.la' -delete || die +} |