Sunday, December 31, 2017

Re: NEW: databases/leveldb

On Fri, Dec 29 2017, Rafael Sadowski <rafael@sizeofvoid.org> wrote:
> Doh!
>
> On Fri Dec 29, 2017 at 10:45:11AM +0100, Rafael Sadowski wrote:
>> On Thu Dec 28, 2017 at 04:50:34PM +0100, Rafael Sadowski wrote:
>> > Hi All!
>> >
>> > Attached is a new port, databases/leveldb. All tests passed on amd64.
>> >
>> > ---
>> > $ pkg/DESCR
>> > LevelDB is a fast key-value storage library written at Google that provides an
>> > ordered mapping from string keys to string values.
>> > ---
>> >
>> > https://github.com/google/leveldb
>> >
>> > Comments? Ok to import?
>> >
>> > Best regards,
>> >
>> > Rafael
>>
>> New tarball after jca@ told me that there was already a version in our tree.
>> Changes to the previous tarball:
>>
>> - add ONLY_FOR_ARCHS with AtomicPointer comment
>> - add SHARED_MAJOR OPT SHARED_MINOR in MAKE_ENV

This doesn't seem to have much effet, the build log says:

c++ -pthread -shared -Wl,-soname -Wl,libleveldb.so.1 ...
... -o out-shared/libleveldb.so.1.20

You can't just rename the library after the fact, you have to teach the
linking step to use SHARED_MAJOR/MINOR, else:

0x000000000000000e (SONAME) Library soname: [libleveldb.so.1]

See the previous patches.

>> - use $DOC
>> - s/BSD/BSD3/
>>
>> ok to reimport?

Please look at all the patches used in the previous port, some of them
are a bit scary.

Also, the port ought to build on non-x86 architectures now, either using
custom os-specific memory barriers or falling back to <atomic> if
a recent gcc/clang version is available.

--
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE

No comments:

Post a Comment