... | ... | @@ -18,7 +18,9 @@ satisfaction when people in a big community say "thank you" for your |
|
|
efforts.
|
|
|
The projects mentioned below are taken from the official [KiCad road
|
|
|
map](http://bazaar.launchpad.net/~kicad-product-committers/kicad/product/view/head:/Documentation/development/road-map.md).
|
|
|
If you have another idea for a project, let us know.
|
|
|
If you have another idea for a project, let us know. If you are feeling
|
|
|
adventurous, you can also have a look at our list of [work
|
|
|
packages](WorkPackages) for KiCad.
|
|
|
|
|
|
Contact us:
|
|
|
[Javier Serrano](https://phonebook.cern.ch/phonebook/#id=pe476608)
|
... | ... | @@ -31,7 +33,7 @@ Contact us: |
|
|
|
|
|
*Goal:**
|
|
|
KiCad build scripts contain references to software libraries that may be
|
|
|
built together with KiCad if the user ask for it. The libraries and
|
|
|
built together with KiCad if the user asks for it. The libraries and
|
|
|
their patches should be moved into a separate project. That will allow
|
|
|
to build and install them as required instead of demanding them at
|
|
|
compile time. Besides that, it gives developers the flexibility to build
|
... | ... | @@ -41,7 +43,7 @@ will reduce the build footprint once they are removed. |
|
|
*Task:**
|
|
|
|
|
|
- Create a separate project to build all external dependency libraries
|
|
|
that are currently build from source (Boost, OpenSSL, etc).
|
|
|
that are currently built from source (Boost, OpenSSL, etc).
|
|
|
- Use CMake to create a package configuration file for each library so
|
|
|
the KiCad find package can pull in header paths, library
|
|
|
dependencies, compile flags, and link flags to build KiCad.
|
... | ... | @@ -70,9 +72,9 @@ Provide quality installers for all supported platforms. |
|
|
Ease the process of KiCad installation under different operating
|
|
|
systems. Determine if CPack is an appropriate solution to the problem.
|
|
|
If it is not the case, then there is a need for another automated
|
|
|
installer creation system. Think of possibility of building Linux
|
|
|
installer creation system. Think of the possibility of building Linux
|
|
|
packages (.deb/.rpm) using a script. That is a step to provide nightly
|
|
|
builds to testers, so they are not forced to build KiCad every new
|
|
|
builds to testers, so they are not forced to build KiCad after every new
|
|
|
commit.
|
|
|
|
|
|
## Software renderer for Graphics Abstraction Layer
|
... | ... | @@ -81,12 +83,11 @@ commit. |
|
|
KiCad has recently gained the [Graphics Abstraction
|
|
|
Layer](https://www.ohwr.org/project/cern-kicad/uploads/75b6351bcb623843446bd7068bc7f82f/view-spec.pdf), that helps
|
|
|
to separate display routines from data model and algorithms (think of
|
|
|
Model-View-Component design pattern). There are OpenGL and Cairo based
|
|
|
rendering backends available. The first one takes an advantage of
|
|
|
hardware acceleration, but there is a necessity for software renderer if
|
|
|
a video card is incapable of OpenGL support. The Cairo based renderer
|
|
|
serves that purpose, but it is too slow - we need either to speed it up
|
|
|
(some
|
|
|
the Model-View-Component design pattern). There are OpenGL and Cairo
|
|
|
based rendering backends available. The first one takes advantage of
|
|
|
hardware acceleration, but there is a necessity for a software renderer
|
|
|
if a video card has no OpenGL support. The Cairo-based renderer serves
|
|
|
that purpose, but it is too slow - we need either to speed it up (some
|
|
|
[groundwork](https://code.launchpad.net/~orsonmmz/+junk/cairo_fast) is
|
|
|
already done) or use another library.
|
|
|
|
... | ... | @@ -101,8 +102,8 @@ to support systems that do not have a complete OpenGL stack. |
|
|
*Goal:**
|
|
|
Provide an object introspection system using properties. The expected
|
|
|
result is a properties dialog capable of modification of common traits
|
|
|
for a group of selected items. You may find an example of such system in
|
|
|
Qt Designer, known as Property Editor.
|
|
|
for a group of selected items. You may find an example of such a system
|
|
|
in Qt Designer, known as Property Editor.
|
|
|
|
|
|
http://qt-project.org/doc/qt-4.8/images/designer-property-editor.png
|
|
|
*Picture 1. Qt Designer Property Editor*
|
... | ... | |