Makefile 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. PORTNAME= weechat
  2. PORTVERSION= 4.4.2
  3. CATEGORIES= irc
  4. MASTER_SITES= https://weechat.org/files/src/
  5. MAINTAINER= brnrd@FreeBSD.org
  6. COMMENT= Lightweight and user friendly ncurses based IRC client
  7. WWW= https://weechat.org/
  8. LICENSE= GPLv3+
  9. LICENSE_FILE= ${WRKSRC}/COPYING
  10. LIB_DEPENDS+= libcurl.so:ftp/curl \
  11. libgcrypt.so:security/libgcrypt \
  12. libgnutls.so:security/gnutls \
  13. libgpg-error.so:security/libgpg-error
  14. USES= cmake cpe ncurses pkgconfig tar:xz
  15. USE_LDCONFIG= yes
  16. CMAKE_ARGS= -DLIBDATADIR=${LOCALBASE}/libdata
  17. OPTIONS_DEFINE= API BACKTRACE DOCS HEADLESS ICON ICONV MANPAGES NLS ZSTD
  18. OPTIONS_DEFAULT= API ASPELL BACKTRACE CHARSET HEADLESS ICON LUA MANPAGES \
  19. NLS PERL PYTHON RUBY TCL TYPING ZSTD
  20. OPTIONS_SUB= yes
  21. OPTIONS_GROUP= PLUGINS
  22. OPTIONS_GROUP_PLUGINS= ASPELL CHARSET GUILE JAVASCRIPT LUA PERL PHP PYTHON \
  23. RUBY TCL TYPING
  24. API_DESC= HTTP REST API
  25. BACKTRACE_DESC= Provide crash backtraces
  26. CHARSET_DESC= Charset plugin (implies ICONV)
  27. GUILE_DESC= Guile script support
  28. HEADLESS_DESC= Build headless weechat as well
  29. ICON_DESC= Desktop icon
  30. JAVASCRIPT_DESC= Javascript script support
  31. PLUGINS_DESC= Weechat Plugins
  32. PYTHON_DESC= Python script support
  33. RUBY_DESC= Ruby script support
  34. TYPING_DESC= Typing status plugin
  35. .for _opt in ${OPTIONS_GROUP_PLUGINS} BACKTRACE HEADLESS ICONV GNUTLS NLS ZSTD
  36. ${_opt}_CMAKE_BOOL= ENABLE_${_opt}
  37. .endfor
  38. API_CMAKE_BOOL= ENABLE_CJSON
  39. API_LIB_DEPENDS= libcjson.so:devel/libcjson
  40. ASPELL_CMAKE_BOOL= ENABLE_SPELL
  41. ASPELL_LIB_DEPENDS= libaspell.so:textproc/aspell
  42. CHARSET_IMPLIES= ICONV
  43. DOCS_CMAKE_BOOL= ENABLE_DOC ENABLE_DOC_INCOMPLETE
  44. DOCS_BUILD_DEPENDS= ${LOCALBASE}/bin/asciidoctor:textproc/rubygem-asciidoctor
  45. GUILE_USES= guile:2.2,conflicts
  46. ICONV_USES= iconv
  47. JAVASCRIPT_LIB_DEPENDS= libv8.so:lang/v8
  48. LUA_USES= lua pkgconfig
  49. MANPAGES_CMAKE_BOOL= ENABLE_MAN
  50. MANPAGES_CMAKE_ON= -DMANDIR=${PREFIX}/share/man
  51. MANPAGES_BUILD_DEPENDS= ${LOCALBASE}/bin/asciidoctor:textproc/rubygem-asciidoctor
  52. NLS_USES= gettext
  53. PERL_USES= perl5
  54. PHP_USES= php:build,embed
  55. PYTHON_USES= python
  56. RUBY_USES= ruby
  57. TCL_CMAKE_ON= -DTCL_VERSION:STRING="${TCL_VER}" \
  58. -DTCL_TCLSH:PATH="${TCLSH}"
  59. TCL_USES= tcl
  60. ZSTD_LIB_DEPENDS= libzstd.so:archivers/zstd
  61. .include <bsd.port.pre.mk>
  62. post-patch:
  63. .if ${LOCALBASE} != "/usr/local"
  64. . for f in src/core/CMakeLists.txt cmake/*.cmake
  65. @${REINPLACE_CMD} 's|/usr/local|${LOCALBASE}|' ${WRKSRC}/$f
  66. . endfor
  67. .endif
  68. @${REINPLACE_CMD} 's|python${PYTHON_MAJOR_VER}|python-${PYTHON_VER}|' \
  69. ${WRKSRC}/cmake/FindPython.cmake
  70. post-patch-ICON-off:
  71. @${REINPLACE_CMD} -e '/^# icon$$/,/^$$/d' ${WRKSRC}/CMakeLists.txt
  72. post-install:
  73. ${LN} -sf weechat ${STAGEDIR}${PREFIX}/bin/weechat-curses
  74. .include <bsd.port.post.mk>