Hi,

I would like to understand the rationale about the addition of
COMPILER_LIBCXX in WANTLIB on lang/rust.

lang/rust is compiled using ports gcc4.9. The c++ library used is
libestdc++. And the use of devel/llvm is due linkage with LLVM libraries
(base isn't suitable for that: we don't have libLLVM*.so but only
clang/clang++).

Previously, the WANTLIB for main was:

rust-1.18.0$ make show=WANTLIB-main
estdc++>=17 c m pthread z


Now, the WANTLIB-main has c++ and c++abi added, and estdc++ is missing:

rust-1.18.0p0$ make show=WANTLIB-main
c++ c++abi pthread c m pthread z


rust-1.18.0p0$ make port-lib-depends-check
Missing: estdc++.17 from gcc-libs-4.9.4p5 
(/usr/local/lib/rustlib/x86_64-unknown-openbsd/lib/librustc_llvm-444a1eb13b19ff44.so)
Extra:  c++.0 c++abi.0
WANTLIB += estdc++

Please note that the previous version cosntructed WANTLIB-main using
WANTLIB (which is still "estdc++>=17" due to MODULES += gcc4 usage).

Diff extract (1.45 - 1.46):

@@ -36,7 +38,7 @@ MAINTAINER =          Sebastien Marie <semarie@o
 # with portions covered by various BSD-like licenses
 PERMIT_PACKAGE_CDROM = Yes
 
-WANTLIB-main =         ${WANTLIB} c m pthread z
+WANTLIB-main =         ${COMPILER_LIBCXX} c m pthread z
 WANTLIB-doc =
 


If I correctly understood the WANTLIB usage, it is used to mark the
package as using these libraries in order to construct the package
signature, and so update the package if the signature changes.

Something is wrong (but maybe on my configuration ?)

Thanks.
-- 
Sebastien Marie

Reply via email to