lbry-android-sdk/p4a/pythonforandroid/recipes/pyleveldb/bindings-only.patch

120 lines
3.9 KiB
Diff
Raw Normal View History

2022-11-29 21:35:24 +01:00
This patch force to only build the python bindings, and to do so, we modify
the setup.py file in oder that finds our compiled libraries (libleveldb.so and
libsnappy.so)
--- leveldb-0.194/setup.py.orig 2016-09-17 02:05:55.000000000 +0200
+++ leveldb-0.194/setup.py 2019-02-26 16:57:40.997435911 +0100
@@ -11,44 +11,25 @@ import platform
import sys
from setuptools import setup, Extension
+from os import environ
system, node, release, version, machine, processor = platform.uname()
-common_flags = [
- '-I./leveldb/include',
- '-I./leveldb',
- '-I./snappy',
+extra_compile_args = [
+ '-I{}/include'.format(environ.get('LEVELDB_BUILD_PATH')),
+ '-I{}'.format(environ.get('LEVELDB_BUILD_PATH')),
+ '-I{}'.format(environ.get('SNAPPY_BUILD_PATH')),
+ '-I.',
'-I.',
- '-fno-builtin-memcmp',
'-O2',
'-fPIC',
'-DNDEBUG',
'-DSNAPPY',
+ '-pthread',
+ '-Wall',
+ '-D_REENTRANT',
+ '-DOS_ANDROID',
]
-if system == 'Darwin':
- extra_compile_args = common_flags + [
- '-DOS_MACOSX',
- '-DLEVELDB_PLATFORM_POSIX',
- '-Wno-error=unused-command-line-argument-hard-error-in-future',
- ]
-elif system == 'Linux':
- extra_compile_args = common_flags + [
- '-pthread',
- '-Wall',
- '-DOS_LINUX',
- '-DLEVELDB_PLATFORM_POSIX',
- ]
-elif system == 'SunOS':
- extra_compile_args = common_flags + [
- '-pthread',
- '-Wall',
- '-DOS_SOLARIS',
- '-DLEVELDB_PLATFORM_POSIX',
- ]
-else:
- sys.stderr.write("Don't know how to compile leveldb for %s!\n" % system)
- sys.exit(1)
-
setup(
name = 'leveldb',
version = '0.194',
@@ -81,57 +62,11 @@ setup(
ext_modules = [
Extension('leveldb',
sources = [
- # snappy
- './snappy/snappy.cc',
- './snappy/snappy-stubs-internal.cc',
- './snappy/snappy-sinksource.cc',
- './snappy/snappy-c.cc',
-
- #leveldb
- 'leveldb/db/builder.cc',
- 'leveldb/db/c.cc',
- 'leveldb/db/db_impl.cc',
- 'leveldb/db/db_iter.cc',
- 'leveldb/db/dbformat.cc',
- 'leveldb/db/filename.cc',
- 'leveldb/db/log_reader.cc',
- 'leveldb/db/log_writer.cc',
- 'leveldb/db/memtable.cc',
- 'leveldb/db/repair.cc',
- 'leveldb/db/table_cache.cc',
- 'leveldb/db/version_edit.cc',
- 'leveldb/db/version_set.cc',
- 'leveldb/db/write_batch.cc',
- 'leveldb/table/block.cc',
- 'leveldb/table/block_builder.cc',
- 'leveldb/table/filter_block.cc',
- 'leveldb/table/format.cc',
- 'leveldb/table/iterator.cc',
- 'leveldb/table/merger.cc',
- 'leveldb/table/table.cc',
- 'leveldb/table/table_builder.cc',
- 'leveldb/table/two_level_iterator.cc',
- 'leveldb/util/arena.cc',
- 'leveldb/util/bloom.cc',
- 'leveldb/util/cache.cc',
- 'leveldb/util/coding.cc',
- 'leveldb/util/comparator.cc',
- 'leveldb/util/crc32c.cc',
- 'leveldb/util/env.cc',
- 'leveldb/util/env_posix.cc',
- 'leveldb/util/filter_policy.cc',
- 'leveldb/util/hash.cc',
- 'leveldb/util/histogram.cc',
- 'leveldb/util/logging.cc',
- 'leveldb/util/options.cc',
- 'leveldb/util/status.cc',
- 'leveldb/port/port_posix.cc',
-
# python stuff
'leveldb_ext.cc',
'leveldb_object.cc',
],
- libraries = ['stdc++'],
+ libraries = ['snappy', 'leveldb', 'stdc++', 'c++_shared'],
extra_compile_args = extra_compile_args,
)
]