diff options
-rw-r--r-- | mk/kernel-vars.mk | 2 | ||||
-rw-r--r-- | mk/vars.mk | 9 | ||||
-rw-r--r-- | package/simpleinit/Makefile | 4 | ||||
-rw-r--r-- | package/simpleinit/files/inittab | 2 | ||||
-rwxr-xr-x | package/simpleinit/files/rc | 54 | ||||
-rw-r--r-- | package/uclibc/Makefile | 2 | ||||
-rw-r--r-- | target/config/Config.in | 1 | ||||
-rw-r--r-- | target/config/Config.in.target | 2 | ||||
-rw-r--r-- | target/m68k/uclibc.config | 18 | ||||
-rw-r--r-- | toolchain/elf2flt/Makefile | 2 | ||||
-rw-r--r-- | toolchain/gcc/Makefile | 8 | ||||
-rw-r--r-- | toolchain/gcc/m68k-uclinux-gcc.specs | 147 | ||||
-rw-r--r-- | toolchain/gcc/patches/4.8.3/disable-tm.m68k | 14 | ||||
-rw-r--r-- | toolchain/uclibc/patches/0.9.33.2/0007-disable-test-for-non-MMU-systems.patch | 30 | ||||
-rw-r--r-- | toolchain/uclibc/patches/0.9.33.2/0008-disable-test-for-systems-without-FPU.patch | 30 |
15 files changed, 266 insertions, 59 deletions
diff --git a/mk/kernel-vars.mk b/mk/kernel-vars.mk index e9771855e..17a8d23a2 100644 --- a/mk/kernel-vars.mk +++ b/mk/kernel-vars.mk @@ -17,4 +17,4 @@ else KERNEL_MAKE_OPTS+= HOSTCFLAGS='${HOST_CFLAGS}' endif -KERNEL_MAKE_ENV:= PATH="${STAGING_HOST_DIR}/usr/bin:$$PATH" +KERNEL_MAKE_ENV:= PATH="${TOOLCHAIN_DIR}/usr/bin:${STAGING_HOST_DIR}/usr/bin:$$PATH" diff --git a/mk/vars.mk b/mk/vars.mk index 443d42139..c6971ee83 100644 --- a/mk/vars.mk +++ b/mk/vars.mk @@ -74,8 +74,13 @@ ifneq ($(strip ${ADK_USE_CCACHE}),) TARGET_COMPILER_PREFIX=$(STAGING_HOST_DIR)/usr/bin/ccache ${TARGET_CROSS} endif +# use a gcc wrapper for uClinux +ifeq ($(ADK_TARGET_UCLINUX),y) +TARGET_CC:= adk-uclinux-gcc +else # target tools TARGET_CC:= ${TARGET_COMPILER_PREFIX}gcc +endif TARGET_CXX:= ${TARGET_COMPILER_PREFIX}g++ TARGET_LD:= ${TARGET_COMPILER_PREFIX}ld TARGET_AR:= ${TARGET_COMPILER_PREFIX}ar @@ -94,8 +99,8 @@ TARGET_LDFLAGS:= -L$(STAGING_TARGET_DIR)/lib -L$(STAGING_TARGET_DIR)/usr/lib \ -Wl,-rpath-link -Wl,${STAGING_TARGET_DIR}/usr/lib ifeq ($(ADK_TARGET_BINFMT_FLAT),y) -TARGET_CFLAGS+= -Wl,-elf2flt -msep-data -TARGET_CXXFLAGS+= -Wl,-elf2flt -msep-data +TARGET_CFLAGS+= -msep-data +TARGET_CXXFLAGS+= -msep-data TARGET_LDFLAGS+= -elf2flt endif diff --git a/package/simpleinit/Makefile b/package/simpleinit/Makefile index aeeedfc08..43ea68660 100644 --- a/package/simpleinit/Makefile +++ b/package/simpleinit/Makefile @@ -20,10 +20,14 @@ BUILD_STYLE:= manual INSTALL_STYLE:= manual do-build: + PATH="${TOOLCHAIN_DIR}/usr/bin:$$PATH" \ ${TARGET_CC} ${TARGET_CPPFLAGS} ${TARGET_CFLAGS} ${TARGET_LDFLAGS} \ -o ${WRKBUILD}/simpleinit ${WRKBUILD}/simpleinit.c do-install: + ${INSTALL_DIR} ${IDIR_SIMPLEINIT}/etc + ${CP} ./files/rc ${IDIR_SIMPLEINIT}/etc + ${CP} ./files/inittab ${IDIR_SIMPLEINIT}/etc ${INSTALL_DIR} ${IDIR_SIMPLEINIT}/sbin ${INSTALL_BIN} ${WRKBUILD}/simpleinit ${IDIR_SIMPLEINIT}/sbin/init diff --git a/package/simpleinit/files/inittab b/package/simpleinit/files/inittab new file mode 100644 index 000000000..1c4744d6a --- /dev/null +++ b/package/simpleinit/files/inittab @@ -0,0 +1,2 @@ +# example +#inet:unknown:/bin/inetd diff --git a/package/simpleinit/files/rc b/package/simpleinit/files/rc index 33d60a4b6..ec8ace337 100755 --- a/package/simpleinit/files/rc +++ b/package/simpleinit/files/rc @@ -1,47 +1,15 @@ #!/bin/sh -set -x -export PATH=/bin:/sbin:/usr/bin:/usr/sbin -ln -s /proc/self/fd/2 /dev/stderr -: ${rcquiet=0} -if [ $rcquiet -ne 1 ];then - echo "System initialization ..." -fi - -# remount /dev with smaller size -mount -o remount,nosuid,size=128k,mode=0755 -t tmpfs mdev /dev - -# start mdev dynamic device node management -echo >/dev/mdev.seq -if [ -f /proc/sys/kernel/hotplug ];then - echo "/sbin/mdev" >/proc/sys/kernel/hotplug -fi -# creates f.e. /dev/root -mdev -s - -# seed some random -cat /etc/.rnd >/dev/urandom 2>&1 - -# setup cfgfs -[ -x /sbin/cfgfs ] && { - cfgfs setup - mount -o remount,ro / -} - -# remount /tmp with smaller size -size=$(cat /etc/tmpfs 2>/dev/null) -[ -z $size ] && size=2048 -mount -o remount,nosuid,nodev,mode=1777,size=${size}k -t tmpfs tmpfs /tmp - -# create some useful directories in tmpfs +echo Starting OpenADK +hostname openadk +mount -t proc proc /proc +mount -t sysfs sys /sys +mkdir -m 755 /dev/pts +mount -t devpts devpts /dev/pts +mount -t tmpfs -o size=8M tmpfs /tmp +chmod 1777 /tmp mkdir -p /var/log mkdir -p /var/run mkdir -p /var/tmp -touch /var/log/lastlog -touch /var/log/wtmp - -HOSTNAME= -[[ -s /etc/hostname ]] && HOSTNAME=$(cat /etc/hostname) -HOSTNAME=${HOSTNAME%%.*} -echo ${HOSTNAME:=openadk} >/proc/sys/kernel/hostname - -chown 0:0 /tmp; chmod 1777 /tmp +mdev -s +mount +ifconfig lo 127.0.0.1 up diff --git a/package/uclibc/Makefile b/package/uclibc/Makefile index 9b2fa1da1..c148a19d8 100644 --- a/package/uclibc/Makefile +++ b/package/uclibc/Makefile @@ -34,7 +34,7 @@ do-install: test -z $(ADK_RUNTIME_TIMEZONE) || \ grep $(ADK_RUNTIME_TIMEZONE) ./files/tz.lst | \ cut -f 2 > $(IDIR_UCLIBC)/etc/TZ -ifneq ($(ADK_TARGET_USE_STATIC_LIBS),y) +ifneq ($(ADK_TARGET_USE_STATIC_LIBS)$(ADK_TARGET_UCLINUX),y) $(CP) $(STAGING_TARGET_DIR)/lib/libc.so.* $(IDIR_UCLIBC)/$(ADK_TARGET_LIBC_PATH) $(CP) $(STAGING_TARGET_DIR)/lib/libuClibc-$(PKG_VERSION).so \ $(IDIR_UCLIBC)/$(ADK_TARGET_LIBC_PATH) diff --git a/target/config/Config.in b/target/config/Config.in index 3982b9cc9..7393bfe9c 100644 --- a/target/config/Config.in +++ b/target/config/Config.in @@ -15,7 +15,6 @@ config ADK_TARGET_TOOLCHAIN boolean config ADK_TARGET_UCLINUX - select ADK_TARGET_USE_STATIC_LIBS select ADK_PACKAGE_SASH select ADK_PACKAGE_SIMPLEINIT boolean diff --git a/target/config/Config.in.target b/target/config/Config.in.target index 6cb858450..ad1e8dfe0 100644 --- a/target/config/Config.in.target +++ b/target/config/Config.in.target @@ -3,7 +3,7 @@ config ADK_TARGET_CFLAGS string - default "-march=isaaplus -mcpu=5208" if ADK_CPU_CF_5208 + default "-mcpu=5208" if ADK_CPU_CF_5208 default "-mcpu=v7.10.d" if ADK_CPU_MICROBLAZE default "-m4 -ml" if ADK_CPU_SH4 && ADK_little default "-m4 -mb" if ADK_CPU_SH4 && ADK_big diff --git a/target/m68k/uclibc.config b/target/m68k/uclibc.config index 2612dfe40..49c804c17 100644 --- a/target/m68k/uclibc.config +++ b/target/m68k/uclibc.config @@ -53,7 +53,7 @@ UCLIBC_HAS_FLOATS=y UCLIBC_HAS_SOFT_FLOAT=y DO_C99_MATH=y # DO_XSI_MATH is not set -UCLIBC_HAS_FENV=y +# UCLIBC_HAS_FENV is not set UCLIBC_HAS_LONG_DOUBLE_MATH=y KERNEL_HEADERS="" UCLIBC_UCLINUX_BROKEN_MUNMAP=y @@ -62,7 +62,7 @@ HAVE_DOT_CONFIG=y # # General Library Settings # -DOPIC=y +# DOPIC is not set ARCH_HAS_NO_SHARED=y ARCH_HAS_NO_LDSO=y UCLIBC_CTOR_DTOR=y @@ -72,12 +72,12 @@ HAS_NO_THREADS=y # UCLIBC_HAS_THREADS_NATIVE is not set UCLIBC_HAS_SYSLOG=y UCLIBC_HAS_LFS=y -MALLOC=y -# MALLOC_SIMPLE is not set +# MALLOC is not set +MALLOC_SIMPLE=y # MALLOC_STANDARD is not set -MALLOC_GLIBC_COMPAT=y +# MALLOC_GLIBC_COMPAT is not set UCLIBC_DYNAMIC_ATEXIT=y -# COMPAT_ATEXIT is not set +COMPAT_ATEXIT=y UCLIBC_SUSV3_LEGACY=y # UCLIBC_SUSV3_LEGACY_MACROS is not set UCLIBC_SUSV4_LEGACY=y @@ -194,8 +194,8 @@ UCLIBC_HAS_NFTW=y UCLIBC_HAS_FTW=y UCLIBC_HAS_FTS=y UCLIBC_HAS_GLOB=y -UCLIBC_HAS_GNU_GLOB=y -UCLIBC_HAS_UTMPX=y +# UCLIBC_HAS_GNU_GLOB is not set +# UCLIBC_HAS_UTMPX is not set # # Library Installation Options @@ -208,7 +208,7 @@ HARDWIRED_ABSPATH=y # # Security options # -UCLIBC_HAS_ARC4RANDOM=y +# UCLIBC_HAS_ARC4RANDOM is not set # UCLIBC_HAS_SSP is not set UCLIBC_BUILD_NOEXECSTACK=y diff --git a/toolchain/elf2flt/Makefile b/toolchain/elf2flt/Makefile index 72cb6f755..a42398a3e 100644 --- a/toolchain/elf2flt/Makefile +++ b/toolchain/elf2flt/Makefile @@ -11,7 +11,7 @@ BINUTILS_VERSION:= 2.24 $(WRKBUILD)/.headers: $(WRKBUILD)/.configured: (cd $(WRKBUILD); ./configure --prefix=$(STAGING_HOST_DIR)/usr \ - --target=$(ADK_TARGET_ARCH) \ + --target=$(GNU_TARGET_NAME) \ --with-bfd-include-dir=$(TOOLCHAIN_BUILD_DIR)/w-binutils-${BINUTILS_VERSION}-1/binutils-${BINUTILS_VERSION}/bfd \ --with-binutils-include-dir=$(TOOLCHAIN_BUILD_DIR)/w-binutils-${BINUTILS_VERSION}-1/binutils-${BINUTILS_VERSION}/include \ --with-libbfd=$(TOOLCHAIN_BUILD_DIR)/w-binutils-${BINUTILS_VERSION}-1/binutils-${BINUTILS_VERSION}/bfd/libbfd.a \ diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile index 25c396e1b..efe5231c1 100644 --- a/toolchain/gcc/Makefile +++ b/toolchain/gcc/Makefile @@ -48,12 +48,16 @@ ifneq ($(ADK_LINUX_AARCH64)$(ADK_LINUX_ALPHA)$(ADK_LINUX_XTENSA)$(ADK_LINUX_M68K GCC_FINAL_CONFOPTS+= --enable-cxx-flags='$(TARGET_CXXFLAGS)' endif +ifeq ($(ADK_TARGET_UCLINUX),y) +GCC_FINAL_CONFOPTS+= --disable-shared +else # uClibc/glibc uses libgcc_s.so.1 for pthread_cancel with dlopen ifeq (ADK_TARGET_LIB_MUSL),y) GCC_FINAL_CONFOPTS+= --enable-shared='libstdc++' else GCC_FINAL_CONFOPTS+= --enable-shared='libstdc++,libgcc' endif +endif ifeq ($(ADK_LINUX_M68K)$(ADK_LINUX_SH)$(ADK_LINUX_X86_64)$(ADK_LINUX_X86),) GCC_FINAL_CONFOPTS+= --disable-biarch --disable-multilib @@ -267,6 +271,10 @@ endif ln -sf libstdc++.so.6.0.19 libstdc++.so.6 # cleanup unneeded docs rm -rf $(TOOLCHAIN_DIR)/usr/share + # create gcc wrapper for uClinux/m68k + echo "#!/bin/sh" > $(TOOLCHAIN_DIR)/usr/bin/adk-uclinux-gcc + echo "exec ${GNU_TARGET_NAME}-gcc \"$$@\" -specs $(ADK_TOPDIR)/toolchain/gcc/m68k-uclinux-gcc.specs" >> $(TOOLCHAIN_DIR)/usr/bin/adk-uclinux-gcc + chmod a+x $(TOOLCHAIN_DIR)/usr/bin/adk-uclinux-gcc touch $@ include ${ADK_TOPDIR}/mk/toolchain.mk diff --git a/toolchain/gcc/m68k-uclinux-gcc.specs b/toolchain/gcc/m68k-uclinux-gcc.specs new file mode 100644 index 000000000..3b74701b9 --- /dev/null +++ b/toolchain/gcc/m68k-uclinux-gcc.specs @@ -0,0 +1,147 @@ +*asm: +%(asm_cpu_spec) %(asm_pcrel_spec) + +*asm_debug: +%{!g0:%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}} %{fdebug-prefix-map=*:--debug-prefix-map %*} + +*asm_final: +%{gsplit-dwarf: + objcopy --extract-dwo %{c:%{o*:%*}%{!o*:%b%O}}%{!c:%U%O} %{c:%{o*:%:replace-extension(%{o*:%*} .dwo)}%{!o*:%b.dwo}}%{!c:%b.dwo} + objcopy --strip-dwo %{c:%{o*:%*}%{!o*:%b%O}}%{!c:%U%O} } + +*asm_options: +%{-target-help:%:print-asm-header()} %{v} %{w:-W} %{I*} %a %Y %{c:%W{o*}%{!o*:-o %w%b%O}}%{!c:-o %d%w%u%O} + +*invoke_as: +%{!fwpa: %{fcompare-debug=*|fdump-final-insns=*:%:compare-debug-dump-opt()} %{!S:-o %|.s | + as %(asm_options) %m.s %A } } + +*cpp: +%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT} + +*cpp_options: +%(cpp_unique_options) %1 %{m*} %{std*&ansi&trigraphs} %{W*&pedantic*} %{w} %{f*} %{g*:%{!g0:%{g*} %{!fno-working-directory:-fworking-directory}}} %{O*} %{undef} %{save-temps*:-fpch-preprocess} + +*cpp_debug_options: +%{d*} + +*cpp_unique_options: +%{!Q:-quiet} %{nostdinc*} %{C} %{CC} %{v} %{I*&F*} %{P} %I %{MD:-MD %{!o:%b.d}%{o*:%.d%*}} %{MMD:-MMD %{!o:%b.d}%{o*:%.d%*}} %{M} %{MM} %{MF*} %{MG} %{MP} %{MQ*} %{MT*} %{!E:%{!M:%{!MM:%{!MT:%{!MQ:%{MD|MMD:%{o*:-MQ %*}}}}}}} %{remap} %{g3|ggdb3|gstabs3|gcoff3|gxcoff3|gvms3:-dD} %{!iplugindir*:%{fplugin*:%:find-plugindir()}} %{H} %C %{D*&U*&A*} %{i*} %Z %i %{fmudflap:-D_MUDFLAP -include mf-runtime.h} %{fmudflapth:-D_MUDFLAP -D_MUDFLAPTH -include mf-runtime.h} %{E|M|MM:%W{o*}} + +*trad_capable_cpp: +cc1 -E %{traditional|traditional-cpp:-traditional-cpp} + +*cc1: +%{profile:-p} + +*cc1_options: +%{pg:%{fomit-frame-pointer:%e-pg and -fomit-frame-pointer are incompatible}} %{!iplugindir*:%{fplugin*:%:find-plugindir()}} %1 %{!Q:-quiet} %{!dumpbase:-dumpbase %B} %{d*} %{m*} %{aux-info*} %{fcompare-debug-second:%:compare-debug-auxbase-opt(%b)} %{!fcompare-debug-second:%{c|S:%{o*:-auxbase-strip %*}%{!o*:-auxbase %b}}}%{!c:%{!S:-auxbase %b}} %{g*} %{O*} %{W*&pedantic*} %{w} %{std*&ansi&trigraphs} %{v:-version} %{pg:-p} %{p} %{f*} %{undef} %{Qn:-fno-ident} %{Qy:} %{-help:--help} %{-target-help:--target-help} %{-version:--version} %{-help=*:--help=%*} %{!fsyntax-only:%{S:%W{o*}%{!o*:-o %b.s}}} %{fsyntax-only:-o %j} %{-param*} %{fmudflap|fmudflapth:-fno-builtin -fno-merge-constants} %{coverage:-fprofile-arcs -ftest-coverage} + +*cc1plus: + + +*link_gcc_c_sequence: +%{static:--start-group} %G %L %{static:--end-group}%{!static:%G} + +*link_ssp: +%{fstack-protector:} + +*endfile: +crtn.o%s + +*link: +%{!static:--eh-frame-hdr} %{!elf2flt*:-elf2flt} %{mid-shared-library: %{mshared-library-id=*:-shared-lib-id %*;:-shared-lib-id 0}} + +*lib: +%{mid-shared-library:%{!static-libc:-R libc.gdb%s}} %{pthread:-lpthread} -lc + +*mfwrap: + %{static: %{fmudflap|fmudflapth: --wrap=malloc --wrap=free --wrap=calloc --wrap=realloc --wrap=mmap --wrap=mmap64 --wrap=munmap --wrap=alloca} %{fmudflapth: --wrap=pthread_create}} %{fmudflap|fmudflapth: --wrap=main} + +*mflib: +%{fmudflap|fmudflapth: -export-dynamic} + +*link_gomp: + + +*libgcc: +-lgcc + +*startfile: +%{mshared-library-id=0|!mshared-library-id=*: crt1.o%s ;: Scrt1.o%s} crti.o%s + +*cross_compile: +1 + +*version: +4.8.3 + +*multilib: +. !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data !mid-shared-library;m51qe mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data !mid-shared-library;m5206 !mcpu=51qe mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data !mid-shared-library;m5206e !mcpu=51qe !mcpu=5206 mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data !mid-shared-library;m5307 !mcpu=51qe !mcpu=5206 !mcpu=5206e mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data !mid-shared-library;m5329 !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data !mid-shared-library;m5407 !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 mcpu=5407 !mcpu=54455 !msep-data !mid-shared-library;m54455 !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 mcpu=54455 !msep-data !mid-shared-library;msep-data !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 msep-data !mid-shared-library;mid-shared-library !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data mid-shared-library;m51qe/msep-data mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 msep-data !mid-shared-library;m51qe/mid-shared-library mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data mid-shared-library;m5206/msep-data !mcpu=51qe mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 msep-data !mid-shared-library;m5206/mid-shared-library !mcpu=51qe mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data mid-shared-library;m5206e/msep-data !mcpu=51qe !mcpu=5206 mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 msep-data !mid-shared-library;m5206e/mid-shared-library !mcpu=51qe !mcpu=5206 mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data mid-shared-library;m5307/msep-data !mcpu=51qe !mcpu=5206 !mcpu=5206e mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 msep-data !mid-shared-library;m5307/mid-shared-library !mcpu=51qe !mcpu=5206 !mcpu=5206e mcpu=5307 !mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data mid-shared-library;m5329/msep-data !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 mcpu=5329 !mcpu=5407 !mcpu=54455 msep-data !mid-shared-library;m5329/mid-shared-library !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 mcpu=5329 !mcpu=5407 !mcpu=54455 !msep-data mid-shared-library;m5407/msep-data !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 mcpu=5407 !mcpu=54455 msep-data !mid-shared-library;m5407/mid-shared-library !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 mcpu=5407 !mcpu=54455 !msep-data mid-shared-library;m54455/msep-data !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 mcpu=54455 msep-data !mid-shared-library;m54455/mid-shared-library !mcpu=51qe !mcpu=5206 !mcpu=5206e !mcpu=5307 !mcpu=5329 !mcpu=5407 mcpu=54455 !msep-data mid-shared-library; + +*multilib_defaults: + + +*multilib_extra: +Wa,-mno-mac + +*multilib_matches: +march=isaa mcpu=5206e;march=isaaplus mcpu=5208;march=isab mcpu=5407;mcpu=51 mcpu=51qe;mcpu=51ac mcpu=51qe;mcpu=51ag mcpu=51qe;mcpu=51cn mcpu=51qe;mcpu=51em mcpu=51qe;mcpu=51je mcpu=51qe;mcpu=51jf mcpu=51qe;mcpu=51jg mcpu=51qe;mcpu=51jm mcpu=51qe;mcpu=51mm mcpu=51qe;mcpu=51qm mcpu=51qe;mcpu=5202 mcpu=5206;mcpu=5204 mcpu=5206;mcpu=5207 mcpu=5208;mcpu=5210a mcpu=5208;mcpu=5211a mcpu=5208;mcpu=5211 mcpu=5208;mcpu=5212 mcpu=5208;mcpu=5213 mcpu=5208;mcpu=5214 mcpu=5208;mcpu=5216 mcpu=5208;mcpu=5221x mcpu=5208;mcpu=52221 mcpu=5208;mcpu=52223 mcpu=5208;mcpu=52230 mcpu=5208;mcpu=52231 mcpu=5208;mcpu=52232 mcpu=5208;mcpu=52233 mcpu=5208;mcpu=52234 mcpu=5208;mcpu=52235 mcpu=5208;mcpu=5224 mcpu=5208;mcpu=5225 mcpu=5208;mcpu=52252 mcpu=5208;mcpu=52254 mcpu=5208;mcpu=52255 mcpu=5208;mcpu=52256 mcpu=5208;mcpu=52258 mcpu=5208;mcpu=52259 mcpu=5208;mcpu=52274 mcpu=5208;mcpu=52277 mcpu=5208;mcpu=5232 mcpu=5208;mcpu=5233 mcpu=5208;mcpu=5234 mcpu=5208;mcpu=5235 mcpu=5208;mcpu=523x mcpu=5208;mcpu=5249 mcpu=5206e;mcpu=5250 mcpu=5206e;mcpu=5253 mcpu=5206e;mcpu=5270 mcpu=5208;mcpu=5271 mcpu=5208;mcpu=5272 mcpu=5206e;mcpu=5274 mcpu=5208;mcpu=5275 mcpu=5208;mcpu=5280 mcpu=5208;mcpu=5281 mcpu=5208;mcpu=5282 mcpu=5208;mcpu=528x mcpu=5208;mcpu=53011 mcpu=5329;mcpu=53012 mcpu=5329;mcpu=53013 mcpu=5329;mcpu=53014 mcpu=5329;mcpu=53015 mcpu=5329;mcpu=53016 mcpu=5329;mcpu=53017 mcpu=5329;mcpu=5327 mcpu=5329;mcpu=5328 mcpu=5329;mcpu=532x mcpu=5329;mcpu=5372 mcpu=5329;mcpu=5373 mcpu=5329;mcpu=537x mcpu=5329;mcpu=54410 mcpu=54455;mcpu=54415 mcpu=54455;mcpu=54416 mcpu=54455;mcpu=54417 mcpu=54455;mcpu=54418 mcpu=54455;mcpu=54450 mcpu=54455;mcpu=54451 mcpu=54455;mcpu=54452 mcpu=54455;mcpu=54453 mcpu=54455;mcpu=54454 mcpu=54455;mcpu=51qe mcpu=51qe;mcpu=5206 mcpu=5206;mcpu=5206e mcpu=5206e;mcpu=5307 mcpu=5307;mcpu=5329 mcpu=5329;mcpu=5407 mcpu=5407;mcpu=54455 mcpu=54455;msep-data msep-data;mid-shared-library mid-shared-library; + +*multilib_exclusions: + + +*multilib_options: +mcpu=51qe/mcpu=5206/mcpu=5206e/mcpu=5307/mcpu=5329/mcpu=5407/mcpu=54455 msep-data/mid-shared-library + +*multilib_reuse: + + +*linker: +collect2 + +*linker_plugin_file: + + +*lto_wrapper: + + +*lto_gcc: + + +*link_libgcc: +%D + +*md_exec_prefix: + + +*md_startfile_prefix: + + +*md_startfile_prefix_1: + + +*startfile_prefix_spec: + + +*sysroot_spec: +--sysroot=%R + +*sysroot_suffix_spec: + + +*sysroot_hdrs_suffix_spec: + + +*self_spec: + + +*asm_cpu_spec: +%{m68851}%{mno-68851} %{m68881}%{mno-68881} %{msoft-float:-mno-float} %{m68020-40:-m68040}%{m68020-60:-m68040}%{mcpu=*:-mcpu=%*}%{march=*:-march=%*} + +*asm_pcrel_spec: +%{fPIC|fpic|mpcrel:--pcrel} %{msep-data|mid-shared-library:--pcrel} + +*link_command: +%{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S: %(linker) %{fuse-linker-plugin: %e-fuse-linker-plugin is not supported in this configuration}%{flto|flto=*:%<fcompare-debug*} %{flto} %{flto=*} %l %{pie:-pie} %{fuse-ld=*:-fuse-ld=%*} %X %{o*} %{e*} %{N} %{n} %{r} %{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!nostartfiles:%S}} %{static:} %{L*} %(mfwrap) %(link_libgcc) %{!nostdlib:%{!nodefaultlibs:%{fsanitize=address:%{!shared:libasan_preinit%O%s} %{static-libasan:%{!shared:-Bstatic --whole-archive -lasan --no-whole-archive -Bdynamic}}%{!static-libasan:-lasan}} %{fsanitize=thread:%{static-libtsan:%{!shared:-Bstatic --whole-archive -ltsan --no-whole-archive -Bdynamic}}%{!static-libtsan:-ltsan}}}} %o %{fopenmp|ftree-parallelize-loops=*:%:include(libgomp.spec)%(link_gomp)} %{fgnu-tm:%:include(libitm.spec)%(link_itm)} %(mflib) %{fsplit-stack: --wrap=pthread_create} %{fprofile-arcs|fprofile-generate*|coverage:-lgcov} %{!nostdlib:%{!nodefaultlibs:%{fsanitize=address: %{static-libasan:-ldl -lpthread} %{static:%ecannot specify -static with -fsanitize=address} %{fsanitize=thread:%e-fsanitize=address is incompatible with -fsanitize=thread}} %{fsanitize=thread: %{static-libtsan:-ldl -lpthread} %{!pie:%{!shared:%e-fsanitize=thread linking must be done with -pie or -shared}}}}} %{!nostdlib:%{!nodefaultlibs:%(link_ssp) %(link_gcc_c_sequence)}} %{!nostdlib:%{!nostartfiles:%E}} %{T*} }}}}}} + diff --git a/toolchain/gcc/patches/4.8.3/disable-tm.m68k b/toolchain/gcc/patches/4.8.3/disable-tm.m68k new file mode 100644 index 000000000..02b5cb854 --- /dev/null +++ b/toolchain/gcc/patches/4.8.3/disable-tm.m68k @@ -0,0 +1,14 @@ +diff -Nur gcc-4.8.3.orig/gcc/config/m68k/uclinux.h gcc-4.8.3/gcc/config/m68k/uclinux.h +--- gcc-4.8.3.orig/gcc/config/m68k/uclinux.h 2013-01-10 21:38:27.000000000 +0100 ++++ gcc-4.8.3/gcc/config/m68k/uclinux.h 2014-08-25 17:03:59.543127685 +0200 +@@ -20,6 +20,10 @@ + along with GCC; see the file COPYING3. If not see + <http://www.gnu.org/licenses/>. */ + ++/* Do not use TM clone registry. It breaks -msep-data (-fPIC) code. */ ++/* https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54584 */ ++#define USE_TM_CLONE_REGISTRY 0 ++ + #undef STARTFILE_SPEC + #define STARTFILE_SPEC \ + "%{mshared-library-id=0|!mshared-library-id=*: crt1.o%s ;: Scrt1.o%s} \ diff --git a/toolchain/uclibc/patches/0.9.33.2/0007-disable-test-for-non-MMU-systems.patch b/toolchain/uclibc/patches/0.9.33.2/0007-disable-test-for-non-MMU-systems.patch new file mode 100644 index 000000000..b21cffbd3 --- /dev/null +++ b/toolchain/uclibc/patches/0.9.33.2/0007-disable-test-for-non-MMU-systems.patch @@ -0,0 +1,30 @@ +From 325f778f3bbb1b13c436e7754dd22097d31c04d2 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb <wbx@uclibc-ng.org> +Date: Thu, 21 Aug 2014 22:02:26 +0200 +Subject: [PATCH 7/9] disable test for non-MMU systems + +This test fails for non-MMU systems, because it uses fork() + +Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org> +--- + test/Makefile | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/test/Makefile b/test/Makefile +index 787c530..d51bb62 100644 +--- a/test/Makefile ++++ b/test/Makefile +@@ -42,6 +42,10 @@ endif + ifeq ($(HAS_NO_THREADS),y) + DIRS := $(filter-out pthread,$(DIRS)) + endif ++# librt test needs fork() ++ifneq ($(ARCH_USE_MMU),y) ++ DIRS := $(filter-out librt,$(DIRS)) ++endif + + test check all: run + +-- +1.8.5.2 (Apple Git-48) + diff --git a/toolchain/uclibc/patches/0.9.33.2/0008-disable-test-for-systems-without-FPU.patch b/toolchain/uclibc/patches/0.9.33.2/0008-disable-test-for-systems-without-FPU.patch new file mode 100644 index 000000000..bf29909ef --- /dev/null +++ b/toolchain/uclibc/patches/0.9.33.2/0008-disable-test-for-systems-without-FPU.patch @@ -0,0 +1,30 @@ +From 012dfda4b27ad92edb6a9ea14e5ce4c5567d1c91 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb <wbx@uclibc-ng.org> +Date: Thu, 21 Aug 2014 22:04:59 +0200 +Subject: [PATCH 8/9] disable test for systems without FPU + +This test fails for systems without fpu. +For example m68k build for non-mmu/non-fpu systems fail. + +Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org> +--- + test/math/Makefile.in | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/test/math/Makefile.in b/test/math/Makefile.in +index d241baa..147d579 100644 +--- a/test/math/Makefile.in ++++ b/test/math/Makefile.in +@@ -13,6 +13,9 @@ endif + ifeq ($(DO_C99_MATH),) + TESTS_DISABLED += test-float test-ifloat test-double test-idouble rint signgam ilogb + endif ++ifeq ($(UCLIBC_HAS_FPU),) ++TESTS_DISABLED += test-fpucw ++endif + + DODIFF_rint := 1 + DODIFF_signgam := 1 +-- +1.8.5.2 (Apple Git-48) + |