[Python-de] setuptools to the rescue?

Joachim Saul list at jsaul.de
Fre Jan 13 15:02:19 CET 2006


* Diez B. Roggisch [2006-01-13 12:12]:
> Auch wenn sich das auf GNU bezieht: ich kenne kaum ein komplexeres Projekt das
> _nicht_ automake/autoconf verwendet. Was IMHO dafuer spricht, das eine Menge
> Leute lieber nicht komplexe Makefiles schreiben. Was nicht heisst das das
> gelegentlich passiern kann/muss. Aber im Kontext von Python - denke nicht.

Bezüglich Autoconf stimme ich dir zu, aber bei Automake nicht.
Autoconf ist eine sinnvolle Software, Automake dagegen ein Krampf.

Aber beide sind doch kein *Ersatz* von make! Im Gegenteil, sie
bauen doch auf make auf. Autoconf übernimmt nicht einmal das
Erzeugen der Makefiles (bzw. der Templates) und dass Automake das
vernünftig kann, bezweifle ich.

Die Häufigkeit von configure-Skripten (die aber nicht
notwendigerweise von Autoconf erzeugt worden sein müssen) in
Verbindung mit Makefiles ist doch das beste Argument *für* make,
schon deshalb, weil es dem User vertraut ist. Für mich Grund
genug, grundsätzlich von Beginn an Makefile-Wrapper auch für
setup.py-Skripte bereit zu stellen und nicht erst, wenn's ohne
nicht mehr geht. Make als abstraktes Interface sozusagen. Und ja,
einige Pakete konfiguriere ich in der Tat mit von Autoconf
erzeugten configure-Skripten.

> Das ist natuerlich Ansichtssache - aber ehrlich gesagt: eine richtige Sprache
> zur Verfuegung zu haben ist mir lieber als eine so sehr domainspezifische wie
> Make, vor allem weil sie auch noch (verhaeltnismaessig) kryptisch ist.

Die Grundfunktionalität ist doch nicht kryptisch. Und dabei
äußerst flexibel. Eine Programmiersprache ist es nicht, gewiss. Es
lässt sich jedoch problemlos z.B. für die Erzeugung von Dokumenten
mit Latex oder auch Webseiten verwenden. Aufgaben, die es mit
Bravour beherrscht. Da komme ich mit distutils "nicht weit".

> Ich sage nicht das es sowas nicht gibt - aber das Verhaeltnis von Paktet &
> configure-installierten Paketen zu (alleine!) make-basierten ist doch
> _deutlich_ richtung der ersteren beiden verschoben (selbst wenn man mal die
> debs weglaesst und nur configure und make vergleicht)

Ich habe nie behauptet, Autoconf wäre eine schlechte oder
überflüssige Software, im Gegenteil. Ich benutze selbst Autoconf.
In dieser Diskussion ging es aber um Abhängigkeiten während des
Installationsprozesses. Diese formuliert man nicht in einem
configure-Skript, sondern in einem Makefile.

> Mag natuerlich sein das das alles Warmduscher sind, die kein Make koennen :)

Unerfahren. Wer das Konzept von Make verstanden hat der wird es
verwenden.

[...]

> #!/bin/sh
> python setup.py install
>
> drin... _das_ kann ja kaum ein Argument fuer make sein :)

Nenne mir doch mal *ein* in der Unix/Linux-Welt relevantes
Software-Project, welches ohne Verwendung von make übersetzt wird.

Gruß,
Joachim