Standardizing file locations
- Posted by Matt Lewis <matthewwalkerlewis at gmail.c??> Jan 12, 2008
- 589 views
One of the goals of getting euphoria installed via a package manager, is that we could also install our own libraries in a similar way. In particular, this would be convenient for wxEuphoria, since it needs to install a shared library. Having looked at the way perl handles these sorts of issues, here's what I'm thinking now: Standard includes (i.e., the normal $EUDIR/include dir) go right in /usr/share/euphoria 3rd party installed includes could go into their own subdir of /usr/share/euphoria That way, we wouldn't have to add anything to a .conf file, and we could simply say (as a standard way of using these things):
include somelib/lib.e
This could be the 'standard' way of doing things for other platforms as well. It would work whether the library were installed 'properly' on the system, or if it were simply put in as a subdir from the main app, which would make distribution easier and cleaner. Likewise, documentation could go into /usr/share/doc/euphoria/somelib But where to put demos? I think the best place is probably to stick them in either /usr/share/euphoria/demo/somelib or /usr/share/euphoria/somelib/demo Given this, here is my current thoughts on how to package wxEuphoria: There will be two packages: wxeu and wxeu-dev This is based on reading the Debian policy manual regarding shared libraries. Basically, the wxeu package would only contain the shared library itself. The dev package would have the euphoria include file, as well as the documentation and the demos. So I'd put the files: package: wxeu /usr/lib/libwxeu.so (actually, I'm looking to adopt the standard versioning methodology, so it would probably be something like libwxeu.so.12) package: wxeu-dev /usr/lib/libwxeu.so (symbolic link to the versioned library) /usr/share/euphoria/wx/wxeud.e /usr/share/euphoria/demo/wx/* (all the demos) /usr/share/doc/euphoria/wx/*html (all the docs) I'd also distribute the standard source .tar.gz package so that people could easily build from source. Matt