Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Review: Approve I still don't love the additional dependency, but I think it probably makes sense not to roll our own UUID libs, so I'll approve this. I wonder if the RQ machine will have it?... -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
I added a mention to the build documentation. Approve now? -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
1. Are the things you compile/link against on Windows and Mac guaranteed to exist? (ie, do I only need to find libuuid on Linux platforms) Yes. 2. What should happen if I *don't* find it? Can the UUID code be made optional at compile time? Would that mean we need a ZORBA_WITH_UUID or something like that? Or, do we have a hard requirement on libuuid and the build should fail without it? I think it has to be the latter, but Matthias might know. I think it should be a hard requirement. UUID functionality comes with Windows and Mac. On Linux, the library should always be available. Also, as far as I understood, we already depended on libuuid before. -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Also, as far as I understood, we already depended on libuuid before. As far as I can tell, no, we didn't. But, if we should have a hard requirement, so be it. As I said, it looks like it's pretty much standard on Linux. -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
As far as I can tell, no, we didn't. But, if we should have a hard requirement, so be it. As I said, it looks like it's pretty much standard on Linux. Chris: Can you therefore please add the CMake magic to test for libuuid when not on Mac/Windows? Thanks. -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Review: Needs Fixing Turns out this is less standard than I thought. On my standard Ubuntu installation, I cannot compile this branch without installing the uuid-dev Ubuntu package, which is where uuid/uuid.h comes from. I have added a bit of CMake stuff to check that -luuid works if ZORBA_HAVE_UUID_H is true. I also added a clause to make CMake configuration fail is ZORBA_HAVE_UUID_H is false, and you're not on Apple or Win32. However, I'm a bit uneasy about adding a new hard requirement like this. At the very least, if we decide that this way of doing things is correct, we need to update the Linux build documentation to list the UUID development headers as a build requirement, and mention the uuid-dev on the Ubuntu build page. I won't have time to do that this week due to NoSQL Now, so Paul, please take a crack at it (assuming we decide that it is going to be a new requirement). -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
My only concern is that for non-Apple, non-Windows platforms, you add -luuid to the link line, but there's no CMake stuff to search for a uuid library or to ensure that such an option will compile/link successfully. Is it a guarantee that it will always be available, at least on Linux? Good catch. I don't suppose you could add the relevant CMake stuff to find libuuid? -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Good catch. I don't suppose you could add the relevant CMake stuff to find libuuid? 1. Are the things you compile/link against on Windows and Mac guaranteed to exist? (ie, do I only need to find libuuid on Linux platforms) 2. What should happen if I *don't* find it? Can the UUID code be made optional at compile time? Would that mean we need a ZORBA_WITH_UUID or something like that? Or, do we have a hard requirement on libuuid and the build should fail without it? It does appear that on Ubuntu, at least, libuuid comes from the package libuuid1, which is part of the minimal Task and is depended on by some pretty low-level packages such as util-linux and e2fsprogs. It's not clear to me whether it's at all possible to have a functional Linux/Ubuntu system without libuuid existing. So maybe it's OK to assume it will always be there. -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
1. Are the things you compile/link against on Windows and Mac guaranteed to exist? (ie, do I only need to find libuuid on Linux platforms) Yes. 2. What should happen if I *don't* find it? Can the UUID code be made optional at compile time? Would that mean we need a ZORBA_WITH_UUID or something like that? Or, do we have a hard requirement on libuuid and the build should fail without it? I think it has to be the latter, but Matthias might know. -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Review: Needs Information My only concern is that for non-Apple, non-Windows platforms, you add -luuid to the link line, but there's no CMake stuff to search for a uuid library or to ensure that such an option will compile/link successfully. Is it a guarantee that it will always be available, at least on Linux? -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Actually, I just removed all the problematic code so it should compile on Windows. Please try again. -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Review: Approve Yep, that works! -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Review: Needs Fixing Doesn't build on 32-bit Ubuntu 11.04 with g++ 4.5.2. [ 68%] Building CXX object src/CMakeFiles/zorba_simplestore.dir/unit_tests/test_uuid.cpp.o In file included from /home/mbrantner/zorba/sandbox/src/unit_tests/test_uuid.cpp:20:0: /home/mbrantner/zorba/sandbox/src/util/uuid.h:35:11: error: ‘uint8_t’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:36:11: error: ‘value_type’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:37:11: error: ‘value_type’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:38:11: error: ‘value_type’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:39:11: error: ‘value_type’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:43:11: error: ‘pointer’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:44:11: error: ‘const_pointer’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:65:3: error: ‘value_type’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:80:3: error: ‘iterator’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:89:3: error: ‘const_iterator’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:98:3: error: ‘iterator’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h:107:3: error: ‘const_iterator’ does not name a type /home/mbrantner/zorba/sandbox/src/util/uuid.h: In member function ‘zorba::uuid::size_type zorba::uuid::size() const’: /home/mbrantner/zorba/sandbox/src/util/uuid.h:117:20: error: ‘data’ was not declared in this scope /home/mbrantner/zorba/sandbox/src/util/uuid.h: In member function ‘void zorba::uuid::swap(zorba::uuid)’: /home/mbrantner/zorba/sandbox/src/util/uuid.h:126:29: error: ‘begin’ was not declared in this scope /home/mbrantner/zorba/sandbox/src/util/uuid.h:126:36: error: ‘end’ was not declared in this scope /home/mbrantner/zorba/sandbox/src/util/uuid.h:126:44: error: ‘struct zorba::uuid’ has no member named ‘begin’ /home/mbrantner/zorba/sandbox/src/util/uuid.h: In member function ‘zorba::uuid::version zorba::uuid::get_version() const’: /home/mbrantner/zorba/sandbox/src/util/uuid.h:142:34: error: ‘data’ was not declared in this scope /home/mbrantner/zorba/sandbox/src/util/uuid.h: In function ‘bool zorba::operator==(const zorba::uuid, const zorba::uuid)’: /home/mbrantner/zorba/sandbox/src/util/uuid.h:166:25: error: ‘const struct zorba::uuid’ has no member named ‘begin’ /home/mbrantner/zorba/sandbox/src/util/uuid.h:166:37: error: ‘const struct zorba::uuid’ has no member named ‘end’ /home/mbrantner/zorba/sandbox/src/util/uuid.h:166:47: error: ‘const struct zorba::uuid’ has no member named ‘begin’ /home/mbrantner/zorba/sandbox/src/util/uuid.h: In function ‘bool zorba::operator(const zorba::uuid, const zorba::uuid)’: /home/mbrantner/zorba/sandbox/src/util/uuid.h:189:8: error: ‘const struct zorba::uuid’ has no member named ‘begin’ /home/mbrantner/zorba/sandbox/src/util/uuid.h:189:20: error: ‘const struct zorba::uuid’ has no member named ‘end’ /home/mbrantner/zorba/sandbox/src/util/uuid.h:189:30: error: ‘const struct zorba::uuid’ has no member named ‘begin’ /home/mbrantner/zorba/sandbox/src/util/uuid.h:189:42: error: ‘const struct zorba::uuid’ ha -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
It should be fixed. -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Review: Approve -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Review: Needs Fixing From Windows compiling I'm having: Error 88 error C2440: '=' : cannot convert from 'u_long (__stdcall *)(u_long)' to 'uint32_t' C:\dev\feature-uuid\src\runtime\random\random_impl.cpp 141 1 zorba_simplestore Error 89 error C2440: '=' : cannot convert from 'u_long (__stdcall *)(u_long)' to 'uint32_t' C:\dev\feature-uuid\src\runtime\random\random_impl.cpp 141 1 zorba_simplestore Error 90 error C3861: 'ntohl': identifier not found C:\dev\feature-uuid\src\runtime\random\random_impl.cpp 139 1 zorba_simplestore Error 178 error C3861: 'ntohl': identifier not found C:\dev\feature-uuid\src\util\uuid.cpp 74 1 zorba_simplestore Error 179 error C2440: 'initializing' : cannot convert from 'u_long (__stdcall *)(u_long)' to 'const uint32_t' C:\dev\feature-uuid\src\util\uuid.cpp 76 1 zorba_simplestore Error 180 error C3861: 'ntohs': identifier not found C:\dev\feature-uuid\src\util\uuid.cpp 77 1 zorba_simplestore Error 181 error C2440: 'initializing' : cannot convert from 'u_short (__stdcall *)(u_short)' to 'const uint16_t' C:\dev\feature-uuid\src\util\uuid.cpp 77 1 zorba_simplestore Error 182 error C3861: 'ntohs': identifier not found C:\dev\feature-uuid\src\util\uuid.cpp 78 1 zorba_simplestore Error 183 error C2440: 'initializing' : cannot convert from 'u_short (__stdcall *)(u_short)' to 'const uint16_t' C:\dev\feature-uuid\src\util\uuid.cpp 78 1 zorba_simplestore -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Review: Approve -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp
Re: [Zorba-coders] [Merge] lp:~zorba-coders/zorba/feature-uuid into lp:zorba
Chris: please look at the CMake stuff I changed. Rodolfo: please look at the Windows-specific stuff (including the Windows-specific CMake stuff). -- https://code.launchpad.net/~zorba-coders/zorba/feature-uuid/+merge/118268 Your team Zorba Coders is subscribed to branch lp:zorba. -- Mailing list: https://launchpad.net/~zorba-coders Post to : zorba-coders@lists.launchpad.net Unsubscribe : https://launchpad.net/~zorba-coders More help : https://help.launchpad.net/ListHelp