annotate src/suitesparse.mk @ 1376:896bc60de2a9

improvements for packages: cblas lapack suitesparse
author Alois Schlögl <alois.schloegl@gmail.com>
date Tue, 16 Nov 2010 19:13:33 +0100
parents 05c3c35ab91e
children 948166ab4657
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1371
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
1 # This file is part of mingw-cross-env.
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
2 # See doc/index.html for further information.
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
3
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
4 # SuiteSparse
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
5 PKG := suitesparse
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
6 $(PKG)_IGNORE :=
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
7 $(PKG)_VERSION := 3.4.0
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
8 $(PKG)_CHECKSUM := 6de027d48a573659b40ddf57c10e32b39ab034c6
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
9 $(PKG)_SUBDIR := SuiteSparse
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
10 $(PKG)_FILE := SuiteSparse-$($(PKG)_VERSION).tar.gz
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
11 $(PKG)_WEBSITE := http://www.cise.ufl.edu/
1376
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
12 $(PKG)_URL := http://www.cise.ufl.edu/research/sparse/SuiteSparse/SuiteSparse-$($(PKG)_VERSION).tar.gz
1375
05c3c35ab91e improvements for package: suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1372
diff changeset
13 $(PKG)_DEPS := gcc metis lapack
1372
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
14
1371
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
15 define $(PKG)_UPDATE
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
16 wget -q -O- 'http://www.cise.ufl.edu/research/sparse/SuiteSparse/' | \
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
17 $(SED) -n 's,.*SuiteSparse-\([0-9]\.[0-9]\.[0-9]\)\.tar.*,\1,ip' | \
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
18 head -1
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
19 endef
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
20
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
21 define $(PKG)_BUILD
1372
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
22
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
23 # If not building metis in it's makefile, then
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
24 # build it here since the config seems to expect it
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
25 cd '$(1)' && $(call UNPACK_PKG_ARCHIVE,metis)
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
26 $(SED) -i 's,cc,$(TARGET)-gcc,' $(1)/$(metis_SUBDIR)/Makefile.in
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
27 $(SED) -i 's,ar ,$(TARGET)-ar ,' $(1)/$(metis_SUBDIR)/Makefile.in
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
28 $(SED) -i 's,ranlib,$(TARGET)-ranlib,' $(1)/$(metis_SUBDIR)/Makefile.in
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
29 $(MAKE) -C '$(1)/$(metis_SUBDIR)/Lib' -j '$(JOBS)'
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
30
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
31 # Otherwise hack the config so it can find metis
1376
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
32 #$(SED) -i 's,\(METIS_PATH = \)\(. $(INSTALL) -m664 '$(1)/. $(INSTALL) -m664 '$(1)/metis-4.0\),\1'$(PREFIX)/$(TARGET)/include/metis',' $(1)/UFconfig/UFconfig.mk
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
33 #$(SED) -i 's,\(METIS = \)\(. $(INSTALL) -m664 '$(1)/. $(INSTALL) -m664 '$(1)/metis-4.0/libmetis.a\),\1'$(PREFIX)/$(TARGET)/lib/libmetis.a',' $(1)/UFconfig/UFconfig.mk
1372
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
34
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
35 # use cross tools
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
36 $(SED) -i 's,cc,$(TARGET)-gcc,' $(1)/UFconfig/UFconfig.mk
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
37 $(SED) -i 's,g++,$(TARGET)-g++,' $(1)/UFconfig/UFconfig.mk
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
38 $(SED) -i 's,f77,$(TARGET)-gfortran,' $(1)/UFconfig/UFconfig.mk
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
39 $(SED) -i 's,ar ,$(TARGET)-ar ,' $(1)/UFconfig/UFconfig.mk
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
40 $(SED) -i 's,ranlib,$(TARGET)-ranlib,' $(1)/UFconfig/UFconfig.mk
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
41
1376
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
42 # gfortran does not need libg2c
1375
05c3c35ab91e improvements for package: suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1372
diff changeset
43 $(SED) -i 's,-lblas -lgfortran -lgfortranbegin -lg2c,-lblas -lgfortran -lgfortranbegin,' $(1)/UFconfig/UFconfig.mk
1372
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
44
1376
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
45 # Missing _drand48 and _srand48 cause problems in demos
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
46 #$(TARGET)-gcc -c $(1)/CHOLMOD/MATLAB/Windows/rand48.c -o $(1)/CHOLMOD/Lib/rand48.o
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
47 #$(SED) -i 's,libcholmod.a: $$(OBJ),libcholmod.a: $$(OBJ) rand48.o,' $(1)/CHOLMOD/Lib/Makefile
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
48 #$(SED) -i 's,$$(AR) libcholmod.a $$(OBJ),$$(AR) libcholmod.a $$(OBJ) rand48.o,' $(1)/CHOLMOD/Lib/Makefile
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
49 # Here we choose to exclude the demos from building in order to avoid the _rand48 problems
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
50 $(SED) -i 's,( cd Demo ; $$(MAKE) ),#( cd Demo ; $$(MAKE) ),' $(1)/CHOLMOD/Makefile
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
51 $(SED) -i 's,( cd Demo ; $$(MAKE) ),#( cd Demo ; $$(MAKE) ),' $(1)/SPQR/Makefile
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
52
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
53 # Built all
1375
05c3c35ab91e improvements for package: suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1372
diff changeset
54 $(MAKE) -C '$(1)' -j '$(JOBS)'
1372
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
55
1376
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
56 # Install library files
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
57 $(INSTALL) -d '$(PREFIX)/$(TARGET)/lib'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
58 for i in `cd $(1) && find . -name *.a`; do \
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
59 $(INSTALL) -m664 '$(1)/'$$i '$(PREFIX)/$(TARGET)/lib/' ; \
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
60 done;
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
61
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
62 # Install include files
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
63 $(INSTALL) -d '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
64 $(INSTALL) -m664 '$(1)/AMD/Include/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
65 $(INSTALL) -m664 '$(1)/BTF/Include/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
66 $(INSTALL) -m664 '$(1)/CAMD/Include/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
67 $(INSTALL) -m664 '$(1)/CCOLAMD/Include/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
68 $(INSTALL) -m664 '$(1)/CHOLMOD/Include/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
69 $(INSTALL) -m664 '$(1)/COLAMD/Include/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
70 $(INSTALL) -m664 '$(1)/CXSparse/Include/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
71 $(INSTALL) -m664 '$(1)/KLU/Include/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
72 $(INSTALL) -m664 '$(1)/LDL/Include/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
73 $(INSTALL) -m664 '$(1)/SPQR/Include/'* '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
74 $(INSTALL) -m664 '$(1)/UFconfig/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
896bc60de2a9 improvements for packages: cblas lapack suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents: 1375
diff changeset
75 $(INSTALL) -m664 '$(1)/UMFPACK/Include/'*.h '$(PREFIX)/$(TARGET)/include/suitesparse/'
1372
4c3f4e0e3194 improvements for packages: metis suitesparse
Tony Theodore <tonyt@logyst.com>
parents: 1371
diff changeset
76
1371
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
77 endef
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
78
c9905856c931 new packages: metis suitesparse
Alois Schlögl <alois.schloegl@gmail.com>
parents:
diff changeset
79