diff --git a/Modules/Makefile.pre.in b/Modules/Makefile.pre.in
index 6a3e5e5..4c6b315 100644
--- a/Modules/Makefile.pre.in
+++ b/Modules/Makefile.pre.in
@@ -6,9 +6,6 @@
 # brought up to date by running "make Makefile".  (The makesetup also
 # creates config.c from config.c.in in the source directory.)
 
-# Interpreter version number, for library destination pathnames
-VERSION=	1.5
-
 # === Variables set by makesetup ===
 
 MODOBJS=	_MODOBJS_
@@ -16,6 +13,7 @@
 
 # === Variables set by configure ===
 
+VERSION=	@VERSION@
 srcdir=		@srcdir@
 VPATH=		@srcdir@
 
@@ -92,51 +90,51 @@
 
 # === Fixed definitions ===
 
-OBJS=		$(MODOBJS)
+FIXOBJS=	config.o getpath.o main.o getbuildinfo.o
+OBJS=		$(MODOBJS) $(FIXOBJS)
 
-# XXX Should getpath.o (and may be others) be added to OBJS?
-
-ADDOBJS=	main.o config.o getpath.o getbuildinfo.o
-
-LIB=		libModules.a
-
-MYLIBS=		$(LIB) \
-		../Python/libPython.a \
-		../Objects/libObjects.a \
-		../Parser/libParser.a
+MAINOBJ=	python.o
 
 SYSLIBS=	$(LIBM) $(LIBC)
 
+LIBRARY=	../libpython$(VERSION).a
 
 # === Rules ===
 
-all:		$(LIB) ../python sharedmods
+all:		$(OBJS) sharedmods
 
+# Targets for Jim Fulton's extension Makefiles -- are these still needed?
 asharedmodule:	$(ASHAREDMODULE)$(SO)
 
 $(ASHAREDMODULE)$(SO): $(ASHAREDMODULESOBS)
 	$(LDSHARED) $(LDFLAGS) -o $(ASHAREDMODULE)$(SO) $(ASHAREDMODULESOBS) \
 	$(ASHAREDMODULESEXTRA)
 
-$(LIB):		$& $(OBJS) Makefile
-		-rm -f $(LIB)
-		$(AR) cr $(LIB) $(OBJS)
-		$(RANLIB) $(LIB)
-
-../python:	$(MYLIBS) $(ADDOBJS) Makefile buildno
+# This target is used by the master Makefile to add the objects to the library.
+# To deal with the conflict between signalmodule.o and sigcheck.o,
+# we remove the latter if we have the former.
+add2lib:	$(OBJS) buildno
 		expr `cat buildno` + 1 >@buildno
 		mv @buildno buildno
-		$(CC) -c $(CFLAGS) -DBUILD=`cat buildno` $(srcdir)/getbuildinfo.c
-		$(AR) r $(LIB) getbuildinfo.o
-		$(LINKCC) $(LDFLAGS) $(OPT) $(LINKFORSHARED) $(ADDOBJS) \
-		  $(MYLIBS) $(MODLIBS) $(LIBS) $(SYSLIBS) -o python $(LDLAST)
+		$(CC) -c $(CFLAGS) -DBUILD=`cat buildno` \
+		      $(srcdir)/getbuildinfo.c
+		$(AR) cr $(LIBRARY) $(OBJS)
+		-if ar x $(LIBRARY) signalmodule.o 2>/dev/null; \
+		then ar d $(LIBRARY) sigcheck.o 2>/dev/null; true; \
+		else true; fi
+		touch add2lib
+
+# This target is used by the master Makefile to link the final binary.
+link:		$(MAINOBJ)
+		$(LINKCC) $(LDFLAGS) $(OPT) $(LINKFORSHARED) $(MAINOBJ) \
+		  $(LIBRARY) $(MODLIBS) $(LIBS) $(SYSLIBS) -o python $(LDLAST)
 		mv python ../python
 
 buildno:
 		echo 0 >buildno
 
 clean:
