On Brad's recent update I reran `make update-patches' to double check
after building and it picked up the version substitution.
That seems dirty and error prone, one might accidentially commit stuff
like this on updates.
Instead, use SUBST_VARS and avoid splitting the version again by using
proper LMAJ and LMIN variables in the first place.
Feedback?
OK?
Index: Makefile
===================================================================
RCS file: /cvs/ports/multimedia/mpv/Makefile,v
retrieving revision 1.51
diff -u -p -r1.51 Makefile
--- Makefile 26 Oct 2019 12:03:20 -0000 1.51
+++ Makefile 26 Oct 2019 12:34:50 -0000
@@ -6,7 +6,10 @@ GH_ACCOUNT = mpv-player
GH_PROJECT = mpv
GH_TAGNAME = v0.30.0
-SHARED_LIBS += mpv 0.1 # 1.106
+LMAJ = 0
+LMIN = 1
+
+SHARED_LIBS += mpv ${LMAJ}.${LMIN} # 1.106
CATEGORIES = multimedia x11
@@ -108,13 +111,14 @@ CFLAGS += -march=i586
DO_WAF = cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${MODPY_BIN} \
${WAF} ${MAKE_FLAGS}
+SUBST_VARS += LMAJ \
+ LMIN
+
post-patch:
cp ${DISTDIR}/${WAF:T} ${WAF}
+ ${SUBST_CMD} ${WRKSRC}/libmpv/client.h
do-configure:
- sed -i -e "s,LMAJ,${LIBmpv_VERSION:R},g" \
- -e "s,LMIN,${LIBmpv_VERSION:E},g" \
- ${WRKSRC}/libmpv/client.h
${DO_WAF} configure ${CONFIGURE_ARGS}
do-build:
Index: patches/patch-libmpv_client_h
===================================================================
RCS file: /cvs/ports/multimedia/mpv/patches/patch-libmpv_client_h,v
retrieving revision 1.2
diff -u -p -r1.2 patch-libmpv_client_h
--- patches/patch-libmpv_client_h 26 Oct 2019 12:03:20 -0000 1.2
+++ patches/patch-libmpv_client_h 26 Oct 2019 12:34:50 -0000
@@ -1,6 +1,6 @@
$OpenBSD: patch-libmpv_client_h,v 1.2 2019/10/26 12:03:20 kn Exp $
-Could not find an easy way to do this.
+Set shared library version.
Index: libmpv/client.h
--- libmpv/client.h.orig
@@ -10,7 +10,7 @@ Index: libmpv/client.h
*/
#define MPV_MAKE_VERSION(major, minor) (((major) << 16) | (minor) | 0UL)
-#define MPV_CLIENT_API_VERSION MPV_MAKE_VERSION(1, 106)
-+#define MPV_CLIENT_API_VERSION MPV_MAKE_VERSION(LMAJ, LMIN)
++#define MPV_CLIENT_API_VERSION MPV_MAKE_VERSION(${LMAJ}, ${LMIN})
/**
* The API user is allowed to "#define MPV_ENABLE_DEPRECATED 0" before