On Tue, Dec 22, 2009 at 10:35 PM, Tarek Ziadé <ziade.ta...@gmail.com> wrote:
> > When you say "which could be solved relatively easily" I suggest that > you take the time to add concise and precise proposals in > bugs.python.org so I can work on them. Technically, it is easy. Only have two mechanisms for data files: one for installed data files, and one for extra source files (as done in automake for example): - Extra files only need to be listed (and included in sdist) - Install data files need a target directory. One of the problem with distutils here is that you can only hardcode paths - in my own packaging solution, I use $path variables so that any path defined internally can be reused ($bindir, etc...); something similar could be defined in distutils. The remaining issue is then how to resolve the final target: installing src/foo.dat into $datadir installs $datadir/src/foo.dat or $datadir/foo.dat ? In my own package, I use a source directory argument, to reproduce the nobase scheme of automake: http://sources.redhat.com/automake/automake.html#Basics-of-Installation The way I did it is to have: target=/usr/include source=include files=foo.h,sys/bar.h The files include/foo.h is installed as /usr/include/foo.h and include/sys/bar.h is installed as usr/include/sys/bar.h (the full path in the file sections is appended to target) If you want to install bar.h as /usr/include/bar.h, you would need two sections: target=/usr/include source=include files=foo.h And target=/usr/include source=include/sys files=bar.h Assuming you can use $path in target, this can describe any scheme I can think of, and I don't think it can be made simpler (I would be happy to know of a simpler solution though). cheers, David _______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org http://mail.python.org/mailman/listinfo/distutils-sig