-		-rm -f *.o python core *~ [@,#]* *.old *.orig *.rej
+		-rm -f *.o python core *~ [@,#]* *.old *.orig *.rej add2lib
 
 clobber:	clean
 		-rm -f *.a tags TAGS config.c glmodule.c Makefile.pre
@@ -150,7 +148,11 @@
 		      -DVPATH='"$(VPATH)"' \
 		      $(srcdir)/getpath.c
 
+# When the configuration changes, we remove the library, so that it
+# gets remade from scratch; this ensures to remove modules that are no
+# longer pertinent (but that were in a previous configuration).
 config.c Makefile: Makefile.pre config.c.in $(MAKESETUP) Setup Setup.local
+		-rm -f $(LIBRARY)
 		$(SHELL) $(MAKESETUP) Setup Setup.local
 
 Setup:
diff --git a/Objects/Makefile.in b/Objects/Makefile.in
index 2d6c087..e2dee62 100644
--- a/Objects/Makefile.in
+++ b/Objects/Makefile.in
@@ -4,6 +4,8 @@
 
 # === Variables set by config.stat ===
 
+VERSION=	@VERSION@
+
 srcdir=		@srcdir@
 VPATH=		@srcdir@
 
@@ -44,20 +46,19 @@
 		sliceobject.c stringobject.c \
 		tupleobject.c typeobject.c
 
-LIB=		libObjects.a
-
+LIBRARY=	../libpython$(VERSION).a
 
 # === Rules ===
 
-all:		$(LIB)
+all:		$(OBJS)
 
-$(LIB):		$& $(OBJS)
-		-rm -f $(LIB)
-		$(AR) cr $(LIB) $(OBJS)
-		$(RANLIB) $(LIB)
+# This target is used by the master Makefile to add the objects to the library
+add2lib:	$(OBJS)
+		$(AR) cr $(LIBRARY) $(OBJS)
+		touch add2lib
 
 clean:
-		-rm -f *.o core *~ [@,#]* *.old *.orig *.rej
+		-rm -f *.o core *~ [@,#]* *.old *.orig *.rej add2lib
 
 clobber:	clean
 		-rm -f *.a tags TAGS
diff --git a/Parser/Makefile.in b/Parser/Makefile.in
index 1b8f1f8..48bfebc 100644
--- a/Parser/Makefile.in
+++ b/Parser/Makefile.in
@@ -4,6 +4,8 @@
 
 # === Variables set by config.stat ===
 
+VERSION=	@VERSION@
+
 srcdir=		@srcdir@
 VPATH=		@srcdir@
 
@@ -26,35 +28,38 @@
 
 # === Fixed definitions ===
 
-PARSEROBJS=	acceler.o grammar1.o \
-		intrcheck.o listnode.o myreadline.o node.o parser.o \
+POBJS=		acceler.o grammar1.o \
+		listnode.o node.o parser.o \
 		parsetok.o tokenizer.o bitset.o \
 		firstsets.o grammar.o metagrammar.o pgen.o \
 		printgrammar.o
 
-PGENOBJS=	pgenmain.o
+OBJS=		$(POBJS) intrcheck.o myreadline.o
 
-OBJS=		$(PGENOBJS) $(PARSEROBJS)
+PGENMAIN=	pgenmain.o
+
+PGENOBJS=	$(PGENMAIN) $(POBJS)
+
+DOBJS=		$(PGENMAIN) $(OBJS)
 
 PGEN=		pgen
 
-LIB=		libParser.a
-
+LIBRARY=	../libpython$(VERSION).a
 
 # === Rules ===
 
-all:		$(LIB) $(PGEN)
+all:		$(PGEN) $(OBJS)
 
-$(LIB):		$& $(PARSEROBJS)
-		-rm -f $(LIB)
-		$(AR) cr $(LIB) $(PARSEROBJS)
-		$(RANLIB) $(LIB)
+# This target is used by the master Makefile to add the objects to the library
+add2lib:	$(OBJS)
+		$(AR) cr $(LIBRARY) $(OBJS)
+		touch add2lib
 
-$(PGEN):	$(PGENOBJS) $(LIB)
-		$(CC) $(OPT) $(PGENOBJS) $(LIB) -o $(PGEN)
+$(PGEN):	$(PGENOBJS)
+		$(CC) $(OPT) $(PGENOBJS) -o $(PGEN)
 
 clean:
-		-rm -f *.o core *~ [@,#]* *.old *.orig *.rej
+		-rm -f *.o core *~ [@,#]* *.old *.orig *.rej add2lib
 
 clobber:	clean
 		-rm -f $(PGEN) *.a tags TAGS
@@ -64,7 +69,7 @@
 		$(SHELL) config.status)
 
 depend:
-		$(MKDEP) $(CFLAGS) `echo $(OBJS) | tr ' ' '\012' | \
+		$(MKDEP) $(CFLAGS) `echo $(DOBJS) | tr ' ' '\012' | \
 					sed 's|\(.*\)\.o|$(srcdir)/\1.c|'`
 
 .PRECIOUS:	Makefile
diff --git a/Python/Makefile.in b/Python/Makefile.in
index 9fc2de6..de28c23 100644
--- a/Python/Makefile.in
+++ b/Python/Makefile.in
@@ -4,6 +4,8 @@
 
 # === Variables set by config.stat ===
 
+VERSION=	@VERSION@
+
 srcdir=		@srcdir@
 VPATH=		@srcdir@
 
@@ -46,22 +48,20 @@
 		traceback.o \
 		$(LIBOBJS)
 
-LIB=		libPython.a
-
-SYSLIBS=	-lm
+LIBRARY=	../libpython$(VERSION).a
 
 
 # === Rules ===
 
-all:		$(LIB)
+all:		$(OBJS)
 
-$(LIB):		$& $(OBJS)
-		-rm -f $(LIB)
-		$(AR) cr $(LIB) $(OBJS)
-		$(RANLIB) $(LIB)
+# This target is used by the master Makefile to add the objects to the library
+add2lib:	$(OBJS)
+		$(AR) cr $(LIBRARY) $(OBJS)
+		touch add2lib
 
 clean:
-		-rm -f *.o core *~ [@,#]* *.old *.orig *.rej
+		-rm -f *.o core *~ [@,#]* *.old *.orig *.rej add2lib
 
 clobber:	clean
 		-rm -f *.a tags TAGS
