819f25b36d
The conflict checks compare the patterns first against the package names without version (as reported by "pkg query "%n"), then - if there was no match - agsinst the full package names including the version (as reported by "pkg query "%n-%v"). Many CONFLICTS definitions used patterns like "bash-[0-9]*" to filter for the bash package in any version. But that pattern is functionally identical with just "bash". Approved by: portmgr (blanket)
101 lines
2.7 KiB
Makefile
101 lines
2.7 KiB
Makefile
# Created by: Dan Pelleg <dpelleg+unison@cs.cmu.edu>
|
|
|
|
PORTNAME= unison
|
|
PORTVERSION= 2.51.4
|
|
DISTVERSIONPREFIX= v
|
|
CATEGORIES= net
|
|
|
|
MAINTAINER= madpilot@FreeBSD.org
|
|
COMMENT= User-level file synchronization tool
|
|
|
|
LICENSE= GPLv3+
|
|
LICENSE_FILE= ${WRKSRC}/COPYING
|
|
|
|
FLAVORS= x11 nox11
|
|
FLAVOR?= ${FLAVORS:[1]}
|
|
|
|
nox11_PKGNAMESUFFIX= -nox11
|
|
nox11_CONFLICTS_INSTALL= unison
|
|
|
|
x11_CONFLICTS_INSTALL= unison-nox11
|
|
x11_BUILD_DEPENDS= lablgtk2:x11-toolkits/ocaml-lablgtk2 \
|
|
icotool:graphics/icoutils
|
|
x11_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \
|
|
libfreetype.so:print/freetype2 \
|
|
libharfbuzz.so:print/harfbuzz
|
|
x11_RUN_DEPENDS= lablgtk2:x11-toolkits/ocaml-lablgtk2
|
|
|
|
PLIST_SUB= PORTVERSION=${PORTVERSION}
|
|
USES= gmake localbase
|
|
USE_OCAML= yes
|
|
WRKSRC_SUBDIR= src
|
|
NO_OCAML_RUNDEPENDS=yes
|
|
CONFLICTS= unison-devel
|
|
MAKE_ENV= CLIBS="${LIBS:S/^-/-ccopt -/}" COFLAGS="${CFLAGS:C/ *(-[^ ]*) */ -ccopt \"\1 \"/gW}"
|
|
ALL_TARGET= unison all
|
|
|
|
USE_GITHUB= yes
|
|
GH_ACCOUNT= bcpierce00
|
|
|
|
DOCS= NEWS README
|
|
|
|
OPTIONS_DEFINE= DOCS FSMONITOR
|
|
OPTIONS_DEFAULT?= FSMONITOR
|
|
|
|
FSMONITOR_DESC= Compile and install fsmonitor plugin
|
|
|
|
OPTIONS_SUB= YES
|
|
|
|
FSMONITOR_LIB_DEPENDS= libinotify.so:devel/libinotify
|
|
|
|
.if ${FLAVOR} == nox11
|
|
MAKE_ARGS= UISTYLE=text
|
|
PKGMESSAGE= ${PKGDIR}/pkg-message.nox11
|
|
PLIST_SUB+= X11="@comment "
|
|
.else
|
|
MAKE_ARGS= UISTYLE=gtk2
|
|
SUB_FILES= ${PORTNAME}.desktop
|
|
USE_GNOME+= atk cairo gdkpixbuf2 glib20 gtk20 pango
|
|
USES+= gettext-runtime gnome
|
|
PLIST_SUB+= X11=""
|
|
.endif
|
|
|
|
post-patch-FSMONITOR-off:
|
|
@${REINPLACE_CMD} -e 's/-include fsmonitor/#&/' \
|
|
${WRKSRC}/Makefile.OCaml
|
|
|
|
post-patch:
|
|
.if ${FLAVOR} == nox11
|
|
@${REINPLACE_CMD} -e 's/CFLAGS/COFLAGS/g' \
|
|
${WRKSRC}/Makefile.OCaml ${WRKSRC}/fsmonitor/linux/Makefile
|
|
.else
|
|
@${REINPLACE_CMD} -Ee 's@(\+|/)(lablgtk2)@\1site-lib/\2@' \
|
|
-e 's/CFLAGS/COFLAGS/g' \
|
|
${WRKSRC}/Makefile.OCaml ${WRKSRC}/fsmonitor/linux/Makefile
|
|
.endif
|
|
|
|
post-build:
|
|
(cd ${WRKSRC} && HOME=${WRKSRC} ./unison -selftest -ui text -batch)
|
|
.if ${FLAVOR} == x11
|
|
@${ECHO} Building text-only version
|
|
@${ECHO} ${WRKSRC}
|
|
${SETENV} ${MAKE_ENV} ${MAKE_CMD} -C ${WRKSRC} UISTYLE=text NAME=unison-text
|
|
@cd ${WRKSRC}/win32rc && ${LOCALBASE}/bin/icotool -x U.ico
|
|
.endif
|
|
|
|
do-install:
|
|
${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
|
|
.if ${FLAVOR} == x11
|
|
${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME}-text ${STAGEDIR}${PREFIX}/bin
|
|
${INSTALL_DATA} ${WRKDIR}/${PORTNAME}.desktop ${STAGEDIR}${DESKTOPDIR}
|
|
${INSTALL_DATA} ${WRKSRC}/win32rc/U_4_48x48x32.png ${STAGEDIR}${PREFIX}/share/pixmaps/${PORTNAME}.png
|
|
.endif
|
|
|
|
do-install-DOCS-on:
|
|
@${MKDIR} ${STAGEDIR}${DOCSDIR}
|
|
cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${STAGEDIR}${DOCSDIR}
|
|
|
|
do-install-FSMONITOR-on:
|
|
${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME}-fsmonitor ${STAGEDIR}${PREFIX}/bin
|
|
|
|
.include <bsd.port.mk>
|