← Back to team overview

kicad-developers team mailing list archive

Re: Recent dependencies break builds.

 

On 08/feb/2014, at 13:57, Wayne Stambaugh <stambaughw@xxxxxxxxxxx> wrote:
> Marco,
> 
> Not a problem.  Please keep in mind that downloading and building
> dependencies like wxPython or swig from source should be the last option
> even on OSX.  Always use find_package() first to see if it is already
> installed on the system and only if it can not be found should you build
> a dependency from source.  This saves a huge amount of time when the
> dependency is already installed on the system.  There is no
> FindwxPython.cmake that I'm aware of but someone should write one.
> Wayne

Wayne, 
I’ve tried to do that, but was not a viable way, (is the reason why building with wxPython and swig is 
a two-step operation) first enable *BUILD*, make the library, then set the *SCRIPTING* flag and ultimate the code.

Now, about always use find_package(), i think we have to understood which is the goal, 
your is understate that kicad’s distribution path is compile, i mine in this case was binary.
Download the package and make (after have installed the library obviously).
That I think is the easier way to distribute and make users “operative” soon on my platform,
without have users hassle with difference of installed libraries/dependancies.

This also because OSX has not a package manager like yum, apt-get, rpm or pacman
and i wish avoid users to have to fight/manage with something like ports, that could be 
an obstacle for someone that is not a poweruser, or works on corporate machines where
privileges are limited.
On the other side, OSX has already some libraries installed by default and different versions
of them, i forced a version python-2.6 for example because i know that is spread on the machine 
already running, lately OSX has also 2.7 by default but this could break backwards compatibility.

When i force build libraries, is because those are missing, or doesn’t need the requirements to
make kicad work correctly (wx-* for example).
OSX has for example wx-2.8 that is nor patched for native overlay, that is known to be a common pitfall 
for much new adopting people that wants to build from scratch,
i wish avoid this frustration and try to avoid abandon from those potential-(user/developer)base.
This helps also me to avoid to understand which library he has used and all the triage when there is 
an issue/ticket.

**ANYWAY**
The work i made was thinked to be usable by other platforms, if you have ideas
about change it and make it adaptable for your platform you are more than welcome,
the cmake code i’ve kept it more neutral I can, with the intent to have something that could be shared/reused
between platforms otherwise i’ve shipped that by another path.
If you all agree that is not needed i could change the flag name KICAD_ in something more linked to OSX like
KICAD_OSX* or OSX_BUILD_* to avoid confusion.

—
Marco

References