[oi-dev] sqlite-3 mapfile needs API updates
Peter Tribble
peter.tribble at gmail.com
Fri Mar 10 08:31:27 UTC 2023
For what it's worth, rather than try and continually chase the API changes,
in
Tribblix I recently dropped the mapfile entirely, and Solaris has done the
same
(the file is in the repo, but it's no longer used). I suggest you follow
that path too.
https://twitter.com/ptribble/status/1592625542435835905
On Fri, Mar 10, 2023 at 7:42 AM Tim Mooney via oi-dev <
oi-dev at openindiana.org> wrote:
>
> All-
>
> I think the mapfile that's being used with our sqlite-3 is out of date,
> and it's causing symbols that should be part of the public API to be
> tagged as 'local', rather than 'global'.
>
> The two I've noticed that should be 'global' are
>
> sqlite3_bind_pointer
> sqlite3_result_blob64
>
> but now that I know it's because of our mapfile, I've found many more,
> and I've only begun looking. Example:
>
> https://www.sqlite.org/bindptr.html
>
> Those functions were added at 3.20.0 in 2017, but are being marked 'local'
> by our mapfile.
>
> If I modify our mapfile so the most recent group:
>
> SYMBOL_VERSION sqlite_3.31.1 {
> global:
> sqlite3_column_origin_name;
> sqlite3_column_origin_name16;
> sqlite3_column_table_name;
> sqlite3_column_table_name16;
> sqlite3_drop_modules;
> sqlite3_filename_database;
> sqlite3_filename_journal;
> sqlite3_filename_wal;
> sqlite3_hard_heap_limit64;
> sqlite3_keyword_check;
> sqlite3_keyword_count;
> sqlite3_keyword_name;
> sqlite3_stmt_isexplain;
> sqlite3_uri_key;
> sqlite3_value_frombind;
> } sqlite_3.19.0;
>
>
> Becomes something like this:
>
> SYMBOL_VERSION sqlite_3.31.1 {
> global:
> # some symbols listed here
> } sqlite_3.28.0;
>
> SYMBOL_VERSION sqlite_3.28.0 {
> global:
> # some symbols listed here
> } sqlite_3.23.0;
>
> SYMBOL_VERSION sqlite_3.23.0 {
> global:
> # some symbols listed here
> } sqlite_3.22.0;
>
> SYMBOL_VERSION sqlite_3.22.0 {
> global:
> # some symbols listed here
> } sqlite_3.20.0;
>
> SYMBOL_VERSION sqlite_3.20.0 {
> global:
> # some symbols listed here
> } sqlite_3.19.0;
>
>
> is that going to break everything that uses symbols in the current
> sqlite_3.31.1 "block"? Obviously I would add blocks for function
> additions since 3.31.1.
>
> BTW, I looked at the Solaris userland mapfile for sqlite-3 and theirs
> differs significantly from ours, but it actually appears ours is more
> up to date.
>
> Tim
> --
> Tim Mooney Tim.Mooney at ndsu.edu
> Enterprise Computing & Infrastructure /
> Division of Information Technology / 701-231-1076 (Voice)
> North Dakota State University, Fargo, ND 58105-5164
>
> _______________________________________________
> oi-dev mailing list
> oi-dev at openindiana.org
> https://openindiana.org/mailman/listinfo/oi-dev
>
--
-Peter Tribble
http://www.petertribble.co.uk/ - http://ptribble.blogspot.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openindiana.org/pipermail/oi-dev/attachments/20230310/3f9201ac/attachment.html>
More information about the oi-dev
mailing list