blob: 5e58cd4e6b946355b74fe3188cfb537e48f8d17f (
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
# Created by: Johannes Dieterich <jmd@FreeBSD.org>
# $FreeBSD$
PORTNAME= drm-current-kmod
PORTVERSION= 4.16.g20190918
CATEGORIES= graphics kld
MAINTAINER= x11@FreeBSD.org
COMMENT= DRM modules for the linuxkpi-based KMS components
LICENSE= BSD2CLAUSE MIT GPLv2
LICENSE_COMB= multi
ONLY_FOR_ARCHS= amd64 i386 powerpc64
ONLY_FOR_ARCHS_REASON= the new KMS components are only supported on amd64 and i386
RUN_DEPENDS= gpu-firmware-kmod>=g20180319:graphics/gpu-firmware-kmod
CONFLICTS_INSTALL= drm-devel-kmod \
drm-fbsd11.2-kmod \
drm-fbsd12.0-kmod \
drm-legacy-kmod
OPTIONS_DEFINE= DEBUG SOURCE
OPTIONS_DEFAULT= SOURCE
SOURCE_DESC= Install kernel module sources
OPTIONS_SUB= yes
USES= kmod uidfix compiler:c++11-lang
USE_GITHUB= yes
GH_ACCOUNT= FreeBSDDesktop
GH_PROJECT= kms-drm
GH_TAGNAME= 11cf2dc
.include <bsd.port.options.mk>
.if ${OPSYS} == FreeBSD && ${OSVERSION} < 1300029
IGNORE= not supported on older CURRENT, no kernel support
.endif
.if ${OPSYS} != FreeBSD
IGNORE= not supported on anything but FreeBSD (missing linuxkpi functionality)
.endif
.if ${ARCH} == "amd64"
PLIST_SUB+= AMDGPU=""
PLIST_SUB+= AMDKFD=""
PLIST_SUB+= I915=""
PLIST_SUB+= VMWGFX=""
.elif ${ARCH} == "i386"
PLIST_SUB+= AMDGPU="@comment "
PLIST_SUB+= AMDKFD="@comment "
PLIST_SUB+= I915=""
PLIST_SUB+= VMWGFX=""
.elif ${ARCH} == "powerpc64"
PLIST_SUB+= AMDGPU=""
PLIST_SUB+= AMDKFD="@comment "
PLIST_SUB+= I915="@comment "
PLIST_SUB+= VMWGFX="@comment "
.else
PLIST_SUB+= AMDGPU="@comment "
PLIST_SUB+= AMDKFD="@comment "
PLIST_SUB+= I915="@comment "
PLIST_SUB+= VMWGFX="@comment "
.endif
KMODSRC= ${STAGEDIR}${PREFIX}/sys/modules/${PORTNAME}
SRCDIRS= amd drivers drm i915 include linuxkpi radeon ttm vmwgfx
PLIST_SUB+= KMODSRC="sys/modules/${PORTNAME}"
MAKE_ENV+= MAKEOBJDIRPREFIX=${WRKSRC}/obj
pre-build:
${MKDIR} ${WRKSRC}/obj
(cd ${WRKSRC} ; ${SETENV} ${MAKE_ENV} ${MAKE_CMD} obj)
post-install-SOURCE-on:
${MKDIR} ${KMODSRC}
${INSTALL_DATA} ${WRKSRC}/Makefile ${KMODSRC}
.for dir in ${SRCDIRS}
cd ${WRKSRC} && ${COPYTREE_SHARE} ${dir} ${KMODSRC}
.endfor
.include <bsd.port.mk>
|