On 2016/06/01 11:22, Stuart Henderson wrote: > On 2016/06/01 09:09, Landry Breuil wrote: > > And most importantly, 47 (released next week) requires 3.11. > > /usr/obj/ports/firefox-47.0beta9/firefox-47.0b9/old-configure:SQLITE_VERSION=3.11.0 > > Ok, I'll update the diff this evening.
So this was a bit optimistic... 3.11 and 3.13 start making more changes to the Tcl scripts that replaced the awk scripts and it's beyond my awk to replicate them. (Also I'm not too sure about the XXX in Makefile about lempar.c which has changed upstream since the version where we added it). As I see it there are two options to get us out of the hole. - Pregenerate the files with Tcl and commit them, adapting the Makefile to use them. This is looking possible for 3.11 though still a bit of a pain to handle the build system hacks that will be needed. From a quick look at 3.13 there are more build system changes and further changes to the Tcl. I for one am not going to be able to maintain a forked build system with this many moving pieces. - Switch to the "amalgamation" (4 source files: 3 for the lib, one for the shell), which is what upstream push people towards using (and what everybody else that I've seen including sqlite source uses). With this the main file is unfortunately huge but would be easier by far to update later. Note that we only have a small change to the actual source code (replacing the RNG code) which is easy enough to carry across. Most of our changes are to the build infrastructure. As far as Firefox goes, I think sqlite 3.11 should do us until release, but might be problematic if we want to update in -stable ports. >From what I can tell sqlite upstream *are* careful about ABI. But it would seem quite a stretch to expect things to work safely/reliably with two different versions brought into one address space.