kdb build

Jaroslaw Staniek staniek at kde.org
Mon Jun 8 08:42:48 BST 2015


Thanks for the patch Treeve. I'd like to see a discussion on the core
issue before.

I've been thinking about a clean way to handle such cases in general.

How about this approach:
Don't change the location of generated files. Generate the file only
if the .y or .l file has been changed (the content or modification
time?). In this case overwrite the generated files -- it's nothing
wrong since the user will have the .y / .l files changed too so
there's source code to be committed anyway.

If the .y / .l files are untouched then regardless of availability of
bison/flex, do not run any generation.

Your patch gives the following default: when I am changing the .y or
.l file, e.g. by applying a patch, changes are ignored, and old code
is compiled. This is not expected. The question is, why would you want
to avoid regeneration the generated files. If there is no reason to
regenerate, we can take care to avoid regeneration (that's my proposal
above). And as I mentioned in my other mail, Qt for example contains
generated files if the tools that generate are quite specific and not
bundled (i.e. unlike the moc, uic).

The bottom line is, I find it important to be sure that KDb of given
version's contains exactly the same source code on every platform
(modulo ifdefs). This gives us control and independence of actual
changes in bison/flex -- the tools can change enough so the code's
internal structure changed itself and we'll end up with maintenance
issues. We depend on some structures that are generated and also
modify the code a bit in the .sh script.


On 6 June 2015 at 14:35, Treeve Jelbert <treeve at scarlet.be> wrote:
> add an optiona to enable regeneration of files using bison/flex
>
> The avoids polluting the source tree for non-developer builds
>
> See attached file
>
> Regrds, Treeve
> _______________________________________________
> calligra-devel mailing list
> calligra-devel at kde.org
> https://mail.kde.org/mailman/listinfo/calligra-devel
>



-- 
regards, Jaroslaw Staniek

KDE:
: A world-wide network of software engineers, artists, writers, translators
: and facilitators committed to Free Software development - http://kde.org
Calligra Suite:
: A graphic art and office suite - http://calligra.org
Kexi:
: A visual database apps builder - http://calligra.org/kexi
Qt Certified Specialist:
: http://www.linkedin.com/in/jstaniek



More information about the calligra-devel mailing list