Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:ashigabou
refblas3
refblas3-make.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File refblas3-make.patch of Package refblas3
diff -ruN BLAS.orig/Makefile BLAS/Makefile --- BLAS.orig/Makefile 2007-04-04 16:11:12.000000000 +0900 +++ BLAS/Makefile 2007-04-04 17:12:34.000000000 +0900 @@ -1,171 +1,45 @@ -include make.inc +#OBJS = $(shell ls *.f | sed s/\.f/\.o/) +SRCS := $(wildcard *.f) +OBJS := $(patsubst %.f,%.o,$(SRCS)) +STOBJS := $(patsubst %.f,static/%.o,$(SRCS)) +SSOBJS := $(patsubst %.f,shared/%.o,$(SRCS)) -####################################################################### -# This is the makefile to create a library for the BLAS. -# The files are grouped as follows: -# -# SBLAS1 -- Single precision real BLAS routines -# CBLAS1 -- Single precision complex BLAS routines -# DBLAS1 -- Double precision real BLAS routines -# ZBLAS1 -- Double precision complex BLAS routines -# -# CB1AUX -- Real BLAS routines called by complex routines -# ZB1AUX -- D.P. real BLAS routines called by d.p. complex -# routines -# -# ALLBLAS -- Auxiliary routines for Level 2 and 3 BLAS -# -# SBLAS2 -- Single precision real BLAS2 routines -# CBLAS2 -- Single precision complex BLAS2 routines -# DBLAS2 -- Double precision real BLAS2 routines -# ZBLAS2 -- Double precision complex BLAS2 routines -# -# SBLAS3 -- Single precision real BLAS3 routines -# CBLAS3 -- Single precision complex BLAS3 routines -# DBLAS3 -- Double precision real BLAS3 routines -# ZBLAS3 -- Double precision complex BLAS3 routines -# -# The library can be set up to include routines for any combination -# of the four precisions. To create or add to the library, enter make -# followed by one or more of the precisions desired. Some examples: -# make single -# make single complex -# make single double complex complex16 -# Note that these commands are not safe for parallel builds. -# -# Alternatively, the commands -# make all -# or -# make -# without any arguments creates a library of all four precisions. -# The name of the library is held in BLASLIB, which is set in the -# make.inc -# -# To remove the object files after the library is created, enter -# make clean -# To force the source files to be recompiled, enter, for example, -# make single FRC=FRC -# -#--------------------------------------------------------------------- -# -# Edward Anderson, University of Tennessee -# March 26, 1990 -# Susan Ostrouchov, September 30, 1994 -# Julie Langou, March 2007 -# -####################################################################### - -all: $(BLASLIB) - -#--------------------------------------------------------- -# Comment out the next 6 definitions if you already have -# the Level 1 BLAS. -#--------------------------------------------------------- -SBLAS1 = isamax.o sasum.o saxpy.o scopy.o sdot.o snrm2.o \ - srot.o srotg.o sscal.o sswap.o sdsdot.o srotmg.o srotm.o -$(SBLAS1): $(FRC) - -CBLAS1 = scabs1.o scasum.o scnrm2.o icamax.o caxpy.o ccopy.o \ - cdotc.o cdotu.o csscal.o crotg.o cscal.o cswap.o csrot.o -$(CBLAS1): $(FRC) - -DBLAS1 = idamax.o dasum.o daxpy.o dcopy.o ddot.o dnrm2.o \ - drot.o drotg.o dscal.o dswap.o drotmg.o drotm.o -$(DBLAS1): $(FRC) - -ZBLAS1 = dcabs1.o dzasum.o dznrm2.o izamax.o zaxpy.o zcopy.o \ - zdotc.o zdotu.o zdscal.o zrotg.o zscal.o zswap.o zdrot.o -$(ZBLAS1): $(FRC) - -CB1AUX = isamax.o sasum.o saxpy.o scopy.o snrm2.o sscal.o -$(CB1AUX): $(FRC) - -ZB1AUX = idamax.o dasum.o daxpy.o dcopy.o dnrm2.o dscal.o -$(ZB1AUX): $(FRC) - -#--------------------------------------------------------------------- -# The following line defines auxiliary routines needed by both the -# Level 2 and Level 3 BLAS. Comment it out only if you already have -# both the Level 2 and 3 BLAS. -#--------------------------------------------------------------------- -ALLBLAS = lsame.o xerbla.o -$(ALLBLAS) : $(FRC) - -#--------------------------------------------------------- -# Comment out the next 4 definitions if you already have -# the Level 2 BLAS. -#--------------------------------------------------------- -SBLAS2 = sgemv.o sgbmv.o ssymv.o ssbmv.o sspmv.o \ - strmv.o stbmv.o stpmv.o strsv.o stbsv.o stpsv.o \ - sger.o ssyr.o sspr.o ssyr2.o sspr2.o -$(SBLAS2): $(FRC) - -CBLAS2 = cgemv.o cgbmv.o chemv.o chbmv.o chpmv.o \ - ctrmv.o ctbmv.o ctpmv.o ctrsv.o ctbsv.o ctpsv.o \ - cgerc.o cgeru.o cher.o chpr.o cher2.o chpr2.o -$(CBLAS2): $(FRC) - -DBLAS2 = dgemv.o dgbmv.o dsymv.o dsbmv.o dspmv.o \ - dtrmv.o dtbmv.o dtpmv.o dtrsv.o dtbsv.o dtpsv.o \ - dger.o dsyr.o dspr.o dsyr2.o dspr2.o -$(DBLAS2): $(FRC) - -ZBLAS2 = zgemv.o zgbmv.o zhemv.o zhbmv.o zhpmv.o \ - ztrmv.o ztbmv.o ztpmv.o ztrsv.o ztbsv.o ztpsv.o \ - zgerc.o zgeru.o zher.o zhpr.o zher2.o zhpr2.o -$(ZBLAS2): $(FRC) - -#--------------------------------------------------------- -# Comment out the next 4 definitions if you already have -# the Level 3 BLAS. -#--------------------------------------------------------- -SBLAS3 = sgemm.o ssymm.o ssyrk.o ssyr2k.o strmm.o strsm.o -$(SBLAS3): $(FRC) - -CBLAS3 = cgemm.o csymm.o csyrk.o csyr2k.o ctrmm.o ctrsm.o \ - chemm.o cherk.o cher2k.o -$(CBLAS3): $(FRC) - -DBLAS3 = dgemm.o dsymm.o dsyrk.o dsyr2k.o dtrmm.o dtrsm.o -$(DBLAS3): $(FRC) - -ZBLAS3 = zgemm.o zsymm.o zsyrk.o zsyr2k.o ztrmm.o ztrsm.o \ - zhemm.o zherk.o zher2k.o -$(ZBLAS3): $(FRC) - -ALLOBJ=$(SBLAS1) $(SBLAS2) $(SBLAS3) $(DBLAS1) $(DBLAS2) $(DBLAS3) \ - $(CBLAS1) $(CB1AUX) $(CBLAS2) $(CBLAS3) $(ZBLAS1) $(ZB1AUX) \ - $(ZBLAS2) $(ZBLAS3) $(ALLBLAS) +RANLIB ?= ranlib -$(BLASLIB): $(ALLOBJ) - $(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ) +LIBSTNAME ?= libblas.a +LIBSSNAME ?= libblas.so.3.0 +SONAME ?= libblas.so.3 + +FORTRAN ?= gfortran + +# hardcoded values for build targets +stlib: $(LIBSTNAME) + +sslib: $(LIBSSNAME) + +# Build libraries from object files +$(LIBSTNAME): $(STOBJS) + $(AR) -r $@ $(STOBJS) $(RANLIB) $@ -single: $(SBLAS1) $(ALLBLAS) $(SBLAS2) $(SBLAS3) - $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(SBLAS1) $(ALLBLAS) \ - $(SBLAS2) $(SBLAS3) - $(RANLIB) $(BLASLIB) - -double: $(DBLAS1) $(ALLBLAS) $(DBLAS2) $(DBLAS3) - $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(DBLAS1) $(ALLBLAS) \ - $(DBLAS2) $(DBLAS3) - $(RANLIB) $(BLASLIB) - -complex: $(CBLAS1) $(CB1AUX) $(ALLBLAS) $(CBLAS2) $(CBLAS3) - $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(CBLAS1) $(CB1AUX) \ - $(ALLBLAS) $(CBLAS2) $(CBLAS3) - $(RANLIB) $(BLASLIB) - -complex16: $(ZBLAS1) $(ZB1AUX) $(ALLBLAS) $(ZBLAS2) $(ZBLAS3) - $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(ZBLAS1) $(ZB1AUX) \ - $(ALLBLAS) $(ZBLAS2) $(ZBLAS3) - $(RANLIB) $(BLASLIB) +$(LIBSSNAME): $(SSOBJS) + $(FORTRAN) -shared -o $@ -Wl,-soname,$(SONAME) $(SSOBJS) -FRC: - @FRC=$(FRC) +# Build object files +$(STOBJS): static/%.o: %.f static + $(FORTRAN) -c $(F77FLAGS) $< -o $@ -clean: - rm -f *.o +$(SSOBJS): shared/%.o: %.f shared + $(FORTRAN) -c -fPIC $(F77FLAGS) $< -o $@ + +static: + mkdir -p $@ -.f.o: - $(FORTRAN) $(OPTS) -c $< -o $@ +shared: + mkdir -p $@ + +clean: + rm -f $(LIBSTNAME) + rm -f $(LIBSSNAME) + rm -f static + rm -f shared diff -ruN BLAS.orig/Makefile~ BLAS/Makefile~ --- BLAS.orig/Makefile~ 1970-01-01 09:00:00.000000000 +0900 +++ BLAS/Makefile~ 2007-04-04 17:03:50.000000000 +0900 @@ -0,0 +1,47 @@ +#OBJS = $(shell ls *.f | sed s/\.f/\.o/) +SRCS := $(wildcard *.f) +OBJS := $(patsubst %.f,%.o,$(SRCS)) +STOBJS := $(patsubst %.f,static/%.o,$(SRCS)) +SSOBJS := $(patsubst %.f,shared/%.o,$(SRCS)) + +RANLIB ?= ranlib + +LIBSTNAME ?= libblas.a +LIBSSNAME ?= libblas.so.3.0 +SONAME ?= libblas.so.3 + +FORTRAN ?= gfortran + +F77FLAGS = -Wall -W -O3 -funroll-loops + +# hardcoded values for build targets +stlib: $(LIBSTNAME) + +sslib: $(LIBSSNAME) + +# Build libraries from object files +$(LIBSTNAME): $(STOBJS) + $(AR) -r $@ $(STOBJS) + $(RANLIB) $@ + +$(LIBSSNAME): $(SSOBJS) + $(FORTRAN) -shared -o $@ -Wl,-soname,$(SONAME) $(SSOBJS) + +# Build object files +$(STOBJS): static/%.o: %.f static + $(FORTRAN) -c $(F77FLAGS) $< -o $@ + +$(SSOBJS): shared/%.o: %.f shared + $(FORTRAN) -c -fPIC $(F77FLAGS) $< -o $@ + +static: + mkdir -p $@ + +shared: + mkdir -p $@ + +clean: + rm -f $(LIBSTNAME) + rm -f $(LIBSSNAME) + rm -f static + rm -f shared
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor