Re: Talking about the GUI
Enrico Weigelt <[email protected]>
| Newsgroups | gmane.comp.multimedia.media-api |
|---|---|
| Message-ID | <[email protected]> |
* Steve Lhomme <[email protected]> [2004-01-15 10:08:31 +0100]: <snip> > It's just that it looks too UNIX centric for now. Another very important point i've missed ... <snip> > For example the use of automake clearly shows that they never had in > mind to port it under Windows... or other non-unix-like platforms ... Automake is one of the biggest troublemaker in the opensource world. Okay, it can find out some things automatically (sometimes it really works) and gives you a quite standardized commandline interface for specifying some build options. But at all it is completely misdesign. It starts at the point, that configure is a really big-fat and unreadable shell script which almost cannot repaired or fixed manually if there are some problems (I'm maintaining some distros for specialized systems like server farms - and I can tell you that there are enough problems). It would be a good starting point, if it would be a well structured shellscript-library which is split off in many good readable files. Nevertheless its already the wrong way to generate makefiles from obscure sources. Why not simply modeling the structure of software at an abstract view ? why should the developer have to cope w/ things he normally would not be interested in ? Why not understanding a project as a tree of nodes which have some dependencies, some deteriministic build variants and clear interfaces ? Commercial IDEs like Borlands C++ IDE are doing this much better for many years. In BC++ you simply have a tree nodes, like executable, source files, includes, ... each of them has its properties, which also can be derived from stylesheets for fast swichting between several build variants (i.e. debug vs. release build, ...) If we think about modeling our media-api in such a tree it could look like this in a XML presentation : <PROJECT name="media-api"> <MODULE type="library" name="mmapi-os" linkage="builtin" multiplatform="yes" srcsubdir="mmapi-os" incsubdir="mmapi"> <DESCRIPTION> some small wrappers for os dependent stuff </DESCRIPTION> <HDRFILE type="text/c-include" name="mmapi-os."/> <POOL platform="win32"> <SOURCE type="text/c-source" name="win32.c"/> </POOL> <POOL platform="gnu-libc6"> <SOURCE type="text/c-source" name="gnu-libc6.c"/> </POOL> <POOL platform="unix-generic"> <SOURCE type="text/c-source" name="unix-generic.c"/> </POOL> <SOURCE type="text/c-source" name="common.c"/> </MODULE> <MODULE type="library" name="mmapi-core" srcsubdir="mmapi-core" incsubdir="mmapi"> <IMPORT name="@media-api:mmapi-os"> <HDRFILE name="module.h"/> <HDRFILE name="service.h"/> <HDRFILE name="filter.h"/> <POOL platform="*"> <SOURCE type="text/c-source" name="filter.c"/> <SOURCE type="text/c-source" name="module.c"/> <SOURCE type="text/c-source" name="service.c"/> </POOL> </MODULE> <MODULE type="library" name="mmapi-mp3topcm" srcsubdir="mmapi-mp3topcm" incsubdir="mmapi"> <DESCRIPTION> MMAPI: MP3 to PCM codec </DESCRIPTION> ... </MODULE> </PROJECT> > I hope these are not brilliant people like Xiph who think > Windows is shite. I personally also think windows is shit, but I'm not so arrogant expecting others also to think so. There are many reasons why people wanna use windows and those people should also be able to use our software. BTW: if we get our API also running under win32 w/o too many trouble, then we show that we're able to do really good userland interface design. cu -- --------------------------------------------------------------------- Enrico Weigelt == metux IT services phone: +49 36207 519931 www: http://www.metux.de/ fax: +49 36207 519932 email: [email protected] cellphone: +49 174 7066481 --------------------------------------------------------------------- Diese Mail wurde mit UUCP versandt. http://www.metux.de/uucp/