summaryrefslogtreecommitdiff
path: root/toolchain
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2010-07-19 10:49:49 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2010-07-19 10:49:49 +0200
commit7907e3ee7302ac3fd428989a07b0df74f0c52853 (patch)
treee6de18488a687707667927065724372b40510d65 /toolchain
parentb70fdbfbf1139605c22083b647337f2b16f62fc3 (diff)
parent61355d1f054c15673adeb62d32dfd4563f89c165 (diff)
Merge branch 'master' of git+ssh://openadk.org/git/openadk
Diffstat (limited to 'toolchain')
-rw-r--r--toolchain/Makefile6
-rw-r--r--toolchain/eglibc/patches/eglibc-cross.patch16
-rw-r--r--toolchain/glibc-ports/Makefile2
-rw-r--r--toolchain/mpc/Makefile32
-rw-r--r--toolchain/mpc/Makefile.inc9
-rw-r--r--toolchain/uClibc/patches/fix-daemon-pthread.patch18
6 files changed, 63 insertions, 20 deletions
diff --git a/toolchain/Makefile b/toolchain/Makefile
index d2f59f8ba..2c4b24db2 100644
--- a/toolchain/Makefile
+++ b/toolchain/Makefile
@@ -3,7 +3,7 @@
#
# Steps to build toolchains
# 1) build and install binutils
-# 2) build and install mpfr and gmp
+# 2) build and install mpfr, mpc and gmp
# 3) build and install gcc c compiler
# 4) install kernel-headers
# 5) install libc headers
@@ -13,7 +13,7 @@
include $(TOPDIR)/rules.mk
-TARGETS:=binutils gmp mpfr gcc
+TARGETS:=binutils gmp mpfr mpc gcc
ifeq ($(ADK_TARGET_LIB_GLIBC),y)
TARGETS+=glibc-ports glibc
LIBC:=glibc
@@ -37,7 +37,7 @@ install: $(TARGETS_INSTALL)
clean: $(TARGETS_CLEAN)
download: $(DOWNLOAD)
-gcc-prepare: binutils-install gmp-install mpfr-install
+gcc-prepare: binutils-install gmp-install mpfr-install mpc-install
ifeq ($(ADK_TARGET_LIB_GLIBC),y)
$(LIBC)-prepare: gcc-prepare kernel-headers-prepare glibc-ports-prepare
else
diff --git a/toolchain/eglibc/patches/eglibc-cross.patch b/toolchain/eglibc/patches/eglibc-cross.patch
index 5e6fd7b74..348232cf0 100644
--- a/toolchain/eglibc/patches/eglibc-cross.patch
+++ b/toolchain/eglibc/patches/eglibc-cross.patch
@@ -47,22 +47,6 @@ diff -Nur eglibc-2.11.1.orig/libc/sunrpc/rpc_scan.c eglibc-2.11.1/libc/sunrpc/rp
diff -Nur eglibc-2.11.1.orig/libc/timezone/Makefile eglibc-2.11.1/libc/timezone/Makefile
--- eglibc-2.11.1.orig/libc/timezone/Makefile 2010-02-24 08:09:02.000000000 +0100
+++ eglibc-2.11.1/libc/timezone/Makefile 2010-03-22 18:50:04.134408513 +0100
-@@ -69,10 +69,11 @@
- $(addprefix $(inst_zonedir)/, \
- $(posixrules-file)))
-
--install-others = $(addprefix $(inst_zonedir)/,$(zonenames) \
-- $(zonenames:%=posix/%) \
-- $(zonenames:%=right/%)) \
-- $(installed-localtime-file) $(installed-posixrules-file)
-+install-others =
-+#install-others = $(addprefix $(inst_zonedir)/,$(zonenames) \
-+# $(zonenames:%=posix/%) \
-+# $(zonenames:%=right/%)) \
-+# $(installed-localtime-file) $(installed-posixrules-file)
-
- ifeq ($(have-ksh),yes)
- install-others += $(inst_zonedir)/iso3166.tab $(inst_zonedir)/zone.tab
@@ -181,8 +182,9 @@
$(objpfx)zic: $(addprefix $(objpfx), $(zic-objs))
diff --git a/toolchain/glibc-ports/Makefile b/toolchain/glibc-ports/Makefile
index be4a39e65..6cfc0c810 100644
--- a/toolchain/glibc-ports/Makefile
+++ b/toolchain/glibc-ports/Makefile
@@ -7,7 +7,7 @@ include Makefile.inc
include ${TOPDIR}/mk/buildhlp.mk
-$(WRKBUILD)/.headers:
+$(WRKBUILD)/.headers:
touch $@
$(WRKBUILD)/.configured:
diff --git a/toolchain/mpc/Makefile b/toolchain/mpc/Makefile
new file mode 100644
index 000000000..d790e0912
--- /dev/null
+++ b/toolchain/mpc/Makefile
@@ -0,0 +1,32 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+include $(TOPDIR)/rules.mk
+include Makefile.inc
+include ../rules.mk
+include ${TOPDIR}/mk/buildhlp.mk
+
+ifeq (${ADK_MAKE_PARALLEL},y)
+MPC_MAKEOPTS+= -j${ADK_MAKE_JOBS}
+endif
+
+$(WRKBUILD)/.headers:
+$(WRKBUILD)/.configured:
+ (cd $(WRKBUILD); \
+ $(WRKBUILD)/configure \
+ --prefix=$(STAGING_TOOLS) \
+ --with-gmp=$(STAGING_TOOLS) \
+ --disable-shared \
+ --enable-static \
+ );
+ touch $@
+
+$(WRKBUILD)/.compiled: $(WRKBUILD)/.configured
+ $(MAKE) ${MPC_MAKEOPTS} -C $(WRKBUILD) all
+ touch $@
+
+$(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
+ $(MAKE) -C $(WRKBUILD) install
+ touch $@
+
+include ${TOPDIR}/mk/toolchain.mk
diff --git a/toolchain/mpc/Makefile.inc b/toolchain/mpc/Makefile.inc
new file mode 100644
index 000000000..970a2c848
--- /dev/null
+++ b/toolchain/mpc/Makefile.inc
@@ -0,0 +1,9 @@
+# This file is part of the OpenADK project. OpenADK is copyrighted
+# material, please see the LICENCE file in the top-level directory.
+
+PKG_NAME:= mpc
+PKG_VERSION:= 0.8.2
+PKG_RELEASE:= 1
+PKG_MD5SUM:= e98267ebd5648a39f881d66797122fb6
+PKG_SITES:= http://www.multiprecision.org/mpc/download/
+GMP_BUILD_DIR:= $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/$(PKG_NAME)-$(PKG_VERSION)
diff --git a/toolchain/uClibc/patches/fix-daemon-pthread.patch b/toolchain/uClibc/patches/fix-daemon-pthread.patch
new file mode 100644
index 000000000..a137320c2
--- /dev/null
+++ b/toolchain/uClibc/patches/fix-daemon-pthread.patch
@@ -0,0 +1,18 @@
+ Taken from OpenWrt, this patch fixes for a broken daemon() function
+ in applications linked against pthread, as the fork() function provided
+ by pthread has to be used then. It is said, that this won't fix for
+ statically compiled binaries.
+
+ See here: https://dev.openwrt.org/attachment/ticket/4809/fix-daemon-pthread.patch
+ and here: https://bugs.busybox.net/show_bug.cgi?id=193
+--- a/libc/unistd/daemon.c 2006-07-05 21:52:39.000000000 +0200
++++ b/libc/unistd/daemon.c 2009-03-21 08:45:25.000000000 +0100
+@@ -54,7 +54,7 @@
+ libc_hidden_proto(dup2)
+ libc_hidden_proto(setsid)
+ libc_hidden_proto(chdir)
+-libc_hidden_proto(fork)
++/* libc_hidden_proto(fork) */
+
+ int daemon( int nochdir, int noclose )
+ {