summaryrefslogtreecommitdiff
path: root/devel/librashader/Makefile
blob: 6f657a38554f5cfb5040123ec185427a8ed30330 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
PORTNAME=	librashader
DISTVERSIONPREFIX=	v
DISTVERSION=	0.8.1
PORTREVISION=	2
CATEGORIES=	devel

MAINTAINER=	bsdcode@disroot.org
COMMENT=	RetroArch shaders for all
WWW=		https://github.com/SnowflakePowered/librashader

LICENSE=	GPLv3 MIT MPL20
LICENSE_COMB=	multi
LICENSE_FILE_GPLv3=	${WRKSRC}/LICENSE-GPL.md
LICENSE_FILE_MPL20=	${WRKSRC}/LICENSE.md

BUILD_DEPENDS=	patchelf>0:sysutils/patchelf

USES=		cargo
USE_GITHUB=	yes
GH_ACCOUNT=	SnowflakePowered
GH_TAGNAME=	${DISTNAME}
USE_LDCONFIG=	yes

CARGO_FEATURES=		--no-default-features runtime-opengl runtime-vulkan \
			stable
CARGO_BUILD_ARGS=	--package librashader-capi
CARGO_TEST=		no

OPTIONS_DEFINE=	DOCS EXAMPLES

# required ABI bump is always mentioned in the release notes
_ABI=		2

post-patch:
	${REINPLACE_CMD} 's|/usr/local|${PREFIX}|g' \
		${WRKSRC}/pkg/librashader.pc

post-build:
	patchelf --set-soname librashader.so.${_ABI} ${CARGO_TARGET_DIR}/*/liblibrashader_capi.so

do-install:
	${MKDIR} ${STAGEDIR}${PREFIX}/include/librashader
	${INSTALL_DATA} ${WRKSRC}/include/librashader_ld.h \
		${STAGEDIR}${PREFIX}/include/librashader
	${INSTALL_DATA} ${WRKSRC}/include/librashader.h \
		${STAGEDIR}${PREFIX}/include/librashader
	${INSTALL_DATA} ${CARGO_TARGET_DIR}/*/liblibrashader_capi.a \
		${STAGEDIR}${PREFIX}/lib/librashader.a
	${INSTALL_LIB} ${CARGO_TARGET_DIR}/*/liblibrashader_capi.so \
		${STAGEDIR}${PREFIX}/lib/librashader.so.${_ABI}
	${RLN} ${STAGEDIR}${PREFIX}/lib/librashader.so.${_ABI} ${STAGEDIR}${PREFIX}/lib/librashader.so
	${INSTALL_DATA} ${WRKSRC}/pkg/librashader.pc \
		${STAGEDIR}${PREFIX}/libdata/pkgconfig

do-install-DOCS-on:
	${MKDIR} ${STAGEDIR}${DOCSDIR}
	${INSTALL_DATA} ${WRKSRC}/BROKEN_SHADERS.md \
		${WRKSRC}/MIGRATION-ABI2.md \
		${WRKSRC}/README.md \
		${STAGEDIR}${DOCSDIR}

do-install-EXAMPLES-on:
	${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
	${INSTALL_DATA} ${WRKSRC}/include/README.md \
		${STAGEDIR}${EXAMPLESDIR}

.include <bsd.port.mk>