Merge branch 'develop' into sandybridge
[platform/upstream/openblas.git] / Makefile.install
1 TOPDIR  = .
2 export GOTOBLAS_MAKEFILE = 1
3 -include $(TOPDIR)/Makefile.conf_last
4 include ./Makefile.system
5
6 OPENBLAS_INCLUDE_DIR:=$(PREFIX)/include
7 OPENBLAS_LIBRARY_DIR:=$(PREFIX)/lib
8
9 .PHONY : install
10 .NOTPARALLEL : install
11
12 lib.grd :
13         $(error OpenBLAS: Please run "make" firstly)
14
15 install :       lib.grd
16         @-mkdir -p $(PREFIX)
17         @-mkdir -p $(OPENBLAS_INCLUDE_DIR)
18         @-mkdir -p $(OPENBLAS_LIBRARY_DIR)
19         @echo Generating openblas_config.h in $(OPENBLAS_INCLUDE_DIR)
20 #for inc 
21         @echo \#ifndef OPENBLAS_CONFIG_H > $(OPENBLAS_INCLUDE_DIR)/openblas_config.h
22         @echo \#define OPENBLAS_CONFIG_H >> $(OPENBLAS_INCLUDE_DIR)/openblas_config.h
23         @cat config_last.h >> $(OPENBLAS_INCLUDE_DIR)/openblas_config.h
24         @echo \#define VERSION \" OpenBLAS $(VERSION) \" >> $(OPENBLAS_INCLUDE_DIR)/openblas_config.h
25         @cat openblas_config_template.h >> $(OPENBLAS_INCLUDE_DIR)/openblas_config.h
26         @echo \#endif  \/\* OPENBLAS_CONFIG_H \*\/ >> $(OPENBLAS_INCLUDE_DIR)/openblas_config.h
27
28         @echo Generating f77blas.h in $(OPENBLAS_INCLUDE_DIR)
29         @echo \#ifndef OPENBLAS_F77BLAS_H > $(OPENBLAS_INCLUDE_DIR)/f77blas.h
30         @echo \#define OPENBLAS_F77BLAS_H >> $(OPENBLAS_INCLUDE_DIR)/f77blas.h
31         @echo \#include \"openblas_config.h\" >> $(OPENBLAS_INCLUDE_DIR)/f77blas.h
32         @cat common_interface.h >> $(OPENBLAS_INCLUDE_DIR)/f77blas.h
33         @echo \#endif >> $(OPENBLAS_INCLUDE_DIR)/f77blas.h
34
35         @echo Generating cblas.h in $(OPENBLAS_INCLUDE_DIR)
36         @sed 's/common/openblas_config/g' cblas.h > $(OPENBLAS_INCLUDE_DIR)/cblas.h
37
38 ifndef NO_LAPACKE
39         @echo Copying LAPACKE header files to $(OPENBLAS_LIBRARY_DIR)
40         @-cp $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke.h $(OPENBLAS_INCLUDE_DIR)/lapacke.h
41         @-cp $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_config.h $(OPENBLAS_INCLUDE_DIR)/lapacke_config.h
42         @-cp $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_mangling_with_flags.h $(OPENBLAS_INCLUDE_DIR)/lapacke_mangling.h
43         @-cp $(NETLIB_LAPACK_DIR)/lapacke/include/lapacke_utils.h $(OPENBLAS_INCLUDE_DIR)/lapacke_utils.h
44 endif
45
46 #for install static library 
47         @echo Copy the static library to $(OPENBLAS_LIBRARY_DIR)
48         @cp $(LIBNAME) $(OPENBLAS_LIBRARY_DIR)
49         @-ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).$(LIBSUFFIX)
50 #for install shared library 
51         @echo Copy the shared library to $(OPENBLAS_LIBRARY_DIR)
52 ifeq ($(OSNAME), Linux)
53         -cp $(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)
54         -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).so
55         -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).so.$(MAJOR_VERSION)
56 endif
57 ifeq ($(OSNAME), FreeBSD)
58         -cp $(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)
59         -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).so
60 endif
61 ifeq ($(OSNAME), NetBSD)
62         -cp $(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)
63         -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBSONAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).so
64 endif
65 ifeq ($(OSNAME), Darwin)     
66         -cp $(LIBDYNNAME) $(OPENBLAS_LIBRARY_DIR)
67         -install_name_tool -id $(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME)
68         -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBDYNNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).dylib
69 endif
70 ifeq ($(OSNAME), WINNT)
71         -cp $(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR)
72         -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).dll
73 endif
74 ifeq ($(OSNAME), CYGWIN_NT)
75         -cp $(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR)
76         -ln -fs $(OPENBLAS_LIBRARY_DIR)/$(LIBDLLNAME) $(OPENBLAS_LIBRARY_DIR)/$(LIBPREFIX).dll
77 endif
78
79         @echo Install OK!
80