Changeset View
Standalone View
devel/rstudio/Makefile
- This file was added.
Property | Old Value | New Value |
---|---|---|
svn:eol-style | null | native \ No newline at end of property |
svn:keywords | null | FreeBSD=%H \ No newline at end of property |
svn:mime-type | null | text/plain \ No newline at end of property |
# $FreeBSD$ | |||||
PORTNAME= RStudio | |||||
DISTVERSIONPREFIX= v | |||||
DISTVERSION= 1.1.385 | |||||
CATEGORIES= devel math java | |||||
MASTER_SITES= https://s3.amazonaws.com/rstudio-dictionaries/:dictionaries \ | |||||
https://s3.amazonaws.com/rstudio-buildtools/:gin \ | |||||
https://s3.amazonaws.com/rstudio-buildtools/:gwt \ | |||||
https://s3.amazonaws.com/rstudio-buildtools/:mathjax | |||||
DISTFILES= core-dictionaries.zip:dictionaries \ | |||||
mat: This should probably be better as:
```
https://s3.amazonaws.com/rstudio-buildtools/:buildtools… | |||||
Done Inline Actions^ three times the same one tcberner: ^ three times the same one | |||||
gin-${GIN_VERSION}.zip:gin \ | |||||
gwt-${GWT_VERSION}.zip:gwt \ | |||||
mathjax-26.zip:mathjax | |||||
Done Inline Actionsgin-${GIN_VERSION}.zip:buildtools \ gwt-${GWT_VERSION}.zip:buildtools \ mathjax-26.zip:buildtools mat: ```
gin-${GIN_VERSION}.zip:buildtools \
gwt-${GWT_VERSION}.zip:buildtools \
mathjax-26.zip… | |||||
MAINTAINER= yuri@FreeBSD.org | |||||
COMMENT= Integrated development environment (IDE) for R | |||||
Done Inline Actions^ we have textproc/hs-pandoc -- couldn't you use that as a build_depends? tcberner: ^ we have `textproc/hs-pandoc` -- couldn't you use that as a build_depends? | |||||
LICENSE= GPLv3 | |||||
LICENSE_FILE= ${WRKSRC}/COPYING | |||||
BUILD_DEPENDS= ant:devel/apache-ant \ | |||||
${LOCALBASE}/include/sys/sysinfo.h:devel/libsysinfo \ | |||||
pandoc:textproc/hs-pandoc | |||||
LIB_DEPENDS= libR.so:math/R \ | |||||
Done Inline Actions${LOCALBASE}/bin should never appear in a BUILD/RUN_DEPENDS. pandoc:textproc/hs-pandoc adamw: `${LOCALBASE}/bin` should never appear in a `BUILD`/`RUN_DEPENDS`.
`pandoc:textproc/hs-pandoc` | |||||
libboost_thread.so:devel/boost-libs \ | |||||
libinotify.so:devel/libinotify \ | |||||
libuuid.so:misc/e2fsprogs-libuuid | |||||
USES= cmake:outsource desktop-file-utils fortran pkgconfig shared-mime-info | |||||
USE_QT5= core dbus gui location network opengl printsupport qml quick sensors \ | |||||
Done Inline Actionswhy not simply LIB_DEPENDS=libR.so:math/R instead of both BUILD_DEPENDS and RUN_DEPENDS tcberner: why not simply
LIB_DEPENDS=libR.so:math/R
instead of both
BUILD_DEPENDS and RUN_DEPENDS
| |||||
Done Inline ActionsI tried with the full path LIB_DEPENDS=R/lib/libR.so:math/R and it didn't work. I created this bug report: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=223735 Changed to LIB_DEPENDS=libR.so:math/R. yuri: I tried with the full path `LIB_DEPENDS=R/lib/libR.so:math/R` and it didn't work. I created… | |||||
Done Inline ActionsThey rejected the bug, but it's not clear why LIB_DEPENDS=libR.so:math/R should work because of embedded library path. It's fuzzy in case of multiple files. This should be banned. -) yuri: They rejected the bug, but it's not clear why `LIB_DEPENDS=libR.so:math/R` should work because… | |||||
Done Inline ActionsIt works because math/R/Makefile has USE_LDCONFIG=${PREFIX}/lib/R/lib. That said, that library is only installed when the LIBR option is enabled, so depending upon it does not seem like a great idea. BUILD/RUN is perfectly fine unless your port actually links against libR.so. adamw: It works because `math/R/Makefile` has `USE_LDCONFIG=${PREFIX}/lib/R/lib`.
That said, that… | |||||
Done Inline Actionsrstudio executable does depend on lib/R/lib/libR.so.3.4 when LIBR=on in math/R. You are right, it will fail in case of LIBR=off. I will ask the math/R maintainer if he maybe can delete the LIBR option, as it appears that it might not be too useful. yuri: `rstudio` executable does depend on `lib/R/lib/libR.so.3.4` when `LIBR=on` in `math/R`.
You… | |||||
Done Inline ActionsGood idea, Yuri. That option seems like a ports breakage waiting to happen. adamw: Good idea, Yuri. That option seems like a ports breakage waiting to happen. | |||||
Done Inline ActionsThanks! yuri: Thanks!
I wrote him, will see what he says. | |||||
sql svg webchannel webkit widgets xml xmlpatterns buildtools_build | |||||
tcbernerUnsubmitted Done Inline Actionsqmake_build is missing tcberner: qmake_build is missing | |||||
USE_JAVA= yes | |||||
JAVA_BUILD= yes | |||||
Done Inline Actions^qmake_build should suffice, I guess? tcberner: ^`qmake_build` should suffice, I guess? | |||||
USE_GITHUB= yes | |||||
GH_TUPLE= rstudio:rmarkdown:aed26ac:rmarkdown/dependencies/common/rmarkdown \ | |||||
rstudio:rsconnect:03c379b:rsconnect/dependencies/common/rsconnect | |||||
CMAKE_ARGS= -DRSTUDIO_TARGET=Desktop \ | |||||
-DFREEBSD_RSTUDIO_VERSION:STRING=${PORTVERSION} \ | |||||
-DFREEBSD_LIBDIR:STRING=${PREFIX}/lib | |||||
MAKE_ENV= HOME=${WRKDIR} \ | |||||
ANT_OPTS="-Duser.home=${WRKDIR}" | |||||
Done Inline Actions^ CMAKE_BUILD_TYPE should not be necessary tcberner: ^ CMAKE_BUILD_TYPE should not be necessary | |||||
WRKSRC= ${WRKDIR}/${PORTNAME:tl}-${PORTVERSION} | |||||
GWT_VERSION= 2.7.0 | |||||
GIN_VERSION= 1.5 | |||||
post-extract: | |||||
@${MKDIR} ${WRKSRC}/dependencies/common/dictionaries && ${MV} ${WRKDIR}/en_* ${WRKSRC}/dependencies/common/dictionaries/ | |||||
@${MV} ${WRKDIR}/mathjax-* ${WRKSRC}/dependencies/common/ | |||||
@${MKDIR} ${WRKSRC}/src/gwt/lib/gwt && ${MV} ${WRKDIR}/gwt-${GWT_VERSION} ${WRKSRC}/src/gwt/lib/gwt/${GWT_VERSION} | |||||
@${MKDIR} ${WRKSRC}/src/gwt/lib/gin/${GIN_VERSION} && ${MV} ${WRKDIR}/*.jar ${WRKDIR}/javadoc ${WRKSRC}/src/gwt/lib/gin/${GIN_VERSION}/ | |||||
post-patch: | |||||
@${REINPLACE_CMD} -e ' \ | |||||
s|get_filename_component|#get_filename_component|; \ | |||||
s|set(CMAKE_PREFIX_PATH "$${QT_BIN_DIR}//..//lib//cmake")|set(CMAKE_PREFIX_PATH "${LOCALBASE}/lib/cmake")|; \ | |||||
s|/usr/share/|${PREFIX}/share/|g' \ | |||||
${WRKSRC}/src/cpp/desktop/CMakeLists.txt | |||||
@${REINPLACE_CMD} -e ' \ | |||||
s|</java>|<jvmarg value="-Duser.home=${WRKDIR}"/></java>|' \ | |||||
${WRKSRC}/src/gwt/build.xml | |||||
@${REINPLACE_CMD} -e '\ | |||||
s|rHomePaths.push_back|//rHomePaths.push_back|; \ | |||||
s|//rHomePaths.push_back(FilePath("/usr/local/lib/|rHomePaths.push_back(FilePath("${PREFIX}/lib/|' \ | |||||
${WRKSRC}/src/cpp/core/r_util/RVersionsPosix.cpp | |||||
pre-build: | |||||
@${CP} ${FILESDIR}/global-setenv.h ${WRKSRC}/src/cpp/desktop/ | |||||
@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/src/cpp/desktop/global-setenv.h | |||||
post-install: | |||||
@${LN} -s ${PREFIX}/lib/rstudio/bin/rstudio ${STAGEDIR}${PREFIX}/bin/rstudio | |||||
@${REINPLACE_CMD} -e 's|^Exec=.*/rstudio|Exec=${PREFIX}/bin/rstudio|' ${STAGEDIR}${PREFIX}/share/applications/rstudio.desktop | |||||
# There is a variability in .js file names due to the use of random numbers, so we use the automatic plist. | |||||
@${SETENV} ${CO_ENV} ${SH} ${SCRIPTSDIR}/check-stagedir.sh makeplist | ${GREP} -v ^\/ | ${SED} -e 's|%%WWWDIR%%|www/rstudio|' > ${TMPPLIST} | |||||
.include <bsd.port.mk> |
This should probably be better as:
and...