mgorny (Michał Górny)
User

Projects

User does not belong to any projects.

User Details

User Since
Aug 15 2016, 6:00 AM (100 w, 6 d)

Recent Activity

Tue, Jul 17

mgorny accepted D49193: [CMake] Export the LLVM_LINK_LLVM_DYLIB setting.

I don't think this could break anything. I presume you've tested it though.

Tue, Jul 17, 10:24 AM

Mon, Jul 9

mgorny added a comment to D47817: [sanitizer_common] Fix using libtirpc on Linux.

This would be the first user of pkg-config here. I am not sure if this would be the best fix. Usually you cannot (easily) recompile libc and override it, but for external libs such as libtirpc this should be more doable (I think).

I don't think libtirpc's include path is expected to be predictable by design. I think it's something distro maintainers have to choose to avoid collision with headers that (used to be) installed by glibc. In any case, I can't think of a better solution than pkg-config here (libtirpc doesn't come with CMake modules).

On Arch (libtirpc-1.0.3-2), Debian (libtirpc-dev 0.2.5-1.2 in sid), Gentoo (libtirpc-1.0.3), the include files happen to be installed in /usr/include/libtirpc, so it seems pretty consistent. So you could consider writing a cmake/Modules/FindLibtirpc.cmake module that looks like:

# sets Libtirpc_FOUND Libtirpc_INCLUDE_DIRS

find_path(Libtirpc_INCLUDE_DIR
  NAMES rpc/xdr.h
  PATH_SUFFIXES tirpc
)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Libtirpc REQUIRED_VARS Libtirpc_INCLUDE_DIR)
if(Libtirpc_FOUND)
  set(Libtirpc_INCLUDE_DIRS ${Libtirpc_INCLUDE_DIR})
endif()

then you can use find_package(Libtirpc) without depending on pkg-config.

Mon, Jul 9, 8:22 AM · Restricted Project
mgorny added a comment to D47817: [sanitizer_common] Fix using libtirpc on Linux.

Hi, thank you for the patch. First a disclaimer, I am not familiar with this RPC API at all.

Mon, Jul 9, 5:58 AM · Restricted Project

Fri, Jun 29

mgorny added a comment to D47810: [nios2] Add missing Nios2CodeGen -> Nios2AsmPrinter linkage.

Ping.

Fri, Jun 29, 12:53 PM

Tue, Jun 26

mgorny added reviewers for D47819: [test] Support using libtirpc on Linux: dvyukov, eugenis.

Ping. This is necessary to resolve https://github.com/google/sanitizers/issues/974 and fix tests on systems which don't enable all the backwards compatibility cruft (Arch, Gentoo). See also D47817 as necessary dependency.

Tue, Jun 26, 11:28 PM · Restricted Project

Jun 15 2018

mgorny added a reviewer for D47810: [nios2] Add missing Nios2CodeGen -> Nios2AsmPrinter linkage: chapuni.

Gentle ping.

Jun 15 2018, 2:40 PM
mgorny added a comment to D47819: [test] Support using libtirpc on Linux.

Gentle ping.

Jun 15 2018, 2:38 PM · Restricted Project
mgorny added a comment to D47817: [sanitizer_common] Fix using libtirpc on Linux.

Gentle ping.

Jun 15 2018, 2:38 PM · Restricted Project
mgorny resigned from D47196: [Time-report ](2): Recursive timers in Clang.
Jun 15 2018, 2:36 PM

Jun 6 2018

