Re: Packages aus Ports bauen

From: Jens Rehsack <rehsack(at)liwing.de>
Date: Fri, 07 Feb 2003 23:18:14 +0100

Patrick Hess wrote:
> Hallo,
>
> ich habe mir gerade Xine aus den Ports kompiliert. Klappt wunderbar,
> aber das hat ewig gedauert... Daher möchte ich mir gerne ein
> Package erstellen lassen, damit ich später auf anderen Rechnern
> einfach das Package drüber bügeln kann.
>
> Ich habe also in /usr/ports/graphics/xine nach dem "make install"
> noch ein "make package" hinterhergeschoben. Das baut mir aber nur
> das Package für Xine selbst. Für die abhängigen Ports, die beim
> "make install" mit installiert wurden (z.B. djbfft), werden aber
> keine Packages erstellt. Das ist blöd :-(
>
> Ich habe es mal mit "make packages" versucht, aber das kennt "make"
> leider nicht. Könnte mir bitte jemand auf die Sprünge helfen, wie
> ich auch aus den abhängigen Ports automagisch Pakete bauen lassen
> kann?

Ich weiss nicht (hab' mal in den englischen Listen sowas gesehen, aber
nie verifiziert) ob ein 'make package-recursive' funktioniert.

> Oder muß ich in das jeweilige Ports-Verzeichnis wechseln und dort
> für jeden Port einzeln das "make package" durchführen? Das wäre
> aber ziemlich umständlich.

Ansonsten kannst Du Dir sicher folgendes Beispiel, dass ich mal für jmd.
getippt habe, anpassen:
----- BEGIN SAMPLE -----
#!/bin/sh

PORTSDIR=/usr/ports
PACKAGES=${PORTSDIR}/packages

make_package()
{
for i in `make search name=$1|grep deps| \
   perl -e 'while(<>){$_ =~ s/^.*deps:\s*//g; print $_}'`
do
   cd ${PORTSDIR}
   loc=`make search name=$i|grep "Path:"|awk '{print $2;}'`
   cd $loc

   make package
done
cd ${PORTSDIR}
loc=`make search name=$1|grep "Path:"|awk '{print $2;}'`
cd $loc
make package
}

if [ ! -d ${PACKAGES} ]
then
   mkdir -p ${PACKAGES}
fi

cd $PORTSDIR
make_package Xine
----- END SAMPLE -----

-- 
L     i  W     W     W  i                 Jens Rehsack
L        W     W     W
L     i   W   W W   W   i  nnn    gggg    LiWing IT-Services
L     i    W W   W W    i  n  n  g   g
LLLL  i     W     W     i  n  n  g   g    Friesenstraße 2
                                   gggg    06112 Halle
                                      g
                                  g   g
Tel.:  +49 - 3 45 - 5 17 05 91    ggg     e-Mail: <rehsack(at)liwing.de>
Fax:   +49 - 3 45 - 5 17 05 92            http://www.liwing.de/
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Fri 07 Feb 2003 - 23:20:08 CET

search this site