From d8ff79366bb0f4646436e4c298e4f5505a51c007 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 19 Mar 1999 22:27:02 +0000 Subject: Towards automake XI patch from Ralf Corsepius : This patch is the most scary of all proposals I've been mailing to you this week until now. It consists of 3 parts: 1. a patch 2. a perl script (acpolish) 3. a shell script wrapper to invoke the perl-script. The perl-script reads in each Makefile.in and modifies them ("polishes/beautifies" them :-). These modifications are not easy to describe: Basically, it hard-codes some automake Makefile-variables and rules into RTEMS autoconf-Makefile.ins (Note: autoconf vs. automake!!) and converts some settings/variables to configure scripts' requirements (Yes, plural). E.g. it adds the automake standard variables $top_builddir and $subdir, adds dependency rules for automatic re-generation of Makefiles from Makefile.in, adds support variables for relative paths to multiple configure scripts etc. The patch is a one-line patch to enable the support of the new features added by acpolish. The shell script is a wrapper which pokes around inside of the source tree for Makefile.ins and invokes acpolish on all autoconf-Makefile.ins. acpolish is designed to be able to run several times on the same Makefile.in and may once become a more general tool to convert RTEMS Makefile.in to automake. Therefore, I'd like to keep it inside of source tree. (e.g. as contrib/acpolish or c/update-tools/acpolish). However, it doesn't make sense to export it outside of RTEMS. To apply this: cd patch -p1 -E < /rtems-rc-19990318-1.diff tar xzvf /rtems-rc-polish.tar.gz ./rtems-polish.sh ./autogen Note: The path contrib/acpolish is hard-coded into rtems-polish.sh, if you decide to put it in an alternative place, please modify rtems-polish.sh to reflect this change. Later: cvs rm make/rtems.cfg (It isn't used anymore) cvs add contrib cvs add contrib/acpolish cvs commit I've tested this intensively, but naturally I can't exclude bugs. Ralf. PS.: Most probably, this is the last "Towards automake" patch. The next one probably will be a real automake patch. --- c/src/lib/libbsp/powerpc/score603e/Makefile.in | 15 ++++++++++++--- c/src/lib/libbsp/powerpc/score603e/PCI_bus/Makefile.in | 15 ++++++++++++--- c/src/lib/libbsp/powerpc/score603e/clock/Makefile.in | 16 ++++++++++++---- c/src/lib/libbsp/powerpc/score603e/console/Makefile.in | 15 ++++++++++++--- c/src/lib/libbsp/powerpc/score603e/include/Makefile.in | 15 ++++++++++++--- c/src/lib/libbsp/powerpc/score603e/start/Makefile.in | 15 ++++++++++++--- c/src/lib/libbsp/powerpc/score603e/startup/Makefile.in | 15 ++++++++++++--- c/src/lib/libbsp/powerpc/score603e/timer/Makefile.in | 15 ++++++++++++--- c/src/lib/libbsp/powerpc/score603e/tod/Makefile.in | 15 ++++++++++++--- c/src/lib/libbsp/powerpc/score603e/vectors/Makefile.in | 15 ++++++++++++--- c/src/lib/libbsp/powerpc/score603e/wrapup/Makefile.in | 16 ++++++++++++---- 11 files changed, 132 insertions(+), 35 deletions(-) (limited to 'c/src/lib/libbsp/powerpc/score603e') diff --git a/c/src/lib/libbsp/powerpc/score603e/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/Makefile.in index 80d87c2ad1..b1f8ac96f1 100644 --- a/c/src/lib/libbsp/powerpc/score603e/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@ -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@ + include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/directory.cfg @@ -20,3 +25,7 @@ all: $(SRCS) # wrapup is the one that actually builds and installs the library # from the individual .rel files built in other directories SUB_DIRS=include clock console startup start timer tod PCI_bus vectors wrapup + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/libbsp/powerpc/score603e/PCI_bus/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/PCI_bus/Makefile.in index fc893346d6..03bd832b08 100644 --- a/c/src/lib/libbsp/powerpc/score603e/PCI_bus/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/PCI_bus/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@ -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e/PCI_bus INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@ + PGM=${ARCH}/PCI_bus.rel # C source names, if any, go here -- minus the .c @@ -54,3 +59,7 @@ all: ${ARCH} $(SRCS) $(PGM) # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile install: all + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/libbsp/powerpc/score603e/clock/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/clock/Makefile.in index 390e1be4b9..739ac79eaa 100644 --- a/c/src/lib/libbsp/powerpc/score603e/clock/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/clock/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@ -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e/clock INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@ + PGM=${ARCH}/clock.rel # C source names, if any, go here -- minus the .c @@ -30,7 +35,6 @@ OBJS=$(C_O_FILES) $(CC_O_FILES) $(S_O_FILES) include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/leaf.cfg - # # (OPTIONAL) Add local stuff here using += # @@ -60,3 +64,7 @@ all: ${ARCH} $(SRCS) $(PGM) # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile install: all + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/libbsp/powerpc/score603e/console/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/console/Makefile.in index f0a1233ce6..1b80343728 100644 --- a/c/src/lib/libbsp/powerpc/score603e/console/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/console/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@ -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e/console INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@ + PGM=${ARCH}/console.rel # C source names, if any, go here -- minus the .c @@ -54,3 +59,7 @@ all: ${ARCH} $(SRCS) $(PGM) # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile install: all + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/libbsp/powerpc/score603e/include/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/include/Makefile.in index d206d1d37b..3d729b6c3f 100644 --- a/c/src/lib/libbsp/powerpc/score603e/include/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/include/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@ -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e/include INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@ + H_FILES = $(srcdir)/bsp.h $(srcdir)/coverhd.h $(srcdir)/chain.h \ $(srcdir)/gen1.h $(srcdir)/gen2.h $(srcdir)/tod.h @@ -36,3 +41,7 @@ CLOBBER_ADDITIONS += all: $(SRCS) $(INSTALL) -m 444 $(H_FILES) $(PROJECT_INCLUDE) + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/libbsp/powerpc/score603e/start/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/start/Makefile.in index 972a64f5de..80e9239252 100644 --- a/c/src/lib/libbsp/powerpc/score603e/start/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/start/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@ -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e/start INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@ + PGMS=${ARCH}/start.o # C source names, if any, go here -- minus the .c @@ -54,3 +59,7 @@ CLOBBER_ADDITIONS += all: ${ARCH} $(SRCS) $(OBJS) $(PGM) $(INSTALL_VARIANT) -m 555 ${PGMS} ${PROJECT_RELEASE}/lib + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/libbsp/powerpc/score603e/startup/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/startup/Makefile.in index fcb757dc31..c47d6e7a86 100644 --- a/c/src/lib/libbsp/powerpc/score603e/startup/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/startup/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@:@srcdir@/../../../shared -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e/startup INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@:@srcdir@/../../../shared + PGM=${ARCH}/startup.rel # C source names, if any, go here -- minus the .c @@ -69,3 +74,7 @@ ${PGM}: ${SRCS} ${OBJS} all: ${ARCH} $(SRCS) $(INSTALLED_O_FILES) $(PGM) $(INSTALL) $(srcdir)/linkcmds ${PROJECT_RELEASE}/lib $(INSTALL_VARIANT) $(INSTALLED_O_FILES) ${PROJECT_RELEASE}/lib + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/libbsp/powerpc/score603e/timer/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/timer/Makefile.in index 4c6affa027..db6e57154b 100644 --- a/c/src/lib/libbsp/powerpc/score603e/timer/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/timer/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@ -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e/timer INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@ + PGM=${ARCH}/timer.rel # C source names, if any, go here -- minus the .c @@ -59,3 +64,7 @@ all: ${ARCH} $(SRCS) $(PGM) # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile install: all + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/libbsp/powerpc/score603e/tod/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/tod/Makefile.in index 20b401dc25..086eb311c8 100644 --- a/c/src/lib/libbsp/powerpc/score603e/tod/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/tod/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@ -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e/tod INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@ + PGM=${ARCH}/tod.rel # C source names, if any, go here -- minus the .c @@ -63,3 +68,7 @@ all: ${ARCH} $(SRCS) $(PGM) # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile install: all + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/libbsp/powerpc/score603e/vectors/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/vectors/Makefile.in index b65178e44f..a023189058 100644 --- a/c/src/lib/libbsp/powerpc/score603e/vectors/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/vectors/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@ -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e/vectors INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@ + PGM=${ARCH}/vectors.rel # C source names, if any, go here -- minus the .c @@ -59,3 +64,7 @@ all: ${ARCH} $(SRCS) $(PGM) # the .rel file built here will be put into libbsp.a by ../wrapup/Makefile install: all + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/libbsp/powerpc/score603e/wrapup/Makefile.in b/c/src/lib/libbsp/powerpc/score603e/wrapup/Makefile.in index 5730c8ee34..c2d5168e32 100644 --- a/c/src/lib/libbsp/powerpc/score603e/wrapup/Makefile.in +++ b/c/src/lib/libbsp/powerpc/score603e/wrapup/Makefile.in @@ -4,12 +4,17 @@ @SET_MAKE@ srcdir = @srcdir@ -VPATH = @srcdir@ -RTEMS_ROOT = @top_srcdir@ -PROJECT_ROOT = @PROJECT_ROOT@ +top_srcdir = @top_srcdir@ +top_builddir = ../../../../../../.. +subdir = c/src/lib/libbsp/powerpc/score603e/wrapup INSTALL = @INSTALL@ +RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@ +PROJECT_ROOT = @PROJECT_ROOT@ + +VPATH = @srcdir@ + BSP_PIECES=startup clock console timer tod vectors PCI_bus # pieces to pick up out of libcpu/$(RTEMS_CPU) CPU_PIECES= @@ -54,8 +59,11 @@ $(LIB): ${OBJS} all: ${ARCH} $(SRCS) $(LIB) $(INSTALL_VARIANT) -m 644 $(LIB) ${PROJECT_RELEASE}/lib - $(PROJECT_ROOT)/${RTEMS_BSP}/lib/bsp_specs: ../bsp_specs $(INSTALL_DATA) $< $@ preinstall: $(PROJECT_ROOT)/${RTEMS_BSP}/lib/bsp_specs + +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status -- cgit v1.2.3