121925
diff --git a/Makefile.in b/Makefile.in
121925
index a93a1e6..fb30c19 100644
121925
--- a/Makefile.in
121925
+++ b/Makefile.in
121925
@@ -111,6 +111,7 @@ XRUBY_RUBYLIBDIR = @XRUBY_RUBYLIBDIR@
121925
 XRUBY_RUBYHDRDIR = @XRUBY_RUBYHDRDIR@
121925
 
121925
 DEFAULT_PRELUDES = $(@USE_RUBYGEMS@_GEM_PRELUDE)
121925
+OPTIONAL_PRELUDES = @OPTIONAL_PRELUDES@
121925
 
121925
 #### End of system configuration section. ####
121925
 
121925
diff --git a/common.mk b/common.mk
121925
index e5069e5..ca5e3f9 100644
121925
--- a/common.mk
121925
+++ b/common.mk
121925
@@ -107,7 +107,7 @@ ALLOBJS       = $(NORMALMAINOBJ) $(MINIOBJS) $(COMMONOBJS) $(DMYEXT)
121925
 
121925
 GOLFOBJS      = goruby.$(OBJEXT) golf_prelude.$(OBJEXT)
121925
 
121925
-PRELUDE_SCRIPTS = $(srcdir)/prelude.rb $(srcdir)/enc/prelude.rb $(DEFAULT_PRELUDES)
121925
+PRELUDE_SCRIPTS = $(srcdir)/prelude.rb $(srcdir)/enc/prelude.rb $(DEFAULT_PRELUDES) $(OPTIONAL_PRELUDES)
121925
 GEM_PRELUDE = $(srcdir)/gem_prelude.rb
121925
 YES_GEM_PRELUDE = $(GEM_PRELUDE)
121925
 NO_GEM_PRELUDE =
121925
diff --git a/configure.in b/configure.in
121925
index 7977aaf..1ef42cd 100644
121925
--- a/configure.in
121925
+++ b/configure.in
121925
@@ -3559,6 +3559,13 @@ AC_SUBST(rubyarchhdrdir)dnl
121925
 AC_SUBST(sitearchhdrdir)dnl
121925
 AC_SUBST(vendorarchhdrdir)dnl
121925
 
121925
+AC_ARG_WITH(prelude,
121925
+		AS_HELP_STRING([--with-prelude=FILE-LIST], [specify additional preludes separated by space]),
121925
+		[prelude=$withval])
121925
+if test "$prelude" != ""; then
121925
+    AC_SUBST(OPTIONAL_PRELUDES, $prelude)
121925
+fi
121925
+
121925
 AC_ARG_WITH(mantype,
121925
 	AS_HELP_STRING([--with-mantype=TYPE], [specify man page type; TYPE is one of man and doc]),
121925
 		[