The R Project SVN R

Rev

Rev 47694 | Rev 47735 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

#-*- Makefile -*-
#
# ${R_HOME}/src/library/methods/Makefile.win

srcdir = .
top_srcdir = ../../..

top_builddir = ../../..

pkg = methods

R_EXE = $(top_builddir)/bin/Rterm.exe --vanilla --slave

ECHO = echo
MKINSTALLDIRS = mkdir -p
INSTALL_DATA = cp
SHELL = sh
R_GZIPCMD = gzip

all:
    @$(ECHO) "building package '$(pkg)'"
    @$(MKINSTALLDIRS) $(top_builddir)/library/$(pkg)/R
    @(f=$${TMPDIR:-/tmp}/R$$$$; \
      $(ECHO) ".packageName <- \"$(pkg)\"" >  $${f}; \
      cat `LC_COLLATE=C ls $(srcdir)/R/*.R` >> $${f}; \
      $(SHELL) $(top_srcdir)/tools/move-if-change $${f} all.R)
    @rm -f $(top_builddir)/library/$(pkg)/Meta/nsInfo.rds
    @for f in COPYRIGHTS SOURCES NAMESPACE; do \
      if test -f $(srcdir)/$${f}; then \
        $(INSTALL_DATA) $(srcdir)/$${f} \
          $(top_builddir)/library/$(pkg); \
      fi; \
    done
    @if test -f DESCRIPTION; then \
      $(ECHO) "tools:::.install_package_description('.', '"$(top_builddir)/library/${pkg}"')" | \
      R_DEFAULT_PACKAGES=NULL $(R_EXE) > /dev/null ; \
    fi
    @if test -d $(srcdir)/inst/po; then \
      if test "yes" = "yes"; then \
      $(MKINSTALLDIRS) $(top_builddir)/library/$(pkg)/po; \
      cp -pr  $(srcdir)/inst/po/* $(top_builddir)/library/$(pkg)/po; \
      find "$(top_builddir)/library/$(pkg)/po" -name .svn -type d -prune \
        -exec rm -rf \{\} \; 2>/dev/null; \
      fi; \
    fi
    @if test -d $(srcdir)/man; then \
      $(MKINSTALLDIRS) $(top_builddir)/library/$(pkg)/man; \
      (f=$${TMPDIR:-/tmp}/R$$$$; \
        for rdfile in $(srcdir)/man/*.Rd; do \
          $(ECHO) "% --- Source file: $${rdfile} ---"; \
            cat $${rdfile} $(top_srcdir)/src/library/eof_file; \
        done >> $${f}; \
            $(SHELL) $(top_srcdir)/tools/move-if-change $${f} \
              $(top_builddir)/library/$(pkg)/man/$(pkg).Rd); \
            rm -f $(top_builddir)/library/$(pkg)/man/$(pkg).Rd.gz; \
            $(R_GZIPCMD) $(top_builddir)/library/$(pkg)/man/$(pkg).Rd; \
    fi
    @if test -d src; then \
      $(MAKE) -C src -f $(RHOME)/src/gnuwin32/MakeDll RHOME=$(RHOME) DLLNAME=$(pkg) || exit 1; \
      mkdir -p $(top_builddir)/library/$(pkg)/libs; \
      cp src/$(pkg).dll $(top_builddir)/library/$(pkg)/libs; \
    fi
    @$(MAKE) --no-print-directory -f Makefile.win RfilesLazy

RfilesLazy: $(top_builddir)/library/$(pkg)/R/$(pkg).rdb

## loadNamespace() depends on the NAMESPACE file.  We remove the
## dumped copy (it is rebuilt later), and we have already installed
## NAMESPACE in the library tree.
$(top_builddir)/library/$(pkg)/R/$(pkg).rdb: all.R  $(srcdir)/NAMESPACE
    @rm -f $(top_builddir)/library/$(pkg)/Meta/nsInfo.rds $@
    @$(ECHO) "dumping R code in package '$(pkg)'"
    @$(INSTALL_DATA) all.R $(top_builddir)/library/$(pkg)/R/$(pkg)
    @$(ECHO) "invisible(loadNamespace(\"$(pkg)\"))" | \
      R_DEFAULT_PACKAGES=NULL LC_ALL=C $(R_EXE)
    @$(INSTALL_DATA) $(top_srcdir)/share/R/nspackloader.R \
      $(top_builddir)/library/$(pkg)/R/$(pkg)

mostlyclean: clean
clean:
    @$(MAKE) -C src -f $(RHOME)/src/gnuwin32/MakeDll RHOME=$(RHOME) DLLNAME=$(pkg) shlib-clean
    -@rm -f all.R
distclean:
    -@rm -f DESCRIPTION