The R Project SVN R-packages

Rev

Rev 4441 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
155 bates 1
#
2
pkg = Matrix
3
 
4439 maechler 4
PKG_CFLAGS = -I./UFconfig
3686 maechler 5
## we use the BLAS and the LAPACK library:
6
PKG_LIBS = $(LAPACK_LIBS) $(BLAS_LIBS) $(FLIBS)
4439 maechler 7
 
4441 maechler 8
ifdef build_under_Windows
9
  DLLLIBS = $(PKG_LIBS) -lR
10
  SHLIB_EXT = .dll
11
  PKG_HOME = $(shell $(RHOME)/src/gnuwin32/Rpwd.exe .)
12
  MkInclude = $(PKG_HOME)/Win.mk
13
else
4819 maechler 14
  SHLIB_EXT = .so
4441 maechler 15
  MkInclude = $(R_HOME)/etc${R_ARCH}/Makeconf
16
endif
17
 
732 bates 18
include SOURCES_C.mkf
2008 bates 19
 
4305 bates 20
OBJECTS = $(SOURCES_C:.c=.o)
155 bates 21
SHLIB = $(pkg)$(SHLIB_EXT)
3727 bates 22
SUBDIRS = CHOLMOD COLAMD AMD
155 bates 23
SUBLIBS = $(SUBDIRS:=.a)
1029 bates 24
SUBSTAMP = $(SUBDIRS:=.stamp)
155 bates 25
 
26
$(SHLIB): $(OBJECTS) $(SUBLIBS)
4441 maechler 27
ifdef build_under_Windows
28
	$(DLL) --shared -s -o $@ $(OBJECTS) $(SUBLIBS) $(DLLLIBS)
29
else
155 bates 30
	$(SHLIB_LINK) -o $@ $(OBJECTS) $(SUBLIBS) $(ALL_LIBS)
4441 maechler 31
endif
155 bates 32
all: $(SHLIB)
33
 
34
mostlyclean: clean
35
 
1979 bates 36
$(SUBLIBS): $(SUBSTAMP)
155 bates 37
	@for d in $(SUBDIRS); do \
4439 maechler 38
	  (cd $${d} && MkInclude=$(MkInclude) $(MAKE) lib) || exit 1; \
1029 bates 39
	  touch $${d}.stamp; \
155 bates 40
	done
41
 
1869 maechler 42
$(SUBSTAMP):
1035 bates 43
	touch $(SUBSTAMP)
44
 
2001 maechler 45
clean:
155 bates 46
	@-rm -rf .libs _libs
4439 maechler 47
	@-rm -f *.o $(SHLIB) *.a $(SUBSTAMP)
935 bates 48
	@for d in $(SUBDIRS); do \
49
	  (cd $${d} && $(MAKE) clean) || exit 1; \
1029 bates 50
	  rm -f $${d}.stamp; \
935 bates 51
	done
155 bates 52
 
777 bates 53
include DEPS.mkf