aboutsummaryrefslogtreecommitdiff
path: root/scripts/setup.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/setup.sh')
-rwxr-xr-xscripts/setup.sh61
1 files changed, 61 insertions, 0 deletions
diff --git a/scripts/setup.sh b/scripts/setup.sh
new file mode 100755
index 0000000..9145f9d
--- /dev/null
+++ b/scripts/setup.sh
@@ -0,0 +1,61 @@
+#!/bin/sh
+
+download()
+{
+ if [ ! -f "./binutils-2.37.tar.gz" ]; then
+ wget "https://ftp.gnu.org/gnu/binutils/binutils-2.37.tar.gz"
+ fi
+
+ if [ ! -f "./gcc-11.2.0.tar.gz" ]; then
+ wget "https://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.gz"
+ fi
+}
+
+extract()
+{
+ if [ ! -d "./binutils-2.37" ]; then
+ tar xzvf "./binutils-2.37.tar.gz"
+ fi
+
+ if [ ! -d "./gcc-11.2.0" ]; then
+ tar xzvf "./gcc-11.2.0.tar.gz"
+ fi
+}
+
+patch_gnu()
+{
+ mkdir -p "./mine"
+ cd "./mine" || exit
+
+ if [ ! -d "./binutils-2.37" ]; then
+ cp -r "../binutils-2.37" .
+ patch -p0 < "./scripts/aleksa-binutils-2.37.diff"
+ fi
+
+ if [ ! -d "./gcc-11.2.0" ]; then
+ cp -r "../gcc-11.2.0" .
+ patch -p0 < "../scripts/aleksa-gcc-11.2.0.diff"
+ fi
+}
+
+build()
+{
+ cd "./binutils-2.37" || exit
+ ../../../scripts/binutils_build.sh
+ cd .. || exit
+
+
+ cd "./binutils-2.37" || exit
+ ../../../scripts/gcc_build.sh
+ cd .. || exit
+}
+
+main()
+{
+ download
+ extract
+ patch_gnu
+# build
+}
+
+main