Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/libffi/libffi
Browse files Browse the repository at this point in the history
  • Loading branch information
kruusnec committed Mar 20, 2018
2 parents 70df034 + 99a80d2 commit 174adda
Show file tree
Hide file tree
Showing 44 changed files with 7,095 additions and 477 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
.dirstamp
*.la
Makefile
!testsuite/libffi.bhaible/Makefile
Makefile.in
aclocal.m4
compile
Expand Down
12 changes: 9 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,16 +15,22 @@ matrix:
include:
- os: linux
compiler: gcc
env: HOST=i386-pc-linux-gnu
env: HOST=i386-pc-linux-gnu MEVAL='export CC="$CC -m32" && CXX="$CXX -m32"'
- os: linux
env: HOST=moxie-elf MEVAL='export PATH=/opt/moxielogic/bin:$PATH && CC=moxie-elf-gcc && CXX=moxie-elf-g++' LDFLAGS=-Tsim.ld RUNTESTFLAGS="--target_board moxie-sim" DEJAGNU="$TRAVIS_BUILD_DIR/.travis/site.exp"

before_install:
- if test x"$MEVAL" != x; then eval ${MEVAL}; fi

install:
- ./.travis/install.sh

script:
- if ! test x"$MEVAL" = x; then eval ${MEVAL}; fi
- ./autogen.sh
- if test x"$HOST" = x"i386-pc-linux-gnu"; then CC="$CC -m32"; CXX="$CXX -m32"; fi
- ls -l m4
- ./configure ${HOST+--host=$HOST} ${CONFIGURE_OPTIONS}
- make
- make dist
- make check
- make check RUNTESTFLAGS="-a $RUNTESTFLAGS"
- cat */testsuite/libffi.log
14 changes: 11 additions & 3 deletions .travis/install.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#!/bin/bash
set -x

if [[ $TRAVIS_OS_NAME != 'linux' ]]; then
brew update
Expand All @@ -8,7 +9,14 @@ if [[ $TRAVIS_OS_NAME != 'linux' ]]; then
else
sudo apt-get update
sudo apt-get install dejagnu texinfo
if [ "$HOST" = i386-pc-linux-gnu ] ; then
sudo apt-get install gcc-multilib g++-multilib;
fi
case "$HOST" in
i386-pc-linux-gnu)
sudo apt-get install gcc-multilib g++-multilib
;;
moxie-elf)
echo 'deb http://repos.moxielogic.org:7114/MoxieLogic moxiedev main' | sudo tee -a /etc/apt/sources.list
sudo apt-get update -qq
sudo apt-get install -y --allow-unauthenticated moxielogic-moxie-elf-gcc moxielogic-moxie-elf-gcc-c++ moxielogic-moxie-elf-gcc-libstdc++ moxielogic-moxie-elf-gdb-sim
;;
esac
fi
60 changes: 60 additions & 0 deletions .travis/moxie-sim.exp
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Copyright (C) 2010 Free Software Foundation, Inc.
#
# This file is part of DejaGnu.
#
# DejaGnu is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# DejaGnu is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with DejaGnu; if not, write to the Free Software Foundation,
# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

# This is a list of toolchains that are supported on this board.
set_board_info target_install {moxie-elf}

# Load the generic configuration for this board. This will define a basic set
# of routines needed by the tool to communicate with the board.
load_generic_config "sim"

# basic-sim.exp is a basic description for the standard Cygnus simulator.
load_base_board_description "basic-sim"

# "moxie" is the name of the sim subdir in devo/sim.
setup_sim moxie

# No multilib options needed by default.
process_multilib_options ""

# We only support newlib on this target. We assume that all multilib
# options have been specified before we get here.

set_board_info compiler "[find_gcc]"
set_board_info cflags "[libgloss_include_flags] [newlib_include_flags]"
set_board_info ldflags "[libgloss_link_flags] [newlib_link_flags]"
# No linker script needed.
set_board_info ldscript "-Tsim.ld"

# Configuration settings for testsuites
set_board_info noargs 1
set_board_info gdb,nosignals 1
set_board_info gdb,noresults 1
set_board_info gdb,cannot_call_functions 1
set_board_info gdb,skip_float_tests 1
set_board_info gdb,can_reverse 1
set_board_info gdb,use_precord 1

# More time is needed
set_board_info gcc,timeout 800
set_board_info gdb,timeout 60

# Used by a few gcc.c-torture testcases to delimit how large the stack can
# be.
set_board_info gcc,stack_size 5000

18 changes: 18 additions & 0 deletions .travis/site.exp
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Copyright (C) 2008, 2010, 2018 Anthony Green

# Make sure we look in the right place for the board description files.
if ![info exists boards_dir] {
set boards_dir {}
}

lappend boards_dir $::env(TRAVIS_BUILD_DIR)/.travis

verbose "Global Config File: target_triplet is $target_triplet" 2
global target_list

case "$target_triplet" in {
{ "moxie-elf" } {
set target_list "moxie-sim"
}
}

4 changes: 3 additions & 1 deletion Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ EXTRA_DIST = LICENSE ChangeLog.v1 ChangeLog.libgcj \
m4/ltversion.m4 src/debug.c msvcc.sh \
generate-darwin-source-and-headers.py \
libffi.xcodeproj/project.pbxproj \
libtool-ldflags libtool-version configure.host
libtool-ldflags libtool-version configure.host README.md

# local.exp is generated by configure
DISTCLEANFILES = local.exp
Expand Down Expand Up @@ -109,6 +109,7 @@ noinst_HEADERS = \
src/or1k/ffitarget.h \
src/pa/ffitarget.h \
src/powerpc/ffitarget.h src/powerpc/asm.h src/powerpc/ffi_powerpc.h \
src/riscv/ffitarget.h \
src/s390/ffitarget.h src/s390/internal.h \
src/sh/ffitarget.h \
src/sh64/ffitarget.h \
Expand Down Expand Up @@ -144,6 +145,7 @@ EXTRA_libffi_la_SOURCES = \
src/powerpc/linux64_closure.S src/powerpc/ppc_closure.S \
src/powerpc/aix.S src/powerpc/darwin.S src/powerpc/aix_closure.S \
src/powerpc/darwin_closure.S src/powerpc/ffi_darwin.c \
src/riscv/ffi.c src/riscv/sysv.S \
src/s390/ffi.c src/s390/sysv.S \
src/sh/ffi.c src/sh/sysv.S \
src/sh64/ffi.c src/sh64/sysv.S \
Expand Down
Loading

0 comments on commit 174adda

Please sign in to comment.