Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 6 Mar 2017 11:18:05 -0800
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        Mark Linimon <linimon@lonesome.com>
Cc:        Benjamin Kaduk <bjkfbsd@gmail.com>, "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, Ravi Pokala <rpokala@mac.com>, "src-committers@freebsd.org" <src-committers@freebsd.org>, John Baldwin <jhb@freebsd.org>
Subject:   Re: svn commit: r314373 - in head: . etc/defaults etc/rc.d lib/libc/regex share/man/man4/man4.i386 share/man/man5 sys/amd64/conf sys/boot/forth sys/compat/svr4 sys/conf sys/dev/streams sys/i386/conf sy...
Message-ID:  <20170306191805.GC1044@FreeBSD.org>
In-Reply-To: <20170228235053.GB10976@lonesome.com>
References:  <201702280514.v1S5EhPq060885@repo.freebsd.org> <1969312.3TTRqhLH9r@ralph.baldwin.cx> <A783EF14-114B-4547-9737-3BB13FCE5DC4@panasas.com> <20170228193605.GJ1044@FreeBSD.org> <CAJ5_RoDzO_1OkyJ=aZAHUDBXib882%2Ba0fB0GvdQqnjUxkL6Arg@mail.gmail.com> <20170228213044.GK1044@FreeBSD.org> <20170228235053.GB10976@lonesome.com>

next in thread | previous in thread | raw e-mail | index | archive | help
  Ben and Mark,

  thanks for explanation! I'll document that 1200023 also marks removal of SVR4.

On Tue, Feb 28, 2017 at 05:50:53PM -0600, Mark Linimon wrote:
M> On Tue, Feb 28, 2017 at 01:30:44PM -0800, Gleb Smirnoff wrote:
M> > How can I check the __FreeBSD_version in a port Makefile? My understanding
M> > is that there is no standard way for such thing.
M> 
M> There are hundreds of examples in port Makefiles.  I suppose the PH will need
M> to be updated to include some of them.  It is hinted at under "INCLUDE" in
M> https://www.freebsd.org/doc/en/books/porters-handbook/dads-noinstall.html
M> but not made specific.
M> 
M> Some quick examples:
M> 
M>   devel/cloudabi-toolchain/Makefile:.if ${OSVERSION} >= 1100100
M> 
M>   devel/cvs-syncmail/Makefile:.if ${OPSYS} == FreeBSD && ${OSVERSION} > 1000000
M> 
M>   devel/trio/Makefile.orig:# NB: OSVERSION was not incremented for r308559, so we use the earlier
M>   devel/trio/Makefile.orig:# 1200014 as a surrogate for now.
M>   devel/trio/Makefile.orig:.if ${OSVERSION} < 1100506 || ( ${OSVERSION} >= 1200000 && ${OSVERSION} < 1200014 )
M>   devel/trio/Makefile.orig:BROKEN_aarch64=         needs fixes from r308375, r308487, and/or r308559
M>   devel/trio/Makefile.orig:.endif
M> 
M>   emulators/i386-wine/Makefile.inc:.if ${OPSYS} != FreeBSD || (!(${OSVERSION} < 1000000) && !(${OSVERSION} >= 1003000 && ${OSVERSION} < 1100000) && !(${OSVERSION} >= 1100121 && ${OSVERSION} < 1200000) && !(${OSVERSION} >= 1200019 && ${OSVERSION} < 1300000))
M> 
M>   lang/ruby22/Makefile:.if exists(/usr/sbin/dtrace) && (${OSVERSION} > 1100032) && (${ARCH} == "amd64" || ${ARCH} == "i386")
M> 
M>   lang/tcc/Makefile:.if ${CC:T:M*clang*} || ${OSVERSION} >= 1000024
M> 
M>   sysutils/e2fsprogs/Makefile:.if !empty(PORT_OPTIONS:MNOTESTS) && (${OPSYS} == FreeBSD) && (${OSVERSION} >= 1100000 || ((${ARCH} != i386) && (${ARCH} != amd64)))
M> 
M> However, I am kind of shocked that this is not well understood --
M> especially after I have tried so many times to convince src committers
M> to update FreeBSD_version in case of src changes that affect (e.g. break)
M> ports.
M> 
M> These are the kinds of things that ports committers have to use to work
M> around changes in the src tree.  Skipping OSVERSION updates makes this
M> work more complicated.
M> 
M> mcl

-- 
Totus tuus, Glebius.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20170306191805.GC1044>