← Back to team overview

unity-dev team mailing list archive

[Ayatana-dev] lp:unity source layout updates

 

Hey,

So, before we made the first 4.0 release for Oneiric, I took the
opportunity to reorganise Unity's source code layout in lp:unity. This
was to make things cleaner as well as fix a bunch of build issues that
were occurring due to some quirkiness in the way CMake works with sub
directories.

The main highlights are:

- a plugins/ directory that houses the various plugins we build for
Compiz. 
  The unityshell plugin has been moved into here so there is no longer a
  src/ directory inside the toplevel directory.

- a UnityCore folder. This contains the code that we would like to share
with
  unity-2D. It is built up of mainly Utility functions as models for use
by the
  two implementations. We will also be moving settings objects into
this 
  library in the future.

- resources/ is now moved into plugins/unityshell/ as they are only for
the
  unityshell plugin.

- We build documentation for UnityCore, the panel service and also
  unityshell, you can run `make doxygen` to produce these docs. At the 
  moment they are mostly class hierarchy, namespaces, methods etc but
  we will start adding extra documentation to Unity.

That's it for now. Next on my plate with regards to Unity's build is:

1. Update the tests/ folder to better represent the different components
of  
    Unity, instead of trying to meld them together for testing. (I might
end
    up putting test directories next to the actual components instead of
in
   the toplevel, but i'll see how it goes).

2. Find a way to make compilation times quicker by trying to link the 
    unityshell tests to the libunityshell.so produced for Compiz (has
not
    gone well so far!)

That's all regarding these changes for now, will keep you guys updated
with the progress of the last two items!

-- 
Neil Jagdish Patel | Technical Lead
Desktop Experience Team
Canonical
27 Floor, Millbank Tower
London SW1P 4QP
Ubuntu - Linux for Human Beings
www.canonical.com