1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-29 10:18:30 +00:00

New port: devel/juce: C++ application framework to develop desktop and mobile applications

This commit is contained in:
Yuri Victorovich 2021-03-25 23:11:28 +00:00
parent ac69820bb5
commit bc752978e1
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=569228
5 changed files with 1992 additions and 0 deletions

View File

@ -1021,6 +1021,7 @@
SUBDIR += jsoncpp
SUBDIR += jsonnet
SUBDIR += jsonrpc-glib
SUBDIR += juce
SUBDIR += judy
SUBDIR += jwasm
SUBDIR += kBuild

61
devel/juce/Makefile Normal file
View File

@ -0,0 +1,61 @@
# $FreeBSD$
PORTNAME= juce
DISTVERSION= 6.0.8
CATEGORIES= devel
MAINTAINER= yuri@FreeBSD.org
COMMENT= C++ application framework to develop desktop and mobile applications
LICENSE= JUCE6
LICENSE_NAME= JUCE 6 End User License Agreement
LICENSE_FILE= ${WRKSRC}/LICENSE.md
LICENSE_PERMS= dist-mirror pkg-mirror auto-accept
BUILD_DEPENDS= ladspa>0:audio/ladspa
LIB_DEPENDS= libasound.so:audio/alsa-lib \
libfreetype.so:print/freetype2 \
libsysinfo.so:devel/libsysinfo
USES= cmake compiler:c++11-lang gl localbase:ldflags xorg
USE_GL= gl
USE_XORG= x11 xcomposite xcursor xext xinerama xorgproto xrandr
USE_GITHUB= yes
GH_ACCOUNT= yurivict # juce-framework
GH_PROJECT= JUCE
GH_TAGNAME= 107cc92
CMAKE_ON= JUCE_BUILD_EXTRAS # JUCE_BUILD_EXAMPLES
CXXFLAGS+= -I${LOCALBASE}/include/freetype2
LDFLAGS+= -pthread -lfreetype
LDFLAGS+= -lGL # while building NetworkGraphicsDemo ld: error: undefined symbol: glXGetCurrentContext referenced by ld-temp.o
LDFLAGS+= -lasound # while building AudioPerformanceTest ld: error: undefined symbol: snd_seq_system_info_sizeof
LDFLAGS+= -lsysinfo # while building Projucer ld: error: undefined symbol: sysinfo
CONFIGURE_ENV+= CXXFLAGS="${CXXFLAGS}" LDFLAGS="${LDFLAGS} -lsysinfo -lexecinfo" # for the step 'Building juceaide' during configure phase: https://github.com/juce-framework/JUCE/issues/877
PLIST_SUB+= VERSION=${PORTVERSION}
post-patch:
# fix fonts.conf path
@${REINPLACE_CMD} -e ' \
s|"/etc/fonts/fonts.conf"|"${PREFIX}/etc/fonts/fonts.conf"| ; \
s|"/usr/share/fonts/fonts.conf"|"${PREFIX}/share/fonts/fonts.conf"| \
' ${WRKSRC}/modules/juce_graphics/native/juce_linux_Fonts.cpp
# fix JUCE modules path (but it still complains about the path)
@${REINPLACE_CMD} -e ' \
s|"~/JUCE|"${PREFIX}/include/JUCE-${PORTVERSION}| \
' ${WRKSRC}/extras/Projucer/Source/Settings/jucer_StoredSettings.cpp
post-install:
# install extras which are essential apps that aren't installed by the project for some reason
.for exe in AudioPerformanceTest AudioPluginHost BinaryBuilder NetworkGraphicsDemo Projucer UnitTestRunner
${INSTALL_PROGRAM} ${BUILD_WRKSRC}/extras/${exe}/${exe}_artefacts/Release/${exe} ${STAGEDIR}${PREFIX}/bin
.endfor
# fix path and strip juceaide
cd ${STAGEDIR}${PREFIX} && ${MV} bin/JUCE-${PORTVERSION}/juceaide bin/ && ${RMDIR} bin/JUCE-${PORTVERSION}
${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/juceaide
.include <bsd.port.mk>

3
devel/juce/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1616695479
SHA256 (yurivict-JUCE-6.0.8-107cc92_GH0.tar.gz) = c2701575857b7ef96898b20811801cb3144d2d7fba89babba888bf7497b4c055
SIZE (yurivict-JUCE-6.0.8-107cc92_GH0.tar.gz) = 14055294

9
devel/juce/pkg-descr Normal file
View File

@ -0,0 +1,9 @@
JUCE is a framework for multi-platform audio applications.
It is focused on audio application development and has an extensive set of
autio-related modules.
It doesn't yet support makefile export or IDE project export on Linux/BSD
so for now it can only create .jucer projects.
WWW: https://juce.com/

1918
devel/juce/pkg-plist Normal file

File diff suppressed because it is too large Load Diff