[prev in list] [next in list] [prev in thread] [next in thread]
List: sqlite-users
Subject: Re: [sqlite] SQLite 3.21 on IBM Mainframe - z/OS
From: mbezzi <mbezzi () tiscali ! it>
Date: 2017-12-26 12:30:36
Message-ID: 6ee17fb0-da89-a920-7028-bac5361c5c58 () tiscali ! it
[Download RAW message or body]
Quick update:
The -qdll compiler option, needed to enable dynamic extensions, causes
problems with some SQLite commands. Removing it fixes those problems.
For the time being I've removed the option and I will continue to test.
Thank you,
mario
On 12/25/2017 10:08 PM, Mario Bezzi wrote:
> Hello,
>
> SQLite 3.21 autoconf (sqlite-autoconf-3210000.zip) compiles and runs
> successfully on z/OS 2.2 with few minor modifications which I would
> like the developers to consider for integration into the code base.
>
> Namely:
>
> 1 - In sqlite3.c, in the code section coming from tokenize.c, the
> EBCDIC version of the aiClass[] array defines codepoint 0x15 as class
> '27' (CC_ILLEGAL). In EBCDIC (both codepages 037 and 1047, the most
> common ones) 0x15 is actually NL (newline) and should be defined as
> class '7' CC_SPACE to allow the tokenizer to properly manage
> multi-line statements.
>
> There are minor issues in the Makefile generated by ./configure:
>
> 2 - The ./configure process wrongly detects the presence of the posix
> fallocate function, which is not actually available ("checking for
> posix_fallocate... yes"), and sets -DHAVE_POSIX_FALLOCATE=1. It should
> be -DHAVE_POSIX_FALLOCATE=0. I don't know why this happens as I was
> not able to understand what the check does. I will be happy to help
> debugging it if guided.
>
> 3- In order to successfully compile sqlite3, the C compiler command
> (CC=..) should be changed from cc to xlc; the CFLAGS option should be
> set to "CFLAGS = -g -qFLOAT=IEEE -qstrict -qdll" and
> "-D_XOPEN_SOURCE=600" should be added to the current DEFS.
>
> If needed I have a diff generated pach for 1) and another one for 2)
> 3) to make the required changes better understandable.
>
> With these changes the process to build sqlite is as simple as:
>
> 1- Upload a non compressed tarball of the autoconf version of SQLite
> to a file in your OMVS environment (let say the file is called
> sqlite-autoconf-3210000.tar)
>
> From your OMVS shell issue the following commands
>
> 2- pax -ofrom=iso8859-1,to=ibm-1047 -rf sqlite-autoconf-3210000.tar
> (the "to" codepage in the pax command must be set to your actual
> EBCDIC codepage)
>
> 3- ./configure --enable-dynamic-extension (I need this option myself
> but of course it is not mandatory)
>
> 4- for the time being manually apply the changes described above
>
> 5- make
>
> Et voilĂ .
>
> At the moment I am testing with the sqlite3 cli, and I can perform
> normal operations and load and use dynamic extensions.
>
> I will keep testing and I will report other issues if any.
>
> Hope this helps,
>
> mario
>
>
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic