mh(at)kernel32.de wrote:
> > > > Datum der Sourcen mit dranhängen, so dass mir `uname -r`
> > > > zum Beispiel 9.1-STABLE-20130122 liefert. Hat sich in der
> > > > Praxis als nützlich erwiesen.
> > >
> > > Kannn es da keine Probleme mit Ports geben, die den Kernel-String
> > > parsen?
> >
> > Ich mache das schon seit dem letzten Jahrtausend, und hatte
> > noch nie irgendwelche Probleme mit Ports.
> >
> > Falls es Ports gibt, die da etwas parsen, werden sie sich
> > ohnehin auf die Zahlen am Anfang beschränken, denn dahinter
> > kann ja schon alles mögliche stehen: RELEASE, PRERELEASE,
> > STABLE, BETA, RC1, RC2 usw., es gab früher auch schonmal
> > SNAP, ALPHA und GAMMA und diversen anderen Unsinn. Bei den
> > japanischen Developern, die ihre eigenen Snapshots machen,
> > steht (stand?) immer "JSNAP" drin. In dem String waren sogar
> > schonmal Leerzeichen und Klammern drin: "2.0.0 (Development)"
> > (wurde später auf "2.0.1-Development" geändert), und wer
> > weiß, was man sich zukünftig noch alles ausdenkt.
> >
> > Was ich damit sagen will: Falls ein Port dennoch versucht,
> > irgendwas zu parsen, was hinter den Versionszahlen steht,
> > dann ist das ohnehin zum Scheitern verurteilt.
> >
>
> stimmt genau. Und ich würde mal annehmen, daß Ports vermutlich eher ne
> sysctl wie diese benutzen:
> [rabauke(at)popeye ~]$ sysctl kern.osrelease
> kern.osrelease: 9.1-RELEASE
Das liefert aber genau das gleiche wie `uname -r`:
$ sysctl kern.osrelease
kern.osrelease: 9.1-STABLE-20130122
> [rabauke(at)popeye ~]$ sysctl kern.osrevision
> kern.osrevision: 199506
Das ist eher ungeeignet, es sei denn, man möchte wissen,
ob es sich um einen Lite2-Abkömmling handelt. :-)
kern.osrevision hat sich seit 17 Jahren nicht geändert.
> Sieht so aus als würden ports in den Makefiles $OSVERSION nehmen. Aber
> wo die befüllt wird habe ich auf die Schnelle in /usr/ports/Mk/ nicht
> ausfindig machen können.
Ja, das ist der Wert, der in der Regel verwendet werden
sollte. Er wird bei signifikanten Features und Änderungen
an API/ABI erhöht. Es handelt sich um __FreeBSD_version
aus <sys/param.h>, der auch per sysctl kern.osreldate
abgefragt werden kann.
> PS.: Auf standard servern von mir musste ich gefühlt seit FreeBSD 5.2.1
> keine kernel mehr selbst bauen. GENERIC hats immer getan :)
Kommt halt immer drauf an ... GENERIC tut's bei mir nie,
da ich diverse Zusatzoptionen haben möchte, für die es kein
Modul und keinen Tunable gibt. Außerdem ziehe ich es vor,
Sachen rauszuschmeißen, die ich nicht benötige, um Resourcen
zu sparen.
Gruß
Olli
-- Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing Handelsregister: Amtsgericht Muenchen, HRA 74606, Geschäftsfuehrung: secnetix Verwaltungsgesellsch. mbH, Handelsreg.: Amtsgericht München, HRB 125758, Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart FreeBSD-Dienstleistungen/-Produkte + mehr: http://www.secnetix.de/bsd "A language that doesn't have everything is actually easier to program in than some that do." -- Dennis M. Ritchie To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org with "unsubscribe de-bsd-questions" in the body of the messageReceived on Mon 04 Feb 2013 - 15:31:37 CET