]> xenbits.xensource.com Git - unikraft/libs/python3.git/commitdiff
python3: Fix sqlite3 module RELEASE-0.10.0 RELEASE-0.7.0 RELEASE-0.8.0 RELEASE-0.9.0
authorVlad Badoiu <vlad_andrei.badoiu@upb.ro>
Sat, 15 Jan 2022 14:45:13 +0000 (16:45 +0200)
committerUnikraft <monkey@unikraft.io>
Tue, 1 Feb 2022 21:37:40 +0000 (21:37 +0000)
This patch fixes several problems that would cause compilation errors
when the sqlite3 module is selected. This patch fixes the name of
the module to sqlite3 as it defined in the oficial documentation, adds
missing export in module_config.c and defines passes two symbols
MODULE_NAME and SQLITE_OMIT_LOAD_EXTENSION.

Signed-off-by: Vlad Badoiu <vlad_andrei.badoiu@upb.ro>
Reviewed-by: Cezar Craciunoiu <cezar.craciunoiu@gmail.com>
Approved-by: Razvan Deaconescu <razvan.deaconescu@cs.pub.ro>
Tested-by: Unikraft CI <monkey@unikraft.io>
GitHub-Pull-Request: #4

Makefile.uk
modules_config.c

index d0bde0b0cf478f03947490fe7bde933ac03042b1..3cca77696da1209a86e7c8b730c44c36ac361c3f 100644 (file)
@@ -417,15 +417,22 @@ LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/sha512module.c
 LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/socketmodule.c
 # TODO enable LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/spwdmodule.c
 ifeq ($(CONFIG_LIBPYTHON3_EXTENSION_SQLITE),y)
+LIBPYTHON3_EXTENSIONS_CACHE_FLAGS-$(CONFIG_LIBPYTHON3_EXTENSION_SQLITE) += -DMODULE_NAME='"sqlite3"' -DSQLITE_OMIT_LOAD_EXTENSION
 LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/cache.c
+LIBPYTHON3_EXTENSIONS_CONNECTION_FLAGS-$(CONFIG_LIBPYTHON3_EXTENSION_SQLITE) += -DMODULE_NAME='"sqlite3"' -DSQLITE_OMIT_LOAD_EXTENSION
 LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/connection.c
+LIBPYTHON3_EXTENSIONS_CURSOR_FLAGS-$(CONFIG_LIBPYTHON3_EXTENSION_SQLITE) += -DMODULE_NAME='"sqlite3"' -DSQLITE_OMIT_LOAD_EXTENSION
 LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/cursor.c
 LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/microprotocols.c
-LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/module.c
+LIBPYTHON3_EXTENSIONS_MODULE_SQLITE_FLAGS-$(CONFIG_LIBPYTHON3_EXTENSION_SQLITE) += -DMODULE_NAME='"sqlite3"' -DSQLITE_OMIT_LOAD_EXTENSION
+LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/module.c|sqlite
+LIBPYTHON3_EXTENSIONS_PREPARE_PROTOCOL_FLAGS-$(CONFIG_LIBPYTHON3_EXTENSION_SQLITE) += -DMODULE_NAME='"sqlite3"' -DSQLITE_OMIT_LOAD_EXTENSION
 LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/prepare_protocol.c
+LIBPYTHON3_EXTENSIONS_ROW_FLAGS-$(CONFIG_LIBPYTHON3_EXTENSION_SQLITE) += -DMODULE_NAME='"sqlite3"' -DSQLITE_OMIT_LOAD_EXTENSION
 LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/row.c
+LIBPYTHON3_EXTENSIONS_STATEMENT_FLAGS-$(CONFIG_LIBPYTHON3_EXTENSION_SQLITE) += -DMODULE_NAME='"sqlite3"' -DSQLITE_OMIT_LOAD_EXTENSION
 LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/statement.c
-LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/util.c
+LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_sqlite/util.c|sqlite
 endif
 LIBPYTHON3_EXTENSIONS_SRCS-$(CONFIG_LIBPYTHON3_EXTENSION_SSL) += $(LIBPYTHON3_SRC)/Modules/_ssl.c
 LIBPYTHON3_EXTENSIONS_SRCS-y += $(LIBPYTHON3_SRC)/Modules/_struct.c
index 7772d003cc3e42c8729fa258b1ce9c1ba1e9e507..cfa2b42dfeeb4065134c9c88cad2be03b47ebb9e 100644 (file)
@@ -46,6 +46,7 @@ extern PyObject* PyInit_zipimport(void);
 extern PyObject* PyInit_faulthandler(void);
 extern PyObject* PyInit__tracemalloc(void);
 extern PyObject* PyInit__symtable(void);
+extern PyObject* PyInit__sqlite3(void);
 extern PyObject* PyInit_xxsubtype(void);
 
 /* Unikraft Marker start */
@@ -290,7 +291,7 @@ struct _inittab _PyImport_Inittab[] = {
     {"_socket", PyInit__socket},
 //TODO enable    {"spwd", PyInit_spwd},
 #if CONFIG_LIBPYTHON3_EXTENSION_SQLITE
-    {"sqlite", PyInit__sqlite3},
+    {"sqlite3", PyInit__sqlite3},
 #endif
 #if CONFIG_LIBPYTHON3_EXTENSION_SSL
     {"_ssl", PyInit__ssl},