scttnlsn/queued — pull request #8 by masahide (2014-08-23 13:51:18+00:00)
Title: use goleveldb (github.com/syndtr/goleveldb/leveldb)

* Use [goleveldb](https://github.com/syndtr/goleveldb) (golang implementation of the LevelDB). It has been improved portability of libleveldb.so is not required by utilizing goleveldb.

* Introduce conditional compilation by [build tags](http://golang.org/pkg/go/build/#hdr-Build_Constraints). Although it was made to change to goleveldb by setting a BUILD_TAGS environment variable to the make command, please change, if there is a better method.

```bash
$ make
go get -d
go build -o build/queued -tags=
$ ldd build/queued
linux-vdso.so.1 => (0x00007fff8c7df000)
libleveldb.so.1 => /usr/local/leveldb/lib/libleveldb.so.1 (0x00007f3de5aa2000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f3de5885000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f3de54c4000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f3de51c4000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f3de4ec8000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f3de4cb1000)
/lib64/ld-linux-x86-64.so.2 (0x00007f3de5cfe000)
```

When goleveldb is used.

```bash
$ BUILD_TAGS=use_goleveldb make
go get -d
go build -o build/queued -tags=use_goleveldb
$ ldd build/queued
linux-vdso.so.1 => (0x00007fff00bff000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fe9fcb65000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe9fc7a5000)
/lib64/ld-linux-x86-64.so.2 (0x00007fe9fcd8d000)
```