Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding support for building on OS X #28

Closed
wants to merge 5 commits into from
Closed

Conversation

poulson
Copy link

@poulson poulson commented May 24, 2015

In addition to creating a new profile, sandybridge_osx_clang, I have finished working around the missing pthread_barrier functionality and generalized the build system to support more general shared and static library suffixes (e.g., .dylib for shared libraries on OS X). Lastly, I enabled shared-library builds by default in each of the configurations.

@jeffhammond
Copy link
Member

This looks good to me but I have not tested.

@fgvanzee Would you like me test locally? I recall you may be a "serious programmer" (Linux laptop person).

@Maratyszcza
Copy link
Contributor

Is the new osx configuration only due to BLIS_ENABLE_PTHREADS vs BLIS_ENABLE_OPENMP?

@poulson
Copy link
Author

poulson commented Aug 5, 2015

@Maratyszcza I believe that was the only change I made to bli_config.h (most changes were elsewhere)

@Maratyszcza
Copy link
Contributor

@fgvanzee Maybe multithreading model should be an argument to ./configure instead of an option in configuration file? After all, it is not specific to CPU microarchitecture

@poulson
Copy link
Author

poulson commented Aug 5, 2015

@Maratyszcza Agreed; in this case, it's a matter of compiler support.

@jeffhammond
Copy link
Member

Is this still an issue? I can't cleanly merge this PR with the latest master and I wonder if it needs to be sorted out or not.

@devinamatthews
Copy link
Member

Is the only issue that it doesn't work "out of the box" with Apple's version of gcc/llvm (due do missing pthread_barrier)? If so we have a non-pthread barrier already that could be hooked up easily. The so/dyld stuff could be helpful but the linker manages to figure out what you mean with .so as far as I can tell. I don't think the sandybridge_osx_clang configuration stuff is necessary with various new configure options.

On the other hand, if we are fine not supporting Apple's gimped compilers then I think there is nothing to do at this point.

@jeffhammond
Copy link
Member

It is worth adding the workaround for missing pthread_barrier since that is not POSIX anyways.

@devinamatthews
Copy link
Member

@tlrmchlsmth I think you have the skillz to pay the billz on this one.

@tlrmchlsmth
Copy link
Member

Actually I already fixed the pthread barrier thing but I didn't know this issue was here.
The default right now is to not use pthread barriers, and if you want to use them, you have to define BLIS_USE_PTHREAD_BARRIER.

@jeffhammond
Copy link
Member

I guess it can be resolved although it's good to setup Mac builds in Travis
to validate this and other changes.

If Mac is tested in Travis already, I apologize. I'm not using a client
that makes checking that trivial.

Jeff Hammond
jeff.science@gmail.com
http://jeffhammond.github.io/

@devinamatthews
Copy link
Member

Obsoleted by #108.

Aaron-Hutchinson pushed a commit to sifive/sifive-blis that referenced this pull request Apr 4, 2023
myeh01 pushed a commit to sifive/sifive-blis that referenced this pull request Apr 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants