We have lots of duplicated functionality across the LLVM runtime libraries to continue supporting building them without LLVM sources or installations.
Despite my history of being a strong advocate for the runtimes being used without LLVM, I don't really have a horse in this race anymore. Duncan might, so I'll defer to him. -Chris > On Jan 25, 2018, at 1:07 PM, Don Hinton <hinto...@gmail.com> wrote: > > On Thu, Jan 25, 2018 at 12:54 PM, Chris Bieneman <be...@apple.com > <mailto:be...@apple.com>> wrote: > Historically we have supported building libcxx without llvm-config available > on the system. > > In all likelihood the bots didn't fail because the bots do have llvm-config > because we usually require an llvm build or source checkout in order to build > and run the tests since tests depend on lit and gtest. > > Ah, okay, but if the bots don't test/enforce this, does it make sense to > continue to support building without llvm-config? > > I don't want to break upstream users, but the alternative is to duplicate > this logic across multiple sub-projects. (see > http://lists.llvm.org/pipermail/llvm-dev/2018-January/120707.html > <http://lists.llvm.org/pipermail/llvm-dev/2018-January/120707.html> for a > related rpath issue). > > > > > -Chris > > >> On Jan 25, 2018, at 12:51 PM, Don Hinton <hinto...@gmail.com >> <mailto:hinto...@gmail.com>> wrote: >> >> On Thu, Jan 25, 2018 at 12:29 PM, Duncan P. N. Exon Smith >> <dexonsm...@apple.com <mailto:dexonsm...@apple.com>> wrote: >> I don't really understand why, but our bots seemed to survive this: >> http://lab.llvm.org:8080/green/view/Libcxx/job/libcxx_master_cmake/2137/ >> <http://lab.llvm.org:8080/green/view/Libcxx/job/libcxx_master_cmake/2137/> >> >> Console output is here: >> http://lab.llvm.org:8080/green/view/Libcxx/job/libcxx_master_cmake/2137/consoleFull >> >> <http://lab.llvm.org:8080/green/view/Libcxx/job/libcxx_master_cmake/2137/consoleFull> >> >> That doesn't necessarily mean it's safe. Does anyone know why this might >> have "worked"? >> >> I'm not an expert, but llvm installs all of these cmake modules along side >> llvm-config, so if you find llvm-config, you find these modules. >> >> So, unless I'm missing something, it looks like AddLLVM.cmake is always >> available. >> >> >>> On Jan 25, 2018, at 11:02, Shoaib Meenai <smee...@fb.com >>> <mailto:smee...@fb.com>> wrote: >>> >>> This is going to break building libc++ standalone (i.e. without any LLVM >>> repository or even its CMake modules), right? Some upstream users care a >>> lot about that use case (CC beanz and Duncan). >>> >>> From: cfe-commits <cfe-commits-boun...@lists.llvm.org >>> <mailto:cfe-commits-boun...@lists.llvm.org>> on behalf of Don Hinton via >>> cfe-commits <cfe-commits@lists.llvm.org <mailto:cfe-commits@lists.llvm.org>> >>> Reply-To: Don Hinton <hinto...@gmail.com <mailto:hinto...@gmail.com>> >>> Date: Thursday, January 25, 2018 at 10:15 AM >>> To: "cfe-commits@lists.llvm.org <mailto:cfe-commits@lists.llvm.org>" >>> <cfe-commits@lists.llvm.org <mailto:cfe-commits@lists.llvm.org>> >>> Subject: [libcxx] r323453 - [cmake] [libcxx] Call llvm_setup_rpath() when >>> adding shared libraries. >>> >>> Author: dhinton >>> Date: Thu Jan 25 10:13:26 2018 >>> New Revision: 323453 >>> >>> URL: >>> https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject-3Frev-3D323453-26view-3Drev&d=DwIGaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=o3kDXzdBUE3ljQXKeTWOMw&m=zwvSmk9ZIfMARYg3JvYvNuA0Iz-PEq3H2i_ICF6vsR8&s=LDCu89byjNdZWoCIYHGHaPr3IamIdHLF0JwbnYE92vM&e= >>> >>> <https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject-3Frev-3D323453-26view-3Drev&d=DwIGaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=o3kDXzdBUE3ljQXKeTWOMw&m=zwvSmk9ZIfMARYg3JvYvNuA0Iz-PEq3H2i_ICF6vsR8&s=LDCu89byjNdZWoCIYHGHaPr3IamIdHLF0JwbnYE92vM&e=> >>> Log: >>> [cmake] [libcxx] Call llvm_setup_rpath() when adding shared libraries. >>> >>> Clang and llvm already use llvm_setup_rpath(), so this change will >>> help standarize rpath usage across all projects. >>> >>> Differential Revision: >>> https://urldefense.proofpoint.com/v2/url?u=https-3A__reviews.llvm.org_D42459&d=DwIGaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=o3kDXzdBUE3ljQXKeTWOMw&m=zwvSmk9ZIfMARYg3JvYvNuA0Iz-PEq3H2i_ICF6vsR8&s=YCR-YJBua5p-4IK05GjHoZUU7aN8UJAFzL2xaz7byyw&e= >>> >>> <https://urldefense.proofpoint.com/v2/url?u=https-3A__reviews.llvm.org_D42459&d=DwIGaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=o3kDXzdBUE3ljQXKeTWOMw&m=zwvSmk9ZIfMARYg3JvYvNuA0Iz-PEq3H2i_ICF6vsR8&s=YCR-YJBua5p-4IK05GjHoZUU7aN8UJAFzL2xaz7byyw&e=> >>> >>> Modified: >>> libcxx/trunk/lib/CMakeLists.txt >>> >>> Modified: libcxx/trunk/lib/CMakeLists.txt >>> URL: >>> https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_libcxx_trunk_lib_CMakeLists.txt-3Frev-3D323453-26r1-3D323452-26r2-3D323453-26view-3Ddiff&d=DwIGaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=o3kDXzdBUE3ljQXKeTWOMw&m=zwvSmk9ZIfMARYg3JvYvNuA0Iz-PEq3H2i_ICF6vsR8&s=Rd7xc2GWS8oyDcm0QshNPTqM3BglPY5_aHMIuCRUt1s&e= >>> >>> <https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_viewvc_llvm-2Dproject_libcxx_trunk_lib_CMakeLists.txt-3Frev-3D323453-26r1-3D323452-26r2-3D323453-26view-3Ddiff&d=DwIGaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=o3kDXzdBUE3ljQXKeTWOMw&m=zwvSmk9ZIfMARYg3JvYvNuA0Iz-PEq3H2i_ICF6vsR8&s=Rd7xc2GWS8oyDcm0QshNPTqM3BglPY5_aHMIuCRUt1s&e=> >>> ============================================================================== >>> --- libcxx/trunk/lib/CMakeLists.txt (original) >>> +++ libcxx/trunk/lib/CMakeLists.txt Thu Jan 25 10:13:26 2018 >>> @@ -222,6 +222,7 @@ set(LIBCXX_TARGETS) >>> # Build the shared library. >>> if (LIBCXX_ENABLE_SHARED) >>> add_library(cxx_shared SHARED $<TARGET_OBJECTS:cxx_objects>) >>> + llvm_setup_rpath(cxx_shared) >>> target_link_libraries(cxx_shared ${LIBCXX_LIBRARIES}) >>> set_target_properties(cxx_shared >>> PROPERTIES >>> >>> >>> _______________________________________________ >>> cfe-commits mailing list >>> cfe-commits@lists.llvm.org <mailto:cfe-commits@lists.llvm.org> >>> https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.llvm.org_cgi-2Dbin_mailman_listinfo_cfe-2Dcommits&d=DwIGaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=o3kDXzdBUE3ljQXKeTWOMw&m=zwvSmk9ZIfMARYg3JvYvNuA0Iz-PEq3H2i_ICF6vsR8&s=TPt8bk99XfmUCdi7MBxyguYV6hJg3PsXFCTXyDfGms8&e= >>> >>> <https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.llvm.org_cgi-2Dbin_mailman_listinfo_cfe-2Dcommits&d=DwIGaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=o3kDXzdBUE3ljQXKeTWOMw&m=zwvSmk9ZIfMARYg3JvYvNuA0Iz-PEq3H2i_ICF6vsR8&s=TPt8bk99XfmUCdi7MBxyguYV6hJg3PsXFCTXyDfGms8&e=> >>> >> >> > >
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits