]> git.pld-linux.org Git - packages/crnlib.git/commitdiff
- added types patch (fixes build on LP64 systems) auto/th/crnlib-1.04-1
authorJakub Bogusz <qboosh@pld-linux.org>
Sat, 24 May 2014 05:08:37 +0000 (07:08 +0200)
committerJakub Bogusz <qboosh@pld-linux.org>
Sat, 24 May 2014 05:08:37 +0000 (07:08 +0200)
crnlib-types.patch [new file with mode: 0644]
crnlib.spec

diff --git a/crnlib-types.patch b/crnlib-types.patch
new file mode 100644 (file)
index 0000000..90655e6
--- /dev/null
@@ -0,0 +1,25 @@
+--- crunch/crnlib/crn_vector.cpp.orig  2014-05-14 19:48:46.000000000 +0200
++++ crunch/crnlib/crn_vector.cpp       2014-05-24 06:48:23.591922481 +0200
+@@ -22,8 +22,9 @@ namespace crnlib
+          return true;\r
\r
+       size_t new_capacity = min_new_capacity;\r
+-      if ((grow_hint) && (!math::is_power_of_2(new_capacity)))\r
+-         new_capacity = math::next_pow2(new_capacity);\r
++      // avoid overload ambiguity (size_t vs uint32=unsigned int or uint64=unsigned long long) by casting to matching type, that will fit size_t\r
++      if ((grow_hint) && (!math::is_power_of_2(static_cast<ptr_bits_t>(new_capacity))))\r
++         new_capacity = math::next_pow2(static_cast<ptr_bits_t>(new_capacity));\r
\r
+       CRNLIB_ASSERT(new_capacity && (new_capacity > m_capacity));\r
\r
+--- crunch/inc/crn_decomp.h.orig       2014-05-14 19:48:47.000000000 +0200
++++ crunch/inc/crn_decomp.h    2014-05-22 20:49:43.321075804 +0200
+@@ -374,7 +374,7 @@ namespace crnd
\r
+    const uint32 cIntBits = 32U;\r
\r
+-#ifdef _WIN64\r
++#if defined(_WIN64) || defined(__MINGW64__) || defined(_LP64) || defined(__LP64__)\r
+    typedef uint64 ptr_bits;\r
+ #else\r
+    typedef uint32 ptr_bits;\r
index 269f600888cc96d2d64d560d1c04ffd3b0dc8a39..3c958fcfb14fadbb8c747f7dcab0c47e8a38ba68 100644 (file)
@@ -14,6 +14,7 @@ Group:                Libraries
 Source0:       crunch-104.tar.xz
 # Source0-md5: f92837bba95abf27d6bd9ae0b2b04863
 Patch0:                %{name}-c++.patch
+Patch1:                %{name}-types.patch
 URL:           http://code.google.com/p/crunch/
 BuildRequires: libstdc++-devel
 BuildRequires: libtool
@@ -57,6 +58,7 @@ Statyczna biblioteka crnlib.
 %prep
 %setup -q -n crunch
 %patch0 -p1
+%patch1 -p1
 
 %{__sed} -i -e '/g++.*COMPILE_OPTIONS/s/g++/$(CXX)/' crnlib/Makefile
 %{__sed} -i -e '/g++.*LINKER_OPTIONS/s/g++/$(CXXLINK)/' crnlib/Makefile
This page took 0.06673 seconds and 4 git commands to generate.