mgorny added a dependency for D47819: [test] Support using libtirpc on Linux: D47817: [sanitizer_common] Fix using libtirpc on Linux.
Jun 6 2018, 3:55 AM · Restricted Project
mgorny added a dependent revision for D47817: [sanitizer_common] Fix using libtirpc on Linux: D47819: [test] Support using libtirpc on Linux.
Jun 6 2018, 3:55 AM · Restricted Project
mgorny created D47819: [test] Support using libtirpc on Linux.
Jun 6 2018, 3:55 AM · Restricted Project
mgorny created D47817: [sanitizer_common] Fix using libtirpc on Linux.
Jun 6 2018, 3:36 AM · Restricted Project
mgorny added a reviewer for D47817: [sanitizer_common] Fix using libtirpc on Linux: samsonov.
Jun 6 2018, 3:36 AM · Restricted Project
mgorny committed rL334080: [lit] Do not run Python tests w/ LLDB_DISABLE_PYTHON.
[lit] Do not run Python tests w/ LLDB_DISABLE_PYTHON
Jun 6 2018, 2:49 AM
mgorny closed D47812: [lldb] [lit] Do not run Python tests w/ LLDB_DISABLE_PYTHON.
Jun 6 2018, 2:49 AM
mgorny created D47812: [lldb] [lit] Do not run Python tests w/ LLDB_DISABLE_PYTHON.
Jun 6 2018, 1:47 AM

Jun 5 2018

mgorny created D47810: [nios2] Add missing Nios2CodeGen -> Nios2AsmPrinter linkage.
Jun 5 2018, 11:57 PM
mgorny added a comment to D43701: [cmake] Store LLVM_VERSION_SUFFIX in LLVMConfig.cmake.

Erm, louder ping?

Jun 5 2018, 11:54 PM
mgorny added a comment to D39939: [cmake] Append LLVM_VERSION_SUFFIX to SOVERSION.

Erm, louder ping?

Jun 5 2018, 11:54 PM
mgorny accepted D44420: [cmake] fix a typo in llvm_config macro.

Good catch! LGTM.

Jun 5 2018, 11:53 PM

May 9 2018

mgorny added a comment to D46521: [llvm] cmake: resolve symlinks in LLVMConfig.cmake.

To add a real use case broken by this: Gentoo prior to 17.1 (which includes most of existing installs) used /usr/lib -> lib64 symlink. The canonical LLVM install path for Gentoo is:

May 9 2018, 1:32 AM

May 8 2018

mgorny added a comment to D46521: [llvm] cmake: resolve symlinks in LLVMConfig.cmake.

…at the cost of breaking CMake, and having to hack LLVM and CMake to make it work again. And I'm pretty sure sooner or later this realpath use will break somebody's use case. Think of a simple example of someone using a temporary symlink in path to relocate LLVM install. By using realpath, you're effectively replacing the canonical location with possibly temporary current location that may no longer be valid afterwards.

May 8 2018, 9:08 AM
mgorny added a comment to D46521: [llvm] cmake: resolve symlinks in LLVMConfig.cmake.

Works just fine. Note that find_package documentation actually mentions scanning locations relative to PATH.

May 8 2018, 8:35 AM
mgorny added a comment to D46521: [llvm] cmake: resolve symlinks in LLVMConfig.cmake.

Gentoo also supports installing multiple versions (in /usr/lib/llvm/X), and I have never seen any problems close to what you're describing. We're just putting the appropriate bin/ directories in PATH, and CMake finds its files just fine (relatively to PATH). So why do you need a lot of symlink magic to achieve the same effect?

May 8 2018, 7:37 AM
mgorny added a comment to D46521: [llvm] cmake: resolve symlinks in LLVMConfig.cmake.

I don't think I agree with this change. Unless I'm missing something, Debian is using a install layout that is broken by design, and you're now attempting to workaround that by adding symlinks and realpath hacks that are supposed to make the broken design somewhat incidentally work, if only someone doesn't miss one of the fragile connections and accidentally break it.

May 8 2018, 5:10 AM

May 6 2018

mgorny added a comment to D46503: [cmake] work around a race in Sphinx..

For the record, this has been fixed upstream: https://github.com/sphinx-doc/sphinx/pull/4282. However, I don't know which release version (if any) has the fix.

May 6 2018, 10:51 AM

Apr 24 2018

mgorny added a comment to D42274: [Support] Remove the terminfo dependency and rely on TERM.

But of course nbjoerg will complain because it will break all the people who run clang outputting to Tektronix 4012 graphics terminals which can't parse vt100/ansi escape sequence syntax. And I don't have the will to argue the point.

