RFC: Turning flag TINY into ACTIVEONLY, move Author to toplevel dir
Friedrich W. H. Kossebau
kossebau at kde.org
Sun Feb 17 22:00:46 GMT 2013
Hi,
I am looking currently into proper packaging of Calligra Active. And would
propose that we redo the flags which control when Calligra Active is build.
Calligra Active related requirements:
a) Packagers should have a simple flag/way to build exlusively CalligraActive
and everything that is useful for that (currently the part libs of Sheets,
Stage, Words + all the related filters and the thumbnailers)
b) CalligraActive should be optionally also flagged for build in parallel with
the "normal" program(shell)s of Sheets, Stage & Words.
Requirement a) will make packagers of PlasmaActive-centered distris happy, as
they do not need the QWidget-based shells at all. Requirement b) is for other
packagers who would like to make their users CalligraActive available as well,
and also for developers who do not want to maintain two separate builds just
to also develop CalligraActive next to the old-fashioned programs. Currently
one needs to patch the CMakeLists.txt to have CalligraActive built with
everything else.
So the build system needs to be aware that all of Sheets, Stage & Words is
composed from two things, the core (part) and the shell/app.
Currently CalligraActive is only build in TINY build set. TINY also limits the
filters which are installed. What is the purpose of TINY? Who is known to use
TINY? Could it perhaps be removed, or rather changed to ACTIVEONLY?
One thing that also seems strange to me is that the executables are also done
in the parts/ subdirs for most programs. What about splitting that out into a
sibling app/ subdir? Would help with structure
And I would also ask to move Author out of its ambush and give it a full real
toplevel dir, to reduce the complexity in dir layout. Or is there any real
need to have it there? Now it even has an icon ;), no need to be shy and hide.
And time for an own SHOULD_BUILD_AUTHOR.
My current plan:
1) move Author files into toplevel dir author/ with usual subdirs (still
controlled by SHOULD_BUILD_WORDS at this point)
2) split program/executable/shell related files of Sheets,Stage,Words from the
part/ subdir into a sibling app/
3) add SHOULD_BUILD_{SHEETS,STAGE,WORDS}_COREONLY, to be used when
SHOULD_BUILD_{SHEETS,STAGE,WORDS,AUTHOR) is set to true (also introduce
SHOULD_BUILD_AUTHOR here)
4) turn TINY into ACTIVEONLY, there set
SHOULD_BUILD_{SHEETS,STAGE,WORDS}_COREONLY to true, and remove any TINY-
related build restrictions in the filters (but not elsewhere)
5) add ALLANDACTIVE flag to have everything including the Active stuff built
I would do separate patches for 1) and 2). The rest, 3),4),5), should be
doable in one patch without losing overview.
What do you think? Suggestions, improvements? ... What, flames? :)
Cheers, good night
Friedrich
More information about the calligra-devel
mailing list