added cross compiler build
This commit is contained in:
commit
779d5ee325
10 changed files with 216 additions and 0 deletions
5
.gitignore
vendored
Normal file
5
.gitignore
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
*.tar.*
|
||||
gcc/
|
||||
binutils/
|
||||
gawk/
|
||||
builddir/
|
31
cross/Makefile
Normal file
31
cross/Makefile
Normal file
|
@ -0,0 +1,31 @@
|
|||
CROSSPATH = $(HOME)/opt
|
||||
export PATH := $(CROSSPATH)/bin:$(PATH)
|
||||
pre: | clean $(CROSSPATH)/ fetch extract patch prereqs
|
||||
|
||||
clean:
|
||||
rm -rf $(CROSSPATH)
|
||||
rm -rf gawk binutils gcc *.tar.* builddir
|
||||
|
||||
$(CROSSPATH)/:
|
||||
mkdir -p $(CROSSPATH)
|
||||
|
||||
include gawk.mk
|
||||
include gcc.mk
|
||||
include binutils.mk
|
||||
include mpc.mk
|
||||
include mpfr.mk
|
||||
include gmp.mk
|
||||
include isl.mk
|
||||
include cloog.mk
|
||||
|
||||
fetch: gawk.tar.xz gcc.tar.bz2 binutils.tar.bz2 mpc.tar.gz mpfr.tar.xz gmp.tar.xz isl.tar.xz cloog.tar.gz
|
||||
|
||||
extract: gawk/ binutils/ gcc/mpc/ gcc/mpfr/ gcc/gmp/ gcc/isl/ gcc/cloog/
|
||||
|
||||
patch: gawk-patch gcc-patch binutils-patch mpc-patch mpfr-patch gmp-patch isl-patch cloog-patch
|
||||
|
||||
prereqs: gawk-build
|
||||
|
||||
build:
|
||||
TARGET=$(TARGET) $(MAKE) -e binutils-build
|
||||
TARGET=$(TARGET) $(MAKE) -e gcc-build
|
29
cross/binutils.mk
Normal file
29
cross/binutils.mk
Normal file
|
@ -0,0 +1,29 @@
|
|||
BINUTILS_VERSION=2.28
|
||||
binutils.tar.bz2: binutils-$(BINUTILS_VERSION).tar.bz2
|
||||
mv $^ $@
|
||||
|
||||
binutils-$(BINUTILS_VERSION).tar.bz2:
|
||||
wget https://ftp.gnu.org/gnu/binutils/$@
|
||||
|
||||
binutils/: binutils-$(BINUTILS_VERSION)/
|
||||
mv $^ $@
|
||||
|
||||
binutils-$(BINUTILS_VERSION)/: binutils.tar.bz2
|
||||
tar -xf $^
|
||||
|
||||
binutils-patch:
|
||||
true
|
||||
|
||||
binutils-build: binutils-install
|
||||
rm -rf builddir
|
||||
|
||||
binutils-configure:
|
||||
mkdir builddir
|
||||
cd builddir; \
|
||||
../binutils/configure --prefix=$(CROSSPATH) --target=$(TARGET) --with-sysroot --disable-nls --disable-werror
|
||||
|
||||
binutils-make: binutils-configure
|
||||
$(MAKE) -C builddir
|
||||
|
||||
binutils-install: binutils-make
|
||||
$(MAKE) -C builddir install
|
18
cross/cloog.mk
Normal file
18
cross/cloog.mk
Normal file
|
@ -0,0 +1,18 @@
|
|||
CLOOG_VERSION=0.18.4
|
||||
cloog.tar.gz: cloog-$(CLOOG_VERSION).tar.gz
|
||||
mv $^ $@
|
||||
|
||||
cloog-$(CLOOG_VERSION).tar.gz:
|
||||
wget http://www.bastoul.net/cloog/pages/download/$@
|
||||
|
||||
gcc/cloog/: gcc/ cloog-$(CLOOG_VERSION)/
|
||||
mv cloog-$(CLOOG_VERSION)/ $@
|
||||
|
||||
cloog-$(CLOOG_VERSION)/: cloog.tar.gz
|
||||
tar -xf $^
|
||||
|
||||
cloog-patch:
|
||||
true
|
||||
|
||||
cloog-build:
|
||||
true
|
31
cross/gawk.mk
Normal file
31
cross/gawk.mk
Normal file
|
@ -0,0 +1,31 @@
|
|||
GAWK_VERSION=4.1.4
|
||||
gawk.tar.xz: gawk-$(GAWK_VERSION).tar.xz
|
||||
mv $^ $@
|
||||
|
||||
gawk-$(GAWK_VERSION).tar.xz:
|
||||
wget https://ftp.gnu.org/gnu/gawk/$@
|
||||
|
||||
gawk/: gawk-$(GAWK_VERSION)/
|
||||
mv $^ $@
|
||||
|
||||
gawk-$(GAWK_VERSION)/: gawk.tar.xz
|
||||
tar -xf $^
|
||||
|
||||
gawk-patch:
|
||||
true
|
||||
|
||||
gawk-build: gawk-install
|
||||
rm -rf builddir
|
||||
|
||||
gawk-configure: gawk/
|
||||
mkdir builddir
|
||||
cd builddir; \
|
||||
../gawk/configure --prefix=$(CROSSPATH)
|
||||
|
||||
gawk-make: gawk-configure
|
||||
cd builddir; \
|
||||
$(MAKE)
|
||||
|
||||
gawk-install: gawk-make
|
||||
cd builddir; \
|
||||
$(MAKE) install
|
30
cross/gcc.mk
Normal file
30
cross/gcc.mk
Normal file
|
@ -0,0 +1,30 @@
|
|||
GCC_VERSION=6.3.0
|
||||
GCC_MAJOR_VERSION=6.3.0
|
||||
gcc.tar.bz2: gcc-$(GCC_VERSION).tar.bz2
|
||||
mv $^ $@
|
||||
|
||||
gcc-$(GCC_VERSION).tar.bz2:
|
||||
wget https://ftp.gnu.org/gnu/gcc/gcc-$(GCC_MAJOR_VERSION)/$@
|
||||
|
||||
gcc/: gcc-$(GCC_VERSION)/
|
||||
mv $^ $@
|
||||
|
||||
gcc-$(GCC_VERSION)/: gcc.tar.bz2
|
||||
tar -xf $^
|
||||
|
||||
gcc-patch:
|
||||
true #Todo: Replace this with the sed that enables libstdc++
|
||||
|
||||
gcc-build: gcc-install
|
||||
rm -rf builddir
|
||||
|
||||
gcc-configure:
|
||||
mkdir builddir
|
||||
cd builddir; \
|
||||
../gcc/configure --prefix=$(CROSSPATH) --target=$(TARGET) --disable-nls --enable-languages=c,c++ --without-headers
|
||||
|
||||
gcc-make: gcc-configure
|
||||
$(MAKE) -C builddir all-gcc all-target-libgcc
|
||||
|
||||
gcc-install: gcc-make
|
||||
$(MAKE) -C builddir install-gcc install-target-libgcc
|
18
cross/gmp.mk
Normal file
18
cross/gmp.mk
Normal file
|
@ -0,0 +1,18 @@
|
|||
GMP_VERSION=6.1.2
|
||||
gmp.tar.xz: gmp-$(GMP_VERSION).tar.xz
|
||||
mv $^ $@
|
||||
|
||||
gmp-$(GMP_VERSION).tar.xz:
|
||||
wget https://ftp.gnu.org/gnu/gmp/$@
|
||||
|
||||
gcc/gmp/: gcc/ gmp-$(GMP_VERSION)/
|
||||
mv gmp-$(GMP_VERSION) $@
|
||||
|
||||
gmp-$(GMP_VERSION)/: gmp.tar.xz
|
||||
tar -xf $^
|
||||
|
||||
gmp-patch:
|
||||
true
|
||||
|
||||
gmp-build:
|
||||
true
|
18
cross/isl.mk
Normal file
18
cross/isl.mk
Normal file
|
@ -0,0 +1,18 @@
|
|||
ISL_VERSION=0.18
|
||||
isl.tar.xz: isl-$(ISL_VERSION).tar.xz
|
||||
mv $^ $@
|
||||
|
||||
isl-$(ISL_VERSION).tar.xz:
|
||||
wget http://isl.gforge.inria.fr/$@
|
||||
|
||||
gcc/isl/: gcc/ isl-$(ISL_VERSION)/
|
||||
mv isl-$(ISL_VERSION)/ $@
|
||||
|
||||
isl-$(ISL_VERSION)/: isl.tar.xz
|
||||
tar -xf $^
|
||||
|
||||
isl-patch:
|
||||
true
|
||||
|
||||
isl-build:
|
||||
true
|
18
cross/mpc.mk
Normal file
18
cross/mpc.mk
Normal file
|
@ -0,0 +1,18 @@
|
|||
MPC_VERSION=1.0.3
|
||||
mpc.tar.gz: mpc-$(MPC_VERSION).tar.gz
|
||||
mv $^ $@
|
||||
|
||||
mpc-$(MPC_VERSION).tar.gz:
|
||||
wget https://ftp.gnu.org/gnu/mpc/$@
|
||||
|
||||
gcc/mpc/: gcc/ mpc-$(MPC_VERSION)/
|
||||
mv mpc-$(MPC_VERSION)/ $@
|
||||
|
||||
mpc-$(MPC_VERSION)/: mpc.tar.gz
|
||||
tar -xf $^
|
||||
|
||||
mpc-patch:
|
||||
true
|
||||
|
||||
mpc-build:
|
||||
true
|
18
cross/mpfr.mk
Normal file
18
cross/mpfr.mk
Normal file
|
@ -0,0 +1,18 @@
|
|||
MPFR_VERSION=3.1.5
|
||||
mpfr.tar.xz: mpfr-$(MPFR_VERSION).tar.xz
|
||||
mv $^ $@
|
||||
|
||||
mpfr-$(MPFR_VERSION).tar.xz:
|
||||
wget https://ftp.gnu.org/gnu/mpfr/$@
|
||||
|
||||
gcc/mpfr/: gcc/ mpfr-$(MPFR_VERSION)/
|
||||
mv mpfr-$(MPFR_VERSION)/ $@
|
||||
|
||||
mpfr-$(MPFR_VERSION)/: mpfr.tar.xz
|
||||
tar -xf $^
|
||||
|
||||
mpfr-patch:
|
||||
true
|
||||
|
||||
mpfr-build:
|
||||
true
|
Loading…
Reference in a new issue