Apr 24 2018, 9:12 AM

Apr 9 2018

mgorny committed rCTE329594: [cmake] Include LLVMTestingSupport when doing stand-alone build.
[cmake] Include LLVMTestingSupport when doing stand-alone build
Apr 9 2018, 10:13 AM
mgorny committed rL329594: [cmake] Include LLVMTestingSupport when doing stand-alone build.
[cmake] Include LLVMTestingSupport when doing stand-alone build
Apr 9 2018, 10:13 AM
mgorny closed D45409: [cmake] Include LLVMTestingSupport when doing stand-alone build.
Apr 9 2018, 10:13 AM
mgorny closed D45409: [cmake] Include LLVMTestingSupport when doing stand-alone build.
Apr 9 2018, 10:13 AM
mgorny added a comment to D45409: [cmake] Include LLVMTestingSupport when doing stand-alone build.

I've based this change on an earlier fix to lldb when that project started using LLVMTestingSupport.

Apr 9 2018, 2:43 AM

Apr 8 2018

mgorny added a comment to D45406: Document -std= values for different languages.

I think you'd want a definition list instead then. But I haven't tested if they can be nested inside option lists.

Apr 8 2018, 3:29 AM

Apr 7 2018

mgorny committed rL329522: [LLVMTestingSupport] Add explicit linkage to LLVMSupport.
[LLVMTestingSupport] Add explicit linkage to LLVMSupport
Apr 7 2018, 11:53 PM
This revision was not accepted when it landed; it landed in state Needs Review.
Apr 7 2018, 11:53 PM
mgorny updated subscribers of D45408: [LLVMTestingSupport] Add explicit linkage to LLVMSupport.

W dniu nie, 08.04.2018 o godzinie 00∶13 +0000, użytkownik Zachary Turner
napisał:

Lgtm

Apr 7 2018, 11:53 PM
mgorny added a comment to D45406: Document -std= values for different languages.

Well, my idea was to list the standards one per line (like on GCC manpage), and then the '(deprecated)' comments would probably stand out enough to apply to a single line. Also, FWICS the gcc manpage simply lists which aliases are deprecated in the description text. But skipping them entirely also works for me.

Apr 7 2018, 11:49 PM
mgorny added a dependent revision for D45408: [LLVMTestingSupport] Add explicit linkage to LLVMSupport: D45409: [cmake] Include LLVMTestingSupport when doing stand-alone build.
Apr 7 2018, 1:46 PM
mgorny added a dependency for D45409: [cmake] Include LLVMTestingSupport when doing stand-alone build: D45408: [LLVMTestingSupport] Add explicit linkage to LLVMSupport.
Apr 7 2018, 1:46 PM
mgorny created D45409: [cmake] Include LLVMTestingSupport when doing stand-alone build.
Apr 7 2018, 1:46 PM
mgorny created D45408: [LLVMTestingSupport] Add explicit linkage to LLVMSupport.
Apr 7 2018, 1:41 PM
mgorny added a comment to D45406: Document -std= values for different languages.

To be honest, I find those '(deprecated)' confusing — the user may mistakenly assume that it's about all values rather than the alias.

Apr 7 2018, 12:29 PM
mgorny accepted D45233: [Driver] Update GCC libraries detection logic for Gentoo..

Works fine, thanks a lot! Note that I haven't tested crossdev or anything special, just regular multilib.

Apr 7 2018, 12:26 PM
mgorny added a comment to D45233: [Driver] Update GCC libraries detection logic for Gentoo..

I'm sorry, I see the problem now — the diff generated by Phabricator does not include the empty files x_x (seriously, this thing keeps surprising me in how broken it could be). I'm going to try again with correct file set tonight or tomorrow. If you could send the complete patch (preferably -p1 if you have one) to mgorny AT gentoo.org, that would also be helpful.

Apr 7 2018, 4:03 AM

Apr 6 2018

mgorny added a comment to D45233: [Driver] Update GCC libraries detection logic for Gentoo..

