From 5c3511e5cff1019e683239fd71f6ea3254e1eccb Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 30 Jan 1998 21:49:51 +0000 Subject: Big patch form Ralf Corsepius described in this email: Here is the result of my nightly work to get RTEMS_ROOT=$srcdir working with different shells and relative/absolute paths. What I did is relatively simple in principle: Instead of setting RTEMS_ROOT in configure.in and then let configure substitute @RTEMS_ROOT@ inside the Makefiles, I now let each Makefile set RTEMS_ROOT from each Makefile's @top_srcdir@ value. The difference is subtile, but with enormous side effects: - If RTEMS_ROOT is set in configure, then the same single value will be propagated to all Makefiles. This breaks using relative paths, as the relative path to the root of the source tree is used inside of all subdirectory Makefiles. - Now each Makefile.in sets RTEMS_ROOT = @top_srcdir@. top_srcdir is computed individually by configure for each single Makefile.in, hereby receiving the correct value, no matter if relative or absolute paths are used. To get this working, I needed to remove setting RTEMS_ROOT from target.cfg.in, because this overrides the value of RTEMS_ROOT from each individual Makefile. Furthermore, I removed RTEMS_CUSTOM from the Makefiles and replaced all "include $(RTEMS_CUSTOM)" directives with"include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP)". Perhaps you don't like this, but I think, to have one variable less is clearer and easier to understand than having several variables refering to the next one. I enclose a small patch to this mail, which - fixes the config.h problem (to finally clearify misunderstands) - removes assignment/subsitution of RTEMS_ROOT from configure.in - contains a workaround for the application Makefile's RTEMS_ROOT problem (reported by Eric) - removes some unused lines from the toplevel Makefile.in - removes assignment of RTEMS_ROOT from make/target.cfg.in --- c/src/lib/libbsp/m68k/efi332/Makefile.in | 6 ++---- c/src/lib/libbsp/m68k/efi332/clock/Makefile.in | 6 ++---- c/src/lib/libbsp/m68k/efi332/console/Makefile.in | 6 ++---- c/src/lib/libbsp/m68k/efi332/include/Makefile.in | 6 ++---- c/src/lib/libbsp/m68k/efi332/spurious/Makefile.in | 6 ++---- c/src/lib/libbsp/m68k/efi332/start/Makefile.in | 6 ++---- c/src/lib/libbsp/m68k/efi332/start332/Makefile.in | 6 ++---- c/src/lib/libbsp/m68k/efi332/startup/Makefile.in | 6 ++---- c/src/lib/libbsp/m68k/efi332/timer/Makefile.in | 6 ++---- c/src/lib/libbsp/m68k/efi332/wrapup/Makefile.in | 6 ++---- 10 files changed, 20 insertions(+), 40 deletions(-) (limited to 'c/src/lib/libbsp/m68k/efi332') diff --git a/c/src/lib/libbsp/m68k/efi332/Makefile.in b/c/src/lib/libbsp/m68k/efi332/Makefile.in index 9df3b663e3..21c1abc2c8 100644 --- a/c/src/lib/libbsp/m68k/efi332/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/Makefile.in @@ -4,13 +4,11 @@ @SET_MAKE@ srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ -RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ -RTEMS_CUSTOM = $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg -include $(RTEMS_CUSTOM) +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/directory.cfg # wrapup is the one that actually builds and installs the library diff --git a/c/src/lib/libbsp/m68k/efi332/clock/Makefile.in b/c/src/lib/libbsp/m68k/efi332/clock/Makefile.in index 7f985380de..59df4f2702 100644 --- a/c/src/lib/libbsp/m68k/efi332/clock/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/clock/Makefile.in @@ -4,11 +4,9 @@ @SET_MAKE@ srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ -RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ -RTEMS_CUSTOM = $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg PGM=${ARCH}/clock.rel @@ -22,7 +20,7 @@ H_FILES= SRCS=$(C_FILES) $(H_FILES) OBJS=$(C_O_FILES) -include $(RTEMS_CUSTOM) +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/leaf.cfg # diff --git a/c/src/lib/libbsp/m68k/efi332/console/Makefile.in b/c/src/lib/libbsp/m68k/efi332/console/Makefile.in index 580c9e9c7d..fd05ddfedd 100644 --- a/c/src/lib/libbsp/m68k/efi332/console/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/console/Makefile.in @@ -4,11 +4,9 @@ @SET_MAKE@ srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ -RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ -RTEMS_CUSTOM = $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg PGM=${ARCH}/console.rel @@ -22,7 +20,7 @@ H_FILES= SRCS=$(C_FILES) $(H_FILES) OBJS=$(C_O_FILES) -include $(RTEMS_CUSTOM) +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/leaf.cfg # diff --git a/c/src/lib/libbsp/m68k/efi332/include/Makefile.in b/c/src/lib/libbsp/m68k/efi332/include/Makefile.in index dc753f06c1..145f554e29 100644 --- a/c/src/lib/libbsp/m68k/efi332/include/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/include/Makefile.in @@ -4,11 +4,9 @@ @SET_MAKE@ srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ -RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ -RTEMS_CUSTOM = $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg H_FILES = $(srcdir)/bsp.h $(srcdir)/efi332.h $(srcdir)/coverhd.h @@ -24,7 +22,7 @@ EQ_FILES = SRCS=$(H_FILES) $(EQ_FILES) -include $(RTEMS_CUSTOM) +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/leaf.cfg CLEAN_ADDITIONS += diff --git a/c/src/lib/libbsp/m68k/efi332/spurious/Makefile.in b/c/src/lib/libbsp/m68k/efi332/spurious/Makefile.in index 9545ffa42a..871175f129 100644 --- a/c/src/lib/libbsp/m68k/efi332/spurious/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/spurious/Makefile.in @@ -4,11 +4,9 @@ @SET_MAKE@ srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ -RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ -RTEMS_CUSTOM = $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg PGM=${ARCH}/spurious.rel @@ -22,7 +20,7 @@ H_FILES= SRCS=$(C_FILES) $(H_FILES) OBJS=$(C_O_FILES) -include $(RTEMS_CUSTOM) +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/leaf.cfg # diff --git a/c/src/lib/libbsp/m68k/efi332/start/Makefile.in b/c/src/lib/libbsp/m68k/efi332/start/Makefile.in index bebe375d46..2373aeca0b 100644 --- a/c/src/lib/libbsp/m68k/efi332/start/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/start/Makefile.in @@ -4,11 +4,9 @@ @SET_MAKE@ srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ -RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ -RTEMS_CUSTOM = $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg PGM=${ARCH}/start332.o @@ -22,7 +20,7 @@ H_FILES= SRCS=$(C_FILES) $(H_FILES) OBJS=$(C_O_FILES) -include $(RTEMS_CUSTOM) +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/leaf.cfg # diff --git a/c/src/lib/libbsp/m68k/efi332/start332/Makefile.in b/c/src/lib/libbsp/m68k/efi332/start332/Makefile.in index bebe375d46..2373aeca0b 100644 --- a/c/src/lib/libbsp/m68k/efi332/start332/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/start332/Makefile.in @@ -4,11 +4,9 @@ @SET_MAKE@ srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ -RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ -RTEMS_CUSTOM = $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg PGM=${ARCH}/start332.o @@ -22,7 +20,7 @@ H_FILES= SRCS=$(C_FILES) $(H_FILES) OBJS=$(C_O_FILES) -include $(RTEMS_CUSTOM) +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/leaf.cfg # diff --git a/c/src/lib/libbsp/m68k/efi332/startup/Makefile.in b/c/src/lib/libbsp/m68k/efi332/startup/Makefile.in index 98a6c4db7c..f1d3bbcec9 100644 --- a/c/src/lib/libbsp/m68k/efi332/startup/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/startup/Makefile.in @@ -4,11 +4,9 @@ @SET_MAKE@ srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@:@srcdir@/../../shared:@srcdir@/../../../shared -RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ -RTEMS_CUSTOM = $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg PGM=${ARCH}/startup.rel @@ -22,7 +20,7 @@ H_FILES= SRCS=$(C_FILES) $(H_FILES) OBJS=$(C_O_FILES) -include $(RTEMS_CUSTOM) +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/leaf.cfg # diff --git a/c/src/lib/libbsp/m68k/efi332/timer/Makefile.in b/c/src/lib/libbsp/m68k/efi332/timer/Makefile.in index 15c782a9d0..d9e6e84a0c 100644 --- a/c/src/lib/libbsp/m68k/efi332/timer/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/timer/Makefile.in @@ -4,11 +4,9 @@ @SET_MAKE@ srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ -RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ -RTEMS_CUSTOM = $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg PGM=${ARCH}/timer.rel @@ -22,7 +20,7 @@ H_FILES= SRCS=$(C_FILES) $(H_FILES) OBJS=$(C_O_FILES) -include $(RTEMS_CUSTOM) +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/leaf.cfg # diff --git a/c/src/lib/libbsp/m68k/efi332/wrapup/Makefile.in b/c/src/lib/libbsp/m68k/efi332/wrapup/Makefile.in index 004ea725a4..3ef5e9d4bb 100644 --- a/c/src/lib/libbsp/m68k/efi332/wrapup/Makefile.in +++ b/c/src/lib/libbsp/m68k/efi332/wrapup/Makefile.in @@ -4,11 +4,9 @@ @SET_MAKE@ srcdir = @srcdir@ -top_srcdir = @top_srcdir@ VPATH = @srcdir@ -RTEMS_ROOT = @RTEMS_ROOT@ +RTEMS_ROOT = @top_srcdir@ PROJECT_ROOT = @PROJECT_ROOT@ -RTEMS_CUSTOM = $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg BSP_PIECES=startup clock console spurious timer GENERIC_PIECES= @@ -18,7 +16,7 @@ OBJS=$(foreach piece, $(BSP_PIECES), ../$(piece)/$(ARCH)/$(piece).rel) \ $(foreach piece, $(GENERIC_PIECES), ../../../$(piece)/$(ARCH)/$(piece).rel) LIB=$(ARCH)/libbsp.a -include $(RTEMS_CUSTOM) +include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg include $(RTEMS_ROOT)/make/lib.cfg # -- cgit v1.2.3