[PD-dev] removing files from externals/build/src
Hans-Christoph Steiner
hans at eds.org
Mon Dec 12 07:54:42 CET 2005
On Dec 9, 2005, at 12:15 PM, Frank Barknecht wrote:
> Hallo,
> geiger hat gesagt: // geiger wrote:
>
>> Well, I think that the real issues we suffer are social, and I am
>> far from understanding those.
>> For the rest, I don't know more, I just ask myself what is it that it
>> is
>> so hard to build externals. And I fear that we have produced the
>> complexity by ourselves.
>
> That's a very valid point worth to discuss somehow outside the
> technical realization of how to build stuff and also only limited to
> non-library-using, C externals. I'll call these "plain externals" now,
> so flext, oggamp etc. are left out. Currently these are all in the
> author's directories, because we were all too frightened to put all
> our valued stuff together into one big repository.
>
> However the best solution would be, if every plain external in every
> authors subdirectory would be removed there and moved to a central
> directory with a central Makefile (or SConstruct, if that was chosen).
>
> You first "build" solution was somehow doing exactly this, without
> actually moving stuff, just by including the files. Maybe it would be
> time to *actually move* all plain externals into one single, unified
> directory? Like a big cleanup. The directory should not be called
> "build" as this is not really an issue about building, maybe it could
> be called "base-ext" or something like that, to make it clear, that
> this is the common ground of the whole developer community.
>
> This would be the place for all plain base externals by all authors.
> It would require, that some externals get removed in their current
> libraries and moved over to live as single externals in "base-ext"
> too. Hans' installer then still would be very useful to "catch the
> rest" of the externals: library-externals like oggplay, flext, Cyclone
> in Max-compat mode etc. For the base externals he would just call
> "make" in "base-ext"
>
> One problem with this of course is: How to avoid conflicts when
> submitting stuff. Should there be a "base-ext" maintainer? The
> advantage would be, that the externals could get a real common release
> cycle. Nameclashes with base-exts wouldn't occur anymore. (Every
> external in a subdirectory, which clashes, would be hijacked and
> removed by orks.) We could use a namespace like "base" for these
> externals, and as default "base" would be available without namespace.
I disagree about one big directory, I think that would actually make
things more difficult. I think that ideally, all of the code would be
organized into libraries/directories with related functionality
("networking", "pan", "synths", etc). Currently, its organized around
authors' build systems. But when we use a common build system, then
this doesn't need to happen anymore.
externals/Makefile already builds most of the externals files in place,
in the authors' directories, and the one Makefile does it for Windows,
Mac OS X, and GNU/Linux, no need for separate Makefiles (largely thanks
to MinGW). Plus it can (and does) build objects with dependencies
(ogg, vorbis, lame, speex, etc.). It should be able to build basically
any Pd object written in C without too much hassle. The flext/C++ and
Gem stuff currently is separate.
I agree with Thomas Grill in that Pd itself should include just a bare
minimum of functionality, stripped down to a Pd kernel of sorts. Pd
should be like C or Java, with a small base language, and everything
else in libraries, like libc or java.lang.*. Therefore, I think there
should be no "base" set of objects.
But it would be good to reorganize things into libraries that cover
certain functionality, like I/O or networking or atom conversion. Then
we could use externals/build/src-style .c link files to maintain
backward compatibility with the old library organization.
.hc
________________________________________________________________________
____
"Terrorism is not an enemy. It cannot be defeated. It's a tactic.
It's about as sensible to say we declare war on night attacks and
expect we're going to win that war. We're not going to win the war on
terrorism."
-
retired U.S. Army general, William Odom
More information about the Pd-dev
mailing list