Well, it's better:

Apr 6 2018, 2:44 AM
mgorny added a comment to D45233: [Driver] Update GCC libraries detection logic for Gentoo..

To be honest, I don't really know. But since we're not installing it straight to /usr, I suppose that's not a problem we need to solve right now.

Apr 6 2018, 12:02 AM

Apr 5 2018

mgorny added a comment to D45233: [Driver] Update GCC libraries detection logic for Gentoo..

Ok, that's a problem. I think we really ought to consider all possibilites of sysroot first, and either do not fall back to main system at all or do that only if sysroot doesn't have any install at all. Basically, it is important that we don't break non-Gentoo sysroots, even when running on top of Gentoo.

Apr 5 2018, 2:23 PM
mgorny added a comment to D45233: [Driver] Update GCC libraries detection logic for Gentoo..

Ok, I've tried it on top of clang-6.0.0 and I get the following test failures:

Apr 5 2018, 12:49 PM

Apr 4 2018

mgorny added a comment to D45233: [Driver] Update GCC libraries detection logic for Gentoo..

If that's not a problem, then the more tests, the merrier ;-). Preferably something specific to crossdev would be helpful, given this is a new use case, and/or something that would actually have directory mismatches with CURRENT entry name (i.e. that wouldn't have worked before).

Apr 4 2018, 10:51 PM
mgorny added a comment to D45233: [Driver] Update GCC libraries detection logic for Gentoo..

Thanks. Besides that one tiny nit, looks good at a first glance. I'll test it tomorrow or the next day (but only for the most basic use, sorry).

Apr 4 2018, 1:13 PM
mgorny requested changes to D45233: [Driver] Update GCC libraries detection logic for Gentoo..
Apr 4 2018, 12:09 AM

Mar 29 2018

mgorny abandoned D44645: [test] Fix Cross-DSO CFI Android sanitizer test for -rtlib=compiler-rt.
Mar 29 2018, 12:20 AM

Mar 20 2018

mgorny added a comment to D44645: [test] Fix Cross-DSO CFI Android sanitizer test for -rtlib=compiler-rt.

@eugenis, updated.

Mar 20 2018, 8:55 AM
mgorny updated the diff for D44645: [test] Fix Cross-DSO CFI Android sanitizer test for -rtlib=compiler-rt.
Mar 20 2018, 8:55 AM

Mar 19 2018

mgorny created D44645: [test] Fix Cross-DSO CFI Android sanitizer test for -rtlib=compiler-rt.
Mar 19 2018, 1:03 PM
mgorny added inline comments to D44645: [test] Fix Cross-DSO CFI Android sanitizer test for -rtlib=compiler-rt.
Mar 19 2018, 1:03 PM

Mar 15 2018

mgorny abandoned D26175: [Driver] Fall back to plain '-plugin LLVMgold.so' if no lib at std path.
Mar 15 2018, 10:27 AM

Mar 12 2018

mgorny accepted D44391: Export LLVM_DYLIB_COMPONENTS in LLVMConfig.cmake.

Aye, sorry, I confused it with generated config ;-). It looks sane to me.

Mar 12 2018, 10:07 AM
mgorny added a comment to D44391: Export LLVM_DYLIB_COMPONENTS in LLVMConfig.cmake.

