On Sun, 4 Mar 2012 22:33:30 +0100 (CET), OR (Olaf) wrote:
> > Als User brauchst du maximal drei Befehle: "make"
& "make install".
> > Manchmal noch eine "configure".
>
> Äh? "configure" hat mit "Make" erstmal überhaupt nichts zu tun.
Es ging um die Sicht der User auf make. Und selbst durch Autotools
ändert sich nichts für die Benutzung. Die Schnittstelle/Interface
bleibt gleich. Das sollte die Kernaussage sein.
rpmbuild kennt nur _drei_ Aufrufarten: Angabe einer .spec Datei,
Angabe eines Archives und Angabe eines src.rpm Paketes.
Du kritisiertest bisher die "Programmierung von spec Dateien",
nicht die Verwendung von rpmbuild.
Mal tatsächlich angenommen, ein Nutzer möchte ein RPM Paket erstellen
lassen, anstatt fertige Pakete nur zu installieren, so ist der Aufruf
sehr simpel a la "rpmbuild --rebuild beispiel.src.rpm". Bietest Du kein
src.rpm an, sondern ein Tar o.ä. Archiv, ist der Aufruf nur leicht anders
gemäß "man rpmbuild".
Übrigens, Make beschränkt sich auch nicht "make all" und "make
install".
Woher weiß der Nutzer von "make install-plugins", "make clean",
"make dist",
"make release", "make check", "make test" und weiteren
targets, die definiert
sein können? Bei "configure" verhält es sich ebenso. Die angebotenen Optionen
(--with-foo/--without-foo, --enable-foo/--disable-foo) variieren. Eine
spec Datei läßt sich ebenfalls durch --with/--without Optionen erweitern.
Ich sehe da bei der Verwendung nicht den eklatanten Unterschied, den Du
auszumachen meinst.
> Ja nun, bist Du auf dieser Mailing-Liste, um etwas zu RPM und
rpmbuild
> lernen zu wollen? Oder liegt Dir mehr am Herumstänkern?
Wenn man was lernen will, darf man sich nicht über Ungereimtheiten
wundern?
Doch, doch. Das "Dürfen" ist hier nicht die Frage. Nur ist das Ziel
fraglich. Und die Schwerpunktsetzung auch. Eine von vornherein zu
negative Sichtweise
> Du nennst Dich selbst "Make Guru".
Zitiere wörtlich! Was hatte ich geschrieben?
Gerngeschehen:
| Nach ca. 30 Min. hast du dein erste funktionierendes Makefile gebaut.
| Nach einer Woche bist du "make-Guru".
Sowie:
| Nach einer halben Stunde bist du mit rpm noch nicht viel weiter als
| am Anfang. Nach einer Woche tut es rpmbuild irgend wie, aber nicht so
| wie du es willst.
Du willst jetzt doch nicht im Nachhinein die Meßlatte für den Make Guru-Status
höherlegen, weil Du Dich etwa noch nicht eine Woche mit Make befasst hast,
oder? ;-)
Bisher dachte ich, ich gehe es nur falsch an. Aber offenbar ist es
wirklich
sehr verkorkst portable rpmbuild Regeln zu schreiben, die User nicht überfordern
und mit einem Befehlen auskommen: make dist-rpm.
Was hat denn nun Portabilität mit der Sache zu tun?
Der Aufruf von rpmbuild ist doch überall gleich. Wo siehst Du denn da
Probleme?
Und Du willst doch sogar den User von rpmbuild abschotten und ihn
stattdessen Make verwenden lassen. Die Lösung für Dein Makefile wurde
mehrfach erwähnt. Und Christophs Vorschlag,
rpmbuild -ta blubb.tgz
bietet sich geradezu an, wenn Du ohnehin einen tarball erzeugst.
Alternativ (und für beliebige SourceX Dateien):
rpmbuild -ba blubb.spec --define "_sourcedir $(pwd)"