Skip to content

Commit 8bdfe05

Browse files
committed
build: Create .la library for leveldb
Libtool will yell at you if you try to link a shared library against static ones. This change creates a libtool archive library for leveldb and allows a shared library to be linked against it portably. Also specify -static in both: - ..._la_CXXFLAGS so that libtool will avoid building two versions of each object (one PIC, one non-PIC). We just need the one that is suitable for static linking. - ..._la_LDFLAGS so that libtool will create a static library. If we don't specify this, then libtool will build two versions of each object and prefer the non-static PIC version of the object, which is built with -DDLL_EXPORT -DPIC for mingw-w64 targets. This can cause symbol resolution problems when we link this library against an executable that does specify -all-static, since that will be built without the -DDLL_EXPORT flag. This is especially important for leveldb and memenv since they link against libwinpthreads, which has difference symbols depending on whether DLL_EXPORT is defined or not. [META] This change is done in preparation for a future commit where we link the libbitcoinkernel library against this one. Appendix: The specific linker errors when linking memenv built without -all-static against a bitcoind with -all-static look like: x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `__gthread_mutex_unlock': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `__gthread_mutex_unlock': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `__gthread_mutex_unlock': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `__gthread_mutex_unlock': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/distsrc-base/distsrc-99874bd94511-x86_64-w64-mingw32/src/leveldb/helpers/memenv/memenv.cc:230: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `__gthread_mutex_unlock': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/distsrc-base/distsrc-99874bd94511-x86_64-w64-mingw32/src/leveldb/helpers/memenv/memenv.cc:230: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `__gthread_mutex_unlock': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `__gthread_mutex_unlock': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `__gthread_mutex_unlock': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `__gthread_mutex_unlock': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/distsrc-base/distsrc-99874bd94511-x86_64-w64-mingw32/src/leveldb/helpers/memenv/memenv.cc:285: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/stl_map.h:501: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:733: undefined reference to `__imp_pthread_mutex_init' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `std::_Vector_base<char*, std::allocator<char*> >::_Vector_impl_data::_Vector_impl_data()': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/stl_vector.h:97: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `std::mutex::lock()': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/std_mutex.h:104: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `leveldb::Status::IOError(leveldb::Slice const&, leveldb::Slice const&)': /distsrc-base/distsrc-99874bd94511-x86_64-w64-mingw32/src/./leveldb/include/leveldb/status.h:53: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `leveldb::Status::IOError(leveldb::Slice const&, leveldb::Slice const&)': /distsrc-base/distsrc-99874bd94511-x86_64-w64-mingw32/src/./leveldb/include/leveldb/status.h:53: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `leveldb::Status::IOError(leveldb::Slice const&, leveldb::Slice const&)': /distsrc-base/distsrc-99874bd94511-x86_64-w64-mingw32/src/./leveldb/include/leveldb/status.h:53: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/stl_map.h:1069: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/stl_tree.h:350: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `leveldb::Status::IOError(leveldb::Slice const&, leveldb::Slice const&)': /distsrc-base/distsrc-99874bd94511-x86_64-w64-mingw32/src/./leveldb/include/leveldb/status.h:53: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/distsrc-base/distsrc-99874bd94511-x86_64-w64-mingw32/src/./leveldb/include/leveldb/status.h:53: more undefined references to `__imp_pthread_mutex_unlock' follow x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `std::mutex::lock()': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/std_mutex.h:104: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/stl_map.h:1069: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `leveldb::Status::IOError(leveldb::Slice const&, leveldb::Slice const&)': /distsrc-base/distsrc-99874bd94511-x86_64-w64-mingw32/src/./leveldb/include/leveldb/status.h:53: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:740: undefined reference to `__imp_pthread_mutex_destroy' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `std::mutex::lock()': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/std_mutex.h:100: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/distsrc-base/distsrc-99874bd94511-x86_64-w64-mingw32/src/leveldb/helpers/memenv/memenv.cc:268: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:733: undefined reference to `__imp_pthread_mutex_init' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `std::_Vector_base<char*, std::allocator<char*> >::_Vector_impl_data::_Vector_impl_data()': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/stl_vector.h:97: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o): in function `std::mutex::lock()': /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/std_mutex.h:104: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: /gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/bits/std_mutex.h:104: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:733: undefined reference to `__imp_pthread_mutex_init' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:749: undefined reference to `__imp_pthread_mutex_lock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock' x86_64-w64-mingw32-ld: leveldb/.libs/libmemenv.a(libmemenv_la-memenv.o):/gnu/store/yn52na8xbgzpiq7fdpm9pfyyf5w3z60m-gcc-cross-x86_64-w64-mingw32-10.3.0/include/c++/x86_64-w64-mingw32/bits/gthr-default.h:779: undefined reference to `__imp_pthread_mutex_unlock'
1 parent 05d1525 commit 8bdfe05

