portupgrade Frage

I.MC

Watt soll denn hier hin?
Wenn ich mittels portupgrade ein Programm updaten will, was aber mit Optionen kompiliert werden muss, kann das portupgrade überhaupt (also die Optionen irgendwie übergeben)?. Oder muss ich dann echt den Port deinstallieren und den neuen aus den ports mit make -D optionen bla installieren?

Gruß, Jochen
 
das geht ueber die configurationsdatei von portupgrade, pkgtools.conf wenn ich mich recht erinnere. da kann man einstellen mit welchen optionen welche ports installiert werden sollen.
 
man portupgrade
[...]
-m
--make-args Specify arguments to append to each make(1) com-
mand line.

-M
--make-env Specify arguments to prepend to each make(1) com-
mand line.
[...]

Im Makefile des jeweiligen Ports nachsehen was für Paramater es gibt.
 
Original geschrieben von asg
man portupgrade
[...]
-m
--make-args Specify arguments to append to each make(1) com-
mand line.

-M
--make-env Specify arguments to prepend to each make(1) com-
mand line.
[...]

Im Makefile des jeweiligen Ports nachsehen was für Paramater es gibt.

Das funzt nicht. Mehr als ein Argument kann ich damit nicht übergeben. Z.B. ein

portinstall -P -m x=1 -m y=1 test

sorgt nur dafür, dass y=1 berücksichtigt wird.

Gruß, incmc
 
Auch das was ich in einem anderen Posting geschrieben hatte, geht nicht:

Link: http://www.onlamp.com/lpt/a/4165

If you ever plan on using portupgrade to upgrade mplayer and wish to use the same arguments, you have a choice. Either count on your ability to remember to use the m switch to specify your make arguments with portupgrade:

% portupgrade -rRm '-DWITH_GUI' '-DWITH_FREETYPE' mplayer

Gruß, incmc
 
Eine ordentliche pkgtools.conf moechte ich auf gar keinen Fall mehr missen, alleine wenn ich an php denke.

So sehen dann die MAKE_ARGS aus:

--snip--
MAKE_ARGS = {
'misc/amanda-server' => '-DWITH_PLOT -DWITH_SAMBA AMANDA_SERVER=boron.xxxxxxxxxx.de AMANDA_TAPE=/dev/nrsa0 AMANDA_CONFIG=xxxxxx AMANDA_UDPPORTRANGE=901,950',
'misc/amanda-client' => 'AMANDA_SERVER=boron.xxxxxxxxx.de AMANDA_CONFIG=xxxxxx AMANDA_UDPPORTRANGE=901,950',
'print/ghostscript-gnu' => 'A4=yes',
'print/lyx' => 'WITH_ASPELL=yes',
'mail/mutt' => 'WITH_SGML_DOCS=yes',
'net/ethereal' => 'WITHOUT_SNMP=yes',
'net/mtr' => 'WANT_GNOME=0 HAVE_GNOME=0',
'textproc/aspell' => 'ASPELL_DE=yes',
'lang/php4' => 'WITH_OPENLDAP=yes WITH_MYSQL=yes WITH_OPENSSL=yes WITH_GD=yes WITH_ZLIB=yes WITH_MCRYPT=yes WITH_MHASH=yes WITH_SYBASECT=yes WITH_GDBM=yes WITH_SNMP=yes WITH_FTP=yes WITH_SOCKETS=yes WITH_CTYPE=yes WITH_SESSION=yes WITH_OVERLOAD=yes WITH_PCRE=yes WITH_TOKENIZER=yes WITH_XML=yes WITH_POSIX=yes',
--snap--
 
Ja, dass das damit geht ist klar. Nur wenn man mal ne Option kurz testen will habe ich keine Lust das immer eintragen zu müssen.
Aber es "scheint" mit dem folgenden Befehl zu gehen:

portupgrade m '-DWITH_GUI -DWITH_FREETYPE' Portname

Man übergibt also den kompletten Optionen-String, macht ja auch Sinn.
Verstehe nur nicht wieso sowas falsch auf onlamp.com steht. Muß man denn alles selber testen heute :-).

Gruß, incmc
 
Original geschrieben von olf
Eine ordentliche pkgtools.conf moechte ich auf gar keinen Fall mehr missen, alleine wenn ich an php denke.
Ja, fand ich auch nervig. Ich bin gerade in einem fetten
Upgrade-Durchlauf und gestern kam das mit den ganzen
Optionen für php natürlich auch wieder. Ich habe dann mal
in die ports-Dateien reingesehen und dabei festgestellt, dass
es (zumindest für php) eine einfache Möglichkeit gibt, indem
man die Optionen in eine Datei $HOME/php4_options legt.
Ein Template dafür findet man in /usr/ports/lang/php4/scripts.

Nichtsdestotrotz wäre es schön, wenn es einen generellen
Mechanismus gäbe, um alle interaktiven Einstellungen bei der
Installation eines Ports persistent zu speichern.

Was vielleicht auch nicht schlecht wäre, wäre die Ports-Daten
beim installieren eines Ports nach z.B. /usr/ports/installed o.ä.
zu kopieren, damit man eine Möglichkeit hat, einen Port auch
nach einem Update der Portsdaten auf altem Versionsstand
nochmal zu installieren (z.B. rebuild zum anpassen auf eine
Bibliothek, die man aktualisiert hat).
 
Zurück
Oben