James Graham wrote:
Jeremy Sanders wrote:
- Put the binary module into veusz, and make it with distutils.
  This is fine, except that it will not be simply possible to run
  veusz from its directory without doing "setup.py install".

  I could, however, just carry on if the library has not been built,
  and just disable the parts of veusz which need it.

  The user could, again however, build the binary module with
  "setup.py build", and copy it into the main veusz directory.
  Veusz could also look in the build directory for the module
  if it cannot be found.

Do this. There's really no problem with needing to do setup.py install, and it shouldn't be too hard to script building rpms. GCC will allow you to cross-compile to a different architecture, right? I wouldn't even bother about carrying on without the C bits if they can't be found - unless you can do it in a really nice way that doesn't make a mess of the codebase.

To elaborate a little, the distutils script should do whatever is required to make typing "veusz" on the command line work i.e. it should link veusz.py from a install_home_dir/bin and set the permissions. It should also install into a python module directory at least enough stuff to get "import veusz" from a python shell working. Once you've done all that, you may need distribution specific rpms or source so the addition of binary isn't a big problem. Maybe autopackage[1] is worth investigating?

[1] http://autopackage.org/

--
"It seems to be a constant throughout history: In every period, people believed things that were just ridiculous, and believed them so strongly that you would have gotten in terrible trouble for saying otherwise."

-- http://www.paulgraham.com/say.html

Répondre à