File tree

1 file changed

+112
-105
lines changed

1 file changed

+112
-105
lines changed

src/Makefile.leveldb.include

Lines changed: 112 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
# Distributed under the MIT software license, see the accompanying
33
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
44

5-
LIBLEVELDB_INT = leveldb/libleveldb.a
6-
LIBMEMENV_INT = leveldb/libmemenv.a
5+
LIBLEVELDB_INT = leveldb/libleveldb.la
6+
LIBMEMENV_INT = leveldb/libmemenv.la
77

8-
EXTRA_LIBRARIES += $(LIBLEVELDB_INT)
9-
EXTRA_LIBRARIES += $(LIBMEMENV_INT)
8+
noinst_LTLIBRARIES += $(LIBLEVELDB_INT)
9+
noinst_LTLIBRARIES += $(LIBMEMENV_INT)
1010

1111
LIBLEVELDB = $(LIBLEVELDB_INT) $(LIBCRC32C)
1212
LIBMEMENV = $(LIBMEMENV_INT)
@@ -37,111 +37,118 @@ else
3737
LEVELDB_CPPFLAGS_INT += -DLEVELDB_PLATFORM_POSIX
3838
endif
3939

40-
leveldb_libleveldb_a_CPPFLAGS = $(AM_CPPFLAGS) $(LEVELDB_CPPFLAGS_INT) $(LEVELDB_CPPFLAGS)
41-
leveldb_libleveldb_a_CXXFLAGS = $(filter-out -Wconditional-uninitialized -Werror=conditional-uninitialized -Wsuggest-override -Werror=suggest-override, $(AM_CXXFLAGS)) $(PIE_FLAGS)
40+
leveldb_libleveldb_la_CPPFLAGS = $(AM_CPPFLAGS) $(LEVELDB_CPPFLAGS_INT) $(LEVELDB_CPPFLAGS)
4241

