Blame view

fvn_sparse/AMD/Lib/GNUmakefile 2.58 KB
422234dc3   daniau   git-svn-id: https...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
  #-------------------------------------------------------------------------------
  # AMD Makefile for compiling on Unix systems (for GNU make only)
  #-------------------------------------------------------------------------------
  
  default: ../Lib/libamd.a
  
  include ../../UFconfig/UFconfig.mk
  
  C = $(CC) $(CFLAGS) $(CONFIG) -I../Include -I../../UFconfig
  
  #-------------------------------------------------------------------------------
  # source files
  #-------------------------------------------------------------------------------
  
  AMD = amd_aat amd_1 amd_2 amd_dump amd_postorder amd_post_tree amd_defaults \
  	amd_order amd_control amd_info amd_valid amd_preprocess
  
  UFCONFIG = ../../UFconfig/UFconfig.h
  
  INC = ../Include/amd.h ../Include/amd_internal.h $(UFCONFIG)
  
  #-------------------------------------------------------------------------------
  # object files for each version
  #-------------------------------------------------------------------------------
  
  AMDI = $(addsuffix .o, $(subst amd_,amd_i_,$(AMD)))
  AMDL = $(addsuffix .o, $(subst amd_,amd_l_,$(AMD)))
  
  #-------------------------------------------------------------------------------
  # compile each int and long routine (with no real/complex version)
  #-------------------------------------------------------------------------------
  
  amd_global.o: ../Source/amd_global.c $(INC)
  	$(C) -c $< -o $@
  
  amd_i_%.o: ../Source/amd_%.c $(INC)
  	$(C) -DDINT -c $< -o $@
  
  amd_l_%.o: ../Source/amd_%.c $(INC)
  	$(C) -DDLONG -c $< -o $@
  
  #-------------------------------------------------------------------------------
  # Create the libamd.a library (C versions only)
  #-------------------------------------------------------------------------------
  
  ../Lib/libamd.a: amd_global.o $(AMDI) $(AMDL)
  	$(AR) ../Lib/libamd.a $^
  	- $(RANLIB) ../Lib/libamd.a
  
  #-------------------------------------------------------------------------------
  # compile the Fortran versions and the libamdf77.a library
  #-------------------------------------------------------------------------------
  
  fortran: ../Lib/libamdf77.a
  
  AMDF77 = amd.o amdbar.o
  
  amd.o: ../Source/amd.f
  	$(F77) $(F77FLAGS) -c ../Source/amd.f -o amd.o
  
  amdbar.o: ../Source/amdbar.f
  	$(F77) $(F77FLAGS) -c ../Source/amdbar.f -o amdbar.o
  
  ../Lib/libamdf77.a: $(AMDF77)
  	$(AR) ../Lib/libamdf77.a $^
  	- $(RANLIB) ../Lib/libamdf77.a
  
  #-------------------------------------------------------------------------------
  # Remove all but the files in the original distribution
  #-------------------------------------------------------------------------------
  
  clean:
  	- $(RM) $(CLEAN)
  
  purge: distclean
  
  distclean: clean
  	- $(RM) ../Lib/libamd.a ../Lib/libamdf77.a