aboutsummaryrefslogtreecommitdiff
path: root/devel/pyside6-tools/Makefile
blob: ebcf57f007e9dd19cecff24b55551a9b69594062 (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
PORTNAME=	pyside6
DISTVERSION=	${PYSIDE6_VERSION}
CATEGORIES=	devel
MASTER_SITES=	QT/official_releases/QtForPython/shiboken6/PySide6-${DISTVERSION}-src
PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
PKGNAMESUFFIX=	-tools
DISTNAME=	pyside-setup-everywhere-src-${DISTVERSION}

MAINTAINER=	kde@FreeBSD.org
COMMENT=	PySide6 development tools
WWW=		https://wiki.qt.io/Qt_for_Python

LICENSE=	BSD3CLAUSE GPLv2
LICENSE_COMB=	multi

LIB_DEPENDS=	libshiboken6.abi${PYTHON_MAJOR_VER}.so:devel/shiboken6@${PY_FLAVOR} \
		libpyside6.abi${PYTHON_MAJOR_VER}.so:devel/pyside6@${PY_FLAVOR} \
		libxkbcommon.so:x11/libxkbcommon \
		libzstd.so:archivers/zstd

USES=		cmake gl llvm:lib,noexport python qt:6 shebangfix tar:xz
USE_GL=		opengl
USE_PYTHON=	flavors
USE_QT=		base declarative languageserver tools

SHEBANG_FILES=	pyside_tool.py qtpy2cpp_lib/tests/baseline/basic_test.py

PLIST_SUB=	PYSIDE_BINDIR_REL=${PYSIDE_BINDIR_REL}
WRKSRC_SUBDIR=	sources/pyside-tools

PYSIDE_RELNAME=		${PORTNAME}
PYSIDE_BINDIR_REL?=	bin/${PYSIDE_RELNAME}

post-install:
# Move scripts into a dedicated directory. They're too generically named, e.g.:
# deploy.py and project.py. Unversioned copies of Qt tools like lrelease and
# rcc are also installed which we probably don't want in PATH by default.
# Install to: ${PREFIX}/bin/pyside6 by default for now until there are
# consumers of this and a more fitting location is deemed necessary.
	@${MV} ${STAGEDIR}${PREFIX}/bin ${STAGEDIR}${PREFIX}/${PYSIDE_RELNAME}
	@${MKDIR} ${STAGEDIR}${PREFIX}/${PYSIDE_BINDIR_REL}
	@${MV} ${STAGEDIR}${PREFIX}/${PYSIDE_RELNAME} ${STAGEDIR}${PREFIX}/bin
# These directories contain templates that should not be byte-compiled.
# Temporarily relocate them to avoid errors.
	@${MV} ${STAGEDIR}${PREFIX}/${PYSIDE_BINDIR_REL}/deploy_lib/android/recipes ${WRKDIR}

.for d in deploy_lib project qtpy2cpp_lib
	${PYTHON_CMD} ${PYTHON_LIBDIR}/compileall.py \
		-f -d ${PREFIX}/${PYSIDE_BINDIR_REL}/${d} \
		${STAGEDIR}${PREFIX}/${PYSIDE_BINDIR_REL}/${d}
	${PYTHON_CMD} -O ${PYTHON_LIBDIR}/compileall.py \
		-f -d ${PREFIX}/${PYSIDE_BINDIR_REL}/${d} \
		${STAGEDIR}${PREFIX}/${PYSIDE_BINDIR_REL}/${d}
.endfor

# Move the aforementioned templates back into STAGEDIR after the byte-compiling
# operation has finished.
	@${MV} ${WRKDIR}/recipes ${STAGEDIR}${PREFIX}/${PYSIDE_BINDIR_REL}/deploy_lib/android

.include <bsd.port.mk>