summaryrefslogtreecommitdiff
path: root/audio/musescore/Makefile
blob: 457b565c6fbab817d65c07c9528c75b935d5d115 (plain)
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
# Created by: Dmitry Marakasov <amdmi3@FreeBSD.org>
# $FreeBSD$

PORTNAME=	musescore
DISTVERSION=	3.0.5
CATEGORIES=	audio
MASTER_SITES=	http://ftp.osuosl.org/pub/musescore/releases/MuseScore-${DISTVERSION}/
DISTNAME=	MuseScore-${DISTVERSION}

MAINTAINER=	adridg@FreeBSD.org
COMMENT=	Free music composition & notation software

LICENSE=	GPLv2
LICENSE_FILE=	${WRKSRC}/LICENSE.GPL

LIB_DEPENDS=	libmp3lame.so:audio/lame \
		libsndfile.so:audio/libsndfile \
		libvorbis.so:audio/libvorbis \
		libogg.so:audio/libogg \
		libfreetype.so:print/freetype2

USES=		cmake compiler:c++11-lib desktop-file-utils \
		pkgconfig qt:5 shared-mime-info zip
USE_QT=		core declarative gui widgets opengl concurrent designer help network \
		scripttools svg sql printsupport testlib \
		xml xmlpatterns \
		buildtools_build linguisttools_build qmake_build uitools_build

# Each release gets a subdir containing the distfiles for that release,
# so hope that scanning the parent dir finds new ones.
PORTSCOUT=	site:http://ftp.osuosl.org/pub/musescore/releases/
NO_WRKSUBDIR=	yes
DATADIR=	${PREFIX}/share/mscore-${PORTVERSION:R}

ALL_TARGET=	lrelease manpages all
CMAKE_ARGS+=	-DUSE_SYSTEM_FREETYPE="ON" \
		-DBUILD_PORTMIDI=OFF \
		-DBUILD_PCH=OFF \
		-DDOWNLOAD_SOUNDFONT=OFF

# WebEngine is only available on i386/amd64; defaults to ON there.
# If enabled on arches that don't have WebEngine, the build breaks.
OPTIONS_DEFINE=		ALSA JACK PORTAUDIO PULSEAUDIO WEBENGINE
OPTIONS_DEFAULT=	PORTAUDIO
OPTIONS_DEFAULT_amd64=	WEBENGINE
OPTIONS_DEFAULT_i386=	WEBENGINE

WEBENGINE_DESC=		Use WebEngine in the welcome panel

ALSA_LIB_DEPENDS=	libasound.so:audio/alsa-lib
ALSA_CMAKE_BOOL=	BUILD_ALSA
JACK_LIB_DEPENDS=	libjack.so:audio/jack
JACK_CMAKE_BOOL=	BUILD_JACK
PORTAUDIO_LIB_DEPENDS=	libportaudio.so:audio/portaudio
PORTAUDIO_CMAKE_BOOL=	BUILD_PORTAUDIO
PULSEAUDIO_LIB_DEPENDS=	libpulse.so:audio/pulseaudio
PULSEAUDIO_CMAKE_BOOL=	BUILD_PULSEAUDIO
WEBENGINE_USE=		qt=webengine
WEBENGINE_CMAKE_BOOL=	BUILD_WEBENGINE

.include <bsd.port.pre.mk>

.if ${CHOSEN_COMPILER_TYPE} == clang
CXXFLAGS+=	-Wno-inconsistent-missing-override
.endif

post-extract:
	@${RM} -r ${WRKSRC}/thirdparty/freetype

post-patch:
	@${FIND} ${WRKSRC} -name "CMakeLists.txt" -print0 | ${XARGS} -0 \
		${REINPLACE_CMD} -e \
		'/RELEASE/s|-O2 ||; \
		 /COMPILE_FLAGS/s|-g ||; \
		 s|share/man|man|; \
		 /COMPILE_FLAGS/s|$${PCH_INCLUDE} |-include $${PROJECT_BINARY_DIR}/all.h |'
	@${REINPLACE_CMD} -e \
		's|<errno.h>|<cerrno>| ; \
		 s|<limits.h>|<climits>| ; \
		 s|<math.h>|<cmath>| ; \
		 s|<stdio.h>|<cstdio>|' ${WRKSRC}/all.h

.include <bsd.port.post.mk>