kicad-developers team mailing list archive
Mailing list archive
Re: Depndency tracking
Dick Hollenbeck <dick@...>
Thu, 01 Nov 2007 00:28:55 -0500
Thunderbird 188.8.131.52pre (X11/20071023)
I'd like to get rid of the recursive make calls too, it's not good
practise. For one thing when part of the build fails the overall make
doesn't fail, which is not ideal for automated package building.
Keep the recursive makefile. What should be lost is the "-k" option
that causes make to continue after a error. Having a Makefile in each
directory allows one to type "make" when you are in a lower level
directory editing files. For example I have some supporting libraries
and when in there I can run "make check" for an automated unit test.
Very good after making a change. But you are right make should fail
on an error.
This sounds like a nice feature, but I've only used it about 3 times out
of the ~500 times that I have built Kicad.
The reason being is that the build is currently fast, since the build
environment is very much to the point. And how long does it take for
me, as a developer to compile one file and link?
So we both have the same concern here, fast builds. Me especially so
since the edit, build, test cycle is repeated over and over.
I'll still argue for using GNU autoconf. The current method does not
scale. What happens if you want to build on a few more platforms?
At work My stuff needs to work on Linux (two different distributions)
and on Solaris 8 and Solaris 10 with GNU gcc (3x and 4x)and Sun's
"Studio 11" compiler. No way would I want to maintain multiple makefile.
I just list the files in Makefile.am and that's it. I find now that my code
will compile on platforms I've never seen before
For the linux makefile, we have several issues that would keep you busy
for a long time:
1) DEBUG or not DEBUG defined (and that controls which wxWidgets library
to link to)
2) Static or not static. This is important to me, since the link is
faster when not linking static. JP Charras links static when doing a
3) The wxWidgets build or not build. Debug or not Debug. Where does
the library come from on each platform?
4) The 3d library build or not build. Where does the library come from
on each platform?
And this is just linux.
Where there is a will, there is a way. However, please don't consider
it a success if we have to give up anything we have now. But as you
originally said, you can do this in parallel with the current makefiles.
I just installed The new Mac OS X "Leopard". I'm going to see if
I can build Kicad on it now
What was wrong with the old version of OS X? What happens if someone
else wants to build on that older platform, with or without the autoconf
Looks like it is pretty easy to get spread too thin around here, trying
to support more than we have man-hours available to achieve.
But you are the master of your own time, have fun. (I vowed personally
to never spend another moment reading the GNU autoconf docs. Life is
I switched to Pervasive Jam on one of my projects. I'm moderately
happy. Whatever you are used to, tends to win the day.