Deepfreeze essential parts of the encodings module. ### Description

This is a split off from #3582.

Deepfreeze essential parts of encodings module (encodings.\__init__, encodings.utf_8, and encodings.aliases), which is required during the Python bootstrap.

From 751a1b0b2e5d1734eaf5d477a54a9a90b7944daa Mon Sep 17 00:00:00 2001
From: Hood Chatham <roberthoodchatham@gmail.com>
Date: Sat, 18 Dec 2021 12:31:51 -0800
Subject: [PATCH 09/13] sasum returns double not float

---
 scipy/sparse/linalg/_dsolve/SuperLU/SRC/slacon2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scipy/sparse/linalg/_dsolve/SuperLU/SRC/slacon2.c b/scipy/sparse/linalg/_dsolve/SuperLU/SRC/slacon2.c
index 50efe7849..c176fddb4 100644
--- a/scipy/sparse/linalg/_dsolve/SuperLU/SRC/slacon2.c
+++ b/scipy/sparse/linalg/_dsolve/SuperLU/SRC/slacon2.c
@@ -104,7 +104,7 @@ slacon2_(int *n, float *v, float *x, int *isgn, float *est, int *kase, int isave
     extern int SCOPY(int *, float *, int *, float *, int *);
 #else
     extern int isamax_(int *, float *, int *);
-    extern float sasum_(int *, float *, int *);
+    extern double sasum_(int *, float *, int *);
     extern int scopy_(int *, float *, int *, float *, int *);
 #endif
 #define d_sign(a, b) (b >= 0 ? fabs(a) : -fabs(a))    /* Copy sign */
-- 
2.25.1


From 751a1b0b2e5d1734eaf5d477a54a9a90b7944daa Mon Sep 17 00:00:00 2001
From: Hood Chatham <roberthoodchatham@gmail.com>
Date: Sat, 18 Dec 2021 12:31:51 -0800
Subject: [PATCH 09/13] sasum returns double not float

---
 scipy/sparse/linalg/_dsolve/SuperLU/SRC/slacon2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scipy/sparse/linalg/_dsolve/SuperLU/SRC/slacon2.c b/scipy/sparse/linalg/_dsolve/SuperLU/SRC/slacon2.c
index 50efe7849..c176fddb4 100644
--- a/scipy/sparse/linalg/_dsolve/SuperLU/SRC/slacon2.c
+++ b/scipy/sparse/linalg/_dsolve/SuperLU/SRC/slacon2.c
@@ -104,7 +104,7 @@ slacon2_(int *n, float *v, float *x, int *isgn, float *est, int *kase, int isave
     extern int SCOPY(int *, float *, int *, float *, int *);
 #else
     extern int isamax_(int *, float *, int *);
-    extern float sasum_(int *, float *, int *);
+    extern double sasum_(int *, float *, int *);
     extern int scopy_(int *, float *, int *, float *, int *);
 #endif
 #define d_sign(a, b) (b >= 0 ? fabs(a) : -fabs(a))    /* Copy sign */
-- 
2.25.1

