blob: 46f3055d3d0a6bda9691e911ba1a51da0810552a [file] [log] [blame]
#
# ${R_HOME}/src/include/Makefile
VPATH = @srcdir@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../..
subdir = src/include
include $(top_builddir)/Makeconf
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
## API(1): for .C() and .Call() writers _or_ for alternative front ends.
SRC_HEADERS = R.h Rdefines.h Rembedded.h Rinternals.h Rinterface.h
## API(2) {these are built, system-dependently}:
OBJ_HEADERS = Rconfig.h Rmath.h Rversion.h
## Non-API internal ones:
INT_HEADERS = Defn.h Errormsg.h Fileio.h Graphics.h GraphicsBase.h \
IOStuff.h Internal.h Parse.h Print.h Rconnections.h \
Rdynpriv.h Rgraphics.h Rinlinedfuns.h Startup.h rlocale.h
DISTFILES = Makefile.in Makefile.win $(INT_HEADERS) $(SRC_HEADERS) \
config.h.in stamp-h.in Rmath.h0.in
SUBDIRS = R_ext
SUBDIRS_WITH_NO_BUILD = Rmodules vg
TIMESTAMPS = $(SRC_HEADERS:.h=.ts) $(OBJ_HEADERS:.h=.tsa)
CLEANFILES = $(OBJ_HEADERS) stamp-R $(TIMESTAMPS) libintl.h
DISTCLEANFILES = Makefile Rmath.h0 config.h stamp-h
.SUFFIXES:
.SUFFIXES: .h .ts .tsa
.h.ts:
@$(INSTALL_DATA) $< $(top_builddir)/include/`basename $<`
@touch $@
.h.tsa:
@$(INSTALL_DATA) $< $(top_builddir)/include@R_ARCH@/`basename $<`
@touch $@
all: Makefile R
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
R: Makefile stamp-R $(TIMESTAMPS)
@for d in $(SUBDIRS); do \
(cd $${d} && $(MAKE) $@) || exit 1; \
done
stamp-R:
@$(MKINSTALLDIRS) $(top_builddir)/include@R_ARCH@
@touch $@
$(TIMESTAMPS): stamp-R
config.h: stamp-h
stamp-h: $(srcdir)/config.h.in $(top_builddir)/config.status
@cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/config.h
@$(ECHO) timestamp > $@ 2> /dev/null
$(srcdir)/config.h.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/stamp-h.in
$(srcdir)/stamp-h.in: @MAINTAINER_MODE_TRUE@ $(top_srcdir)/configure.ac $(top_builddir)/aclocal.m4
@TBD=`cd $(top_builddir); pwd`; \
cd $(top_srcdir) && $(AUTOHEADER) -I $${TBD}
@$(ECHO) timestamp > $@ 2> /dev/null
Rconfig.h: config.h $(top_srcdir)/tools/GETCONFIG
@$(SHELL) $(top_srcdir)/tools/GETCONFIG > $@
Rversion.h: $(top_srcdir)/VERSION $(top_srcdir)/tools/GETVERSION $(top_builddir)/SVN-REVISION
@$(SHELL) $(top_srcdir)/tools/GETVERSION > $@
## <NOTE>
## we don't use AC_CONFIG_HEADERS on Rmath.h.in because
## a) that would comment out #undef statements in Rmath.h.in and
## b) Rmath.h should be a self-contained file for standalone Rmath use.
## </NOTE>
Rmath.h: Rmath.h0
@$(SHELL) $(top_srcdir)/tools/copy-if-change Rmath.h0 $@
Rmath.h0: $(srcdir)/Rmath.h0.in $(top_builddir)/config.status
@cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
install: installdirs install-intl-@USE_INCLUDED_LIBINTL@
@for d in $(SUBDIRS); do \
(cd $${d} && $(MAKE) $@) || exit 1; \
done
@for f in $(SRC_HEADERS); do \
$(INSTALL_DATA) $(srcdir)/$${f} "$(DESTDIR)$(rincludedir)"; \
done
@for f in $(OBJ_HEADERS); do \
$(INSTALL_DATA) $${f} "$(DESTDIR)$(rincludedir)@R_ARCH@"; \
done
installdirs:
@$(MKINSTALLDIRS) "$(DESTDIR)$(rincludedir)@R_ARCH@"
install-intl-yes: installdirs
@$(INSTALL_DATA) libintl.h "$(DESTDIR)$(rincludedir)@R_ARCH@"
install-intl-no:
install-strip:
$(MAKE) INSTALL_PROGRAM="${INSTALL_PROGRAM} -s" install
uninstall:
@for d in $(SUBDIRS); do \
(cd $${d} && $(MAKE) $@) || exit 1; \
done
@rm -Rf "$(DESTDIR)$(rincludedir)"
mostlyclean: clean
clean:
@for d in $(SUBDIRS); do (cd $${d} && $(MAKE) $@); done
-@test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean: clean
@for d in $(SUBDIRS); do (cd $${d} && $(MAKE) $@); done
-@test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES)
maintainer-clean: distclean
TAGS info dvi check:
distdir: $(DISTFILES)
@for f in $(DISTFILES); do \
test -f $(distdir)/$${f} \
|| ln $(srcdir)/$${f} $(distdir)/$${f} 2>/dev/null \
|| cp -p $(srcdir)/$${f} $(distdir)/$${f}; \
done
@for d in $(SUBDIRS); do \
test -d $(distdir)/$${d} \
|| mkdir $(distdir)/$${d} \
|| exit 1; \
chmod 755 $(distdir)/$${d}; \
(cd $${d} && $(MAKE) distdir) \
|| exit 1; \
done
@for d in $(SUBDIRS_WITH_NO_BUILD); do \
((cd $(srcdir); $(TAR) -c -f - $(DISTDIR_TAR_EXCLUDE) $${d}) \
| (cd $(distdir); $(TAR) -x -f -)) \
|| exit 1; \
done