Hi again,
I was impatient and applied the patch and after some cleanup I checked it in.
Can you please test, if the version in svn still compile on windows?
Tommi
On Freitag, 31. Juli 2009 21:54:03 Tommi Mäkitalo wrote:
> Hi Emmanuel,
>
> great to hear. I'm sure it will work if it compile.
>
> Can you please send me the patch as attachement. The lines are wrapped so
> the patch can't be applied easily.
>
> Tommi
>
> On Mittwoch, 29. Juli 2009 20:54:41 Emmanuel Engelhart wrote:
> > Hi,
> >
> > I have achieved to compile a first version of a zimlib.lib (static
> > library under Windows). I do not really know if I can use it... but at
> > least it compiles.
> >
> > I want to give you here the modifications I have done to achieve that.
> > Tommi, it would be great to include them (or others with the same
> > purpose) into the SVN.
> >
> > Index: include/zim/zim.h
> > ===================================================================
> > --- include/zim/zim.h (revision 236)
> > +++ include/zim/zim.h (working copy)
> > @@ -22,6 +22,12 @@
> >
> > #include <stdint.h>
> >
> > +#ifdef _WIN32
> > +typedef unsigned __int64 uint64_t;
> > +typedef signed __int8 int8_t;
> > +typedef signed __int32 int32_t;
> > +#endif
> > +
> > namespace zim
> > {
> > typedef uint32_t size_type;
> > Index: src/search.cpp
> > ===================================================================
> > --- src/search.cpp (revision 236)
> > +++ src/search.cpp (working copy)
> > @@ -106,7 +106,7 @@
> > // weight position of words in the document
> > if (Search::getWeightPos())
> > for (itp = posList.begin(); itp != posList.end(); ++itp)
> > - priority += Search::getWeightPos() / pow(1.01, itp->first);
> > + priority += Search::getWeightPos() / pow((double)1.01,
> > (double)itp->first); // here is a ambiguity between to pow() functions
> > (pow(double, int) or pow(double, double))
> >
> > if (Search::getWeightPosRel())
> > for (itp = posList.begin(); itp != posList.end(); ++itp)
> > Index: src/bunzip2stream.cpp
> > ===================================================================
> > --- src/bunzip2stream.cpp (revision 236)
> > +++ src/bunzip2stream.cpp (working copy)
> > @@ -113,7 +113,8 @@
> > // there is data already available
> > // read compressed data from source into ibuffer
> > log_debug("in_avail=" << sinksource->in_avail());
> > - stream.avail_in = sinksource->sgetn(ibuffer(),
> > std::min(sinksource->in_avail(), ibuffer_size()));
> > +
> > + stream.avail_in = sinksource->sgetn(ibuffer(),
> > min(sinksource->in_avail(), ibuffer_size())); // compile genereates an
> > error if you have the "std::", do not know exactly why.
> > }
> > else
> > {
> > Index: src/uuid.cpp
> > ===================================================================
> > --- src/uuid.cpp (revision 236)
> > +++ src/uuid.cpp (working copy)
> > @@ -20,12 +20,31 @@
> > #include <zim/uuid.h>
> > #include <iostream>
> > #include <time.h>
> > -#include <sys/time.h>
> > +#include <zim/zim.h> // necessary to have the new types
> > #include "log.h"
> > #ifdef WITH_CXXTOOLS
> > #include <cxxtools/md5stream.h>
> > #endif
> >
> > +#if defined(_MSC_VER) || defined(__MINGW32__)
> > +# include <time.h>
> > +# include <Windows.h>
> > +#else
> > +# include <sys/time.h>
> > +#endif
> > +
> > +#if defined(_MSC_VER) || defined(__MINGW32__)
> > +int gettimeofday(struct timeval* tp, void* tzp) {
> > + DWORD t;
> > + t = timeGetTime();
> > + tp->tv_sec = t / 1000;
> > + tp->tv_usec = t % 1000;
> > + /* 0 indicates that the call succeeded. */
> > + return 0;
> > +}
> > +#endif // time related function/headers are differents und win32
> > +
> > +
> > log_define("zim.uuid")
> >
> > namespace zim
> > @@ -62,7 +81,12 @@
> > *reinterpret_cast<int32_t*>(ret.data) =
> > reinterpret_cast<int32_t>(&ret);
> > *reinterpret_cast<int32_t*>(ret.data + 4) =
> > static_cast<int32_t>(tv.tv_sec);
> > *reinterpret_cast<int32_t*>(ret.data + 8) =
> > static_cast<int32_t>(tv.tv_usec);
> > +
> > + #if defined(_MSC_VER)
> > + *reinterpret_cast<int32_t*>(ret.data + 12) =
> > static_cast<int32_t>(GetCurrentProcessId());
> > + #else
> > *reinterpret_cast<int32_t*>(ret.data + 12) =
> > static_cast<int32_t>(getpid()); // getpid() is GetCurrentProcessId()
> > under win32
> > + #endif
> >
> > #endif
> >
> > Index: src/qunicode.cpp
> > ===================================================================
> > --- src/qunicode.cpp (revision 236)
> > +++ src/qunicode.cpp (working copy)
> > @@ -18,6 +18,7 @@
> > */
> >
> > #include <zim/qunicode.h>
> > +#include <zim/zim.h> // for the types compatibilty
> > #include "log.h"
> > #include <iostream>
> > #include <sstream>
> > _______________________________________________
> > dev-l mailing list
> > [email protected]
> > https://intern.openzim.org/mailman/listinfo/dev-l
>
> _______________________________________________
> dev-l mailing list
> [email protected]
> https://intern.openzim.org/mailman/listinfo/dev-l
_______________________________________________
dev-l mailing list
[email protected]
https://intern.openzim.org/mailman/listinfo/dev-l