diff --git a/LEGAL b/LEGAL
index 565c4c9..0a7cc0f 100644
--- a/LEGAL
+++ b/LEGAL
@@ -657,31 +657,6 @@ ext/digest/sha2/sha2.h::
     OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     SUCH DAMAGE.
 
-ext/json/generator/generator.c::
-
-  The file contains the following copyright notice.
-
-  >>>
-    Copyright 2001-2004 Unicode, Inc.
-
-    Disclaimer::
-
-      This source code is provided as is by Unicode, Inc. No claims are
-      made as to fitness for any particular purpose. No warranties of any
-      kind are expressed or implied. The recipient agrees to determine
-      applicability of information provided. If this file has been
-      purchased on magnetic or optical media from Unicode, Inc., the
-      sole remedy for any claim will be exchange of defective media
-      within 90 days of receipt.
-
-    Limitations on Rights to Redistribute This Code::
-
-      Unicode, Inc. hereby grants the right to freely use the information
-      supplied in this file in the creation of products supporting the
-      Unicode Standard, and to make copies of this file in any form
-      for internal or external distribution as long as this notice
-      remains attached.
-
 ext/nkf/nkf-utf8/config.h::
 ext/nkf/nkf-utf8/nkf.c::
 ext/nkf/nkf-utf8/utf8tbl.c::
diff --git a/common.mk b/common.mk
index 3706aeb..9bf5627 100644
--- a/common.mk
+++ b/common.mk
@@ -1026,8 +1026,7 @@ srcs-ext: $(EXT_SRCS)
 realclean-srcs-ext::
 	$(Q)$(RM) $(EXT_SRCS)
 
-EXTRA_SRCS = $(srcdir)/ext/json/parser/parser.c \
-	     $(srcdir)/ext/date/zonetab.h \
+EXTRA_SRCS = $(srcdir)/ext/date/zonetab.h \
 	     $(empty)
 
 srcs-extra: $(EXTRA_SRCS)
@@ -1140,11 +1139,6 @@ $(srcdir)/ext/ripper/ripper.c: $(srcdir)/ext/ripper/tools/preproc.rb $(srcdir)/p
 		Q=$(Q) ECHO=$(ECHO) RM="$(RM)" BISON=$(YACC) top_srcdir=../.. srcdir=. VPATH="$${VPATH}" \
 		RUBY="$(BASERUBY)" PATH_SEPARATOR="$(PATH_SEPARATOR)"
 
-$(srcdir)/ext/json/parser/parser.c: $(srcdir)/ext/json/parser/parser.rl $(srcdir)/ext/json/parser/prereq.mk
-	$(ECHO) generating $@
-	$(Q) $(CHDIR) $(@D) && $(exec) $(MAKE) -f prereq.mk $(mflags) \
-		Q=$(Q) ECHO=$(ECHO) top_srcdir=../../.. srcdir=. VPATH=../../.. BASERUBY="$(BASERUBY)"
-
 $(srcdir)/ext/date/zonetab.h: $(srcdir)/ext/date/zonetab.list $(srcdir)/ext/date/prereq.mk
 	$(ECHO) generating $@
 	$(Q) $(CHDIR) $(@D) && $(exec) $(MAKE) -f prereq.mk $(mflags) \
diff --git a/doc/maintainers.rdoc b/doc/maintainers.rdoc
index 98de9f2..268293a 100644
--- a/doc/maintainers.rdoc
+++ b/doc/maintainers.rdoc
@@ -310,10 +310,6 @@ Zachary Scott (zzak)
   Nobuyuki Nakada (nobu)
   https://github.com/ruby/io-console
   https://rubygems.org/gems/io-console
-[ext/json]
-  NARUSE, Yui (naruse), Hiroshi SHIBATA (hsbt)
-  https://github.com/flori/json
-  https://rubygems.org/gems/json
 [ext/openssl]
   Kazuki Yamaguchi (rhe)
   https://github.com/ruby/openssl
diff --git a/ext/.document b/ext/.document
index 6a49157..97e5120 100644
--- a/ext/.document
+++ b/ext/.document
@@ -27,9 +27,6 @@ gdbm/gdbm.c
 io/console/console.c
 io/nonblock/nonblock.c
 io/wait/wait.c
-json/generator/generator.c
-json/lib
-json/parser/parser.c
 monitor/lib
 monitor/monitor.c
 nkf/lib
diff --git a/ext/Setup b/ext/Setup
index ac79c86..e1b8d40 100644
--- a/ext/Setup
+++ b/ext/Setup
@@ -20,9 +20,6 @@
 #io/console
 #io/nonblock
 #io/wait
-#json
-#json/generator
-#json/parser
 #nkf
 #objspace
 #openssl
