Help with versioning scheme

Martin Waschbüsch martin at waschbuesch.de
Wed Jan 17 18:29:25 UTC 2018


Hi Adam,
> Am 17.01.2018 um 19:19 schrieb Adam Weinberger <adamw at adamw.org>:
> Hi Martin,
> 
> You don't want to use the upstream version to represent PORTREVISION. PORTREVISION is for when you need to force rebuilds of the port itself, and so tying it to upstream would make it impossible to bump it ourselves.
> 
> Why do you need to ignore the fourth digit? It's perfectly valid for our purposes.

So far, I had (because it coincided with their version number) used it to provide SO_VER. But that breaks now:

---
# Created by: adamw
# $FreeBSD: head/archivers/liblz4/Makefile 448415 2017-08-20 12:30:25Z sunpoet $

PORTNAME=       lz4
PORTVERSION=    1.8.1
DISTVERSIONPREFIX=      v
PORTEPOCH=      1
CATEGORIES=     archivers
PKGNAMEPREFIX=  lib

MAINTAINER=     martin at waschbuesch.de
COMMENT=        LZ4 compression library, lossless and very fast

LICENSE=        BSD2CLAUSE GPLv2
LICENSE_COMB=   multi

USES=           gmake pathfix pkgconfig
USE_GITHUB=     yes
USE_LDCONFIG=   yes
#PATHFIX_MAKEFILEIN=    Makefile

ALL_TARGET=     default         # don't remove this
SO_VER=         ${PORTVERSION}
PLIST_SUB+=     SO_VER=${SO_VER} SO_VER_MAJ=${SO_VER:R:R}
LIBDIR=         ${PREFIX}/lib

post-patch:
        @${FIND} ${WRKSRC} -name Makefile | ${XARGS} ${REINPLACE_CMD} \
                -e '/^MANDIR :=/s|share/||'
        @${REINPLACE_CMD} -e '/^all:/s/$$/ liblz4.pc/' \
                ${WRKSRC}/lib/Makefile
        @${REINPLACE_CMD} -e '/^all:/s|fullbench.*||' \
                ${WRKSRC}/programs/Makefile

post-install:
        ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/lz4*
        ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/liblz4.so.${SO_VER}

.include <bsd.port.mk>
---

Manually specifying the SO_VER seems also very weird.

I am sorry if these questions seem clumsy - I am not terribly experienced with porting stuff, but eager to learn.


More information about the freebsd-ports mailing list