diff --git a/cascade-2.2.0-nomanual.patch b/cascade-2.2.0-nomanual.patch
deleted file mode 100644
index 0c5064f95b3..00000000000
--- a/cascade-2.2.0-nomanual.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- orig.cascade/2.2.0/Makefile.in 2010-08-05 18:13:21.000000000 +0200
-+++ cascade/2.2.0/Makefile.in 2010-09-30 15:49:04.000000000 +0200
-@@ -195,7 +195,7 @@
- #endif
- MAYBE_OPT =
- #SUBDIRS = include bases51 misc src $(MAYBE_OPT) data manual
--SUBDIRS = include misc bases51 src $(MAYBE_OPT) data manual
-+SUBDIRS = include misc bases51 src $(MAYBE_OPT) data
-
- #dist_doc_DATA = README
- EXTRA_DIST = README history.txt
diff --git a/cascade-2.2.04-drop-dcasrn.patch b/cascade-2.2.04-drop-dcasrn.patch
deleted file mode 100644
index 5094bf8ea1a..00000000000
--- a/cascade-2.2.04-drop-dcasrn.patch
+++ /dev/null
@@ -1,38 +0,0 @@
-diff --git a/src/dcasrn.F b/src/dcasrn.F
-index f707c72..61be44c 100644
---- a/src/dcasrn.F
-+++ b/src/dcasrn.F
-@@ -1,20 +1,3 @@
-- DOUBLE PRECISION FUNCTION dcasrn(i)
--
-- DOUBLE PRECISION DR(1)
-- DOUBLE PRECISION TWOM24
-- PARAMETER (TWOM24 = 2.D0**(-24))
-- Real Rvec(2)
-- Integer i
-- CALL RANLUX(RVEC,2)
-- DR(1) = DBLE (RVEC(1)) + DBLE (RVEC(2)) * TWOM24
--c CALL RM48 (DR,1)
-- dcasrn = DR(1)
--
--
-- RETURN
-- END
--
--
- SUBROUTINE dcasrnv(RVEC,LENV)
-
- Integer lenv,I
-diff --git a/src/Makefile.in b/src/Makefile.in
-index 2f2d255..5aed8f2 100644
---- a/src/Makefile.in
-+++ b/src/Makefile.in
-@@ -37,7 +37,7 @@ PRE_UNINSTALL = :
- POST_UNINSTALL = :
- build_triplet = @build@
- host_triplet = @host@
--bin_PROGRAMS = cascade$(EXEEXT)
-+bin_PROGRAMS =
- subdir = src
- DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
- ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
diff --git a/cascade-2.2.04-getenv.patch b/cascade-2.2.04-getenv.patch
deleted file mode 100644
index 6dfb6db2455..00000000000
--- a/cascade-2.2.04-getenv.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- orig.cascade/2.2.04/src/casini.F 2010-10-31 15:20:03.000000000 +0100
-+++ cascade/2.2.04/src/casini.F 2011-11-12 16:33:02.000000000 +0100
-@@ -59,9 +59,9 @@
- c IGLU=5 --> GBW
- c IGLU=6 --> KMR
- c IGLU=6 --> RS
-- call getenv('PDFPATH',pdfpath)
-+ call getenv('CASCADE_PDFPATH',pdfpath)
- if(pdfpath.ne.'') then
-- call getenv('PDFPATH',pdfpath)
-+ call getenv('CASCADE_PDFPATH',pdfpath)
- else
- PDFPATH='../share/'
- endif
diff --git a/cascade.spec b/cascade.spec
deleted file mode 100644
index ba65e36e26c..00000000000
--- a/cascade.spec
+++ /dev/null
@@ -1,51 +0,0 @@
-### RPM external cascade 2.2.04
-
-Source: http://cern.ch/service-spi/external/MCGenerators/distribution/%{n}/%{n}-%{realversion}-src.tgz
-Patch0: cascade-2.2.0-nomanual
-Patch1: cascade-2.2.04-getenv
-# Drop dcasrn symbol, which we need to redifine in CMSSW. Do not build cascade
-# executable, since it would use the wrong symbol in anycase.
-Patch2: cascade-2.2.04-drop-dcasrn
-Requires: lhapdf pythia6
-
-%define keep_archives true
-
-%prep
-rm -rf %{n}
-%setup -q -n %{n}/%{realversion}
-%patch0 -p2
-%patch1 -p2
-%patch2 -p1
-
-# Notice that cascade expects a flat pythia installation,
-# where libraries and headers are all in the same place.
-# Since the source code is not actually needed, we point
-# it to the library location so that it links correctly.
-PYTHIA="$PYTHIA6_ROOT"
-LHAPDF="$LHAPDF_ROOT"
-GCC10_FFLAGS=""
-if [[ `gcc --version | head -1 | cut -d' ' -f3 | cut -d. -f1,2,3 | tr -d .` -gt 1000 ]] ; then GCC10_FFLAGS="-fallow-argument-mismatch" ; fi
-F77="$(which gfortran) -fPIC $GCC10_FFLAGS"
-PLATF_CONFIG_OPTS="--enable-static --disable-shared"
-LIBS="-lstdc++ -lz"
-
-# Update to detect aarch64 and ppc64le
-rm -f ./config.{sub,guess}
-%get_config_sub ./config.sub
-%get_config_guess ./config.guess
-chmod +x ./config.{sub,guess}
-
-./configure $PLATF_CONFIG_OPTS --with-pythia6=$PYTHIA --with-lhapdf=$LHAPDF --prefix=%i F77="$F77" LIBS="$LIBS"
-%build
-make %makeprocesses
-
-%install
-make install
-
-# In case we build archive libraries we need to merge all of them, because
-# otherwise that results some missing symbol due to a circular dependency among
-# them which cannot be solved by reshuffling the various -l statements.
-cd %{i}/lib
-find . -name '*.a' -exec ar -x {} \;
-ar rcs libcascade_merged.a *.o
-rm -rf *.o
diff --git a/cmssw-tool-conf.spec b/cmssw-tool-conf.spec
index 3e64add7641..b065ed1e910 100644
--- a/cmssw-tool-conf.spec
+++ b/cmssw-tool-conf.spec
@@ -95,7 +95,6 @@ Requires: grpc
Requires: onnxruntime
Requires: triton-inference-client
Requires: hdf5
-Requires: cascade
Requires: yoda
Requires: fftw3
Requires: fftjet
diff --git a/scram-tools.file/tools/cascade/cascade.xml b/scram-tools.file/tools/cascade/cascade.xml
deleted file mode 100644
index 99cacc8e42c..00000000000
--- a/scram-tools.file/tools/cascade/cascade.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/scram-tools.file/tools/cascade/cascade_headers.xml b/scram-tools.file/tools/cascade/cascade_headers.xml
deleted file mode 100644
index 1a8a2c44133..00000000000
--- a/scram-tools.file/tools/cascade/cascade_headers.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-