I don't see why not but I'm not sure if it has any value by itself. FWICS, LLVM_DYLIB_COMPONENTS is not used anywhere in cmake/*.

Mar 12 2018, 9:51 AM
mgorny added inline comments to D44379: [cmake] Fix standalone+LLVM_LINK_LLVM_DYLIB builds (pr36687).
Mar 12 2018, 8:18 AM
mgorny added a comment to D44379: [cmake] Fix standalone+LLVM_LINK_LLVM_DYLIB builds (pr36687).

Yes, full standalone.

Mar 12 2018, 8:03 AM
mgorny added a comment to D44379: [cmake] Fix standalone+LLVM_LINK_LLVM_DYLIB builds (pr36687).

I can't test this right now but please make sure not to break linking to split shared libraries without dylib.

Mar 12 2018, 7:04 AM

Mar 8 2018

mgorny committed rL327007: [cmake] Append -Wl,-rpath-link conditionally to GNULD.
[cmake] Append -Wl,-rpath-link conditionally to GNULD
Mar 8 2018, 7:12 AM
mgorny closed D43751: [cmake] Append -Wl,-rpath-link conditionally to GNULD.
Mar 8 2018, 7:12 AM
mgorny added a comment to D43751: [cmake] Append -Wl,-rpath-link conditionally to GNULD.

Thanks for the review. As for the -Wl,-z,origin part, I'd rather leave that alone unless we have a clear indication that either it is not necessary for any of the supported FreeBSD and DragonFly BSD versions, or that it can be passed unconditionally without breaking any of the supported systems (and which linkers accept it).

Mar 8 2018, 7:11 AM

Mar 6 2018

mgorny committed rC326836: [FrontEnd] Allow overriding the default C/C++ -std via CMake vars.
[FrontEnd] Allow overriding the default C/C++ -std via CMake vars
Mar 6 2018, 1:28 PM
mgorny committed rL326836: [FrontEnd] Allow overriding the default C/C++ -std via CMake vars.
[FrontEnd] Allow overriding the default C/C++ -std via CMake vars
Mar 6 2018, 1:28 PM
mgorny closed D34365: [FrontEnd] Allow overriding the default C/C++ -std via CMake vars.
Mar 6 2018, 1:28 PM
mgorny updated the diff for D34365: [FrontEnd] Allow overriding the default C/C++ -std via CMake vars.

@rnk, could you confirm the rebased patch? I'm not sure if I should override InputKind::RenderScript as well.

Mar 6 2018, 10:38 AM

Mar 5 2018

mgorny added reviewers for D43751: [cmake] Append -Wl,-rpath-link conditionally to GNULD: ruiu, chapuni.
Mar 5 2018, 8:07 AM

Mar 2 2018

mgorny added a comment to D43751: [cmake] Append -Wl,-rpath-link conditionally to GNULD.

Ping. I'd like to have this reviewed before I roll 6.0.0 final for Gentoo.

Mar 2 2018, 1:46 AM
mgorny added a comment to D43701: [cmake] Store LLVM_VERSION_SUFFIX in LLVMConfig.cmake.

Ping.

Mar 2 2018, 1:45 AM
mgorny added a comment to D39939: [cmake] Append LLVM_VERSION_SUFFIX to SOVERSION.

Ping.

Mar 2 2018, 1:45 AM

Feb 26 2018

mgorny created D43751: [cmake] Append -Wl,-rpath-link conditionally to GNULD.
Feb 26 2018, 12:15 AM

Feb 24 2018

mgorny updated the diff for D39939: [cmake] Append LLVM_VERSION_SUFFIX to SOVERSION.

@beanz, updated as requested.

Feb 24 2018, 2:01 AM

Feb 23 2018

mgorny created D43701: [cmake] Store LLVM_VERSION_SUFFIX in LLVMConfig.cmake.
Feb 23 2018, 4:01 PM

Feb 19 2018

mgorny added a comment to D34365: [FrontEnd] Allow overriding the default C/C++ -std via CMake vars.

Ping for the third time.

Feb 19 2018, 4:55 AM

Jan 29 2018

mgorny committed rL323673: [Host] Respect LLVM_LIBDIR_SUFFIX when looking for LLDB plugins on Linux.
[Host] Respect LLVM_LIBDIR_SUFFIX when looking for LLDB plugins on Linux
Jan 29 2018, 10:26 AM
mgorny closed D42317: [Host] Respect LLVM_LIBDIR_SUFFIX when looking for LLDB plugins on Linux.
Jan 29 2018, 10:26 AM
mgorny added inline comments to D42317: [Host] Respect LLVM_LIBDIR_SUFFIX when looking for LLDB plugins on Linux.
Jan 29 2018, 8:56 AM

Jan 20 2018

mgorny created D42331: [cmake] Remove LLVM_HAVE_OPT_VIEWER_MODULES from LLVMConfig.
Jan 20 2018, 1:59 AM

Jan 19 2018

mgorny added a comment to D42317: [Host] Respect LLVM_LIBDIR_SUFFIX when looking for LLDB plugins on Linux.

Disclaimer: I have never seen a plugin for LLDB. I've just noticed the wrong path in strace output and fixed it ;-).

Jan 19 2018, 2:35 PM
mgorny created D42317: [Host] Respect LLVM_LIBDIR_SUFFIX when looking for LLDB plugins on Linux.
Jan 19 2018, 2:34 PM
mgorny committed rL322973: [cmake] Include LLVM_LIBXML2_ENABLED in LLVMConfig.cmake, PR36006.
[cmake] Include LLVM_LIBXML2_ENABLED in LLVMConfig.cmake, PR36006
Jan 19 2018, 9:49 AM
mgorny closed D42252: [cmake] Include LLVM_LIBXML2_ENABLED in LLVMConfig.cmake, PR36006.
Jan 19 2018, 9:49 AM

Jan 18 2018

mgorny created D42252: [cmake] Include LLVM_LIBXML2_ENABLED in LLVMConfig.cmake, PR36006.
Jan 18 2018, 11:09 AM

Jan 9 2018

mgorny added a comment to D41725: [lldb] [test] Fix tests to use more portable LLVM_ENABLE_ZLIB.

I was talking of:

source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp

Ah, right. These uses were introduced before we developed a preference for llvm primitives. That said, I see a lot of compression stuff there, but I don't see mention of zlib directly.

Jan 9 2018, 6:51 AM
mgorny committed rL322081: [test] Fix tests to use more portable LLVM_ENABLE_ZLIB.
[test] Fix tests to use more portable LLVM_ENABLE_ZLIB
Jan 9 2018, 6:45 AM
This revision was not accepted when it landed; it landed in state Needs Review.
Jan 9 2018, 6:45 AM

Jan 7 2018

mgorny updated the diff for D41725: [lldb] [test] Fix tests to use more portable LLVM_ENABLE_ZLIB.

Updated the patch to use LLVM_ENABLE_ZLIB directly.

Jan 7 2018, 11:58 AM
mgorny added a comment to D41725: [lldb] [test] Fix tests to use more portable LLVM_ENABLE_ZLIB.

I was talking of:

Jan 7 2018, 2:11 AM

Jan 6 2018

mgorny committed rL321932: [test] Use full PATH lookup for tools.
[test] Use full PATH lookup for tools
Jan 6 2018, 2:21 AM
mgorny closed D41726: [test] Use full PATH lookup for tools.
Jan 6 2018, 2:21 AM
mgorny added a comment to D41725: [lldb] [test] Fix tests to use more portable LLVM_ENABLE_ZLIB.

Well, it's actually more complex. In Gentoo we want to let the user choose whether he wants to build against zlib or without zlib support. So in the end there are two uses to be considered:

Jan 6 2018, 2:15 AM
mgorny added a comment to D41725: [lldb] [test] Fix tests to use more portable LLVM_ENABLE_ZLIB.

Maybe we could. I presumed people are using the separate variables for some reason. We'd have to check that it's properly sanitized when building in-tree and given to cmake though.

Jan 6 2018, 1:28 AM

Jan 4 2018

mgorny created D41726: [test] Use full PATH lookup for tools.
Jan 4 2018, 5:58 AM
mgorny created D41725: [lldb] [test] Fix tests to use more portable LLVM_ENABLE_ZLIB.
Jan 4 2018, 5:54 AM

Dec 13 2017

mgorny added inline comments to D41134: [compiler-rt] [builtins] Implement __chkstk for arm64 windows.
Dec 13 2017, 10:53 AM

Dec 11 2017

mgorny added inline comments to D37326: Fix the OCaml external linking problem.
Dec 11 2017, 12:09 PM