The R Project SVN R

Rev

Rev 25841 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

#
# ${R_HOME}/src/library/Recommended/Makefile

VPATH = @srcdir@
srcdir = @srcdir@
top_srcdir = @top_srcdir@

top_builddir = ../../..
subdir = src/library/Recommended

include $(top_builddir)/Makeconf

distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
DISTFILES = Makefile.in .cvsignore
R = R_LIBS= $(top_builddir)/bin/R

## foo.ts is the timestamp for package foo;
## foo.tgz is a symlink to foo_x.y-z.tar.gz in the source dir.

## For developers: A shell script, tools/rsync-recommended, updates
## packages from the CRAN master directory. 

OBJECTS = $(R_PKGS_RECOMMENDED_SOURCES:=.ts)
OBJECTS_SRC = $(R_PKGS_RECOMMENDED_SOURCES:=.tgz)

CLEANFILES = $(OBJECTS) Makedeps stamp-recommended
DISTCLEANFILES = Makefile

.SUFFIXES:
.SUFFIXES: .tgz .ts

all: Makefile R @USE_RECOMMENDED_PACKAGES_TRUE@ recommended-packages

Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
    @cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@

recommended-packages: Makefile
    @$(MAKE) Makedeps
    @$(MAKE) stamp-recommended
stamp-recommended: $(OBJECTS)
    @touch $@

## <NOTE>
## We create dependencies so that packages are built in a certain order.
## (Mostly to make parallel Make work.)
## Currently, we enforce the order in which package sources are listed
## in 'share/make/vars.mk'; we could prepend sources which must come
## first. 
## (Note that this currently starts with 'survival' as this was needed
## by 'boot' at some time: not clear whether this is still true.)
Makedeps: Makefile
    @(set $(R_PKGS_RECOMMENDED_SOURCES); \
      while test -n "$${2}"; do \
      echo "$${2}.ts: $${1}.ts"; \
      shift; \
    done) >> Makefile
    @touch $@
## </NOTE>

.tgz.ts:
## <FIXME>
## RG says that with FreeBSD Make calling INSTALL does not work without
## explicitly passing down MAKE ('unrecognized option -w ...').  But
## what is really going on?
    MAKE="$(MAKE)" $(R) CMD INSTALL -l $(top_builddir)/library $<
## </FIXME>
    @touch $@

## <FIXME>
## This no longer seems to be the case?
## survival needs to be installed before boot
## boot.ts: survival.ts boot.tgz
## </FIXME>

R docs:

install: installdirs
installdirs:
install-strip: install

uninstall:

mostlyclean: clean
clean:
    -@test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean: clean
    -@test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
maintainer-clean: distclean

distdir: $(DISTFILES)
    @for f in $(DISTFILES) `cd $(srcdir) && ls *.tar.gz *.tgz`; do \
      test -f $(distdir)/$${f} \
        || ln $(srcdir)/$${f} $(distdir)/$${f} 2>/dev/null \
        || cp -p $(srcdir)/$${f} $(distdir)/$${f}; \
    done

## Automagically generated dependencies: