i need help with a setup.py of a package i try to crate.
it seems severely broken and i dont know the proper way to fix
it.
I got cvs write access and the license to kill (the setup.py).
my problem is that i hardly know the first thing about setup.pys.
>From the head of the project:
On hard setup.py requirements; it should work with python2.2 (and
newer) distutils, should be able to write cerebrum_path.py to a
directory in the default sys.path, should be able to install
Cerebrum's files as documented in the top-comment of the current
setup.py, and should not be as much of a hack as the current
implementation. Other command-line options (besides --root, which
the debian build process uses), like --prefix, needs to work "as
expected" as well
if you think this can be acived with current python
distutils in a clean way i would welcome tips and help.
you can look at the present setup.py and the mentioned
file-distribution here:
http://cvs.sourceforge.net/viewcvs.py/cerebrum/cerebrum/setup.py
of cause you can check out the source anomymously and try my
totally broken but building package, which is included in that
repository.
I include two bits from my mail exchange with upstream (with
permission):
== 1.st mail ==
> setup.py seems to create a file Cerebrum/__init__.pyc when called
> like this:
>
> python setup.py clean
In fact, Cerebrum.__init__.pyc is created whenever setup.py is called
(regardless of other command line arguments), due to the following
line near the top of setup.py:
import Cerebrum
Setup.py needs to import this package in order to discover the current
Cerebrum version number.
> as far as i understand it it should *clean* the sourcetree, not
> leaving compiled files behind? (c:
That would be optimal, yes. However, I'm not sure how this should be
fixed, nor am I sure exactly why it is important to fix it...
> then there is a whole bunch of files which seem to be installed
> only if the user cerebrum exists, as the cerebrum user. these files are
>
> /usr/./share/doc/cerebrum/design/bofhd_auth.sql
> /usr/./share/doc/cerebrum/design/bofhd_tables.sql
> /usr/./share/doc/cerebrum/design/core_tables.sql
> /usr/./share/doc/cerebrum/design/mod_ad.sql
> /usr/./share/doc/cerebrum/design/mod_changelog.sql
> /usr/./share/doc/cerebrum/design/mod_email.sql
> /usr/./share/doc/cerebrum/design/mod_job_runner.sql
> /usr/./share/doc/cerebrum/design/mod_mount_host.sql
> /usr/./share/doc/cerebrum/design/mod_notur_user.sql
> /usr/./share/doc/cerebrum/design/mod_password_history.sql
> /usr/./share/doc/cerebrum/design/mod_person_external_id_history.sql
> /usr/./share/doc/cerebrum/design/mod_person_name_history.sql
> /usr/./share/doc/cerebrum/design/mod_posix_user.sql
> /usr/./share/doc/cerebrum/design/mod_printer_accounting.sql
> /usr/./share/doc/cerebrum/design/mod_printerquotas.sql
> /usr/./share/doc/cerebrum/design/mod_stedkode.sql
> /usr/./share/doc/cerebrum/design/mod_country_alias.sql
> /usr/./share/doc/cerebrum/design/mod_feidegvs.sql
> /usr/./share/doc/cerebrum/cerebrum-core.dia
> /usr/./share/doc/cerebrum/cerebrum-core.html
> /usr/./share/doc/cerebrum/adminprotocol.html
> /usr/./share/doc/cerebrum/README
> /usr/./share/doc/cerebrum/COPYING
> /usr/./sbin/bofhd.py
> /usr/./sbin/job_runner.py
> /usr/./sbin/makedb.py
> /usr/./share/cerebrum/contrib/adquicksync.py
> /usr/./share/cerebrum/contrib/adsync.py
> /usr/./share/cerebrum/contrib/adutils.py
> /usr/./share/cerebrum/contrib/generate_cyrus_folders.py
> /usr/./share/cerebrum/contrib/generate_ldif.py
> /usr/./share/cerebrum/contrib/generate_mail_ldif.py
> /usr/./share/cerebrum/contrib/generate_nismaps.py
> /usr/./share/cerebrum/contrib/import_IMS_data.py
> /usr/./share/cerebrum/contrib/notesquick.py
> /usr/./share/cerebrum/contrib/notesutils.py
> /usr/./share/cerebrum/contrib/nwsync.py
> /usr/./share/cerebrum/contrib/nwutils.py
> /usr/./share/cerebrum/contrib/generate_mail_dns_ldif.py
> /usr/./share/cerebrum/contrib/ldapqsync.py
> /usr/./share/cerebrum/contrib/no/import_SATS.py
> /usr/./share/cerebrum/contrib/no/import_from_MSTAS.py
> /usr/./share/cerebrum/contrib/no/pop_ad_tbl.py
> /usr/./share/cerebrum/contrib/no/update_FS_mailadr.py
> /usr/./share/cerebrum/contrib/no/uio/changelog_examples.py
> /usr/./share/cerebrum/contrib/no/uio/dump_to_UA.py
> /usr/./share/cerebrum/contrib/no/uio/generate_fronter_export.py
> /usr/./share/cerebrum/contrib/no/uio/import_FS.py
> /usr/./share/cerebrum/contrib/no/uio/import_LT.py
> /usr/./share/cerebrum/contrib/no/uio/import_OU.py
> /usr/./share/cerebrum/contrib/no/uio/import_from_FS.py
> /usr/./share/cerebrum/contrib/no/uio/import_from_LT.py
> /usr/./share/cerebrum/contrib/no/uio/import_userdb_XML.py
> /usr/./share/cerebrum/contrib/no/uio/merge_xml_files.py
> /usr/./share/cerebrum/contrib/no/uio/populate_fronter_groups.py
> /usr/./share/cerebrum/contrib/no/uio/pq.py
> /usr/./share/cerebrum/contrib/no/uio/process_bofhd_requests.py
> /usr/./share/cerebrum/contrib/no/uio/process_cha