Hallo David, hallo Leute, Am Montag, 3. Februar 2003 21:23 schrieb David Haller:
On Mon, 03 Feb 2003, Christian Boltz wrote:
Die Fontlinge verwenden einige Makefiles, die per make -C verzeichnis install eingebunden werden.
Das wäre ja alles OK, wenn nicht auch ein Perl-Modul installiert werden müsste. Dessen Makefile wird mittels ExtUtils::MakeMaker und Makefile.PL generiert. Dummerweise beachtet das generierte Makefile PREFIX=. Gibt man also bei "make install" PREFIX=... an, wird das Perlmodul irgendwohin installiert (z. B. /usr/local/lib/perl/...), wo es Perl niemals findet :-|
Ueblich ist 'prefix' und _nicht_ PREFIX (z.B. bei autoconf generierten Makefiles), was das Problem loesen wuerde ;)
Ah ja. So fit bin ich mit Makefiles nicht, sind meine ersten ;-) (die erste Version dieser Makefiles stammt übrigens von Gerald Goebel)
Ich wuerde uebrigens vorschlagen, dass ihr da eh noch was aendert:
prefix := /usr/local bindir := ${prefix}/bin
Klar. BTW: Wieso verwendest Du := und geschweifte Klammern um die Variablennamen? Meinen bescheidenen Makefile-Kenntnissen zufolge werden die Variablen mit $(...) geklammert und mit einem einfachen = zugewiesen.
datadir := ${prefix}/share
OK, hab ich ja in HTMLPATH verwurstelt. Aber Deine Variante ist auch nicht verkehrt, da kann man ja immer noch htmldir = $(datadir)/fontlinge/webgui einbauen.
docdir := ${datadir}/doc/fontlinge
Hmm. docdir oder docpath? BTW: Da hab ich absichtlich $prefix missachtet, weil ich Doku im "zentralen Dokumentationsverzeichnis" /usr/share/doc erwarte und nicht in /usr/local ;-) (ist vielleicht nur meine Meinung, aber ich schätze mal, dass viele Leute nicht unter /usr/local/share/doc suchen würden)
configdir := $(HOME)/.fontlinge
s/configdir/configfile/ ;-)
# HTMLPATH := $(HOME)/public_html/fontlinge # ^^^^^^^^^^^ Das gibt's bei mir nicht! Das # heisst bei mir 'wwwhome/htdocs'!
Hmm, liegt wohl an Deiner alten SuSE ;-) Seit ich Linux nutze (SuSE 7.0), liegt das Ganze unter ~/public_html. Ratti nutzt ja seit kurzem Debian und hat auch noch nix davon gesagt, dass es woanders liegt.
# Besser z.B. (ist aber auch nicht ideal!) htmldir := $(shell awk '/^[^#]*UserDir/{t=$2;sub("^.*\\*","$(HOME)",t);print t;}' /etc/httpd/httpd.conf)
Geht bei (neueren?) SuSE-Distris schief, weil das Ganze in separate Dateien ausgelagert ist :-| cb@tux:~> grep "^[^#]*serDir" /etc/httpd/httpd.conf cb@tux:~> grep "^[^#]*serDir" /etc/httpd/* /etc/httpd/suse_public_html.conf: UserDir public_html cb@tux:~> Außerdem heißt das Konfigurationsverzeichnis für den neuen Apache2 AFAIK /etc/apache2...
Evtl. koennte man da auch ein kleines "configure" schreiben, dass Pfade z.B. abfragt/rausfindet...
Könnte schwierig werden, siehe oben ;-)
Achja, dann muesste man auch die scripte wohl noch anpassen (hart kodierte Pfade *tsk*),
Naja, es funktioniert aber trotzdem (und kann auch durch xy=/hier/hin überschrieben werden)
da koennte man z.B. ein sed-script wie beim configure (foo.in -> foo) drueberjagen...
Evtl. kann man das ganze aber sogar im Makefile.PL machen...
Vorschläge sind stets willkommen ;-)
Ich schau mir die fontlinge mal an, wenn ich kann ;)
Schön. Vorschläge, Unverständliches in der Doku (Stichwort "Betriebsblindheit" ;-) und Bugreports kannst Du (und jeder andere auch) gern schicken. Egal ob hier, auf fontlinge-devel oder direkt an Ratti oder mich ;-)
-dnh, der nur mal eben einen Blick in den tarball geworfen hat
;-) Gruß Christian Boltz PS: Da wir gerade dabei sind, gleich noch eine Frage: make install verhält sich unterschiedlich, je nachdem, ob es als root oder als User aufgerufen wird [1] (wird über `whoami` getestet). Gibt es da irgendwelche Bedenken oder bessere Möglichkeiten? [1] betrifft hauptsächlich die Installation des WebGUI: make install verhält sich dabei folgendermaßen: - als user installiert es nach ~/public_html/fontlinge und legt einen Symlink zur ~/.fontlinge an - als root installiert es nach $(PREFIX)/share/fontlinge/webgui und erzeugt das Script $(BIN)/fontlinge_userinstall [2] [2] $(BIN)/fontlinge_userinstall enthält dann den Befehl make -C /usr/local/share/fontlinge/webgui "$@" install (es wird das gleiche Makefile wie bei [1] verwendet) --
[suse-linux Statistik] Hm. Apropos: Was meint ihr, sollte ich 'ratti / Joerg' zusammenfassen? Ja, oder? Ich denke ja schon, aber Ratti ist dagegen. [> David Haller und Jörg Roßdeutscher aka Ratti in sl-etikette]