43-
leveldb_libleveldb_a_SOURCES=
44-
leveldb_libleveldb_a_SOURCES += leveldb/port/port_stdcxx.h
45-
leveldb_libleveldb_a_SOURCES += leveldb/port/port.h
46-
leveldb_libleveldb_a_SOURCES += leveldb/port/thread_annotations.h
47-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/db.h
48-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/options.h
49-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/comparator.h
50-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/filter_policy.h
51-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/slice.h
52-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/table_builder.h
53-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/env.h
54-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/export.h
55-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/c.h
56-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/iterator.h
57-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/cache.h
58-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/dumpfile.h
59-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/table.h
60-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/write_batch.h
61-
leveldb_libleveldb_a_SOURCES += leveldb/include/leveldb/status.h
62-
leveldb_libleveldb_a_SOURCES += leveldb/db/log_format.h
63-
leveldb_libleveldb_a_SOURCES += leveldb/db/memtable.h
64-
leveldb_libleveldb_a_SOURCES += leveldb/db/version_set.h
65-
leveldb_libleveldb_a_SOURCES += leveldb/db/write_batch_internal.h
66-
leveldb_libleveldb_a_SOURCES += leveldb/db/filename.h
67-
leveldb_libleveldb_a_SOURCES += leveldb/db/version_edit.h
68-
leveldb_libleveldb_a_SOURCES += leveldb/db/dbformat.h
69-
leveldb_libleveldb_a_SOURCES += leveldb/db/builder.h
70-
leveldb_libleveldb_a_SOURCES += leveldb/db/log_writer.h
71-
leveldb_libleveldb_a_SOURCES += leveldb/db/db_iter.h
72-
leveldb_libleveldb_a_SOURCES += leveldb/db/skiplist.h
73-
leveldb_libleveldb_a_SOURCES += leveldb/db/db_impl.h
74-
leveldb_libleveldb_a_SOURCES += leveldb/db/table_cache.h
75-
leveldb_libleveldb_a_SOURCES += leveldb/db/snapshot.h
76-
leveldb_libleveldb_a_SOURCES += leveldb/db/log_reader.h
77-
leveldb_libleveldb_a_SOURCES += leveldb/table/filter_block.h
78-
leveldb_libleveldb_a_SOURCES += leveldb/table/block_builder.h
79-
leveldb_libleveldb_a_SOURCES += leveldb/table/block.h
80-
leveldb_libleveldb_a_SOURCES += leveldb/table/two_level_iterator.h
81-
leveldb_libleveldb_a_SOURCES += leveldb/table/merger.h
82-
leveldb_libleveldb_a_SOURCES += leveldb/table/format.h
83-
leveldb_libleveldb_a_SOURCES += leveldb/table/iterator_wrapper.h
84-
leveldb_libleveldb_a_SOURCES += leveldb/util/crc32c.h
85-
leveldb_libleveldb_a_SOURCES += leveldb/util/env_posix_test_helper.h
86-
leveldb_libleveldb_a_SOURCES += leveldb/util/env_windows_test_helper.h
87-
leveldb_libleveldb_a_SOURCES += leveldb/util/arena.h
88-
leveldb_libleveldb_a_SOURCES += leveldb/util/random.h
89-
leveldb_libleveldb_a_SOURCES += leveldb/util/posix_logger.h
90-
leveldb_libleveldb_a_SOURCES += leveldb/util/hash.h
91-
leveldb_libleveldb_a_SOURCES += leveldb/util/histogram.h
92-
leveldb_libleveldb_a_SOURCES += leveldb/util/coding.h
93-
leveldb_libleveldb_a_SOURCES += leveldb/util/testutil.h
94-
leveldb_libleveldb_a_SOURCES += leveldb/util/mutexlock.h
95-
leveldb_libleveldb_a_SOURCES += leveldb/util/logging.h
96-
leveldb_libleveldb_a_SOURCES += leveldb/util/no_destructor.h
97-
leveldb_libleveldb_a_SOURCES += leveldb/util/testharness.h
98-
leveldb_libleveldb_a_SOURCES += leveldb/util/windows_logger.h
42+
# Specify -static in both CXXFLAGS and LDFLAGS so libtool will only build a
43+
# static version of this library. We don't need a dynamic version, and a dynamic
44+
# version can't be used on windows anyway because the library doesn't currently
45+
# export DLL symbols.
46+
leveldb_libleveldb_la_CXXFLAGS = $(filter-out -Wconditional-uninitialized -Werror=conditional-uninitialized -Wsuggest-override -Werror=suggest-override, $(AM_CXXFLAGS)) $(PIE_FLAGS) -static
47+
leveldb_libleveldb_la_LDFLAGS = $(AM_LDFLAGS) -static
9948

