From owner-freebsd-emulation@FreeBSD.ORG Sun Oct 18 20:32:17 2009 Return-Path: Delivered-To: freebsd-emulation@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7CD051065743 for ; Sun, 18 Oct 2009 20:32:17 +0000 (UTC) (envelope-from nox@jelal.kn-bremen.de) Received: from smtp.kn-bremen.de (gelbbaer.kn-bremen.de [78.46.108.116]) by mx1.freebsd.org (Postfix) with ESMTP id 0B1258FC0C for ; Sun, 18 Oct 2009 20:32:16 +0000 (UTC) Received: by smtp.kn-bremen.de (Postfix, from userid 10) id 0B31E1E006F4; Sun, 18 Oct 2009 22:32:15 +0200 (CEST) Received: from triton8.kn-bremen.de (noident@localhost [127.0.0.1]) by triton8.kn-bremen.de (8.14.3/8.14.3) with ESMTP id n9IKPjaZ053430; Sun, 18 Oct 2009 22:25:45 +0200 (CEST) (envelope-from nox@triton8.kn-bremen.de) Received: (from nox@localhost) by triton8.kn-bremen.de (8.14.3/8.14.3/Submit) id n9IKPj5a053429; Sun, 18 Oct 2009 22:25:45 +0200 (CEST) (envelope-from nox) From: Juergen Lock Date: Sun, 18 Oct 2009 22:25:45 +0200 To: Boris Samorodov Message-ID: <20091018202545.GA53402@triton8.kn-bremen.de> References: <20091017154404.GA80599@triton8.kn-bremen.de> <99413628@ipt.ru> <20091018174157.GB99191@triton8.kn-bremen.de> <99401887@ipt.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <99401887@ipt.ru> User-Agent: Mutt/1.5.20 (2009-06-14) Cc: freebsd-emulation@FreeBSD.org, Juergen Lock Subject: Re: how to test for linux base version? (googleearth) X-BeenThere: freebsd-emulation@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Development of Emulators of other operating systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 18 Oct 2009 20:32:17 -0000 On Mon, Oct 19, 2009 at 12:13:20AM +0400, Boris Samorodov wrote: > Juergen Lock writes: > > On Sun, Oct 18, 2009 at 02:30:43PM +0400, Boris Samorodov wrote: > >> Juergen Lock writes: > >> > >> > I just got reminded to add a linux base version check to astro/google-earth > >> > (It now needs recent linux libstdc++.so.6 with GLIBCXX_3.4.9 that only > >> > is in f9 or f10, you can do > >> > >> First of, I'd recommend leaving f9 alone (I'm going to deprecate all > >> linux base ports except fc4 and f10 soon). > >> > > Ah Ok. (Does f10 work well enough on 7.x yet?) > > Well, there is no choice anyway. We do have fc4 and f10 infractructure > ports. I think it's wise to use apropriate base ports. I don't think > there is any difference between f9 and f10 linux base ports. > Oh I was more thinking of f8 since we have nonbase ports for that too... > If someone shows a difference (i.e. possibility to use f9 but not > f10 linux base port under 7.x I may change my mind). > Ok so `someone' would need to test this... > >> > objdump -T /compat/linux/usr/lib/libstdc++.so.6 |grep 'ABS.*GLIBCXX' > >> > to check) - and was wondering how to best check for that in a port. > >> > This is what I came up with so far: > >> > > >> > Index: Makefile > >> > =================================================================== > >> > RCS file: /home/pcvs/ports/astro/google-earth/Makefile,v > >> > retrieving revision 1.35 > >> > diff -u -p -r1.35 Makefile > >> > --- Makefile 24 Sep 2009 21:01:36 -0000 1.35 > >> > +++ Makefile 17 Oct 2009 15:32:22 -0000 > >> > @@ -38,6 +38,14 @@ RUN_DEPENDS+= ${LINUXBASE}/usr/lib/libGL > >> > USE_LINUX_APPS+= dri > >> > .endif > >> > > >> > +.if (${OSVERSION} < 800076 && \ > >> > + !defined(OVERRIDE_LINUX_BASE_PORT)) || \ > >> > + (defined(OVERRIDE_LINUX_BASE_PORT) && \ > >> > + !(${OVERRIDE_LINUX_BASE_PORT} == f10) || \ > >> > + ${OVERRIDE_LINUX_BASE_PORT} == f9) > >> > +IGNORE= needs at least f9 Linux base > >> > +.endif > >> > + > >> > do-extract: > >> > @${MKDIR} ${WRKSRC} > >> > @${CP} ${DISTDIR}/${DIST_SUBDIR}/${DISTFILES} ${WRKSRC} > >> > > >> > Anyone have a better idea? :) > >> > >> I'm not sure if it's better but just an other idea: > >> ----- > >> .if ${OSVERSION}<7000XX /*** XX should be find out ***/ > >> IGNORE FreeBSD>=7.X is needed with Linux emulation 2.6.x. > >> .elif ${OSVERSION}<800076 && \ > >> ! defined (OVERRIDE_LINUX_NONBASE_PORTS) || > >> ! (${OVERRIDE_LINUX_NONBASE_PORTS} == f10) > >> IGNORE= you need to use non-default linux ports (define OVERRIDE_LINUX_BASE_PORT=f10 and OVERRIDE_LINUX_NONBASE_PORTS=f10) > >> .endif > >> ----- > > > > In the meantime I found emulators/linux-systemsimcell does something > > similar, and it uses ${OSVERSION}<700055 for the first check. Does > > that look alright? (seems to be the last OSVERSION before 7.0-R from > > looking at > > http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/book.html#FREEBSD-VERSIONS > > ) > > We discussed those checks with the maintainer and his checks were good > (for his software). I can't say more than that, sorry. Ok. Maybe I should just commit it like that, I guess it's kinda unlikely someone who's running a FreeBSD _desktop_ still uses something as old as 7.0 anyway. Thanx, Juergen