File gcc-4.3.diff of Package cromfs
--- fuse-ops.cc
+++ fuse-ops.cc
@@ -17,6 +17,7 @@ the fuse_reply_err() function.
#include <cerrno>
#include <fcntl.h>
#include <sys/statvfs.h>
+#include <string.h>
#define CROMFS_CTXP(obj,userdata) \
--- lib/lzma.cc
+++ lib/lzma.cc
@@ -9,6 +9,7 @@
#include <vector>
#include <algorithm>
+#include <cstring>
#include <string>
#include <stdint.h>
--- lib/boyermooreneedle.hh
+++ lib/boyermooreneedle.hh
@@ -10,6 +10,7 @@
#include <string>
#include <algorithm>
#include <string.h>
+#include <limits.h>
#include "autoptr"
#include "threadfun.hh"
--- lib/stringsearchutil.hh
+++ lib/stringsearchutil.hh
@@ -13,6 +13,8 @@
#include <algorithm>
+#include <string>
+
#if defined(__SSE__) && defined(__GNUC__)
# include <xmmintrin.h>
#endif
--- lib/boyermooreneedle.hh
+++ lib/boyermooreneedle.hh
@@ -9,7 +9,7 @@
#include <vector>
#include <string>
#include <algorithm>
-#include <string.h>
+#include <cstring>
#include <limits.h>
#include "autoptr"
--- lib/datasource.hh
+++ lib/datasource.hh
@@ -8,6 +8,7 @@
#include <sys/stat.h>
#include <fcntl.h> // O_RDONLY, O_LARGEFILE
#include <string>
+#include <cstring>
#include <vector>
--- lib/boyermoore.hh
+++ lib/boyermoore.hh
@@ -5,6 +5,7 @@
#include <stdint.h>
#include <vector>
+#include <limits.h>
namespace BoyerMooreSearch
{
--- lib/cromfs-directoryfun.cc
+++ lib/cromfs-directoryfun.cc
@@ -1,6 +1,8 @@
#include "endian.hh"
#include "cromfs-directoryfun.hh"
+#include <cstring>
+
const size_t
calc_encoded_directory_size(const cromfs_dirinfo& dir)
{
--- lib/cromfs-fblockfun.cc
+++ lib/cromfs-fblockfun.cc
@@ -11,6 +11,7 @@
#include <cstdlib>
#include <sys/time.h>
+#include <ctime>
using namespace fblock_private;
--- lib/sparsewrite.cc
+++ lib/sparsewrite.cc
@@ -10,6 +10,10 @@
# define unlikely(x) (x)
#endif
+extern "C" {
+extern ssize_t pwrite64 (int __fd, __const void *__buf, size_t __n, __off64_t __offset);
+}
+
bool is_zero_block(const unsigned char* data, uint_fast64_t size)
{
#if 0
--- lib/stringsearchutil.hh
+++ lib/stringsearchutil.hh
@@ -14,6 +14,7 @@
#include <algorithm>
#include <string>
+#include <cstring>
#if defined(__SSE__) && defined(__GNUC__)
# include <xmmintrin.h>
--- util/cvcromfs.cc
+++ util/cvcromfs.cc
@@ -12,6 +12,7 @@
#include <fcntl.h>
#include <sys/stat.h>
#include <errno.h>
+#include <stdlib.h>
#include <vector>
--- lib/stringsearchutil.hh
+++ lib/stringsearchutil.hh
@@ -25,7 +25,7 @@ template<typename T>
static inline bool MultiByteNeq(T a,T b) { return a!=b; }
#if defined(__SSE__) && defined(__GNUC__)
template<>
-static inline bool MultiByteNeq(const __m128 a,
+inline bool MultiByteNeq(const __m128 a,
const __m128 b)
{
//fprintf(stderr, "multibyteneq(%p,%p)\n",&a,&b); fflush(stderr);