1 # Created by: Yuri Victorovich <yuri@rawbw.com>
9 MAINTAINER= yuri@rawbw.com
10 COMMENT= Computer algebra system for solving field theory problems
13 LICENSE_FILE= ${WRKSRC}/doc/license.txt
15 PATCH_DEPENDS= ${NONEXISTENT}:devel/boost-libs:extract \
16 ${NONEXISTENT}:devel/websocketpp:extract
17 BUILD_DEPENDS= ${LOCALBASE}/include/websocketpp/client.hpp:devel/websocketpp
18 LIB_DEPENDS= libboost_python.so:devel/boost-python-libs \
19 libboost_system.so:devel/boost-libs \
20 libpcrecpp.so:devel/pcre \
21 libjsoncpp.so:devel/jsoncpp \
23 libuuid.so:misc/e2fsprogs-libuuid
24 RUN_DEPENDS= ${PYTHON_SITELIBDIR}/sympy/__init__.py:math/py-sympy \
25 ${PYTHON_SITELIBDIR}/matplotlib/__init__.py:math/py-matplotlib
33 USES= compiler:c++14-lang cmake gettext-runtime pkgconfig python:2 sqlite
34 GUI_USE= GNOME=gtkmm30,gdkpixbuf2
35 USE_TEX= base texmf texhash
38 GUI_INSTALLS_ICONS= yes
39 GUI_USES= desktop-file-utils
41 CMAKE_ARGS+= -DBOOST_ROOT=${LOCALBASE}
42 CMAKE_ARGS+= -DUSE_PYTHON_3:BOOL=OFF
43 GUI_CMAKE_BOOL= FRONTEND
44 CXXFLAGS+= -I${LOCALBASE}/include
45 CXXFLAGS+= -I${LOCALBASE}/include/jsoncpp
46 LDFLAGS+= -L${LOCALBASE}/lib -ljsoncpp
47 CMAKE_CXX_FLAGS=${CXXFLAGS}
48 CMAKE_INSTALL_PREFIX=${PREFIX}
51 @${RM} -r ${WRKSRC}/client_server/jsoncpp ${WRKSRC}/client_server/websocketpp
54 # workaround for https://github.com/zaphoyd/websocketpp/issues/563, so that the local patch can be applied
55 @${MKDIR} ${WRKSRC}/override/include/boost/asio/detail/impl
56 @${CP} `${MAKE} -C ${PORTSDIR}/devel/boost-libs -V WRKSRC`/boost/asio/detail/impl/socket_ops.ipp \
57 ${WRKSRC}/override/include/boost/asio/detail/impl/
58 # workaround for https://github.com/zaphoyd/websocketpp/issues/587, so that the local patch can be applied
59 @${MKDIR} ${WRKSRC}/override/include/websocketpp/transport/asio
60 @${CP} `${MAKE} -C ${PORTSDIR}/devel/websocketpp -V WRKSRC`/websocketpp/transport/asio/endpoint.hpp \
61 ${WRKSRC}/override/include/websocketpp/transport/asio/
64 @${REINPLACE_CMD} -e 's|execute|#execute|' \
65 -e 's|"$${GIT_COMMIT_SERIAL}.$${GIT_SHORT_SHA}"|"FreeBSD port version=${PORTVERSION} tag=${GH_TAGNAME}"|' \
66 -e 's|set(CADABRA_VERSION_DATE "$${THE_DATE}"|set(CADABRA_VERSION_DATE "'`date "+%Y-%m-%d"`'"|' \
67 -e 's|include_directories(|include_directories($${PROJECT_SOURCE_DIR}/override/include |' \
68 ${WRKSRC}/CMakeLists.txt
71 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/cadabra2html
72 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/cadabra-server
73 ${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/cadabra2.so
76 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/cadabra2-gtk
77 @${GZIP_CMD} < ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/cadabra2-gtk.svg \
78 > ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/cadabra2-gtk.svgz
79 @${RM} ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/cadabra2-gtk.svg
80 @${LN} ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps/cadabra2-gtk.png \
81 ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps/cadabra-gtk.png
82 @${LN} ${STAGEDIR}${PREFIX}/share/icons/hicolor/128x128/apps/cadabra2-gtk.png \
83 ${STAGEDIR}${PREFIX}/share/icons/hicolor/128x128/apps/cadabra-gtk.png
84 @${LN} ${STAGEDIR}${PREFIX}/share/icons/hicolor/64x64/apps/cadabra2-gtk.png \
85 ${STAGEDIR}${PREFIX}/share/icons/hicolor/64x64/apps/cadabra-gtk.png
86 @${LN} ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/cadabra2-gtk.svgz \
87 ${STAGEDIR}${PREFIX}/share/icons/hicolor/scalable/apps/cadabra-gtk.svgz
89 .include <bsd.port.mk>