Darwin/LLVM support#558
Conversation
|
@theurich I'm testing now. First thought, it's...verbose: Obviously for testing it's fine. The build is slowly running now. 😄 |
|
Update. It got close: Here is what is in that directory: NOTE: This still could be on me. I didn't do a fresh clone of ESMF, just did a rebuild after switching to this branch. I can try a fresh clean build if you think that might help |
|
@mathomp4 at your convenience please provide the output you get with |
|
@theurich I think this is it: Note: I will note in my Baselibs I have: # Dynamically discover Homebrew's flang prefix, regardless of install location
# HDF4 and HDF5 configure script trips over flang's LTO flags on macOS
ifeq ($(ARCH)-$(findstring flang,$(notdir $(FC))),Darwin-flang)
# Force the Fortran library paths to bypass the broken auto-detection
FLANG_BREW_PREFIX := $(shell command -v brew >/dev/null 2>&1 && brew --prefix flang)
ifneq ($(FLANG_BREW_PREFIX),)
FLANG_LTO_LIBS = FCLIBS="-L$(FLANG_BREW_PREFIX)/lib -lflang_rt.runtime" FLIBS="-L$(FLANG_BREW_PREFIX)/lib -lflang_rt.runtime"
endif
export FLANG_LTO_LIBS
endifso I must have hit something similar with the HDF Group. Of course, as it says, this is sort of "brew flang" specific. And then in my first attempt at a Darwin.llvm I have: Which, huh, is sort of the same thing? Not sure. |
under Darwin Homebrew Flang installations.
|
@mathomp4 I pushed a change to this PR that should hopefully address the issue with the Homebrew Flang installation as I understand it at the moment. Please give it another try and let me know. Thanks. |
@theurich Sorry for the late reply. I'll test today when I can. I got caught in a Homebrew update that removed my |
|
@theurich Okay. It seems to have built. Huzzah! I did a check and got: So...less yay? I'll try and build MAPL tomorrow |
|
@mathomp4 - well, a step forward at least. Do I recall that you had cleaner test results with your Darwin.llvm configuration? Maybe I am confusing something though, I don't find the issue/comment now. As for making further progress, do you think you could set up |
@theurich Maaaaaybe? I might need you or @oehmke to remind me how to add machines to the framework. Was this the link to look at: https://github.com/esmf-org/esmf-test-scripts/tree/main/python_scripts#readme |
|
Yes, that is the correct link. Would |
@theurich I have access to three macs. Alderaan is an M1, dagobah an M2, and my personal is an M3. I suppose the M1 might be "best" in that it's the "lowest" of the three? So yes, let's go with alderaan. |
|
Okay, branch is added, use the option to clone and checkout the Thanks for doing this. I think it will make life a lot easier in the long run to have the test artifacts from your Darwin machine available for review. |
|
@theurich Well, some good news, some bad. I think I got a semi-good setup for alderaan. But it dies in the build: I pushed artifacts up for alderaan in this case. Maybe you can see something. Note: I guess your test framework must build differently than I do in Baselibs, though I also only build |
|
I just pushed a change to the Hopefully this will get us further again. |
Oh. Actually, I never pushed up my changes. I had develop for both and then did: but I guess that messed up NUOPC. So I've cleaned things up, pushed, and am trying again |
|
Ahh, that makes sense how that would have changed it for both. But now your latest changes are not what we want, we need this: |
|
Nevermind, I see your latest push now... all good. |
|
@theurich It seems a lot happier now. Hopefully "soon" it'll push up test logs and all. I'm running with So it might be a bit as it needs to finish O and then do g. But positive signs so far! |
|
Also, in re that trace flag I see in my Baselibs CHANGELOG:
so, yep. You probably taught me that long ago and I've forgotten. 😄 |
|
@theurich New update. Things got farther, which is nice, but then things fell apart: I think the issue is I don't have I've resubmitted the test command. |
|
Yes, I agree with not having the |
|
BTW, I already see the artifacts I wanted to look at. So from my side okay to not re-submit again at this time. |
Ah. I did a ctrl-c so it won't upload. Let me know when you'd like me to run again. ETA: Also I guess if you want |
|
Yep, |
Running now! Hopefully updates pushed "soon" (so a couple hours it seems) |
|
I think the BOPT=g should be pushed up! |
|
@mathomp4 haven't had much of a chance to look more deeply at the test artifacts yet. Just on the low hanging fruit, it looks like all of the ESMX tests under the NUOPC app protos are currently failing because of how Does Or where might this be coming from? One way of handling it would be to set |
|
@theurich I have a theory. My modulefile is: https://github.com/mathomp4/m1modulefiles/blob/main/Core/appleclang-flang/22.lua and on alderaan that is evaluated to: which, well, is where it is. I use the same (essentially) modulefile on my home mac and: But, I bet So I'm guessing I should add: extra_env_vars:
BREWPATH: /path/to/brew? I'll take a look when I can though, note, the next test might come from my other mac. Weirdly, I can't seem to ssh into alderaan from home. Something...firewall-y is happening? Not sure. But, well, an M1 vs an M2 isn't a big change. |
|
@theurich I'm trying a test now with the |
Nope. Didn't work. Okay. Hard code FC! |
Improve Darwin/LLVM support by recognizing Apple Clang vs LLVM Clang, handle OpenMP, OpenACC, and linking differences.