Proposal: standardized (subdir) names for 3rdparty/generated code

Friedrich W. H. Kossebau kossebau at kde.org
Fri Mar 6 00:16:49 GMT 2015


Hi,

so I spent quite some time scanning the sources, below is what I found as 
TODO.

So the idea still is: put 3rd-party code into a subdir "3rdparty" and put 
generated and committed code into a subdir "generated", either locally or 
globally. This allows automatted handling of such code files in scripts/greps 
etc, and also helps understanding code when looking for the big picture.

I propose to apply the changes listed below in 2.9, I do not see a risk in 
breaking something. Only the cmake files should be affected, and perhaps some 
includes. The more things are consistent in 2.9 with master/future frameworks 
branch, the better.

Please also tell what generated files or 3rd-party code is missing from the 
list below

Will do that 6th evening or 7th morning, unless someone objects.

3rdparty code
=============

TODO:
filters/sheets/qpro/libqpro
-> filters/sheets/qpro/3rdparty/libqpro

filters/words/msword-odf/wv2
from what I heard this can be considered a fork already.
but for now I would still treat it as 3rdparty lib,
until the further fate of this lib has been discussed
-> filters/words/msword-odf/3rdparty/wv2

filters/words/rtf/import/rtf-qt
-> filters/words/rtf/import/3rdparty/rtf-qt

gemini/cloud/dropbox/libs/
@leinir, where is that code from?
-> gemini/cloud/dropbox/3rdparty/*

kexi/migration/mdb/src/mdbtools/
-> kexi/migration/mdb/3rdparty/mdbtools/

krita/plugins/extensions/gmic/src
-> krita/plugins/extensions/gmic/3rdparty/gmic

krita/plugins/formats/xcf/
most besides kis_xcf_import.*, CMakeLists.txt,*.desktop
-> krita/plugins/formats/xcf/3rdparty/xcftools

plan/plugins/schedulers/rcps/libs
-> plan/plugins/schedulers/rcps/3rdparty/LibRCPS

plugins/formulashape/itexToMML
-> plugins/formulashape/3rdparty/itexToMML

sheets/mdds
-> sheets/3rdparty/mdds


Already proper:
3rdparty/*


Generated code
==============

TODO: (?)
libs/db/parser/sqlscanner.cpp
libs/db/keywords.cpp
libs/db/drivers/*/*keywords.cpp
kexi/kexidb/drivers/*/*keywords.cpp
libs/db will be replaced by predicate in 3.0, so let's just ignore those
@jstaniek/piggz, the same is true for kexi/kexidb/, right? So could be ignored 
as well.

Already proper:
filters/libmso/generated/simpleParser.* 
filters/libmsooxml/generated/generatedShapes.h
(though generator.cpp is in the same dir, without instructions. ideally would 
be a separate dir)

Cheers
Friedrich



More information about the calligra-devel mailing list