1710e47b06
MFH: 2021Q4
(cherry picked from commit e40e82b3bc
)
115 lines
4.2 KiB
Makefile
115 lines
4.2 KiB
Makefile
# Created by: Pietro Cerutti (gahr@gahr.ch)
|
|
|
|
PORTNAME= tuxguitar
|
|
PORTVERSION= 1.2
|
|
PORTREVISION= 18
|
|
CATEGORIES= audio java
|
|
MASTER_SITES= SF/${PORTNAME}/TuxGuitar/TuxGuitar-${PORTVERSION}:src \
|
|
LOCAL/gahr/:fluid \
|
|
http://people.freebsd.org/~gahr/distfiles/:fluid \
|
|
http://www.alsa-project.org/~james/sound-fonts/:fluid
|
|
DISTNAME= ${PORTNAME}-src-${DISTVERSION}
|
|
DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:src \
|
|
8MBGMSFX.SF2:fluid
|
|
EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
|
|
|
|
MAINTAINER= yuri@FreeBSD.org
|
|
COMMENT= Multitrack tablature editor and player
|
|
|
|
LICENSE= LGPL21
|
|
LICENSE_FILE= ${WRKSRC}/LICENSE
|
|
|
|
BUILD_DEPENDS= ${JAVALIBDIR}/swt.jar:x11-toolkits/swt \
|
|
${JAVALIBDIR}/itext.jar:devel/itext \
|
|
${JAVALIBDIR}/gervill.jar:audio/gervill
|
|
RUN_DEPENDS:= ${BUILD_DEPENDS}
|
|
LIB_DEPENDS= libfluidsynth.so:audio/fluidsynth \
|
|
libjack.so:audio/jack
|
|
|
|
MAKE_ENV+= PREFIX=${PREFIX} INSTALL_DOC_DIR=${DOCSDIR} \
|
|
INSTALL_SHARE_DIR=${DATADIR}
|
|
|
|
USES= cpe desktop-file-utils gmake pkgconfig
|
|
CPE_VENDOR= herac
|
|
USE_JAVA= yes
|
|
USE_ANT= yes
|
|
USE_LDCONFIG= yes
|
|
NO_CCACHE= yes
|
|
|
|
BUILD_WRKSRC= ${WRKSRC}/TuxGuitar
|
|
SF2_DIR= ${LOCALBASE}/share/sounds/sf2
|
|
|
|
OPTIONS_DEFINE= DOCS
|
|
|
|
PLUGINS= ascii compat converter fluidsynth gervill gtp \
|
|
jsa lilypond midi musicxml oss pdf ptb tef tray tuner
|
|
|
|
SUB_FILES= pkg-message tuxguitar
|
|
SUB_LIST= DATADIR=${DATADIR} \
|
|
PREFIX=${PREFIX} \
|
|
JAVALIBDIR=${JAVALIBDIR} \
|
|
SF2_DIR=${SF2_DIR}
|
|
|
|
post-extract:
|
|
@${CP} ${DISTDIR}/8MBGMSFX.SF2 ${WRKDIR}
|
|
|
|
post-patch:
|
|
@${FIND} ${WRKSRC} -name build.properties | ${XARGS} ${REINPLACE_CMD} -e '\
|
|
s|path\.swt=.*|path.swt=${JAVAJARDIR}/swt.jar|; \
|
|
s|path\.itext=.*|path.itext=${JAVAJARDIR}/itext.jar|; \
|
|
s|path\.gervill=.*|path.gervill=${JAVAJARDIR}/gervill.jar|'
|
|
@${FIND} ${WRKSRC} -name GNUmakefile | ${XARGS} ${REINPLACE_CMD} -e '\
|
|
s|-I$$(shell gcj -print-file-name=include/)|-I${JAVA_HOME}/include \
|
|
-I${JAVA_HOME}/include/freebsd -I${LOCALBASE}/include|; \
|
|
s|-I $$(shell $$(GCJ) -print-file-name=include/)|-I${JAVA_HOME}/include \
|
|
-I${JAVA_HOME}/include/freebsd -I${LOCALBASE}/include|; \
|
|
s|LDFLAGS\?=.*|LDFLAGS+=-L${LOCALBASE}/lib|; \
|
|
s|CFLAGS\?=|CFLAGS+=|'
|
|
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g; \
|
|
s|%%PREFIX%%|${PREFIX}|g; \
|
|
s|%%JAVAJARDIR%%|${JAVAJARDIR}|g; \
|
|
s|%%JAVASHAREDIR%%|${JAVASHAREDIR}|g; \
|
|
s|%%DATADIR%%|${DATADIR}|g; \
|
|
s|%%DOCSDIR%%|${DOCSDIR}|g' \
|
|
${WRKSRC}/TuxGuitar/build.properties
|
|
|
|
post-build:
|
|
.for p in ${PLUGINS}
|
|
(cd ${WRKSRC}/TuxGuitar-${p}; \
|
|
${SETENV} ${MAKE_ENV} ${ANT} ${MAKE_ARGS} ${ALL_TARGET})
|
|
.endfor
|
|
cd ${WRKSRC}/TuxGuitar-oss/jni && ${SETENV} ${MAKE_ENV} ${MAKE_CMD}
|
|
cd ${WRKSRC}/TuxGuitar-fluidsynth/jni && ${SETENV} ${MAKE_ENV} ${MAKE_CMD}
|
|
cd ${WRKSRC}/TuxGuitar-jack/jni && ${SETENV} ${MAKE_ENV} ${MAKE_CMD}
|
|
|
|
do-install:
|
|
${INSTALL_SCRIPT} ${WRKDIR}/tuxguitar ${STAGEDIR}${PREFIX}/bin
|
|
${INSTALL_LIB} ${WRKSRC}/TuxGuitar-oss/jni/libtuxguitar-oss-jni.so ${STAGEDIR}${PREFIX}/lib
|
|
${INSTALL_LIB} ${WRKSRC}/TuxGuitar-fluidsynth/jni/libtuxguitar-fluidsynth-jni.so ${STAGEDIR}${PREFIX}/lib
|
|
|
|
@${MKDIR} ${STAGEDIR}${DATADIR}/plugins
|
|
${INSTALL_DATA} ${WRKSRC}/TuxGuitar/tuxguitar.jar ${STAGEDIR}${DATADIR}
|
|
${INSTALL_DATA} ${WRKSRC}/misc/*.tg ${STAGEDIR}${DATADIR}
|
|
${INSTALL_DATA} ${WRKDIR}/8MBGMSFX.SF2 ${STAGEDIR}${DATADIR}
|
|
.for p in ${PLUGINS}
|
|
${INSTALL_DATA} ${WRKSRC}/TuxGuitar-${p}/tuxguitar-${p}.jar ${STAGEDIR}${DATADIR}/plugins
|
|
.endfor
|
|
# Inline documentation
|
|
cd ${WRKSRC}/TuxGuitar/share/help && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/help
|
|
cd ${WRKSRC}/TuxGuitar/share/lang && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/lang
|
|
cd ${WRKSRC}/TuxGuitar/share/scales && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/scales
|
|
cd ${WRKSRC}/TuxGuitar/share/skins && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/skins
|
|
|
|
${INSTALL_DATA} ${WRKSRC}/misc/tuxguitar.xpm ${STAGEDIR}${PREFIX}/share/pixmaps
|
|
${INSTALL_DATA} ${WRKSRC}/misc/tuxguitar.desktop ${STAGEDIR}${PREFIX}/share/applications
|
|
${INSTALL_MAN} ${WRKSRC}/misc/tuxguitar.1 ${STAGEDIR}${MANPREFIX}/man/man1
|
|
|
|
# Share soundfont with FluidSynth
|
|
@${MKDIR} ${STAGEDIR}${SF2_DIR}
|
|
${RLN} ${STAGEDIR}${DATADIR}/8MBGMSFX.SF2 ${STAGEDIR}${SF2_DIR}
|
|
|
|
do-install-DOCS-on:
|
|
@${MKDIR} ${STAGEDIR}${DOCSDIR}
|
|
cd ${WRKSRC}/TuxGuitar/doc && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}
|
|
|
|
.include <bsd.port.mk>
|