Le Wed, Aug 07, 2002, à 12:22:05AM +0200, Hans Breuer a écrit:
> Hi Lars and Steffen,
> while trying to compile current cvs Dia I stumbled
> over two recently added 'features'
>
> lib/paper.c #includes ../app/
> to get on prefs
>
> plug-ins/svg/svg-import.c
> #include "../objects/standard/create.h"
> #include "../objects/custom/shape_info.h"
>
> the main problem here is using
> void parse_style(xmlNodePtr node, GraphicStyle *s);
> from objects/custom
> So: plug-ins should stay independent of each other. There
> are many way to avoid this deps: move the shared functionality
> to the core lib, merge both plug-ins into one, ...
Looks to me that either that specific common functionality should move to
lib/, or
> And making lib depend on app gives nice circular dependencies.
> Do we really need them ?
Please, no! On the Win32 platform, Delphi (as opposed to C and C++
compilers) is able to do load-time dependencies. Used carelessy (as I've
seen once), it leads to even worse than woolball.
Looks to me that either that specific common functionality should move to
lib/, or objects/custom move as static-linked into libdia.a (or
static-linked as libdiacustom.a). I think the first solution is the least
intrusive, most "refactor-like".
-- Cyrille
--
Grumpf.