diff --git a/.gitignore b/.gitignore index a57919e50..de56af2a1 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,7 @@ # since its only contents are .a files. *.a *.so +*.so.* # test executables *.x *.pexe diff --git a/CREDITS b/CREDITS index 8411d376c..ef9b8d62c 100644 --- a/CREDITS +++ b/CREDITS @@ -10,6 +10,7 @@ The BLIS framework was primarily authored by but many others have contributed code and feedback, including Murtaza Ali (Texas Instruments) + Sajid Ali @s-sajid-ali (Northwestern University) Erling Andersen @erling-d-andersen Alex Arslan @ararslan Vernon Austel (IBM, T.J. Watson Research Center) @@ -41,7 +42,7 @@ but many others have contributed code and feedback, including Dave Love @loveshack Tze Meng Low (The University of Texas at Austin) Nisanth Padinharepatt (AMD) - Devangi Parikh (The University of Texas at Austin) + Devangi Parikh @dnparikh (The University of Texas at Austin) Elmar Peise @elmar-peise (RWTH-Aachen) Clément Pernet @ClementPernet Ilya Polkovnichenko diff --git a/Makefile b/Makefile index 9750f9c15..1f1214875 100644 --- a/Makefile +++ b/Makefile @@ -130,7 +130,8 @@ MK_LIBS_INST += $(LIBBLIS_A_INST) MK_LIBS_SYML += endif ifeq ($(MK_ENABLE_SHARED),yes) -MK_LIBS += $(LIBBLIS_SO_PATH) +MK_LIBS += $(LIBBLIS_SO_PATH) \ + $(LIBBLIS_SO_MAJ_PATH) MK_LIBS_INST += $(LIBBLIS_SO_MMB_INST) MK_LIBS_SYML += $(LIBBLIS_SO_INST) \ $(LIBBLIS_SO_MAJ_INST) @@ -584,7 +585,7 @@ endif endif -# --- Dynamic library linker rules --- +# --- Shared library linker rules --- $(LIBBLIS_SO_PATH): $(MK_BLIS_OBJS) ifeq ($(ENABLE_VERBOSE),yes) @@ -607,6 +608,20 @@ else endif endif +# Local symlink for shared library. +# NOTE: We use a '.loc' suffix to avoid filename collisions in case this +# rule is executed concurrently with the install-lib-symlinks rule, which +# also creates symlinks in the current directory (before installing them). +$(LIBBLIS_SO_MAJ_PATH): $(LIBBLIS_SO_PATH) +ifeq ($(ENABLE_VERBOSE),yes) + $(SYMLINK) $( #include #include +#include // Determine if we are on a 64-bit or 32-bit architecture. #if defined(_M_X64) || defined(__x86_64) || defined(__aarch64__) || \