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...

Gleb Smirnoff glebius at FreeBSD.org
Mon Mar 6 19:47:53 UTC 2017


  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.


More information about the svn-src-all mailing list