[PD-dev] build system + template (ext13) = broken - fix?
hans at at.or.at
Tue Aug 25 18:40:42 CEST 2009
Its kind of amazing how complicated something like DESTDIR support can
be. This sounds like a workable solution, Makefile.buildlayout is a
bit whack anyway. I am find with you working directly in the SVN as
long as you stick with it until it works. That's the reason for the
nightly builds, to test active development. :)
On Aug 25, 2009, at 10:56 AM, dmotd wrote:
> this mail is covering the breakage that i
> described previously with the new externals
> makefile template (ext13).
> okay, so without going as far as tinkering with
> the various makefiles, i think i understand what
> is going wrong with the buildsys and the broken
> install destination (DESTDIR+objectsdir).
> it's a pretty simple case of using $DESTDIR
> outside of its natural habitat - the main culprit
> starting at 'packages/Makefile.buildlayout', and
> then a widespread misuse that is inflicted
> throughout the buidsystem.
> IOhannes' arguments for the template used with
> ext13 are probably well founded and the template
> itself uses the correct inplementation of the
> $DESTDIR variable - which is to prepend it to the
> actual install or uninstall directive with any
> addition directory prefixes added via other
> variables - $(objectsdir) in this scenario.
> i guess you've been concatenating the $DESTDIR as
> some form of shorthand into the $objectsdir var
> (and other assorted variables), which has worked
> up until now because the build system is pretty
> well self contained.
> now that IOhannes has introduced scope for using
> the buildsys makefile template for localized
> building it has open up a new range of problmes
> associated with $DESTDIR misuse in the first
> so, the solution is fairly simple but a bit messy:
> make all the destination variables described in
> Makefile.buildlayout conform to a format without
> the $DESTDIR prefix, and then find/replace all
> uses of these destination variables to conform to
> $(DESTDIR)$(buildsysdestvar) standard, (which by
> rule should only be used directly in an 'install'
> or 'uninstall' context.
> i guess you can tell me if i'm way off target
> here, but i'll try shifting around these vars
> locally and attempt a build before i commit
> anything to svn. i've run a successful(ly broken)
> build in the last 24hours, so i should have a
> decent test subject to work with. once checked in
> i guess its up to the autobuild server to shed
> some light on the various OS - i'm (un)fortunately
> contained to linux for the most part.
> hope this covers it and i'm not just being verbose
> without reason!
I have always wished for my computer to be as easy to use as my
telephone; my wish has come true because I can no longer figure out
how to use my telephone." --Bjarne Stroustrup
More information about the Pd-dev