100-
leveldb_libleveldb_a_SOURCES += leveldb/db/builder.cc
101-
leveldb_libleveldb_a_SOURCES += leveldb/db/c.cc
102-
leveldb_libleveldb_a_SOURCES += leveldb/db/dbformat.cc
103-
leveldb_libleveldb_a_SOURCES += leveldb/db/db_impl.cc
104-
leveldb_libleveldb_a_SOURCES += leveldb/db/db_iter.cc
105-
leveldb_libleveldb_a_SOURCES += leveldb/db/dumpfile.cc
106-
leveldb_libleveldb_a_SOURCES += leveldb/db/filename.cc
107-
leveldb_libleveldb_a_SOURCES += leveldb/db/log_reader.cc
108-
leveldb_libleveldb_a_SOURCES += leveldb/db/log_writer.cc
109-
leveldb_libleveldb_a_SOURCES += leveldb/db/memtable.cc
110-
leveldb_libleveldb_a_SOURCES += leveldb/db/repair.cc
111-
leveldb_libleveldb_a_SOURCES += leveldb/db/table_cache.cc
112-
leveldb_libleveldb_a_SOURCES += leveldb/db/version_edit.cc
113-
leveldb_libleveldb_a_SOURCES += leveldb/db/version_set.cc
114-
leveldb_libleveldb_a_SOURCES += leveldb/db/write_batch.cc
115-
leveldb_libleveldb_a_SOURCES += leveldb/table/block_builder.cc
116-
leveldb_libleveldb_a_SOURCES += leveldb/table/block.cc
117-
leveldb_libleveldb_a_SOURCES += leveldb/table/filter_block.cc
118-
leveldb_libleveldb_a_SOURCES += leveldb/table/format.cc
119-
leveldb_libleveldb_a_SOURCES += leveldb/table/iterator.cc
120-
leveldb_libleveldb_a_SOURCES += leveldb/table/merger.cc
121-
leveldb_libleveldb_a_SOURCES += leveldb/table/table_builder.cc
122-
leveldb_libleveldb_a_SOURCES += leveldb/table/table.cc
123-
leveldb_libleveldb_a_SOURCES += leveldb/table/two_level_iterator.cc
124-
leveldb_libleveldb_a_SOURCES += leveldb/util/arena.cc
125-
leveldb_libleveldb_a_SOURCES += leveldb/util/bloom.cc
126-
leveldb_libleveldb_a_SOURCES += leveldb/util/cache.cc
127-
leveldb_libleveldb_a_SOURCES += leveldb/util/coding.cc
128-
leveldb_libleveldb_a_SOURCES += leveldb/util/comparator.cc
129-
leveldb_libleveldb_a_SOURCES += leveldb/util/crc32c.cc
130-
leveldb_libleveldb_a_SOURCES += leveldb/util/env.cc
131-
leveldb_libleveldb_a_SOURCES += leveldb/util/filter_policy.cc
132-
leveldb_libleveldb_a_SOURCES += leveldb/util/hash.cc
133-
leveldb_libleveldb_a_SOURCES += leveldb/util/histogram.cc
134-
leveldb_libleveldb_a_SOURCES += leveldb/util/logging.cc
135-
leveldb_libleveldb_a_SOURCES += leveldb/util/options.cc
136-
leveldb_libleveldb_a_SOURCES += leveldb/util/status.cc
49+
leveldb_libleveldb_la_SOURCES=
50+
leveldb_libleveldb_la_SOURCES += leveldb/port/port_stdcxx.h
51+
leveldb_libleveldb_la_SOURCES += leveldb/port/port.h
52+
leveldb_libleveldb_la_SOURCES += leveldb/port/thread_annotations.h
53+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/db.h
54+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/options.h
55+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/comparator.h
56+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/filter_policy.h
57+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/slice.h
58+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/table_builder.h
59+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/env.h
60+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/export.h
61+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/c.h
62+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/iterator.h
63+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/cache.h
64+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/dumpfile.h
65+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/table.h
66+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/write_batch.h
67+
leveldb_libleveldb_la_SOURCES += leveldb/include/leveldb/status.h
68+
leveldb_libleveldb_la_SOURCES += leveldb/db/log_format.h
69+
leveldb_libleveldb_la_SOURCES += leveldb/db/memtable.h
70+
leveldb_libleveldb_la_SOURCES += leveldb/db/version_set.h
71+
leveldb_libleveldb_la_SOURCES += leveldb/db/write_batch_internal.h
72+
leveldb_libleveldb_la_SOURCES += leveldb/db/filename.h
73+
leveldb_libleveldb_la_SOURCES += leveldb/db/version_edit.h
74+
leveldb_libleveldb_la_SOURCES += leveldb/db/dbformat.h
75+
leveldb_libleveldb_la_SOURCES += leveldb/db/builder.h
76+
leveldb_libleveldb_la_SOURCES += leveldb/db/log_writer.h
77+
leveldb_libleveldb_la_SOURCES += leveldb/db/db_iter.h
78+
leveldb_libleveldb_la_SOURCES += leveldb/db/skiplist.h
79+
leveldb_libleveldb_la_SOURCES += leveldb/db/db_impl.h
80+
leveldb_libleveldb_la_SOURCES += leveldb/db/table_cache.h
81+
leveldb_libleveldb_la_SOURCES += leveldb/db/snapshot.h
82+
leveldb_libleveldb_la_SOURCES += leveldb/db/log_reader.h
83+
leveldb_libleveldb_la_SOURCES += leveldb/table/filter_block.h
84+
leveldb_libleveldb_la_SOURCES += leveldb/table/block_builder.h
85+
leveldb_libleveldb_la_SOURCES += leveldb/table/block.h
86+
leveldb_libleveldb_la_SOURCES += leveldb/table/two_level_iterator.h
87+
leveldb_libleveldb_la_SOURCES += leveldb/table/merger.h
88+
leveldb_libleveldb_la_SOURCES += leveldb/table/format.h
89+
leveldb_libleveldb_la_SOURCES += leveldb/table/iterator_wrapper.h
90+
leveldb_libleveldb_la_SOURCES += leveldb/util/crc32c.h
91+
leveldb_libleveldb_la_SOURCES += leveldb/util/env_posix_test_helper.h
92+
leveldb_libleveldb_la_SOURCES += leveldb/util/env_windows_test_helper.h
93+
leveldb_libleveldb_la_SOURCES += leveldb/util/arena.h
94+
leveldb_libleveldb_la_SOURCES += leveldb/util/random.h
95+
leveldb_libleveldb_la_SOURCES += leveldb/util/posix_logger.h
96+
leveldb_libleveldb_la_SOURCES += leveldb/util/hash.h
97+
leveldb_libleveldb_la_SOURCES += leveldb/util/histogram.h
98+
leveldb_libleveldb_la_SOURCES += leveldb/util/coding.h
99+
leveldb_libleveldb_la_SOURCES += leveldb/util/testutil.h
100+
leveldb_libleveldb_la_SOURCES += leveldb/util/mutexlock.h
101+
leveldb_libleveldb_la_SOURCES += leveldb/util/logging.h
102+
leveldb_libleveldb_la_SOURCES += leveldb/util/no_destructor.h
103+
leveldb_libleveldb_la_SOURCES += leveldb/util/testharness.h
104+
leveldb_libleveldb_la_SOURCES += leveldb/util/windows_logger.h
105+
106+
leveldb_libleveldb_la_SOURCES += leveldb/db/builder.cc
107+
leveldb_libleveldb_la_SOURCES += leveldb/db/c.cc
108+
leveldb_libleveldb_la_SOURCES += leveldb/db/dbformat.cc
109+
leveldb_libleveldb_la_SOURCES += leveldb/db/db_impl.cc
110+
leveldb_libleveldb_la_SOURCES += leveldb/db/db_iter.cc
111+
leveldb_libleveldb_la_SOURCES += leveldb/db/dumpfile.cc
112+
leveldb_libleveldb_la_SOURCES += leveldb/db/filename.cc
113+
leveldb_libleveldb_la_SOURCES += leveldb/db/log_reader.cc
114+
leveldb_libleveldb_la_SOURCES += leveldb/db/log_writer.cc
115+
leveldb_libleveldb_la_SOURCES += leveldb/db/memtable.cc
116+
leveldb_libleveldb_la_SOURCES += leveldb/db/repair.cc
117+
leveldb_libleveldb_la_SOURCES += leveldb/db/table_cache.cc
118+
leveldb_libleveldb_la_SOURCES += leveldb/db/version_edit.cc
119+
leveldb_libleveldb_la_SOURCES += leveldb/db/version_set.cc
120+
leveldb_libleveldb_la_SOURCES += leveldb/db/write_batch.cc
121+
leveldb_libleveldb_la_SOURCES += leveldb/table/block_builder.cc
122+
leveldb_libleveldb_la_SOURCES += leveldb/table/block.cc
123+
leveldb_libleveldb_la_SOURCES += leveldb/table/filter_block.cc
124+
leveldb_libleveldb_la_SOURCES += leveldb/table/format.cc
125+
leveldb_libleveldb_la_SOURCES += leveldb/table/iterator.cc
126+
leveldb_libleveldb_la_SOURCES += leveldb/table/merger.cc
127+
leveldb_libleveldb_la_SOURCES += leveldb/table/table_builder.cc
128+
leveldb_libleveldb_la_SOURCES += leveldb/table/table.cc
129+
leveldb_libleveldb_la_SOURCES += leveldb/table/two_level_iterator.cc
130+
leveldb_libleveldb_la_SOURCES += leveldb/util/arena.cc
131+
leveldb_libleveldb_la_SOURCES += leveldb/util/bloom.cc
132+
leveldb_libleveldb_la_SOURCES += leveldb/util/cache.cc
133+
leveldb_libleveldb_la_SOURCES += leveldb/util/coding.cc
134+
leveldb_libleveldb_la_SOURCES += leveldb/util/comparator.cc
135+
leveldb_libleveldb_la_SOURCES += leveldb/util/crc32c.cc
136+
leveldb_libleveldb_la_SOURCES += leveldb/util/env.cc
137+
leveldb_libleveldb_la_SOURCES += leveldb/util/filter_policy.cc
138+
leveldb_libleveldb_la_SOURCES += leveldb/util/hash.cc
139+
leveldb_libleveldb_la_SOURCES += leveldb/util/histogram.cc
140+
leveldb_libleveldb_la_SOURCES += leveldb/util/logging.cc
141+
leveldb_libleveldb_la_SOURCES += leveldb/util/options.cc
142+
leveldb_libleveldb_la_SOURCES += leveldb/util/status.cc
137143

