Commit 367e6546 authored by Sevki Hasirci's avatar Sevki Hasirci

latest and greatest

parent 063f1d03
......@@ -4,7 +4,7 @@ before_install:
- brew tap sevki/gcc_cross_compilers
- brew tap homebrew/dupes
env:
- ARCH=x64
- ARCH=x86_64
- ARCH=arm
- ARCH=i386
script:
......
......@@ -2,25 +2,22 @@ require 'formula'
class ArmElfBinutils < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/binutils/binutils-2.23.tar.gz'
sha1 '470c388c97ac8d216de33fa397d7be9f96c3fe04'
depends_on 'apple-gcc42' => :build
url 'http://ftp.gnu.org/gnu/binutils/binutils-2.25.tar.gz'
sha1 'f10c64e92d9c72ee428df3feaf349c4ecb2493bd'
depends_on 'gcc' => :build
def install
ENV['CC'] = '/usr/local/bin/gcc-4.2'
ENV['CXX'] = '/usr/local/bin/g++-4.2'
ENV['CPP'] = '/usr/local/bin/cpp-4.2'
ENV['LD'] = '/usr/local/bin/gcc-4.2'
ENV['CC'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['CXX'] = '/usr/local/opt/gcc/bin/g++-5'
ENV['CPP'] = '/usr/local/opt/gcc/bin/cpp-5'
ENV['LD'] = '/usr/local/opt/gcc/bin/gcc-5'
mkdir 'build' do
system '../configure', '--disable-nls', '--target=arm-elf-eabi','--disable-werror',
system '../configure', '--disable-nls', '--target=x86_64-elf','--disable-werror',
'--enable-gold=yes',
"--prefix=#{prefix}"
system 'make all'
system 'make install'
FileUtils.mv lib, libexec
end
end
end
......@@ -2,9 +2,9 @@ require 'formula'
class ArmElfGcc < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftpmirror.gnu.org/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2'
mirror 'http://ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2'
sha1 'b4ee6e9bdebc65223f95067d0cc1a634b59dad72'
url "http://ftpmirror.gnu.org/gcc/gcc-5.2.0/gcc-5.2.0.tar.bz2"
mirror "https://ftp.gnu.org/gnu/gcc/gcc-5.2.0/gcc-5.2.0.tar.bz2"
sha256 "5f835b04b5f7dd4f4d2dc96190ec1621b8d89f2dc6f638f9f8bc1b1014ba8cad"
depends_on 'gmp'
depends_on 'libmpc'
......@@ -14,10 +14,10 @@ class ArmElfGcc < Formula
def install
binutils = Formula.factory 'arm-elf-binutils'
ENV['CC'] = '/usr/local/bin/gcc-4.2'
ENV['CXX'] = '/usr/local/bin/g++-4.2'
ENV['CPP'] = '/usr/local/bin/cpp-4.2'
ENV['LD'] = '/usr/local/bin/gcc-4.2'
ENV['CC'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['CXX'] = '/usr/local/opt/gcc/bin/g++-5'
ENV['CPP'] = '/usr/local/opt/gcc/bin/cpp-5'
ENV['LD'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['PATH'] += ":#{binutils.prefix/"bin"}"
mkdir 'build' do
......
......@@ -2,19 +2,23 @@ require 'formula'
class ArmElfGdb < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/gdb/gdb-7.6.tar.bz2'
sha1 'b64095579a20e011beeaa5b264fe23a9606ee40f'
url 'http://ftp.gnu.org/gnu/gdb/gdb-7.9.tar.xz'
sha1 '1dabff2168bd8fe3cadf9386e47a47c527ea99ba'
depends_on 'arm-elf-binutils'
depends_on 'arm-elf-gcc'
def install
ENV['CC'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['CXX'] = '/usr/local/opt/gcc/bin/g++-5'
ENV['CPP'] = '/usr/local/opt/gcc/bin/cpp-5'
ENV['LD'] = '/usr/local/opt/gcc/bin/gcc-5'
mkdir 'build' do
system '../configure', '--target=arm-elf-eabi', "--prefix=#{prefix}" ,'--disable-werror'
system 'make'
system 'make install'
FileUtils.rm_rf share/"locale"
FileUtils.mv lib, libexec
end
end
end
require 'formula'
class I386ElfBinutils < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/binutils/binutils-2.23.tar.gz'
sha1 '470c388c97ac8d216de33fa397d7be9f96c3fe04'
depends_on 'apple-gcc42' => :build
def install
ENV['CC'] = '/usr/local/bin/gcc-4.2'
ENV['CXX'] = '/usr/local/bin/g++-4.2'
ENV['CPP'] = '/usr/local/bin/cpp-4.2'
ENV['LD'] = '/usr/local/bin/gcc-4.2'
mkdir 'build' do
system '../configure', '--disable-nls', '--target=i386-elf',
'--disable-werror',
'--enable-gold=yes',
"--prefix=#{prefix}"
system 'make all'
system 'make install'
FileUtils.mv lib, libexec
end
end
end
require 'formula'
class I386ElfGcc < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftpmirror.gnu.org/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2'
mirror 'http://ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2'
sha1 'b4ee6e9bdebc65223f95067d0cc1a634b59dad72'
depends_on 'gmp'
depends_on 'libmpc'
depends_on 'mpfr'
depends_on 'i386-elf-binutils'
def install
binutils = Formula.factory 'i386-elf-binutils'
ENV['CC'] = '/usr/local/bin/gcc-4.2'
ENV['CXX'] = '/usr/local/bin/g++-4.2'
ENV['CPP'] = '/usr/local/bin/cpp-4.2'
ENV['LD'] = '/usr/local/bin/gcc-4.2'
ENV['PATH'] += ":#{binutils.prefix/"bin"}"
mkdir 'build' do
system '../configure', '--disable-nls', '--target=i386-elf', '--disable-werror',
"--prefix=#{prefix}",
"--enable-languages=c",
"--without-headers"
system 'make all-gcc'
system 'make install-gcc'
FileUtils.ln_sf binutils.prefix/"i386-elf", prefix/"i386-elf"
system 'make all-target-libgcc'
system 'make install-target-libgcc'
FileUtils.rm_rf share/"man"/"man7"
end
end
end
require 'formula'
class I386ElfGdb < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/gdb/gdb-7.6.tar.bz2'
sha1 'b64095579a20e011beeaa5b264fe23a9606ee40f'
depends_on 'i386-elf-binutils'
depends_on 'i386-elf-gcc'
def install
mkdir 'build' do
system '../configure', '--target=i386-elf', "--prefix=#{prefix}", '--disable-werror'
system 'make'
system 'make install'
FileUtils.rm_rf share/"locale"
FileUtils.mv lib, libexec
end
end
end
require 'formula'
class I386JosElfBinutils < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/binutils/binutils-2.23.tar.gz'
sha1 '470c388c97ac8d216de33fa397d7be9f96c3fe04'
depends_on 'apple-gcc42' => :build
def install
ENV['CC'] = '/usr/local/bin/gcc-4.2'
ENV['CXX'] = '/usr/local/bin/g++-4.2'
ENV['CPP'] = '/usr/local/bin/cpp-4.2'
ENV['LD'] = '/usr/local/bin/gcc-4.2'
mkdir 'build' do
system '../configure', '--disable-nls', '--target=i386-jos-elf',
'--disable-werror',
'--enable-gold=yes',
"--prefix=#{prefix}"
system 'make all'
system 'make install'
FileUtils.mv lib, libexec
end
end
end
require 'formula'
class I386JosElfGcc < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftpmirror.gnu.org/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2'
mirror 'http://ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2'
sha1 'b4ee6e9bdebc65223f95067d0cc1a634b59dad72'
depends_on 'gmp'
depends_on 'libmpc'
depends_on 'mpfr'
depends_on 'i386-jos-elf-binutils'
def install
binutils = Formula.factory 'i386-jos-elf-binutils'
ENV['CC'] = '/usr/local/bin/gcc-4.2'
ENV['CXX'] = '/usr/local/bin/g++-4.2'
ENV['CPP'] = '/usr/local/bin/cpp-4.2'
ENV['LD'] = '/usr/local/bin/gcc-4.2'
ENV['PATH'] += ":#{binutils.prefix/"bin"}"
mkdir 'build' do
system '../configure', '--disable-nls', '--target=i386-jos-elf', '--disable-werror',
"--prefix=#{prefix}",
"--enable-languages=c",
"--without-headers"
system 'make all-gcc'
system 'make install-gcc'
FileUtils.ln_sf binutils.prefix/"i386-jos-elf", prefix/"i386-elf-jos"
system 'make all-target-libgcc'
system 'make install-target-libgcc'
FileUtils.rm_rf share/"man"/"man7"
end
end
end
require 'formula'
class I386JosElfGdb < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/gdb/gdb-7.6.tar.bz2'
sha1 'b64095579a20e011beeaa5b264fe23a9606ee40f'
depends_on 'i386-jos-elf-binutils'
depends_on 'i386-jos-elf-gcc'
def install
mkdir 'build' do
system '../configure', '--target=i386-jos-elf', "--prefix=#{prefix}", '--disable-werror'
system 'make'
system 'make install'
FileUtils.rm_rf share/"locale"
FileUtils.mv lib, libexec
end
end
end
......@@ -2,25 +2,22 @@ require 'formula'
class I586ElfBinutils < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/binutils/binutils-2.23.tar.gz'
sha1 '470c388c97ac8d216de33fa397d7be9f96c3fe04'
depends_on 'apple-gcc42' => :build
url 'http://ftp.gnu.org/gnu/binutils/binutils-2.25.tar.gz'
sha1 'f10c64e92d9c72ee428df3feaf349c4ecb2493bd'
depends_on 'gcc' => :build
def install
ENV['CC'] = '/usr/local/bin/gcc-4.2'
ENV['CXX'] = '/usr/local/bin/g++-4.2'
ENV['CPP'] = '/usr/local/bin/cpp-4.2'
ENV['LD'] = '/usr/local/bin/gcc-4.2'
ENV['CC'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['CXX'] = '/usr/local/opt/gcc/bin/g++-5'
ENV['CPP'] = '/usr/local/opt/gcc/bin/cpp-5'
ENV['LD'] = '/usr/local/opt/gcc/bin/gcc-5'
mkdir 'build' do
system '../configure', '--disable-nls', '--target=i586-elf',
system '../configure', '--disable-nls', '--target=x86_64-elf','--disable-werror',
'--enable-gold=yes',
'--disable-werror',
"--prefix=#{prefix}"
system 'make all'
system 'make install'
FileUtils.mv lib, libexec
end
end
......
......@@ -2,22 +2,24 @@ require 'formula'
class I586ElfGcc < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftpmirror.gnu.org/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2'
mirror 'http://ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2'
sha1 'b4ee6e9bdebc65223f95067d0cc1a634b59dad72'
url "http://ftpmirror.gnu.org/gcc/gcc-5.2.0/gcc-5.2.0.tar.bz2"
mirror "https://ftp.gnu.org/gnu/gcc/gcc-5.2.0/gcc-5.2.0.tar.bz2"
sha256 "5f835b04b5f7dd4f4d2dc96190ec1621b8d89f2dc6f638f9f8bc1b1014ba8cad"
depends_on 'gmp'
depends_on 'libmpc'
depends_on 'mpfr'
depends_on "gmp"
depends_on "libmpc"
depends_on "mpfr"
depends_on "isl"
depends_on 'i586-elf-binutils'
def install
binutils = Formula.factory 'i586-elf-binutils'
ENV['CC'] = '/usr/local/bin/gcc-4.2'
ENV['CXX'] = '/usr/local/bin/g++-4.2'
ENV['CPP'] = '/usr/local/bin/cpp-4.2'
ENV['LD'] = '/usr/local/bin/gcc-4.2'
ENV['CC'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['CXX'] = '/usr/local/opt/gcc/bin/g++-5'
ENV['CPP'] = '/usr/local/opt/gcc/bin/cpp-5'
ENV['LD'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['PATH'] += ":#{binutils.prefix/"bin"}"
mkdir 'build' do
......
......@@ -2,19 +2,23 @@ require 'formula'
class I586ElfGdb < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/gdb/gdb-7.6.tar.bz2'
sha1 'b64095579a20e011beeaa5b264fe23a9606ee40f'
url 'http://ftp.gnu.org/gnu/gdb/gdb-7.9.tar.xz'
sha1 '1dabff2168bd8fe3cadf9386e47a47c527ea99ba'
depends_on 'i586-elf-binutils'
depends_on 'i586-elf-gcc'
def install
ENV['CC'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['CXX'] = '/usr/local/opt/gcc/bin/g++-5'
ENV['CPP'] = '/usr/local/opt/gcc/bin/cpp-5'
ENV['LD'] = '/usr/local/opt/gcc/bin/gcc-5'
mkdir 'build' do
system '../configure', '--target=i586-elf', "--prefix=#{prefix}", "--disable-werror"
system 'make'
system 'make install'
FileUtils.rm_rf share/"locale"
FileUtils.mv lib, libexec
end
end
end
require 'formula'
class X64ElfGdb < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/gdb/gdb-7.6.tar.bz2'
sha1 'b64095579a20e011beeaa5b264fe23a9606ee40f'
depends_on 'x64-elf-binutils'
depends_on 'x64-elf-gcc'
def install
mkdir 'build' do
system '../configure', '--target=x86_64-pc-linux', "--prefix=#{prefix}",'--disable-werror',
system 'make'
system 'make install'
FileUtils.rm_rf share/"locale"
FileUtils.mv lib, libexec
end
end
def patches
# When debugging 64-bit kernels via qemu, gdb has a tough time on the switch
# to long mode, and this patch helps it out by making sure that gdb keeps up
# with the switches in architecture that qemu makes
DATA
end
end
__END__
diff --git a/gdb/remote.c b/gdb/remote.c
index 1c9367d..5940ce2 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -5957,8 +5957,18 @@ process_g_packet (struct regcache *regcache)
buf_len = strlen (rs->buf);
/* Further sanity checks, with knowledge of the architecture. */
- if (buf_len > 2 * rsa->sizeof_g_packet)
- error (_("Remote 'g' packet reply is too long: %s"), rs->buf);
+ if (buf_len > 2 * rsa->sizeof_g_packet) {
+ rsa->sizeof_g_packet = buf_len;
+ for (i = 0; i < gdbarch_num_regs (gdbarch); i++) {
+ if (rsa->regs[i].pnum == -1)
+ continue;
+ if (rsa->regs[i].offset >= rsa->sizeof_g_packet)
+ rsa->regs[i].in_g_packet = 0;
+ else
+ rsa->regs[i].in_g_packet = 1;
+ }
+ }
+
/* Save the size of the packet sent to us by the target. It is used
as a heuristic when determining the max size of packets that the
require 'formula'
class X64ElfBinutils < Formula
class X8664ElfBinutils < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/binutils/binutils-2.23.tar.gz'
sha1 '470c388c97ac8d216de33fa397d7be9f96c3fe04'
depends_on 'apple-gcc42' => :build
url 'http://ftp.gnu.org/gnu/binutils/binutils-2.25.tar.gz'
sha1 'f10c64e92d9c72ee428df3feaf349c4ecb2493bd'
depends_on 'gcc' => :build
def install
ENV['CC'] = '/usr/local/bin/gcc-4.2'
ENV['CXX'] = '/usr/local/bin/g++-4.2'
ENV['CPP'] = '/usr/local/bin/cpp-4.2'
ENV['LD'] = '/usr/local/bin/gcc-4.2'
ENV['CC'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['CXX'] = '/usr/local/opt/gcc/bin/g++-5'
ENV['CPP'] = '/usr/local/opt/gcc/bin/cpp-5'
ENV['LD'] = '/usr/local/opt/gcc/bin/gcc-5'
mkdir 'build' do
system '../configure', '--disable-nls', '--target=x86_64-elf','--disable-werror',
......@@ -19,7 +18,7 @@ class X64ElfBinutils < Formula
"--prefix=#{prefix}"
system 'make all'
system 'make install'
FileUtils.mv lib, libexec
end
end
......
require 'formula'
class X64ElfGcc < Formula
class X8664ElfGcc < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftpmirror.gnu.org/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2'
mirror 'http://ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2'
sha1 'b4ee6e9bdebc65223f95067d0cc1a634b59dad72'
url "http://ftpmirror.gnu.org/gcc/gcc-5.2.0/gcc-5.2.0.tar.bz2"
mirror "https://ftp.gnu.org/gnu/gcc/gcc-5.2.0/gcc-5.2.0.tar.bz2"
sha256 "5f835b04b5f7dd4f4d2dc96190ec1621b8d89f2dc6f638f9f8bc1b1014ba8cad"
depends_on 'gmp'
depends_on 'libmpc'
depends_on 'mpfr'
depends_on 'x64-elf-binutils'
depends_on "gmp"
depends_on "libmpc"
depends_on "mpfr"
depends_on "isl"
depends_on 'x86_64-elf-binutils'
def install
binutils = Formula.factory 'x64-elf-binutils'
binutils = Formula.factory 'x86_64-elf-binutils'
ENV['CC'] = '/usr/local/bin/gcc-4.2'
ENV['CXX'] = '/usr/local/bin/g++-4.2'
ENV['CPP'] = '/usr/local/bin/cpp-4.2'
ENV['LD'] = '/usr/local/bin/gcc-4.2'
ENV['CC'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['CXX'] = '/usr/local/opt/gcc/bin/g++-5'
ENV['CPP'] = '/usr/local/opt/gcc/bin/cpp-5'
ENV['LD'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['PATH'] += ":#{binutils.prefix/"bin"}"
mkdir 'build' do
......
require 'formula'
class X8664ElfGdb < Formula
homepage 'http://gcc.gnu.org'
url 'http://ftp.gnu.org/gnu/gdb/gdb-7.9.tar.xz'
sha1 '1dabff2168bd8fe3cadf9386e47a47c527ea99ba'
depends_on 'x86_64-elf-binutils'
depends_on 'x86_64-elf-gcc'
def install
ENV['CC'] = '/usr/local/opt/gcc/bin/gcc-5'
ENV['CXX'] = '/usr/local/opt/gcc/bin/g++-5'
ENV['CPP'] = '/usr/local/opt/gcc/bin/cpp-5'
ENV['LD'] = '/usr/local/opt/gcc/bin/gcc-5'
mkdir 'build' do
system '../configure', '--target=x86_64-pc-linux', "--prefix=#{prefix}"
system 'make'
system 'make install'
FileUtils.rm_rf share/"locale"
end
end
end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment