Date: Mon, 03 Oct 2016 23:59:09 -0300 From: Joseph Mingrone <jrm@FreeBSD.org> To: ports@freebsd.org Cc: Steve Wills <swills@FreeBSD.org>, Dmitry Marakasov <amdmi3@FreeBSD.org>, thierry@FreeBSD.org, tota@FreeBSD.org Subject: math/R slave ports and shared library Message-ID: <864m4skef6.fsf@phe.ftfl.ca>
next in thread | raw e-mail | index | archive | help
--=-=-= Content-Type: text/plain After some surgery, math/R is in more manageable shape. But, the surgery broke two slave ports, math/libR and math/libRmath. They have each been marked broken since June or July and I posted to ports@ about deleting them, but didn't get a response. math/libRmath I'm not sure how widely used math/libRmath is today, but it's still described in R's main installation document (https://cran.r-project.org/doc/manuals/r-release/R-admin.html#The-standalone-Rmath-library). It *should* be straightforward to just incorporate math/libRmath's four files into math/R and then delete math/libRmath. The directory for libRmath is under WRKSRC, but it's not included in the main Makefile, so I'd have to either patch the main Makefile or do something with post-build and post-install. Is this palatable? --- post-build: ${SETENV} ${MAKE_ENV} ${MAKE_CMD} -C ${WRKSRC}/src/nmath/standalone post-install .for f in libRmath.a libRmath.so libRmath.so.${RMATH_SOVERSION} ${INSTALL_DATA} ${WRKSRC}/src/nmath/standalone/${f} ${STAGEDIR}/lib/ .endfor ${INSTALL_DATA} ${WRKSRC}/src/nmath/standalone/Rmath.h ${STAGEDIR}/include/ --- math/libR Right now, unlike upstream, math/R's shared library option is turned on by default. This was done only in late June because a dependency, math/rkward-kde4, required it. Upstream turns it off, for the reasons described in [1]. I'm inclined to remove the libR option from math/R's OPTIONS_DEFAULT and resurrect math/libR (or maybe math/R-libR by using PKGNAMESUFFIX) as a very simple slave port that just installs math/R with that option on. math/rkward-kde4 could then depend on math/libR. One issue is that, I believe, R's installed packages (packages installed from within R) and many of R's dependencies would have to be rebuilt after turning off the libR option. Opinions? Joseph [1] "--enable-R-shlib causes the make process to build R as a dynamic (shared) library, typically called libR.so, and link the main R executable R.bin against that library. This can only be done if all the code (including system libraries) can be compiled into a dynamic library, and there may be a performance [47] penalty. So you probably only want this if you will be using an application which embeds R. Note that C code in packages installed on an R system linked with --enable-R-shlib is linked against the dynamic library and so such packages cannot be used from an R system built in the default way. Also, because packages are linked against R they are on some OSes also linked against the dynamic libraries R itself is linked against, and this can lead to symbol conflicts." [47] We have measured 15-20% on i686 Linux and around 10% on x86_64 Linux. --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQJ8BAEBCgBmBQJX8xr9XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ1NUIwOTNBNzI2QzM4ODU1NzEyMkJBRDUz NkE0MEM4M0IwRDZFRjlFAAoJEDakDIOw1u+e1N8P/3VefqaAP0bVpFIKumSf2S5O Ianu7HQIREGF7YaQCg1K3+Jy2tQyYvaF/het2ADTyFaXE1DN8kvA6hkDkJ48KF0B k52FOQd9Uu1fZV5Z/JyuavXOrqQLXyElKJq/PkipZxeB9sRpcIkVrA9oBeMEd5Vp yBWc32kel7h5L5CXsBazAIoHPDuIFjooUURB8DFJgJQeABa0lGDdIWY8PZ/HycwX a12rKgliAY9Lt54i3zn+wJol5t/BY/quWOVr1cVOJru/XNx7S1ww5jHjXPao5XlW Kl7zNy8frlJjv6QK+D5VEMDiDeT0jQM+P/+fhZQXglNo9n9DDIUEbCJ/QOCoA92i NQjudfGh7txIJ9ENUq1y3JA3zdA+5G3rSr6mTIzYWhhzs8Vmim3TpZQIC+HO0p8T L5JmMthyHxT5xEEkosTIdjWTU7USB/ailhEr0isZIVYKDxPXeeAFlR7Y1ifJhXq+ Q3teYhJdNY6EituWWlXoFB4ODX34qHSId1H/dEtqhSPIGTG3+xCEsnvJk4LPI90C 9IH2shVIIpFhw7NVKbSB3Pd8ztIKRJQpCFTePeH4iGXNRoZUXCOX0Hxe+t2L+VRA 7ZX31HNMethWpZshxDlw5EKVsPyjRpAT/drjM8zFzgJMx/po7rtX+G/JKMnAnMSR cRKN/ccjho4FfM+xKxd/ =mOfZ -----END PGP SIGNATURE----- --=-=-=--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?864m4skef6.fsf>