bencollver
09.10.2024, 00:58 |
SQLite 3.46.1 compiled for DOS (Announce) |
Here's SQLite 3.46.1 compiled for DOS using DJGPP. Thanks to Superllu's DoJS for clues about changes and compile-time options needed. The DJGPP diff and Makefile are in the src/ directory.
gopher://tilde.pink/1/~bencollver/files/dos386/database/sqlite/
https://gopher.tildeverse.org/tilde.pink/1/~bencollver/files/dos386/database/sqlite/ |
SuperIlu
Berlin, Germany, 20.10.2024, 12:56
@ bencollver
|
SQLite 3.46.1 compiled for DOS |
> > Do you mind if I include your update in a later DOjS version?
> I don't mind at all! Your 3.34.1 build gave me a head start.
Thx, will check it out...
> In my perspective, the ugliest hack in my patch is related to the file name
> canonicalization. Except on win32, SQLite "expects" file names to begin
> [..]
I vaguely remember that being the reason why I didn't upgrade...
> I would rather have used DJGPP's _truename() but i didn't want to meddle
> that much with SQLite's code.
Maybe they take an upstream patch? They used to support DJGPP at one point...
> The DOS build currently disables file locking. If i was feeling ambitious,
> [...]
Uh, that would be an A+ I guess. --- Javascript on MS-DOS? Try DOjS https://github.com/SuperIlu/DOjS
Fediverse: @dec_hl@mastodon.social |
bencollver
19.10.2024, 17:41
@ SuperIlu
|
SQLite 3.46.1 compiled for DOS |
> > Here's SQLite 3.46.1 compiled for DOS using DJGPP.
>
> Do you mind if I include your update in a later DOjS version?
I don't mind at all! Your 3.34.1 build gave me a head start.
In my perspective, the ugliest hack in my patch is related to the file name canonicalization. Except on win32, SQLite "expects" file names to begin with the '/' character. The newer versions have low level code to manually canonicalize the file name. It translates c:/db.dat to /c:/db.dat and this doesn't work for DJGPP. I worked around this by adding a memmove() at the end to shift the result 1 character left, eliminating the leading '/', but only if the third character is ':'. Crude, but it works on my machine.
I would rather have used DJGPP's _truename() but i didn't want to meddle that much with SQLite's code.
The DOS build currently disables file locking. If i was feeling ambitious, i would try to modify SQLite to support file locking on DOS. I know that this is possible with SHARE.EXE on FAT16 and SMB filesystems. In practice, i don't do networking on DOS so i don't need multi-user SQLite (high effort, low reward). |
SuperIlu
Berlin, Germany, 19.10.2024, 09:32
@ bencollver
|
SQLite 3.46.1 compiled for DOS |
> Here's SQLite 3.46.1 compiled for DOS using DJGPP. Thanks to Superllu's
> DoJS for clues about changes and compile-time options needed. The DJGPP
I had a stand alone 3.34.1 as well :)
https://github.com/SuperIlu/DOSQLite
Do you mind if I include your update in a later DOjS version?
Up to now I was to lazy to update because "never change a running system" --- Javascript on MS-DOS? Try DOjS https://github.com/SuperIlu/DOjS
Fediverse: @dec_hl@mastodon.social |