Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
build: Allow simple fixed library names.
This is the current state of OpenBLAS library naming for the pkgsrc packages (NetBSD and cross-platform). The idea is to be able to 1) be able to have a stable library name to expect from the build 2) install multiple variants next to each other (single-threaded, parallel) For this, the new switch FIXED_LIBNAME is introduced. The build uses make FIXED_LIBNAME=1 LIBNAMESUFFIX=openmp In the case of 64 bit indices, it uses make FIXED_LIBNAME=1 LIBNAMESUFFIX=openmp INTERFACE64=1 LIBSOBASENAME=openblas64 This results in what I assumed to be the intention of the name variables to begin with, namely primary predictable library names like libopenblas_openmp.so libopenblas64_openmp.so (As pkgsrc keeps a list of expected file names resulting from a build on the user machine, too funky names with CPU model in there and symlinks are too funky.) I see that the naming scheme of the 64 bit indices lib is still under discussion, along with symbol suffix. So far, we use the names without renamed symbols. They are all installable at the same time and user software can choose which one to use, also using the pkg-config file (which could be handled more elegantly). Without an established convention, I didn't think like we should make the call. Depends on what downstream packages use at some point. I don't say that I do not cause more mess than necessary, or that I fully understand the already pesent mess. Just throwing this suggestion out there. Maybe my the FIXED_LIBNAME switch or something along that can be included. Or we work out something better that fulfills the demands of a pkgsrc installation. See the github mirror of pgksrc for the patches in use. https://github.com/NetBSD/pkgsrc/tree/trunk/math/openblas https://github.com/NetBSD/pkgsrc/tree/trunk/math/openblas64 https://github.com/NetBSD/pkgsrc/tree/trunk/math/openblas_openmp https://github.com/NetBSD/pkgsrc/tree/trunk/math/openblas64_openmp https://github.com/NetBSD/pkgsrc/tree/trunk/math/openblas_pthread https://github.com/NetBSD/pkgsrc/tree/trunk/math/openblas64_pthread Also, I hope I didn't break any other configuration. And, lastly, one idea: If we settle on OpenMP always and the ILP64 symbols with suffix, we could just get away with building _one_ libopenmp.so (with libtool versioning, perhaps, libopenblas.so.0.4.33 and symlinks …). That would also be great and lots of Makefile machinery could go. Until then, please consider my hack on top;-)
- Loading branch information