138144
if TARGET_WINDOWS
139-
leveldb_libleveldb_a_SOURCES += leveldb/util/env_windows.cc
145+
leveldb_libleveldb_la_SOURCES += leveldb/util/env_windows.cc
140146
else
141-
leveldb_libleveldb_a_SOURCES += leveldb/util/env_posix.cc
147+
leveldb_libleveldb_la_SOURCES += leveldb/util/env_posix.cc
142148
endif
143149

144-
leveldb_libmemenv_a_CPPFLAGS = $(leveldb_libleveldb_a_CPPFLAGS)
145-
leveldb_libmemenv_a_CXXFLAGS = $(leveldb_libleveldb_a_CXXFLAGS)
146-
leveldb_libmemenv_a_SOURCES = leveldb/helpers/memenv/memenv.cc
147-
leveldb_libmemenv_a_SOURCES += leveldb/helpers/memenv/memenv.h
150+
leveldb_libmemenv_la_CPPFLAGS = $(leveldb_libleveldb_la_CPPFLAGS)
151+
leveldb_libmemenv_la_CXXFLAGS = $(leveldb_libleveldb_la_CXXFLAGS)
152+
leveldb_libmemenv_la_LDFLAGS = $(leveldb_libleveldb_la_LDFLAGS)
153+
leveldb_libmemenv_la_SOURCES = leveldb/helpers/memenv/memenv.cc
154+
leveldb_libmemenv_la_SOURCES += leveldb/helpers/memenv/memenv.h

0 commit comments

Comments
 (0)