CVSROOT:        /cvs
Module name:    ports
Changes by:     [email protected]  2025/05/20 20:41:46

Modified files:
        devel/llvm     : Makefile.inc 
        devel/llvm/13  : Makefile 
        devel/llvm/16  : Makefile 
        devel/llvm/18  : Makefile 
        devel/llvm/19  : Makefile 
        devel/llvm/20  : Makefile 
        lang/clang     : clang.port.mk 
Added files:
        devel/llvm/19/patches: patch-libcxx_src_CMakeLists_txt 
        devel/llvm/19/pkg: PLIST-libcxx 
        devel/llvm/20/patches: patch-libcxx_src_CMakeLists_txt 
        devel/llvm/20/pkg: PLIST-libcxx 
        devel/llvm/files: DESCR-libcxx 

Log message:
add support for building with libc++ from ports by adding a subpackage

This esentially allows us to build any port with a different libc++
when needed, by switching over the port to ports-clang and setting
MODCLANG_VERSION to the required version and then setting
MODCLANG_CPPLIB=Yes will set the appropriate CXXFLAGS and LDFLAGS.

The libraries are renamed to include an 'e' prefix and the includes
live in ${LOCALBASE}/llvm${LLVM_MAJOR}/ as well so nothing should
pick these up by default.

libc++ is also built with a custom namespace (__E${LLVM_MAJOR}) which
allows us to link to multiple libc++ versions (including base) so this
way dependencies pulling in libc++ from base should be okay as well.

Fixup wantlibs for all llvm ports while here.

ok tb@

Reply via email to