summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--patches/bdwgc.local.patch88
-rw-r--r--patches/bdwgc_pre.local.patch13
-rw-r--r--vars/build.vars30
3 files changed, 123 insertions, 8 deletions
diff --git a/patches/bdwgc.local.patch b/patches/bdwgc.local.patch
new file mode 100644
index 00000000..8f7a6f34
--- /dev/null
+++ b/patches/bdwgc.local.patch
@@ -0,0 +1,88 @@
+diff -ru bdwgc.orig/os_dep.c bdwgc/os_dep.c
+--- bdwgc.orig/os_dep.c 2017-01-13 01:05:27.201020300 +0100
++++ bdwgc/os_dep.c 2017-01-12 22:54:52.681020300 +0100
+@@ -32,7 +32,7 @@
+ #endif
+
+ #if defined(UNIX_LIKE) || defined(CYGWIN32) || defined(NACL) \
+- || defined(SYMBIAN)
++ || defined(SYMBIAN) || defined(MIDIPIX)
+ # include <fcntl.h>
+ #endif
+
+--- bdwgc/include/private/gcconfig.h.orig 2017-01-23 18:47:24.683963226 +0000
++++ bdwgc/include/private/gcconfig.h 2017-01-23 18:58:19.917387539 +0000
+@@ -55,6 +55,10 @@
+ # define LINUX
+ # endif
+
++# if defined(__midipix__)
++# define MIDIPIX
++# endif
++
+ /* And one for QNX: */
+ # if defined(__QNX__)
+ # define I386
+@@ -293,6 +297,14 @@
+ # define X86_64
+ # define mach_type_known
+ # endif
++# if defined(MIDIPIX) && defined(__x86_64__)
++# define X86_64
++# define mach_type_known
++# endif
++# if defined(MIDIPIX) && defined(__i386__)
++# define I386
++# define mach_type_known
++# endif
+ # if defined(LINUX) && (defined(__ia64__) || defined(__ia64))
+ # define IA64
+ # define mach_type_known
+@@ -1426,6 +1438,12 @@
+ # include <gnu/libc-version.h> /* for gnu_get_libc_version() */
+ # endif
+ # endif
++# ifdef MIDIPIX
++# define OS_TYPE "MIDIPIX"
++# define DATASTART (ptr_t)NULL /* Wrong */
++# define DATAEND (ptr_t)NULL /* Wrong */
++# define STACKBOTTOM (ptr_t)0x000000 /* Not sure if we should be using STACKBOTTOM or LINUX_STACKBOTTOM & /proc/self/stat */
++# endif
+ # ifdef CYGWIN32
+ # define OS_TYPE "CYGWIN32"
+ # define DATASTART ((ptr_t)GC_DATASTART) /* From gc.h */
+@@ -2439,6 +2457,12 @@
+ # include <gnu/libc-version.h> /* for gnu_get_libc_version() */
+ # endif
+ # endif
++# ifdef MIDIPIX
++# define OS_TYPE "MIDIPIX"
++# define DATASTART (ptr_t)NULL /* Wrong */
++# define DATAEND (ptr_t)NULL /* Wrong */
++# define STACKBOTTOM (ptr_t)0x000000 /* Not sure if we should be using STACKBOTTOM or LINUX_STACKBOTTOM & /proc/self/stat */
++# endif
+ # ifdef DARWIN
+ # define OS_TYPE "DARWIN"
+ # define DARWIN_DONT_PARSE_STACK
+@@ -2953,7 +2977,7 @@
+ #if defined(GC_IRIX_THREADS) && !defined(IRIX5)
+ # error --> inconsistent configuration
+ #endif
+-#if defined(GC_LINUX_THREADS) && !defined(LINUX) && !defined(NACL)
++#if defined(GC_LINUX_THREADS) && !defined(LINUX) && !defined(NACL) && !defined(MIDIPIX)
+ # error --> inconsistent configuration
+ #endif
+ #if defined(GC_NETBSD_THREADS) && !defined(NETBSD)
+--- bdwgc/pthread_stop_world.c.orig 2017-01-23 18:47:24.683963226 +0000
++++ bdwgc/pthread_stop_world.c 2017-01-23 18:59:56.449597256 +0000
+@@ -20,6 +20,10 @@
+ #if defined(GC_PTHREADS) && !defined(GC_WIN32_THREADS) && \
+ !defined(GC_DARWIN_THREADS)
+
++#ifdef MIDIPIX
++# include <sys/select.h>
++#endif
++
+ #ifdef NACL
+
+ # include <unistd.h>
diff --git a/patches/bdwgc_pre.local.patch b/patches/bdwgc_pre.local.patch
new file mode 100644
index 00000000..69d5aecb
--- /dev/null
+++ b/patches/bdwgc_pre.local.patch
@@ -0,0 +1,13 @@
+--- bdwgc/configure.ac.orig 2017-01-23 18:47:24.675963209 +0000
++++ bdwgc/configure.ac 2017-01-23 18:49:57.396295320 +0000
+@@ -194,6 +194,10 @@
+ AC_DEFINE(GC_LINUX_THREADS)
+ AC_DEFINE(_REENTRANT)
+ ;;
++ *-*-midipix*)
++ AC_DEFINE(GC_LINUX_THREADS)
++ AC_DEFINE(_REENTRANT)
++ ;;
+ *-*-aix*)
+ AC_DEFINE(GC_AIX_THREADS)
+ AC_DEFINE(_REENTRANT)
diff --git a/vars/build.vars b/vars/build.vars
index 7a43f369..74c21dbf 100644
--- a/vars/build.vars
+++ b/vars/build.vars
@@ -212,11 +212,19 @@ LIB_PACKAGES_CFLAGS_CONFIGURE="${LIB_PACKAGES_CFLAGS_CONFIGURE_DEFAULT:+${LIB_PA
LIB_PACKAGES_CONFIGURE_ARGS="-C --disable-nls --host=${TARGET} --prefix= --target=${TARGET}";
LIB_PACKAGES_LDFLAGS_CONFIGURE="--sysroot=${PREFIX_NATIVE}";
LIB_PACKAGES_MAKEFLAGS_INSTALL="DESTDIR=${PREFIX_NATIVE}";
+LIB_PACKAGES_PACKAGES_LEAVES="
+bzip2 curl expat libz libffi gdbm pcre glib gzip libarchive libatomic_ops libpipeline
+libressl libevent libfetch libgpg_error libassuan libfirm libgcrypt libksba lua ncurses
+ncursestw ncursesw npth xz";
+LIB_PACKAGES_PACKAGES_X11="
+inputproto kbproto xcb_proto xproto libXau libpthread_stubs xcb xextproto xtrans libX11
+libXext libICE libSM libXt libXmu renderproto Xrender libXpm libXaw libxkbfile";
+LIB_PACKAGES_PACKAGES_LIBS="
+cmake llvm_host";
LIB_PACKAGES_PACKAGES="
-bzip2 curl expat libz libffi gdbm pcre glib gzip libarchive libpipeline libressl libevent
-libfetch libgpg_error libassuan libfirm libgcrypt libksba lua ncurses ncursestw ncursesw
-npth xz inputproto kbproto xcb_proto xproto libXau libpthread_stubs xcb xextproto xtrans libX11
-libXext libICE libSM libXt libXmu renderproto Xrender libXpm libXaw libxkbfile cmake llvm_host";
+ ${LIB_PACKAGES_PACKAGES_LEAVES}
+ ${LIB_PACKAGES_PACKAGES_X11}
+ ${LIB_PACKAGES_PACKAGES_LIBS}";
LIB_PACKAGES_PREFIX="${PREFIX_NATIVE}";
: ${PKG_BZIP2_SHA256SUM:=a2848f34fcd5d6cf47def00461fcb528a0484d8edef8208d6d2e2909dc61d9cd};
: ${PKG_BZIP2_VERSION:=1.0.6};
@@ -269,6 +277,8 @@ LIB_PACKAGES_PREFIX="${PREFIX_NATIVE}";
: ${PKG_LIBARCHIVE_CONFIGURE_ARGS_EXTRA:=--without-xml2};
: ${PKG_LIBARCHIVE_LDFLAGS_CONFIGURE_EXTRA:=-L${PREFIX_NATIVE}/lib};
: ${PKG_LIBARCHIVE_MAKEFLAGS_INSTALL_EXTRA:="prefix=:DESTDIR=${PREFIX_NATIVE}:LIBTOOL=slibtool"};
+: ${PKG_LIBATOMIC_OPS_URL:=https://github.com/ivmai/libatomic_ops};
+: ${PKG_LIBATOMIC_OPS_URL_TYPE:=git};
: ${PKG_LIBPIPELINE_SHA256SUM:=da46d7b20163aadb9db2faae483f734e9096a7550c84b94029abeab62dd1b9ee};
: ${PKG_LIBPIPELINE_VERSION:=1.4.1};
: ${PKG_LIBPIPELINE_URL:=http://download.savannah.gnu.org/releases/libpipeline/libpipeline-${PKG_LIBPIPELINE_VERSION}.tar.gz};
@@ -422,10 +432,11 @@ LEAF_PACKAGES_CONFIGURE_ARGS="-C --disable-nls --host=${TARGET} --prefix= --targ
LEAF_PACKAGES_LDFLAGS_CONFIGURE="--sysroot=${PREFIX_NATIVE}";
LEAF_PACKAGES_MAKEFLAGS_INSTALL="DESTDIR=${PREFIX_NATIVE}";
LEAF_PACKAGES_PACKAGES="
-apk_tools bash bc chicken clang_host coreutils cparser cron dash datamash diffutils dos2unix ed figlet
-file findutils gawk git gnupg grep hexcurse htop inetutils infounzip infozip irssi john less lynx make
-man_db mc mksh mingw_w64 nano netcat openssh p7zip pacman patch perl procps_ng python3 rsync rxvt_unicode
-sed smallbasic tar tcsh the_silver_searcher tmux util_linux vim weechat wget which whois xeyes xwd zsh";
+apk_tools bash bc bdwgc chicken clang_host coreutils cparser cron dash datamash diffutils dos2unix
+ed figlet file findutils gawk git gnupg grep hexcurse htop inetutils infounzip infozip irssi john
+less lynx make man_db mc mksh mingw_w64 nano netcat openssh p7zip pacman patch perl procps_ng python3
+rsync rxvt_unicode sed smallbasic tar tcsh the_silver_searcher tmux util_linux vim weechat wget which
+whois xeyes xwd zsh";
LEAF_PACKAGES_PREFIX="${PREFIX_NATIVE}";
: ${PKG_APK_TOOLS_SHA256SUM:=def2b2c23cd12fd2a9c19be49653b0d1bf9d81a26dac5a0ee79a1351d674f93b};
: ${PKG_APK_TOOLS_VERSION:=2.6.8};
@@ -441,6 +452,9 @@ LEAF_PACKAGES_PREFIX="${PREFIX_NATIVE}";
: ${PKG_BC_SHA256SUM:=7ee4abbcfac03d8a6e1a8a3440558a3d239d6b858585063e745c760957725ecc};
: ${PKG_BC_VERSION:=1.06.95};
: ${PKG_BC_URL:=http://alpha.gnu.org/gnu/bc/bc-${PKG_BC_VERSION}.tar.bz2};
+: ${PKG_BDWGC_GIT_BRANCH:=master};
+: ${PKG_BDWGC_URL:=https://github.com/ivmai/bdwgc};
+: ${PKG_BDWGC_URL_TYPE:=git};
: ${PKG_CHICKEN_SHA256SUM:=e3dc2b8f95b6a3cd59c85b5bb6bdb2bd9cefc45b5d536a20cad74e3c63f4ad89};
: ${PKG_CHICKEN_VERSION:=4.11.0};
: ${PKG_CHICKEN_URL:=https://code.call-cc.org/releases/4.11.0/chicken-${PKG_CHICKEN_VERSION}.tar.gz};